[ { "inputs": [ { "internalType": "uint256", "name": "version", "type": "uint256" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [ { "internalType": "Feature", "name": "", "type": "uint128" }, { "internalType": "Nonce", "name": "", "type": "uint32" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "DeployFailed", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "current", "type": "uint256" }, { "internalType": "uint256", "name": "next", "type": "uint256" } ], "name": "DidNotIncrementVersion", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "ERC721InvalidOwner", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ERC721NonexistentToken", "type": "error" }, { "inputs": [ { "internalType": "Feature", "name": "", "type": "uint128" } ], "name": "FeatureInitialized", "type": "error" }, { "inputs": [ { "internalType": "Feature", "name": "", "type": "uint128" } ], "name": "FeatureNotInitialized", "type": "error" }, { "inputs": [ { "internalType": "Nonce", "name": "", "type": "uint32" } ], "name": "FutureNonce", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "current", "type": "uint256" }, { "internalType": "uint256", "name": "next", "type": "uint256" } ], "name": "IncrementedVersionTooMuch", "type": "error" }, { "inputs": [], "name": "InitializationFailed", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "expected", "type": "address" }, { "internalType": "address", "name": "actual", "type": "address" } ], "name": "InterferedWithImplementation", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "expected", "type": "uint256" }, { "internalType": "uint256", "name": "actual", "type": "uint256" } ], "name": "InterferedWithVersion", "type": "error" }, { "inputs": [], "name": "NoInstance", "type": "error" }, { "inputs": [], "name": "OnlyProxy", "type": "error" }, { "inputs": [], "name": "PermissionDenied", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "expected", "type": "address" }, { "internalType": "address", "name": "actual", "type": "address" } ], "name": "RollbackFailed", "type": "error" }, { "inputs": [ { "internalType": "uint256", "name": "oldVersion", "type": "uint256" }, { "internalType": "uint256", "name": "newVersion", "type": "uint256" } ], "name": "VersionMismatch", "type": "error" }, { "inputs": [], "name": "ZeroAddress", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "prev", "type": "address" }, { "indexed": true, "internalType": "address", "name": "curr", "type": "address" } ], "name": "AdminChanged", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "Feature", "name": "", "type": "uint128" }, { "indexed": true, "internalType": "address", "name": "", "type": "address" }, { "indexed": false, "internalType": "uint40", "name": "", "type": "uint40" } ], "name": "Authorized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "Feature", "name": "", "type": "uint128" }, { "indexed": true, "internalType": "Nonce", "name": "", "type": "uint32" }, { "indexed": true, "internalType": "address", "name": "", "type": "address" } ], "name": "Deployed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "", "type": "address" } ], "name": "OwnershipPending", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "", "type": "string" }, { "indexed": true, "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "PermanentURI", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "Feature", "name": "", "type": "uint128" }, { "indexed": true, "internalType": "Nonce", "name": "", "type": "uint32" }, { "indexed": true, "internalType": "address", "name": "", "type": "address" } ], "name": "Removed", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "Feature", "name": "", "type": "uint128" } ], "name": "RemovedAll", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "implementation", "type": "address" } ], "name": "Upgraded", "type": "event" }, { "inputs": [], "name": "acceptOwnership", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" }, { "internalType": "address", "name": "auth", "type": "address" }, { "internalType": "uint40", "name": "deadline", "type": "uint40" } ], "name": "authorize", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" } ], "name": "authorized", "outputs": [ { "internalType": "address", "name": "auth", "type": "address" }, { "internalType": "uint40", "name": "deadline", "type": "uint40" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "instance", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" }, { "internalType": "bytes", "name": "initCode", "type": "bytes" } ], "name": "deploy", "outputs": [ { "internalType": "address", "name": "predicted", "type": "address" }, { "internalType": "Nonce", "name": "thisNonce", "type": "uint32" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "instance", "type": "address" } ], "name": "deployInfo", "outputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" }, { "internalType": "Nonce", "name": "nonce", "type": "uint32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" } ], "name": "descriptionHash", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "getApproved", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "implementation", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "initialOwner", "type": "address" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "isApprovedForAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "bytes[]", "name": "datas", "type": "bytes[]" } ], "name": "multicall", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" } ], "name": "next", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "ownerOf", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pendingOwner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" } ], "name": "prev", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "rejectOwnership", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "instance", "type": "address" } ], "name": "remove", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" }, { "internalType": "Nonce", "name": "nonce", "type": "uint32" } ], "name": "remove", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" } ], "name": "removeAll", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "Feature", "name": "feature", "type": "uint128" }, { "internalType": "string", "name": "description", "type": "string" } ], "name": "setDescription", "outputs": [ { "internalType": "string", "name": "content", "type": "string" } ], "stateMutability": "nonpayable", "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": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "tokenId", "type": "uint256" } ], "name": "tokenURI", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" } ], "name": "upgrade", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newImplementation", "type": "address" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "upgradeAndCall", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "version", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" } ]
60c03461016b576001600160401b0390601f612d7e38819003918201601f1916830191848311848410176101455780849260209460405283398101031261016b57513060805260a08190526001600160401b0319111561015957604051602081017fc5f61c6a41b2ffabe4e053ff04a445f2a28ea659e9d1b7b2440ee0caf369a949815260208252604082019282841090841117610145578260405260ff1991519020167fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e8009081036101315760015f5260205260405f2060036004820191011161011d57612c0e90816101708239608051818181610cce015281816126680152612aee015260a0518181816109970152818161153c01526118fd0152f35b634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52600160045260245ffd5b634e487b7160e01b5f52604160045260245ffd5b634e487b715f5260116020526024601cfd5b5f80fdfe60406080815260049081361015610014575f80fd5b5f3560e01c806301ffc9a714611c1f5780630476baab146119a157806306fdde0314610d74578063081812fc1461195d5780630900f01014611895578063108a686c1461170857806329092d0e146116c15780632a6a833b146114ba5780632bb83987146114165780633960379b1461139957806354fd4d501461133c5780635c60da1b146112cb578063633a506c1461126d5780636352211e1461120d57806370a08231146111c3578063715018a61461109257806372ba306f1461102b57806374bcde5114610f1357806379ba509714610df25780638da5cb5b14610d7957806395d89b4114610d74578063ac9650d814610c57578063ada52c2614610b0a578063c4d66de81461093f578063c87b56dd146108a5578063e2603dc214610786578063e30c397814610715578063e985e9c5146106cb578063f160fb0e146102d3578063f19f32461461024a5763f2fde38b14610171575f80fd5b346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576101a8611fa0565b6101b0612444565b73ffffffffffffffffffffffffffffffffffffffff8116801561021e57602093507fd6aad444c90d39fb0eee1c6e357a7fad83d63f719ac5f880445a2beb0ff3ab585f80a27f6ed8ad4e485c433a46d43a225e2ebe6a14259468c9e0ee3a0c38eefca7d49f56555160018152f35b5050517fd92e233d000000000000000000000000000000000000000000000000000000008152fd5b5f80fd5b5034610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657602090610284612a73565b5f7fd6aad444c90d39fb0eee1c6e357a7fad83d63f719ac5f880445a2beb0ff3ab588180a25f7f6ed8ad4e485c433a46d43a225e2ebe6a14259468c9e0ee3a0c38eefca7d49f56555160018152f35b50906102de36611d93565b9190926102ea826128f2565b600281018054948763ffffffff9260038489169161030b868b861c16612a30565b958691818316809c7fffffffffffffffffffffffffffffffffffffffff00000000ffffffff000000006bffffffff0000000000000000868a1b1691161717905516860101817fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000082541617905580848115968715610681575b5063ffffffff164660401b7fffffffffffffffffffffffffffffffff0000000000000000000000000000000060808b901b1617179050906103c43083612bbd565b951561063d57505f985b6fffffffffffffffffffffffffffffffff918289169a8b9373ffffffffffffffffffffffffffffffffffffffff9c8d96878b169e8f915194167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a48d820182811067ffffffffffffffff821117610611578e5284825260208201908c82526104958a73ffffffffffffffffffffffffffffffffffffffff165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e80160205260405f2090565b9251167fffffffffffffffffffffffff000000000000000000000000000000000000000073ffffffff000000000000000000000000000000008454935160801b169216171790558a8a8d51947faa94c583a45742b26ac5274d230aea34ab334ed5722264aa5673010e612bc0b25f80a465ff5f52595ff36006527f7f36585f54601d575f555f5f37365f34f05f816017575ffd5b5260205ff35b305f5260265f80f5938415610246577fa9549013530fb1542c6fac59b531052d9fd0c0433910571c379618caa172f2cb853f036102465782815f936020953734865af1156102465787915f8080808080519561c814f15016036105a357813b156105a3575050505082519182526020820152f35b86517f09253aa80000000000000000000000000000000000000000000000000000000081526fffffffffffffffffffffffffffffffff90941692840192835263ffffffff16602083015273ffffffffffffffffffffffffffffffffffffffff16604082015281906060010390fd5b60418b7f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b61067b90309063ffffffff164660401b7fffffffffffffffffffffffffffffffff0000000000000000000000000000000060808c901b161717612bbd565b986103ce565b6106c3926003910101907fffffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffff67ffffffff0000000083549260201b169116179055565b80845f610383565b503461024657807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657602090610705611fa0565b5061070e611fc3565b50515f8152f35b5034610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465760209073ffffffffffffffffffffffffffffffffffffffff7f6ed8ad4e485c433a46d43a225e2ebe6a14259468c9e0ee3a0c38eefca7d49f5654915191168152f35b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576107be611d46565b6fffffffffffffffffffffffffffffffff81165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e800602052815f20600363ffffffff9161080b846129ad565b83160101541692831561087e575061087661086f60209473ffffffffffffffffffffffffffffffffffffffff939063ffffffff16907fffffffffffffffffffffffffffffffff000000000000000000000000000000004660401b9160801b16171790565b3090612bbd565b915191168152f35b82517f27eca1b0000000000000000000000000000000000000000000000000000000008152fd5b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576fffffffffffffffffffffffffffffffff6108f361093b9335612978565b6108fc816129ad565b50165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e800602052610930815f205461255c565b905191829182611e1f565b0390f35b5090346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657610978611fa0565b6d04533fe15556b1e086bb1a72ceae30148015610aff575b15610246577f00000000000000000000000000000000000000000000000000000000000000009060018203610ab85773ffffffffffffffffffffffffffffffffffffffff81167fd6aad444c90d39fb0eee1c6e357a7fad83d63f719ac5f880445a2beb0ff3ab585f80a27f6ed8ad4e485c433a46d43a225e2ebe6a14259468c9e0ee3a0c38eefca7d49f56555b610a25612ab3565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460018101808211610a8c578203610a5a57005b60449351927f034e9fa80000000000000000000000000000000000000000000000000000000084528301526024820152fd5b6011847f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b73ffffffffffffffffffffffffffffffffffffffff1615610a1d576001827f4e487b71000000000000000000000000000000000000000000000000000000005f525260245ffd5b50617a694614610990565b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576020906fffffffffffffffffffffffffffffffff610b56611d46565b916002610b62846128f2565b0180547fffffffffffffffffffffffffffffffffffffffffffffffff0000000000000000811667ffffffff0000000082851c60201b161790915563ffffffff1680610bd6575b505191167f75150e9e6335cb283f7e029ed2fdf899cec31cdff0b83ccdc07050eb21c8e0d35f80a260018152f35b610c129063ffffffff164660401b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000608087901b16171761086f565b5f73ffffffffffffffffffffffffffffffffffffffff84861692167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8280a484610ba8565b5090346102465760209160207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465781359067ffffffffffffffff92838311610246573660238401121561024657820135928311610246576005918360051b93602490366024878501011161024657947f0000000000000000000000000000000000000000000000000000000000000000928451956024825f940101925b888110610d0357005b848382841b0101358301858101858110610d6f5736811015610246573590604482818301920101818110610d6f57361061024657815f929183928b51928392833781018381520390895af4610d5661288b565b9015610d685750878752600101610cfa565b8a81519101fd5b61299b565b611f2d565b5034610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657602090610db3612ab3565b73ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610354915191168152f35b5034610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657602090610e2c612a73565b610e34612ab3565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610373ffffffffffffffffffffffffffffffffffffffff81541633817f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f5f80a3610e9b612ab3565b33907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e05f80a33390555f7fd6aad444c90d39fb0eee1c6e357a7fad83d63f719ac5f880445a2beb0ff3ab588180a25f7f6ed8ad4e485c433a46d43a225e2ebe6a14259468c9e0ee3a0c38eefca7d49f56555160018152f35b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657610f4b611d46565b916fffffffffffffffffffffffffffffffff831690815f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e800602052825f2091825415610ffc5760208473ffffffffffffffffffffffffffffffffffffffff61087661086f89610fc663ffffffff60028b0154871c16612a30565b63ffffffff16907fffffffffffffffffffffffffffffffff000000000000000000000000000000004660401b9160801b16171790565b602492508351917f7e273289000000000000000000000000000000000000000000000000000000008352820152fd5b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465763ffffffff61107061106b611fa0565b61238d565b6fffffffffffffffffffffffffffffffff849392935193168352166020820152f35b5034610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576020906110cc612444565b5f73ffffffffffffffffffffffffffffffffffffffff7f6ed8ad4e485c433a46d43a225e2ebe6a14259468c9e0ee3a0c38eefca7d49f5681815416611195575b50611115612ab3565b817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61039182541681817f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f8280a3611169612ab3565b7f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a3555160018152f35b8290817fd6aad444c90d39fb0eee1c6e357a7fad83d63f719ac5f880445a2beb0ff3ab588180a2558461110c565b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657602090611206611201611fa0565b612297565b9051908152f35b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465773ffffffffffffffffffffffffffffffffffffffff61087661086f61126460209535612978565b610fc6816129ad565b503461024657807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576112a4611d46565b906024359163ffffffff83168303610246576020926112c291611fe6565b90519015158152f35b5034610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465760209073ffffffffffffffffffffffffffffffffffffffff7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54915191168152f35b5034610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465761093b906109307f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143546124b6565b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576020906fffffffffffffffffffffffffffffffff6113e5611d46565b165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e8008252805f20549051908152f35b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576fffffffffffffffffffffffffffffffff61145f611d46565b165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e8006020526001815f20015464ffffffffff82519173ffffffffffffffffffffffffffffffffffffffff8116835260a01c166020820152f35b50807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576114ec611fa0565b9160243567ffffffffffffffff81116102465761150c9036908301611d65565b91611515612444565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143908154927f00000000000000000000000000000000000000000000000000000000000000009473ffffffffffffffffffffffffffffffffffffffff917f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc9189841683558851907f19b991a80000000000000000000000000000000000000000000000000000000060208301528582526115ce82611e69565b6115d781611ef3565b906115e48b519283611eb2565b8082523681850111610246576020815f926116079683860137830101528a6128ba565b5054908088169082160361166c575081548381036116375760208661163087878b82895561265a565b5160018152f35b60449250838651927f3503deab0000000000000000000000000000000000000000000000000000000084528301526024820152fd5b85517f8423132700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff80891693820193845290911660208301529081906040010390fd5b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576020906112c261170261106b611fa0565b90611fe6565b50346102465760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657611740611d46565b611748611fc3565b906044359164ffffffffff8316908184036102465773ffffffffffffffffffffffffffffffffffffffff9061177b612444565b1691814211831503610246576fffffffffffffffffffffffffffffffff1690811561188357815f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e800602052845f2095865415611854575094826001927f98483806ce9dfc30965d5198a3cf9e04a68aa8e9fb5cac21334d74425c669147602080998951908152a301917fffffffffffffff0000000000000000000000000000000000000000000000000078ffffffffff000000000000000000000000000000000000000084549260a01b169116171790555160018152f35b602490838751917ff7865c1d000000000000000000000000000000000000000000000000000000008352820152fd5b634e487b715f5260216020526024601cfd5b5060207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610246576020906116306118ce611fa0565b6118d6612444565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143908154907f000000000000000000000000000000000000000000000000000000000000000080938273ffffffffffffffffffffffffffffffffffffffff167f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc555561265a565b50346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465761070e61199c60209335612978565b6129ad565b5034610246576fffffffffffffffffffffffffffffffff906119c236611d93565b9390916119cd612444565b1690815f5260207fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e8008152835f20958654611bf057611ab26053611a0f866124b6565b97875198818a92878401987f7b226465736372697074696f6e223a20220000000000000000000000000000008a52603185013782017f222c20226e616d65223a2022307820536574746c6572206665617475726520006031820152611a7d8251809389605085019101611dfe565b017f227d0a00000000000000000000000000000000000000000000000000000000006050820152036033810189520187611eb2565b85519062040001821015611bdf579060018392611adc611ad184612b49565b9184611bd357612b49565b9060038951948598868a9795600a899753611afd81518b83018a850161254a565b5101868101907f08021200000000000000000000000000000000000000000000000000000000008252835f14611bc8575082611b4f91611b4387518c890188840161254a565b8651019285840161254a565b0101905b60188253611b67815187830186850161254a565b510103018160025afa15903d1817611bc657611bb9611bae61093b967fa109ba539900bf1b633f956d63c96fc89b814c7287f7aa50a9216d0b55657207935180915561255c565b845191829182611e1f565b0390a25191829182611e1f565bfe5b925050500190611b53565b8251841b850101612b49565b604183634e487b715f52526024601cfd5b602490848651917f72d9ef8a000000000000000000000000000000000000000000000000000000008352820152fd5b5090346102465760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024657357fffffffff00000000000000000000000000000000000000000000000000000000811680910361024657602091611c86612ab3565b7f01ffc9a7000000000000000000000000000000000000000000000000000000008214918215611d1c575b8215611cf2575b8215611cc8575b50519015158152f35b7f5b5e139f000000000000000000000000000000000000000000000000000000001491505f611cbf565b7f80ac58cd0000000000000000000000000000000000000000000000000000000081149250611cb8565b7f7f5828d00000000000000000000000000000000000000000000000000000000081149250611cb1565b600435906fffffffffffffffffffffffffffffffff8216820361024657565b9181601f840112156102465782359167ffffffffffffffff8311610246576020838186019501011161024657565b9060407ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc830112610246576004356fffffffffffffffffffffffffffffffff8116810361024657916024359067ffffffffffffffff821161024657611dfa91600401611d65565b9091565b5f5b838110611e0f5750505f910152565b8181015183820152602001611e00565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f60409360208452611e628151809281602088015260208888019101611dfe565b0116010190565b6040810190811067ffffffffffffffff821117611e8557604052565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117611e8557604052565b67ffffffffffffffff8111611e8557601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b34610246575f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126102465761093b604051611f6a81611e69565b600a81527f307820536574746c657200000000000000000000000000000000000000000000602082015260405191829182611e1f565b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361024657565b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361024657565b90611ff0826128f2565b60028101915f9163ffffffff91845494838083169660401c1686116122665791816fffffffffffffffffffffffffffffffff95936003869473ffffffffffffffffffffffffffffffffffffffff971684010190815494808087169660201c16918683155f1461222657508054918083168c149081612217575b506121e4575b50509161086f91856120e7945b811596871561219a575b5050507fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008154169055899063ffffffff16907fffffffffffffffffffffffffffffffff000000000000000000000000000000004660401b9160801b16171790565b9261211b575b50501692167f14771144127988a0427a9c8e58dcb697adccdb5eadb2821e26d8a03a622b951b5f80a4600190565b1561215757505f5b8584169083168284167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5f80a45f806120ed565b61219590309063ffffffff164660401b7fffffffffffffffffffffffffffffffff0000000000000000000000000000000060808a901b161717612bbd565b612123565b6121dc926003910101907fffffffffffffffffffffffffffffffffffffffffffffffff00000000ffffffff67ffffffff0000000083549260201b169116179055565b855f80612086565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000009091168617905560019550818561206f565b90508260201c168b115f612069565b905061086f9391508260036120e79694880101827fffffffffffffffffffffffffffffffffffffffffffffffffffffffff0000000082541617905561207c565b602486604051907fddc0466c0000000000000000000000000000000000000000000000000000000082526004820152fd5b73ffffffffffffffffffffffffffffffffffffffff811615612363576122fa9073ffffffffffffffffffffffffffffffffffffffff165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e80160205260405f2090565b5463ffffffff6fffffffffffffffffffffffffffffffff8216801561235c575f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e80060205280600260405f200154169160801c1614612357575f90565b600190565b5050505f90565b60046040517fd92e233d000000000000000000000000000000000000000000000000000000008152fd5b6123d48173ffffffffffffffffffffffffffffffffffffffff165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e80160205260405f2090565b549163ffffffff6fffffffffffffffffffffffffffffffff84169360801c169183156123fd5750565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f89c62b64000000000000000000000000000000000000000000000000000000008352166004820152fd5b61244c612ab3565b73ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035416330361248c57565b60046040517f1e092104000000000000000000000000000000000000000000000000000000008152fd5b906930313233343536373839600952604051606e8101604052606d810192600a80918181065186530490815b612516575050606e837fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09203019201918252565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81929501948181065186530490816124e2565b82809260045afa15903d1817611bc657565b9060405191605483017931323334353637383941424344454647484a4b4c4d4e505152536019527f5455565758595a6162636465666768696a6b6d6e6f707172737475767778797a603952603a82819392828094065190530460040181810651605386015304602801908082065160528501537f0616868b6a3c45673102217be3fec84b7db78d8bb82965f94d9f33718a8074e381605186019304019160268501925b83821161262857505050505f82526735697066733a2f2f6007830152605582016040525f606052565b8281817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9306518453049101906125ff565b90821115612666575050565b7f0000000000000000000000000000000000000000000000000000000000000000604051927f0900f01000000000000000000000000000000000000000000000000000000000602085015273ffffffffffffffffffffffffffffffffffffffff938483169283602483015260248252606082019167ffffffffffffffff9281811084821117611e855760408190527fb2fa93fb000000000000000000000000000000000000000000000000000000006080830181905273ffffffffffffffffffffffffffffffffffffffff8481166084850152881660a4840152604482529161275b9190612755606483611eb2565b886128ba565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc948554908882160361285b575050507f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914354908282111561282457828203116127ed5750508183169055167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b5f80a2565b60449250604051917f4ead7ebf00000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b60448383604051917fa6492b4400000000000000000000000000000000000000000000000000000000835260048301526024820152fd5b60405191825273ffffffffffffffffffffffffffffffffffffffff92831660048301529091166024820152604490fd5b3d156128b5573d9061289c82611ef3565b916128aa6040519384611eb2565b82523d5f602084013e565b606090565b5f918291602082519201905af4906128d061288b565b91156128da575090565b8151919082156128ea5750602001fd5b602081519101fd5b6fffffffffffffffffffffffffffffffff165f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e80060205260405f2090600182015464ffffffffff73ffffffffffffffffffffffffffffffffffffffff818360a01c169216330361248c57811415908161296e575b5061248c57565b905042115f612967565b6fffffffffffffffffffffffffffffffff9081811161299b578015611883571690565b634e487b715f5260116020526024601cfd5b6fffffffffffffffffffffffffffffffff1690815f527fb48ce68a610ebca40b9e7586fb84b5d8b0b030b71733a8d4a75a983d5f78e80060205263ffffffff600260405f200154169182156129ff5750565b602490604051907f7e2732890000000000000000000000000000000000000000000000000000000082526004820152fd5b600163ffffffff80921601818111612a46571690565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b73ffffffffffffffffffffffffffffffffffffffff7f6ed8ad4e485c433a46d43a225e2ebe6a14259468c9e0ee3a0c38eefca7d49f565416330361248c57565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff90817f0000000000000000000000000000000000000000000000000000000000000000169182911603612b1f573014612b1f57565b60046040517f8e3edd10000000000000000000000000000000000000000000000000000000008152fd5b906220000082101561299b5760405191600181607f1660801760208501538160071c80612b8a575b508084528301805163ffffff7f16815260200160405250565b9050607f166080176021840153600e1c8015612bb357607f166022830153602060035b5f612b71565b5060206002612bad565b7f3bf3f97f0be1e2c00023033eefeb4fc062ac552ff36778b17060d90b6764902f60406055938151908152600b81019360ff8553602082015201522060145261d6945f5260016034536017601e2090560000000000000000000000000000000000000000000000000000000000000001
0x0000000000000000000000000000000000000000000000000000000000000001
----Decoded View------------Arg [0] : version (uint256): 1
----Encoded View------------Arg [0] : 0x0000000000000000000000000000000000000000000000000000000000000001