0 txs
18 calls
constructor
constructor(address _comments, address _zoraTimedSale)
functions
comments
viewfunction comments() view returns (address)
contractName
purefunction contractName() pure returns (string)
contractVersion
purefunction contractVersion() pure returns (string)
eip712Domain
viewfunction eip712Domain() view returns (bytes1 fields, string name, string version, uint256 chainId, address verifyingContract, bytes32 salt, uint256[] extensions)
hashPermitTimedSaleMintAndComment
viewfunction hashPermitTimedSaleMintAndComment(tuple permit) view returns (bytes32)
nonceUsed
viewfunction nonceUsed(address owner, bytes32 nonce) view returns (bool)
owner
viewfunction owner() view returns (address)
pendingOwner
viewfunction pendingOwner() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
UPGRADE_INTERFACE_VERSION
viewfunction UPGRADE_INTERFACE_VERSION() view returns (string)
zoraTimedSale
viewfunction zoraTimedSale() view returns (address)
acceptOwnership
nonpayablefunction acceptOwnership()
initialize
nonpayablefunction initialize(address owner)
permitTimedSaleMintAndComment
payablefunction permitTimedSaleMintAndComment(tuple permit, bytes signature) payable returns (tuple)
renounceOwnership
nonpayablefunction renounceOwnership()
timedSaleMintAndComment
payablefunction timedSaleMintAndComment(address commenter, uint256 quantity, address collection, uint256 tokenId, address mintReferral, string comment) payable returns (tuple)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
events
EIP712DomainChanged
event EIP712DomainChanged()
Initialized
event Initialized(uint64 version)
MintedAndCommented
event MintedAndCommented(bytes32 indexed commentId, (address commenter, address contractAddress, uint256 tokenId, bytes32 nonce) commentIdentifier, uint256 quantity, string text)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
OwnershipTransferStarted
event OwnershipTransferStarted(address indexed previousOwner, address indexed newOwner)
Upgraded
event Upgraded(address indexed implementation)
errors
AddressEmptyCode
error AddressEmptyCode(address target)
CommenterMismatch
error CommenterMismatch(address expected, address actual)
ERC1967InvalidImplementation
error ERC1967InvalidImplementation(address implementation)
ERC1967NonPayable
error ERC1967NonPayable()
ERC2612ExpiredSignature
error ERC2612ExpiredSignature(uint256 deadline)
FailedInnerCall
error FailedInnerCall()
IncorrectDestinationChain
error IncorrectDestinationChain(uint256 wrongDestinationChainId)
InvalidAccountNonce
error InvalidAccountNonce(address account, bytes32 currentNonce)
InvalidInitialization
error InvalidInitialization()
InvalidSignature
error InvalidSignature()
NotInitializing
error NotInitializing()
OwnableInvalidOwner
error OwnableInvalidOwner(address owner)
OwnableUnauthorizedAccount
error OwnableUnauthorizedAccount(address account)
UpgradeToMismatchedContractName
error UpgradeToMismatchedContractName(string currentName, string newName)
UUPSUnauthorizedCallContext
error UUPSUnauthorizedCallContext()
UUPSUnsupportedProxiableUUID
error UUPSUnsupportedProxiableUUID(bytes32 slot)
creation bytecode
0x60e034620001455762002b3b906001600160401b0390601f38849003908101601f1916820190838211838310176200014a578083916040968794855283398101031262000145576200005f6020620000578362000160565b920162000160565b306080526001600160a01b0391821660a0521660c0527ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054909181841c60ff1662000134578080831603620000ef575b83516129c590816200017682396080518181816110160152611506015260a05181818161197b01526121aa015260c051818181611a78015261204c0152f35b6001600160401b0319909116811790915581519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602090a1388080620000b0565b835163f92ee8a960e01b8152600490fd5b600080fd5b634e487b7160e01b600052604160045260246000fd5b51906001600160a01b0382168203620001455756fe60806040908082526004918236101561001757600080fd5b600092833560e01c928363088682cb14611a2e575082630e230f971461199f57826325c843b9146119305782634f1ef2861461148657826351a088851461108b57826352d1902d14610fce578263715018a614610ee957826375d0c0dc14610e6e5782637771302614610d4557826379ba509714610c9a57826384b0196e14610ab65782638da5cb5b14610a445782639d6cc5f8146109e2578263a0a8e46014610967578263ad3cb1cc146108e8578263c4d66de81461025157508163e30c3978146101db575063f2fde38b146100ed57600080fd5b346101d85760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101d857610124611a9c565b61012c61239d565b73ffffffffffffffffffffffffffffffffffffffff809116907f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c00827fffffffffffffffffffffffff00000000000000000000000000000000000000008254161790557f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930054167f38d16b8cac22d99fc7c124b9cd0de2d3fa1faef420bfe791d8c362d765e227008380a380f35b80fd5b90503461024d57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d5760209073ffffffffffffffffffffffffffffffffffffffff7f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c0054169051908152f35b5080fd5b909150346108e457602090817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126108e05761028d611a9c565b927ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a009384549260ff84841c16159167ffffffffffffffff90818616958615806108d9575b600180981490816108cf575b1590816108c6575b5061089e5784877fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000008316178a55610869575b506103206126de565b6103286126de565b73ffffffffffffffffffffffffffffffffffffffff81161561083a5761034d9061240d565b6103556126de565b83519161036183611b30565b601283527f43616c6c6572416e64436f6d6d656e74657200000000000000000000000000008784015284519261039684611b30565b8684527f3100000000000000000000000000000000000000000000000000000000000000888501526103c66126de565b6103ce6126de565b805183811161080e57807fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d1029261040484546124c1565b601f811161079d575b508a908d601f84116001146106e457926106d9575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff828a1b9260031b1c19161790555b82519182116106ad5750807fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d1039261048a84546124c1565b601f811161063f575b508790601f8311600114610587578a9261057c575b50507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82871b9260031b1c19161790555b857fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d10055857fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d10155610527578480f35b837fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff7fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2955416905551908152a1388080808480f35b0151905038806104a8565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe088941691858c527f5f9ce34815f8e11431c7bb75a8e6886a91478f7ffc1dbb0a98dc240fddd76b75928c5b8b82821061062957505084116105f2575b505050811b0190556104d9565b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c191690553880806105e5565b8385015186558b979095019493840193016105d4565b909150838a527f5f9ce34815f8e11431c7bb75a8e6886a91478f7ffc1dbb0a98dc240fddd76b75601f840160051c8101918985106106a3575b84939291601f8a920160051c01915b828110610695575050610493565b8c8155859450899101610687565b9091508190610678565b8860416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b015190503880610422565b91907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08c95168684528d7f42ad5d3e1f2e6e70edcf6d991b8a3023d3fca8047a131592f9edb9fd9b89d57d94905b828210610786575050841161074f575b505050811b019055610453565b01517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60f88460031b161c19169055388080610742565b8385015186558e979095019493840193018e610732565b909150838d527f42ad5d3e1f2e6e70edcf6d991b8a3023d3fca8047a131592f9edb9fd9b89d57d601f840160051c8101918c8510610804575b8e85949392601f8e930160051c0192905b8382106107f65750505061040d565b81558594508c91018f6107e7565b90915081906107d6565b60248b6041857f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b6024838a8751917f1e4fbdf7000000000000000000000000000000000000000000000000000000008352820152fd5b7fffffffffffffffffffffffffffffffffffffffffffffff000000000000000000166801000000000000000117885538610317565b8386517ff92ee8a9000000000000000000000000000000000000000000000000000000008152fd5b905015386102e5565b303b1591506102dd565b50846102d1565b8380fd5b8280fd5b83823461024d57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d5780516109639161092782611b30565b600582527f352e302e30000000000000000000000000000000000000000000000000000000602083015251918291602083526020830190611c4f565b0390f35b83823461024d57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d578051610963916109a682611b30565b600582527f302e302e31000000000000000000000000000000000000000000000000000000602083015251918291602083526020830190611c4f565b9083346101d85760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101d85782359067ffffffffffffffff82116101d85750610a38602093610a3d92369101611ca3565b611dd3565b9051908152f35b83823461024d57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d5760209073ffffffffffffffffffffffffffffffffffffffff7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930054169051908152f35b9150346108e457827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126108e4577fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d100541580610c71575b15610c1457610b1c612514565b92610b2561261d565b90825192602092602085019585871067ffffffffffffffff881117610be85750926020610b9e838896610b91998b9996528686528151998a997f0f000000000000000000000000000000000000000000000000000000000000008b5260e0868c015260e08b0190611c4f565b91898303908a0152611c4f565b924660608801523060808801528460a088015286840360c088015251928381520193925b828110610bd157505050500390f35b835185528695509381019392810192600101610bc2565b8360416024927f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b90602060649251917f08c379a0000000000000000000000000000000000000000000000000000000008352820152601560248201527f4549503731323a20556e696e697469616c697a656400000000000000000000006044820152fd5b507fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d1015415610b0f565b9150346108e457827ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126108e4573373ffffffffffffffffffffffffffffffffffffffff7f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c00541603610d155782610d123361240d565b80f35b6024925051907f118cdaa70000000000000000000000000000000000000000000000000000000082523390820152fd5b8360c07ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101d857610d78611a9c565b73ffffffffffffffffffffffffffffffffffffffff919060443583811681036108e4576084359284841684036101d85760a4359067ffffffffffffffff82116101d85750610dc99036908701611bfe565b959094610dd4611d7c565b508316338103610e3857608088610e36610df78a8a8a6064358a6024358d612022565b915180926060809173ffffffffffffffffffffffffffffffffffffffff8082511685526020820151166020850152604081015160408501520151910152565bf35b604492508751917f30a3507600000000000000000000000000000000000000000000000000000000835233908301526024820152fd5b83823461024d57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d57805161096391610ead82611b30565b601482527f43616c6c657220616e6420436f6d6d656e746572000000000000000000000000602083015251918291602083526020830190611c4f565b83346101d857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101d857610f2061239d565b8073ffffffffffffffffffffffffffffffffffffffff7fffffffffffffffffffffffff00000000000000000000000000000000000000007f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c008181541690557f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080549182169055167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a380f35b9083346101d857807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126101d8575073ffffffffffffffffffffffffffffffffffffffff7f000000000000000000000000000000000000000000000000000000000000000016300361106557602090517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b517fe07c8dba000000000000000000000000000000000000000000000000000000008152fd5b90837ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc828136011261024d57833567ffffffffffffffff948582116108e057818101610140833603948501126114825760249081358881116112b2576110f49036908501611bfe565b6110fc611d7c565b5061110a610a383685611ca3565b610124870161111881611da1565b9063ffffffff918280461691160361144857505060e48701359261113b85611db2565b9260c489013580421161141a57508a9392918c9173ffffffffffffffffffffffffffffffffffffffff968786169384885260ff7fc84b62be2e432010aa71cc1bbdba4c7b02245544521aa5beae20093c7062240091602099838b528181208582528b522054166113e557848f5287528e8e20908e5286528d8d2080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556111ea91369190611bc7565b906111f58284612807565b508a8198929810156113ba5791899593918e95931598896113ae575b5050508d87156112e2575b50505050505050156112ba5761123190611db2565b9061123e60448501611db2565b9261124b60848601611db2565b957fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdd60a487013591018112156112b6578501908101359889116112b25781019588360387136101d8575092610e369592610df7959260809995606484013593013590612022565b8680fd5b8780fd5b8287517f8baa579f000000000000000000000000000000000000000000000000000000008152fd5b84959697508061132e61135a92519384928b8401967f1626ba7e000000000000000000000000000000000000000000000000000000009b8c895285015260448401526064830190611c4f565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282611b4c565b51915afa91611367612737565b836113a1575b83611382575b5050508983888280808d61121c565b90809293508180518101031261139d57015114898080611373565b8880fd5b925080835110159261136d565b161496508f8080611211565b898e60218d7f4e487b7100000000000000000000000000000000000000000000000000000000835252fd5b8f8c838d8860449451937f17a63d21000000000000000000000000000000000000000000000000000000008552840152820152fd5b8888918e51917f62791302000000000000000000000000000000000000000000000000000000008352820152fd5b8787926114558e93611da1565b9251927f16d5b96e0000000000000000000000000000000000000000000000000000000084521690820152fd5b8480fd5b91507ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc9080823601126108e0576114bb611a9c565b93602494853567ffffffffffffffff81116108e457366023820112156108e4576114ed90369088818901359101611bc7565b9073ffffffffffffffffffffffffffffffffffffffff807f000000000000000000000000000000000000000000000000000000000000000016803014908115611902575b506118da5761153e61239d565b81169484517f75d0c0dc000000000000000000000000000000000000000000000000000000009081815285818a81838c5af19081156118d05786916118b6575b50865182815286818b81305afa9081156118ac578791611892575b508151815190818114938461187c575b505050501561178e57505083517f52d1902d0000000000000000000000000000000000000000000000000000000081526020818881895afa84918161175a575b5061161c575050505051917f4c9c8ce3000000000000000000000000000000000000000000000000000000008352820152fd5b858588928a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc9182810361172d5750853b15611700575080547fffffffffffffffffffffffff00000000000000000000000000000000000000001683179055518592917fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28451156116cc575050808360206116c895519101845af46116c2612737565b91612767565b5080f35b9250925050346116db57505080f35b7fb398979f000000000000000000000000000000000000000000000000000000008152fd5b94505051917f4c9c8ce3000000000000000000000000000000000000000000000000000000008352820152fd5b85908451917faa1d49a4000000000000000000000000000000000000000000000000000000008352820152fd5b9091506020813d602011611786575b8161177660209383611b4c565b81010312611482575190386115e9565b3d9150611769565b878592838b8a8a9586519181835284838881305afa92831561187257859288918495611856575b508951968793849283525af192831561184c578761181e96979894611822575b50506118109087519788977fa23cbf7b0000000000000000000000000000000000000000000000000000000089528801526044870190611c4f565b928584030190850152611c4f565b0390fd5b61181092945090611844913d8091833e61183c8183611b4c565b810190611f60565b9290886117d5565b86513d89823e3d90fd5b61186b9195503d8086833e61183c8183611b4c565b938b6117b5565b88513d87823e3d90fd5b60209293945082012092012014388080806115a9565b6118a691503d8089833e61183c8183611b4c565b38611599565b88513d89823e3d90fd5b6118ca91503d8088833e61183c8183611b4c565b3861157e565b87513d88823e3d90fd5b8685517fe07c8dba000000000000000000000000000000000000000000000000000000008152fd5b9050817f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5416141538611531565b83823461024d57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d576020905173ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b83823461024d57807ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d5760ff8160209373ffffffffffffffffffffffffffffffffffffffff6119f2611a9c565b1681527fc84b62be2e432010aa71cc1bbdba4c7b02245544521aa5beae20093c7062240085528181206024358252855220541690519015158152f35b84903461024d57817ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261024d5760209073ffffffffffffffffffffffffffffffffffffffff7f0000000000000000000000000000000000000000000000000000000000000000168152f35b6004359073ffffffffffffffffffffffffffffffffffffffff82168203611abf57565b600080fd5b359073ffffffffffffffffffffffffffffffffffffffff82168203611abf57565b6080810190811067ffffffffffffffff821117611b0157604052565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6040810190811067ffffffffffffffff821117611b0157604052565b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff821117611b0157604052565b67ffffffffffffffff8111611b0157601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b929192611bd382611b8d565b91611be16040519384611b4c565b829481845281830111611abf578281602093846000960137010152565b9181601f84011215611abf5782359167ffffffffffffffff8311611abf5760208381860195010111611abf57565b60005b838110611c3f5750506000910152565b8181015183820152602001611c2f565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f602093611c8b81518092818752878088019101611c2c565b0116010190565b359063ffffffff82168203611abf57565b919091610140908181850312611abf576040519182019367ffffffffffffffff9483811086821117611b01576040528294611cdd83611ac4565b845260208301356020850152611cf560408401611ac4565b604085015260608301356060850152611d1060808401611ac4565b608085015260a0830135908111611abf5782019080601f83011215611abf57816020611d3e93359101611bc7565b60a083015260c081013560c083015260e081013560e0830152610100611d65818301611c92565b90830152611d77610120809201611c92565b910152565b60405190611d8982611ae5565b60006060838281528260208201528260408201520152565b3563ffffffff81168103611abf5790565b3573ffffffffffffffffffffffffffffffffffffffff81168103611abf5790565b73ffffffffffffffffffffffffffffffffffffffff8082511691602081015191604080948282850151166060850151936080860151169460a0810151805190602001209060c081015160e082015192610100908184019963ffffffff998a8c5116978b6101208098015116998b519e8f91602083019d7f8d473225d8ea576a3922dc73ac2d7513137423f0e6ea74d5c1b636e96eb877928f5283015260608201526080015260a08d015260c08c015260e08b01528901528701526101408601526101609081860152845261018084019367ffffffffffffffff9481811086821117611b0157865251902091511692611ec9612843565b93611ed26128ad565b9082519160208301967f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f885284840152606083015260808201523060a082015260a0815260c081019381851090851117611b01576042948460e29352815190207f1901000000000000000000000000000000000000000000000000000000000000855260c282015201522090565b602081830312611abf5780519067ffffffffffffffff8211611abf570181601f82011215611abf578051611f9381611b8d565b92611fa16040519485611b4c565b81845260208284010111611abf57611fbf9160208085019101611c2c565b90565b519073ffffffffffffffffffffffffffffffffffffffff82168203611abf57565b601f82602094937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0938186528686013760008582860101520116010190565b9092959395949194612032611d7c565b5073ffffffffffffffffffffffffffffffffffffffff96877f00000000000000000000000000000000000000000000000000000000000000001690813b15611abf578891604094855180927fa836f32f000000000000000000000000000000000000000000000000000000008252858060009e8f95169d8e60048601528c6024860152169586604485015288606485015216608483015260a4820160c090528260c483015281345a9260e493f180156123935761234b575b50886120f4611d7c565b988815612315579060a09493929186519a8b95869485937fce5263c3000000000000000000000000000000000000000000000000000000008552600485015260248401526044830152610140606483015261219861215761014484018d8c611fe3565b825173ffffffffffffffffffffffffffffffffffffffff908116608486015260208401511660a4850152604083015160c485015260609092015160e4840152565b826101048301528261012483015203927f0000000000000000000000000000000000000000000000000000000000000000165af194851561230b57868096612265575b50507fcedb5a75580654e29d3155d729722981b31eaf1430626b7c53aadf5b6e4c159b93929161225f9151938493612249858a6060809173ffffffffffffffffffffffffffffffffffffffff8082511685526020820151166020850152604081015160408501520151910152565b608085015260c060a085015260c0840191611fe3565b0390a290565b91955080965060a03d60a011612304575b6122808183611b4c565b81010360a0811261024d576080136101d857509061225f7fcedb5a75580654e29d3155d729722981b31eaf1430626b7c53aadf5b6e4c159b939260808651976122c889611ae5565b6122d181611fc2565b89526122df60208201611fc2565b60208a015287810151888a0152606081015160608a01520151959181939495506121db565b503d612276565b81513d88823e3d90fd5b505050945050935050508082519361232c85611ae5565b5416835260015416602083015260025490820152600354606082015290565b67ffffffffffffffff819a929a1161236657845297386120ea565b6024827f4e487b710000000000000000000000000000000000000000000000000000000081526041600452fd5b85513d8c823e3d90fd5b73ffffffffffffffffffffffffffffffffffffffff7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300541633036123dd57565b60246040517f118cdaa7000000000000000000000000000000000000000000000000000000008152336004820152fd5b7fffffffffffffffffffffffff0000000000000000000000000000000000000000907f237e158222e3e6968b72b9db0d8043aacf074ad9f650f0d1606b4d82ee432c008281541690557f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080549073ffffffffffffffffffffffffffffffffffffffff80931680948316179055167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3565b90600182811c9216801561250a575b60208310146124db57565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b91607f16916124d0565b604051906000827fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d10291825492612549846124c1565b808452936020916001918281169081156125d85750600114612577575b50505061257592500383611b4c565b565b60009081527f42ad5d3e1f2e6e70edcf6d991b8a3023d3fca8047a131592f9edb9fd9b89d57d9590935091905b8284106125c05750612575945050508101602001388080612566565b855488850183015294850194879450928101926125a4565b915050602093506125759592507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0091501682840152151560051b820101388080612566565b604051906000827fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d10391825492612652846124c1565b808452936020916001918281169081156125d8575060011461267d5750505061257592500383611b4c565b60009081527f5f9ce34815f8e11431c7bb75a8e6886a91478f7ffc1dbb0a98dc240fddd76b759590935091905b8284106126c65750612575945050508101602001388080612566565b855488850183015294850194879450928101926126aa565b60ff7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005460401c161561270d57565b60046040517fd7e6bcf8000000000000000000000000000000000000000000000000000000008152fd5b3d15612762573d9061274882611b8d565b916127566040519384611b4c565b82523d6000602084013e565b606090565b906127a6575080511561277c57805190602001fd5b60046040517f1425ea42000000000000000000000000000000000000000000000000000000008152fd5b815115806127fe575b6127b7575090565b60249073ffffffffffffffffffffffffffffffffffffffff604051917f9996b315000000000000000000000000000000000000000000000000000000008352166004820152fd5b50803b156127af565b81519190604183036128385761283192506020820151906060604084015193015160001a906128f2565b9192909190565b505060009160029190565b61284b612514565b805190811561285b576020012090565b50507fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d1005480156128885790565b507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47090565b6128b561261d565b80519081156128c5576020012090565b50507fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d1015480156128885790565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0841161298357926020929160ff608095604051948552168484015260408301526060820152600092839182805260015afa1561297757805173ffffffffffffffffffffffffffffffffffffffff81161561296e57918190565b50809160019190565b604051903d90823e3d90fd5b5050506000916003919056fea2646970667358221220f6e746366487e7af7ad38eaf33833b8c1bf44396ded1766d43b162d852370b8464736f6c634300081700330000000000000000000000007777777c2b3132e03a65721a41745c07170a5877000000000000000000000000777777722d078c97c6ad07d9f36801e653e356ae