[ { "inputs": [ { "internalType": "address", "name": "_mintFeeRecipient", "type": "address" }, { "internalType": "address", "name": "_upgradeGate", "type": "address" }, { "internalType": "address", "name": "_protocolRewards", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "ADDRESS_DELEGATECALL_TO_NON_CONTRACT", "type": "error" }, { "inputs": [], "name": "ADDRESS_LOW_LEVEL_CALL_FAILED", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "address", "name": "user", "type": "address" } ], "name": "Burn_NotOwnerOrApproved", "type": "error" }, { "inputs": [], "name": "CREATOR_FUNDS_RECIPIENT_NOT_SET", "type": "error" }, { "inputs": [ { "internalType": "bytes", "name": "reason", "type": "bytes" } ], "name": "CallFailed", "type": "error" }, { "inputs": [], "name": "Call_TokenIdMismatch", "type": "error" }, { "inputs": [], "name": "CallerNotZoraCreator1155", "type": "error" }, { "inputs": [], "name": "CanOnlyReduceMaxSupply", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "quantity", "type": "uint256" }, { "internalType": "uint256", "name": "totalMinted", "type": "uint256" }, { "internalType": "uint256", "name": "maxSupply", "type": "uint256" } ], "name": "CannotMintMoreTokens", "type": "error" }, { "inputs": [], "name": "CannotReduceMaxSupplyBelowMinted", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "proposedAddress", "type": "address" } ], "name": "Config_TransferHookNotSupported", "type": "error" }, { "inputs": [], "name": "ERC1155_ACCOUNTS_AND_IDS_LENGTH_MISMATCH", "type": "error" }, { "inputs": [], "name": "ERC1155_ADDRESS_ZERO_IS_NOT_A_VALID_OWNER", "type": "error" }, { "inputs": [], "name": "ERC1155_BURN_AMOUNT_EXCEEDS_BALANCE", "type": "error" }, { "inputs": [], "name": "ERC1155_BURN_FROM_ZERO_ADDRESS", "type": "error" }, { "inputs": [], "name": "ERC1155_CALLER_IS_NOT_TOKEN_OWNER_OR_APPROVED", "type": "error" }, { "inputs": [], "name": "ERC1155_ERC1155RECEIVER_REJECTED_TOKENS", "type": "error" }, { "inputs": [], "name": "ERC1155_IDS_AND_AMOUNTS_LENGTH_MISMATCH", "type": "error" }, { "inputs": [], "name": "ERC1155_INSUFFICIENT_BALANCE_FOR_TRANSFER", "type": "error" }, { "inputs": [], "name": "ERC1155_MINT_TO_ZERO_ADDRESS", "type": "error" }, { "inputs": [], "name": "ERC1155_MINT_TO_ZERO_ADDRESS", "type": "error" }, { "inputs": [], "name": "ERC1155_SETTING_APPROVAL_FOR_SELF", "type": "error" }, { "inputs": [], "name": "ERC1155_TRANSFER_TO_NON_ERC1155RECEIVER_IMPLEMENTER", "type": "error" }, { "inputs": [], "name": "ERC1155_TRANSFER_TO_ZERO_ADDRESS", "type": "error" }, { "inputs": [], "name": "ERC1967_NEW_IMPL_NOT_CONTRACT", "type": "error" }, { "inputs": [], "name": "ERC1967_NEW_IMPL_NOT_UUPS", "type": "error" }, { "inputs": [], "name": "ERC1967_UNSUPPORTED_PROXIABLEUUID", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "ETHWithdrawFailed", "type": "error" }, { "inputs": [], "name": "FUNCTION_MUST_BE_CALLED_THROUGH_ACTIVE_PROXY", "type": "error" }, { "inputs": [], "name": "FUNCTION_MUST_BE_CALLED_THROUGH_DELEGATECALL", "type": "error" }, { "inputs": [], "name": "FirstMinterAddressZero", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "uint256", "name": "contractValue", "type": "uint256" } ], "name": "FundsWithdrawInsolvent", "type": "error" }, { "inputs": [], "name": "INITIALIZABLE_CONTRACT_ALREADY_INITIALIZED", "type": "error" }, { "inputs": [], "name": "INITIALIZABLE_CONTRACT_IS_NOT_INITIALIZING", "type": "error" }, { "inputs": [], "name": "INVALID_ADDRESS_ZERO", "type": "error" }, { "inputs": [], "name": "INVALID_ETH_AMOUNT", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "mintTo", "type": "address" }, { "internalType": "bytes32[]", "name": "merkleProof", "type": "bytes32[]" }, { "internalType": "bytes32", "name": "merkleRoot", "type": "bytes32" } ], "name": "InvalidMerkleProof", "type": "error" }, { "inputs": [], "name": "InvalidMintSchedule", "type": "error" }, { "inputs": [], "name": "InvalidMintSchedule", "type": "error" }, { "inputs": [], "name": "InvalidPremintVersion", "type": "error" }, { "inputs": [], "name": "InvalidSignature", "type": "error" }, { "inputs": [], "name": "InvalidSignatureVersion", "type": "error" }, { "inputs": [ { "internalType": "bytes4", "name": "magicValue", "type": "bytes4" } ], "name": "InvalidSigner", "type": "error" }, { "inputs": [], "name": "MintNotYetStarted", "type": "error" }, { "inputs": [], "name": "Mint_InsolventSaleTransfer", "type": "error" }, { "inputs": [], "name": "Mint_InvalidMintArrayLength", "type": "error" }, { "inputs": [], "name": "Mint_TokenIDMintNotAllowed", "type": "error" }, { "inputs": [], "name": "Mint_UnknownCommand", "type": "error" }, { "inputs": [], "name": "Mint_ValueTransferFail", "type": "error" }, { "inputs": [], "name": "MinterContractAlreadyExists", "type": "error" }, { "inputs": [], "name": "MinterContractDoesNotExist", "type": "error" }, { "inputs": [], "name": "NewOwnerNeedsToBeAdmin", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "NoRendererForToken", "type": "error" }, { "inputs": [], "name": "NonEthRedemption", "type": "error" }, { "inputs": [], "name": "ONLY_CREATE_REFERRAL", "type": "error" }, { "inputs": [], "name": "OnlyTransfersFromZoraMints", "type": "error" }, { "inputs": [], "name": "PremintDeleted", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "caller", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "ProtocolRewardsWithdrawFailed", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "renderer", "type": "address" } ], "name": "RendererNotValid", "type": "error" }, { "inputs": [], "name": "Renderer_NotValidRendererContract", "type": "error" }, { "inputs": [], "name": "SaleEnded", "type": "error" }, { "inputs": [], "name": "SaleHasNotStarted", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "targetContract", "type": "address" } ], "name": "Sale_CannotCallNonSalesContract", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "expected", "type": "uint256" }, { "internalType": "uint256", "name": "actual", "type": "uint256" } ], "name": "TokenIdMismatch", "type": "error" }, { "inputs": [], "name": "UUPS_UPGRADEABLE_MUST_NOT_BE_CALLED_THROUGH_DELEGATECALL", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint256", "name": "limit", "type": "uint256" }, { "internalType": "uint256", "name": "requestedAmount", "type": "uint256" } ], "name": "UserExceedsMintLimit", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "role", "type": "uint256" } ], "name": "UserMissingRoleForToken", "type": "error" }, { "inputs": [], "name": "WrongValueSent", "type": "error" }, { "inputs": [], "name": "premintSignerContractFailedToRecoverSigner", "type": "error" }, { "inputs": [], "name": "premintSignerContractNotAContract", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "previousAdmin", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newAdmin", "type": "address" } ], "name": "AdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": false, "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "ApprovalForAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "beacon", "type": "address" } ], "name": "BeaconUpgraded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "updater", "type": "address" }, { "indexed": true, "internalType": "enum IZoraCreator1155.ConfigUpdate", "name": "updateType", "type": "uint8" }, { "components": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint96", "name": "__gap1", "type": "uint96" }, { "internalType": "address payable", "name": "fundsRecipient", "type": "address" }, { "internalType": "uint96", "name": "__gap2", "type": "uint96" }, { "internalType": "contract ITransferHookReceiver", "name": "transferHook", "type": "address" }, { "internalType": "uint96", "name": "__gap3", "type": "uint96" } ], "indexed": false, "internalType": "struct IZoraCreator1155TypesV1.ContractConfig", "name": "newConfig", "type": "tuple" } ], "name": "ConfigUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "updater", "type": "address" }, { "indexed": false, "internalType": "string", "name": "uri", "type": "string" }, { "indexed": false, "internalType": "string", "name": "name", "type": "string" } ], "name": "ContractMetadataUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "contract IRenderer1155", "name": "renderer", "type": "address" } ], "name": "ContractRendererUpdated", "type": "event" }, { "anonymous": false, "inputs": [], "name": "ContractURIUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "bytes32", "name": "structHash", "type": "bytes32" }, { "indexed": false, "internalType": "string", "name": "domainName", "type": "string" }, { "indexed": false, "internalType": "string", "name": "version", "type": "string" }, { "indexed": false, "internalType": "address", "name": "creator", "type": "address" }, { "indexed": false, "internalType": "bytes", "name": "signature", "type": "bytes" } ], "name": "CreatorAttribution", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "lastOwner", "type": "address" }, { "indexed": false, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": true, "internalType": "address", "name": "minter", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "quantity", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Purchased", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "renderer", "type": "address" }, { "indexed": true, "internalType": "address", "name": "user", "type": "address" } ], "name": "RendererUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" }, { "indexed": false, "internalType": "string", "name": "newURI", "type": "string" }, { "indexed": false, "internalType": "uint256", "name": "maxSupply", "type": "uint256" } ], "name": "SetupNewToken", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "indexed": false, "internalType": "uint256[]", "name": "values", "type": "uint256[]" } ], "name": "TransferBatch", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "operator", "type": "address" }, { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "id", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "TransferSingle", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "value", "type": "string" }, { "indexed": true, "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "URI", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "permissions", "type": "uint256" } ], "name": "UpdatedPermissions", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, { "components": [ { "internalType": "uint32", "name": "royaltyMintSchedule", "type": "uint32" }, { "internalType": "uint32", "name": "royaltyBPS", "type": "uint32" }, { "internalType": "address", "name": "royaltyRecipient", "type": "address" } ], "indexed": false, "internalType": "struct ICreatorRoyaltiesControl.RoyaltyConfiguration", "name": "configuration", "type": "tuple" } ], "name": "UpdatedRoyalties", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "components": [ { "internalType": "string", "name": "uri", "type": "string" }, { "internalType": "uint256", "name": "maxSupply", "type": "uint256" }, { "internalType": "uint256", "name": "totalMinted", "type": "uint256" } ], "indexed": false, "internalType": "struct IZoraCreator1155TypesV1.TokenData", "name": "tokenData", "type": "tuple" } ], "name": "UpdatedToken", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "implementation", "type": "address" } ], "name": "Upgraded", "type": "event" }, { "inputs": [], "name": "CONTRACT_BASE_ID", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMISSION_BIT_ADMIN", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMISSION_BIT_FUNDS_MANAGER", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMISSION_BIT_METADATA", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMISSION_BIT_MINTER", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMISSION_BIT_SALES", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint256", "name": "permissionBits", "type": "uint256" } ], "name": "addPermission", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "quantity", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "adminMint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "lastTokenId", "type": "uint256" } ], "name": "assumeLastTokenIdMatches", "outputs": [], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address[]", "name": "accounts", "type": "address[]" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" } ], "name": "balanceOfBatch", "outputs": [ { "internalType": "uint256[]", "name": "batchBalances", "type": "uint256[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "uint256[]", "name": "tokenIds", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "amounts", "type": "uint256[]" } ], "name": "burnBatch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "callRenderer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "contract IMinter1155", "name": "salesConfig", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "callSale", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "mintPrice", "type": "uint256" }, { "internalType": "uint256", "name": "quantity", "type": "uint256" } ], "name": "computeTotalReward", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [], "name": "config", "outputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "uint96", "name": "__gap1", "type": "uint96" }, { "internalType": "address payable", "name": "fundsRecipient", "type": "address" }, { "internalType": "uint96", "name": "__gap2", "type": "uint96" }, { "internalType": "contract ITransferHookReceiver", "name": "transferHook", "type": "address" }, { "internalType": "uint96", "name": "__gap3", "type": "uint96" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "contractURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "contractVersion", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "createReferrals", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "customRenderers", "outputs": [ { "internalType": "contract IRenderer1155", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes", "name": "premintConfig", "type": "bytes" }, { "internalType": "bytes32", "name": "premintVersion", "type": "bytes32" }, { "internalType": "bytes", "name": "signature", "type": "bytes" }, { "internalType": "address", "name": "firstMinter", "type": "address" }, { "internalType": "address", "name": "premintSignerContract", "type": "address" } ], "name": "delegateSetupNewToken", "outputs": [ { "internalType": "uint256", "name": "newTokenId", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint32", "name": "", "type": "uint32" } ], "name": "delegatedTokenId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "firstMinters", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getCreatorRewardRecipient", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getCustomRenderer", "outputs": [ { "internalType": "contract IRenderer1155", "name": "customRenderer", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getRoyalties", "outputs": [ { "components": [ { "internalType": "uint32", "name": "royaltyMintSchedule", "type": "uint32" }, { "internalType": "uint32", "name": "royaltyBPS", "type": "uint32" }, { "internalType": "address", "name": "royaltyRecipient", "type": "address" } ], "internalType": "struct ICreatorRoyaltiesControl.RoyaltyConfiguration", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getTokenInfo", "outputs": [ { "components": [ { "internalType": "string", "name": "uri", "type": "string" }, { "internalType": "uint256", "name": "maxSupply", "type": "uint256" }, { "internalType": "uint256", "name": "totalMinted", "type": "uint256" } ], "internalType": "struct IZoraCreator1155TypesV1.TokenData", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "implementation", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "contractName", "type": "string" }, { "internalType": "string", "name": "newContractURI", "type": "string" }, { "components": [ { "internalType": "uint32", "name": "royaltyMintSchedule", "type": "uint32" }, { "internalType": "uint32", "name": "royaltyBPS", "type": "uint32" }, { "internalType": "address", "name": "royaltyRecipient", "type": "address" } ], "internalType": "struct ICreatorRoyaltiesControl.RoyaltyConfiguration", "name": "defaultRoyaltyConfiguration", "type": "tuple" }, { "internalType": "address payable", "name": "defaultAdmin", "type": "address" }, { "internalType": "bytes[]", "name": "setupActions", "type": "bytes[]" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "role", "type": "uint256" } ], "name": "isAdminOrRole", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "address", "name": "operator", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "metadataRendererContract", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "contract IMinter1155", "name": "minter", "type": "address" }, { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "quantity", "type": "uint256" }, { "internalType": "address[]", "name": "rewardsRecipients", "type": "address[]" }, { "internalType": "bytes", "name": "minterArguments", "type": "bytes" } ], "name": "mint", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "mintFee", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes[]", "name": "data", "type": "bytes[]" } ], "name": "multicall", "outputs": [ { "internalType": "bytes[]", "name": "results", "type": "bytes[]" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "nextTokenId", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "permissions", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "proxiableUUID", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "newMaxSupply", "type": "uint256" } ], "name": "reduceSupply", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "address", "name": "user", "type": "address" }, { "internalType": "uint256", "name": "permissionBits", "type": "uint256" } ], "name": "removePermission", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "royalties", "outputs": [ { "internalType": "uint32", "name": "royaltyMintSchedule", "type": "uint32" }, { "internalType": "uint32", "name": "royaltyBPS", "type": "uint32" }, { "internalType": "address", "name": "royaltyRecipient", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "uint256", "name": "salePrice", "type": "uint256" } ], "name": "royaltyInfo", "outputs": [ { "internalType": "address", "name": "receiver", "type": "address" }, { "internalType": "uint256", "name": "royaltyAmount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "amounts", "type": "uint256[]" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeBatchTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "id", "type": "uint256" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "safeTransferFrom", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "operator", "type": "address" }, { "internalType": "bool", "name": "approved", "type": "bool" } ], "name": "setApprovalForAll", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address payable", "name": "fundsRecipient", "type": "address" } ], "name": "setFundsRecipient", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "setOwner", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "contract IRenderer1155", "name": "renderer", "type": "address" } ], "name": "setTokenMetadataRenderer", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "contract ITransferHookReceiver", "name": "transferHook", "type": "address" } ], "name": "setTransferHook", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "newURI", "type": "string" }, { "internalType": "uint256", "name": "maxSupply", "type": "uint256" } ], "name": "setupNewToken", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "newURI", "type": "string" }, { "internalType": "uint256", "name": "maxSupply", "type": "uint256" }, { "internalType": "address", "name": "createReferral", "type": "address" } ], "name": "setupNewTokenWithCreateReferral", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "supportedPremintSignatureVersions", "outputs": [ { "internalType": "string[]", "name": "", "type": "string[]" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "_newURI", "type": "string" }, { "internalType": "string", "name": "_newName", "type": "string" } ], "name": "updateContractMetadata", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "updateCreateReferral", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "components": [ { "internalType": "uint32", "name": "royaltyMintSchedule", "type": "uint32" }, { "internalType": "uint32", "name": "royaltyBPS", "type": "uint32" }, { "internalType": "address", "name": "royaltyRecipient", "type": "address" } ], "internalType": "struct ICreatorRoyaltiesControl.RoyaltyConfiguration", "name": "newConfiguration", "type": "tuple" } ], "name": "updateRoyaltiesForToken", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" }, { "internalType": "string", "name": "_newURI", "type": "string" } ], "name": "updateTokenURI", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" } ], "name": "upgradeTo", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "upgradeToAndCall", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "uri", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "withdraw", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ]
61012034620001ed57601f6200598738819003918201601f1916830191906001600160401b03831184841017620001f2578160609285926040958652833981010312620001ed57620000518262000208565b6200006c82620000646020860162000208565b940162000208565b3060805261271060a0526001600160a01b039190821680158015620001e2575b620001d15760e05260c0526000549060ff8260081c16159182801590620001c4575b80620001aa575b620001995760ff1981166001176000558262000186575b50610100931683526200014b575b5161576991826200021e83396080518281816121eb01528181612282015261269c015260a0518261353f015260c051828181612b36015281816130aa015281816130d30152818161310f0152613135015260e051828181612ab50152612b750152518181816122f7015261270e0152f35b61ff0019600054166000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024986020825160018152a1620000da565b61ffff19166101011760005538620000cc565b8351633d5c224160e11b8152600490fd5b50303b151580620000b55750600160ff82161415620000b5565b5060ff81161515620000ae565b8351632d87658960e01b8152600490fd5b50828216156200008c565b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b0382168203620001ed5756fe6080604052600436101561001b575b361561001957600080fd5b005b6000803560e01c8062fdd58e14613af75780630114420114613adb57806301ffc9a7146139dd57806306fdde031461392a5780630e89341c1461390a57806310a7eb5d1461388957806313966db51461386757806313af4035146137ff57806317bd48bb1461378e57806318711c7d1461377257806318e97fd1146135e557806323bd0386146135975780632a55205a1461350f5780632eb2c2d6146131b4578063300ecdb91461316f578063359f13021461286e5780633659cfe6146126765780633ccfd60b146125b65780634e1273f4146124b65780634f1ef2861461224357806352d1902d146121d85780635c60da1b146121a25780635d0f6cba1461204f5780635e4e0404146120305780636661a9ba14611ed5578063674cbae614611e5257806369a5b30214611e1e5780636b20c45414611ba5578063709e537f14611b1c57806375794a3c14611afd57806379502c5514611aa25780637dafae4d14611a6e5780637f2dc61c1461198d5780637f77f5741461193e5780638a08eb4c146114605780638c7a63ae146113ec5780638da5cb5b146113c25780638ec998a014611362578063929a71281461134757806395d89b41146112e95780639c5c63c9146112505780639ebb83241461121c578063a0a8e460146111d5578063a22cb46514611136578063a453eaf01461111a578063a457c673146110f8578063ac9650d81461105c578063af80248014610ff6578063afed7e9e14610e58578063bb3bafd614610e2c578063bdd864f214610df2578063c046435614610dd6578063c238d1ee14610d72578063d258609a14610d09578063d904b94a14610b43578063dd15e05f14610b0f578063e72878b414610ac9578063e74d86c214610a98578063e8a3d48514610a64578063e985e9c514610a10578063ed788913146108a5578063ef71c82e14610610578063f1b0d6bb146105f45763f242432a146102e6575061000e565b346105f15760a03660031901126105f1576102ff613b1f565b610307613b35565b906064356044356084356001600160401b0381116105ed5761032d903690600401613c85565b6001600160a01b039384169333851415806105ca575b6105b8578086169081156105a6576101cb541680610524575b508287526020956097875260408820866000528752604060002054858110610512578590858a526097895260408a2088600052895203604060002055838852609787526040882082600052875260406000206103b9868254613f92565b90558186604051868152878a8201527fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6260403392a43b6103f7578680f35b61043b93600087946040519687958694859363f23a6e6160e01b9b8c865233600487015260248601526044850152606484015260a0608484015260a4830190613b6e565b03925af1600091816104e3575b506104c057505060019061045a613ffa565b6308c379a014610487575b50610475575b3880808080808680f35b6040516377d5b49160e11b8152600490fd5b61048f614018565b908161049b5750610465565b6104bc60405192839262461bcd60e51b845260048401526024830190613b6e565b0390fd5b6001600160e01b03191614905061046b57604051633fbfe7f560e21b8152600490fd5b610504919250843d861161050b575b6104fc8183613c12565b810190613fda565b9038610448565b503d6104f2565b604051636eaa1ea960e11b8152600490fd5b803b156105a1576000604051809263417b2f9760e11b82523060048301523360248301528860448301528460648301528660848301528760a483015260e060c483015281838161057760e482018a613b6e565b03925af18015610595571561035c5761058f90613be4565b3861035c565b6040513d6000823e3d90fd5b600080fd5b604051631c53f61160e21b8152600490fd5b604051633e2ea01560e21b8152600490fd5b508487526098602052604087203360005260205260ff6040600020541615610343565b8580fd5b80fd5b50346105f157806003193601126105f157602060405160048152f35b50346105f15760403660031901126105f1576001600160401b036004358181116108a157610642903690600401613c85565b60243582811161089d5761065a903690600401613c85565b336000908152600080516020615714833981519152602090815260409091205491939091601216158015906101fe90610879575b5015610853578480526101c682526040852090835190811161083f576106b482546140c2565b601f81116107fc575b5082601f821160011461077357927f74b7c2afa3f89c562b59674a101e2c48bceeb27cdb620afefa14446f1ffa487b94928261073e9361072f968a91610768575b508160011b916000199060031b1c19161790555b61071b866141f8565b604051938493604085526040850190613b6e565b90838203908401523395613b6e565b0390a27fa5d4097edda6d87cb9329af83fb3712ef77eeb13738ffe43cc35a4ce305ad9628180a180f35b9050850151386106fe565b82875283872090601f198316885b8181106107e557508361072f96937f74b7c2afa3f89c562b59674a101e2c48bceeb27cdb620afefa14446f1ffa487b98969361073e96600194106107cc575b5050811b019055610712565b87015160001960f88460031b161c1916905538806107c0565b91928660018192868b015181550194019201610781565b828752838720601f830160051c810191858410610835575b601f0160051c01905b81811061082a57506106bd565b87815560010161081d565b9091508190610814565b634e487b7160e01b86526041600452602486fd5b604051634baa2a4d60e01b81523360048201526000602482015260106044820152606490fd5b9050600080528252604060002033600052825260126040600020541615153861068e565b8380fd5b8280fd5b50346105f157806003193601126105f15760405163ed78891360e01b8152818160048173dd781a91a1081c7bdd60bc57aec3f2f76ce11e675af4908115610a0557829161094d575b5060405190602092838301848452825180915260408401948060408360051b870101940192955b8287106109215785850386f35b90919293828061093d600193603f198a82030186528851613b6e565b9601920196019592919092610914565b90503d8083833e61095e8183613c12565b8101602090818382031261089d5782516001600160401b03938482116105ed57019080601f83011215610a015781519061099782613cb9565b946109a56040519687613c12565b828652848087019360051b850101938285116109fd57858101935b8585106109d45750505050505050386108ed565b84518381116109f95787916109ee8684809487010161480b565b8152019401936109c0565b8980fd5b8780fd5b8480fd5b6040513d84823e3d90fd5b50346105f15760403660031901126105f157610a2a613b1f565b6040610a34613b35565b9260018060a01b0380931681526098602052209116600052602052602060ff604060002054166040519015158152f35b50346105f157806003193601126105f157610a94610a80614c3a565b604051918291602083526020830190613b6e565b0390f35b50346105f15760203660031901126105f1576020610ab7600435615440565b6040516001600160a01b039091168152f35b50346105f15760203660031901126105f1576004356000196101c85401818103610af1578280f35b6044925060405191634fa09b3f60e01b835260048301526024820152fd5b50346105f15760203660031901126105f157602090600435815261012d8252604060018060a01b0391205416604051908152f35b50346105f15760603660031901126105f157600435610b60613b35565b906044356001600160401b03811161089d57610b80903690600401613d69565b91806000526101fe936020948086526040600020336000528652600a604060002054161590811591610ce5575b5015610cbf576001600160a01b031690610bc78183614390565b6040516301ffc9a760e01b8152636890e5b360e01b60048201528581602481865afa908115610cb4578791610c87575b5015610c6e57836024116105ed57600483013503610c5c57828580949381946040519384928337810182815203925af190610c30613ef9565b9115610c3a578280f35b6104bc60405192839263a5fa8d2b60e01b845260048401526024830190613b6e565b60405163fe486c2b60e01b8152600490fd5b6040516370adc70360e11b815260048101839052602490fd5b610ca79150863d8811610cad575b610c9f8183613c12565b810190614910565b38610bf7565b503d610c95565b6040513d89823e3d90fd5b604051634baa2a4d60e01b81523360048201526024810183905260086044820152606490fd5b90506000805285526040600020336000528552600a60406000205416151538610bad565b50346105f15760403660031901126105f157600435906001600160401b0382116105f1576020610d65610d3f3660048601613d69565b610d4833614417565b610d506141a2565b610d603392602435923691613c4e565b614492565b6001606555604051908152f35b50346105f15760803660031901126105f157610d8c613b1f565b602435606435916001600160401b03831161089d57610db2610dce933690600401613c85565b91610dbb6141a2565b610dc58133614390565b60443591614928565b600160655580f35b50346105f157806003193601126105f157602060405160028152f35b50346105f15760203660031901126105f15760043563ffffffff81168091036105a157816040916020935261023383522054604051908152f35b50346105f15760203660031901126105f157610a94610e4c600435615475565b60405191829182613e81565b50346105f15760803660031901126105f15760043560603660231901126105a15760405190610e8682613bae565b63ffffffff60243581811681036105a157835260443581811681036105a1576020848101918252606435906001600160a01b0380831683036105a15760408701928352856000526101fe80835260406000203360005283526022604060002054161590811591610fd2575b5015610fae5784875116610fa5575b8251161580610f99575b610f875784600052610160815263ffffffff60201b6040600020948751169185549451901b1691600160401b600160e01b03905160401b169263ffffffff60e01b1617171790557f5837d55897cfc337f160a71d7b63a047abd50a3a8834f1c5d70f338846358c6d60405180610f81339582613e81565b0390a380f35b604051630d9b92f160e01b8152600490fd5b50838351161515610f0a565b60008752610f00565b6064868360405191634baa2a4d60e01b835233600484015260248301526044820152fd5b90506000805282526040600020336000528252602260406000205416151538610ef1565b50346105f15761100536613ca3565b906110108133614390565b82526101c6602052604082206001810190815483101561104a57600201548210611038575580f35b6040516393a76ea360e01b8152600490fd5b60405163447803b160e11b8152600490fd5b50346105f1576020806003193601126110f4576004356001600160401b0381116108a15761109861109284923690600401613d39565b9061553d565b60405191838301848452825180915260408401948060408360051b870101940192955b8287106110c85785850386f35b9091929382806110e4600193603f198a82030186528851613b6e565b96019201960195929190926110bb565b5080fd5b50346105f157602061111261110c36613ca3565b906140af565b604051908152f35b50346105f157806003193601126105f157602060405160108152f35b50346105f15760403660031901126105f157611150613b1f565b602435908115158092036108a1576001600160a01b0316903382146111c35733835260986020526040832082600052602052604060002060ff1981541660ff83161790556040519081527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c3160203392a380f35b604051636b3fa0d960e11b8152600490fd5b50346105f157806003193601126105f157610a946040516111f581613b93565b600681526519171899171960d11b6020820152604051918291602083526020830190613b6e565b50346105f15760203660031901126105f15760209060043581526102328252604060018060a01b0391205416604051908152f35b50346105f15760403660031901126105f157806024356004356001600160401b0382116112e55761128683923690600401613c85565b906112918133614309565b6001600160a01b03906112a390615440565b1682602083519301915af16112b6613ef9565b90156112c0575080f35b60405163a5fa8d2b60e01b8152602060048201529081906104bc906024830190613b6e565b5050fd5b50346105f157806003193601126105f15760405160208082528160605191828183015260005b8381106113315750508160006040809484010152601f80199101168101030190f35b608081015185820160400152849250810161130f565b50346105f157806003193601126105f1576020604051818152f35b50346105f15761137136613e28565b9161137c81336147a9565b60008181526101fe602090815260408083206001600160a01b0395909516808452949091528120805494909417938490556000805160206156b48339815191529080a480f35b50346105f157806003193601126105f1576101c9546040516001600160a01b039091168152602090f35b50346105f15760203660031901126105f157604081610a949282805161141181613bae565b60608152826020820152015260043581526101c66020522060026040519161143883613bae565b611441816140fc565b8352600181015460208401520154604082015260405191829182613e52565b50346105f15760e03660031901126105f1576004356001600160401b0381116110f457611491903690600401613c85565b6024356001600160401b0381116108a1576114b0903690600401613c85565b60603660431901126105a1576040516114c881613bae565b60443563ffffffff811681036105a157815260643563ffffffff811681036105a15760208201526084356001600160a01b03811681036105a157604082015260a4356001600160a01b03811690036105a15760c4356001600160401b038111610a0157611539903690600401613d39565b90916115436141a2565b855493600885901c60ff1615801590611932575b8061191a575b61190857600160ff19861617875560ff8560081c16156118f7575b60ff875460081c16156118e657600160655561159e60a4356001600160a01b03166153fd565b6101c890815491600183019055604051906115b882613bae565b81526000602082015260006040820152816000526101c6602052604060002081518051906001600160401b0382116118d05781906115f684546140c2565b601f8111611880575b50602090601f831160011461181457600092611809575b50508160011b916000199060031b1c19161781555b60208201516001820155600260408301519101557f5086d1bcea28999da9875111e3592688fbfa821db63214c695ca35768080c2fe6040518061166f339482613e52565b0390a363ffffffff815116611800575b60408101516001600160a01b031615806117ed575b610f875760ff946117479160008052610160602052604060002063ffffffff82511681549063ffffffff60201b602085015160201b1690600160401b600160e01b03604086015160401b169263ffffffff60e01b16171717905560007f5837d55897cfc337f160a71d7b63a047abd50a3a8834f1c5d70f338846358c6d60405180611720339582613e81565b0390a361173760a4356001600160a01b0316614e03565b61174260a435614e7f565b6141f8565b80611799575b505060081c161561176057600160655580f35b61ff001981541681557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a1610dce565b6117ab916117a6336153fd565b61553d565b50336000818152600080516020615714833981519152602052604081208054600219169081905591906000805160206156b48339815191528180a4388061174d565b5063ffffffff6020820151161515611694565b6000815261167f565b015190503880611616565b9250836000526020600020906000935b601f1984168510611865576001945083601f1981161061184c575b505050811b01815561162b565b015160001960f88460031b161c1916905538808061183f565b81810151835560209485019460019093019290910190611824565b909150836000526020600020601f840160051c8101602085106118c9575b90849392915b601f830160051c820181106118ba5750506115ff565b600081558594506001016118a4565b508061189e565b634e487b7160e01b600052604160045260246000fd5b6040516296bfb160e81b8152600490fd5b61ffff198516610101178755611578565b604051633d5c224160e11b8152600490fd5b50303b15158061155d5750600160ff8616141561155d565b5060ff85161515611557565b50346105f15760203660031901126105f1576040606091600435815261016060205220546040519063ffffffff80821683528160201c16602083015260018060a01b039060401c166040820152f35b50346105f15760203660031901126105f1576004356001600160a01b038116908190036110f4576119bd33614723565b806119f9575b6101cb80546001600160a01b031916909117905560405160029033906000805160206156948339815191529080610f8181614bcf565b6040516301ffc9a760e01b815262123aaf60e51b6004820152602081602481855afa908115611a63578391611a45575b506119c3576024906040519062be74ab60e51b82526004820152fd5b611a5d915060203d8111610cad57610c9f8183613c12565b38611a29565b6040513d85823e3d90fd5b50346105f15760203660031901126105f15760209060043581526102318252604060018060a01b0391205416604051908152f35b50346105f157806003193601126105f15760c06101c9546101ca54906101cb54906040519260018060a01b0391828116855260a01c6020850152818116604085015260a01c60608401528116608083015260a01c60a0820152f35b50346105f157806003193601126105f15760206101c854604051908152f35b50346105f15760a03660031901126105f1576001600160401b036004358181116108a157611b4e903690600401613c85565b916044359182116105f15750611b68903690600401613d69565b9091906001600160a01b03906064359082821682036105a15760843592831683036105a157602094610d6594611b9c6141a2565b60243590614f5c565b50346105f157600319906060368301126105f157611bc1613b1f565b6001600160401b0360243581811161089d57611be1903690600401613d39565b949091604435908111610a0157611bfc903690600401613d39565b6001600160a01b0396858816959194913387141580611dfb575b611ddd5750611c339291611c2b913691613cd0565b933691613cd0565b948315611dcb5782519186518303611db95760405191611c5283613bf7565b8683526101cb54169182611d20575b505050835b818110611cb75750507f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb611ca38495604051918291339583613fb5565b0390a480604051611cb381613bf7565b5280f35b611cc18184613f68565b5190611ccd8188613f68565b51828752609760208181526040892088600052815260406000205491838310611d0e576001958a528152604089209088600052520360406000205501611c66565b604051632fc4b76160e11b8152600490fd5b823b156105a157879285600088611d948296611d7596611d856040519a8b998a988997634058856760e11b89523060048a01523360248a0152604489015288606489015260e0608489015260e4880190613df4565b90848783030160a4880152613df4565b918483030160c4850152613b6e565b03925af1801561059557611daa575b8080611c61565b611db390613be4565b38611da3565b60405163f9532c3960e01b8152600490fd5b6040516345d40ad560e01b8152600490fd5b6040516341ce11f960e11b81529081906104bc903360048401614bb5565b508688526098602052604088203360005260205260ff6040600020541615611c16565b50346105f15760203660031901126105f15760209060043581526101c78252604060018060a01b0391205416604051908152f35b50346105f15760603660031901126105f1576004356001600160401b0381116110f457611e83903690600401613d69565b91906044356001600160a01b03811691908290036105a157611ead604091602095610d4833614417565b8084526102318552922080546001600160a01b03191690911790556001606555604051908152f35b50346105f15760403660031901126105f1576004356024356001600160a01b038116908190036108a157611f076141a2565b611f118233614309565b81835261012d60209081526040842080546001600160a01b031916831790559080611fbb575b6040513382857f5010f780a0de79bcfb9f3d6fec3cfe29758ef5c5800d575af709bc590bd78ade8880a48484611f9b5750507f56e810c8cae84731149f628981d25769a084570b9ba6eebf3c32879e3dce56099250604051908152a1600160655580f35b60409250836000805160206156d4833981519152948352820152a2610dce565b6040516301ffc9a760e01b8152633de3f32360e11b60048201528281602481855afa908115612025578591612008575b50611f37576024906040519063da755beb60e01b82526004820152fd5b61201f9150833d8511610cad57610c9f8183613c12565b38611feb565b6040513d87823e3d90fd5b50346105f15760203660031901126105f1576020610ab7600435614899565b50346105f15761205e36613e28565b6001600160a01b0392909183163381148061217e575b1561216f575b60008281526101fe6020818152604080842085855282528320805496199096169586905594909391839083906000805160206156b48339815191529080a4159182612160575b8261213d575b50506120d0578280f35b7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09160006040926101c99283549360018060a01b031985169055845193168352820152a1600060405160008051602061569483398151915233918061213481614bcf565b0390a338808280f35b9091508480528252604084209060005281526002604060002054161538806120c6565b6101c9548516821492506120c0565b61217982336147a9565b61207a565b508185526101fe602052604085203360005260205282806040600020541614612074565b50346105f157806003193601126105f1576000805160206156f4833981519152546040516001600160a01b039091168152602090f35b50346105f157806003193601126105f1577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036122315760206040516000805160206156f48339815191528152f35b604051635e4c25f160e01b8152600490fd5b5060403660031901126105f157612258613b1f565b6024356001600160401b0381116108a157612277903690600401613c85565b906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116903082146124a4576000805160206156f483398151915290808254169283036124925783926122d133614723565b604051906321f7434760e01b825281806122f2602097889460048401614bb5565b0381857f0000000000000000000000000000000000000000000000000000000000000000165afa908115610cb4578791612475575b50156105ed577f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615612367575050506123649150613eb2565b80f35b8316906040516352d1902d60e01b81528381600481865afa60009181612446575b5061239f5760405163e5ec176960e01b8152600490fd5b03612434576123ad83613eb2565b604051907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a283511580159061242c575b6123ed575b5050505080f35b823b1561241d575082600092839261241395519201905af461240d613ef9565b90614086565b50388080806123e6565b63369891e760e01b8152600490fd5b5060016123e1565b6040516308373ebf60e41b8152600490fd5b90918582813d831161246e575b61245d8183613c12565b810103126105f15750519038612388565b503d612453565b61248c9150843d8611610cad57610c9f8183613c12565b38612327565b6040516364cd8d1960e01b8152600490fd5b604051631932df4560e01b8152600490fd5b50346105f15760403660031901126105f1576001600160401b036004358181116108a157366023820112156108a1576124f9903690602481600401359101613d96565b906024359081116108a157612512903690600401613d1e565b815191815183036125a45761252683613cb9565b936125346040519586613c12565b838552601f1961254385613cb9565b013660208701375b8381106125685760405160208082528190610a9490820188613df4565b6001906125936001600160a01b036125808386613f68565b511661258c8387613f68565b5190613f29565b61259d8288613f68565b520161254b565b60405163133933f760e21b8152600490fd5b50346105f157806003193601126105f1576125d0336153a3565b801561264e575b15612628574760018060a01b036101ca8380808086868654166204baf0f16125fd613ef9565b5015612607578380f35b604493505416906040519163292264c360e21b835260048301526024820152fd5b604051634baa2a4d60e01b81523360048201526000602482015260206044820152606490fd5b50336000908152600080516020615714833981519152602052604090205460221615156125d7565b50346105f1576020806003193601126110f457612691613b1f565b6001600160a01b03917f000000000000000000000000000000000000000000000000000000000000000083163081146124a4576000805160206156f48339815191529084825416908103612492578284612709926126ee33614723565b6040516321f7434760e01b8152938492839260048401614bb5565b0381887f0000000000000000000000000000000000000000000000000000000000000000165afa908115612863578691612846575b5015610a01576040519361275185613bf7565b8585527f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561278b575050506123649150613eb2565b8316906040516352d1902d60e01b81528381600481865afa60009181612817575b506127c35760405163e5ec176960e01b8152600490fd5b03612434576127d183613eb2565b604051907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b600080a283511580159061280f576123ed575050505080f35b5060006123e1565b90918582813d831161283f575b61282e8183613c12565b810103126105f157505190386127ac565b503d612824565b61285d9150833d8511610cad57610c9f8183613c12565b3861273e565b6040513d88823e3d90fd5b5060a03660031901126105f157612883613b1f565b906064356001600160401b0381116110f4576128a3903690600401613d39565b6084356001600160401b03811161089d576128c56128d7913690600401613d69565b9390926128d06141a2565b3691613d96565b916128ed6024356001600160a01b038716614390565b6602c2ad68fd900092836044358102046044350361315b576024358552610231602052604085205485946001600160a01b03909116918215613133575b8051158061310b576130f757602001516001600160a01b03165b6001600160a01b038116156130d0575b61295f602435614899565b916001600160a01b038316156130a8575b602435885261023260205260408820546001600160a01b03169182156130a0575b61299961486e565b5060443582023410156129b857604051633b78763760e21b8152600490fd5b34604435830203612f9b576129cb61486e565b506129d461486e565b63028df28c80825262d91c14602083018181526040840182815260608501928352919260443569070d31df32dd6ccac00081029190880280159083049091141715612f875791612a72612a7292612a7a95946305f5e100809104885280612a4083516044358d026140af565b04825280612a5385516044358d026140af565b048452612a6586516044358c026140af565b0485528651905190613f92565b905190613f92565b6044358402908103908111612f735760808201525b80519485612f6d575089935b6020820151604083015160608401516080909401519490917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163b15612f2e5760405163faa3516f60e01b81526001600160a01b03988916600482015260248101999099529887166044808a019190915260648901999099528616608488015260a4870152841660c486015260e48501527f00000000000000000000000000000000000000000000000000000000000000008316610104850152610124840152919287928492610144928492903502907f0000000000000000000000000000000000000000000000000000000000000000165af1801561202557612f3a575b50612be89184916040519384928392636890e5b360e01b84523360048501526024356024850152604435604485015287606485015260a0608485015260a484019161484d565b0381836001600160a01b0389165af1908115611a63578391612dbc575b5051825b8151811015612d6e57612c1c8183613f68565b5151612c27816148dc565b612c30816148dc565b60018103612cc557506020612c458284613f68565b510151604081805181010312610a01576040612c63602083016148fc565b91015190818511612cb35785918291829182916001600160a01b03166204baf0f1612c8c613ef9565b5015612ca157612c9c905b6148cd565b612c09565b6040516338dcead760e21b8152600490fd5b604051631913cf3760e21b8152600490fd5b80612cd16002926148dc565b03612d65576020612ce28284613f68565b51015190606082805181010312610a0157612cff602083016148fc565b91606060408201519101519060243515159081612d58575b50612d4657612c9c92612c979160405191612d3183613bf7565b888352602435906001600160a01b0316614928565b604051634cdcfbf960e01b8152600490fd5b9050602435141538612d17565b612c9c906148cd565b6040805160443581523460208201528591602435916001600160a01b0389169133917fb362243af1e2070d7d5bf8d713f2e0fab64203f1b71462afbe20572909788c5e9190a4600160655580f35b3d91508184823e612dcd8282613c12565b602081838101031261089d578051906001600160401b038211610a015760408282018483010312610a015760405192612e0584613b93565b828201516001600160401b038111612f3657818301601f8286860101011215612f365780848401015190612e3882613cb9565b92612e466040519485613c12565b828452602084019181860160208560051b838a8a01010101116109f9576020818888010101925b60208560051b838a8a010101018410612e9a57505050505090602092918452010151602082015238612c05565b83516001600160401b038111612f32576040888a0184018201858a0103601f190112612f325760405190612ecd82613b93565b602081858c8c01010101516003811015612f2e578252604081858c8c0101010151906001600160401b038211612f2e579260209392612f1d8b868096958f968a83988d860195010101010161480b565b838201528152019401939050612e6d565b8d80fd5b8b80fd5b8680fd5b6001600160401b03819592939511612f59576040529290612be8612ba2565b634e487b7160e01b82526041600452602482fd5b93612a9b565b634e487b7160e01b8b52601160045260248bfd5b634e487b7160e01b8e52601160045260248efd5b9650612fa561486e565b50612fae61486e565b8881526301b3f708806020830152604082015262d91c1460608201526001604435830215171561308c578881526305f5e10080612ff3602084015160443586026140af565b0460208301528061300c604084015160443586026140af565b046040830152613024606083015160443585026140af565b04606082015261305661304b6130408351602085015190613f92565b604084015190613f92565b606083015190613f92565b6044358302908103908111613078576080820152966044358202340397612a8f565b634e487b7160e01b8a52601160045260248afd5b634e487b7160e01b89526011600452602489fd5b839250612991565b7f00000000000000000000000000000000000000000000000000000000000000009250612970565b507f0000000000000000000000000000000000000000000000000000000000000000612954565b634e487b7160e01b87526032600452602487fd5b50507f0000000000000000000000000000000000000000000000000000000000000000612944565b7f0000000000000000000000000000000000000000000000000000000000000000925061292a565b634e487b7160e01b85526011600452602485fd5b50346105f15760403660031901126105f157604060209161318e613b35565b60043582526101fe84528282206001600160a01b03909116825283522054604051908152f35b50346105f15760a03660031901126105f1576131ce613b1f565b6131d6613b35565b6001600160401b0390604435828111610a01576131f7903690600401613d1e565b916064358181116105ed57613210903690600401613d1e565b906084359081116105ed57613229903690600401613c85565b926001600160a01b0390858216331415806134ec575b6105b8578051835181036125a457828516156105a657826101cb541680613447575b50875b8181106133ca57505060405182851690838816907f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb3391806132a7898883613fb5565b0390a4833b6132b4578680f35b60405163bc197c8160e01b808252336004830152968316602482015260a0604482015294859384926132ea9060a4850190613df4565b8381036003190160648501526132ff91613df4565b82810360031901608484015261331491613b6e565b0392169181865a94602095f18391816133aa575b506133895750506001613339613ffa565b6308c379a014613352575b610475573880808080808680f35b61335a614018565b806133655750613344565b60405162461bcd60e51b8152602060048201529081906104bc906024830190613b6e565b6001600160e01b0319161461046b57604051633fbfe7f560e21b8152600490fd5b6133c391925060203d811161050b576104fc8183613c12565b9038613328565b6133d48184613f68565b51906133e08187613f68565b51828b5260978060205260408c20878c168d5260205260408c205490828210610512578460408e6001978152836020528c8b8383209116825260205220613428858254613f92565b90558d5260205260408c20878c168d526020520360408b205501613264565b803b156134e857604051634058856760e11b81523060048201523360248201528885166044820152868516606482015260e0608482015290899082908183816134bf8d6134ad8d61349b60e486018e613df4565b8581036003190160a487015290613df4565b8381036003190160c485015290613b6e565b03925af180156134dd5715613261576134d790613be4565b38613261565b6040513d8b823e3d90fd5b8880fd5b50818616875260986020526040872033885260205260ff6040882054161561323f565b50346105f15761352b61353c61352436613ca3565b9290615475565b9163ffffffff6020840151166140af565b907f000000000000000000000000000000000000000000000000000000000000000090811561358357604080945060018060a01b0391015116918351928352046020820152f35b634e487b7160e01b84526012600452602484fd5b50346105f15760603660031901126105f1576020906135b4613b1f565b60243582526101fe8352604082209060018060a01b0316825282526040604435600217912054161515604051908152f35b50346105f15760403660031901126105f1576001600160401b03906004356024358381116108a15761361b903690600401613c85565b926136268233614309565b81156108a15760405191806000805160206156d4833981519152602094858152806136538782018a613b6e565b0390a283526101c682526040832091845191821161375e5761367583546140c2565b601f811161371b575b5080601f83116001146136b957508394829394926136ae575b50508160011b916000199060031b1c191617905580f35b015190503880613697565b90601f198316958486528286209286905b888210613703575050836001959697106136ea575b505050811b01905580f35b015160001960f88460031b161c191690553880806136df565b806001859682949686015181550195019301906136ca565b838552818520601f840160051c810191838510613754575b601f0160051c01905b818110613749575061367e565b85815560010161373c565b9091508190613733565b634e487b7160e01b84526041600452602484fd5b50346105f157806003193601126105f157602060405160088152f35b50346105f15760403660031901126105f1576004356137ab613b35565b8183526102316020819052604084205491926001600160a01b0392831633036137ed5784526020526040832080546001600160a01b0319169190921617905580f35b604051632afb0ecf60e01b8152600490fd5b50346105f15760203660031901126105f157613819613b1f565b61382233614723565b8180526101fe602090815260408084206001600160a01b0384168552909152822054600216156138555761236490614e03565b60405163131dd3a760e31b8152600490fd5b50346105f157806003193601126105f15760206040516602c2ad68fd90008152f35b50346105f15760203660031901126105f1576138a3613b1f565b6138ac336153a3565b80156138e7575b156138c15761236490614e7f565b604051634baa2a4d60e01b81523360048201526024810183905260206044820152606490fd5b508180526101fe60205260408220338352602052602260408320541615156138b3565b50346105f15760203660031901126105f157610a94610a80600435614d85565b50346105f157806003193601126105f15760405181610193805461394d816140c2565b808552916001918083169081156139b25750600114613977575b610a9485610a8081890382613c12565b835260208084209095505b82841061399f5750505081610a9493610a80928201019338613967565b8054858501870152928501928101613982565b9050610a949650610a809450602092508593915060ff191682840152151560051b8201019338613967565b50346105f15760203660031901126105f15760043563ffffffff60e01b81168091036110f45760209063152a902d60e11b8114908115613aca575b8115613a8a575b8115613a79575b8115613a68575b8115613a57575b8115613a46575b506040519015158152f35b63015f004960e71b14905082613a3b565b631acf898160e11b81149150613a34565b63709e537f60e01b81149150613a2d565b63ed78891360e01b81149150613a26565b9050636cdb3d1360e11b81148015613aba575b8015613aaa575b90613a1f565b506301ffc9a760e01b8114613aa4565b506303a24d0760e21b8114613a9d565b633b076a1160e21b81149150613a18565b50346105f157806003193601126105f157602090604051908152f35b50346105f15760403660031901126105f1576020611112613b16613b1f565b60243590613f29565b600435906001600160a01b03821682036105a157565b602435906001600160a01b03821682036105a157565b60005b838110613b5e5750506000910152565b8181015183820152602001613b4e565b90602091613b8781518092818552858086019101613b4b565b601f01601f1916010190565b604081019081106001600160401b038211176118d057604052565b606081019081106001600160401b038211176118d057604052565b60a081019081106001600160401b038211176118d057604052565b6001600160401b0381116118d057604052565b602081019081106001600160401b038211176118d057604052565b90601f801991011681019081106001600160401b038211176118d057604052565b6001600160401b0381116118d057601f01601f191660200190565b929192613c5a82613c33565b91613c686040519384613c12565b8294818452818301116105a1578281602093846000960137010152565b9080601f830112156105a157816020613ca093359101613c4e565b90565b60409060031901126105a1576004359060243590565b6001600160401b0381116118d05760051b60200190565b9291613cdb82613cb9565b91613ce96040519384613c12565b829481845260208094019160051b81019283116105a157905b828210613d0f5750505050565b81358152908301908301613d02565b9080601f830112156105a157816020613ca093359101613cd0565b9181601f840112156105a1578235916001600160401b0383116105a1576020808501948460051b0101116105a157565b9181601f840112156105a1578235916001600160401b0383116105a157602083818601950101116105a157565b9291613da182613cb9565b91613daf6040519384613c12565b829481845260208094019160051b81019283116105a157905b828210613dd55750505050565b81356001600160a01b03811681036105a1578152908301908301613dc8565b90815180825260208080930193019160005b828110613e14575050505090565b835185529381019392810192600101613e06565b60609060031901126105a157600435906024356001600160a01b03811681036105a1579060443590565b6020815260606040613e6f84518360208601526080850190613b6e565b93602081015182850152015191015290565b9190916040606082019363ffffffff80825116845260208201511660208401528160018060a01b0391015116910152565b803b15613ee7576000805160206156f483398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405163529880eb60e01b8152600490fd5b3d15613f24573d90613f0a82613c33565b91613f186040519384613c12565b82523d6000602084013e565b606090565b6001600160a01b0316908115613f5657600052609760205260406000209060005260205260406000205490565b604051632188330d60e21b8152600490fd5b8051821015613f7c5760209160051b010190565b634e487b7160e01b600052603260045260246000fd5b91908201809211613f9f57565b634e487b7160e01b600052601160045260246000fd5b9091613fcc613ca093604084526040840190613df4565b916020818403910152613df4565b908160209103126105a157516001600160e01b0319811681036105a15790565b60009060033d1161400757565b905060046000803e60005160e01c90565b600060443d10613ca057604051600319913d83016004833e81516001600160401b03918282113d6024840111176140755781840194855193841161407d573d850101602084870101116140755750613ca092910160200190613c12565b949350505050565b50949350505050565b1561408e5790565b80511561409d57805190602001fd5b6040516350a28c9b60e11b8152600490fd5b81810292918115918404141715613f9f57565b90600182811c921680156140f2575b60208310146140dc57565b634e487b7160e01b600052602260045260246000fd5b91607f16916140d1565b9060405191826000825492614110846140c2565b90818452600194858116908160001461417f575060011461413c575b505061413a92500383613c12565b565b9093915060005260209081600020936000915b81831061416757505061413a9350820101388061412c565b8554888401850152948501948794509183019161414f565b91505061413a94506020925060ff191682840152151560051b820101388061412c565b6002606554146141b3576002606555565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b9081516001600160401b0381116118d0576101939061421782546140c2565b601f81116142c1575b50602080601f831160011461425d575081929394600092614252575b50508160011b916000199060031b1c1916179055565b01519050388061423c565b90601f198316958460005282600020926000905b8882106142a957505083600195969710614290575b505050811b019055565b015160001960f88460031b161c19169055388080614286565b80600185968294968601518155019501930190614271565b600083815260208120601f840160051c810192602085106142ff575b601f0160051c01915b8281106142f4575050614220565b8181556001016142e6565b90925082906142dd565b9060008181526101fe9081602052604081209360018060a01b0316938482526020526012604082205416159182159261436d575b505015614348575050565b6064925060405191634baa2a4d60e01b83526004830152602482015260106044820152fd5b60129250906040918180526020528181208582526020522054161515388061433d565b9060008181526101fe9081602052604081209360018060a01b031693848252602052600660408220541615918215926143f4575b5050156143cf575050565b6064925060405191634baa2a4d60e01b83526004830152602482015260046044820152fd5b6006925090604091818052602052818120858252602052205416151538806143c4565b614420816153d0565b8015614461575b1561442f5750565b604051634baa2a4d60e01b81526001600160a01b03909116600480830191909152600060248301526044820152606490fd5b506001600160a01b038116600090815260008051602061571483398151915260205260409020546006161515614427565b9092916101c891825492600184019055604051946144af86613bae565b81865280602087015260006040870152836000526101c660205260406000209580519687516001600160401b0381116118d0576144ec82546140c2565b98601f8a116146db575b87989950600097969750602090601f831160011461464557928288937f1b944478023872bf91b25a13fdba3a686fdb1bf4dbb872f850240fad4b8cc068989693614601989660009261463a575b50508160011b916000199060031b1c19161781555b60208201516001820155600260408301519101557f5086d1bcea28999da9875111e3592688fbfa821db63214c695ca35768080c2fe6040518061459c339482613e52565b0390a360008581526101fe602090815260408083206001600160a01b039990991680845298909152812080546002179081905590879087906000805160206156b48339815191529080a4815161460d575b604051928392604084526040840190613b6e565b9060208301520390a390565b846000805160206156d483398151915260405160208152806146326020820187613b6e565b0390a26145ed565b015190503880614543565b908360005260206000209160005b601f19851681106146c05750837f1b944478023872bf91b25a13fdba3a686fdb1bf4dbb872f850240fad4b8cc0689896936146019896936001938c97601f198116106146a7575b505050811b018155614558565b015160001960f88460031b161c1916905538808061469a565b8183015184558b995060019093019260209283019201614653565b826000526020600020601f830160051c81019a60208410614719575b601f0160051c01995b8a811061470d57506144f6565b60008155600101614700565b909a508a906146f7565b6001600160a01b031660008181526000805160206157148339815191526020526040812054600216158015906101fe90614787575b5015614762575050565b6064925060405191634baa2a4d60e01b83526004830152602482015260026044820152fd5b9050818052602052604081208282526020526002604082205416151538614758565b9060008181526101fe9081602052604081209360018060a01b031693848252602052600260408220541615918215926147e8575b505015614762575050565b6002925090604091818052602052818120858252602052205416151538806147dd565b81601f820112156105a157805161482181613c33565b9261482f6040519485613c12565b818452602082840101116105a157613ca09160208085019101613b4b565b908060209392818452848401376000828201840152601f01601f1916010190565b6040519061487b82613bc9565b60006080838281528260208201528260408201528260608201520152565b6001600160a01b039081906040906148b090615475565b015116806148c857506101ca541680613ca057503090565b905090565b6000198114613f9f5760010190565b600311156148e657565b634e487b7160e01b600052602160045260246000fd5b51906001600160a01b03821682036105a157565b908160209103126105a1575180151581036105a15790565b909291926000918183526101c694602094868652604096878620600281015460016149538683613f92565b920154809211614b8c5750508486528652600287862001614975838254613f92565b90556001600160a01b0383811693908415614b7b576101cb541680614b02575b508486526097875287862084875287528786206149b3848254613f92565b905583868951878152858a8201527fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f628b3392a43b6149f5575b50505050505050565b614a3792869286895180968195829463f23a6e6160e01b9a8b85523360048601528560248601526044850152606484015260a0608484015260a4830190613b6e565b03925af1839181614ae3575b50614aba575050600191614a55613ffa565b6308c379a014614a84575b5050614a7457505b388080808080806149ec565b516377d5b49160e11b8152600490fd5b614a8c614018565b9182614a985750614a60565b846104bc91505192839262461bcd60e51b845260048401526024830190613b6e565b6001600160e01b031916039150614ad390505750614a68565b51633fbfe7f560e21b8152600490fd5b614afb919250853d871161050b576104fc8183613c12565b9038614a43565b803b15612f3657868951809263417b2f9760e11b82523060048301523360248301528260448301528760648301528860848301528660a483015260e060c4830152818381614b5360e482018a613b6e565b03925af18015614b71571561499557614b6b90613be4565b38614995565b89513d89823e3d90fd5b88516310227bb960e31b8152600490fd5b6084918791868c5193631255c8fd60e01b85526004850152602484015260448301526064820152fd5b6001600160a01b0391821681529116602082015260400190565b6101c9546001600160a01b03808216835260a091821c60208401526101ca548082166040850152821c60608401526101cb549081166080840152811c9082015260c00190565b906020828203126105a15781516001600160401b0381116105a157613ca0920161480b565b6000805261012d6020527fa581b17bfc4d6578e300cafbf34fd2dc1fef0270d8c73f88a99dcde2859a6639546001600160a01b039081168015614ccc575b1680614c875750613ca0614cda565b60006004916040519283809263e8a3d48560e01b82525afa90811561059557600091614cb1575090565b613ca0913d8091833e614cc48183613c12565b810190614c15565b508060406000205416614c78565b60008080526101c69081602052604091614cf6838320546140c2565b614d75575080805261012d602052818120546001600160a01b039190819083168015614d69575b60248551809581936303a24d0760e21b8352856004840152165afa928315614d5f57508092614d4b57505090565b613ca092503d8091833e614cc48183613c12565b51903d90823e3d90fd5b50828482205416614d1d565b81805260205220613ca0906140fc565b6000908082526101c680602052614d9f60408420546140c2565b614df05750816001600160a01b03614db683615440565b16916024604051809481936303a24d0760e21b835260048301525afa918215614de4578092614d4b57505090565b604051903d90823e3d90fd5b91613ca0926040928252602052206140fc565b6101c980546001600160a01b038381166001600160a01b03198316179092556040517f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09390928392614e5792911683614bb5565b0390a16000604051600080516020615694833981519152339180614e7a81614bcf565b0390a3565b6101ca80546001600160a01b0319166001600160a01b0390921691909117905560405160019033906000805160206156948339815191529080614e7a81614bcf565b91909160a0818403126105a157604051906001600160401b039060a08301828111848210176118d05760405282948151845260208201518381116105a15781614f0b91840161480b565b602085015260408201518381116105a15781614f2891840161480b565b6040850152614f39606083016148fc565b606085015260808201519283116105a157608092614f57920161480b565b910152565b91956001600160a01b0394909390851691821561539157614fa496614fbb87926101c8549460409b8c519b8c99630f09500f60e31b8b5260c060048c015260c48b0190613b6e565b9260248a01526003198984030160448a015261484d565b9230606487015260848601521660a4840152826000968792038173dd781a91a1081c7bdd60bc57aec3f2f76ce11e675af49384156153875785928690879661522b575b506020928385019163ffffffff808451168a52610233918287528b8b2054615216578b7f06c5a80e592816bd4f60093568e69affa68b5e378a189b2f59a1121703de47de888361509f8a9551918381015161508c8783015197606084019861507f60808c8c51169601519460a084519a8b9a8b528a015260a0890190613b6e565b9187830390880152613b6e565b9160608501528382036080850152613b6e565b0390a15116946150ae866153d0565b80156151f7575b156151d35760806150cf8d8a015160608b01513391614492565b9801511693878b5261023187528b8b2060018060a01b03199586825416179055511689528452848989205584885261023284528888209182541617905561511685516154f3565b96865b865181101561515a578061513a615133615155938a613f68565b51306155bf565b615144828c613f68565b5261514f818b613f68565b506148cd565b615119565b5091945092955081948281526101fe8086528282203383528652600219838320541692848352818752808320338452875283818420556000805160206156b4833981519152933386868680a48483528187528083208684528752600281842054179687928685528152818420908785525282205580a490565b6064868c8e5191634baa2a4d60e01b83526004830152602482015260046044820152fd5b508a80526101fe87528b8b20868c52875260068c8c20541615156150b5565b50969998975050509250505051168152205490565b93505093503d8086843e61523f8184613c12565b8201936060838603126105ed578251946001600160401b03958681116109fd57840160a0818303126109fd5788519161527783613bc9565b81518881116109f9578161528c918401614ec1565b83526020918281015163ffffffff8116810361538357838501528a81015189811161538357816152c3846080936152d7950161480b565b8d87015260608101516060870152016148fc565b6080840152818601518881116109f957816152f3918801614ec1565b958a8101519089821161538357019080601f830112156109f95781519061531982613cb9565b996153268d519b8c613c12565b828b5284808c019360051b8501019382851161537f57858101935b85851061535657505050505050509238614ffe565b845183811161537b5787916153708684809487010161480b565b815201940193615341565b8e80fd5b8c80fd5b8a80fd5b86513d87823e3d90fd5b6040516329e96fa360e01b8152600490fd5b6001600160a01b031660009081526000805160206157148339815191526020526040902054602216151590565b6001600160a01b031660009081526000805160206157148339815191526020526040902054600616151590565b6001600160a01b031660008181526000805160206157148339815191526020526040812080546002179081905591906000805160206156b48339815191528180a4565b600090815261012d60205260409020546001600160a01b03908116919082156154665750565b60008080526040902054169150565b604080519161548383613bae565b6000908184528183602095828782015201528152816101609182855260018060a01b03928383832054841c166154e457818052855220928251936154c685613bae565b549063ffffffff808316865282821c1690850152821c169082015290565b5020928251936154c685613bae565b906154fd82613cb9565b61550a6040519182613c12565b828152809261551b601f1991613cb9565b019060005b82811061552c57505050565b806060602080938501015201615520565b9190615548816154f3565b9260005b82811061555857505050565b8060051b820135601e19833603018112156105a1578201908135916001600160401b0383116105a15760200182360381136105a15761559f6155a5916155ba943691613c4e565b306155bf565b6155af8288613f68565b5261514f8187613f68565b61554c565b90613ca091600080604051936155d485613bae565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c6020860152660819985a5b195960ca1b6040860152602081519101845af461561f613ef9565b9290156156805750815115615632575090565b3b1561563b5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156133655750805190602001fdfe3be6d3a1d957610f7e900c66889b874cdc9f0c22901aa8be6ec3d2d04c14ca0f35fb03d0d293ef5b362761900725ce891f8f766b5a662cdd445372355448e7ca6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5f4301e3e862ad13c0503d3de32ba4e2e40c90733d1da23c9df4d0addbcf6508a26469706673582212206843a16959922adfca8320794900af17c29dda6c316b4a58f34c0e68cd0161d064736f6c63430008110033000000000000000000000000ce9f2e8eafa11637f8a1cb60ae8aac601ae30f2d000000000000000000000000bc50029836a59a4e5e1bb8988272f46eba0f99000000000000000000000000007777777f279eba3d3ad8f4e708545291a6fdba8b
0x000000000000000000000000ce9f2e8eafa11637f8a1cb60ae8aac601ae30f2d000000000000000000000000bc50029836a59a4e5e1bb8988272f46eba0f99000000000000000000000000007777777f279eba3d3ad8f4e708545291a6fdba8b
----Decoded View------------Arg [0] : _mintFeeRecipient (address): 0xCE9F2e8EaFa11637F8A1CB60AE8AaC601Ae30f2DArg [1] : _upgradeGate (address): 0xbC50029836A59A4E5e1Bb8988272F46ebA0F9900Arg [2] : _protocolRewards (address): 0x7777777F279eba3d3Ad8F4E708545291A6fDBA8B
----Encoded View------------Arg [0] : 0x000000000000000000000000ce9f2e8eafa11637f8a1cb60ae8aac601ae30f2dArg [1] : 0x000000000000000000000000bc50029836a59a4e5e1bb8988272f46eba0f9900Arg [2] : 0x0000000000000000000000007777777f279eba3d3ad8f4e708545291a6fdba8b