diff --git a/.gas-snapshot b/.gas-snapshot index ea293f87c..59fb47f8b 100644 --- a/.gas-snapshot +++ b/.gas-snapshot @@ -1,1007 +1,61 @@ -AccountBenchmarkTest:test_benchmark_createAccount_directWithFactory() (gas: 151905) -AccountBenchmarkTest:test_benchmark_createAccount_withUserOp() (gas: 304504) -AccountBenchmarkTest:test_benchmark_dummyTx_withAccount() (gas: 381471) -AccountBenchmarkTest:test_benchmark_dummyTx_withEOA() (gas: 27707) -AccountTest:test_revert_executeTransaction_nonSigner_viaDirectCall() (gas: 481195) -AccountTest:test_revert_executeTransaction_nonSigner_viaEntrypoint() (gas: 299925) -AccountTest:test_state_accountReceivesNativeTokens() (gas: 261513) -AccountTest:test_state_addAndWithdrawDeposit() (gas: 340374) -AccountTest:test_state_createAccount_viaEntrypoint() (gas: 253919) -AccountTest:test_state_createAccount_viaFactory() (gas: 161112) -AccountTest:test_state_executeBatchTransaction() (gas: 294528) -AccountTest:test_state_executeBatchTransaction_viaEntrypoint() (gas: 335783) -AccountTest:test_state_executeTransaction() (gas: 285859) -AccountTest:test_state_executeTransaction_viaAccountSigner() (gas: 540854) -AccountTest:test_state_executeTransaction_viaEntrypoint() (gas: 323701) -AccountTest:test_state_receiveERC1155NFT() (gas: 292047) -AccountTest:test_state_receiveERC721NFT() (gas: 331225) -AccountTest:test_state_transferOutsNativeTokens() (gas: 338149) -AirdropERC1155BenchmarkTest:test_benchmark_airdrop_five() (gas: 287722) -AirdropERC1155BenchmarkTest:test_benchmark_airdrop_one() (gas: 93206) -AirdropERC1155BenchmarkTest:test_benchmark_airdrop_two() (gas: 141422) -AirdropERC1155GasTest:test_safeTransferFrom_toContract() (gas: 47202) -AirdropERC1155GasTest:test_safeTransferFrom_toContract_gasOverride() (gas: 50671) -AirdropERC1155GasTest:test_safeTransferFrom_toEOA() (gas: 47756) -AirdropERC1155GasTest:test_safeTransferFrom_toEOA_gasOverride() (gas: 50583) -AirdropERC1155Test:test_revert_airdrop_notApproved() (gas: 10894694) -AirdropERC1155Test:test_revert_airdrop_notOwner() (gas: 10928533) -AirdropERC1155Test:test_revert_processPayments_notApproved() (gas: 118339369) -AirdropERC1155Test:test_revert_processPayments_notOwner() (gas: 10923853) -AirdropERC1155Test:test_state_airdrop() (gas: 48184183) -AirdropERC1155Test:test_state_cancelPayments() (gas: 159005765) -AirdropERC1155Test:test_state_cancelPayments_addMore() (gas: 174827682) -AirdropERC1155Test:test_state_processPayments_full() (gas: 164096567) -AirdropERC1155Test:test_state_processPayments_partial() (gas: 154498350) -AirdropERC20AuditTest:test_process_payments_with_non_compliant_token() (gas: 130063205) -AirdropERC20BenchmarkTest:test_benchmark_airdrop_five_ERC20() (gas: 240783) -AirdropERC20BenchmarkTest:test_benchmark_airdrop_one_ERC20() (gas: 89304) -AirdropERC20BenchmarkTest:test_benchmark_airdrop_two_ERC20() (gas: 127223) -AirdropERC20GasTest:test_transferNativeToken_toContract() (gas: 12383) -AirdropERC20GasTest:test_transferNativeToken_toContract_gasOverride() (gas: 15470) -AirdropERC20GasTest:test_transferNativeToken_toEOA() (gas: 39697) -AirdropERC20GasTest:test_transferNativeToken_toEOA_gasOverride() (gas: 43269) -AirdropERC20Test:test_revert_airdrop_notApproved() (gas: 8728055) -AirdropERC20Test:test_revert_airdrop_notOwner() (gas: 8763441) -AirdropERC20Test:test_revert_processPayments_incorrectNativeTokenAmt() (gas: 101771743) -AirdropERC20Test:test_revert_processPayments_notAdmin() (gas: 8758783) -AirdropERC20Test:test_revert_processPayments_notApproved() (gas: 98292857) -AirdropERC20Test:test_state_airdrop() (gas: 42600531) -AirdropERC20Test:test_state_cancelPayments() (gas: 133657183) -AirdropERC20Test:test_state_cancelPayments_addMore() (gas: 147262237) -AirdropERC20Test:test_state_cancelPayments_nativeToken() (gas: 141265693) -AirdropERC20Test:test_state_processPayments_full() (gas: 138780074) -AirdropERC20Test:test_state_processPayments_nativeToken_full() (gas: 148016847) -AirdropERC20Test:test_state_processPayments_nativeToken_partial() (gas: 137511536) -AirdropERC20Test:test_state_processPayments_partial() (gas: 129936965) -AirdropERC721AuditTest:test_NewRecipientsAreEmptyPreventingAirdrops() (gas: 357588) -AirdropERC721BenchmarkTest:test_benchmark_airdrop_five_ERC721() (gas: 295666) -AirdropERC721BenchmarkTest:test_benchmark_airdrop_one_ERC721() (gas: 96712) -AirdropERC721BenchmarkTest:test_benchmark_airdrop_two_ERC721() (gas: 146829) -AirdropERC721GasTest:test_safeTransferFrom_toContract() (gas: 49740) -AirdropERC721GasTest:test_safeTransferFrom_toContract_gasOverride() (gas: 53212) -AirdropERC721GasTest:test_safeTransferFrom_toEOA() (gas: 50749) -AirdropERC721GasTest:test_safeTransferFrom_toEOA_gasOverride() (gas: 54000) -AirdropERC721Test:test_revert_airdrop_notApproved() (gas: 8736763) -AirdropERC721Test:test_revert_airdrop_notOwner() (gas: 8763421) -AirdropERC721Test:test_revert_processPayments_notApproved() (gas: 98020506) -AirdropERC721Test:test_revert_processPayments_notOwner() (gas: 98738024) -AirdropERC721Test:test_state_airdrop() (gas: 53602782) -AirdropERC721Test:test_state_cancelPayments() (gas: 140931283) -AirdropERC721Test:test_state_cancelPayments_addMore() (gas: 154420153) -AirdropERC721Test:test_state_processPayments_full() (gas: 149630654) -AirdropERC721Test:test_state_processPayments_partial() (gas: 138522797) -AirdropGriefingTest:test_GriefingERC1155_Exceeds_30M_Gas() (gas: 393312) -AirdropGriefingTest:test_GriefingERC20_Exceeds_30M_Gas() (gas: 402461) -AirdropGriefingTest:test_GriefingERC721_Exceeds_30M_Gas() (gas: 423807) -BaseERC20BaseTest:test_revert_burn_NotEnoughBalance() (gas: 64106) -BaseERC20BaseTest:test_revert_mint_MintToZeroAddress() (gas: 13983) -BaseERC20BaseTest:test_revert_mint_MintingZeroTokens() (gas: 16047) -BaseERC20BaseTest:test_revert_mint_NotAuthorized() (gas: 13582) -BaseERC20BaseTest:test_revert_permit_ExpiredDeadline() (gas: 101958) -BaseERC20BaseTest:test_revert_permit_IncorrectKey() (gas: 124092) -BaseERC20BaseTest:test_revert_permit_UsedNonce() (gas: 157607) -BaseERC20BaseTest:test_state_burn() (gas: 56179) -BaseERC20BaseTest:test_state_mint() (gas: 66369) -BaseERC20BaseTest:test_state_permit() (gas: 152810) -BaseERC20DropTest:test_revert_burn_NotEnoughBalance() (gas: 13690) -BaseERC20DropTest:test_revert_permit_ExpiredDeadline() (gas: 49734) -BaseERC20DropTest:test_revert_permit_IncorrectKey() (gas: 71855) -BaseERC20DropTest:test_revert_permit_UsedNonce() (gas: 105471) -BaseERC20DropTest:test_state_burn() (gas: 150220) -BaseERC20DropTest:test_state_claim_NonZeroPrice_ERC20() (gas: 301599) -BaseERC20DropTest:test_state_claim_NonZeroPrice_NativeToken() (gas: 268059) -BaseERC20DropTest:test_state_claim_ZeroPrice() (gas: 183567) -BaseERC20DropTest:test_state_permit() (gas: 100816) -BaseERC20DropVoteTest:test_revert_burn_NotEnoughBalance() (gas: 13779) -BaseERC20DropVoteTest:test_revert_delegateBySig_InvalidNonce() (gas: 73554) -BaseERC20DropVoteTest:test_revert_delegateBySig_SignatureExpired() (gas: 49055) -BaseERC20DropVoteTest:test_revert_permit_ExpiredDeadline() (gas: 49381) -BaseERC20DropVoteTest:test_revert_permit_IncorrectKey() (gas: 71502) -BaseERC20DropVoteTest:test_revert_permit_UsedNonce() (gas: 104465) -BaseERC20DropVoteTest:test_state_burn() (gas: 201562) -BaseERC20DropVoteTest:test_state_claim_NonZeroPrice_ERC20() (gas: 370259) -BaseERC20DropVoteTest:test_state_claim_NonZeroPrice_NativeToken() (gas: 317126) -BaseERC20DropVoteTest:test_state_claim_ZeroPrice() (gas: 232634) -BaseERC20DropVoteTest:test_state_delegateBySig() (gas: 101010) -BaseERC20DropVoteTest:test_state_permit() (gas: 100012) -BaseERC20SignatureMintTest:test_revert_mintWithSignature_MintingZeroTokens() (gas: 47656) -BaseERC20SignatureMintTest:test_revert_mintWithSignature_MustSendTotalPrice() (gas: 123971) -BaseERC20SignatureMintTest:test_revert_mintWithSignature_QuantityTooLow() (gas: 104515) -BaseERC20SignatureMintTest:test_state_mintWithSignature_NonZeroPrice_ERC20() (gas: 260706) -BaseERC20SignatureMintTest:test_state_mintWithSignature_NonZeroPrice_NativeToken() (gas: 226660) -BaseERC20SignatureMintTest:test_state_mintWithSignature_ZeroPrice() (gas: 125075) -BaseERC20SignatureMintVoteTest:test_revert_mintWithSignature_MintingZeroTokens() (gas: 47436) -BaseERC20SignatureMintVoteTest:test_revert_mintWithSignature_MustSendTotalPrice() (gas: 123965) -BaseERC20SignatureMintVoteTest:test_revert_mintWithSignature_QuantityTooLow() (gas: 104509) -BaseERC20SignatureMintVoteTest:test_state_mintWithSignature_NonZeroPrice_ERC20() (gas: 309999) -BaseERC20SignatureMintVoteTest:test_state_mintWithSignature_NonZeroPrice_NativeToken() (gas: 275953) -BaseERC20SignatureMintVoteTest:test_state_mintWithSignature_ZeroPrice() (gas: 174368) -BaseERC20VoteTest:test_revert_burn_NotEnoughBalance() (gas: 113905) -BaseERC20VoteTest:test_revert_delegateBySig_InvalidNonce() (gas: 74060) -BaseERC20VoteTest:test_revert_delegateBySig_SignatureExpired() (gas: 49583) -BaseERC20VoteTest:test_revert_mint_MintToZeroAddress() (gas: 14092) -BaseERC20VoteTest:test_revert_mint_MintingZeroTokens() (gas: 16091) -BaseERC20VoteTest:test_revert_mint_NotAuthorized() (gas: 13626) -BaseERC20VoteTest:test_revert_permit_ExpiredDeadline() (gas: 149969) -BaseERC20VoteTest:test_revert_permit_IncorrectKey() (gas: 174176) -BaseERC20VoteTest:test_revert_permit_UsedNonce() (gas: 207919) -BaseERC20VoteTest:test_state_burn() (gas: 98294) -BaseERC20VoteTest:test_state_delegateBySig() (gas: 101491) -BaseERC20VoteTest:test_state_mint() (gas: 116344) -BaseERC20VoteTest:test_state_permit() (gas: 203169) -BaseERC721BaseTest:test_isApprovedOrOwner() (gas: 151185) -BaseERC721BaseTest:test_revert_batchMintTo_MintToZeroAddress() (gas: 84360) -BaseERC721BaseTest:test_revert_batchMintTo_NotAuthorized() (gas: 12779) -BaseERC721BaseTest:test_revert_burn_NotOwnerNorApproved() (gas: 117187) -BaseERC721BaseTest:test_revert_mintTo_MintToZeroAddress() (gas: 39746) -BaseERC721BaseTest:test_revert_mintTo_NotAuthorized() (gas: 12184) -BaseERC721BaseTest:test_state_batchMintTo() (gas: 3743211) -BaseERC721BaseTest:test_state_burn_Approved() (gas: 185664) -BaseERC721BaseTest:test_state_burn_Owner() (gas: 154612) -BaseERC721BaseTest:test_state_mintTo() (gas: 122324) -BaseERC721DelayedRevealTest:test_revert_lazyMint_URIForNonExistentId() (gas: 229035) -BaseERC721DelayedRevealTest:test_revert_reveal_NotAuthorized() (gas: 870763) -BaseERC721DelayedRevealTest:test_state_lazyMint_noEncryptedURI() (gas: 1060632) -BaseERC721DelayedRevealTest:test_state_lazyMint_withEncryptedURI() (gas: 869895) -BaseERC721DelayedRevealTest:test_state_reveal() (gas: 1733654) -BaseERC721DropTest:test_revert_claim_NotEnoughMintedTokens() (gas: 181147) -BaseERC721DropTest:test_state_claim_NonZeroPrice_ERC20() (gas: 598324) -BaseERC721DropTest:test_state_claim_NonZeroPrice_NativeToken() (gas: 547818) -BaseERC721DropTest:test_state_claim_ZeroPrice() (gas: 463666) -BaseERC721LazyMintTest:test_revert_claim_NotEnoughTokens() (gas: 21149) -BaseERC721LazyMintTest:test_state_claim() (gas: 162641) -BaseERC721MultiwrapTest:test_state_wrap() (gas: 458881) -BaseERC721SignatureMintTest:test_revert_mintWithSignature_MustSendTotalPrice() (gas: 134935) -BaseERC721SignatureMintTest:test_revert_mintWithSignature_QuantityNotOne() (gas: 56098) -BaseERC721SignatureMintTest:test_state_mintWithSignature_NonZeroPrice_ERC20() (gas: 346717) -BaseERC721SignatureMintTest:test_state_mintWithSignature_NonZeroPrice_NativeToken() (gas: 336017) -BaseERC721SignatureMintTest:test_state_mintWithSignature_ZeroPrice() (gas: 238782) -BreitwieserTheBidder:test_rob_as_bidder() (gas: 964694) -BreitwieserTheCreator:test_rob_as_creator() (gas: 620861) -ContractPublisherTest:test_publish() (gas: 353909) -ContractPublisherTest:test_publish_multiple_versions() (gas: 521719) -ContractPublisherTest:test_publish_revert_registryPaused() (gas: 33806) -ContractPublisherTest:test_publish_revert_unapprovedCaller() (gas: 21345) -ContractPublisherTest:test_read_from_linked_publisher() (gas: 376397) -ContractPublisherTest:test_unpublish() (gas: 288973) -ContractPublisherTest:test_unpublish_revert_registryPaused() (gas: 360570) -ContractPublisherTest:test_unpublish_revert_unapprovedCaller() (gas: 349459) -CreatePackBenchmarkTest:test_benchmark_createPack() (gas: 1172889) -DefaultExtensionSetTest:test_revert_addExtensionsWithSameFunctionSelectors() (gas: 3432951) -DefaultExtensionSetTest:test_revert_emptyExtensionImplementation() (gas: 133699) -DefaultExtensionSetTest:test_revert_fnSelectorSignatureMismatch() (gas: 2100540) -DefaultExtensionSetTest:test_revert_sameExtensionName() (gas: 3318938) -DefaultExtensionSetTest:test_revert_setExtension_nonDeployerCaller() (gas: 27721) -DefaultExtensionSetTest:test_state_setExtension() (gas: 1030414) -DropERC1155Test:test_claimCondition_startIdAndCount() (gas: 341404) -DropERC1155Test:test_claimCondition_startPhase() (gas: 359208) -DropERC1155Test:test_claimCondition_with_startTimestamp() (gas: 363371) -DropERC1155Test:test_claim_transferRole() (gas: 359826) -DropERC1155Test:test_event_lazyMint_TokensLazyMinted() (gas: 131799) -DropERC1155Test:test_fuzz_claim_merkleProof(uint256) (runs: 256, μ: 413462, ~: 413917) -DropERC1155Test:test_fuzz_claim_noAllowlist(uint256) (runs: 256, μ: 315849, ~: 315849) -DropERC1155Test:test_fuzz_lazyMint_batchMintAndNextTokenIdToMint(uint256) (runs: 256, μ: 203642, ~: 203642) -DropERC1155Test:test_fuzz_lazyMint_noEncryptedURI(uint256) (runs: 256, μ: 180746, ~: 165587) -DropERC1155Test:test_member_count_incremented_properly_when_role_granted() (gas: 96418) -DropERC1155Test:test_revert_claimCondition_exceedMaxClaimableSupply() (gas: 347312) -DropERC1155Test:test_revert_claimCondition_notEnoughMintedTokens() (gas: 232839) -DropERC1155Test:test_revert_grant_role_to_account_with_role() (gas: 92802) -DropERC1155Test:test_revert_lazyMint_MINTER_ROLE() (gas: 30282) -DropERC1155Test:test_revert_lazyMint_URIForNonLazyMintedToken() (gas: 129178) -DropERC1155Test:test_revert_nonHolder_renounceRole() (gas: 73721) -DropERC1155Test:test_revert_revokeRoleForNonHolder() (gas: 80455) -DropERC1155Test:test_state_claimCondition_resetEligibility() (gas: 433592) -DropERC1155Test:test_state_claim_allowlisted_DefaultQuantitySomePrice() (gas: 558870) -DropERC1155Test:test_state_claim_allowlisted_SetQuantityDefaultPrice() (gas: 586208) -DropERC1155Test:test_state_claim_allowlisted_SetQuantityPrice() (gas: 572283) -DropERC1155Test:test_state_claim_allowlisted_SetQuantityZeroPrice() (gas: 423542) -DropERC1155Test:test_state_getRoleMember_transferRole() (gas: 517290) -DropERC1155Test:test_state_grant_transferRole() (gas: 98223) -DropERC1155Test:test_state_lazyMint_noEncryptedURI() (gas: 1022904) -DropERC20Test:test_claimCondition_startIdAndCount() (gas: 340475) -DropERC20Test:test_claimCondition_startPhase() (gas: 356355) -DropERC20Test:test_claimCondition_with_startTimestamp() (gas: 294651) -DropERC20Test:test_claim_transferRole() (gas: 290466) -DropERC20Test:test_fuzz_claim_merkleProof(uint256) (runs: 256, μ: 344107, ~: 344646) -DropERC20Test:test_fuzz_claim_noAllowlist(uint256) (runs: 256, μ: 200919, ~: 200919) -DropERC20Test:test_member_count_incremented_properly_when_role_granted() (gas: 96307) -DropERC20Test:test_revert_claimCondition_exceedMaxClaimableSupply() (gas: 278717) -DropERC20Test:test_revert_grant_role_to_account_with_role() (gas: 92537) -DropERC20Test:test_revert_nonHolder_renounceRole() (gas: 73599) -DropERC20Test:test_revert_revokeRoleForNonHolder() (gas: 80421) -DropERC20Test:test_state_claimCondition_resetEligibility() (gas: 364367) -DropERC20Test:test_state_claim_allowlisted_DefaultQuantitySomePrice() (gas: 499636) -DropERC20Test:test_state_claim_allowlisted_SetQuantityDefaultPrice() (gas: 530268) -DropERC20Test:test_state_claim_allowlisted_SetQuantityPrice() (gas: 525320) -DropERC20Test:test_state_claim_allowlisted_SetQuantityZeroPrice() (gas: 357272) -DropERC20Test:test_state_getRoleMember_transferRole() (gas: 515420) -DropERC20Test:test_state_grant_transferRole() (gas: 97993) -DropERC721Test:testFail_reveal_incorrectKey() (gas: 217099) -DropERC721Test:test_claimCondition_startIdAndCount() (gas: 338838) -DropERC721Test:test_claimCondition_startPhase() (gas: 353210) -DropERC721Test:test_claimCondition_with_startTimestamp() (gas: 385212) -DropERC721Test:test_claim_transferRole() (gas: 379128) -DropERC721Test:test_delayedReveal_withNewLazyMintedEmptyBatch() (gas: 282928) -DropERC721Test:test_event_lazyMint_TokensLazyMinted() (gas: 132406) -DropERC721Test:test_event_reveal_TokenURIRevealed() (gas: 192024) -DropERC721Test:test_fuzz_claim_merkleProof(uint256) (runs: 256, μ: 887759, ~: 884485) -DropERC721Test:test_fuzz_claim_noAllowlist(uint256) (runs: 256, μ: 320086, ~: 320086) -DropERC721Test:test_fuzz_lazyMint_batchMintAndNextTokenIdToMint(uint256) (runs: 256, μ: 203852, ~: 203852) -DropERC721Test:test_fuzz_lazyMint_noEncryptedURI(uint256) (runs: 256, μ: 185522, ~: 168852) -DropERC721Test:test_fuzz_lazyMint_withEncryptedURI(uint256) (runs: 256, μ: 244173, ~: 244173) -DropERC721Test:test_member_count_incremented_properly_when_role_granted() (gas: 95979) -DropERC721Test:test_revert_claimCondition_exceedMaxClaimableSupply() (gas: 564309) -DropERC721Test:test_revert_claimCondition_notEnoughMintedTokens() (gas: 228044) -DropERC721Test:test_revert_delayedReveal_alreadyRevealed() (gas: 193322) -DropERC721Test:test_revert_grant_role_to_account_with_role() (gas: 92870) -DropERC721Test:test_revert_lazyMint_MINTER_ROLE() (gas: 30773) -DropERC721Test:test_revert_lazyMint_URIForNonLazyMintedToken() (gas: 129731) -DropERC721Test:test_revert_nonHolder_renounceRole() (gas: 73777) -DropERC721Test:test_revert_reveal_MINTER_ROLE() (gas: 241696) -DropERC721Test:test_revert_reveal_revealingNonExistentBatch() (gas: 312272) -DropERC721Test:test_revert_revokeRoleForNonHolder() (gas: 80246) -DropERC721Test:test_state_claimCondition_resetEligibility() (gas: 867671) -DropERC721Test:test_state_claim_allowlisted_DefaultQuantitySomePrice() (gas: 595294) -DropERC721Test:test_state_claim_allowlisted_SetQuantityDefaultPrice() (gas: 800632) -DropERC721Test:test_state_claim_allowlisted_SetQuantityPrice() (gas: 788134) -DropERC721Test:test_state_claim_allowlisted_SetQuantityZeroPrice() (gas: 640226) -DropERC721Test:test_state_getRoleMember_transferRole() (gas: 514719) -DropERC721Test:test_state_grant_transferRole() (gas: 97832) -DropERC721Test:test_state_lazyMint_noEncryptedURI() (gas: 1153017) -DropERC721Test:test_state_lazyMint_withEncryptedURI() (gas: 945838) -DropERC721Test:test_state_reveal() (gas: 1749231) -DynamicAccountTest:test_revert_executeTransaction_nonSigner_viaDirectCall() (gas: 482293) -DynamicAccountTest:test_revert_executeTransaction_nonSigner_viaEntrypoint() (gas: 289922) -DynamicAccountTest:test_scenario_changeExtensionForFunction() (gas: 824007) -DynamicAccountTest:test_state_accountReceivesNativeTokens() (gas: 251653) -DynamicAccountTest:test_state_addAndWithdrawDeposit() (gas: 330071) -DynamicAccountTest:test_state_createAccount_viaEntrypoint() (gas: 244037) -DynamicAccountTest:test_state_createAccount_viaFactory() (gas: 140199) -DynamicAccountTest:test_state_executeBatchTransaction() (gas: 293269) -DynamicAccountTest:test_state_executeBatchTransaction_viaEntrypoint() (gas: 334429) -DynamicAccountTest:test_state_executeTransaction() (gas: 278349) -DynamicAccountTest:test_state_executeTransaction_viaAccountSigner() (gas: 541794) -DynamicAccountTest:test_state_executeTransaction_viaEntrypoint() (gas: 316132) -DynamicAccountTest:test_state_receiveERC1155NFT() (gas: 290563) -DynamicAccountTest:test_state_receiveERC721NFT() (gas: 321365) -DynamicAccountTest:test_state_transferOutsNativeTokens() (gas: 330513) -ERC1155BaseTest:test_revert_batchMintTo_invalidId() (gas: 24111) -ERC1155BaseTest:test_revert_batchMintTo_lengthMismatch() (gas: 24305) -ERC1155BaseTest:test_revert_batchMintTo_mintingZeroTokens() (gas: 22759) -ERC1155BaseTest:test_revert_batchMintTo_unauthorizedCaller() (gas: 21971) -ERC1155BaseTest:test_revert_burnBatch_lengthMismatch() (gas: 270092) -ERC1155BaseTest:test_revert_burnBatch_notEnoughTokensOwned() (gas: 261277) -ERC1155BaseTest:test_revert_burnBatch_unapprovedCaller() (gas: 271572) -ERC1155BaseTest:test_revert_burn_notEnoughTokensOwned() (gas: 119072) -ERC1155BaseTest:test_revert_burn_unapprovedCaller() (gas: 121304) -ERC1155BaseTest:test_revert_mintTo_invalidId() (gas: 20115) -ERC1155BaseTest:test_revert_mintTo_unauthorizedCaller() (gas: 15005) -ERC1155BaseTest:test_state_batchMintTo_existingNFTs() (gas: 403845) -ERC1155BaseTest:test_state_batchMintTo_newAndExistingNFTs() (gas: 511590) -ERC1155BaseTest:test_state_batchMintTo_newNFTs() (gas: 291799) -ERC1155BaseTest:test_state_burn() (gas: 96432) -ERC1155BaseTest:test_state_burnBatch() (gas: 227630) -ERC1155BaseTest:test_state_mintTo_existingNFTs() (gas: 151497) -ERC1155BaseTest:test_state_mintTo_newNFTs() (gas: 120638) -ERC1155DelayedRevealTest:test_state_reveal() (gas: 187362) -ERC1155DelayedRevealTest:test_state_reveal_additionalBatch() (gas: 299024) -ERC1155DropTest:test_revert_claim_exceedsMaxSupply() (gas: 314239) -ERC1155DropTest:test_revert_claim_insufficientPrice() (gas: 356386) -ERC1155DropTest:test_revert_claim_invalidCurrency() (gas: 314100) -ERC1155DropTest:test_revert_claim_invalidPrice() (gas: 313956) -ERC1155DropTest:test_revert_claim_invalidQtyProof() (gas: 403526) -ERC1155DropTest:test_revert_claim_invalidQuantity() (gas: 314497) -ERC1155DropTest:test_revert_setClaimConditions_supplyClaimedAlready() (gas: 361303) -ERC1155DropTest:test_revert_setClaimConditions_unauthorizedCaller() (gas: 134239) -ERC1155DropTest:test_state_claim() (gas: 366526) -ERC1155DropTest:test_state_claim_withAllowlist() (gas: 504827) -ERC1155DropTest:test_state_claim_withPrice() (gas: 445970) -ERC1155DropTest:test_state_setClaimConditions() (gas: 248810) -ERC1155DropTest:test_state_setClaimConditions_resetEligibility() (gas: 376156) -ERC1155LazyMintTest:test_revert_mintTo_invalidId() (gas: 19564) -ERC1155LazyMintTest:test_state_claim() (gas: 81953) -ERC1155SignatureMintTest:test_revert_mintWithSignature_invalidId() (gas: 216041) -ERC1155SignatureMintTest:test_revert_mintWithSignature_mintingZeroTokens() (gas: 212793) -ERC1155SignatureMintTest:test_revert_mintWithSignature_withPrice_incorrectPrice() (gas: 314496) -ERC1155SignatureMintTest:test_state_mintWithSignature_existingNFTs() (gas: 441826) -ERC1155SignatureMintTest:test_state_mintWithSignature_newNFTs() (gas: 401408) -ERC1155SignatureMintTest:test_state_mintWithSignature_withPrice() (gas: 454908) -EditionStakeEthRewardTest:test_Macro_EditionDirectSafeTransferLocksToken() (gas: 53454) -EditionStakeEthRewardTest:test_revert_claimRewards_noRewards() (gas: 318196) -EditionStakeEthRewardTest:test_revert_setRewardsPerUnitTime_notAuthorized() (gas: 16268) -EditionStakeEthRewardTest:test_revert_setTimeUnit_notAuthorized() (gas: 16421) -EditionStakeEthRewardTest:test_revert_stake_notBalanceOrApproved() (gas: 106401) -EditionStakeEthRewardTest:test_revert_stake_stakingZeroTokens() (gas: 19266) -EditionStakeEthRewardTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 633520) -EditionStakeEthRewardTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 21373) -EditionStakeEthRewardTest:test_revert_zeroTimeUnit_adminLockTokens() (gas: 224188) -EditionStakeEthRewardTest:test_state_claimRewards_defaults_differentTokens() (gas: 575810) -EditionStakeEthRewardTest:test_state_claimRewards_defaults_sameToken() (gas: 485273) -EditionStakeEthRewardTest:test_state_setRewardsPerUnitTime_bothTokens() (gas: 943061) -EditionStakeEthRewardTest:test_state_setRewardsPerUnitTime_token0() (gas: 851038) -EditionStakeEthRewardTest:test_state_setTimeUnit_bothTokens() (gas: 942263) -EditionStakeEthRewardTest:test_state_setTimeUnit_token0() (gas: 850377) -EditionStakeEthRewardTest:test_state_stake_defaults_differentTokens() (gas: 460069) -EditionStakeEthRewardTest:test_state_stake_defaults_sameToken() (gas: 369181) -EditionStakeEthRewardTest:test_state_withdraw_differentTokens() (gas: 541174) -EditionStakeEthRewardTest:test_state_withdraw_sameToken() (gas: 447590) -EditionStakeTest:test_Macro_EditionDirectSafeTransferLocksToken() (gas: 53454) -EditionStakeTest:test_revert_claimRewards_noRewards() (gas: 304700) -EditionStakeTest:test_revert_setRewardsPerUnitTime_notAuthorized() (gas: 16268) -EditionStakeTest:test_revert_setTimeUnit_notAuthorized() (gas: 16421) -EditionStakeTest:test_revert_stake_notBalanceOrApproved() (gas: 106401) -EditionStakeTest:test_revert_stake_stakingZeroTokens() (gas: 19266) -EditionStakeTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 633520) -EditionStakeTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 21373) -EditionStakeTest:test_revert_zeroTimeUnit_adminLockTokens() (gas: 224188) -EditionStakeTest:test_state_claimRewards_defaults_differentTokens() (gas: 547414) -EditionStakeTest:test_state_claimRewards_defaults_sameToken() (gas: 456877) -EditionStakeTest:test_state_setRewardsPerUnitTime_bothTokens() (gas: 943061) -EditionStakeTest:test_state_setRewardsPerUnitTime_token0() (gas: 851038) -EditionStakeTest:test_state_setTimeUnit_bothTokens() (gas: 942263) -EditionStakeTest:test_state_setTimeUnit_token0() (gas: 850377) -EditionStakeTest:test_state_stake_defaults_differentTokens() (gas: 460069) -EditionStakeTest:test_state_stake_defaults_sameToken() (gas: 369181) -EditionStakeTest:test_state_withdraw_differentTokens() (gas: 541174) -EditionStakeTest:test_state_withdraw_sameToken() (gas: 447590) -ExtensionBatchMintMetadata:test_state_batchMintMetadata() (gas: 83302) -ExtensionBatchMintMetadata:test_state_setBaseURI() (gas: 85983) -ExtensionContractMetadataTest:test_event_setContractURI() (gas: 60227) -ExtensionContractMetadataTest:test_revert_setContractURI() (gas: 10997) -ExtensionContractMetadataTest:test_state_setContractURI() (gas: 57648) -ExtensionDelayedReveal:test_revert_getRevealURI_IncorrectKey() (gas: 130490) -ExtensionDelayedReveal:test_revert_getRevealURI_NothingToReveal() (gas: 102113) -ExtensionDelayedReveal:test_state_getRevealURI() (gas: 128570) -ExtensionDelayedReveal:test_state_setEncryptedData() (gas: 123858) -ExtensionDropSinglePhase1155:test_claimCondition_resetEligibility_quantityLimitPerWallet() (gas: 221867) -ExtensionDropSinglePhase1155:test_event_claim() (gas: 175829) -ExtensionDropSinglePhase1155:test_event_setClaimConditions() (gas: 125433) -ExtensionDropSinglePhase1155:test_fuzz_claim_noAllowlist(uint256) (runs: 256, μ: 150230, ~: 150230) -ExtensionDropSinglePhase1155:test_revert_claimCondition_exceedMaxClaimableSupply() (gas: 182320) -ExtensionDropSinglePhase1155:test_state_claimCondition_uniqueConditionId() (gas: 183437) -ExtensionDropSinglePhase:test_event_claim() (gas: 150579) -ExtensionDropSinglePhase:test_event_setClaimConditions() (gas: 103102) -ExtensionDropSinglePhase:test_fuzz_claim_merkleProof(uint256) (runs: 256, μ: 208680, ~: 209346) -ExtensionDropSinglePhase:test_fuzz_claim_noAllowlist(uint256) (runs: 256, μ: 142190, ~: 142190) -ExtensionDropSinglePhase:test_revert_claimCondition_exceedMaxClaimableSupply() (gas: 155209) -ExtensionLazyMint:test_event_lazyMint() (gas: 106851) -ExtensionLazyMint:test_state_lazyMint() (gas: 174500) -ExtensionLazyMint:test_state_lazyMint_NotAuthorized() (gas: 11407) -ExtensionLazyMint:test_state_lazyMint_ZeroAmount() (gas: 32140) -ExtensionOwnableTest:test_event_setOwner() (gas: 34863) -ExtensionOwnableTest:test_revert_setOwner() (gas: 10571) -ExtensionOwnableTest:test_state_setOwner() (gas: 31277) -ExtensionPermissions:test_event_grantRole() (gas: 42337) -ExtensionPermissions:test_event_revokeRole() (gas: 33042) -ExtensionPermissions:test_event_roleAdminChanged() (gas: 35380) -ExtensionPermissions:test_modifier_onlyRole() (gas: 71310) -ExtensionPermissions:test_revert_grantRole_grantToHolder() (gas: 41857) -ExtensionPermissions:test_revert_grantRole_missingRole() (gas: 73649) -ExtensionPermissions:test_revert_renounceRole_missingRole() (gas: 73364) -ExtensionPermissions:test_revert_renounceRole_renounceForOthers() (gas: 43109) -ExtensionPermissions:test_revert_revokeRole_missingRole() (gas: 169777) -ExtensionPermissions:test_state_grantRole() (gas: 121756) -ExtensionPermissions:test_state_renounceRole() (gas: 33069) -ExtensionPermissions:test_state_revokeRole() (gas: 33089) -ExtensionPermissions:test_state_setRoleAdmin() (gas: 34595) -ExtensionPermissionsEnumerable:test_state_grantRole() (gas: 225840) -ExtensionPermissionsEnumerable:test_state_revokeRole() (gas: 312434) -ExtensionPlatformFee:test_event_platformFeeInfo() (gas: 56724) -ExtensionPlatformFee:test_revert_setPlatformFeeInfo_ExceedsMaxBps() (gas: 31761) -ExtensionPlatformFee:test_revert_setPlatformFeeInfo_NotAuthorized() (gas: 10857) -ExtensionPlatformFee:test_state_setPlatformFeeInfo() (gas: 53399) -ExtensionPrimarySale:test_event_setPrimarySaleRecipient() (gas: 34040) -ExtensionPrimarySale:test_revert_setPrimarySaleRecipient_NotAuthorized() (gas: 10557) -ExtensionPrimarySale:test_state_setPrimarySaleRecipient() (gas: 31055) -ExtensionRegistryTest:test_revert_addExtension_emptyExtensionImplementation() (gas: 133995) -ExtensionRegistryTest:test_revert_addExtension_fnSelectorSignatureMismatch() (gas: 2100691) -ExtensionRegistryTest:test_revert_addExtension_sameExtensionName() (gas: 3319813) -ExtensionRegistryTest:test_revert_addExtension_unauthorizedCaller() (gas: 57908) -ExtensionRegistryTest:test_revert_addExtensionsWithSameFunctionSelectors() (gas: 3433892) -ExtensionRegistryTest:test_revert_removeExtension_extensionDoesNotExist() (gas: 17210) -ExtensionRegistryTest:test_revert_removeExtension_unauthorizedCaller() (gas: 2390986) -ExtensionRegistryTest:test_revert_updateExtension_extensionDoesNotExist() (gas: 1967399) -ExtensionRegistryTest:test_revert_updateExtension_fnSelectorSignatureMismatch() (gas: 4084008) -ExtensionRegistryTest:test_revert_updateExtension_notUpdatingImplementation() (gas: 2252102) -ExtensionRegistryTest:test_revert_updateExtension_unauthorizedCaller() (gas: 4221664) -ExtensionRegistryTest:test_state_addExtension() (gas: 1032508) -ExtensionRegistryTest:test_state_removeExtension() (gas: 4280618) -ExtensionRegistryTest:test_state_updateExtension_allNewFunctions() (gas: 4260519) -ExtensionRegistryTest:test_state_updateExtension_someNewFunctions() (gas: 4397981) -ExtensionRoyaltyTest:test_event_defaultRoyalty() (gas: 56878) -ExtensionRoyaltyTest:test_event_royaltyForToken() (gas: 80163) -ExtensionRoyaltyTest:test_revert_setDefaultRoyaltyInfo_ExceedsMaxBps() (gas: 32012) -ExtensionRoyaltyTest:test_revert_setRoyaltyInfoForToken_ExceedsMaxBps() (gas: 32069) -ExtensionRoyaltyTest:test_revert_setRoyaltyInfo_NotAuthorized() (gas: 10872) -ExtensionRoyaltyTest:test_state_setDefaultRoyaltyInfo() (gas: 59864) -ExtensionRoyaltyTest:test_state_setRoyaltyInfoForToken() (gas: 76828) -ExtensionSignatureMintERC1155:test_revert_mintWithSignature_InvalidReq() (gas: 108160) -ExtensionSignatureMintERC1155:test_revert_mintWithSignature_NotAuthorized() (gas: 44036) -ExtensionSignatureMintERC1155:test_revert_mintWithSignature_RequestExpired() (gas: 76714) -ExtensionSignatureMintERC1155:test_state_mintWithSignature() (gas: 96920) -ExtensionSignatureMintERC20:test_revert_mintWithSignature_InvalidReq() (gas: 96996) -ExtensionSignatureMintERC20:test_revert_mintWithSignature_NotAuthorized() (gas: 35020) -ExtensionSignatureMintERC20:test_revert_mintWithSignature_RequestExpired() (gas: 67121) -ExtensionSignatureMintERC20:test_state_mintWithSignature() (gas: 87327) -ExtensionSignatureMintERC721:test_revert_mintWithSignature_InvalidReq() (gas: 105730) -ExtensionSignatureMintERC721:test_revert_mintWithSignature_NotAuthorized() (gas: 41817) -ExtensionSignatureMintERC721:test_revert_mintWithSignature_RequestExpired() (gas: 74511) -ExtensionSignatureMintERC721:test_state_mintWithSignature() (gas: 94728) -ExtensionTokenBundle:test_revert_createBundle_emptyBundle() (gas: 8910) -ExtensionTokenBundle:test_revert_createBundle_existingBundleId() (gas: 211575) -ExtensionTokenBundle:test_revert_createBundle_tokenTypeMismatch() (gas: 1053809) -ExtensionTokenBundle:test_revert_updateBundle_emptyBundle() (gas: 209621) -ExtensionTokenBundle:test_revert_updateTokenInBundle_indexDNE() (gas: 212217) -ExtensionTokenBundle:test_state_addTokenInBundle() (gas: 292608) -ExtensionTokenBundle:test_state_createBundle() (gas: 218016) -ExtensionTokenBundle:test_state_updateBundle() (gas: 320404) -ExtensionTokenBundle:test_state_updateTokenInBundle() (gas: 235193) -ExtensionTokenStore:test_balances_releaseTokens() (gas: 362264) -ExtensionTokenStore:test_balances_storeTokens() (gas: 346405) -ForwarderChainlessDomainTest:test_state_forwarderChainlessDomain() (gas: 81756) -ForwarderTest:test_state_forwarder() (gas: 81617) -IssueC2_MarketplaceDirectListingsTest:test_state_buyFromListing_after_update() (gas: 538057) -IssueC3_MarketplaceEnglishAuctionsTest:test_state_collectAuctionTokens_afterAuctionPayout() (gas: 588074) -Macro_EditionStakeTest:testEdition_adminLockTokens() (gas: 483849) -Macro_EditionStakeTest:testEdition_demostrate_adminRewardsLock() (gas: 580875) -Macro_TokenStakeTest:testToken_adminLockTokens() (gas: 292846) -Macro_TokenStakeTest:testToken_demostrate_adminRewardsLock() (gas: 503329) -Macro_TokenStake_Rewards18_Staking6_Test:test_Macro_reward18_staking6() (gas: 222813) -Macro_TokenStake_Rewards6_Staking18_Test:test_Macro_reward6_staking18() (gas: 223319) -Macro_TokenStake_Tax:testToken_demonstrate_inaccurate_amount() (gas: 231438) -ManagedAccountTest:test_revert_executeTransaction_nonSigner_viaDirectCall() (gas: 484833) -ManagedAccountTest:test_revert_executeTransaction_nonSigner_viaEntrypoint() (gas: 289147) -ManagedAccountTest:test_scenario_changeExtensionForFunction() (gas: 828640) -ManagedAccountTest:test_state_accountReceivesNativeTokens() (gas: 251230) -ManagedAccountTest:test_state_addAndWithdrawDeposit() (gas: 329010) -ManagedAccountTest:test_state_createAccount_viaEntrypoint() (gas: 243328) -ManagedAccountTest:test_state_createAccount_viaFactory() (gas: 138282) -ManagedAccountTest:test_state_executeBatchTransaction() (gas: 294135) -ManagedAccountTest:test_state_executeBatchTransaction_viaEntrypoint() (gas: 334946) -ManagedAccountTest:test_state_executeTransaction() (gas: 279200) -ManagedAccountTest:test_state_executeTransaction_viaAccountSigner() (gas: 544268) -ManagedAccountTest:test_state_executeTransaction_viaEntrypoint() (gas: 316634) -ManagedAccountTest:test_state_receiveERC1155NFT() (gas: 291414) -ManagedAccountTest:test_state_receiveERC721NFT() (gas: 320942) -ManagedAccountTest:test_state_transferOutsNativeTokens() (gas: 331338) -MapTest:test_state_getAllFunctionsOfPlugin() (gas: 4290863) -MapTest:test_state_getAllPlugins() (gas: 838217) -MapTest:test_state_getPluginForFunction() (gas: 409580) -MarketplaceDirectListingsTest:test_revert_approveBuyerForListing_listingNotReserved() (gas: 420579) -MarketplaceDirectListingsTest:test_revert_approveBuyerForListing_notListingCreator() (gas: 378766) -MarketplaceDirectListingsTest:test_revert_approveCurrencyForListing_notListingCreator() (gas: 365076) -MarketplaceDirectListingsTest:test_revert_approveCurrencyForListing_reApprovingMainCurrency() (gas: 376243) -MarketplaceDirectListingsTest:test_revert_buyFromListing_buyerBalanceLessThanPrice() (gas: 517551) -MarketplaceDirectListingsTest:test_revert_buyFromListing_buyingMoreQuantityThanListed() (gas: 509425) -MarketplaceDirectListingsTest:test_revert_buyFromListing_buyingZeroQuantity() (gas: 449612) -MarketplaceDirectListingsTest:test_revert_buyFromListing_invalidCurrency() (gas: 524598) -MarketplaceDirectListingsTest:test_revert_buyFromListing_nativeToken_incorrectValueSent() (gas: 474543) -MarketplaceDirectListingsTest:test_revert_buyFromListing_notApprovedMarketplaceToTransferPrice() (gas: 499074) -MarketplaceDirectListingsTest:test_revert_buyFromListing_unexpectedTotalPrice() (gas: 474485) -MarketplaceDirectListingsTest:test_revert_cancelListing_nonExistentListing() (gas: 382453) -MarketplaceDirectListingsTest:test_revert_cancelListing_notListingCreator() (gas: 376400) -MarketplaceDirectListingsTest:test_revert_createListing_invalidEndTimestamp() (gas: 175926) -MarketplaceDirectListingsTest:test_revert_createListing_invalidStartTimestamp() (gas: 176645) -MarketplaceDirectListingsTest:test_revert_createListing_listingInvalidQuantity() (gas: 177263) -MarketplaceDirectListingsTest:test_revert_createListing_listingNonERC721OrERC1155Token() (gas: 158728) -MarketplaceDirectListingsTest:test_revert_createListing_listingZeroQuantity() (gas: 177222) -MarketplaceDirectListingsTest:test_revert_createListing_noAssetRoleWhenRestrictionsActive() (gas: 167324) -MarketplaceDirectListingsTest:test_revert_createListing_noListerRoleWhenRestrictionsActive() (gas: 160771) -MarketplaceDirectListingsTest:test_revert_createListing_notApprovedMarketplaceToTransferToken() (gas: 164955) -MarketplaceDirectListingsTest:test_revert_createListing_notOwnerOfListedToken() (gas: 181748) -MarketplaceDirectListingsTest:test_revert_updateListing_invalidEndTimestamp() (gas: 401691) -MarketplaceDirectListingsTest:test_revert_updateListing_invalidStartTimestamp() (gas: 402426) -MarketplaceDirectListingsTest:test_revert_updateListing_listingInvalidQuantity() (gas: 403962) -MarketplaceDirectListingsTest:test_revert_updateListing_listingNonERC721OrERC1155Token() (gas: 489291) -MarketplaceDirectListingsTest:test_revert_updateListing_listingZeroQuantity() (gas: 404318) -MarketplaceDirectListingsTest:test_revert_updateListing_noAssetRoleWhenRestrictionsActive() (gas: 411622) -MarketplaceDirectListingsTest:test_revert_updateListing_notApprovedMarketplaceToTransferToken() (gas: 394297) -MarketplaceDirectListingsTest:test_revert_updateListing_notListingCreator() (gas: 397706) -MarketplaceDirectListingsTest:test_revert_updateListing_notOwnerOfListedToken() (gas: 461711) -MarketplaceDirectListingsTest:test_state_approveBuyerForListing() (gas: 408721) -MarketplaceDirectListingsTest:test_state_approveCurrencyForListing() (gas: 405574) -MarketplaceDirectListingsTest:test_state_approvedCurrencies() (gas: 473990) -MarketplaceDirectListingsTest:test_state_buyFromListing() (gas: 520307) -MarketplaceDirectListingsTest:test_state_buyFromListing_nativeToken() (gas: 515181) -MarketplaceDirectListingsTest:test_state_cancelListing() (gas: 385192) -MarketplaceDirectListingsTest:test_state_createListing() (gas: 373581) -MarketplaceDirectListingsTest:test_state_initial() (gas: 24285) -MarketplaceDirectListingsTest:test_state_updateListing() (gas: 441381) -MarketplaceEnglishAuctionsTest:test_revert_bidInAuction_inactiveAuction() (gas: 514519) -MarketplaceEnglishAuctionsTest:test_revert_bidInAuction_notApprovedMarketplaceToTransferToken() (gas: 521255) -MarketplaceEnglishAuctionsTest:test_revert_bidInAuction_notNewWinningBid_firstBid() (gas: 501293) -MarketplaceEnglishAuctionsTest:test_revert_bidInAuction_notNewWinningBid_secondBid() (gas: 619950) -MarketplaceEnglishAuctionsTest:test_revert_bidInAuction_notOwnerOfBidTokens() (gas: 503747) -MarketplaceEnglishAuctionsTest:test_revert_cancelAuction_bidsAlreadyMade() (gas: 551400) -MarketplaceEnglishAuctionsTest:test_revert_collectAuctionPayout_auctionNotExpired() (gas: 576534) -MarketplaceEnglishAuctionsTest:test_revert_collectAuctionPayout_noBidsInAuction() (gas: 441604) -MarketplaceEnglishAuctionsTest:test_revert_collectAuctionTokens_auctionNotExpired() (gas: 568088) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_auctioningZeroQuantity() (gas: 176955) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_invalidAssetContract() (gas: 158927) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_invalidBidAmounts() (gas: 177163) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_invalidEndTimestamp() (gas: 177279) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_invalidQuantity() (gas: 176996) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_invalidStartTimestamp() (gas: 177482) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_noAssetRoleWhenRestrictionsActive() (gas: 167529) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_noBidOrTimeBuffer() (gas: 238997) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_noListerRoleWhenRestrictionsActive() (gas: 161224) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_notApprovedMarketplaceToTransferToken() (gas: 346064) -MarketplaceEnglishAuctionsTest:test_revert_createAuction_notOwnerOfAuctionedToken() (gas: 365276) -MarketplaceEnglishAuctionsTest:test_revert_isAuctionExpired() (gas: 392075) -MarketplaceEnglishAuctionsTest:test_revert_isNewWinningBid() (gas: 548606) -MarketplaceEnglishAuctionsTest:test_state_bidInAuction_buyoutBid() (gas: 671699) -MarketplaceEnglishAuctionsTest:test_state_bidInAuction_firstBid() (gas: 553804) -MarketplaceEnglishAuctionsTest:test_state_bidInAuction_nativeToken() (gas: 547436) -MarketplaceEnglishAuctionsTest:test_state_bidInAuction_secondBid() (gas: 632367) -MarketplaceEnglishAuctionsTest:test_state_cancelAuction() (gas: 441097) -MarketplaceEnglishAuctionsTest:test_state_collectAuctionPayout_afterAuctionEnds() (gas: 612793) -MarketplaceEnglishAuctionsTest:test_state_collectAuctionPayout_buyoutBid() (gas: 628265) -MarketplaceEnglishAuctionsTest:test_state_collectAuctionTokens() (gas: 609521) -MarketplaceEnglishAuctionsTest:test_state_createAuction() (gas: 404448) -MarketplaceEnglishAuctionsTest:test_state_getAllAuctions() (gas: 1609131) -MarketplaceEnglishAuctionsTest:test_state_getAllValidAuctions() (gas: 1899237) -MarketplaceEnglishAuctionsTest:test_state_initial() (gas: 24109) -MarketplaceEnglishAuctionsTest:test_state_isAuctionExpired() (gas: 402646) -MarketplaceEnglishAuctionsTest:test_state_isNewWinningBid() (gas: 562076) -MarketplaceOffersTest:test_revert_acceptOffer_notApprovedMarketplaceToTransferOfferedTokens() (gas: 420747) -MarketplaceOffersTest:test_revert_acceptOffer_notApprovedMarketplaceToTransferPrice() (gas: 418239) -MarketplaceOffersTest:test_revert_acceptOffer_notOwnedRequiredTokens() (gas: 439372) -MarketplaceOffersTest:test_revert_acceptOffer_offerorBalanceLessThanPrice() (gas: 397154) -MarketplaceOffersTest:test_revert_cancelOffer_callerNotOfferor() (gas: 330014) -MarketplaceOffersTest:test_revert_createListing_noAssetRoleWhenRestrictionsActive() (gas: 134626) -MarketplaceOffersTest:test_revert_makeOffer_invalidAssetContract() (gas: 226005) -MarketplaceOffersTest:test_revert_makeOffer_invalidExpirationTimestamp() (gas: 147930) -MarketplaceOffersTest:test_revert_makeOffer_invalidQuantity() (gas: 147592) -MarketplaceOffersTest:test_revert_makeOffer_notApprovedMarketplaceToTransferTokens() (gas: 128523) -MarketplaceOffersTest:test_revert_makeOffer_notOwnerOfOfferedTokens() (gas: 102767) -MarketplaceOffersTest:test_revert_makeOffer_wantedZeroTokens() (gas: 147241) -MarketplaceOffersTest:test_state_acceptOffer() (gas: 480946) -MarketplaceOffersTest:test_state_cancelOffer() (gas: 357974) -MarketplaceOffersTest:test_state_getAllOffers() (gas: 1240932) -MarketplaceOffersTest:test_state_getAllValidOffers() (gas: 1544879) -MarketplaceOffersTest:test_state_initial() (gas: 24142) -MarketplaceOffersTest:test_state_makeOffer() (gas: 336831) -MarketplaceTest:test_acceptOffer_expiration() (gas: 569752) -MarketplaceTest:test_acceptOffer_whenListingAcceptsNativeToken() (gas: 538615) -MarketplaceTest:test_createListing_auctionListing() (gas: 342542) -MarketplaceTest:test_createListing_auctionListing_ZeroBuyoutAmount() (gas: 327851) -MarketplaceTest:test_createListing_startTime_future() (gas: 342673) -MarketplaceTest:test_createListing_startTime_now() (gas: 343024) -MarketplaceTest:test_createListing_startTime_past() (gas: 146795) -MarketplaceTest:test_createListing_startTime_pastWithBuffer() (gas: 342595) -MarketplaceTest:test_offer_bidAuctionNativeToken() (gas: 586716) -MarketplaceTest:test_revert_offer_bidZeroAmount() (gas: 348014) -MarketplaceTest:test_updateListing_startTimeAndEndTime() (gas: 356090) -MarketplaceTest:test_updateListing_startTime_future() (gas: 351134) -MarketplaceTest:test_updateListing_startTime_past() (gas: 347725) -MinimalFactoryTest:test_gas_minimal() (gas: 692832) -MinimalFactoryTest:test_gas_notMinimalFactory() (gas: 651841) -MinimalFactoryTest:test_gas_twProxy() (gas: 793009) -MinimalFactoryTest:test_verify_deployedProxy() (gas: 698484) -MultiwrapTest:test_balances_unwrap() (gas: 502520) -MultiwrapTest:test_balances_wrap() (gas: 500732) -MultiwrapTest:test_balances_wrap_nativeTokens_multipleInstances() (gas: 353529) -MultiwrapTest:test_event_unwrap_TokensUnwrapped() (gas: 488478) -MultiwrapTest:test_event_wrap_TokensWrapped() (gas: 486434) -MultiwrapTest:test_fuzz_state_unwrap(uint256) (runs: 256, μ: 47555979, ~: 52727530) -MultiwrapTest:test_fuzz_state_wrap(uint256) (runs: 256, μ: 49552706, ~: 53288762) -MultiwrapTest:test_revert_nonHolder_renounceRole() (gas: 73666) -MultiwrapTest:test_revert_revokeRoleForNonHolder() (gas: 80378) -MultiwrapTest:test_revert_unwrap_access_UNWRAP_ROLE() (gas: 563223) -MultiwrapTest:test_revert_unwrap_invalidTokenId() (gas: 488469) -MultiwrapTest:test_revert_unwrap_notOwner() (gas: 509015) -MultiwrapTest:test_revert_unwrap_unapprovedCaller() (gas: 493717) -MultiwrapTest:test_revert_wrap_access_ASSET_ROLE() (gas: 129365) -MultiwrapTest:test_revert_wrap_access_MINTER_ROLE() (gas: 113560) -MultiwrapTest:test_revert_wrap_nativeTokens_insufficientValue() (gas: 149863) -MultiwrapTest:test_revert_wrap_nativeTokens_insufficientValueProvided_multipleInstances() (gas: 204295) -MultiwrapTest:test_revert_wrap_noTokensToWrap() (gas: 54481) -MultiwrapTest:test_revert_wrap_notApprovedTransfer_ERC1155() (gas: 375475) -MultiwrapTest:test_revert_wrap_notApprovedTransfer_ERC20() (gas: 289704) -MultiwrapTest:test_revert_wrap_notApprovedTransfer_ERC721() (gas: 332828) -MultiwrapTest:test_revert_wrap_notOwner_ERC1155() (gas: 408114) -MultiwrapTest:test_revert_wrap_notOwner_ERC20() (gas: 319786) -MultiwrapTest:test_revert_wrap_notOwner_ERC721() (gas: 363610) -MultiwrapTest:test_revert_wrap_reentrancy() (gas: 2226850) -MultiwrapTest:test_state_unwrap() (gas: 495078) -MultiwrapTest:test_state_unwrap_approvedCaller() (gas: 517792) -MultiwrapTest:test_state_unwrap_nativeTokens() (gas: 295184) -MultiwrapTest:test_state_wrap() (gas: 498458) -MultiwrapTest:test_state_wrap_nativeTokens() (gas: 311767) -MultiwrapTest:test_state_wrap_withAssetRoleRestriction() (gas: 735045) -NFTStakeEthRewardTest:test_Macro_NFTDirectSafeTransferLocksToken() (gas: 63193) -NFTStakeEthRewardTest:test_revert_claimRewards_noRewards() (gas: 494354) -NFTStakeEthRewardTest:test_revert_largeRewardsPerUnitTime_adminRewardsLock() (gas: 847163) -NFTStakeEthRewardTest:test_revert_setRewardsPerUnitTime_notAuthorized() (gas: 15903) -NFTStakeEthRewardTest:test_revert_setTimeUnit_notAuthorized() (gas: 16265) -NFTStakeEthRewardTest:test_revert_stake_notStaker() (gas: 104914) -NFTStakeEthRewardTest:test_revert_stake_stakingZeroTokens() (gas: 19253) -NFTStakeEthRewardTest:test_revert_withdraw_notStaker() (gas: 377026) -NFTStakeEthRewardTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 269826) -NFTStakeEthRewardTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 21476) -NFTStakeEthRewardTest:test_revert_zeroTimeUnit_adminLockTokens() (gas: 414812) -NFTStakeEthRewardTest:test_state_claimRewards() (gas: 544731) -NFTStakeEthRewardTest:test_state_setRewardsPerUnitTime() (gas: 702713) -NFTStakeEthRewardTest:test_state_setTimeUnit() (gas: 704200) -NFTStakeEthRewardTest:test_state_stake() (gas: 809055) -NFTStakeEthRewardTest:test_state_withdraw() (gas: 772279) -NFTStakeTest:test_Macro_NFTDirectSafeTransferLocksToken() (gas: 63193) -NFTStakeTest:test_revert_claimRewards_noRewards() (gas: 480833) -NFTStakeTest:test_revert_largeRewardsPerUnitTime_adminRewardsLock() (gas: 847163) -NFTStakeTest:test_revert_setRewardsPerUnitTime_notAuthorized() (gas: 15903) -NFTStakeTest:test_revert_setTimeUnit_notAuthorized() (gas: 16265) -NFTStakeTest:test_revert_stake_notStaker() (gas: 104914) -NFTStakeTest:test_revert_stake_stakingZeroTokens() (gas: 19253) -NFTStakeTest:test_revert_withdraw_notStaker() (gas: 377026) -NFTStakeTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 269826) -NFTStakeTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 21476) -NFTStakeTest:test_revert_zeroTimeUnit_adminLockTokens() (gas: 414812) -NFTStakeTest:test_state_claimRewards() (gas: 531101) -NFTStakeTest:test_state_setRewardsPerUnitTime() (gas: 702713) -NFTStakeTest:test_state_setTimeUnit() (gas: 704200) -NFTStakeTest:test_state_stake() (gas: 809055) -NFTStakeTest:test_state_withdraw() (gas: 772279) -OpenEditionERC721Test:test_claimCondition_startIdAndCount() (gas: 343270) -OpenEditionERC721Test:test_claimCondition_startPhase() (gas: 362104) -OpenEditionERC721Test:test_claimCondition_with_startTimestamp() (gas: 364603) -OpenEditionERC721Test:test_claim_transferRole() (gas: 363163) -OpenEditionERC721Test:test_event_setSharedMetadata_SharedMetadataUpdated() (gas: 135347) -OpenEditionERC721Test:test_fuzz_claim_merkleProof(uint256) (runs: 256, μ: 851408, ~: 810433) -OpenEditionERC721Test:test_fuzz_claim_noAllowlist(uint256) (runs: 256, μ: 310676, ~: 310676) -OpenEditionERC721Test:test_member_count_incremented_properly_when_role_granted() (gas: 99120) -OpenEditionERC721Test:test_revert_claimCondition_exceedMaxClaimableSupply() (gas: 547744) -OpenEditionERC721Test:test_revert_grant_role_to_account_with_role() (gas: 95070) -OpenEditionERC721Test:test_revert_nonHolder_renounceRole() (gas: 75845) -OpenEditionERC721Test:test_revert_revokeRoleForNonHolder() (gas: 82645) -OpenEditionERC721Test:test_revert_setSharedMetadata_MINTER_ROLE() (gas: 30241) -OpenEditionERC721Test:test_state_claimCondition_resetEligibility() (gas: 851135) -OpenEditionERC721Test:test_state_claim_allowlisted_DefaultQuantitySomePrice() (gas: 577500) -OpenEditionERC721Test:test_state_claim_allowlisted_SetQuantityDefaultPrice() (gas: 787193) -OpenEditionERC721Test:test_state_claim_allowlisted_SetQuantityPrice() (gas: 770362) -OpenEditionERC721Test:test_state_claim_allowlisted_SetQuantityZeroPrice() (gas: 624551) -OpenEditionERC721Test:test_state_getRoleMember_transferRole() (gas: 526550) -OpenEditionERC721Test:test_state_grant_transferRole() (gas: 100993) -OpenEditionERC721Test:test_state_sharedMetadata() (gas: 690296) -OpenPackBenchmarkTest:test_benchmark_openPack() (gas: 123789) -OpenPackLargeInputsTest:test_fuzz_failing_state_openPack() (gas: 9757122250) -PackTest:test_balances_addPackContents() (gas: 1720270) -PackTest:test_balances_createPack() (gas: 1470897) -PackTest:test_balances_openPack() (gas: 1678554) -PackTest:test_checkForwarders() (gas: 18810) -PackTest:test_event_createPack_PackCreated() (gas: 1434260) -PackTest:test_event_openPack_PackOpened() (gas: 1486756) -PackTest:test_fuzz_state_createPack(uint256,uint128) (runs: 256, μ: 1747808, ~: 3635) -PackTest:test_interface() (gas: 4007) -PackTest:test_revert_addPackContents_CantUpdateAnymore() (gas: 1470715) -PackTest:test_revert_addPackContents_NotMinterRole() (gas: 1517940) -PackTest:test_revert_addPackContents_NotRecipient() (gas: 1458360) -PackTest:test_revert_addPackContents_PackNonExistent() (gas: 140174) -PackTest:test_revert_addPackContents_RandomAccountGrief() (gas: 1710706) -PackTest:test_revert_createPack_access_ASSET_ROLE() (gas: 221356) -PackTest:test_revert_createPack_access_MINTER_ROLE() (gas: 181562) -PackTest:test_revert_createPack_invalidRewardUnits() (gas: 117521) -PackTest:test_revert_createPack_invalidTokenType() (gas: 131315) -PackTest:test_revert_createPack_nativeTokens_insufficientValue() (gas: 1497106) -PackTest:test_revert_createPack_noTokensToPack() (gas: 49697) -PackTest:test_revert_createPack_notApprovedTransfer_ERC1155() (gas: 1149670) -PackTest:test_revert_createPack_notApprovedTransfer_ERC20() (gas: 1189828) -PackTest:test_revert_createPack_notApprovedTransfer_ERC721() (gas: 1107585) -PackTest:test_revert_createPack_notOwner_ERC1155() (gas: 1182598) -PackTest:test_revert_createPack_notOwner_ERC20() (gas: 1288454) -PackTest:test_revert_createPack_notOwner_ERC721() (gas: 1142573) -PackTest:test_revert_createPack_reentrancy() (gas: 2486988) -PackTest:test_revert_createPack_zeroTotalAmount() (gas: 79047) -PackTest:test_revert_openPack_invalidPackId() (gas: 1437999) -PackTest:test_revert_openPack_notEOA() (gas: 1436601) -PackTest:test_revert_openPack_openBeforeStart() (gas: 1439161) -PackTest:test_revert_openPack_openMoreThanOwned() (gas: 1437122) -PackTest:test_state_addPackContents() (gas: 1772940) -PackTest:test_state_createPack() (gas: 1479689) -PackTest:test_state_createPack_nativeTokens() (gas: 1699686) -PackTest:test_state_createPack_withAssetRoleRestriction() (gas: 1743612) -PackTest:test_state_openPack() (gas: 1664893) -PackTest:test_supportsInterface() (gas: 13465) -PackVRFDirectBenchmarkTest:test_benchmark_fulfillRandomness() (gas: 75675) -PackVRFDirectTest:test_balances_createPack() (gas: 1437179) -PackVRFDirectTest:test_balances_openPack() (gas: 1692107) -PackVRFDirectTest:test_event_createPack_PackCreated() (gas: 1400145) -PackVRFDirectTest:test_event_openPack() (gas: 1508129) -PackVRFDirectTest:test_fuzz_state_createPack(uint256,uint128) (runs: 256, μ: 1737457, ~: 3723) -PackVRFDirectTest:test_interface() (gas: 3985) -PackVRFDirectTest:test_revert_createPack_access_MINTER_ROLE() (gas: 176232) -PackVRFDirectTest:test_revert_createPack_invalidRewardUnits() (gas: 112923) -PackVRFDirectTest:test_revert_createPack_invalidTokenType() (gas: 124223) -PackVRFDirectTest:test_revert_createPack_nativeTokens_insufficientValue() (gas: 1489626) -PackVRFDirectTest:test_revert_createPack_noTokensToPack() (gas: 45099) -PackVRFDirectTest:test_revert_createPack_notApprovedTransfer_ERC1155() (gas: 1142600) -PackVRFDirectTest:test_revert_createPack_notApprovedTransfer_ERC20() (gas: 1182740) -PackVRFDirectTest:test_revert_createPack_notApprovedTransfer_ERC721() (gas: 1100118) -PackVRFDirectTest:test_revert_createPack_notOwner_ERC1155() (gas: 1175438) -PackVRFDirectTest:test_revert_createPack_notOwner_ERC20() (gas: 1281304) -PackVRFDirectTest:test_revert_createPack_notOwner_ERC721() (gas: 1135481) -PackVRFDirectTest:test_revert_createPack_reentrancy() (gas: 2427602) -PackVRFDirectTest:test_revert_createPack_zeroTotalAmount() (gas: 70065) -PackVRFDirectTest:test_revert_openPackAndClaimRewards_ReqInFlight() (gas: 1542247) -PackVRFDirectTest:test_revert_openPack_ReqInFlight() (gas: 1522111) -PackVRFDirectTest:test_revert_openPack_invalidPackId() (gas: 1406038) -PackVRFDirectTest:test_revert_openPack_notEOA() (gas: 1402578) -PackVRFDirectTest:test_revert_openPack_openBeforeStart() (gas: 1405296) -PackVRFDirectTest:test_revert_openPack_openMoreThanOwned() (gas: 1405201) -PackVRFDirectTest:test_state_createPack() (gas: 1445574) -PackVRFDirectTest:test_state_createPack_nativeTokens() (gas: 1665549) -PackVRFDirectTest:test_state_openPack() (gas: 1678035) -PackVRFDirectTest:test_state_openPackAndClaimRewards() (gas: 1614632) -PackVRFDirectTest:test_state_openPackAndClaimRewards_lowGasFailsafe() (gas: 1646170) -PackVRFDirectTest:test_supportsInterface() (gas: 13509) -RouterImmutableTest:test_revert_callWithRouter() (gas: 16706) -RouterImmutableTest:test_state_callWithRouter() (gas: 45357) -RouterTest:test_revert_addPlugin_defaultExists() (gas: 17813) -RouterTest:test_revert_addPlugin_pluginAlreadyExists() (gas: 226279) -RouterTest:test_revert_addPlugin_selectorSignatureMismatch() (gas: 84842) -RouterTest:test_revert_removePlugin_pluginDNE() (gas: 11325) -RouterTest:test_revert_updatePlugin_functionDNE() (gas: 20258) -RouterTest:test_revert_updatePlugin_selectorSignatureMismatch() (gas: 21013) -RouterTest:test_state_addPlugin() (gas: 312374) -RouterTest:test_state_getAllFunctionsOfPlugin() (gas: 444458) -RouterTest:test_state_getPluginForFunction() (gas: 412081) -RouterTest:test_state_removePlugin() (gas: 181994) -RouterTest:test_state_updatePlugin() (gas: 324661) -SignatureDropBenchmarkTest:test_benchmark_claim() (gas: 165870) -SignatureDropBenchmarkTest:test_benchmark_mintWithSignature() (gas: 211745) -SignatureDropTest:testFail_combination_signatureAndClaim() (gas: 1563024) -SignatureDropTest:testFail_reentrancy_claim() (gas: 1404948) -SignatureDropTest:testFail_reentrancy_mintWithSignature() (gas: 1473980) -SignatureDropTest:testFail_reveal_incorrectKey() (gas: 217825) -SignatureDropTest:test_balances_mintWithSignature() (gas: 323061) -SignatureDropTest:test_claimCondition_with_startTimestamp() (gas: 361148) -SignatureDropTest:test_claim_transferRole() (gas: 348109) -SignatureDropTest:test_delayedReveal_withNewLazyMintedEmptyBatch() (gas: 284088) -SignatureDropTest:test_event_lazyMint_TokensLazyMinted() (gas: 132692) -SignatureDropTest:test_event_reveal_TokenURIRevealed() (gas: 192639) -SignatureDropTest:test_fuzz_claim_merkleProof(uint256) (runs: 256, μ: 845197, ~: 814232) -SignatureDropTest:test_fuzz_claim_noAllowlist(uint256) (runs: 256, μ: 256471, ~: 256471) -SignatureDropTest:test_fuzz_lazyMint_batchMintAndNextTokenIdToMint(uint256) (runs: 256, μ: 204468, ~: 204468) -SignatureDropTest:test_fuzz_lazyMint_noEncryptedURI(uint256) (runs: 256, μ: 185292, ~: 170236) -SignatureDropTest:test_fuzz_lazyMint_withEncryptedURI(uint256) (runs: 256, μ: 245535, ~: 245535) -SignatureDropTest:test_fuzz_mintWithSignature(uint128,uint128) (runs: 256, μ: 219080, ~: 427300) -SignatureDropTest:test_member_count_incremented_properly_when_role_granted() (gas: 96419) -SignatureDropTest:test_revert_claimCondition_exceedMaxClaimableSupply() (gas: 537689) -SignatureDropTest:test_revert_claimCondition_notEnoughMintedTokens() (gas: 205284) -SignatureDropTest:test_revert_delayedReveal_alreadyRevealed() (gas: 194412) -SignatureDropTest:test_revert_grant_role_to_account_with_role() (gas: 92760) -SignatureDropTest:test_revert_lazyMint_MINTER_ROLE() (gas: 214770) -SignatureDropTest:test_revert_lazyMint_URIForNonLazyMintedToken() (gas: 130214) -SignatureDropTest:test_revert_mintWithSignature_notEnoughMintedTokens() (gas: 144004) -SignatureDropTest:test_revert_mintWithSignature_notSentAmountRequired() (gas: 189152) -SignatureDropTest:test_revert_mintWithSignature_unapprovedSigner() (gas: 273157) -SignatureDropTest:test_revert_mintWithSignature_zeroQuantity() (gas: 158539) -SignatureDropTest:test_revert_nonHolder_renounceRole() (gas: 73667) -SignatureDropTest:test_revert_reveal_MINTER_ROLE() (gas: 242469) -SignatureDropTest:test_revert_reveal_revealingNonExistentBatch() (gas: 313502) -SignatureDropTest:test_revert_revokeRoleForNonHolder() (gas: 80445) -SignatureDropTest:test_state_claimCondition_resetEligibility() (gas: 418418) -SignatureDropTest:test_state_getRoleMember_transferRole() (gas: 514945) -SignatureDropTest:test_state_grant_transferRole() (gas: 97957) -SignatureDropTest:test_state_lazyMint_noEncryptedURI() (gas: 1176282) -SignatureDropTest:test_state_lazyMint_withEncryptedURI() (gas: 898851) -SignatureDropTest:test_state_mintWithSignature() (gas: 440798) -SignatureDropTest:test_state_mintWithSignature_UpdateRoyaltyAndSaleInfo() (gas: 610488) -SignatureDropTest:test_state_reveal() (gas: 1793797) -StakingExtensionTest:test_revert_claimRewards_noRewards() (gas: 455701) -StakingExtensionTest:test_revert_setRewardsPerUnitTime_notAuthorized() (gas: 10020) -StakingExtensionTest:test_revert_setTimeUnit_notAuthorized() (gas: 10504) -StakingExtensionTest:test_revert_stake_notStaker() (gas: 97844) -StakingExtensionTest:test_revert_stake_stakingZeroTokens() (gas: 16710) -StakingExtensionTest:test_revert_withdraw_notStaker() (gas: 345708) -StakingExtensionTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 241338) -StakingExtensionTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 16838) -StakingExtensionTest:test_state_claimRewards() (gas: 492106) -StakingExtensionTest:test_state_setRewardsPerUnitTime() (gas: 664782) -StakingExtensionTest:test_state_setTimeUnit() (gas: 666403) -StakingExtensionTest:test_state_stake() (gas: 771073) -StakingExtensionTest:test_state_withdraw() (gas: 481871) -TWFactoryTest:testNoNonAdmin(address,address) (runs: 256, μ: 14608, ~: 14608) -TWFactoryTest:test_addImplementation() (gas: 96619) -TWFactoryTest:test_addImplementation_directV2() (gas: 285166) -TWFactoryTest:test_addImplementation_emit_ImplementationAdded() (gas: 91616) -TWFactoryTest:test_addImplementation_newImpl() (gas: 339924) -TWFactoryTest:test_addImplementation_revert_invalidCaller() (gas: 16714) -TWFactoryTest:test_approveImplementation() (gas: 50687) -TWFactoryTest:test_approveImplementation_emit_ImplementationApproved() (gas: 41357) -TWFactoryTest:test_approveImplementation_revert_invalidCaller() (gas: 15984) -TWFactoryTest:test_deployProxy() (gas: 237023) -TWFactoryTest:test_deployProxyByImplementation(bytes32) (runs: 256, μ: 190991, ~: 190991) -TWFactoryTest:test_deployProxyByImplementation_revert_invalidImpl() (gas: 16131) -TWFactoryTest:test_deployProxyDeterministic(bytes32) (runs: 256, μ: 238227, ~: 238227) -TWFactoryTest:test_deployProxyDeterministic_revert_invalidImpl(bytes32) (runs: 256, μ: 23849, ~: 23849) -TWFactoryTest:test_deployProxy_revert_invalidImpl() (gas: 29694) -TWFactoryTest:test_deployProxy_sameBlock() (gas: 355169) -TWFactoryTest:test_initialState() (gas: 11145) -TWMultichainRegistryTest:test_addFromFactory() (gas: 138669225) -TWMultichainRegistryTest:test_addFromSelf() (gas: 138866643) -TWMultichainRegistryTest:test_add_emit_Added() (gas: 172695) -TWMultichainRegistryTest:test_interfaceId() (gas: 3005) -TWMultichainRegistryTest:test_removeFromFactory() (gas: 130636550) -TWMultichainRegistryTest:test_removeFromSelf() (gas: 129359757) -TWMultichainRegistryTest:test_remove_emit_Deleted() (gas: 121444494) -TWMultichainRegistryTest:test_remove_revert_incorrectChainId() (gas: 121500707) -TWMultichainRegistryTest:test_remove_revert_invalidCaller() (gas: 121498120) -TWMultichainRegistryTest:test_remove_revert_noModulesToRemove() (gas: 125863594) -TWProxyBenchmark:testBenchmark_deployDrop1155() (gas: 719803) -TWProxyBenchmark:testBenchmark_deployDrop721() (gas: 719370) -TWProxyBenchmark:testBenchmark_deployToken1155() (gas: 822657) -TWProxyBenchmark:testBenchmark_deployToken721() (gas: 818275) -TWRegistryTest:test_addFromFactory() (gas: 143795) -TWRegistryTest:test_addFromSelf() (gas: 89032) -TWRegistryTest:test_add_emit_Added() (gas: 88317) -TWRegistryTest:test_removeFromFactory() (gas: 70711) -TWRegistryTest:test_removeFromSelf() (gas: 72572) -TWRegistryTest:test_remove_emit_Deleted() (gas: 72635) -TWRegistryTest:test_remove_revert_invalidCaller() (gas: 91275) -TWRegistryTest:test_remove_revert_noModulesToRemove() (gas: 101049) -TWRouterTest:test_revert_addExtension_extensionAlreadyExists() (gas: 1075669) -TWRouterTest:test_revert_addExtension_extensionDNE() (gas: 659649) -TWRouterTest:test_revert_removeExtension_extensionDNE() (gas: 16875) -TWRouterTest:test_revert_updateExtension_extensionDNE_inRegistry() (gas: 1125292) -TWRouterTest:test_revert_updateExtension_extensionDNE_inRouter() (gas: 671610) -TWRouterTest:test_revert_updateExtension_reAddingExtension() (gas: 1075784) -TWRouterTest:test_state_addExtension() (gas: 1081653) -TWRouterTest:test_state_initialState() (gas: 539306) -TWRouterTest:test_state_removeExtension() (gas: 868082) -TWRouterTest:test_state_updateExtension() (gas: 1334464) -TieredDropBechmarkTest:test_banchmark_getTokensInTier() (gas: 57274027) -TieredDropBechmarkTest:test_banchmark_getTokensInTier_hundred() (gas: 579481) -TieredDropBechmarkTest:test_banchmark_getTokensInTier_ten() (gas: 73309) -TieredDropTest:test_revert_claimWithSignature_insufficientTokensInTiers() (gas: 1153588) -TieredDropTest:test_revert_claimWithSignature_invalidEncoding() (gas: 915117) -TieredDropTest:test_revert_claimWithSignature_mintingZeroQuantity() (gas: 1094104) -TieredDropTest:test_revert_claimWithSignature_notEnoughLazyMintedTokens() (gas: 1116792) -TieredDropTest:test_revert_lazyMintWithTier_mintingZeroAmount() (gas: 38678) -TieredDropTest:test_revert_lazyMintWithTier_notMinterRole() (gas: 57929) -TieredDropTest:test_state_claimWithSignature() (gas: 1827983) -TieredDropTest:test_state_claimWithSignature_IssueH1() (gas: 2005682) -TieredDropTest:test_state_claimWithSignature_IssueH1_2() (gas: 2501031) -TieredDropTest:test_state_getTierForToken() (gas: 1642825) -TieredDropTest:test_state_getTokensInTier() (gas: 1523824) -TieredDropTest:test_state_getTokensInTierLen() (gas: 2376848) -TieredDropTest:test_state_revealWithScrambleOffset() (gas: 2741023) -TokenERC1155Test:test_event_defaultRoyalty() (gas: 32193) -TokenERC1155Test:test_event_mintTo() (gas: 126570) -TokenERC1155Test:test_event_mintWithSignature() (gas: 250659) -TokenERC1155Test:test_event_platformFeeInfo() (gas: 31929) -TokenERC1155Test:test_event_royaltyForToken() (gas: 66855) -TokenERC1155Test:test_event_setOwner() (gas: 107352) -TokenERC1155Test:test_event_setPrimarySaleRecipient() (gas: 26264) -TokenERC1155Test:test_revert_PlatformFeeGreaterThanPrice() (gas: 358228) -TokenERC1155Test:test_revert_burn_NotOwnerNorApproved() (gas: 132061) -TokenERC1155Test:test_revert_mintTo_NotAuthorized() (gas: 78757) -TokenERC1155Test:test_revert_mintWithSignature_InvalidSignature() (gas: 86252) -TokenERC1155Test:test_revert_mintWithSignature_InvalidTokenId() (gas: 109933) -TokenERC1155Test:test_revert_mintWithSignature_MsgValueNotZero() (gas: 307277) -TokenERC1155Test:test_revert_mintWithSignature_MustSendTotalPrice() (gas: 298046) -TokenERC1155Test:test_revert_mintWithSignature_RecipientUndefined() (gas: 84569) -TokenERC1155Test:test_revert_mintWithSignature_RequestExpired() (gas: 80407) -TokenERC1155Test:test_revert_mintWithSignature_ZeroQuantity() (gas: 84516) -TokenERC1155Test:test_revert_setContractURI() (gas: 76641) -TokenERC1155Test:test_revert_setDefaultRoyaltyInfo_ExceedsRoyaltyBps() (gas: 19414) -TokenERC1155Test:test_revert_setDefaultRoyaltyInfo_NotAuthorized() (gas: 77043) -TokenERC1155Test:test_revert_setOwner_NotModuleAdmin() (gas: 21177) -TokenERC1155Test:test_revert_setPlatformFeeInfo_ExceedsMaxBps() (gas: 19118) -TokenERC1155Test:test_revert_setPlatformFeeInfo_NotAuthorized() (gas: 142873) -TokenERC1155Test:test_revert_setPrimarySaleRecipient_NotAuthorized() (gas: 76817) -TokenERC1155Test:test_revert_setRoyaltyInfoForToken_ExceedsRoyaltyBps() (gas: 19030) -TokenERC1155Test:test_revert_setRoyaltyInfo_NotAuthorized() (gas: 76892) -TokenERC1155Test:test_state_PlatformFee_Flat_ERC20() (gas: 461017) -TokenERC1155Test:test_state_PlatformFee_NativeToken() (gas: 454305) -TokenERC1155Test:test_state_burn_TokenOperator() (gas: 136292) -TokenERC1155Test:test_state_burn_TokenOwner() (gas: 109536) -TokenERC1155Test:test_state_mintTo() (gas: 132179) -TokenERC1155Test:test_state_mintWithSignature_ExistingTokenId() (gas: 341150) -TokenERC1155Test:test_state_mintWithSignature_NewTokenId() (gas: 250066) -TokenERC1155Test:test_state_mintWithSignature_NonZeroPrice_ERC20() (gas: 408002) -TokenERC1155Test:test_state_mintWithSignature_NonZeroPrice_NativeToken() (gas: 400764) -TokenERC1155Test:test_state_setContractURI() (gas: 29841) -TokenERC1155Test:test_state_setDefaultRoyaltyInfo() (gas: 38448) -TokenERC1155Test:test_state_setFlatPlatformFee() (gas: 49065) -TokenERC1155Test:test_state_setOwner() (gas: 107527) -TokenERC1155Test:test_state_setPlatformFeeInfo() (gas: 31893) -TokenERC1155Test:test_state_setPlatformFeeType() (gas: 74554) -TokenERC1155Test:test_state_setPrimarySaleRecipient() (gas: 25909) -TokenERC1155Test:test_state_setRoyaltyInfoForToken() (gas: 66741) -TokenERC20Test:test_event_mintTo() (gas: 122728) -TokenERC20Test:test_event_mintWithSignature() (gas: 188445) -TokenERC20Test:test_event_platformFeeInfo() (gas: 31788) -TokenERC20Test:test_event_setPrimarySaleRecipient() (gas: 26551) -TokenERC20Test:test_revert_mintTo_NotAuthorized() (gas: 18999) -TokenERC20Test:test_revert_mintWithSignature_InvalidSignature() (gas: 75206) -TokenERC20Test:test_revert_mintWithSignature_MsgValueNotZero() (gas: 149757) -TokenERC20Test:test_revert_mintWithSignature_MustSendTotalPrice() (gas: 140692) -TokenERC20Test:test_revert_mintWithSignature_RecipientUndefined() (gas: 75909) -TokenERC20Test:test_revert_mintWithSignature_RequestExpired() (gas: 69033) -TokenERC20Test:test_revert_mintWithSignature_ZeroQuantity() (gas: 73064) -TokenERC20Test:test_revert_setContractURI_NotAuthorized() (gas: 76762) -TokenERC20Test:test_revert_setPlatformFeeInfo_ExceedsMaxBps() (gas: 18942) -TokenERC20Test:test_revert_setPlatformFeeInfo_NotAuthorized() (gas: 76719) -TokenERC20Test:test_revert_setPrimarySaleRecipient_NotAuthorized() (gas: 76872) -TokenERC20Test:test_state_mintTo() (gas: 126549) -TokenERC20Test:test_state_mintWithSignature_NonZeroPrice_ERC20() (gas: 314729) -TokenERC20Test:test_state_mintWithSignature_NonZeroPrice_NativeToken() (gas: 303402) -TokenERC20Test:test_state_mintWithSignature_ZeroPrice() (gas: 186989) -TokenERC20Test:test_state_setContractURI() (gas: 30017) -TokenERC20Test:test_state_setPlatformFeeInfo() (gas: 31700) -TokenERC20Test:test_state_setPrimarySaleRecipient() (gas: 25797) -TokenERC721Test:test_event_defaultRoyalty() (gas: 31664) -TokenERC721Test:test_event_mintTo() (gas: 155355) -TokenERC721Test:test_event_mintWithSignature() (gas: 272179) -TokenERC721Test:test_event_platformFeeInfo() (gas: 31885) -TokenERC721Test:test_event_royaltyForToken() (gas: 66943) -TokenERC721Test:test_event_setOwner() (gas: 107462) -TokenERC721Test:test_event_setPrimarySaleRecipient() (gas: 26242) -TokenERC721Test:test_revert_burn_NotOwnerNorApproved() (gas: 163289) -TokenERC721Test:test_revert_mintTo_NotAuthorized() (gas: 78412) -TokenERC721Test:test_revert_mintTo_emptyURI() (gas: 43104) -TokenERC721Test:test_revert_mintWithSignature_InvalidSignature() (gas: 81879) -TokenERC721Test:test_revert_mintWithSignature_MsgValueNotZero() (gas: 330275) -TokenERC721Test:test_revert_mintWithSignature_MustSendTotalPrice() (gas: 318352) -TokenERC721Test:test_revert_mintWithSignature_RecipientUndefined() (gas: 79768) -TokenERC721Test:test_revert_mintWithSignature_RequestExpired() (gas: 75628) -TokenERC721Test:test_revert_setContractURI() (gas: 76883) -TokenERC721Test:test_revert_setDefaultRoyaltyInfo_ExceedsRoyaltyBps() (gas: 18951) -TokenERC721Test:test_revert_setDefaultRoyaltyInfo_NotAuthorized() (gas: 76690) -TokenERC721Test:test_revert_setOwner_NotModuleAdmin() (gas: 21111) -TokenERC721Test:test_revert_setPlatformFeeInfo_ExceedsMaxBps() (gas: 19074) -TokenERC721Test:test_revert_setPlatformFeeInfo_NotAuthorized() (gas: 76796) -TokenERC721Test:test_revert_setPrimarySaleRecipient_NotAuthorized() (gas: 76530) -TokenERC721Test:test_revert_setRoyaltyInfoForToken_ExceedsRoyaltyBps() (gas: 19118) -TokenERC721Test:test_revert_setRoyaltyInfo_NotAuthorized() (gas: 77068) -TokenERC721Test:test_state_burn_TokenOperator() (gas: 167383) -TokenERC721Test:test_state_burn_TokenOwner() (gas: 140704) -TokenERC721Test:test_state_mintTo() (gas: 165345) -TokenERC721Test:test_state_mintWithSignature_NonZeroPrice_ERC20() (gas: 405328) -TokenERC721Test:test_state_mintWithSignature_NonZeroPrice_NativeToken() (gas: 391092) -TokenERC721Test:test_state_mintWithSignature_ZeroPrice() (gas: 276330) -TokenERC721Test:test_state_setContractURI() (gas: 30083) -TokenERC721Test:test_state_setDefaultRoyaltyInfo() (gas: 38139) -TokenERC721Test:test_state_setOwner() (gas: 107284) -TokenERC721Test:test_state_setPlatformFeeInfo() (gas: 31937) -TokenERC721Test:test_state_setPrimarySaleRecipient() (gas: 25468) -TokenERC721Test:test_state_setRoyaltyInfoForToken() (gas: 66895) -TokenStakeEthRewardTest:test_revert_claimRewards_noRewards() (gas: 281976) -TokenStakeEthRewardTest:test_revert_setRewardRatio_divideByZero() (gas: 31378) -TokenStakeEthRewardTest:test_revert_setRewardRatio_notAuthorized() (gas: 16130) -TokenStakeEthRewardTest:test_revert_setTimeUnit_notAuthorized() (gas: 16177) -TokenStakeEthRewardTest:test_revert_stake_stakingZeroTokens() (gas: 18862) -TokenStakeEthRewardTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 369796) -TokenStakeEthRewardTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 21041) -TokenStakeEthRewardTest:test_revert_zeroTimeUnit_adminLockTokens() (gas: 191294) -TokenStakeEthRewardTest:test_state_claimRewards() (gas: 460583) -TokenStakeEthRewardTest:test_state_setRewardRatio() (gas: 484807) -TokenStakeEthRewardTest:test_state_setTimeUnit() (gas: 485410) -TokenStakeEthRewardTest:test_state_stake() (gas: 345036) -TokenStakeEthRewardTest:test_state_withdraw() (gas: 424073) -TokenStakeEthStakeTest:test_revert_claimRewards_noRewards() (gas: 297085) -TokenStakeEthStakeTest:test_revert_setRewardRatio_divideByZero() (gas: 31378) -TokenStakeEthStakeTest:test_revert_setRewardRatio_notAuthorized() (gas: 16130) -TokenStakeEthStakeTest:test_revert_setTimeUnit_notAuthorized() (gas: 16177) -TokenStakeEthStakeTest:test_revert_stake_stakingZeroTokens() (gas: 18862) -TokenStakeEthStakeTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 422154) -TokenStakeEthStakeTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 21041) -TokenStakeEthStakeTest:test_revert_zeroTimeUnit_adminLockTokens() (gas: 219914) -TokenStakeEthStakeTest:test_state_claimRewards() (gas: 459785) -TokenStakeEthStakeTest:test_state_setRewardRatio() (gas: 507588) -TokenStakeEthStakeTest:test_state_setTimeUnit() (gas: 508191) -TokenStakeEthStakeTest:test_state_stake() (gas: 369736) -TokenStakeEthStakeTest:test_state_withdraw() (gas: 472233) -TokenStakeTest:test_revert_claimRewards_noRewards() (gas: 268456) -TokenStakeTest:test_revert_setRewardRatio_divideByZero() (gas: 31378) -TokenStakeTest:test_revert_setRewardRatio_notAuthorized() (gas: 16130) -TokenStakeTest:test_revert_setTimeUnit_notAuthorized() (gas: 16177) -TokenStakeTest:test_revert_stake_stakingZeroTokens() (gas: 18862) -TokenStakeTest:test_revert_withdraw_withdrawingMoreThanStaked() (gas: 369796) -TokenStakeTest:test_revert_withdraw_withdrawingZeroTokens() (gas: 21041) -TokenStakeTest:test_revert_zeroTimeUnit_adminLockTokens() (gas: 191294) -TokenStakeTest:test_state_claimRewards() (gas: 432123) -TokenStakeTest:test_state_setRewardRatio() (gas: 484807) -TokenStakeTest:test_state_setTimeUnit() (gas: 485410) -TokenStakeTest:test_state_stake() (gas: 345036) -TokenStakeTest:test_state_withdraw() (gas: 424073) \ No newline at end of file +AABenchmarkPrepare:test_prepareBenchmarkFile() (gas: 2926370) +AccountBenchmarkTest:test_state_accountReceivesNativeTokens() (gas: 11037) +AccountBenchmarkTest:test_state_addAndWithdrawDeposit() (gas: 83332) +AccountBenchmarkTest:test_state_contractMetadata() (gas: 56507) +AccountBenchmarkTest:test_state_createAccount_viaEntrypoint() (gas: 432040) +AccountBenchmarkTest:test_state_createAccount_viaFactory() (gas: 334122) +AccountBenchmarkTest:test_state_executeBatchTransaction() (gas: 39874) +AccountBenchmarkTest:test_state_executeBatchTransaction_viaAccountSigner() (gas: 392782) +AccountBenchmarkTest:test_state_executeBatchTransaction_viaEntrypoint() (gas: 82915) +AccountBenchmarkTest:test_state_executeTransaction() (gas: 35735) +AccountBenchmarkTest:test_state_executeTransaction_viaAccountSigner() (gas: 378632) +AccountBenchmarkTest:test_state_executeTransaction_viaEntrypoint() (gas: 75593) +AccountBenchmarkTest:test_state_receiveERC1155NFT() (gas: 39343) +AccountBenchmarkTest:test_state_receiveERC721NFT() (gas: 78624) +AccountBenchmarkTest:test_state_transferOutsNativeTokens() (gas: 81713) +AirdropERC1155BenchmarkTest:test_benchmark_airdropERC1155_airdrop() (gas: 38083572) +AirdropERC20BenchmarkTest:test_benchmark_airdropERC20_airdrop() (gas: 32068413) +AirdropERC721BenchmarkTest:test_benchmark_airdropERC721_airdrop() (gas: 41912536) +DropERC1155BenchmarkTest:test_benchmark_dropERC1155_claim() (gas: 185032) +DropERC1155BenchmarkTest:test_benchmark_dropERC1155_lazyMint() (gas: 123913) +DropERC1155BenchmarkTest:test_benchmark_dropERC1155_setClaimConditions_five_conditions() (gas: 492121) +DropERC20BenchmarkTest:test_benchmark_dropERC20_claim() (gas: 230505) +DropERC20BenchmarkTest:test_benchmark_dropERC20_setClaimConditions_five_conditions() (gas: 500858) +DropERC721BenchmarkTest:test_benchmark_dropERC721_claim_five_tokens() (gas: 210967) +DropERC721BenchmarkTest:test_benchmark_dropERC721_lazyMint() (gas: 124540) +DropERC721BenchmarkTest:test_benchmark_dropERC721_lazyMint_for_delayed_reveal() (gas: 226149) +DropERC721BenchmarkTest:test_benchmark_dropERC721_reveal() (gas: 13732) +DropERC721BenchmarkTest:test_benchmark_dropERC721_setClaimConditions_five_conditions() (gas: 500494) +EditionStakeBenchmarkTest:test_benchmark_editionStake_claimRewards() (gas: 65081) +EditionStakeBenchmarkTest:test_benchmark_editionStake_stake() (gas: 185144) +EditionStakeBenchmarkTest:test_benchmark_editionStake_withdraw() (gas: 46364) +MultiwrapBenchmarkTest:test_benchmark_multiwrap_unwrap() (gas: 88950) +MultiwrapBenchmarkTest:test_benchmark_multiwrap_wrap() (gas: 473462) +NFTStakeBenchmarkTest:test_benchmark_nftStake_claimRewards() (gas: 68287) +NFTStakeBenchmarkTest:test_benchmark_nftStake_stake_five_tokens() (gas: 539145) +NFTStakeBenchmarkTest:test_benchmark_nftStake_withdraw() (gas: 38076) +PackBenchmarkTest:test_benchmark_pack_addPackContents() (gas: 219188) +PackBenchmarkTest:test_benchmark_pack_createPack() (gas: 1412868) +PackBenchmarkTest:test_benchmark_pack_openPack() (gas: 141860) +PackVRFDirectBenchmarkTest:test_benchmark_packvrf_createPack() (gas: 1379604) +PackVRFDirectBenchmarkTest:test_benchmark_packvrf_openPack() (gas: 119953) +PackVRFDirectBenchmarkTest:test_benchmark_packvrf_openPackAndClaimRewards() (gas: 3621) +SignatureDropBenchmarkTest:test_benchmark_signatureDrop_claim_five_tokens() (gas: 140517) +SignatureDropBenchmarkTest:test_benchmark_signatureDrop_lazyMint() (gas: 124311) +SignatureDropBenchmarkTest:test_benchmark_signatureDrop_lazyMint_for_delayed_reveal() (gas: 225891) +SignatureDropBenchmarkTest:test_benchmark_signatureDrop_reveal() (gas: 10647) +SignatureDropBenchmarkTest:test_benchmark_signatureDrop_setClaimConditions() (gas: 73699) +TokenERC1155BenchmarkTest:test_benchmark_tokenERC1155_burn() (gas: 5728) +TokenERC1155BenchmarkTest:test_benchmark_tokenERC1155_mintTo() (gas: 122286) +TokenERC1155BenchmarkTest:test_benchmark_tokenERC1155_mintWithSignature_pay_with_ERC20() (gas: 267175) +TokenERC1155BenchmarkTest:test_benchmark_tokenERC1155_mintWithSignature_pay_with_native_token() (gas: 296172) +TokenERC20BenchmarkTest:test_benchmark_tokenERC20_mintTo() (gas: 118586) +TokenERC20BenchmarkTest:test_benchmark_tokenERC20_mintWithSignature_pay_with_ERC20() (gas: 183032) +TokenERC20BenchmarkTest:test_benchmark_tokenERC20_mintWithSignature_pay_with_native_token() (gas: 207694) +TokenERC721BenchmarkTest:test_benchmark_tokenERC721_burn() (gas: 8954) +TokenERC721BenchmarkTest:test_benchmark_tokenERC721_mintTo() (gas: 151552) +TokenERC721BenchmarkTest:test_benchmark_tokenERC721_mintWithSignature_pay_with_ERC20() (gas: 262344) +TokenERC721BenchmarkTest:test_benchmark_tokenERC721_mintWithSignature_pay_with_native_token() (gas: 286914) +TokenStakeBenchmarkTest:test_benchmark_tokenStake_claimRewards() (gas: 67554) +TokenStakeBenchmarkTest:test_benchmark_tokenStake_stake() (gas: 177180) +TokenStakeBenchmarkTest:test_benchmark_tokenStake_withdraw() (gas: 47396) \ No newline at end of file diff --git a/gasreport.txt b/gasreport.txt index 4e7192f52..ea8d57ffc 100644 --- a/gasreport.txt +++ b/gasreport.txt @@ -1,99 +1,181 @@ -Compiling 638 files with 0.8.12 -Solc 0.8.12 finished in 161.31s -Compiler run successful! +No files changed, compilation skipped + +Running 2 tests for src/test/benchmark/MultiwrapBenchmark.t.sol:MultiwrapBenchmarkTest +[PASS] test_benchmark_multiwrap_unwrap() (gas: 88950) +[PASS] test_benchmark_multiwrap_wrap() (gas: 473462) +Test result: ok. 2 passed; 0 failed; 0 skipped; finished in 236.08ms Running 3 tests for src/test/benchmark/EditionStakeBenchmark.t.sol:EditionStakeBenchmarkTest -[PASS] test_benchmark_editionStake_claimRewards() (gas: 65558) -[PASS] test_benchmark_editionStake_stake() (gas: 185123) -[PASS] test_benchmark_editionStake_withdraw() (gas: 46304) -Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 867.54ms +[PASS] test_benchmark_editionStake_claimRewards() (gas: 65081) +[PASS] test_benchmark_editionStake_stake() (gas: 185144) +[PASS] test_benchmark_editionStake_withdraw() (gas: 46364) +Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 238.67ms -Running 3 tests for src/test/benchmark/PackBenchmark.t.sol:PackBenchmarkTest -[PASS] test_benchmark_pack_addPackContents() (gas: 219427) -[PASS] test_benchmark_pack_createPack() (gas: 1425210) -[PASS] test_benchmark_pack_openPack() (gas: 154414) -Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 871.94ms +Running 3 tests for src/test/benchmark/TokenStakeBenchmark.t.sol:TokenStakeBenchmarkTest +[PASS] test_benchmark_tokenStake_claimRewards() (gas: 67554) +[PASS] test_benchmark_tokenStake_stake() (gas: 177180) +[PASS] test_benchmark_tokenStake_withdraw() (gas: 47396) +Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 241.12ms -Running 5 tests for src/test/benchmark/SignatureDropBenchmark.t.sol:SignatureDropBenchmarkTest -[PASS] test_bechmark_signatureDrop_claim_five_tokens() (gas: 141434) -[PASS] test_bechmark_signatureDrop_setClaimConditions() (gas: 73752) -[PASS] test_benchmark_signatureDrop_lazyMint() (gas: 124617) -[PASS] test_benchmark_signatureDrop_lazyMint_for_delayed_reveal() (gas: 226206) -[PASS] test_benchmark_signatureDrop_reveal() (gas: 9165) -Test result: ok. 5 passed; 0 failed; 0 skipped; finished in 872.08ms +Running 4 tests for src/test/benchmark/TokenERC1155Benchmark.t.sol:TokenERC1155BenchmarkTest +[PASS] test_benchmark_tokenERC1155_burn() (gas: 5728) +[PASS] test_benchmark_tokenERC1155_mintTo() (gas: 122286) +[PASS] test_benchmark_tokenERC1155_mintWithSignature_pay_with_ERC20() (gas: 267175) +[PASS] test_benchmark_tokenERC1155_mintWithSignature_pay_with_native_token() (gas: 296172) +Test result: ok. 4 passed; 0 failed; 0 skipped; finished in 240.92ms -Running 2 tests for src/test/benchmark/MultiwrapBenchmark.t.sol:MultiwrapBenchmarkTest -[PASS] test_benchmark_multiwrap_unwrap() (gas: 92386) -[PASS] test_benchmark_multiwrap_wrap() (gas: 475292) -Test result: ok. 2 passed; 0 failed; 0 skipped; finished in 873.82ms +Running 1 test for src/test/benchmark/AirdropERC1155Benchmark.t.sol:AirdropERC1155BenchmarkTest +[PASS] test_benchmark_airdropERC1155_airdrop() (gas: 38083572) +Test result: ok. 1 passed; 0 failed; 0 skipped; finished in 269.27ms Running 1 test for src/test/benchmark/AirdropERC20Benchmark.t.sol:AirdropERC20BenchmarkTest -[PASS] test_benchmark_airdropERC20_airdrop() (gas: 32173688) -Test result: ok. 1 passed; 0 failed; 0 skipped; finished in 886.88ms - -Running 1 test for src/test/benchmark/AirdropERC1155Benchmark.t.sol:AirdropERC1155BenchmarkTest -[PASS] test_benchmark_airdropERC1155_airdrop() (gas: 38078671) -Test result: ok. 1 passed; 0 failed; 0 skipped; finished in 891.33ms +[PASS] test_benchmark_airdropERC20_airdrop() (gas: 32068413) +Test result: ok. 1 passed; 0 failed; 0 skipped; finished in 270.94ms -Running 4 tests for src/test/benchmark/TokenERC1155Benchmark.t.sol:TokenERC1155BenchmarkTest -[PASS] test_benchmark_tokenERC1155_burn() (gas: 5726) -[PASS] test_benchmark_tokenERC1155_mintTo() (gas: 121006) -[PASS] test_benchmark_tokenERC1155_mintWithSignature_pay_with_ERC20() (gas: 263735) -[PASS] test_benchmark_tokenERC1155_mintWithSignature_pay_with_native_token() (gas: 292233) -Test result: ok. 4 passed; 0 failed; 0 skipped; finished in 894.20ms +Running 1 test for src/test/smart-wallet/utils/AABenchmarkPrepare.sol:AABenchmarkPrepare +[PASS] test_prepareBenchmarkFile() (gas: 2926370) +Test result: ok. 1 passed; 0 failed; 0 skipped; finished in 272.43ms Running 1 test for src/test/benchmark/AirdropERC721Benchmark.t.sol:AirdropERC721BenchmarkTest -[PASS] test_benchmark_airdropERC721_airdrop() (gas: 43892679) -Test result: ok. 1 passed; 0 failed; 0 skipped; finished in 902.28ms +[PASS] test_benchmark_airdropERC721_airdrop() (gas: 41912536) +Test result: ok. 1 passed; 0 failed; 0 skipped; finished in 297.69ms -Running 3 tests for src/test/benchmark/PackVRFDirectBenchmark.t.sol:PackVRFDirectBenchmarkTest -[PASS] test_benchmark_packvrf_createPack() (gas: 1391844) -[PASS] test_benchmark_packvrf_openPack() (gas: 119959) -[PASS] test_benchmark_packvrf_openPackAndClaimRewards() (gas: 3599) -Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 212.61ms - -Running 3 tests for src/test/benchmark/TokenStakeBenchmark.t.sol:TokenStakeBenchmarkTest -[PASS] test_benchmark_tokenStake_claimRewards() (gas: 68043) -[PASS] test_benchmark_tokenStake_stake() (gas: 177989) -[PASS] test_benchmark_tokenStake_withdraw() (gas: 47868) -Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 205.79ms +Running 4 tests for src/test/benchmark/TokenERC721Benchmark.t.sol:TokenERC721BenchmarkTest +[PASS] test_benchmark_tokenERC721_burn() (gas: 8954) +[PASS] test_benchmark_tokenERC721_mintTo() (gas: 151552) +[PASS] test_benchmark_tokenERC721_mintWithSignature_pay_with_ERC20() (gas: 262344) +[PASS] test_benchmark_tokenERC721_mintWithSignature_pay_with_native_token() (gas: 286914) +Test result: ok. 4 passed; 0 failed; 0 skipped; finished in 242.17ms Running 3 tests for src/test/benchmark/NFTStakeBenchmark.t.sol:NFTStakeBenchmarkTest -[PASS] test_benchmark_nftStake_claimRewards() (gas: 68804) -[PASS] test_benchmark_nftStake_stake_five_tokens() (gas: 549399) -[PASS] test_benchmark_nftStake_withdraw() (gas: 39631) -Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 207.68ms +[PASS] test_benchmark_nftStake_claimRewards() (gas: 68287) +[PASS] test_benchmark_nftStake_stake_five_tokens() (gas: 539145) +[PASS] test_benchmark_nftStake_withdraw() (gas: 38076) +Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 279.71ms -Running 4 tests for src/test/benchmark/TokenERC721Benchmark.t.sol:TokenERC721BenchmarkTest -[PASS] test_benchmark_tokenERC721_burn() (gas: 10393) -[PASS] test_benchmark_tokenERC721_mintTo() (gas: 149955) -[PASS] test_benchmark_tokenERC721_mintWithSignature_pay_with_ERC20() (gas: 259360) -[PASS] test_benchmark_tokenERC721_mintWithSignature_pay_with_native_token() (gas: 283702) -Test result: ok. 4 passed; 0 failed; 0 skipped; finished in 228.01ms +Running 5 tests for src/test/benchmark/SignatureDropBenchmark.t.sol:SignatureDropBenchmarkTest +[PASS] test_benchmark_signatureDrop_claim_five_tokens() (gas: 140517) +[PASS] test_benchmark_signatureDrop_lazyMint() (gas: 124311) +[PASS] test_benchmark_signatureDrop_lazyMint_for_delayed_reveal() (gas: 225891) +[PASS] test_benchmark_signatureDrop_reveal() (gas: 10647) +[PASS] test_benchmark_signatureDrop_setClaimConditions() (gas: 73699) +Test result: ok. 5 passed; 0 failed; 0 skipped; finished in 251.39ms Running 3 tests for src/test/benchmark/TokenERC20Benchmark.t.sol:TokenERC20BenchmarkTest -[PASS] test_benchmark_tokenERC20_mintTo() (gas: 118511) -[PASS] test_benchmark_tokenERC20_mintWithSignature_pay_with_ERC20() (gas: 181716) -[PASS] test_benchmark_tokenERC20_mintWithSignature_pay_with_native_token() (gas: 206128) -Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 215.25ms +[PASS] test_benchmark_tokenERC20_mintTo() (gas: 118586) +[PASS] test_benchmark_tokenERC20_mintWithSignature_pay_with_ERC20() (gas: 183032) +[PASS] test_benchmark_tokenERC20_mintWithSignature_pay_with_native_token() (gas: 207694) +Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 287.73ms + +Running 14 tests for src/test/benchmark/AccountBenchmark.t.sol:AccountBenchmarkTest +[PASS] test_state_accountReceivesNativeTokens() (gas: 11037) +[PASS] test_state_addAndWithdrawDeposit() (gas: 83332) +[PASS] test_state_contractMetadata() (gas: 56507) +[PASS] test_state_createAccount_viaEntrypoint() (gas: 432040) +[PASS] test_state_createAccount_viaFactory() (gas: 334122) +[PASS] test_state_executeBatchTransaction() (gas: 39874) +[PASS] test_state_executeBatchTransaction_viaAccountSigner() (gas: 392782) +[PASS] test_state_executeBatchTransaction_viaEntrypoint() (gas: 82915) +[PASS] test_state_executeTransaction() (gas: 35735) +[PASS] test_state_executeTransaction_viaAccountSigner() (gas: 378632) +[PASS] test_state_executeTransaction_viaEntrypoint() (gas: 75593) +[PASS] test_state_receiveERC1155NFT() (gas: 39343) +[PASS] test_state_receiveERC721NFT() (gas: 78624) +[PASS] test_state_transferOutsNativeTokens() (gas: 81713) +Test result: ok. 14 passed; 0 failed; 0 skipped; finished in 364.96ms -Running 2 tests for src/test/benchmark/DropERC20Benchmark.t.sol:DropERC20BenchmarkTest -[PASS] test_bechmark_dropERC20_claim() (gas: 230419) -[PASS] test_bechmark_dropERC20_setClaimConditions_five_conditions() (gas: 501023) -Test result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.21s +Running 3 tests for src/test/benchmark/PackBenchmark.t.sol:PackBenchmarkTest +[PASS] test_benchmark_pack_addPackContents() (gas: 219188) +[PASS] test_benchmark_pack_createPack() (gas: 1412868) +[PASS] test_benchmark_pack_openPack() (gas: 141860) +Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 258.39ms + +Running 3 tests for src/test/benchmark/PackVRFDirectBenchmark.t.sol:PackVRFDirectBenchmarkTest +[PASS] test_benchmark_packvrf_createPack() (gas: 1379604) +[PASS] test_benchmark_packvrf_openPack() (gas: 119953) +[PASS] test_benchmark_packvrf_openPackAndClaimRewards() (gas: 3621) +Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 285.64ms Running 3 tests for src/test/benchmark/DropERC1155Benchmark.t.sol:DropERC1155BenchmarkTest -[PASS] test_bechmark_dropERC1155_claim() (gas: 186646) -[PASS] test_bechmark_dropERC1155_setClaimConditions_five_conditions() (gas: 492309) -[PASS] test_benchmark_dropERC1155_lazyMint() (gas: 123851) -Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 1.22s +[PASS] test_benchmark_dropERC1155_claim() (gas: 185032) +[PASS] test_benchmark_dropERC1155_lazyMint() (gas: 123913) +[PASS] test_benchmark_dropERC1155_setClaimConditions_five_conditions() (gas: 492121) +Test result: ok. 3 passed; 0 failed; 0 skipped; finished in 735.56ms Running 5 tests for src/test/benchmark/DropERC721Benchmark.t.sol:DropERC721BenchmarkTest -[PASS] test_bechmark_dropERC721_claim_five_tokens() (gas: 211945) -[PASS] test_bechmark_dropERC721_setClaimConditions_five_conditions() (gas: 500837) -[PASS] test_benchmark_dropERC721_lazyMint() (gas: 124522) -[PASS] test_benchmark_dropERC721_lazyMint_for_delayed_reveal() (gas: 226102) -[PASS] test_benchmark_dropERC721_reveal() (gas: 8783) -Test result: ok. 5 passed; 0 failed; 0 skipped; finished in 636.48ms - -Ran 16 test suites: 46 tests passed, 0 failed, 0 skipped (46 total tests) +[PASS] test_benchmark_dropERC721_claim_five_tokens() (gas: 210967) +[PASS] test_benchmark_dropERC721_lazyMint() (gas: 124540) +[PASS] test_benchmark_dropERC721_lazyMint_for_delayed_reveal() (gas: 226149) +[PASS] test_benchmark_dropERC721_reveal() (gas: 13732) +[PASS] test_benchmark_dropERC721_setClaimConditions_five_conditions() (gas: 500494) +Test result: ok. 5 passed; 0 failed; 0 skipped; finished in 742.03ms + +Running 2 tests for src/test/benchmark/DropERC20Benchmark.t.sol:DropERC20BenchmarkTest +[PASS] test_benchmark_dropERC20_claim() (gas: 230505) +[PASS] test_benchmark_dropERC20_setClaimConditions_five_conditions() (gas: 500858) +Test result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.12s + + +Ran 18 test suites: 61 tests passed, 0 failed, 0 skipped (61 total tests) +test_state_accountReceivesNativeTokens() (gas: 0 (0.000%)) +test_state_addAndWithdrawDeposit() (gas: 0 (0.000%)) +test_state_contractMetadata() (gas: 0 (0.000%)) +test_state_createAccount_viaEntrypoint() (gas: 0 (0.000%)) +test_state_createAccount_viaFactory() (gas: 0 (0.000%)) +test_state_executeBatchTransaction() (gas: 0 (0.000%)) +test_state_executeBatchTransaction_viaAccountSigner() (gas: 0 (0.000%)) +test_state_executeBatchTransaction_viaEntrypoint() (gas: 0 (0.000%)) +test_state_executeTransaction() (gas: 0 (0.000%)) +test_state_executeTransaction_viaAccountSigner() (gas: 0 (0.000%)) +test_state_executeTransaction_viaEntrypoint() (gas: 0 (0.000%)) +test_state_receiveERC1155NFT() (gas: 0 (0.000%)) +test_state_receiveERC721NFT() (gas: 0 (0.000%)) +test_state_transferOutsNativeTokens() (gas: 0 (0.000%)) +test_benchmark_airdropERC1155_airdrop() (gas: 0 (0.000%)) +test_benchmark_airdropERC20_airdrop() (gas: 0 (0.000%)) +test_benchmark_airdropERC721_airdrop() (gas: 0 (0.000%)) +test_benchmark_dropERC1155_claim() (gas: 0 (0.000%)) +test_benchmark_dropERC1155_lazyMint() (gas: 0 (0.000%)) +test_benchmark_dropERC1155_setClaimConditions_five_conditions() (gas: 0 (0.000%)) +test_benchmark_dropERC20_claim() (gas: 0 (0.000%)) +test_benchmark_dropERC20_setClaimConditions_five_conditions() (gas: 0 (0.000%)) +test_benchmark_dropERC721_claim_five_tokens() (gas: 0 (0.000%)) +test_benchmark_dropERC721_lazyMint() (gas: 0 (0.000%)) +test_benchmark_dropERC721_lazyMint_for_delayed_reveal() (gas: 0 (0.000%)) +test_benchmark_dropERC721_reveal() (gas: 0 (0.000%)) +test_benchmark_dropERC721_setClaimConditions_five_conditions() (gas: 0 (0.000%)) +test_benchmark_editionStake_claimRewards() (gas: 0 (0.000%)) +test_benchmark_editionStake_stake() (gas: 0 (0.000%)) +test_benchmark_editionStake_withdraw() (gas: 0 (0.000%)) +test_benchmark_multiwrap_unwrap() (gas: 0 (0.000%)) +test_benchmark_multiwrap_wrap() (gas: 0 (0.000%)) +test_benchmark_nftStake_claimRewards() (gas: 0 (0.000%)) +test_benchmark_nftStake_stake_five_tokens() (gas: 0 (0.000%)) +test_benchmark_nftStake_withdraw() (gas: 0 (0.000%)) +test_benchmark_pack_addPackContents() (gas: 0 (0.000%)) +test_benchmark_pack_createPack() (gas: 0 (0.000%)) +test_benchmark_pack_openPack() (gas: 0 (0.000%)) +test_benchmark_packvrf_createPack() (gas: 0 (0.000%)) +test_benchmark_packvrf_openPack() (gas: 0 (0.000%)) +test_benchmark_packvrf_openPackAndClaimRewards() (gas: 0 (0.000%)) +test_benchmark_signatureDrop_claim_five_tokens() (gas: 0 (0.000%)) +test_benchmark_signatureDrop_lazyMint() (gas: 0 (0.000%)) +test_benchmark_signatureDrop_lazyMint_for_delayed_reveal() (gas: 0 (0.000%)) +test_benchmark_signatureDrop_reveal() (gas: 0 (0.000%)) +test_benchmark_signatureDrop_setClaimConditions() (gas: 0 (0.000%)) +test_benchmark_tokenERC1155_burn() (gas: 0 (0.000%)) +test_benchmark_tokenERC1155_mintTo() (gas: 0 (0.000%)) +test_benchmark_tokenERC1155_mintWithSignature_pay_with_ERC20() (gas: 0 (0.000%)) +test_benchmark_tokenERC1155_mintWithSignature_pay_with_native_token() (gas: 0 (0.000%)) +test_benchmark_tokenERC20_mintTo() (gas: 0 (0.000%)) +test_benchmark_tokenERC20_mintWithSignature_pay_with_ERC20() (gas: 0 (0.000%)) +test_benchmark_tokenERC20_mintWithSignature_pay_with_native_token() (gas: 0 (0.000%)) +test_benchmark_tokenERC721_burn() (gas: 0 (0.000%)) +test_benchmark_tokenERC721_mintTo() (gas: 0 (0.000%)) +test_benchmark_tokenERC721_mintWithSignature_pay_with_ERC20() (gas: 0 (0.000%)) +test_benchmark_tokenERC721_mintWithSignature_pay_with_native_token() (gas: 0 (0.000%)) +test_benchmark_tokenStake_claimRewards() (gas: 0 (0.000%)) +test_benchmark_tokenStake_stake() (gas: 0 (0.000%)) +test_benchmark_tokenStake_withdraw() (gas: 0 (0.000%)) +test_prepareBenchmarkFile() (gas: 0 (0.000%)) +Overall gas change: 0 (0.000%) diff --git a/package.json b/package.json index 87431a6ab..8d19c33dd 100644 --- a/package.json +++ b/package.json @@ -57,7 +57,7 @@ "build": "yarn clean && yarn compile", "forge:build": "forge build", "forge:test": "forge test", - "gas": "forge test --mc Benchmark --gas-report > gasreport.txt", + "gas": "forge snapshot --mc Benchmark --gas-report --diff .gas-snapshot > gasreport.txt", "forge:snapshot": "forge snapshot --check", "aabenchmark": "forge test --mc AABenchmarkPrepare && forge test --mc ProfileThirdwebAccount -vvv" } diff --git a/src/test/benchmark/DropERC1155Benchmark.t.sol b/src/test/benchmark/DropERC1155Benchmark.t.sol index 59d66441d..093be4089 100644 --- a/src/test/benchmark/DropERC1155Benchmark.t.sol +++ b/src/test/benchmark/DropERC1155Benchmark.t.sol @@ -31,7 +31,7 @@ contract DropERC1155BenchmarkTest is BaseTest { DropERC1155 benchmark //////////////////////////////////////////////////////////////*/ - function test_bechmark_dropERC1155_claim() public { + function test_benchmark_dropERC1155_claim() public { vm.pauseGasMetering(); uint256 _tokenId = 0; string[] memory inputs = new string[](5); @@ -81,7 +81,7 @@ contract DropERC1155BenchmarkTest is BaseTest { drop.claim(receiver, _tokenId, 100, address(erc20), 5, alp, ""); } - function test_bechmark_dropERC1155_setClaimConditions_five_conditions() public { + function test_benchmark_dropERC1155_setClaimConditions_five_conditions() public { vm.pauseGasMetering(); uint256 _tokenId = 0; string[] memory inputs = new string[](5); @@ -145,7 +145,7 @@ contract DropERC1155BenchmarkTest is BaseTest { drop.lazyMint(100, "ipfs://", emptyEncodedBytes); } - // function test_bechmark_dropERC1155_setClaimConditions_one_condition() public { + // function test_benchmark_dropERC1155_setClaimConditions_one_condition() public { // vm.pauseGasMetering(); // uint256 _tokenId = 0; // string[] memory inputs = new string[](5); @@ -188,7 +188,7 @@ contract DropERC1155BenchmarkTest is BaseTest { // drop.setClaimConditions(_tokenId, conditions, false); // } - // function test_bechmark_dropERC1155_setClaimConditions_two_conditions() public { + // function test_benchmark_dropERC1155_setClaimConditions_two_conditions() public { // vm.pauseGasMetering(); // uint256 _tokenId = 0; // string[] memory inputs = new string[](5); @@ -235,7 +235,7 @@ contract DropERC1155BenchmarkTest is BaseTest { // drop.setClaimConditions(_tokenId, conditions, false); // } - // function test_bechmark_dropERC1155_setClaimConditions_three_conditions() public { + // function test_benchmark_dropERC1155_setClaimConditions_three_conditions() public { // vm.pauseGasMetering(); // uint256 _tokenId = 0; // string[] memory inputs = new string[](5); diff --git a/src/test/benchmark/DropERC20Benchmark.t.sol b/src/test/benchmark/DropERC20Benchmark.t.sol index ee2773371..53f432604 100644 --- a/src/test/benchmark/DropERC20Benchmark.t.sol +++ b/src/test/benchmark/DropERC20Benchmark.t.sol @@ -26,7 +26,7 @@ contract DropERC20BenchmarkTest is BaseTest { DropERC20 benchmark //////////////////////////////////////////////////////////////*/ - function test_bechmark_dropERC20_setClaimConditions_five_conditions() public { + function test_benchmark_dropERC20_setClaimConditions_five_conditions() public { vm.pauseGasMetering(); string[] memory inputs = new string[](5); @@ -80,7 +80,7 @@ contract DropERC20BenchmarkTest is BaseTest { drop.setClaimConditions(conditions, false); } - function test_bechmark_dropERC20_claim() public { + function test_benchmark_dropERC20_claim() public { vm.pauseGasMetering(); string[] memory inputs = new string[](5); @@ -127,7 +127,7 @@ contract DropERC20BenchmarkTest is BaseTest { drop.claim(receiver, 100 ether, address(erc20), 1 ether, alp, ""); } - // function test_bechmark_dropERC20_setClaimConditions_one_condition() public { + // function test_benchmark_dropERC20_setClaimConditions_one_condition() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); @@ -167,7 +167,7 @@ contract DropERC20BenchmarkTest is BaseTest { // drop.setClaimConditions(conditions, false); // } - // function test_bechmark_dropERC20_setClaimConditions_two_conditions() public { + // function test_benchmark_dropERC20_setClaimConditions_two_conditions() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); @@ -211,7 +211,7 @@ contract DropERC20BenchmarkTest is BaseTest { // drop.setClaimConditions(conditions, false); // } - // function test_bechmark_dropERC20_setClaimConditions_three_conditions() public { + // function test_benchmark_dropERC20_setClaimConditions_three_conditions() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); diff --git a/src/test/benchmark/DropERC721Benchmark.t.sol b/src/test/benchmark/DropERC721Benchmark.t.sol index b46eafed6..d11507c06 100644 --- a/src/test/benchmark/DropERC721Benchmark.t.sol +++ b/src/test/benchmark/DropERC721Benchmark.t.sol @@ -29,7 +29,7 @@ contract DropERC721BenchmarkTest is BaseTest { DropERC721 benchmark //////////////////////////////////////////////////////////////*/ - function test_bechmark_dropERC721_claim_five_tokens() public { + function test_benchmark_dropERC721_claim_five_tokens() public { vm.pauseGasMetering(); string[] memory inputs = new string[](5); @@ -80,7 +80,7 @@ contract DropERC721BenchmarkTest is BaseTest { drop.claim(receiver, 5, address(erc20), 5, alp, ""); } - function test_bechmark_dropERC721_setClaimConditions_five_conditions() public { + function test_benchmark_dropERC721_setClaimConditions_five_conditions() public { vm.pauseGasMetering(); string[] memory inputs = new string[](5); @@ -171,7 +171,7 @@ contract DropERC721BenchmarkTest is BaseTest { drop.reveal(0, key); } - // function test_bechmark_dropERC721_claim_one_token() public { + // function test_benchmark_dropERC721_claim_one_token() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); @@ -222,7 +222,7 @@ contract DropERC721BenchmarkTest is BaseTest { // drop.claim(receiver, 1, address(erc20), 5, alp, ""); // } - // function test_bechmark_dropERC721_claim_two_tokens() public { + // function test_benchmark_dropERC721_claim_two_tokens() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); @@ -273,7 +273,7 @@ contract DropERC721BenchmarkTest is BaseTest { // drop.claim(receiver, 2, address(erc20), 5, alp, ""); // } - // function test_bechmark_dropERC721_claim_three_tokens() public { + // function test_benchmark_dropERC721_claim_three_tokens() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); @@ -324,7 +324,7 @@ contract DropERC721BenchmarkTest is BaseTest { // drop.claim(receiver, 3, address(erc20), 5, alp, ""); // } - // function test_bechmark_dropERC721_setClaimConditions_one_condition() public { + // function test_benchmark_dropERC721_setClaimConditions_one_condition() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); @@ -364,7 +364,7 @@ contract DropERC721BenchmarkTest is BaseTest { // drop.setClaimConditions(conditions, false); // } - // function test_bechmark_dropERC721_setClaimConditions_two_conditions() public { + // function test_benchmark_dropERC721_setClaimConditions_two_conditions() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); @@ -408,7 +408,7 @@ contract DropERC721BenchmarkTest is BaseTest { // drop.setClaimConditions(conditions, false); // } - // function test_bechmark_dropERC721_setClaimConditions_three_conditions() public { + // function test_benchmark_dropERC721_setClaimConditions_three_conditions() public { // vm.pauseGasMetering(); // string[] memory inputs = new string[](5); diff --git a/src/test/benchmark/SignatureDropBenchmark.t.sol b/src/test/benchmark/SignatureDropBenchmark.t.sol index 5e5a4ef51..1c6607374 100644 --- a/src/test/benchmark/SignatureDropBenchmark.t.sol +++ b/src/test/benchmark/SignatureDropBenchmark.t.sol @@ -55,7 +55,7 @@ contract SignatureDropBenchmarkTest is BaseTest { SignatureDrop benchmark //////////////////////////////////////////////////////////////*/ - function test_bechmark_signatureDrop_claim_five_tokens() public { + function test_benchmark_signatureDrop_claim_five_tokens() public { vm.pauseGasMetering(); vm.warp(1); @@ -80,7 +80,7 @@ contract SignatureDropBenchmarkTest is BaseTest { sigdrop.claim(receiver, 5, address(0), 0, alp, ""); } - function test_bechmark_signatureDrop_setClaimConditions() public { + function test_benchmark_signatureDrop_setClaimConditions() public { vm.pauseGasMetering(); vm.warp(1); bytes32[] memory proofs = new bytes32[](0); @@ -137,7 +137,7 @@ contract SignatureDropBenchmarkTest is BaseTest { sigdrop.reveal(0, key); } - // function test_bechmark_signatureDrop_claim_one_token() public { + // function test_benchmark_signatureDrop_claim_one_token() public { // vm.pauseGasMetering(); // vm.warp(1); @@ -162,7 +162,7 @@ contract SignatureDropBenchmarkTest is BaseTest { // sigdrop.claim(receiver, 1, address(0), 0, alp, ""); // } - // function test_bechmark_signatureDrop_claim_two_tokens() public { + // function test_benchmark_signatureDrop_claim_two_tokens() public { // vm.pauseGasMetering(); // vm.warp(1); @@ -187,7 +187,7 @@ contract SignatureDropBenchmarkTest is BaseTest { // sigdrop.claim(receiver, 2, address(0), 0, alp, ""); // } - // function test_bechmark_signatureDrop_claim_three_tokens() public { + // function test_benchmark_signatureDrop_claim_three_tokens() public { // vm.pauseGasMetering(); // vm.warp(1); diff --git a/src/test/smart-wallet/utils/AABenchmarkArtifacts.sol b/src/test/smart-wallet/utils/AABenchmarkArtifacts.sol index f14427650..6502cae8f 100644 --- a/src/test/smart-wallet/utils/AABenchmarkArtifacts.sol +++ b/src/test/smart-wallet/utils/AABenchmarkArtifacts.sol @@ -9,6 +9,6 @@ interface ThirdwebAccount { } address constant THIRDWEB_ACCOUNT_FACTORY_ADDRESS = 0x2e234DAe75C793f67A35089C9d99245E1C58470b; address constant THIRDWEB_ACCOUNT_IMPL_ADDRESS = 0xffD4505B3452Dc22f8473616d50503bA9E1710Ac; -bytes constant THIRDWEB_ACCOUNT_FACTORY_BYTECODE = hex"608060405234801561001057600080fd5b50600436106101285760003560e01c806308e93d0a1461012d5780630b61e12b1461014b5780630e6254fd1461016057806311464fbe14610173578063248a9ca3146101b25780632f2ff15d146101d357806336568abe146101e657806358451f97146101f957806383a03f8c146102015780638878ed33146102145780639010d07c1461022757806391d148541461023a5780639387a3801461025d578063938e3d7b14610270578063a217fddf14610283578063a32fa5b31461028b578063a65d69d41461029e578063ac9650d8146102c5578063c3c5a547146102e5578063ca15c873146102f8578063d547741f1461030b578063d8fd8f441461031e578063e68a7c3b14610331578063e8a3d48514610344575b600080fd5b610135610359565b60405161014291906118d5565b60405180910390f35b61015e61015936600461193e565b61036a565b005b61013561016e366004611968565b61040b565b61019a7f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac81565b6040516001600160a01b039091168152602001610142565b6101c56101c0366004611983565b610435565b604051908152602001610142565b61015e6101e136600461199c565b610453565b61015e6101f436600461199c565b6104fd565b6101c561055c565b61015e61020f366004611983565b610568565b61019a6102223660046119c8565b6105b6565b61019a610235366004611a4a565b610630565b61024d61024836600461199c565b61073e565b6040519015158152602001610142565b61015e61026b36600461193e565b610772565b61015e61027e366004611a82565b610809565b6101c5600081565b61024d61029936600461199c565b61085a565b61019a7f0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d278981565b6102d86102d3366004611b32565b6108bd565b6040516101429190611bf6565b61024d6102f3366004611968565b6109a6565b6101c5610306366004611983565b6109b2565b61015e61031936600461199c565b610a4f565b61019a61032c3660046119c8565b610a5a565b61013561033f366004611a4a565b610ba5565b61034c610cd6565b6040516101429190611c5a565b60606103656000610d6e565b905090565b336103758183610d7b565b61039a5760405162461bcd60e51b815260040161039190611c6d565b60405180910390fd5b6001600160a01b03831660009081526002602052604081206103bc9083610dbf565b9050801561040557836001600160a01b0316826001600160a01b03167f12146497b3b826918ec47f0cac7272a09ed06b30c16c030e99ec48ff5dd60b4760405160405180910390a35b50505050565b6001600160a01b038116600090815260026020526040902060609061042f90610d6e565b92915050565b600061043f610dd4565b600092835260010160205250604090205490565b61047761045e610dd4565b6000848152600191909101602052604090205433610df8565b61047f610dd4565b6000838152602091825260408082206001600160a01b0385168352909252205460ff16156104ef5760405162461bcd60e51b815260206004820152601d60248201527f43616e206f6e6c79206772616e7420746f206e6f6e20686f6c646572730000006044820152606401610391565b6104f98282610e7d565b5050565b336001600160a01b038216146105525760405162461bcd60e51b815260206004820152601a60248201527921b0b71037b7363c903932b737bab731b2903337b91039b2b63360311b6044820152606401610391565b6104f98282610e91565b60006103656000610ea5565b336105738183610d7b565b61058f5760405162461bcd60e51b815260040161039190611c6d565b61059a600082610dbf565b6104f95760405162461bcd60e51b815260040161039190611ca4565b6000806105f98585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610eaf92505050565b90506106257f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac82610ee2565b9150505b9392505050565b60008061063b610f42565b600085815260209190915260408120549150805b82811015610735576000610661610f42565b60008881526020918252604080822085835260010190925220546001600160a01b0316146106d9578482036106c757610698610f42565b600087815260209182526040808220938252600190930190915220546001600160a01b0316925061042f915050565b6106d2600183611d04565b9150610723565b6106e486600061073e565b801561071057506106f3610f42565b600087815260209182526040808220828052600201909252205481145b1561072357610720600183611d04565b91505b61072e600182611d04565b905061064f565b50505092915050565b6000610748610dd4565b6000938452602090815260408085206001600160a01b039490941685529290525090205460ff1690565b3361077d8183610d7b565b6107995760405162461bcd60e51b815260040161039190611c6d565b6001600160a01b03831660009081526002602052604081206107bb9083610f4c565b9050801561040557836001600160a01b0316826001600160a01b03167f98d1ebbe00ae92a5de96a0f49742a8afa89f42363592bc2e7cfaaed68b45e7a660405160405180910390a350505050565b610811610f61565b61084e5760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b6044820152606401610391565b61085781610f6d565b50565b6000610864610dd4565b600084815260209182526040808220828052909252205460ff166108b45761088a610dd4565b6000848152602091825260408082206001600160a01b0386168352909252205460ff16905061042f565b50600192915050565b6060816001600160401b038111156108d7576108d7611a6c565b60405190808252806020026020018201604052801561090a57816020015b60608152602001906001900390816108f55790505b50905060005b8281101561099f5761097a3085858481811061092e5761092e611d17565b90506020028101906109409190611d2d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061105492505050565b82828151811061098c5761098c611d17565b6020908102919091010152600101610910565b5092915050565b600061042f8183611079565b6000806109bd610f42565b6000848152602091909152604081205491505b81811015610a2a5760006109e2610f42565b60008681526020918252604080822085835260010190925220546001600160a01b031614610a1857610a15600184611d04565b92505b610a23600182611d04565b90506109d0565b50610a3683600061073e565b15610a4957610a46600183611d04565b91505b50919050565b61055261045e610dd4565b6000807f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac90506000610ac28686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610eaf92505050565b90506000610ad08383610ee2565b90506001600160a01b0381163b15610aec579250610629915050565b610af6838361109b565b9050336001600160a01b037f0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d27891614610b4f57610b33600082610dbf565b610b4f5760405162461bcd60e51b815260040161039190611ca4565b610b5b81888888611132565b866001600160a01b0316816001600160a01b03167fac631f3001b55ea1509cf3d7e74898f85392a61a76e8149181ae1259622dabc860405160405180910390a39695505050505050565b60608183108015610bbf5750610bbb6000610ea5565b8211155b610c175760405162461bcd60e51b815260206004820152602360248201527f426173654163636f756e74466163746f72793a20696e76616c696420696e646960448201526263657360e81b6064820152608401610391565b6000610c238484611d7a565b9050610c2f8484611d7a565b6001600160401b03811115610c4657610c46611a6c565b604051908082528060200260200182016040528015610c6f578160200160208202803683370190505b50915060005b81811015610cce57610c92610c8a8683611d04565b60009061119a565b838281518110610ca457610ca4611d17565b6001600160a01b0390921660209283029190910190910152610cc7600182611d04565b9050610c75565b505092915050565b6060610ce06111a6565b8054610ceb90611d8d565b80601f0160208091040260200160405190810160405280929190818152602001828054610d1790611d8d565b8015610d645780601f10610d3957610100808354040283529160200191610d64565b820191906000526020600020905b815481529060010190602001808311610d4757829003601f168201915b5050505050905090565b60606000610629836111ca565b600080610da87f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac84610ee2565b6001600160a01b0385811691161491505092915050565b6000610629836001600160a01b038416611226565b7f0a7b0f5c59907924802379ebe98cdc23e2ee7820f63d30126e10b3752010e50090565b610e00610dd4565b6000838152602091825260408082206001600160a01b0385168352909252205460ff166104f957610e3b816001600160a01b03166014611275565b610e46836020611275565b604051602001610e57929190611dc1565b60408051601f198184030181529082905262461bcd60e51b825261039191600401611c5a565b610e878282611410565b6104f98282611479565b610e9b8282611538565b6104f982826115a1565b600061042f825490565b60008282604051602001610ec4929190611e2e565b60405160208183030381529060405280519060200120905092915050565b6040513060388201526f5af43d82803e903d91602b57fd5bf3ff602482015260148101839052733d602d80600a3d3981f3363d3d373d3d3d363d738152605881018290526037600c82012060788201526055604390910120600090610629565b6000610365611630565b6000610629836001600160a01b038416611692565b6000610365813361073e565b6000610f776111a6565b8054610f8290611d8d565b80601f0160208091040260200160405190810160405280929190818152602001828054610fae90611d8d565b8015610ffb5780601f10610fd057610100808354040283529160200191610ffb565b820191906000526020600020905b815481529060010190602001808311610fde57829003601f168201915b505050505090508161100b6111a6565b906110169082611eab565b507fc9c7c3fe08b88b4df9d4d47ef47d2c43d55c025a0ba88ca442580ed9e7348a168183604051611048929190611f6a565b60405180910390a15050565b6060610629838360405180606001604052806027815260200161203060279139611785565b6001600160a01b03811660009081526001830160205260408120541515610629565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661042f5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610391565b60405163347d5e2560e21b81526001600160a01b0385169063d1f578949061116290869086908690600401611f8f565b600060405180830381600087803b15801561117c57600080fd5b505af1158015611190573d6000803e3d6000fd5b5050505050505050565b60006106298383611863565b7f4bc804ba64359c0e35e5ed5d90ee596ecaa49a3a930ddcb1470ea0dd625da90090565b60608160000180548060200260200160405190810160405280929190818152602001828054801561121a57602002820191906000526020600020905b815481526020019060010190808311611206575b50505050509050919050565b600081815260018301602052604081205461126d5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561042f565b50600061042f565b60606000611284836002611fcf565b61128f906002611d04565b6001600160401b038111156112a6576112a6611a6c565b6040519080825280601f01601f1916602001820160405280156112d0576020820181803683370190505b509050600360fc1b816000815181106112eb576112eb611d17565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061131a5761131a611d17565b60200101906001600160f81b031916908160001a905350600061133e846002611fcf565b611349906001611d04565b90505b60018111156113c1576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061137d5761137d611d17565b1a60f81b82828151811061139357611393611d17565b60200101906001600160f81b031916908160001a90535060049490941c936113ba81611fe6565b905061134c565b5083156106295760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610391565b600161141a610dd4565b6000848152602091825260408082206001600160a01b0386168084529352808220805460ff1916941515949094179093559151339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6000611483610f42565b600084815260209190915260409020549050600161149f610f42565b60008581526020919091526040812080549091906114be908490611d04565b909155508290506114cd610f42565b6000858152602091825260408082208583526001019092522080546001600160a01b0319166001600160a01b03929092169190911790558061150d610f42565b6000948552602090815260408086206001600160a01b03909516865260029094019052919092205550565b6115428282610df8565b61154a610dd4565b6000838152602091825260408082206001600160a01b0385168084529352808220805460ff191690555133929185917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60006115ab610f42565b6000848152602091825260408082206001600160a01b0386168352600201909252205490506115d8610f42565b6000848152602091825260408082208483526001019092522080546001600160a01b0319169055611607610f42565b6000938452602090815260408085206001600160a01b0390941685526002909301905250812055565b60008060ff1961166160017f0c4ba382c0009cf238e4c1ca1a52f51c61e6248a70bdfb34e5ed49d5578a5c0c611d7a565b60405160200161167391815260200190565b60408051601f1981840301815291905280516020909101201692915050565b6000818152600183016020526040812054801561177b5760006116b6600183611d7a565b85549091506000906116ca90600190611d7a565b905081811461172f5760008660000182815481106116ea576116ea611d17565b906000526020600020015490508087600001848154811061170d5761170d611d17565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061174057611740611ffd565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061042f565b600091505061042f565b60606117908461188d565b80156117a257506117a03361188d565b155b6117ee5760405162461bcd60e51b815260206004820152601e60248201527f416464726573733a20696e76616c69642064656c65676174652063616c6c00006044820152606401610391565b600080856001600160a01b0316856040516118099190612013565b600060405180830381855af49150503d8060008114611844576040519150601f19603f3d011682016040523d82523d6000602084013e611849565b606091505b509150915061185982828661189c565b9695505050505050565b600082600001828154811061187a5761187a611d17565b9060005260206000200154905092915050565b6001600160a01b03163b151590565b606083156118ab575081610629565b8251156118bb5782518084602001fd5b8160405162461bcd60e51b81526004016103919190611c5a565b6020808252825182820181905260009190848201906040850190845b818110156119165783516001600160a01b0316835292840192918401916001016118f1565b50909695505050505050565b80356001600160a01b038116811461193957600080fd5b919050565b6000806040838503121561195157600080fd5b61195a83611922565b946020939093013593505050565b60006020828403121561197a57600080fd5b61062982611922565b60006020828403121561199557600080fd5b5035919050565b600080604083850312156119af57600080fd5b823591506119bf60208401611922565b90509250929050565b6000806000604084860312156119dd57600080fd5b6119e684611922565b925060208401356001600160401b0380821115611a0257600080fd5b818601915086601f830112611a1657600080fd5b813581811115611a2557600080fd5b876020828501011115611a3757600080fd5b6020830194508093505050509250925092565b60008060408385031215611a5d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600060208284031215611a9457600080fd5b81356001600160401b0380821115611aab57600080fd5b818401915084601f830112611abf57600080fd5b813581811115611ad157611ad1611a6c565b604051601f8201601f19908116603f01168101908382118183101715611af957611af9611a6c565b81604052828152876020848701011115611b1257600080fd5b826020860160208301376000928101602001929092525095945050505050565b60008060208385031215611b4557600080fd5b82356001600160401b0380821115611b5c57600080fd5b818501915085601f830112611b7057600080fd5b813581811115611b7f57600080fd5b8660208260051b8501011115611b9457600080fd5b60209290920196919550909350505050565b60005b83811015611bc1578181015183820152602001611ba9565b50506000910152565b60008151808452611be2816020860160208601611ba6565b601f01601f19169290920160200192915050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b82811015611c4d57603f19888603018452611c3b858351611bca565b94509285019290850190600101611c1f565b5092979650505050505050565b6020815260006106296020830184611bca565b6020808252601f908201527f4163636f756e74466163746f72793a206e6f7420616e206163636f756e742e00604082015260600190565b6020808252602a908201527f4163636f756e74466163746f72793a206163636f756e7420616c7265616479206040820152691c9959da5cdd195c995960b21b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561042f5761042f611cee565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611d4457600080fd5b8301803591506001600160401b03821115611d5e57600080fd5b602001915036819003821315611d7357600080fd5b9250929050565b8181038181111561042f5761042f611cee565b600181811c90821680611da157607f821691505b602082108103610a4957634e487b7160e01b600052602260045260246000fd5b7402832b936b4b9b9b4b7b7399d1030b1b1b7bab73a1605d1b815260008351611df1816015850160208801611ba6565b7001034b99036b4b9b9b4b733903937b6329607d1b6015918401918201528351611e22816026840160208801611ba6565b01602601949350505050565b6001600160a01b0383168152604060208201819052600090611e5290830184611bca565b949350505050565b601f821115611ea6576000816000526020600020601f850160051c81016020861015611e835750805b601f850160051c820191505b81811015611ea257828155600101611e8f565b5050505b505050565b81516001600160401b03811115611ec457611ec4611a6c565b611ed881611ed28454611d8d565b84611e5a565b602080601f831160018114611f0d5760008415611ef55750858301515b600019600386901b1c1916600185901b178555611ea2565b600085815260208120601f198616915b82811015611f3c57888601518255948401946001909101908401611f1d565b5085821015611f5a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000611f7d6040830185611bca565b82810360208401526106258185611bca565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b808202811582820484141761042f5761042f611cee565b600081611ff557611ff5611cee565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251612025818460208701611ba6565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220c0e058df1f381be48f9dd10d98ac143affab07c9f30aea5be5bbb089ec1ca3a364736f6c63430008170033"; -bytes constant THIRDWEB_ACCOUNT_IMPL_BYTECODE = hex"60806040526004361061014b5760003560e01c806301ffc9a7146101575780630a1028c41461018c578063150b7a02146101ba5780631626ba7e146101fe5780631dd756c51461021e57806324d7806c1461023e5780633a871cdd1461025e57806347e1da2a1461027e5780634a58db19146102a05780634d44560d146102a85780635892e236146102c85780637dff5a79146102e85780638b52d72314610308578063938e3d7b1461032a578063a9082d841461034a578063ac9650d814610389578063b0d691fe146103b6578063b61d27f6146103d8578063b76464d5146103f8578063bc197c8114610418578063c45a015514610444578063d087d28814610478578063d1f578941461048d578063d42f2f35146104ad578063e8a3d485146104c2578063e9523c97146104e4578063f15d424e14610506578063f23a6e611461053357600080fd5b3661015257005b600080fd5b34801561016357600080fd5b50610177610172366004612d1a565b61055f565b60405190151581526020015b60405180910390f35b34801561019857600080fd5b506101ac6101a7366004612e01565b6105a5565b604051908152602001610183565b3480156101c657600080fd5b506101e56101d5366004612e5a565b630a85bd0160e11b949350505050565b6040516001600160e01b03199091168152602001610183565b34801561020a57600080fd5b506101e5610219366004612ec5565b610649565b34801561022a57600080fd5b50610177610239366004612f24565b610789565b34801561024a57600080fd5b50610177610259366004612f69565b610a4d565b34801561026a57600080fd5b506101ac610279366004612f86565b610a7c565b34801561028a57600080fd5b5061029e610299366004613017565b610aa2565b005b61029e610c09565b3480156102b457600080fd5b5061029e6102c33660046130b0565b610c71565b3480156102d457600080fd5b5061029e6102e336600461311d565b610ce4565b3480156102f457600080fd5b50610177610303366004612f69565b6110a1565b34801561031457600080fd5b5061031d61115a565b6040516101839190613230565b34801561033657600080fd5b5061029e610345366004613294565b6113a1565b34801561035657600080fd5b5061036a61036536600461311d565b6113f2565b6040805192151583526001600160a01b03909116602083015201610183565b34801561039557600080fd5b506103a96103a43660046132dc565b611449565b604051610183919061336d565b3480156103c257600080fd5b506103cb611532565b60405161018391906133c4565b3480156103e457600080fd5b5061029e6103f33660046133d8565b61157b565b34801561040457600080fd5b5061029e610413366004612f69565b61160b565b34801561042457600080fd5b506101e56104333660046134c5565b63bc197c8160e01b95945050505050565b34801561045057600080fd5b506103cb7f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b81565b34801561048457600080fd5b506101ac61163d565b34801561049957600080fd5b5061029e6104a8366004613572565b6116bd565b3480156104b957600080fd5b5061031d611875565b3480156104ce57600080fd5b506104d76119e6565b60405161018391906135b9565b3480156104f057600080fd5b506104f9611a7e565b60405161018391906135cc565b34801561051257600080fd5b50610526610521366004612f69565b611a90565b6040516101839190613619565b34801561053f57600080fd5b506101e561054e36600461362c565b63f23a6e6160e01b95945050505050565b60006001600160e01b03198216630271189760e51b148061059057506001600160e01b03198216630a85bd0160e11b145b8061059f575061059f82611b68565b92915050565b6000807f82cac545155fcbf147f2a9013809613677ac7d65498556e6d19ce43bcbf6c28483805190602001206040516020016105eb929190918252602082015260400190565b60405160208183030381529060405280519060200120905061060b611b9d565b60405161190160f01b602082015260228101919091526042810182905260620160405160208183030381529060405280519060200120915050919050565b6000806106768460405160200161066291815260200190565b6040516020818303038152906040526105a5565b905060006106848285611cc4565b905061068f81610a4d565b156106a65750630b135d3f60e11b915061059f9050565b3360006106b1611ce8565b6001600160a01b03841660009081526006919091016020526040902090506106d98183611d0c565b8061070957506106e881611d2e565b6001148015610709575060006106fe8282611d38565b6001600160a01b0316145b6107665760405162461bcd60e51b8152602060048201526024808201527f4163636f756e743a2063616c6c6572206e6f7420617070726f7665642074617260448201526333b2ba1760e11b60648201526084015b60405180910390fd5b61076f836110a1565b1561077f57630b135d3f60e11b94505b5050505092915050565b6000610793611ce8565b6001600160a01b0384166000908152600491909101602052604090205460ff16156107c05750600161059f565b60006107ca611ce8565b6001600160a01b0385166000908152600591909101602090815260408083208151606081018352815481526001909101546001600160801b0380821694830194909452600160801b9004909216908201529150610825611ce8565b6006016000866001600160a01b03166001600160a01b0316815260200190815260200160002090504282602001516001600160801b03161180610875575081604001516001600160801b03164210155b80610886575061088481611d2e565b155b156108965760009250505061059f565b60006108ad6108a86060870187613694565b611d44565b905060006108ba83611d2e565b60011480156108db575060006108d08482611d38565b6001600160a01b0316145b90506324f16c0560e11b6001600160e01b03198316016109525760008061090d61090860608a018a613694565b611d7e565b9150915082610933576109208583611d0c565b610933576000965050505050505061059f565b855181111561094b576000965050505050505061059f565b5050610a40565b635c0f12eb60e11b6001600160e01b0319831601610a335760008061098261097d60608a018a613694565b611de3565b5091509150826109e25760005b82518110156109e0576109c48382815181106109ad576109ad6136da565b602002602001015187611d0c90919063ffffffff16565b6109d857600097505050505050505061059f565b60010161098f565b505b60005b8251811015610a2b57818181518110610a0057610a006136da565b602002602001015187600001511015610a2357600097505050505050505061059f565b6001016109e5565b505050610a40565b600094505050505061059f565b5060019695505050505050565b6000610a57611ce8565b6001600160a01b03909216600090815260049290920160205250604090205460ff1690565b6000610a86611e30565b610a908484611e99565b9050610a9b82611fde565b9392505050565b610aaa611532565b6001600160a01b0316336001600160a01b03161480610acd5750610acd33610a4d565b610ae95760405162461bcd60e51b815260040161075d906136f0565b610af161202b565b8481148015610aff57508483145b610b4b5760405162461bcd60e51b815260206004820152601d60248201527f4163636f756e743a2077726f6e67206172726179206c656e677468732e000000604482015260640161075d565b60005b85811015610c0057610bf7878783818110610b6b57610b6b6136da565b9050602002016020810190610b809190612f69565b868684818110610b9257610b926136da565b90506020020135858585818110610bab57610bab6136da565b9050602002810190610bbd9190613694565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061211192505050565b50600101610b4e565b50505050505050565b610c11611532565b6001600160a01b031663b760faf934306040518363ffffffff1660e01b8152600401610c3d91906133c4565b6000604051808303818588803b158015610c5657600080fd5b505af1158015610c6a573d6000803e3d6000fd5b5050505050565b610c79612182565b610c81611532565b6001600160a01b031663205c287883836040518363ffffffff1660e01b8152600401610cae929190613731565b600060405180830381600087803b158015610cc857600080fd5b505af1158015610cdc573d6000803e3d6000fd5b505050505050565b6000610cf36020850185612f69565b905042610d0660e0860160c08701613761565b6001600160801b031611158015610d355750610d29610100850160e08601613761565b6001600160801b031642105b610d6b5760405162461bcd60e51b8152602060048201526007602482015266085c195c9a5bd960ca1b604482015260640161075d565b600080610d798686866113f2565b9150915081610db35760405162461bcd60e51b815260040161075d906020808252600490820152632173696760e01b604082015260600190565b6001610dbd611ce8565b610100880135600090815260079190910160209081526040808320805460ff1916941515949094179093559091610df99190890190890161378d565b60ff161115610e26576000610e14604088016020890161378d565b60ff166001149050610c0084826121c0565b610e2f83610a4d565b15610e645760405162461bcd60e51b815260206004820152600560248201526430b236b4b760d91b604482015260640161075d565b610e7983610e70611ce8565b60020190612295565b50604051806060016040528087606001358152602001876080016020810190610ea29190613761565b6001600160801b03168152602001610ec060c0890160a08a01613761565b6001600160801b03169052610ed3611ce8565b6001600160a01b03851660009081526005919091016020908152604080832084518155918401519301516001600160801b03908116600160801b02931692909217600190920191909155610f49610f28611ce8565b6001600160a01b0386166000908152600691909101602052604090206122aa565b805190915060005b81811015610fb357610fa0838281518110610f6e57610f6e6136da565b6020026020010151610f7e611ce8565b6001600160a01b038916600090815260069190910160205260409020906122b7565b50610fac6001826137be565b9050610f51565b50610fc160408901896137d1565b9050905060005b818110156110425761102f610fe060408b018b6137d1565b83818110610ff057610ff06136da565b90506020020160208101906110059190612f69565b61100d611ce8565b6001600160a01b03891660009081526006919091016020526040902090612295565b5061103b6001826137be565b9050610fc8565b5061104c886122cc565b846001600160a01b0316836001600160a01b03167ff21d10c26e35863a8df291aca54181ee8c4a3bc8e00246c3f7a5a14b69d826a78a60405161108f91906138ab565b60405180910390a35050505050505050565b6000806110ac611ce8565b6001600160a01b038416600090815260059190910160209081526040918290208251606081018452815481526001909101546001600160801b03808216938301849052600160801b9091041692810192909252909150421080159061111d575080604001516001600160801b031642105b8015610a9b57506000611152611131611ce8565b6001600160a01b038616600090815260069190910160205260409020611d2e565b119392505050565b60606000611171611169611ce8565b6002016122aa565b80519091506000805b82811015611202576111a4848281518110611197576111976136da565b60200260200101516110a1565b156111bb57816111b381613996565b9250506111f0565b60008482815181106111cf576111cf6136da565b60200260200101906001600160a01b031690816001600160a01b0316815250505b6111fb6001826137be565b905061117a565b50806001600160401b0381111561121b5761121b612d44565b60405190808252806020026020018201604052801561125457816020015b611241612cd0565b8152602001906001900390816112395790505b5093506000805b838110156113995760006001600160a01b0316858281518110611280576112806136da565b60200260200101516001600160a01b0316146113875760008582815181106112aa576112aa6136da565b6020026020010151905060006112be611ce8565b6001600160a01b038316600081815260059290920160209081526040928390208351606081018552815481526001909101546001600160801b0380821683850152600160801b9091041681850152835160a081019094529183529092508101611328610f28611ce8565b81526020018260000151815260200182602001516001600160801b0316815260200182604001516001600160801b031681525088858061136790613996565b965081518110611379576113796136da565b602002602001018190525050505b6113926001826137be565b905061125b565b505050505090565b6113a9612361565b6113e65760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b604482015260640161075d565b6113ef81612379565b50565b60008061140861140186612460565b85856125a4565b9050611412611ce8565b6101008601356000908152600791909101602052604090205460ff1615801561143f575061143f81610a4d565b9150935093915050565b6060816001600160401b0381111561146357611463612d44565b60405190808252806020026020018201604052801561149657816020015b60608152602001906001900390816114815790505b50905060005b8281101561152b57611506308585848181106114ba576114ba6136da565b90506020028101906114cc9190613694565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506125fe92505050565b828281518110611518576115186136da565b602090810291909101015260010161149c565b5092915050565b60008061153d612623565b546001600160a01b03169050801561155457919050565b7f0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d278991505090565b611583611532565b6001600160a01b0316336001600160a01b031614806115a657506115a633610a4d565b6115c25760405162461bcd60e51b815260040161075d906136f0565b6115ca61202b565b610c6a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061211192505050565b611613612182565b8061161c612623565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6000611647611532565b604051631aab3f0d60e11b8152306004820152600060248201526001600160a01b0391909116906335567e1a90604401602060405180830381865afa158015611694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116b891906139af565b905090565b60006116c7612647565b5460ff16905060006116d7612647565b54610100900460ff16905080158080156116f4575060018360ff16105b8061171357506117033061266b565b15801561171357508260ff166001145b6117765760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161075d565b6001611780612647565b805460ff191660ff9290921691909117905580156117b95760016117a2612647565b80549115156101000261ff00199092169190911790555b6117f98686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061267a92505050565b611801612623565b600101819055506118138660016121c0565b8015610cdc576000611823612647565b80549115156101000261ff0019909216919091179055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050505050565b60606000611884611169611ce8565b8051909150806001600160401b038111156118a1576118a1612d44565b6040519080825280602002602001820160405280156118da57816020015b6118c7612cd0565b8152602001906001900390816118bf5790505b50925060005b818110156119e05760008382815181106118fc576118fc6136da565b602002602001015190506000611910611ce8565b6001600160a01b038316600081815260059290920160209081526040928390208351606081018552815481526001909101546001600160801b0380821683850152600160801b9091041681850152835160a08101909452918352909250810161197a610f28611ce8565b81526020018260000151815260200182602001516001600160801b0316815260200182604001516001600160801b03168152508684815181106119bf576119bf6136da565b602002602001018190525050506001816119d991906137be565b90506118e0565b50505090565b60606119f06126ad565b80546119fb906139c8565b80601f0160208091040260200160405190810160405280929190818152602001828054611a27906139c8565b8015611a745780601f10611a4957610100808354040283529160200191611a74565b820191906000526020600020905b815481529060010190602001808311611a5757829003601f168201915b5050505050905090565b60606116b8611a8b611ce8565b6122aa565b611a98612cd0565b6000611aa2611ce8565b6001600160a01b038416600081815260059290920160209081526040928390208351606081018552815481526001909101546001600160801b0380821683850152600160801b9091041681850152835160a081019094529183529092508101611b2d611b0c611ce8565b6001600160a01b0387166000908152600691909101602052604090206122aa565b81526020018260000151815260200182602001516001600160801b0316815260200182604001516001600160801b0316815250915050919050565b60006001600160e01b03198216630271189760e51b148061059f57506301ffc9a760e01b6001600160e01b031983161461059f565b6000306001600160a01b037f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac16148015611bf657507f0000000000000000000000000000000000000000000000000000000000007a6946145b15611c2057507fbcdadf6444930a967ffda04923d78c49b3dd65df3ed39abb04a1e3eb1190553790565b50604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6020808301919091527ff0729608244859f656d32ae4cbc6b0367695d68d8e941a28f5e2d33c6d5182dd828401527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b6000806000611cd385856126d1565b91509150611ce081612716565b509392505050565b7f3181e78fc1b109bc611fd2406150bf06e33faa75f71cba12c3e1fd670f2def0090565b6001600160a01b03811660009081526001830160205260408120541515610a9b565b600061059f825490565b6000610a9b838361285b565b60006004821015611d675760405162461bcd60e51b815260040161075d906139fc565b611d75600460008486613a1b565b610a9b91613a45565b6000806044831015611da25760405162461bcd60e51b815260040161075d906139fc565b611db0602460048587613a1b565b810190611dbd9190612f69565b9150611dcd604460248587613a1b565b810190611dda9190613a75565b90509250929050565b606080806064841015611e085760405162461bcd60e51b815260040161075d906139fc565b611e158460048188613a1b565b810190611e229190613b0d565b919790965090945092505050565b611e38611532565b6001600160a01b0316336001600160a01b031614611e975760405162461bcd60e51b815260206004820152601c60248201527b1858d8dbdd5b9d0e881b9bdd08199c9bdb48115b9d1c9e541bda5b9d60221b604482015260640161075d565b565b7b0ca2ba3432b932bab69029b4b3b732b21026b2b9b9b0b3b29d05199960211b6000908152601c829052603c81206000611f17611eda610140870187613694565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508693925050611cc49050565b9050611f238186610789565b611f325760019250505061059f565b6000611f3c611ce8565b6001600160a01b03929092166000908152600590920160209081526040808420815160608082018452825482526001909201546001600160801b0380821683870152600160801b8204908116928501929092528351928301845295825265ffffffffffff8087169483019490945292831691015260d09290921b6001600160d01b03191660a09290921b65ffffffffffff60a01b169190911795945050505050565b80156113ef57604051600090339060001990849084818181858888f193505050503d8060008114610c6a576040519150601f19603f3d011682016040523d82523d6000602084013e610c6a565b60405163c3c5a54760e01b81527f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b906001600160a01b0382169063c3c5a547906120799030906004016133c4565b602060405180830381865afa158015612096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120ba9190613bf2565b6113ef57806001600160a01b03166383a03f8c6120d5612623565b600101546040518263ffffffff1660e01b81526004016120f791815260200190565b600060405180830381600087803b158015610c5657600080fd5b60606000846001600160a01b0316848460405161212e9190613c14565b60006040518083038185875af1925050503d806000811461216b576040519150601f19603f3d011682016040523d82523d6000602084013e612170565b606091505b509250905080611ce057815160208301fd5b61218b33610a4d565b611e975760405162461bcd60e51b815260206004820152600660248201526510b0b236b4b760d11b604482015260640161075d565b6121ca8282612885565b6001600160a01b037f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b163b15612291578015612259577f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b6001600160a01b0316630b61e12b83612238612623565b600101546040518363ffffffff1660e01b8152600401610cae929190613731565b7f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b6001600160a01b0316639387a38083612238612623565b5050565b6000610a9b836001600160a01b038416612934565b60606000610a9b83612983565b6000610a9b836001600160a01b0384166129df565b6001600160a01b037f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b163b156113ef576001600160a01b037f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b16630b61e12b6123386020840184612f69565b612340612623565b600101546040518363ffffffff1660e01b81526004016120f7929190613731565b600061236c33610a4d565b806116b857505030331490565b60006123836126ad565b805461238e906139c8565b80601f01602080910402602001604051908101604052809291908181526020018280546123ba906139c8565b80156124075780601f106123dc57610100808354040283529160200191612407565b820191906000526020600020905b8154815290600101906020018083116123ea57829003601f168201915b50505050509050816124176126ad565b906124229082613c7d565b507fc9c7c3fe08b88b4df9d4d47ef47d2c43d55c025a0ba88ca442580ed9e7348a168183604051612454929190613d3c565b60405180910390a15050565b60607f3fd4a1a1a267c84185e3b7eecd57c68783c0581d538b9d6e5f23e4670497c1e96124906020840184612f69565b6124a0604085016020860161378d565b6124ad60408601866137d1565b6040516020016124be929190613d6a565b60408051601f19818403018152919052805160209091012060608601356124eb60a0880160808901613761565b6124fb60c0890160a08a01613761565b61250b60e08a0160c08b01613761565b61251c6101008b0160e08c01613761565b60408051602081019a909a526001600160a01b039098169789019790975260ff9095166060880152608087019390935260a08601919091526001600160801b0390811660c086015290811660e0850152908116610100848101919091529116610120830152830135610140820152610160016040516020818303038152906040529050919050565b60006125f683838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050875160208901206125f092509050612ad2565b90611cc4565b949350505050565b6060610a9b8383604051806060016040528060278152602001613e1060279139612aff565b7f036f52c1827dab135f7fd44ca0bddde297e2f659c710e0ec53e975f22b54830090565b7f322cf19c484104d3b1a9c2982ebae869ede3fa5f6c4703ca41b9a48c76ee030090565b6001600160a01b03163b151590565b6000828260405160200161268f929190613dac565b60405160208183030381529060405280519060200120905092915050565b7f4bc804ba64359c0e35e5ed5d90ee596ecaa49a3a930ddcb1470ea0dd625da90090565b60008082516041036127075760208301516040840151606085015160001a6126fb87828585612bdd565b9450945050505061270f565b506000905060025b9250929050565b600081600481111561272a5761272a613dd0565b036127325750565b600181600481111561274657612746613dd0565b0361278e5760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b604482015260640161075d565b60028160048111156127a2576127a2613dd0565b036127ef5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161075d565b600381600481111561280357612803613dd0565b036113ef5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161075d565b6000826000018281548110612872576128726136da565b9060005260206000200154905092915050565b8061288e611ce8565b6001600160a01b038416600090815260049190910160205260409020805460ff191691151591909117905580156128d7576128d1826128cb611ce8565b90612295565b506128eb565b6128e9826128e3611ce8565b906122b7565b505b816001600160a01b03167f235bc17e7930760029e9f4d860a2a8089976de5b381cf8380fc11c1d88a1113382604051612928911515815260200190565b60405180910390a25050565b600081815260018301602052604081205461297b5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561059f565b50600061059f565b6060816000018054806020026020016040519081016040528092919081815260200182805480156129d357602002820191906000526020600020905b8154815260200190600101908083116129bf575b50505050509050919050565b60008181526001830160205260408120548015612ac8576000612a03600183613de6565b8554909150600090612a1790600190613de6565b9050818114612a7c576000866000018281548110612a3757612a376136da565b9060005260206000200154905080876000018481548110612a5a57612a5a6136da565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612a8d57612a8d613df9565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061059f565b600091505061059f565b600061059f612adf611b9d565b8360405161190160f01b8152600281019290925260228201526042902090565b6060612b0a8461266b565b8015612b1c5750612b1a3361266b565b155b612b685760405162461bcd60e51b815260206004820152601e60248201527f416464726573733a20696e76616c69642064656c65676174652063616c6c0000604482015260640161075d565b600080856001600160a01b031685604051612b839190613c14565b600060405180830381855af49150503d8060008114612bbe576040519150601f19603f3d011682016040523d82523d6000602084013e612bc3565b606091505b5091509150612bd3828286612c97565b9695505050505050565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b03831115612c0a5750600090506003612c8e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612c5e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612c8757600060019250925050612c8e565b9150600090505b94509492505050565b60608315612ca6575081610a9b565b825115612cb65782518084602001fd5b8160405162461bcd60e51b815260040161075d91906135b9565b6040518060a0016040528060006001600160a01b03168152602001606081526020016000815260200160006001600160801b0316815260200160006001600160801b031681525090565b600060208284031215612d2c57600080fd5b81356001600160e01b031981168114610a9b57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612d8257612d82612d44565b604052919050565b60006001600160401b03831115612da357612da3612d44565b612db6601f8401601f1916602001612d5a565b9050828152838383011115612dca57600080fd5b828260208301376000602084830101529392505050565b600082601f830112612df257600080fd5b610a9b83833560208501612d8a565b600060208284031215612e1357600080fd5b81356001600160401b03811115612e2957600080fd5b6125f684828501612de1565b6001600160a01b03811681146113ef57600080fd5b8035612e5581612e35565b919050565b60008060008060808587031215612e7057600080fd5b8435612e7b81612e35565b93506020850135612e8b81612e35565b92506040850135915060608501356001600160401b03811115612ead57600080fd5b612eb987828801612de1565b91505092959194509250565b60008060408385031215612ed857600080fd5b8235915060208301356001600160401b03811115612ef557600080fd5b612f0185828601612de1565b9150509250929050565b60006101608284031215612f1e57600080fd5b50919050565b60008060408385031215612f3757600080fd5b8235612f4281612e35565b915060208301356001600160401b03811115612f5d57600080fd5b612f0185828601612f0b565b600060208284031215612f7b57600080fd5b8135610a9b81612e35565b600080600060608486031215612f9b57600080fd5b83356001600160401b03811115612fb157600080fd5b612fbd86828701612f0b565b9660208601359650604090950135949350505050565b60008083601f840112612fe557600080fd5b5081356001600160401b03811115612ffc57600080fd5b6020830191508360208260051b850101111561270f57600080fd5b6000806000806000806060878903121561303057600080fd5b86356001600160401b038082111561304757600080fd5b6130538a838b01612fd3565b9098509650602089013591508082111561306c57600080fd5b6130788a838b01612fd3565b9096509450604089013591508082111561309157600080fd5b5061309e89828a01612fd3565b979a9699509497509295939492505050565b600080604083850312156130c357600080fd5b82356130ce81612e35565b946020939093013593505050565b60008083601f8401126130ee57600080fd5b5081356001600160401b0381111561310557600080fd5b60208301915083602082850101111561270f57600080fd5b60008060006040848603121561313257600080fd5b83356001600160401b038082111561314957600080fd5b90850190610120828803121561315e57600080fd5b9093506020850135908082111561317457600080fd5b50613181868287016130dc565b9497909650939450505050565b6001600160801b03169052565b80516001600160a01b03908116835260208083015160a082860181905281519086018190526000939183019290849060c08801905b808310156131f2578551851682529483019460019290920191908301906131d0565b506040870151604089015260608701519450613211606089018661318e565b60808701519450613225608089018661318e565b979650505050505050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b8281101561328757603f1988860301845261327585835161319b565b94509285019290850190600101613259565b5092979650505050505050565b6000602082840312156132a657600080fd5b81356001600160401b038111156132bc57600080fd5b8201601f810184136132cd57600080fd5b6125f684823560208401612d8a565b600080602083850312156132ef57600080fd5b82356001600160401b0381111561330557600080fd5b61331185828601612fd3565b90969095509350505050565b60005b83811015613338578181015183820152602001613320565b50506000910152565b6000815180845261335981602086016020860161331d565b601f01601f19169290920160200192915050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b8281101561328757603f198886030184526133b2858351613341565b94509285019290850190600101613396565b6001600160a01b0391909116815260200190565b600080600080606085870312156133ee57600080fd5b84356133f981612e35565b93506020850135925060408501356001600160401b0381111561341b57600080fd5b613427878288016130dc565b95989497509550505050565b60006001600160401b0382111561344c5761344c612d44565b5060051b60200190565b600082601f83011261346757600080fd5b8135602061347c61347783613433565b612d5a565b8083825260208201915060208460051b87010193508684111561349e57600080fd5b602086015b848110156134ba57803583529183019183016134a3565b509695505050505050565b600080600080600060a086880312156134dd57600080fd5b85356134e881612e35565b945060208601356134f881612e35565b935060408601356001600160401b038082111561351457600080fd5b61352089838a01613456565b9450606088013591508082111561353657600080fd5b61354289838a01613456565b9350608088013591508082111561355857600080fd5b5061356588828901612de1565b9150509295509295909350565b60008060006040848603121561358757600080fd5b833561359281612e35565b925060208401356001600160401b038111156135ad57600080fd5b613181868287016130dc565b602081526000610a9b6020830184613341565b6020808252825182820181905260009190848201906040850190845b8181101561360d5783516001600160a01b0316835292840192918401916001016135e8565b50909695505050505050565b602081526000610a9b602083018461319b565b600080600080600060a0868803121561364457600080fd5b853561364f81612e35565b9450602086013561365f81612e35565b9350604086013592506060860135915060808601356001600160401b0381111561368857600080fd5b61356588828901612de1565b6000808335601e198436030181126136ab57600080fd5b8301803591506001600160401b038211156136c557600080fd5b60200191503681900382131561270f57600080fd5b634e487b7160e01b600052603260045260246000fd5b60208082526021908201527f4163636f756e743a206e6f742061646d696e206f7220456e747279506f696e746040820152601760f91b606082015260800190565b6001600160a01b03929092168252602082015260400190565b80356001600160801b0381168114612e5557600080fd5b60006020828403121561377357600080fd5b610a9b8261374a565b803560ff81168114612e5557600080fd5b60006020828403121561379f57600080fd5b610a9b8261377c565b634e487b7160e01b600052601160045260246000fd5b8082018082111561059f5761059f6137a8565b6000808335601e198436030181126137e857600080fd5b8301803591506001600160401b0382111561380257600080fd5b6020019150600581901b360382131561270f57600080fd5b6000808335601e1984360301811261383157600080fd5b83016020810192503590506001600160401b0381111561385057600080fd5b8060051b360382131561270f57600080fd5b8183526000602080850194508260005b858110156138a057813561388581612e35565b6001600160a01b031687529582019590820190600101613872565b509495945050505050565b602081526138cc602082016138bf84612e4a565b6001600160a01b03169052565b60006138da6020840161377c565b60ff81166040840152506138f1604084018461381a565b61012080606086015261390961014086018385613862565b9250606086013560808601526139216080870161374a565b915061393060a086018361318e565b61393c60a0870161374a565b915061394b60c086018361318e565b61395760c0870161374a565b915061396660e086018361318e565b61397260e0870161374a565b91506101006139838187018461318e565b9590950135939094019290925250919050565b6000600182016139a8576139a86137a8565b5060010190565b6000602082840312156139c157600080fd5b5051919050565b600181811c908216806139dc57607f821691505b602082108103612f1e57634e487b7160e01b600052602260045260246000fd5b602080825260059082015264214461746160d81b604082015260600190565b60008085851115613a2b57600080fd5b83861115613a3857600080fd5b5050820193919092039150565b6001600160e01b03198135818116916004851015613a6d5780818660040360031b1b83161692505b505092915050565b600060208284031215613a8757600080fd5b5035919050565b600082601f830112613a9f57600080fd5b81356020613aaf61347783613433565b82815260059290921b84018101918181019086841115613ace57600080fd5b8286015b848110156134ba5780356001600160401b03811115613af15760008081fd5b613aff8986838b0101612de1565b845250918301918301613ad2565b600080600060608486031215613b2257600080fd5b83356001600160401b0380821115613b3957600080fd5b818601915086601f830112613b4d57600080fd5b81356020613b5d61347783613433565b82815260059290921b8401810191818101908a841115613b7c57600080fd5b948201945b83861015613ba3578535613b9481612e35565b82529482019490820190613b81565b97505087013592505080821115613bb957600080fd5b613bc587838801613456565b93506040860135915080821115613bdb57600080fd5b50613be886828701613a8e565b9150509250925092565b600060208284031215613c0457600080fd5b81518015158114610a9b57600080fd5b60008251613c2681846020870161331d565b9190910192915050565b601f821115613c78576000816000526020600020601f850160051c81016020861015613c595750805b601f850160051c820191505b81811015610cdc57828155600101613c65565b505050565b81516001600160401b03811115613c9657613c96612d44565b613caa81613ca484546139c8565b84613c30565b602080601f831160018114613cdf5760008415613cc75750858301515b600019600386901b1c1916600185901b178555610cdc565b600085815260208120601f198616915b82811015613d0e57888601518255948401946001909101908401613cef565b5085821015613d2c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000613d4f6040830185613341565b8281036020840152613d618185613341565b95945050505050565b60008184825b85811015613da1578135613d8381612e35565b6001600160a01b031683526020928301929190910190600101613d70565b509095945050505050565b6001600160a01b03831681526040602082018190526000906125f690830184613341565b634e487b7160e01b600052602160045260246000fd5b8181038181111561059f5761059f6137a8565b634e487b7160e01b600052603160045260246000fdfe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220288856fb3bf01440d93687852b8b2acc762d686c2f4c0e163815356d4bf1ce1864736f6c63430008170033"; +bytes constant THIRDWEB_ACCOUNT_FACTORY_BYTECODE = hex"608060405234801561001057600080fd5b50600436106101285760003560e01c806308e93d0a1461012d5780630b61e12b1461014b5780630e6254fd1461016057806311464fbe14610173578063248a9ca3146101b25780632f2ff15d146101d357806336568abe146101e657806358451f97146101f957806383a03f8c146102015780638878ed33146102145780639010d07c1461022757806391d148541461023a5780639387a3801461025d578063938e3d7b14610270578063a217fddf14610283578063a32fa5b31461028b578063a65d69d41461029e578063ac9650d8146102c5578063c3c5a547146102e5578063ca15c873146102f8578063d547741f1461030b578063d8fd8f441461031e578063e68a7c3b14610331578063e8a3d48514610344575b600080fd5b610135610359565b60405161014291906118d5565b60405180910390f35b61015e61015936600461193e565b61036a565b005b61013561016e366004611968565b61040b565b61019a7f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac81565b6040516001600160a01b039091168152602001610142565b6101c56101c0366004611983565b610435565b604051908152602001610142565b61015e6101e136600461199c565b610453565b61015e6101f436600461199c565b6104fd565b6101c561055c565b61015e61020f366004611983565b610568565b61019a6102223660046119c8565b6105b6565b61019a610235366004611a4a565b610630565b61024d61024836600461199c565b61073e565b6040519015158152602001610142565b61015e61026b36600461193e565b610772565b61015e61027e366004611a82565b610809565b6101c5600081565b61024d61029936600461199c565b61085a565b61019a7f0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d278981565b6102d86102d3366004611b32565b6108bd565b6040516101429190611bf6565b61024d6102f3366004611968565b6109a6565b6101c5610306366004611983565b6109b2565b61015e61031936600461199c565b610a4f565b61019a61032c3660046119c8565b610a5a565b61013561033f366004611a4a565b610ba5565b61034c610cd6565b6040516101429190611c5a565b60606103656000610d6e565b905090565b336103758183610d7b565b61039a5760405162461bcd60e51b815260040161039190611c6d565b60405180910390fd5b6001600160a01b03831660009081526002602052604081206103bc9083610dbf565b9050801561040557836001600160a01b0316826001600160a01b03167f12146497b3b826918ec47f0cac7272a09ed06b30c16c030e99ec48ff5dd60b4760405160405180910390a35b50505050565b6001600160a01b038116600090815260026020526040902060609061042f90610d6e565b92915050565b600061043f610dd4565b600092835260010160205250604090205490565b61047761045e610dd4565b6000848152600191909101602052604090205433610df8565b61047f610dd4565b6000838152602091825260408082206001600160a01b0385168352909252205460ff16156104ef5760405162461bcd60e51b815260206004820152601d60248201527f43616e206f6e6c79206772616e7420746f206e6f6e20686f6c646572730000006044820152606401610391565b6104f98282610e7d565b5050565b336001600160a01b038216146105525760405162461bcd60e51b815260206004820152601a60248201527921b0b71037b7363c903932b737bab731b2903337b91039b2b63360311b6044820152606401610391565b6104f98282610e91565b60006103656000610ea5565b336105738183610d7b565b61058f5760405162461bcd60e51b815260040161039190611c6d565b61059a600082610dbf565b6104f95760405162461bcd60e51b815260040161039190611ca4565b6000806105f98585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610eaf92505050565b90506106257f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac82610ee2565b9150505b9392505050565b60008061063b610f42565b600085815260209190915260408120549150805b82811015610735576000610661610f42565b60008881526020918252604080822085835260010190925220546001600160a01b0316146106d9578482036106c757610698610f42565b600087815260209182526040808220938252600190930190915220546001600160a01b0316925061042f915050565b6106d2600183611d04565b9150610723565b6106e486600061073e565b801561071057506106f3610f42565b600087815260209182526040808220828052600201909252205481145b1561072357610720600183611d04565b91505b61072e600182611d04565b905061064f565b50505092915050565b6000610748610dd4565b6000938452602090815260408085206001600160a01b039490941685529290525090205460ff1690565b3361077d8183610d7b565b6107995760405162461bcd60e51b815260040161039190611c6d565b6001600160a01b03831660009081526002602052604081206107bb9083610f4c565b9050801561040557836001600160a01b0316826001600160a01b03167f98d1ebbe00ae92a5de96a0f49742a8afa89f42363592bc2e7cfaaed68b45e7a660405160405180910390a350505050565b610811610f61565b61084e5760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b6044820152606401610391565b61085781610f6d565b50565b6000610864610dd4565b600084815260209182526040808220828052909252205460ff166108b45761088a610dd4565b6000848152602091825260408082206001600160a01b0386168352909252205460ff16905061042f565b50600192915050565b6060816001600160401b038111156108d7576108d7611a6c565b60405190808252806020026020018201604052801561090a57816020015b60608152602001906001900390816108f55790505b50905060005b8281101561099f5761097a3085858481811061092e5761092e611d17565b90506020028101906109409190611d2d565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061105492505050565b82828151811061098c5761098c611d17565b6020908102919091010152600101610910565b5092915050565b600061042f8183611079565b6000806109bd610f42565b6000848152602091909152604081205491505b81811015610a2a5760006109e2610f42565b60008681526020918252604080822085835260010190925220546001600160a01b031614610a1857610a15600184611d04565b92505b610a23600182611d04565b90506109d0565b50610a3683600061073e565b15610a4957610a46600183611d04565b91505b50919050565b61055261045e610dd4565b6000807f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac90506000610ac28686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610eaf92505050565b90506000610ad08383610ee2565b90506001600160a01b0381163b15610aec579250610629915050565b610af6838361109b565b9050336001600160a01b037f0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d27891614610b4f57610b33600082610dbf565b610b4f5760405162461bcd60e51b815260040161039190611ca4565b610b5b81888888611132565b866001600160a01b0316816001600160a01b03167fac631f3001b55ea1509cf3d7e74898f85392a61a76e8149181ae1259622dabc860405160405180910390a39695505050505050565b60608183108015610bbf5750610bbb6000610ea5565b8211155b610c175760405162461bcd60e51b815260206004820152602360248201527f426173654163636f756e74466163746f72793a20696e76616c696420696e646960448201526263657360e81b6064820152608401610391565b6000610c238484611d7a565b9050610c2f8484611d7a565b6001600160401b03811115610c4657610c46611a6c565b604051908082528060200260200182016040528015610c6f578160200160208202803683370190505b50915060005b81811015610cce57610c92610c8a8683611d04565b60009061119a565b838281518110610ca457610ca4611d17565b6001600160a01b0390921660209283029190910190910152610cc7600182611d04565b9050610c75565b505092915050565b6060610ce06111a6565b8054610ceb90611d8d565b80601f0160208091040260200160405190810160405280929190818152602001828054610d1790611d8d565b8015610d645780601f10610d3957610100808354040283529160200191610d64565b820191906000526020600020905b815481529060010190602001808311610d4757829003601f168201915b5050505050905090565b60606000610629836111ca565b600080610da87f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac84610ee2565b6001600160a01b0385811691161491505092915050565b6000610629836001600160a01b038416611226565b7f0a7b0f5c59907924802379ebe98cdc23e2ee7820f63d30126e10b3752010e50090565b610e00610dd4565b6000838152602091825260408082206001600160a01b0385168352909252205460ff166104f957610e3b816001600160a01b03166014611275565b610e46836020611275565b604051602001610e57929190611dc1565b60408051601f198184030181529082905262461bcd60e51b825261039191600401611c5a565b610e878282611410565b6104f98282611479565b610e9b8282611538565b6104f982826115a1565b600061042f825490565b60008282604051602001610ec4929190611e2e565b60405160208183030381529060405280519060200120905092915050565b6040513060388201526f5af43d82803e903d91602b57fd5bf3ff602482015260148101839052733d602d80600a3d3981f3363d3d373d3d3d363d738152605881018290526037600c82012060788201526055604390910120600090610629565b6000610365611630565b6000610629836001600160a01b038416611692565b6000610365813361073e565b6000610f776111a6565b8054610f8290611d8d565b80601f0160208091040260200160405190810160405280929190818152602001828054610fae90611d8d565b8015610ffb5780601f10610fd057610100808354040283529160200191610ffb565b820191906000526020600020905b815481529060010190602001808311610fde57829003601f168201915b505050505090508161100b6111a6565b906110169082611eab565b507fc9c7c3fe08b88b4df9d4d47ef47d2c43d55c025a0ba88ca442580ed9e7348a168183604051611048929190611f6a565b60405180910390a15050565b6060610629838360405180606001604052806027815260200161203060279139611785565b6001600160a01b03811660009081526001830160205260408120541515610629565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b03811661042f5760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610391565b60405163347d5e2560e21b81526001600160a01b0385169063d1f578949061116290869086908690600401611f8f565b600060405180830381600087803b15801561117c57600080fd5b505af1158015611190573d6000803e3d6000fd5b5050505050505050565b60006106298383611863565b7f4bc804ba64359c0e35e5ed5d90ee596ecaa49a3a930ddcb1470ea0dd625da90090565b60608160000180548060200260200160405190810160405280929190818152602001828054801561121a57602002820191906000526020600020905b815481526020019060010190808311611206575b50505050509050919050565b600081815260018301602052604081205461126d5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561042f565b50600061042f565b60606000611284836002611fcf565b61128f906002611d04565b6001600160401b038111156112a6576112a6611a6c565b6040519080825280601f01601f1916602001820160405280156112d0576020820181803683370190505b509050600360fc1b816000815181106112eb576112eb611d17565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061131a5761131a611d17565b60200101906001600160f81b031916908160001a905350600061133e846002611fcf565b611349906001611d04565b90505b60018111156113c1576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061137d5761137d611d17565b1a60f81b82828151811061139357611393611d17565b60200101906001600160f81b031916908160001a90535060049490941c936113ba81611fe6565b905061134c565b5083156106295760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610391565b600161141a610dd4565b6000848152602091825260408082206001600160a01b0386168084529352808220805460ff1916941515949094179093559151339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6000611483610f42565b600084815260209190915260409020549050600161149f610f42565b60008581526020919091526040812080549091906114be908490611d04565b909155508290506114cd610f42565b6000858152602091825260408082208583526001019092522080546001600160a01b0319166001600160a01b03929092169190911790558061150d610f42565b6000948552602090815260408086206001600160a01b03909516865260029094019052919092205550565b6115428282610df8565b61154a610dd4565b6000838152602091825260408082206001600160a01b0385168084529352808220805460ff191690555133929185917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60006115ab610f42565b6000848152602091825260408082206001600160a01b0386168352600201909252205490506115d8610f42565b6000848152602091825260408082208483526001019092522080546001600160a01b0319169055611607610f42565b6000938452602090815260408085206001600160a01b0390941685526002909301905250812055565b60008060ff1961166160017f0c4ba382c0009cf238e4c1ca1a52f51c61e6248a70bdfb34e5ed49d5578a5c0c611d7a565b60405160200161167391815260200190565b60408051601f1981840301815291905280516020909101201692915050565b6000818152600183016020526040812054801561177b5760006116b6600183611d7a565b85549091506000906116ca90600190611d7a565b905081811461172f5760008660000182815481106116ea576116ea611d17565b906000526020600020015490508087600001848154811061170d5761170d611d17565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061174057611740611ffd565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061042f565b600091505061042f565b60606117908461188d565b80156117a257506117a03361188d565b155b6117ee5760405162461bcd60e51b815260206004820152601e60248201527f416464726573733a20696e76616c69642064656c65676174652063616c6c00006044820152606401610391565b600080856001600160a01b0316856040516118099190612013565b600060405180830381855af49150503d8060008114611844576040519150601f19603f3d011682016040523d82523d6000602084013e611849565b606091505b509150915061185982828661189c565b9695505050505050565b600082600001828154811061187a5761187a611d17565b9060005260206000200154905092915050565b6001600160a01b03163b151590565b606083156118ab575081610629565b8251156118bb5782518084602001fd5b8160405162461bcd60e51b81526004016103919190611c5a565b6020808252825182820181905260009190848201906040850190845b818110156119165783516001600160a01b0316835292840192918401916001016118f1565b50909695505050505050565b80356001600160a01b038116811461193957600080fd5b919050565b6000806040838503121561195157600080fd5b61195a83611922565b946020939093013593505050565b60006020828403121561197a57600080fd5b61062982611922565b60006020828403121561199557600080fd5b5035919050565b600080604083850312156119af57600080fd5b823591506119bf60208401611922565b90509250929050565b6000806000604084860312156119dd57600080fd5b6119e684611922565b925060208401356001600160401b0380821115611a0257600080fd5b818601915086601f830112611a1657600080fd5b813581811115611a2557600080fd5b876020828501011115611a3757600080fd5b6020830194508093505050509250925092565b60008060408385031215611a5d57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600060208284031215611a9457600080fd5b81356001600160401b0380821115611aab57600080fd5b818401915084601f830112611abf57600080fd5b813581811115611ad157611ad1611a6c565b604051601f8201601f19908116603f01168101908382118183101715611af957611af9611a6c565b81604052828152876020848701011115611b1257600080fd5b826020860160208301376000928101602001929092525095945050505050565b60008060208385031215611b4557600080fd5b82356001600160401b0380821115611b5c57600080fd5b818501915085601f830112611b7057600080fd5b813581811115611b7f57600080fd5b8660208260051b8501011115611b9457600080fd5b60209290920196919550909350505050565b60005b83811015611bc1578181015183820152602001611ba9565b50506000910152565b60008151808452611be2816020860160208601611ba6565b601f01601f19169290920160200192915050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b82811015611c4d57603f19888603018452611c3b858351611bca565b94509285019290850190600101611c1f565b5092979650505050505050565b6020815260006106296020830184611bca565b6020808252601f908201527f4163636f756e74466163746f72793a206e6f7420616e206163636f756e742e00604082015260600190565b6020808252602a908201527f4163636f756e74466163746f72793a206163636f756e7420616c7265616479206040820152691c9959da5cdd195c995960b21b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561042f5761042f611cee565b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112611d4457600080fd5b8301803591506001600160401b03821115611d5e57600080fd5b602001915036819003821315611d7357600080fd5b9250929050565b8181038181111561042f5761042f611cee565b600181811c90821680611da157607f821691505b602082108103610a4957634e487b7160e01b600052602260045260246000fd5b7402832b936b4b9b9b4b7b7399d1030b1b1b7bab73a1605d1b815260008351611df1816015850160208801611ba6565b7001034b99036b4b9b9b4b733903937b6329607d1b6015918401918201528351611e22816026840160208801611ba6565b01602601949350505050565b6001600160a01b0383168152604060208201819052600090611e5290830184611bca565b949350505050565b601f821115611ea6576000816000526020600020601f850160051c81016020861015611e835750805b601f850160051c820191505b81811015611ea257828155600101611e8f565b5050505b505050565b81516001600160401b03811115611ec457611ec4611a6c565b611ed881611ed28454611d8d565b84611e5a565b602080601f831160018114611f0d5760008415611ef55750858301515b600019600386901b1c1916600185901b178555611ea2565b600085815260208120601f198616915b82811015611f3c57888601518255948401946001909101908401611f1d565b5085821015611f5a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000611f7d6040830185611bca565b82810360208401526106258185611bca565b6001600160a01b03841681526040602082018190528101829052818360608301376000818301606090810191909152601f909201601f1916010192915050565b808202811582820484141761042f5761042f611cee565b600081611ff557611ff5611cee565b506000190190565b634e487b7160e01b600052603160045260246000fd5b60008251612025818460208701611ba6565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220f3f85d264596b5ea921ce5fd2e297c9ed38322d32f7f884eb4ef1c787629afd064736f6c63430008170033"; +bytes constant THIRDWEB_ACCOUNT_IMPL_BYTECODE = hex"60806040526004361061014b5760003560e01c806301ffc9a7146101575780630a1028c41461018c578063150b7a02146101ba5780631626ba7e146101fe5780631dd756c51461021e57806324d7806c1461023e5780633a871cdd1461025e57806347e1da2a1461027e5780634a58db19146102a05780634d44560d146102a85780635892e236146102c85780637dff5a79146102e85780638b52d72314610308578063938e3d7b1461032a578063a9082d841461034a578063ac9650d814610389578063b0d691fe146103b6578063b61d27f6146103d8578063b76464d5146103f8578063bc197c8114610418578063c45a015514610444578063d087d28814610478578063d1f578941461048d578063d42f2f35146104ad578063e8a3d485146104c2578063e9523c97146104e4578063f15d424e14610506578063f23a6e611461053357600080fd5b3661015257005b600080fd5b34801561016357600080fd5b50610177610172366004612d1a565b61055f565b60405190151581526020015b60405180910390f35b34801561019857600080fd5b506101ac6101a7366004612e01565b6105a5565b604051908152602001610183565b3480156101c657600080fd5b506101e56101d5366004612e5a565b630a85bd0160e11b949350505050565b6040516001600160e01b03199091168152602001610183565b34801561020a57600080fd5b506101e5610219366004612ec5565b610649565b34801561022a57600080fd5b50610177610239366004612f24565b610789565b34801561024a57600080fd5b50610177610259366004612f69565b610a4d565b34801561026a57600080fd5b506101ac610279366004612f86565b610a7c565b34801561028a57600080fd5b5061029e610299366004613017565b610aa2565b005b61029e610c09565b3480156102b457600080fd5b5061029e6102c33660046130b0565b610c71565b3480156102d457600080fd5b5061029e6102e336600461311d565b610ce4565b3480156102f457600080fd5b50610177610303366004612f69565b6110a1565b34801561031457600080fd5b5061031d61115a565b6040516101839190613230565b34801561033657600080fd5b5061029e610345366004613294565b6113a1565b34801561035657600080fd5b5061036a61036536600461311d565b6113f2565b6040805192151583526001600160a01b03909116602083015201610183565b34801561039557600080fd5b506103a96103a43660046132dc565b611449565b604051610183919061336d565b3480156103c257600080fd5b506103cb611532565b60405161018391906133c4565b3480156103e457600080fd5b5061029e6103f33660046133d8565b61157b565b34801561040457600080fd5b5061029e610413366004612f69565b61160b565b34801561042457600080fd5b506101e56104333660046134c5565b63bc197c8160e01b95945050505050565b34801561045057600080fd5b506103cb7f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b81565b34801561048457600080fd5b506101ac61163d565b34801561049957600080fd5b5061029e6104a8366004613572565b6116bd565b3480156104b957600080fd5b5061031d611875565b3480156104ce57600080fd5b506104d76119e6565b60405161018391906135b9565b3480156104f057600080fd5b506104f9611a7e565b60405161018391906135cc565b34801561051257600080fd5b50610526610521366004612f69565b611a90565b6040516101839190613619565b34801561053f57600080fd5b506101e561054e36600461362c565b63f23a6e6160e01b95945050505050565b60006001600160e01b03198216630271189760e51b148061059057506001600160e01b03198216630a85bd0160e11b145b8061059f575061059f82611b68565b92915050565b6000807f82cac545155fcbf147f2a9013809613677ac7d65498556e6d19ce43bcbf6c28483805190602001206040516020016105eb929190918252602082015260400190565b60405160208183030381529060405280519060200120905061060b611b9d565b60405161190160f01b602082015260228101919091526042810182905260620160405160208183030381529060405280519060200120915050919050565b6000806106768460405160200161066291815260200190565b6040516020818303038152906040526105a5565b905060006106848285611cc4565b905061068f81610a4d565b156106a65750630b135d3f60e11b915061059f9050565b3360006106b1611ce8565b6001600160a01b03841660009081526006919091016020526040902090506106d98183611d0c565b8061070957506106e881611d2e565b6001148015610709575060006106fe8282611d38565b6001600160a01b0316145b6107665760405162461bcd60e51b8152602060048201526024808201527f4163636f756e743a2063616c6c6572206e6f7420617070726f7665642074617260448201526333b2ba1760e11b60648201526084015b60405180910390fd5b61076f836110a1565b1561077f57630b135d3f60e11b94505b5050505092915050565b6000610793611ce8565b6001600160a01b0384166000908152600491909101602052604090205460ff16156107c05750600161059f565b60006107ca611ce8565b6001600160a01b0385166000908152600591909101602090815260408083208151606081018352815481526001909101546001600160801b0380821694830194909452600160801b9004909216908201529150610825611ce8565b6006016000866001600160a01b03166001600160a01b0316815260200190815260200160002090504282602001516001600160801b03161180610875575081604001516001600160801b03164210155b80610886575061088481611d2e565b155b156108965760009250505061059f565b60006108ad6108a86060870187613694565b611d44565b905060006108ba83611d2e565b60011480156108db575060006108d08482611d38565b6001600160a01b0316145b90506324f16c0560e11b6001600160e01b03198316016109525760008061090d61090860608a018a613694565b611d7e565b9150915082610933576109208583611d0c565b610933576000965050505050505061059f565b855181111561094b576000965050505050505061059f565b5050610a40565b635c0f12eb60e11b6001600160e01b0319831601610a335760008061098261097d60608a018a613694565b611de3565b5091509150826109e25760005b82518110156109e0576109c48382815181106109ad576109ad6136da565b602002602001015187611d0c90919063ffffffff16565b6109d857600097505050505050505061059f565b60010161098f565b505b60005b8251811015610a2b57818181518110610a0057610a006136da565b602002602001015187600001511015610a2357600097505050505050505061059f565b6001016109e5565b505050610a40565b600094505050505061059f565b5060019695505050505050565b6000610a57611ce8565b6001600160a01b03909216600090815260049290920160205250604090205460ff1690565b6000610a86611e30565b610a908484611e99565b9050610a9b82611fde565b9392505050565b610aaa611532565b6001600160a01b0316336001600160a01b03161480610acd5750610acd33610a4d565b610ae95760405162461bcd60e51b815260040161075d906136f0565b610af161202b565b8481148015610aff57508483145b610b4b5760405162461bcd60e51b815260206004820152601d60248201527f4163636f756e743a2077726f6e67206172726179206c656e677468732e000000604482015260640161075d565b60005b85811015610c0057610bf7878783818110610b6b57610b6b6136da565b9050602002016020810190610b809190612f69565b868684818110610b9257610b926136da565b90506020020135858585818110610bab57610bab6136da565b9050602002810190610bbd9190613694565b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061211192505050565b50600101610b4e565b50505050505050565b610c11611532565b6001600160a01b031663b760faf934306040518363ffffffff1660e01b8152600401610c3d91906133c4565b6000604051808303818588803b158015610c5657600080fd5b505af1158015610c6a573d6000803e3d6000fd5b5050505050565b610c79612182565b610c81611532565b6001600160a01b031663205c287883836040518363ffffffff1660e01b8152600401610cae929190613731565b600060405180830381600087803b158015610cc857600080fd5b505af1158015610cdc573d6000803e3d6000fd5b505050505050565b6000610cf36020850185612f69565b905042610d0660e0860160c08701613761565b6001600160801b031611158015610d355750610d29610100850160e08601613761565b6001600160801b031642105b610d6b5760405162461bcd60e51b8152602060048201526007602482015266085c195c9a5bd960ca1b604482015260640161075d565b600080610d798686866113f2565b9150915081610db35760405162461bcd60e51b815260040161075d906020808252600490820152632173696760e01b604082015260600190565b6001610dbd611ce8565b610100880135600090815260079190910160209081526040808320805460ff1916941515949094179093559091610df99190890190890161378d565b60ff161115610e26576000610e14604088016020890161378d565b60ff166001149050610c0084826121c0565b610e2f83610a4d565b15610e645760405162461bcd60e51b815260206004820152600560248201526430b236b4b760d91b604482015260640161075d565b610e7983610e70611ce8565b60020190612295565b50604051806060016040528087606001358152602001876080016020810190610ea29190613761565b6001600160801b03168152602001610ec060c0890160a08a01613761565b6001600160801b03169052610ed3611ce8565b6001600160a01b03851660009081526005919091016020908152604080832084518155918401519301516001600160801b03908116600160801b02931692909217600190920191909155610f49610f28611ce8565b6001600160a01b0386166000908152600691909101602052604090206122aa565b805190915060005b81811015610fb357610fa0838281518110610f6e57610f6e6136da565b6020026020010151610f7e611ce8565b6001600160a01b038916600090815260069190910160205260409020906122b7565b50610fac6001826137be565b9050610f51565b50610fc160408901896137d1565b9050905060005b818110156110425761102f610fe060408b018b6137d1565b83818110610ff057610ff06136da565b90506020020160208101906110059190612f69565b61100d611ce8565b6001600160a01b03891660009081526006919091016020526040902090612295565b5061103b6001826137be565b9050610fc8565b5061104c886122cc565b846001600160a01b0316836001600160a01b03167ff21d10c26e35863a8df291aca54181ee8c4a3bc8e00246c3f7a5a14b69d826a78a60405161108f91906138ab565b60405180910390a35050505050505050565b6000806110ac611ce8565b6001600160a01b038416600090815260059190910160209081526040918290208251606081018452815481526001909101546001600160801b03808216938301849052600160801b9091041692810192909252909150421080159061111d575080604001516001600160801b031642105b8015610a9b57506000611152611131611ce8565b6001600160a01b038616600090815260069190910160205260409020611d2e565b119392505050565b60606000611171611169611ce8565b6002016122aa565b80519091506000805b82811015611202576111a4848281518110611197576111976136da565b60200260200101516110a1565b156111bb57816111b381613996565b9250506111f0565b60008482815181106111cf576111cf6136da565b60200260200101906001600160a01b031690816001600160a01b0316815250505b6111fb6001826137be565b905061117a565b50806001600160401b0381111561121b5761121b612d44565b60405190808252806020026020018201604052801561125457816020015b611241612cd0565b8152602001906001900390816112395790505b5093506000805b838110156113995760006001600160a01b0316858281518110611280576112806136da565b60200260200101516001600160a01b0316146113875760008582815181106112aa576112aa6136da565b6020026020010151905060006112be611ce8565b6001600160a01b038316600081815260059290920160209081526040928390208351606081018552815481526001909101546001600160801b0380821683850152600160801b9091041681850152835160a081019094529183529092508101611328610f28611ce8565b81526020018260000151815260200182602001516001600160801b0316815260200182604001516001600160801b031681525088858061136790613996565b965081518110611379576113796136da565b602002602001018190525050505b6113926001826137be565b905061125b565b505050505090565b6113a9612361565b6113e65760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b604482015260640161075d565b6113ef81612379565b50565b60008061140861140186612460565b85856125a4565b9050611412611ce8565b6101008601356000908152600791909101602052604090205460ff1615801561143f575061143f81610a4d565b9150935093915050565b6060816001600160401b0381111561146357611463612d44565b60405190808252806020026020018201604052801561149657816020015b60608152602001906001900390816114815790505b50905060005b8281101561152b57611506308585848181106114ba576114ba6136da565b90506020028101906114cc9190613694565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506125fe92505050565b828281518110611518576115186136da565b602090810291909101015260010161149c565b5092915050565b60008061153d612623565b546001600160a01b03169050801561155457919050565b7f0000000000000000000000005ff137d4b0fdcd49dca30c7cf57e578a026d278991505090565b611583611532565b6001600160a01b0316336001600160a01b031614806115a657506115a633610a4d565b6115c25760405162461bcd60e51b815260040161075d906136f0565b6115ca61202b565b610c6a848484848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061211192505050565b611613612182565b8061161c612623565b80546001600160a01b0319166001600160a01b039290921691909117905550565b6000611647611532565b604051631aab3f0d60e11b8152306004820152600060248201526001600160a01b0391909116906335567e1a90604401602060405180830381865afa158015611694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116b891906139af565b905090565b60006116c7612647565b5460ff16905060006116d7612647565b54610100900460ff16905080158080156116f4575060018360ff16105b8061171357506117033061266b565b15801561171357508260ff166001145b6117765760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161075d565b6001611780612647565b805460ff191660ff9290921691909117905580156117b95760016117a2612647565b80549115156101000261ff00199092169190911790555b6117f98686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061267a92505050565b611801612623565b600101819055506118138660016121c0565b8015610cdc576000611823612647565b80549115156101000261ff0019909216919091179055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050505050565b60606000611884611169611ce8565b8051909150806001600160401b038111156118a1576118a1612d44565b6040519080825280602002602001820160405280156118da57816020015b6118c7612cd0565b8152602001906001900390816118bf5790505b50925060005b818110156119e05760008382815181106118fc576118fc6136da565b602002602001015190506000611910611ce8565b6001600160a01b038316600081815260059290920160209081526040928390208351606081018552815481526001909101546001600160801b0380821683850152600160801b9091041681850152835160a08101909452918352909250810161197a610f28611ce8565b81526020018260000151815260200182602001516001600160801b0316815260200182604001516001600160801b03168152508684815181106119bf576119bf6136da565b602002602001018190525050506001816119d991906137be565b90506118e0565b50505090565b60606119f06126ad565b80546119fb906139c8565b80601f0160208091040260200160405190810160405280929190818152602001828054611a27906139c8565b8015611a745780601f10611a4957610100808354040283529160200191611a74565b820191906000526020600020905b815481529060010190602001808311611a5757829003601f168201915b5050505050905090565b60606116b8611a8b611ce8565b6122aa565b611a98612cd0565b6000611aa2611ce8565b6001600160a01b038416600081815260059290920160209081526040928390208351606081018552815481526001909101546001600160801b0380821683850152600160801b9091041681850152835160a081019094529183529092508101611b2d611b0c611ce8565b6001600160a01b0387166000908152600691909101602052604090206122aa565b81526020018260000151815260200182602001516001600160801b0316815260200182604001516001600160801b0316815250915050919050565b60006001600160e01b03198216630271189760e51b148061059f57506301ffc9a760e01b6001600160e01b031983161461059f565b6000306001600160a01b037f000000000000000000000000ffd4505b3452dc22f8473616d50503ba9e1710ac16148015611bf657507f0000000000000000000000000000000000000000000000000000000000007a6946145b15611c2057507fbcdadf6444930a967ffda04923d78c49b3dd65df3ed39abb04a1e3eb1190553790565b50604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6020808301919091527ff0729608244859f656d32ae4cbc6b0367695d68d8e941a28f5e2d33c6d5182dd828401527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b6000806000611cd385856126d1565b91509150611ce081612716565b509392505050565b7f3181e78fc1b109bc611fd2406150bf06e33faa75f71cba12c3e1fd670f2def0090565b6001600160a01b03811660009081526001830160205260408120541515610a9b565b600061059f825490565b6000610a9b838361285b565b60006004821015611d675760405162461bcd60e51b815260040161075d906139fc565b611d75600460008486613a1b565b610a9b91613a45565b6000806044831015611da25760405162461bcd60e51b815260040161075d906139fc565b611db0602460048587613a1b565b810190611dbd9190612f69565b9150611dcd604460248587613a1b565b810190611dda9190613a75565b90509250929050565b606080806064841015611e085760405162461bcd60e51b815260040161075d906139fc565b611e158460048188613a1b565b810190611e229190613b0d565b919790965090945092505050565b611e38611532565b6001600160a01b0316336001600160a01b031614611e975760405162461bcd60e51b815260206004820152601c60248201527b1858d8dbdd5b9d0e881b9bdd08199c9bdb48115b9d1c9e541bda5b9d60221b604482015260640161075d565b565b7b0ca2ba3432b932bab69029b4b3b732b21026b2b9b9b0b3b29d05199960211b6000908152601c829052603c81206000611f17611eda610140870187613694565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508693925050611cc49050565b9050611f238186610789565b611f325760019250505061059f565b6000611f3c611ce8565b6001600160a01b03929092166000908152600590920160209081526040808420815160608082018452825482526001909201546001600160801b0380821683870152600160801b8204908116928501929092528351928301845295825265ffffffffffff8087169483019490945292831691015260d09290921b6001600160d01b03191660a09290921b65ffffffffffff60a01b169190911795945050505050565b80156113ef57604051600090339060001990849084818181858888f193505050503d8060008114610c6a576040519150601f19603f3d011682016040523d82523d6000602084013e610c6a565b60405163c3c5a54760e01b81527f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b906001600160a01b0382169063c3c5a547906120799030906004016133c4565b602060405180830381865afa158015612096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120ba9190613bf2565b6113ef57806001600160a01b03166383a03f8c6120d5612623565b600101546040518263ffffffff1660e01b81526004016120f791815260200190565b600060405180830381600087803b158015610c5657600080fd5b60606000846001600160a01b0316848460405161212e9190613c14565b60006040518083038185875af1925050503d806000811461216b576040519150601f19603f3d011682016040523d82523d6000602084013e612170565b606091505b509250905080611ce057815160208301fd5b61218b33610a4d565b611e975760405162461bcd60e51b815260206004820152600660248201526510b0b236b4b760d11b604482015260640161075d565b6121ca8282612885565b6001600160a01b037f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b163b15612291578015612259577f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b6001600160a01b0316630b61e12b83612238612623565b600101546040518363ffffffff1660e01b8152600401610cae929190613731565b7f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b6001600160a01b0316639387a38083612238612623565b5050565b6000610a9b836001600160a01b038416612934565b60606000610a9b83612983565b6000610a9b836001600160a01b0384166129df565b6001600160a01b037f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b163b156113ef576001600160a01b037f0000000000000000000000002e234dae75c793f67a35089c9d99245e1c58470b16630b61e12b6123386020840184612f69565b612340612623565b600101546040518363ffffffff1660e01b81526004016120f7929190613731565b600061236c33610a4d565b806116b857505030331490565b60006123836126ad565b805461238e906139c8565b80601f01602080910402602001604051908101604052809291908181526020018280546123ba906139c8565b80156124075780601f106123dc57610100808354040283529160200191612407565b820191906000526020600020905b8154815290600101906020018083116123ea57829003601f168201915b50505050509050816124176126ad565b906124229082613c7d565b507fc9c7c3fe08b88b4df9d4d47ef47d2c43d55c025a0ba88ca442580ed9e7348a168183604051612454929190613d3c565b60405180910390a15050565b60607f3fd4a1a1a267c84185e3b7eecd57c68783c0581d538b9d6e5f23e4670497c1e96124906020840184612f69565b6124a0604085016020860161378d565b6124ad60408601866137d1565b6040516020016124be929190613d6a565b60408051601f19818403018152919052805160209091012060608601356124eb60a0880160808901613761565b6124fb60c0890160a08a01613761565b61250b60e08a0160c08b01613761565b61251c6101008b0160e08c01613761565b60408051602081019a909a526001600160a01b039098169789019790975260ff9095166060880152608087019390935260a08601919091526001600160801b0390811660c086015290811660e0850152908116610100848101919091529116610120830152830135610140820152610160016040516020818303038152906040529050919050565b60006125f683838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050875160208901206125f092509050612ad2565b90611cc4565b949350505050565b6060610a9b8383604051806060016040528060278152602001613e1060279139612aff565b7f036f52c1827dab135f7fd44ca0bddde297e2f659c710e0ec53e975f22b54830090565b7f322cf19c484104d3b1a9c2982ebae869ede3fa5f6c4703ca41b9a48c76ee030090565b6001600160a01b03163b151590565b6000828260405160200161268f929190613dac565b60405160208183030381529060405280519060200120905092915050565b7f4bc804ba64359c0e35e5ed5d90ee596ecaa49a3a930ddcb1470ea0dd625da90090565b60008082516041036127075760208301516040840151606085015160001a6126fb87828585612bdd565b9450945050505061270f565b506000905060025b9250929050565b600081600481111561272a5761272a613dd0565b036127325750565b600181600481111561274657612746613dd0565b0361278e5760405162461bcd60e51b815260206004820152601860248201527745434453413a20696e76616c6964207369676e617475726560401b604482015260640161075d565b60028160048111156127a2576127a2613dd0565b036127ef5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161075d565b600381600481111561280357612803613dd0565b036113ef5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161075d565b6000826000018281548110612872576128726136da565b9060005260206000200154905092915050565b8061288e611ce8565b6001600160a01b038416600090815260049190910160205260409020805460ff191691151591909117905580156128d7576128d1826128cb611ce8565b90612295565b506128eb565b6128e9826128e3611ce8565b906122b7565b505b816001600160a01b03167f235bc17e7930760029e9f4d860a2a8089976de5b381cf8380fc11c1d88a1113382604051612928911515815260200190565b60405180910390a25050565b600081815260018301602052604081205461297b5750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561059f565b50600061059f565b6060816000018054806020026020016040519081016040528092919081815260200182805480156129d357602002820191906000526020600020905b8154815260200190600101908083116129bf575b50505050509050919050565b60008181526001830160205260408120548015612ac8576000612a03600183613de6565b8554909150600090612a1790600190613de6565b9050818114612a7c576000866000018281548110612a3757612a376136da565b9060005260206000200154905080876000018481548110612a5a57612a5a6136da565b6000918252602080832090910192909255918252600188019052604090208390555b8554869080612a8d57612a8d613df9565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061059f565b600091505061059f565b600061059f612adf611b9d565b8360405161190160f01b8152600281019290925260228201526042902090565b6060612b0a8461266b565b8015612b1c5750612b1a3361266b565b155b612b685760405162461bcd60e51b815260206004820152601e60248201527f416464726573733a20696e76616c69642064656c65676174652063616c6c0000604482015260640161075d565b600080856001600160a01b031685604051612b839190613c14565b600060405180830381855af49150503d8060008114612bbe576040519150601f19603f3d011682016040523d82523d6000602084013e612bc3565b606091505b5091509150612bd3828286612c97565b9695505050505050565b6000806fa2a8918ca85bafe22016d0b997e4df60600160ff1b03831115612c0a5750600090506003612c8e565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612c5e573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612c8757600060019250925050612c8e565b9150600090505b94509492505050565b60608315612ca6575081610a9b565b825115612cb65782518084602001fd5b8160405162461bcd60e51b815260040161075d91906135b9565b6040518060a0016040528060006001600160a01b03168152602001606081526020016000815260200160006001600160801b0316815260200160006001600160801b031681525090565b600060208284031215612d2c57600080fd5b81356001600160e01b031981168114610a9b57600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715612d8257612d82612d44565b604052919050565b60006001600160401b03831115612da357612da3612d44565b612db6601f8401601f1916602001612d5a565b9050828152838383011115612dca57600080fd5b828260208301376000602084830101529392505050565b600082601f830112612df257600080fd5b610a9b83833560208501612d8a565b600060208284031215612e1357600080fd5b81356001600160401b03811115612e2957600080fd5b6125f684828501612de1565b6001600160a01b03811681146113ef57600080fd5b8035612e5581612e35565b919050565b60008060008060808587031215612e7057600080fd5b8435612e7b81612e35565b93506020850135612e8b81612e35565b92506040850135915060608501356001600160401b03811115612ead57600080fd5b612eb987828801612de1565b91505092959194509250565b60008060408385031215612ed857600080fd5b8235915060208301356001600160401b03811115612ef557600080fd5b612f0185828601612de1565b9150509250929050565b60006101608284031215612f1e57600080fd5b50919050565b60008060408385031215612f3757600080fd5b8235612f4281612e35565b915060208301356001600160401b03811115612f5d57600080fd5b612f0185828601612f0b565b600060208284031215612f7b57600080fd5b8135610a9b81612e35565b600080600060608486031215612f9b57600080fd5b83356001600160401b03811115612fb157600080fd5b612fbd86828701612f0b565b9660208601359650604090950135949350505050565b60008083601f840112612fe557600080fd5b5081356001600160401b03811115612ffc57600080fd5b6020830191508360208260051b850101111561270f57600080fd5b6000806000806000806060878903121561303057600080fd5b86356001600160401b038082111561304757600080fd5b6130538a838b01612fd3565b9098509650602089013591508082111561306c57600080fd5b6130788a838b01612fd3565b9096509450604089013591508082111561309157600080fd5b5061309e89828a01612fd3565b979a9699509497509295939492505050565b600080604083850312156130c357600080fd5b82356130ce81612e35565b946020939093013593505050565b60008083601f8401126130ee57600080fd5b5081356001600160401b0381111561310557600080fd5b60208301915083602082850101111561270f57600080fd5b60008060006040848603121561313257600080fd5b83356001600160401b038082111561314957600080fd5b90850190610120828803121561315e57600080fd5b9093506020850135908082111561317457600080fd5b50613181868287016130dc565b9497909650939450505050565b6001600160801b03169052565b80516001600160a01b03908116835260208083015160a082860181905281519086018190526000939183019290849060c08801905b808310156131f2578551851682529483019460019290920191908301906131d0565b506040870151604089015260608701519450613211606089018661318e565b60808701519450613225608089018661318e565b979650505050505050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b8281101561328757603f1988860301845261327585835161319b565b94509285019290850190600101613259565b5092979650505050505050565b6000602082840312156132a657600080fd5b81356001600160401b038111156132bc57600080fd5b8201601f810184136132cd57600080fd5b6125f684823560208401612d8a565b600080602083850312156132ef57600080fd5b82356001600160401b0381111561330557600080fd5b61331185828601612fd3565b90969095509350505050565b60005b83811015613338578181015183820152602001613320565b50506000910152565b6000815180845261335981602086016020860161331d565b601f01601f19169290920160200192915050565b600060208083016020845280855180835260408601915060408160051b87010192506020870160005b8281101561328757603f198886030184526133b2858351613341565b94509285019290850190600101613396565b6001600160a01b0391909116815260200190565b600080600080606085870312156133ee57600080fd5b84356133f981612e35565b93506020850135925060408501356001600160401b0381111561341b57600080fd5b613427878288016130dc565b95989497509550505050565b60006001600160401b0382111561344c5761344c612d44565b5060051b60200190565b600082601f83011261346757600080fd5b8135602061347c61347783613433565b612d5a565b8083825260208201915060208460051b87010193508684111561349e57600080fd5b602086015b848110156134ba57803583529183019183016134a3565b509695505050505050565b600080600080600060a086880312156134dd57600080fd5b85356134e881612e35565b945060208601356134f881612e35565b935060408601356001600160401b038082111561351457600080fd5b61352089838a01613456565b9450606088013591508082111561353657600080fd5b61354289838a01613456565b9350608088013591508082111561355857600080fd5b5061356588828901612de1565b9150509295509295909350565b60008060006040848603121561358757600080fd5b833561359281612e35565b925060208401356001600160401b038111156135ad57600080fd5b613181868287016130dc565b602081526000610a9b6020830184613341565b6020808252825182820181905260009190848201906040850190845b8181101561360d5783516001600160a01b0316835292840192918401916001016135e8565b50909695505050505050565b602081526000610a9b602083018461319b565b600080600080600060a0868803121561364457600080fd5b853561364f81612e35565b9450602086013561365f81612e35565b9350604086013592506060860135915060808601356001600160401b0381111561368857600080fd5b61356588828901612de1565b6000808335601e198436030181126136ab57600080fd5b8301803591506001600160401b038211156136c557600080fd5b60200191503681900382131561270f57600080fd5b634e487b7160e01b600052603260045260246000fd5b60208082526021908201527f4163636f756e743a206e6f742061646d696e206f7220456e747279506f696e746040820152601760f91b606082015260800190565b6001600160a01b03929092168252602082015260400190565b80356001600160801b0381168114612e5557600080fd5b60006020828403121561377357600080fd5b610a9b8261374a565b803560ff81168114612e5557600080fd5b60006020828403121561379f57600080fd5b610a9b8261377c565b634e487b7160e01b600052601160045260246000fd5b8082018082111561059f5761059f6137a8565b6000808335601e198436030181126137e857600080fd5b8301803591506001600160401b0382111561380257600080fd5b6020019150600581901b360382131561270f57600080fd5b6000808335601e1984360301811261383157600080fd5b83016020810192503590506001600160401b0381111561385057600080fd5b8060051b360382131561270f57600080fd5b8183526000602080850194508260005b858110156138a057813561388581612e35565b6001600160a01b031687529582019590820190600101613872565b509495945050505050565b602081526138cc602082016138bf84612e4a565b6001600160a01b03169052565b60006138da6020840161377c565b60ff81166040840152506138f1604084018461381a565b61012080606086015261390961014086018385613862565b9250606086013560808601526139216080870161374a565b915061393060a086018361318e565b61393c60a0870161374a565b915061394b60c086018361318e565b61395760c0870161374a565b915061396660e086018361318e565b61397260e0870161374a565b91506101006139838187018461318e565b9590950135939094019290925250919050565b6000600182016139a8576139a86137a8565b5060010190565b6000602082840312156139c157600080fd5b5051919050565b600181811c908216806139dc57607f821691505b602082108103612f1e57634e487b7160e01b600052602260045260246000fd5b602080825260059082015264214461746160d81b604082015260600190565b60008085851115613a2b57600080fd5b83861115613a3857600080fd5b5050820193919092039150565b6001600160e01b03198135818116916004851015613a6d5780818660040360031b1b83161692505b505092915050565b600060208284031215613a8757600080fd5b5035919050565b600082601f830112613a9f57600080fd5b81356020613aaf61347783613433565b82815260059290921b84018101918181019086841115613ace57600080fd5b8286015b848110156134ba5780356001600160401b03811115613af15760008081fd5b613aff8986838b0101612de1565b845250918301918301613ad2565b600080600060608486031215613b2257600080fd5b83356001600160401b0380821115613b3957600080fd5b818601915086601f830112613b4d57600080fd5b81356020613b5d61347783613433565b82815260059290921b8401810191818101908a841115613b7c57600080fd5b948201945b83861015613ba3578535613b9481612e35565b82529482019490820190613b81565b97505087013592505080821115613bb957600080fd5b613bc587838801613456565b93506040860135915080821115613bdb57600080fd5b50613be886828701613a8e565b9150509250925092565b600060208284031215613c0457600080fd5b81518015158114610a9b57600080fd5b60008251613c2681846020870161331d565b9190910192915050565b601f821115613c78576000816000526020600020601f850160051c81016020861015613c595750805b601f850160051c820191505b81811015610cdc57828155600101613c65565b505050565b81516001600160401b03811115613c9657613c96612d44565b613caa81613ca484546139c8565b84613c30565b602080601f831160018114613cdf5760008415613cc75750858301515b600019600386901b1c1916600185901b178555610cdc565b600085815260208120601f198616915b82811015613d0e57888601518255948401946001909101908401613cef565b5085821015613d2c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b604081526000613d4f6040830185613341565b8281036020840152613d618185613341565b95945050505050565b60008184825b85811015613da1578135613d8381612e35565b6001600160a01b031683526020928301929190910190600101613d70565b509095945050505050565b6001600160a01b03831681526040602082018190526000906125f690830184613341565b634e487b7160e01b600052602160045260246000fd5b8181038181111561059f5761059f6137a8565b634e487b7160e01b600052603160045260246000fdfe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220d2173bb723866f0f6899074ddc9d72c37aa0ec712faafb4bb7aed6492cb13c8764736f6c63430008170033";