[ { "inputs": [ { "internalType": "string", "name": "name_", "type": "string" }, { "internalType": "string", "name": "symbol_", "type": "string" }, { "internalType": "address", "name": "creator_", "type": "address" }, { "components": [ { "internalType": "string", "name": "id", "type": "string" }, { "internalType": "bytes32", "name": "merkleRoot", "type": "bytes32" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "internalType": "struct Token.AirdropWave[]", "name": "airdropWaves_", "type": "tuple[]" }, { "components": [ { "internalType": "string", "name": "id", "type": "string" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bool", "name": "minted", "type": "bool" } ], "internalType": "struct Token.ClaimableReward[]", "name": "claimableRewards_", "type": "tuple[]" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AllowanceOverflow", "type": "error" }, { "inputs": [], "name": "AllowanceUnderflow", "type": "error" }, { "inputs": [], "name": "AlreadyInitialized", "type": "error" }, { "inputs": [], "name": "BeliefToken_AirdropNotEligible", "type": "error" }, { "inputs": [], "name": "BeliefToken_AirdropWaveNotEnabled", "type": "error" }, { "inputs": [], "name": "BeliefToken_AlreadyClaimed", "type": "error" }, { "inputs": [], "name": "BeliefToken_ClaimableRewardAlreadyMinted", "type": "error" }, { "inputs": [], "name": "BeliefToken_MaxSupplyOverflow", "type": "error" }, { "inputs": [], "name": "InsufficientAllowance", "type": "error" }, { "inputs": [], "name": "InsufficientBalance", "type": "error" }, { "inputs": [], "name": "InvalidPermit", "type": "error" }, { "inputs": [], "name": "NewOwnerIsZeroAddress", "type": "error" }, { "inputs": [], "name": "NoHandoverRequest", "type": "error" }, { "inputs": [], "name": "PermitExpired", "type": "error" }, { "inputs": [], "name": "TotalSupplyOverflow", "type": "error" }, { "inputs": [], "name": "Unauthorized", "type": "error" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "waveId", "type": "string" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, { "indexed": false, "internalType": "bytes32[]", "name": "merkleProof", "type": "bytes32[]" } ], "name": "BeliefToken_ClaimAirdropWave", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "string", "name": "waveId", "type": "string" }, { "indexed": false, "internalType": "bytes32", "name": "merkleRoot", "type": "bytes32" } ], "name": "BeliefToken_EnableAirdropWave", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "creator", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "BeliefToken_MintClaimableReward", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "pendingOwner", "type": "address" } ], "name": "OwnershipHandoverCanceled", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "pendingOwner", "type": "address" } ], "name": "OwnershipHandoverRequested", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "oldOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "result", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "MAX_SUPPLY", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "waveId", "type": "string" } ], "name": "airdropWaves", "outputs": [ { "internalType": "string", "name": "id", "type": "string" }, { "internalType": "bytes32", "name": "merkleRoot", "type": "bytes32" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "cancelOwnershipHandover", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "waveId", "type": "string" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bytes32[]", "name": "merkleProof", "type": "bytes32[]" } ], "name": "claimAirdropWave", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "rewardId", "type": "string" } ], "name": "claimableRewards", "outputs": [ { "internalType": "string", "name": "id", "type": "string" }, { "internalType": "uint256", "name": "amount", "type": "uint256" }, { "internalType": "bool", "name": "minted", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "waveId", "type": "string" }, { "internalType": "address", "name": "holder", "type": "address" } ], "name": "claimedAirdropWaveStatusOf", "outputs": [ { "internalType": "bool", "name": "claimed", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pendingOwner", "type": "address" } ], "name": "completeOwnershipHandover", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "creator", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "waveId", "type": "string" }, { "internalType": "bytes32", "name": "merkleRoot", "type": "bytes32" } ], "name": "enableAirdropWave", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "string", "name": "rewardId", "type": "string" }, { "internalType": "address", "name": "recipient", "type": "address" } ], "name": "mintClaimableReward", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "result", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "pendingOwner", "type": "address" } ], "name": "ownershipHandoverExpiresAt", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "requestOwnershipHandover", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "result", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "payable", "type": "function" } ]
60a06040523461097e576120cb803803908161001a81610a2f565b91823960a081838101031261097e5780516001600160401b03811161097e5761004890838301908301610a77565b60208201519092906001600160401b03811161097e5761006d90828401908401610a77565b604083015190936001600160a01b038216820361097e576060840151936001600160401b03851161097e57838101601f86830101121561097e57848101516100bc6100b782610ac7565b610a2f565b95602087838152019086840160208460051b83870101011161097e57602081850101915b60208460051b83870101018310610983575050505060808101516001600160401b03811161097e57848201601f82840101121561097e5780820151906101286100b783610ac7565b95602087848152019181850160208560051b83880101011161097e57602081860101925b60208560051b838801010184106108f35750508451949350506001600160401b038411915061042990505760005490600182811c921680156108e9575b60208310146104095781601f84931161088c575b50602090601f83116001146108165760009261080b575b50508160011b916000199060031b1c1916176000555b33638b78c6d819553360007f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08180a383516001600160401b03811161042957600154600181811c91168015610801575b602082101461040957601f811161079c575b506020601f8211600114610731578192939495600092610726575b50508160011b916000199060031b1c1916176001555b608052600080916000915b845183101561043f5761027b8386610ade565b516102a0602061028b8689610ade565b51518160405193828580945193849201610a54565b8101600481520301902090805180519060018060401b038211610429578354600181811c9116801561041f575b602082101461040957601f81116103c5575b50602090601f831160011461035057600195938361033d9694600294604094600092610345575b5050600019600383901b1c191690881b1784555b602081015187850155015191015560406103348689610ade565b51015190610b08565b920191610268565b015190503880610306565b908460005260206000209160005b601f19851681106103ad575093600184600294604094839a9861033d9a98601f19811610610394575b505050811b01845561031a565b015160001960f88460031b161c19169055388080610387565b9192602060018192868501518155019401920161035e565b846000526020600020601f840160051c810160208510610402575b601f830160051c820181106103f65750506102df565b600081556001016103e0565b50806103e0565b634e487b7160e01b600052602260045260246000fd5b90607f16906102cd565b634e487b7160e01b600052604160045260246000fd5b6000845b83518210156105df576104568285610ade565b51610466602061028b8588610ade565b60029082019081520301902081518051906001600160401b038211610429578254600181811c911680156105d5575b602082101461040957601f8111610591575b50602090601f831160011461051c5760019593836105099694604094600294600092610511575b5050600019600383901b1c191690881b1781555b60208401518782015501910151151560ff8019835416911617905560206103348588610ade565b910190610443565b015190508c806104ce565b908360005260206000209160005b601f1985168110610579575093600184604094600294839a986105099a98601f19811610610560575b505050811b0181556104e2565b015160001960f88460031b161c191690558c8080610553565b9192602060018192868501518155019401920161052a565b836000526020600020601f840160051c8101602085106105ce575b601f830160051c820181106105c25750506104a7565b600081556001016105ac565b50806105ac565b90607f1690610495565b90506b033b2e3c9fd0803ce800000090828203928284116107105701900390811161071057638b78c6d81954336001600160a01b03821614806106f3575b6106a8575b506805345cdf77eb68f44c80549082820191821061069a57556387a211a2600c52336000526020600c20818154019055602052600c5160601c60007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef602080a36040516115959081610b168239608051816110690152f35b63e5cfe9576000526004601cfd5b602052637f5e9f20600c52600019806034600c2055600052602c5160601c60007f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925602082a381610622565b5080602052637f5e9f20600c52600080526034600c20541561061d565b634e487b7160e01b600052601160045260246000fd5b015190503880610247565b600160005260206000209060005b601f1984168110610784575060019394959683601f1981161061076b575b505050811b0160015561025d565b015160001960f88460031b161c1916905538808061075d565b9091602060018192858b01518155019301910161073f565b60016000527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6601f830160051c810191602084106107f7575b601f0160051c01905b8181106107eb575061022c565b600081556001016107de565b90915081906107d5565b90607f169061021a565b0151905038806101b4565b600080805293506000805160206120ab83398151915291905b601f1984168510610871576001945083601f19811610610858575b505050811b016000556101ca565b015160001960f88460031b161c1916905538808061084a565b8181015183556020948501946001909301929091019061082f565b600080529091506000805160206120ab833981519152601f840160051c810191602085106108df575b90601f859493920160051c01905b8181106108d0575061019d565b600081558493506001016108c3565b90915081906108b5565b91607f1691610189565b83516001600160401b03811161097e576060878401820185890103601f19011261097e5761091f610a10565b87840182016020015190916001600160401b03821161097e5761095089602060609484898b85019401010101610a77565b835288850101604081015160208401520151801515810361097e57604082015281526020938401930161014c565b600080fd5b8251906001600160401b03821161097e57606086840183018a880103601f19011261097e576109b0610a10565b868401830160200151909290916001600160401b03831161097e576020936060836109e98b8f899889988c8a9385019401010101610a77565b8352604081898d0101015185840152878b01010151604082015281520193019290506100e0565b60405190606082016001600160401b0381118382101761042957604052565b6040519190601f01601f191682016001600160401b0381118382101761042957604052565b60005b838110610a675750506000910152565b8181015183820152602001610a57565b81601f8201121561097e5780516001600160401b03811161042957610aa5601f8201601f1916602001610a2f565b928184526020828401011161097e57610ac49160208085019101610a54565b90565b6001600160401b0381116104295760051b60200190565b8051821015610af25760209160051b010190565b634e487b7160e01b600052603260045260246000fd5b919082018092116107105756fe6040608081526004908136101561001557600080fd5b600091823560e01c908163028e24851461109857816302d05d3f1461105457816306fdde0314611023578163095ea7b314610fcb57816318160ddd14610fa457816323b872dd14610e645781632569296214610e19578163313ce56714610dfd57816332cb6b0c14610dd65781633644e51514610d4e5781633b78546814610ae557816342966c68146109fa57816354d1f13d146109b45781636aa6e0c3146108b257816370a082311461087e578163715018a6146108385781637ecebe00146108045781638c674c03146107775781638da5cb5b1461074a57816390d2f54e146106f557816394b99e781461066457816395d89b4114610546578163a9059cbb14610447578163d505accf146102c0578163dd62ed3e1461027a578163f04e283e146101fa578163f2fde38b1461018d575063fee81cf41461015757600080fd5b346101895760203660031901126101895760209161017361121a565b9063389a75e1600c525281600c20549051908152f35b5080fd5b83906020366003190112610189576101a361121a565b906101ac61142e565b8160601b156101ef575060018060a01b0316638b78c6d8198181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08580a35580f35b637448fbae8352601cfd5b839060203660031901126101895761021061121a565b9061021961142e565b63389a75e1600c528183526020600c20908154421161026f575082905560018060a01b0316638b78c6d8198181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08580a35580f35b636f5e88188452601cfd5b5050346101895780600319360112610189576020906102b961029a61121a565b6102a2611230565b602052637f5e9f20600c526000526034600c205490565b9051908152f35b8383346101895760e0366003190112610189576102db61121a565b6102e3611230565b60443590606435916084359460ff8616860361044357610301611288565b9384516020809601208142116104375782519760c060018060a01b03809916988997169965383775081901600e52878c5288600c2094855480957f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f84528b84019081528d8985017fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc68152606086019c8d469052608087019330855260a08820602e527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c988525252898b525260a082015220604e526042602c208a5260ff16865260a435835260c435606052858060808b60015afa90873d510361042b576000805160206115408339815191529798999a50019055866303faf4f960a51b1790526034602c2055a380f35b8a63ddafbaef8b52601cfd5b89631a15a3cc8a52601cfd5b8680fd5b82843461054357816003193601126105435761046161121a565b638b78c6d8195460243592906001600160a01b03838116908216148061051f575b6104e3575b506387a211a2600c5233815260209485600c20908154908186116104d8575084900390555282600c208181540190558252600c5160601c336000805160206115208339815191528480a35160018152f35b63f4d678b88452601cfd5b602052637f5e9f203360601b17600c52600019806034600c20558152602c5160601c33600080516020611540833981519152602084a385610487565b5061053d813390602052637f5e9f20600c526000526034600c205490565b15610482565b80fd5b82843461054357806003193601126105435781519181600192600154938460011c916001861695861561065a575b6020968785108114610647578899509688969785829a5291826000146106205750506001146105c4575b5050506105c092916105b191038561113e565b519282849384528301906111f5565b0390f35b9190869350600183527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf65b82841061060857505050820101816105b16105c061059e565b8054848a0186015288955087949093019281016105ef565b60ff19168782015293151560051b860190930193508492506105b191506105c0905061059e565b634e487b7160e01b835260228a52602483fd5b92607f1692610574565b8284346105435760203660031901126105435782359067ffffffffffffffff82116105435750602061069f6106e5946106b193369101611176565b818451938285809451938492016111d2565b810160028152030190206106c481611371565b9160ff600260018401549301541681519485946060865260608601906111f5565b9260208501521515908301520390f35b5050346101895760ff816020938461072361070f36611246565b9290818651938285809451938492016111d2565b6003908201908152030190206001600160a01b039091168252855220549151911615158152f35b505034610189578160031936011261018957638b78c6d8195490516001600160a01b039091168152602090f35b8284346105435760203660031901126105435782359067ffffffffffffffff8211610543575060206107f7936107b36107c69336908301611176565b90828551948386809551938492016111d2565b8201908152030190206107d881611371565b91600260018301549201549080519485946060865260608601906111f5565b9260208501528301520390f35b5050346101895760203660031901126101895760209161082261121a565b906338377508600c525281600c20549051908152f35b83806003193601126105435761084c61142e565b80638b78c6d8198181547f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e08280a35580f35b5050346101895760203660031901126101895760209161089c61121a565b906387a211a2600c525281600c20549051908152f35b9050346109b0576108c236611246565b906108cb61142e565b835181519160209460ff868301946108e48186886111d2565b840184886002968388809552030190200154166109a25750847f2b242012f93bfb72b44db5c8044043f03e9db9c5f23ed1cf29aa42623afd36c695949383610984936001958a518581845161093a81838a6111d2565b810184815203019020018660ff19825416179055610974868b518681855161096381838b6111d2565b81018781520301902001548861144b565b89519485938492519283916111d2565b820190815203019020015493519384526001600160a01b031692a280f35b865163631f3aff60e11b8152fd5b8280fd5b83806003193601126105435763389a75e1600c52338152806020600c2055337ffa7b8eab7da67f412cc9575ed43464468f9bfbae89d1675917346ca6d8fe3c928280a280f35b83903461018957602036600319011261018957638b78c6d81954813591906001600160a01b0381161580610ac1575b610a85575b506387a211a2600c523383526020600c2090815490818411610a7a575082900390556805345cdf77eb68f44c81815403905581528033600080516020611520833981519152602083a380f35b63f4d678b88552601cfd5b602052637f5e9f203360601b17600c52600019806034600c20558352602c5160601c33600080516020611540833981519152602086a383610a2e565b50610adf813390602052637f5e9f20600c526000526034600c205490565b15610a29565b919050346109b05760603660031901126109b0578267ffffffffffffffff83358181116109b057610b199036908601611176565b926024359460443591838311610d4a5736602384011215610d4a578282013591848311610cb2576024840194600560248560051b80970101368111610d4657899160ff8680519b8c86519660209e8f80920198610b7781838c6111d2565b810160038152030190203382528d52205416610d365785519260018c51610b9f8187856111d2565b8501948786528c81839703019020015415610d26576001610bfc8f8f938f8f928c90815185818551610bd281838a6111d2565b810160038152030190203382528552208560ff198254161790558b519384928392519283916111d2565b81018a8152030190200154948751908c8201923360601b8452603483015260348252606082019082821090821117610d1257885251902092919087610cc4575b50505003610cb65750610c4f873361144b565b610c638151966060885260608801906111f5565b86860197909752858703908601528086526001600160fb1b0310610cb25784818593857f26065fb4d131171e2476eb17b938a9e211cf521be70d22c52c83244ce1c54d8a98013701030190a180f35b8580fd5b9051635b64090160e11b8152fd5b9082918b8f89908d965b610cdc575b50505050610c3c565b86978380959697983591828111881b90815218522095019383851015610d08579291908f899085610cce565b50808f8990610cd3565b50634e487b7160e01b8f526041875260248ffd5b865163fb5f54ef60e01b81528690fd5b85516306dfe52560e31b81528590fd5b8880fd5b8480fd5b50503461018957816003193601126101895760209060a0610d6d611288565b8381519101208251907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8252848201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc683820152466060820152306080820152209051908152f35b505034610189578160031936011261018957602090516b033b2e3c9fd0803ce80000008152f35b5050346101895781600319360112610189576020905160128152f35b83806003193601126105435763389a75e1600c523381526202a30042016020600c2055337fdbf36a107da19e49527a7176a1babf963b4b0ff8cde35ee35d6cd8f1f9ac7e1d8280a280f35b82843461054357606036600319011261054357610e7f61121a565b90610e88611230565b638b78c6d819546001600160a01b039291604435918482168582161480610f80575b610f42575b508460601b92602097338952600c94637f5e9f208117865260348620805460018101610f1f575b50506387a211a2178552888520908154908186116104d8575084900390555285822081815401905585525160601c91166000805160206115208339815191528480a35160018152f35b808711610f365786900390556387a211a28b610ed6565b836313be252b8652601cfd5b602052637f5e9f208560601b17600c52600019806034600c20558352602c5160601c848616600080516020611540833981519152602086a387610eaf565b50610f9e818790602052637f5e9f20600c526000526034600c205490565b15610eaa565b5050346101895781600319360112610189576020906805345cdf77eb68f44c549051908152f35b505034610189578060031936011261018957602091610fe861121a565b602435908452637f5e9f20600c52338252806034600c20558152602c5160601c90600080516020611540833981519152843392a35160018152f35b5050346101895781600319360112610189576105c090611041611288565b90519182916020835260208301906111f5565b505034610189578160031936011261018957517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b9050346109b057816003193601126109b05780359167ffffffffffffffff831161113a5760016110ec7f08f9536f4dbd4a3a46a8531d13a42875526412cad47ce602b0b77d30667b861f9436908501611176565b926024359182916110fb61142e565b60208551809288516111108184868d016111d2565b820190815203019020015561112e82519383859485528401906111f5565b9060208301520390a180f35b8380fd5b90601f8019910116810190811067ffffffffffffffff82111761116057604052565b634e487b7160e01b600052604160045260246000fd5b81601f820112156111cd5780359067ffffffffffffffff821161116057604051926111ab601f8401601f19166020018561113e565b828452602083830101116111cd57816000926020809301838601378301015290565b600080fd5b60005b8381106111e55750506000910152565b81810151838201526020016111d5565b9060209161120e815180928185528580860191016111d2565b601f01601f1916010190565b600435906001600160a01b03821682036111cd57565b602435906001600160a01b03821682036111cd57565b60406003198201126111cd576004359067ffffffffffffffff82116111cd5761127191600401611176565b906024356001600160a01b03811681036111cd5790565b60405190600080549060018260011c9060018416938415611367575b6020948584108114611353578388528794939291811561133357506001146112d7575b50506112d59250038361113e565b565b60008080527f290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e56395935091905b81831061131b5750506112d5935082010138806112c7565b85548884018501529485019487945091830191611303565b9150506112d594925060ff191682840152151560051b82010138806112c7565b634e487b7160e01b85526022600452602485fd5b91607f16916112a4565b9060405190600083549060018260011c9060018416968715611424575b6020948584108914611353578798848997989952908160001461140257506001146113c3575b5050506112d59250038361113e565b600090815285812095935091905b8183106113ea5750506112d593508201013880806113b4565b855488840185015294850194879450918301916113d1565b925050506112d594925060ff191682840152151560051b8201013880806113b4565b91607f169161138e565b638b78c6d81954330361143d57565b6382b429006000526004601cfd5b638b78c6d819546001600160a01b038281169082161480611502575b6114c9575b506805345cdf77eb68f44c8054908382019182106114bb57556387a211a2600c526000526020600c20818154019055602052600c5160601c6000600080516020611520833981519152602080a3565b63e5cfe9576000526004601cfd5b602052637f5e9f20600c52600019806034600c2055600052602c5160601c6000600080516020611540833981519152602082a33861146c565b5080602052637f5e9f20600c52600080526034600c20541561146756feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a2646970667358221220120f2f98282b7a6cb7a7ad8ed9aa1b5ee47be92cf089c4cdc9e25d887c248dde64736f6c63430008190033290decd9548b62a8d60345a988386fc84ba6bc95484008f6362f93160ef3e56300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000005eeefc7d872c03296639bcc49d11c99403d2f4a80000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000000044865686400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000553686a646400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000422ca8b0a00a4250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002435613132396630632d663637642d343832382d396665302d36343538323431313033336500000000000000000000000000000000000000000000000000000000