ETH Price: $2,458.43 (-0.88%)

Contract

0xe1Be424F442D0687129128C6c38aAce44F8c8Dbc
 

More Info

Private Name Tags

TokenTracker

zkPass (ZKP) ($0.0431)

Multichain Info

Transaction Hash
Method
Block
From
To
0xc28ec8c611ab974d877544976067aabf397cff3009ffa918f8f15fcf13d54397 Transfer(pending)2026-08-30 2:13:5612 days ago1788056036IN
zkPass: ZKP Token
0 ETH(Pending)(Pending)
0xdaef77510a22c46f6044ea931d361ecf65fd680c82cbd0c608ad50bf3790f1e7 Transfer(pending)2026-08-16 2:20:5226 days ago1786846852IN
zkPass: ZKP Token
0 ETH(Pending)(Pending)
Approve259520712026-09-11 5:29:115 mins ago1789104551IN
zkPass: ZKP Token
0 ETH0.000016280.67637801
Transfer259518552026-09-11 4:45:5948 mins ago1789101959IN
zkPass: ZKP Token
0 ETH0.000008170.23476243
Transfer259517382026-09-11 4:22:351 hr ago1789100555IN
zkPass: ZKP Token
0 ETH0.000042151.06376972
Transfer259517132026-09-11 4:17:351 hr ago1789100255IN
zkPass: ZKP Token
0 ETH0.000034821
Transfer259516432026-09-11 4:03:351 hr ago1789099415IN
zkPass: ZKP Token
0 ETH0.000061021.07569883
Transfer From259515652026-09-11 3:47:591 hr ago1789098479IN
zkPass: ZKP Token
0 ETH0.000038731.04937394
Transfer259514792026-09-11 3:30:472 hrs ago1789097447IN
zkPass: ZKP Token
0 ETH0.000060461.0658943
Transfer259511592026-09-11 2:26:353 hrs ago1789093595IN
zkPass: ZKP Token
0 ETH0.000061881.56221892
Transfer259511232026-09-11 2:18:593 hrs ago1789093139IN
zkPass: ZKP Token
0 ETH0.000034821
Transfer259510662026-09-11 2:07:353 hrs ago1789092455IN
zkPass: ZKP Token
0 ETH0.000096541.70233293
Transfer259510422026-09-11 2:02:473 hrs ago1789092167IN
zkPass: ZKP Token
0 ETH0.000064721.14103479
Transfer259508422026-09-11 1:22:354 hrs ago1789089755IN
zkPass: ZKP Token
0 ETH0.000003180.09141686
Transfer259501712026-09-10 23:07:476 hrs ago1789081667IN
zkPass: ZKP Token
0 ETH0.000081522.05731387
Transfer259498812026-09-10 22:09:237 hrs ago1789078163IN
zkPass: ZKP Token
0 ETH0.000042181.06465614
Transfer259498452026-09-10 22:01:597 hrs ago1789077719IN
zkPass: ZKP Token
0 ETH0.000008920.25628624
Transfer259497982026-09-10 21:52:357 hrs ago1789077155IN
zkPass: ZKP Token
0 ETH0.000002840.0501622
Transfer259494392026-09-10 20:40:118 hrs ago1789072811IN
zkPass: ZKP Token
0 ETH0.000072162.07201309
Transfer259492742026-09-10 20:06:599 hrs ago1789070819IN
zkPass: ZKP Token
0 ETH0.000173593.06009702
Approve259489402026-09-10 18:59:5910 hrs ago1789066799IN
zkPass: ZKP Token
0 ETH0.0000952.06332029
Transfer259488762026-09-10 18:47:1110 hrs ago1789066031IN
zkPass: ZKP Token
0 ETH0.000082872.09145321
Transfer259488282026-09-10 18:37:3510 hrs ago1789065455IN
zkPass: ZKP Token
0 ETH0.00000310.05988732
Transfer From259484902026-09-10 17:29:4712 hrs ago1789061387IN
zkPass: ZKP Token
0 ETH0.000080622.18280907
Transfer259483882026-09-10 17:09:1112 hrs ago1789060151IN
zkPass: ZKP Token
0 ETH0.000005180.14886897
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method
Block
From
To
Send258049172026-08-21 17:10:3520 days ago1787332235
zkPass: ZKP Token
0.00002835 ETH
Send258049172026-08-21 17:10:3520 days ago1787332235
zkPass: ZKP Token
0.00002835 ETH
Send257879542026-08-19 8:27:1122 days ago1787128031
zkPass: ZKP Token
0.0000322 ETH
Send257879542026-08-19 8:27:1122 days ago1787128031
zkPass: ZKP Token
0.0000322 ETH
Send257332552026-08-11 17:29:5930 days ago1786469399
zkPass: ZKP Token
0.00003603 ETH
Send256433992026-07-30 4:52:4743 days ago1785387167
zkPass: ZKP Token
0.00004051 ETH
Send255796192026-07-21 7:31:5951 days ago1784619119
zkPass: ZKP Token
0.00003603 ETH
Send255796192026-07-21 7:31:5951 days ago1784619119
zkPass: ZKP Token
0.00003603 ETH
Send254626102026-07-05 0:02:2368 days ago1783209743
zkPass: ZKP Token
0.00004557 ETH
Send254626102026-07-05 0:02:2368 days ago1783209743
zkPass: ZKP Token
0.00004557 ETH
Send254532872026-07-03 16:49:1169 days ago1783097351
zkPass: ZKP Token
0.00004557 ETH
Send254532872026-07-03 16:49:1169 days ago1783097351
zkPass: ZKP Token
0.00004557 ETH
Send254514362026-07-03 10:37:4769 days ago1783075067
zkPass: ZKP Token
0.00004557 ETH
Send254514362026-07-03 10:37:4769 days ago1783075067
zkPass: ZKP Token
0.00004557 ETH
Send254508632026-07-03 8:42:3569 days ago1783068155
zkPass: ZKP Token
0.00003728 ETH
Send254508632026-07-03 8:42:3569 days ago1783068155
zkPass: ZKP Token
0.00003728 ETH
Send254508472026-07-03 8:39:2369 days ago1783067963
zkPass: ZKP Token
0.00004557 ETH
Send254508472026-07-03 8:39:2369 days ago1783067963
zkPass: ZKP Token
0.00004557 ETH
Send254495592026-07-03 4:19:2370 days ago1783052363
zkPass: ZKP Token
0.00004557 ETH
Send254495592026-07-03 4:19:2370 days ago1783052363
zkPass: ZKP Token
0.00004557 ETH
Send254495272026-07-03 4:12:5970 days ago1783051979
zkPass: ZKP Token
0.00004557 ETH
Send254495272026-07-03 4:12:5970 days ago1783051979
zkPass: ZKP Token
0.00004557 ETH
Send254494572026-07-03 3:58:5970 days ago1783051139
zkPass: ZKP Token
0.00004557 ETH
Send254494572026-07-03 3:58:5970 days ago1783051139
zkPass: ZKP Token
0.00004557 ETH
Send254491942026-07-03 3:05:5970 days ago1783047959
zkPass: ZKP Token
0.00004557 ETH
View All Internal Transactions
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
Source Code Verified Exact Match

Contract Name

ZKPToken

Compiler Version
v0.8.30+commit.73712a01
Optimization Enabled
Yes with 200 runs
Other Settings
prague EvmVersion
License
-NA-
Contract Source Code (Solidity Standard Json-Input format)
Contract Security Audit
No Contract Security Audit SubmittedSubmit Audit Here
Contract ABI
API
[{"inputs":[{"internalType":"address","name":"lzEndpoint","type":"address"},{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"multiSigTreasury","type":"address"},{"internalType":"uint256","name":"mintingChainId","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"amountSD","type":"uint256"}],"name":"AmountSDOverflowed","type":"error"},{"inputs":[],"name":"CheckpointUnorderedInsertion","type":"error"},{"inputs":[],"name":"ECDSAInvalidSignature","type":"error"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"name":"ECDSAInvalidSignatureLength","type":"error"},{"inputs":[{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"ECDSAInvalidSignatureS","type":"error"},{"inputs":[{"internalType":"uint256","name":"increasedSupply","type":"uint256"},{"internalType":"uint256","name":"cap","type":"uint256"}],"name":"ERC20ExceededSafeSupply","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"allowance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientAllowance","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"needed","type":"uint256"}],"name":"ERC20InsufficientBalance","type":"error"},{"inputs":[{"internalType":"address","name":"approver","type":"address"}],"name":"ERC20InvalidApprover","type":"error"},{"inputs":[{"internalType":"address","name":"receiver","type":"address"}],"name":"ERC20InvalidReceiver","type":"error"},{"inputs":[{"internalType":"address","name":"sender","type":"address"}],"name":"ERC20InvalidSender","type":"error"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"ERC20InvalidSpender","type":"error"},{"inputs":[{"internalType":"uint256","name":"deadline","type":"uint256"}],"name":"ERC2612ExpiredSignature","type":"error"},{"inputs":[{"internalType":"address","name":"signer","type":"address"},{"internalType":"address","name":"owner","type":"address"}],"name":"ERC2612InvalidSigner","type":"error"},{"inputs":[{"internalType":"uint256","name":"timepoint","type":"uint256"},{"internalType":"uint48","name":"clock","type":"uint48"}],"name":"ERC5805FutureLookup","type":"error"},{"inputs":[],"name":"ERC6372InconsistentClock","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"currentNonce","type":"uint256"}],"name":"InvalidAccountNonce","type":"error"},{"inputs":[],"name":"InvalidDelegate","type":"error"},{"inputs":[],"name":"InvalidEndpointCall","type":"error"},{"inputs":[],"name":"InvalidLocalDecimals","type":"error"},{"inputs":[{"internalType":"bytes","name":"options","type":"bytes"}],"name":"InvalidOptions","type":"error"},{"inputs":[],"name":"InvalidShortString","type":"error"},{"inputs":[],"name":"LzTokenUnavailable","type":"error"},{"inputs":[{"internalType":"uint32","name":"eid","type":"uint32"}],"name":"NoPeer","type":"error"},{"inputs":[{"internalType":"uint256","name":"msgValue","type":"uint256"}],"name":"NotEnoughNative","type":"error"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"OnlyEndpoint","type":"error"},{"inputs":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"bytes32","name":"sender","type":"bytes32"}],"name":"OnlyPeer","type":"error"},{"inputs":[],"name":"OnlySelf","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"uint8","name":"bits","type":"uint8"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"SafeCastOverflowedUintDowncast","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[{"internalType":"bytes","name":"result","type":"bytes"}],"name":"SimulationResult","type":"error"},{"inputs":[{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"}],"name":"SlippageExceeded","type":"error"},{"inputs":[{"internalType":"string","name":"str","type":"string"}],"name":"StringTooLong","type":"error"},{"inputs":[{"internalType":"uint256","name":"expiry","type":"uint256"}],"name":"VotesExpiredSignature","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":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"address","name":"fromDelegate","type":"address"},{"indexed":true,"internalType":"address","name":"toDelegate","type":"address"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousVotes","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newVotes","type":"uint256"}],"name":"DelegateVotesChanged","type":"event"},{"anonymous":false,"inputs":[],"name":"EIP712DomainChanged","type":"event"},{"anonymous":false,"inputs":[{"components":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"uint16","name":"msgType","type":"uint16"},{"internalType":"bytes","name":"options","type":"bytes"}],"indexed":false,"internalType":"struct EnforcedOptionParam[]","name":"_enforcedOptions","type":"tuple[]"}],"name":"EnforcedOptionSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"treasury","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"supplyCap","type":"uint256"}],"name":"InitialSupplyMinted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"inspector","type":"address"}],"name":"MsgInspectorSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"guid","type":"bytes32"},{"indexed":false,"internalType":"uint32","name":"srcEid","type":"uint32"},{"indexed":true,"internalType":"address","name":"toAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"name":"OFTReceived","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"guid","type":"bytes32"},{"indexed":false,"internalType":"uint32","name":"dstEid","type":"uint32"},{"indexed":true,"internalType":"address","name":"fromAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountSentLD","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"name":"OFTSent","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":"uint32","name":"eid","type":"uint32"},{"indexed":false,"internalType":"bytes32","name":"peer","type":"bytes32"}],"name":"PeerSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"preCrimeAddress","type":"address"}],"name":"PreCrimeSet","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":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"CLOCK_MODE","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SEND","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SEND_AND_CALL","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SUPPLY_CAP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"srcEid","type":"uint32"},{"internalType":"bytes32","name":"sender","type":"bytes32"},{"internalType":"uint64","name":"nonce","type":"uint64"}],"internalType":"struct Origin","name":"origin","type":"tuple"}],"name":"allowInitializePath","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"approvalRequired","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint32","name":"pos","type":"uint32"}],"name":"checkpoints","outputs":[{"components":[{"internalType":"uint48","name":"_key","type":"uint48"},{"internalType":"uint208","name":"_value","type":"uint208"}],"internalType":"struct Checkpoints.Checkpoint208","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clock","outputs":[{"internalType":"uint48","name":"","type":"uint48"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_eid","type":"uint32"},{"internalType":"uint16","name":"_msgType","type":"uint16"},{"internalType":"bytes","name":"_extraOptions","type":"bytes"}],"name":"combineOptions","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimalConversionRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"name":"delegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"eip712Domain","outputs":[{"internalType":"bytes1","name":"fields","type":"bytes1"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"version","type":"string"},{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"address","name":"verifyingContract","type":"address"},{"internalType":"bytes32","name":"salt","type":"bytes32"},{"internalType":"uint256[]","name":"extensions","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"endpoint","outputs":[{"internalType":"contract ILayerZeroEndpointV2","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"uint16","name":"msgType","type":"uint16"}],"name":"enforcedOptions","outputs":[{"internalType":"bytes","name":"enforcedOption","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"timepoint","type":"uint256"}],"name":"getPastTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"timepoint","type":"uint256"}],"name":"getPastVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"invalidatePermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"srcEid","type":"uint32"},{"internalType":"bytes32","name":"sender","type":"bytes32"},{"internalType":"uint64","name":"nonce","type":"uint64"}],"internalType":"struct Origin","name":"","type":"tuple"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"address","name":"_sender","type":"address"}],"name":"isComposeMsgSender","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"_eid","type":"uint32"},{"internalType":"bytes32","name":"_peer","type":"bytes32"}],"name":"isPeer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"srcEid","type":"uint32"},{"internalType":"bytes32","name":"sender","type":"bytes32"},{"internalType":"uint64","name":"nonce","type":"uint64"}],"internalType":"struct Origin","name":"_origin","type":"tuple"},{"internalType":"bytes32","name":"_guid","type":"bytes32"},{"internalType":"bytes","name":"_message","type":"bytes"},{"internalType":"address","name":"_executor","type":"address"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"name":"lzReceive","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"components":[{"internalType":"uint32","name":"srcEid","type":"uint32"},{"internalType":"bytes32","name":"sender","type":"bytes32"},{"internalType":"uint64","name":"nonce","type":"uint64"}],"internalType":"struct Origin","name":"origin","type":"tuple"},{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"address","name":"receiver","type":"address"},{"internalType":"bytes32","name":"guid","type":"bytes32"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"address","name":"executor","type":"address"},{"internalType":"bytes","name":"message","type":"bytes"},{"internalType":"bytes","name":"extraData","type":"bytes"}],"internalType":"struct InboundPacket[]","name":"_packets","type":"tuple[]"}],"name":"lzReceiveAndRevert","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"srcEid","type":"uint32"},{"internalType":"bytes32","name":"sender","type":"bytes32"},{"internalType":"uint64","name":"nonce","type":"uint64"}],"internalType":"struct Origin","name":"_origin","type":"tuple"},{"internalType":"bytes32","name":"_guid","type":"bytes32"},{"internalType":"bytes","name":"_message","type":"bytes"},{"internalType":"address","name":"_executor","type":"address"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"name":"lzReceiveSimulate","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"msgInspector","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"","type":"uint32"},{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"nextNonce","outputs":[{"internalType":"uint64","name":"nonce","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"numCheckpoints","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"oApp","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"oAppVersion","outputs":[{"internalType":"uint64","name":"senderVersion","type":"uint64"},{"internalType":"uint64","name":"receiverVersion","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"oftVersion","outputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"},{"internalType":"uint64","name":"version","type":"uint64"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint32","name":"eid","type":"uint32"}],"name":"peers","outputs":[{"internalType":"bytes32","name":"peer","type":"bytes32"}],"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":"preCrime","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"bytes32","name":"to","type":"bytes32"},{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"bytes","name":"extraOptions","type":"bytes"},{"internalType":"bytes","name":"composeMsg","type":"bytes"},{"internalType":"bytes","name":"oftCmd","type":"bytes"}],"internalType":"struct SendParam","name":"_sendParam","type":"tuple"}],"name":"quoteOFT","outputs":[{"components":[{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"uint256","name":"maxAmountLD","type":"uint256"}],"internalType":"struct OFTLimit","name":"oftLimit","type":"tuple"},{"components":[{"internalType":"int256","name":"feeAmountLD","type":"int256"},{"internalType":"string","name":"description","type":"string"}],"internalType":"struct OFTFeeDetail[]","name":"oftFeeDetails","type":"tuple[]"},{"components":[{"internalType":"uint256","name":"amountSentLD","type":"uint256"},{"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"internalType":"struct OFTReceipt","name":"oftReceipt","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"bytes32","name":"to","type":"bytes32"},{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"bytes","name":"extraOptions","type":"bytes"},{"internalType":"bytes","name":"composeMsg","type":"bytes"},{"internalType":"bytes","name":"oftCmd","type":"bytes"}],"internalType":"struct SendParam","name":"_sendParam","type":"tuple"},{"internalType":"bool","name":"_payInLzToken","type":"bool"}],"name":"quoteSend","outputs":[{"components":[{"internalType":"uint256","name":"nativeFee","type":"uint256"},{"internalType":"uint256","name":"lzTokenFee","type":"uint256"}],"internalType":"struct MessagingFee","name":"msgFee","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"dstEid","type":"uint32"},{"internalType":"bytes32","name":"to","type":"bytes32"},{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"bytes","name":"extraOptions","type":"bytes"},{"internalType":"bytes","name":"composeMsg","type":"bytes"},{"internalType":"bytes","name":"oftCmd","type":"bytes"}],"internalType":"struct SendParam","name":"_sendParam","type":"tuple"},{"components":[{"internalType":"uint256","name":"nativeFee","type":"uint256"},{"internalType":"uint256","name":"lzTokenFee","type":"uint256"}],"internalType":"struct MessagingFee","name":"_fee","type":"tuple"},{"internalType":"address","name":"_refundAddress","type":"address"}],"name":"send","outputs":[{"components":[{"internalType":"bytes32","name":"guid","type":"bytes32"},{"internalType":"uint64","name":"nonce","type":"uint64"},{"components":[{"internalType":"uint256","name":"nativeFee","type":"uint256"},{"internalType":"uint256","name":"lzTokenFee","type":"uint256"}],"internalType":"struct MessagingFee","name":"fee","type":"tuple"}],"internalType":"struct MessagingReceipt","name":"msgReceipt","type":"tuple"},{"components":[{"internalType":"uint256","name":"amountSentLD","type":"uint256"},{"internalType":"uint256","name":"amountReceivedLD","type":"uint256"}],"internalType":"struct OFTReceipt","name":"oftReceipt","type":"tuple"}],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_delegate","type":"address"}],"name":"setDelegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"uint32","name":"eid","type":"uint32"},{"internalType":"uint16","name":"msgType","type":"uint16"},{"internalType":"bytes","name":"options","type":"bytes"}],"internalType":"struct EnforcedOptionParam[]","name":"_enforcedOptions","type":"tuple[]"}],"name":"setEnforcedOptions","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_msgInspector","type":"address"}],"name":"setMsgInspector","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint32","name":"_eid","type":"uint32"},{"internalType":"bytes32","name":"_peer","type":"bytes32"}],"name":"setPeer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_preCrime","type":"address"}],"name":"setPreCrime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sharedDecimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","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":"value","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":"nonpayable","type":"function"}]
6101c0604052346100da5761001e61001561013f565b929190916102dd565b604051613e949081610fcf82396080518181816108370152818161095701528181610e7f0152818161125001528181611f10015281816139080152613abf015260a051818181610dcf0152818161179f015281816127250152818161311701526134b5015260c0518161291e015260e051816129db015261010051816128e80152610120518161296d01526101405181612993015261016051816114d2015261018051816114fb01526101a05181818161053101526131b10152f35b5f80fd5b634e487b7160e01b5f52604160045260245ffd5b601f909101601f19168101906001600160401b0382119082101761011557604052565b6100de565b604051906101296040836100f2565b565b51906001600160a01b03821682036100da57565b614ea36080813803918260405193849261015982856100f2565b8339810103126100da5761016c8161012b565b6101786020830161012b565b9260606101876040850161012b565b9301519193929190565b604051906101a06040836100f2565b60038252565b604051906101b56040836100f2565b60018252565b604051906101ca6040836100f2565b60068252657a6b5061737360d01b6020830152565b156101e657565b60405162461bcd60e51b815260206004820152602160248201527f4c5a456e64706f696e742063616e6e6f74206265207a65726f206164647265736044820152607360f81b6064820152608490fd5b1561023c57565b60405162461bcd60e51b815260206004820152601c60248201527f4f776e65722063616e6e6f74206265207a65726f2061646472657373000000006044820152606490fd5b1561028857565b60405162461bcd60e51b815260206004820152602760248201527f4d756c746953696754726561737572792063616e6e6f74206265207a65726f206044820152666164647265737360c81b6064820152608490fd5b906102e66101bb565b916102ef6101bb565b6102f7610191565b936205a4b560ec1b602086015261030c6101a6565b916020830193603160f81b855261032286610737565b6001600160a01b0390811660808190529590811615610493576001600160a01b038616803b156100da5760405163ca5eb5e160e01b81526001600160a01b039290921660048301525f908290602490829084905af1801561048e57610474575b50610405956103a86103ad926103a061039b60066106fb565b610711565b60a052610529565b61060e565b6103b68161084c565b610160526103c382610941565b610180526020815191012061012052519020610140524660e0526103e5610a33565b60c05230610100526b033b2e3c9fd0803ce80000006101a05215156101df565b61040f6001610235565b6001600160a01b03811691610425831515610281565b461461042f575050565b6101a05161043c9161079b565b6101a0516040805182815260208101929092527f0cc641e7dc0859da7d01e393d80f0a65251e31269cfa27fd7dada9edf5d6b8af91a2565b806104825f610488936100f2565b80610722565b5f610382565b61072c565b632d618d8160e21b5f5260045ffd5b90600182811c921680156104d0575b60208310146104bc57565b634e487b7160e01b5f52602260045260245ffd5b91607f16916104b1565b601f82116104e757505050565b5f5260205f20906020601f840160051c8301931061051f575b601f0160051c01905b818110610514575050565b5f8155600101610509565b9091508190610500565b80519091906001600160401b038111610115576105528161054b6008546104a2565b60086104da565b602092601f821160011461059257610582929382915f92610587575b50508160011b915f199060031b1c19161790565b600855565b015190505f8061056e565b60085f52601f198216937ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3915f5b8681106105f657508360019596106105de575b505050811b01600855565b01515f1960f88460031b161c191690555f80806105d3565b919260206001819286850151815501940192016105c0565b80519091906001600160401b03811161011557610637816106306009546104a2565b60096104da565b602092601f821160011461066b57610666929382915f926105875750508160011b915f199060031b1c19161790565b600955565b60095f52601f198216937f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af915f5b8681106106cf57508360019596106106b7575b505050811b01600955565b01515f1960f88460031b161c191690555f80806106ac565b91926020600181928685015181550194019201610699565b634e487b7160e01b5f52601160045260245ffd5b60ff166012039060ff821161070c57565b6106e7565b60ff16604d811161070c57600a0a90565b5f9103126100da57565b6040513d5f823e3d90fd5b6001600160a01b03168015610788575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3565b631e4fbdf760e01b5f525f60045260245ffd5b91906001600160a01b03831680156108395760075482810180911161070c57600755805f52600560205260405f208281540190555f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6040518061080486829190602083019252565b0390a3600754926101a0518085116108225750610129929350610afd565b630e58ae9360e11b5f52600485905260245260445ffd5b63ec442f0560e01b5f525f60045260245ffd5b908151602081105f1461086757509061086490610a92565b90565b6001600160401b0381116101155761088b81610884600a546104a2565b600a6104da565b602092601f82116001146108c2576108ba929382915f926105875750508160011b915f199060031b1c19161790565b600a5560ff90565b600a5f52601f198216937fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a8915f5b8681106109295750836001959610610911575b505050811b01600a5560ff90565b01515f1960f88460031b161c191690555f8080610903565b919260206001819286850151815501940192016108f0565b908151602081105f1461095957509061086490610a92565b6001600160401b0381116101155761097d81610976600b546104a2565b600b6104da565b602092601f82116001146109b4576109ac929382915f926105875750508160011b915f199060031b1c19161790565b600b5560ff90565b600b5f52601f198216937f0175b7a638427703f0dbe7bb9bbf987a2551717b34e79f33b5b1008d1fa01db9915f5b868110610a1b5750836001959610610a03575b505050811b01600b5560ff90565b01515f1960f88460031b161c191690555f80806109f5565b919260206001819286850151815501940192016109e2565b61012051610140516040519060208201927f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8452604083015260608201524660808201523060a082015260a08152610a8c60c0826100f2565b51902090565b601f815111610abd576020815191015160208210610aae571790565b5f198260200360031b1b161790565b604460209160405192839163305a27a960e01b83528160048401528051918291826024860152018484015e5f828201840152601f01601f19168101030190fd5b90610b0781610bfc565b9165ffffffffffff4311610be457600f5480610bae5750610b41610b31610129945f5b6001610f72565b65ffffffffffff4316600f610e9c565b50506001600160a01b03168015610b96575b600d6020527f81955a0a11e65eac625c29e8882660bae4e165a75d72780094acae8ece9a29ee545f9182526040909120546001600160a01b039081169116610d2b565b610ba7610ba283610bfc565b610c2d565b5050610b53565b92835f1981011161070c57600f5f525f516020614e635f395f51905f529093015461012993610b4191610b31919060301c610b2a565b6306dfcc6560e41b5f5260306004524360245260445ffd5b6001600160d01b038111610c16576001600160d01b031690565b6306dfcc6560e41b5f5260d060045260245260445ffd5b65ffffffffffff4311610be457600f5480610c575750610b31610c53915f5b6002610f72565b9091565b805f1981011161070c57600f5f525f516020614e635f395f51905f520154610c5391610b319160301c610c4c565b65ffffffffffff4311610be457805480610cb95750610ca9610c53925f6002610f72565b9065ffffffffffff431690610e9c565b805f1981011161070c575f82815260209020015f190154610c5392610ca99160301c610c4c565b65ffffffffffff4311610be457805480610d045750610ca9610c53925f6001610f72565b805f1981011161070c575f82815260209020015f190154610c5392610ca99160301c610b2a565b6001600160a01b03808316939291908116908185141580610e1e575b610d53575b5050505050565b81610dc4575b505082610d68575b8080610d4c565b6001600160a01b03165f908152600e602052604090205f516020614e835f395f51905f5291610da191610d9b9091610bfc565b90610ce0565b604080516001600160d01b039384168152919092166020820152a25f8080610d61565b6001600160a01b03165f908152600e602052604090205f516020614e835f395f51905f5290610dfc90610df686610bfc565b90610c85565b604080516001600160d01b039384168152919092166020820152a25f80610d59565b50831515610d47565b5f1981019190821161070c57565b908154680100000000000000008110156101155760018101808455811015610e88575f9283526020928390208251929093015160301b65ffffffffffff191665ffffffffffff9290921691909117910155565b634e487b7160e01b5f52603260045260245ffd5b80549293928015610f4857610eb3610ebe91610e27565b825f5260205f200190565b8054603081901c9365ffffffffffff91821692918116808411610f3957879303610f055750610f0192509065ffffffffffff82549181199060301b169116179055565b9190565b915050610f0191610f25610f1761011a565b65ffffffffffff9093168352565b6001600160d01b0386166020830152610e35565b632520601d60e01b5f5260045ffd5b5090610f6d91610f59610f1761011a565b6001600160d01b0385166020830152610e35565b5f9190565b91909180600114610fb457600214610f9857634e487b7160e01b5f52605160045260245ffd5b6001600160d01b039081169181169190910390811161070c5790565b506001600160d01b039182169082160190811161070c579056fe60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146103af578063095ea7b3146103aa5780630cfccc83146103a55780630d35b415146103a0578063111ecdad1461039b57806313137d6514610396578063134d4f2514610391578063156a0d0f1461038c57806317442b701461038757806318160ddd146103825780631ab8e8e91461037d5780631f5e13341461037857806323b872dd14610373578063313ce5671461036e5780633400288b146103695780633644e515146103645780633a46b1a81461035f5780633b6f743b1461035a5780634bf5d7e91461035557806352ae28791461029c5780635535d46114610350578063587cde1e1461034b5780635a0dfe4d146103465780635c19a95c146103415780635e280f111461033c5780636fc1b31e146103375780636fcfff451461033257806370a082311461032d578063715018a6146103285780637d25a05e146103235780637ecebe001461031e57806382413eac1461031957806384b0196e14610314578063857749b01461030f5780638da5cb5b1461030a5780638e539e8c1461030557806391ddadf41461030057806395d89b41146102fb578063963efcaa146102f65780639ab24eb0146102f15780639f68b964146102ec578063a9059cbb146102e7578063b731ea0a146102e2578063b98bd070146102dd578063bb0b6a53146102d8578063bc70b354146102d3578063bd815db0146102ce578063c3cda520146102c9578063c7c7f5b3146102c4578063ca5eb5e1146102bf578063d045a0dc146102ba578063d4243885146102b5578063d505accf146102b0578063dd62ed3e146102ab578063f1127ed8146102a6578063f2fde38b146102a1578063fc0c546a1461029c5763ff7bd03d14610297575f80fd5b6122ea565b610fae565b612261565b6121b1565b612152565b612026565b611fb6565b611f85565b611ee8565b611d19565b611bb5565b611a41565b6119ed565b6119b4565b6118d1565b611857565b61182d565b611813565b6117c2565b611788565b6116e3565b6116b8565b6115f9565b6115d2565b6115b7565b6114ba565b61145c565b611421565b6113fb565b611393565b611357565b6112ef565b61127f565b61123b565b611215565b6111cf565b61118c565b611111565b610f1e565b610d6b565b610c78565b610c56565b610bd1565b610ba8565b610b00565b610ae5565b610abb565b610a9e565b610a7d565b610a57565b610a3c565b610824565b610751565b610602565b61051a565b6104e5565b6103fa565b5f9103126103be57565b5f80fd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060206103f79281815201906103c2565b90565b346103be575f3660031901126103be576040515f60085461041a81610fe8565b80845290600181169081156104b05750600114610452575b61044e83610442818503826110f0565b604051918291826103e6565b0390f35b60085f9081527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3939250905b80821061049657509091508101602001610442610432565b91926001816020925483858801015201910190929161047e565b60ff191660208086019190915291151560051b840190910191506104429050610432565b6001600160a01b038116036103be57565b346103be5760403660031901126103be5761050f600435610505816104d4565b6024359033612fd9565b602060405160018152f35b346103be575f3660031901126103be5760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b908160e09103126103be5790565b9392919061057e8560a081019260208091805184520151910152565b60a06040860152815180915260c0850190602060c08260051b8801019301915f905b8282106105c657505050509060606105c49294019060208091805184520151910152565b565b909192936020806105f460019360bf198c82030186526040838a5180518452015191818582015201906103c2565b9601920192019092916105a0565b346103be5760203660031901126103be576004356001600160401b0381116103be57610632903690600401610554565b61063a612361565b50610643612361565b50604051637e062a3560e11b8152602081600481305afa90811561071f576004916020915f91610724575b506040516318160ddd60e01b815292839182906001600160a01b03165afa90811561071f575f916106f0575b506106a3612343565b905f8252602082015261044e6106d46106ba6123bf565b9360408101356106ce606083013592612405565b5061271c565b6106dc612343565b918252602082015260405193849384610562565b610712915060203d602011610718575b61070a81836110f0565b810190612399565b5f61069a565b503d610700565b61238e565b6107449150823d841161074a575b61073c81836110f0565b810190612379565b5f61066e565b503d610732565b346103be575f3660031901126103be576004546040516001600160a01b039091168152602090f35b60609060031901126103be57600490565b9181601f840112156103be578235916001600160401b0383116103be57602083818601950101116103be57565b90600319820160e081126103be576060136103be57600491606435916084356001600160401b0381116103be57826107f19160040161078a565b9290929160a435610801816104d4565b9160c435906001600160401b0382116103be576108209160040161078a565b9091565b61082d366107b7565b50919492915050337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031603610a2957813561086f81610bc3565b6108788161276e565b906020840135809203610a045750506108a061089485836130eb565b6001600160a01b031690565b936108c66108b66108b183856130f7565b613109565b6108bf85612405565b908761313d565b916108d18260281090565b610929575b50506109027fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c92612405565b6040805163ffffffff92909216825260208201929092526001600160a01b039490941693a3005b90826109549261094e61093e6040880161279e565b9361094888612405565b9261324e565b9261326a565b917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316803b156103be57604051633e5ac80960e11b8152935f9185918290849082906109ad908b8d600485016127a8565b03925af190811561071f577fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c93610902926109ea575b50926108d6565b806109f85f6109fe936110f0565b806103b4565b5f6109e3565b80610a1363ffffffff92610bc3565b63309afaf360e21b5f521660045260245260445ffd5b6391ac5e4f60e01b5f523360045260245ffd5b346103be575f3660031901126103be57602060405160028152f35b346103be575f3660031901126103be576040805162b9270b60e21b815260016020820152f35b346103be575f3660031901126103be57604080516001815260026020820152f35b346103be575f3660031901126103be576020600754604051908152f35b346103be575f3660031901126103be57335f908152600c602052604090208054600181019091555b005b346103be575f3660031901126103be57602060405160018152f35b346103be5760603660031901126103be57600435610b1d816104d4565b602435610b29816104d4565b6001600160a01b0382165f9081526006602090815260408083203384529091529020549160443591905f198410610b71575b610b6593506127d2565b60405160018152602090f35b828410610b8d57610b8883610b6595033383613074565b610b5b565b8284637dc7a0d960e11b5f523360045260245260445260645ffd5b346103be575f3660031901126103be57602060405160128152f35b63ffffffff8116036103be57565b346103be5760403660031901126103be577f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b600435610c0f81610bc3565b60243590610c1b6128bf565b63ffffffff81165f5260016020528160405f2055610c51604051928392836020909392919363ffffffff60408201951681520152565b0390a1005b346103be575f3660031901126103be576020610c706128e5565b604051908152f35b346103be5760403660031901126103be57600435610c95816104d4565b6001600160a01b03165f908152600e60205260409020610cb6602435612a01565b8154905f829160058411610d09575b610cd093508461344b565b9081610cee57505060205f5b6040516001600160d01b039091168152f35b610cf9602092612a3a565b905f52815f20015460301c610cdc565b9192610d14816132ed565b8103908111610d5c57610cd093855f5265ffffffffffff8260205f2001541665ffffffffffff8516105f14610d4a575091610cc5565b929150610d5690612a48565b90610cc5565b61232f565b801515036103be57565b346103be5760403660031901126103be576004356001600160401b0381116103be57610d9b903690600401610554565b602435610da781610d61565b610daf612361565b50813591606081013590610dfa6040820135610dca86610bc3565b610df57f000000000000000000000000000000000000000000000000000000000000000080926130ba565b6130d8565b91808310610f0857610e7b604086610e6087610e168888612a9d565b90610e2085610bc3565b610e28612361565b50610e328561276e565b610e49610e3d612352565b63ffffffff9097168752565b602086015285850152606084015215156080830152565b815180938192631bb8518b60e31b8352309060048401612bb7565b03817f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165afa801561071f5761044e915f91610ed9575b5060405191829182815181526020918201519181019190915260400190565b610efb915060403d604011610f01575b610ef381836110f0565b810190612ba3565b82610eba565b503d610ee9565b826371c4efed60e01b5f5260045260245260445ffd5b346103be575f3660031901126103be57610f37436132be565b65ffffffffffff80610f48436132be565b16911603610f9f5761044e604051610f616040826110f0565b601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c7400000060208201526040519182916020835260208301906103c2565b6301bfc1c560e61b5f5260045ffd5b346103be575f3660031901126103be576020604051308152f35b6024359061ffff821682036103be57565b359061ffff821682036103be57565b90600182811c92168015611016575b602083101461100257565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610ff7565b5f929181549161102f83610fe8565b8083529260018116908115611084575060011461104b57505050565b5f9081526020812093945091925b83831061106a575060209250010190565b600181602092949394548385870101520191019190611059565b915050602093945060ff929192191683830152151560051b010190565b634e487b7160e01b5f52604160045260245ffd5b606081019081106001600160401b038211176110d057604052565b6110a1565b604081019081106001600160401b038211176110d057604052565b90601f801991011681019081106001600160401b038211176110d057604052565b346103be5760403660031901126103be5761044e61117161117861116560043561113a81610bc3565b63ffffffff611147610fc8565b91165f52600360205260405f209061ffff165f5260205260405f2090565b60405192838092611020565b03826110f0565b6040519182916020835260208301906103c2565b346103be5760203660031901126103be576004356111a9816104d4565b60018060a01b03165f52600d602052602060018060a01b0360405f205416604051908152f35b346103be5760403660031901126103be57602061120b6004356111f181610bc3565b6024359063ffffffff165f52600160205260405f20541490565b6040519015158152f35b346103be5760203660031901126103be57610ae3600435611235816104d4565b33612c25565b346103be575f3660031901126103be576040517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168152602090f35b346103be5760203660031901126103be577ff0be4f1e87349231d80c36b33f9e8639658eeaf474014dee15a3e6a4d441419760206004356112bf816104d4565b6112c76128bf565b600480546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346103be5760203660031901126103be5760043561130c816104d4565b6001600160a01b03165f908152600e602052604090205463ffffffff81116113405760405163ffffffff9091168152602090f35b6306dfcc6560e41b5f52602060045260245260445ffd5b346103be5760203660031901126103be576020610c70600435611379816104d4565b6001600160a01b03165f9081526005602052604090205490565b346103be575f3660031901126103be5760405162461bcd60e51b815260206004820152602a60248201527f5a4b50546f6b656e3a2072656e6f756e63696e67206f776e65727368697020696044820152691cc8191a5cd8589b195960b21b6064820152608490fd5b346103be5760403660031901126103be57611417600435610bc3565b60206040515f8152f35b346103be5760203660031901126103be5760043561143e816104d4565b60018060a01b03165f52600c602052602060405f2054604051908152f35b346103be5760a03660031901126103be5761147636610779565b506064356001600160401b0381116103be5761149690369060040161078a565b505060206084356114a6816104d4565b6040516001600160a01b0390911630148152f35b346103be575f3660031901126103be5761155e6114f67f000000000000000000000000000000000000000000000000000000000000000061369d565b61151f7f00000000000000000000000000000000000000000000000000000000000000006136f6565b602060405161152e82826110f0565b5f81528161156c81830194601f198301368737604051978897600f60f81b895260e0858a015260e08901906103c2565b9087820360408901526103c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b8281106115a057505050500390f35b835185528695509381019392810192600101611591565b346103be575f3660031901126103be57602060405160068152f35b346103be575f3660031901126103be575f546040516001600160a01b039091168152602090f35b346103be5760203660031901126103be57611615600435612a01565b600f54905f829160058411611664575b6116319350600f61344b565b8061164257506040515f8152602090f35b61165f611650602092612a3a565b600f5f52825f20015460301c90565b610cdc565b919261166f816132ed565b8103908111610d5c5761163193600f5f5265ffffffffffff8260205f2001541665ffffffffffff8516105f146116a6575091611625565b9291506116b290612a48565b90611625565b346103be575f3660031901126103be5760206116d3436132be565b65ffffffffffff60405191168152f35b346103be575f3660031901126103be576040515f60095461170381610fe8565b80845290600181169081156104b0575060011461172a5761044e83610442818503826110f0565b60095f9081527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af939250905b80821061176e57509091508101602001610442610432565b919260018160209254838588010152019101909291611756565b346103be575f3660031901126103be5760206040517f00000000000000000000000000000000000000000000000000000000000000008152f35b346103be5760203660031901126103be576004356117df816104d4565b6001600160a01b03165f908152600e602090815260409091206001600160d01b039061180a90612ca6565b16604051908152f35b346103be575f3660031901126103be5760206040515f8152f35b346103be5760403660031901126103be5761050f60043561184d816104d4565b60243590336127d2565b346103be575f3660031901126103be576002546040516001600160a01b039091168152602090f35b9060206003198301126103be576004356001600160401b0381116103be5760040182601f820112156103be578035926001600160401b0384116103be576020808301928560051b0101116103be579190565b346103be576118df3661187f565b906118e86128bf565b6118f1826123a8565b906118ff60405192836110f0565b828252602082019260051b8101903682116103be5780935b82851061192757610ae384612e82565b84356001600160401b0381116103be578201906060823603126103be5760405191611951836110b5565b803561195c81610bc3565b835261196a60208201610fd9565b60208401526040810135906001600160401b0382116103be57019036601f830112156103be576020926119a484933690858135910161242a565b6040820152815201940193611917565b346103be5760203660031901126103be5763ffffffff6004356119d681610bc3565b165f526001602052602060405f2054604051908152f35b346103be5760603660031901126103be57600435611a0a81610bc3565b611a12610fc8565b604435906001600160401b0382116103be5761044e92611a3961117893369060040161078a565b9290916124ef565b611a4a3661187f565b5f5b818110611ab957604051638e9e709960e01b81525f81600481335afa801561071f57611a93915f91611a97575b50604051638351eea760e01b8152918291600483016103e6565b0390fd5b611ab391503d805f833e611aab81836110f0565b810190612694565b82611a79565b611ac48183856125a5565b90611af4611af0611ad484612405565b60208501359063ffffffff165f52600160205260405f20541490565b1590565b611b8c5760c08201359160a0810135611b116101008301836125cd565b949091611b2060e085016125ff565b93611b2f6101208201826125cd565b959095303b156103be575f96611b5c926040519a8b9889978897633411683760e21b89526004890161261a565b0391305af191821561071f57600192611b78575b505b01611a4c565b806109f85f611b86936110f0565b5f611b70565b60019150611b72565b6064359060ff821682036103be57565b6084359060ff821682036103be57565b346103be5760c03660031901126103be57600435611bd2816104d4565b60243590604435611be1611b95565b6084359060a43592804211611cb65791611c669391611c58611c5d9460405160208101917fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf835260018060a01b038a1660408301528a6060830152608082015260808152611c5060a0826110f0565b519020612f7c565b61372d565b909291926137cd565b6001600160a01b0381165f908152600c60205260409020805460018101909155809303611c9757610ae39250612c25565b90506301d4b62360e61b5f5260018060a01b031660045260245260445ffd5b632341d78760e11b5f5260045260245ffd5b9160806105c4929493611d08604060c0830197805184526001600160401b0360208201511660208501520151604083019060208091805184520151910152565b019060208091805184520151910152565b60803660031901126103be576004356001600160401b0381116103be57611d44903690600401610554565b60403660231901126103be57606435611d5c816104d4565b611d646126f6565b50611d6d612361565b50611d766126f6565b50611d7f612361565b50606082013590611d986040840135610dca8535610bc3565b91808310610f0857503315611ed557335f90815260056020526040902054828110611eba57335f908152600560205260409020611e3f92918490039055611de28360075403600755565b6040518381525f9033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602090a3611e1c8333613bb9565b611e268385612a9d565b611e2f86612405565b91611e3936612fb1565b9261388b565b90611e48612343565b928184528160208501527f85496b760a4b7f8d66384b9df21b381f5d1b1e79f229a47aaf4c232edc2fe59a611ea8611e81855193612405565b936040519181839233978460409194939263ffffffff606083019616825260208201520152565b0390a361044e60405192839283611cc8565b63391434e360e21b5f5233600452602452604482905260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b346103be575f60203660031901126103be57600435611f06816104d4565b611f0e6128bf565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690813b156103be5760405163ca5eb5e160e01b81526001600160a01b039091166004820152905f908290602490829084905af1801561071f57611f79575080f35b610ae391505f906110f0565b611f8e366107b7565b5050509290303303611fa7576108a061089485836130eb565b63029a949d60e31b5f5260045ffd5b346103be5760203660031901126103be577fd48d879cef83a1c0bdda516f27b13ddb1b3f8bbac1c9e1511bb2a659c24277606020600435611ff6816104d4565b611ffe6128bf565b600280546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346103be5760e03660031901126103be57600435612043816104d4565b60243561204f816104d4565b604435906064359261205f611ba5565b60a43560c4359086421161213f576001600160a01b0384165f908152600c6020526040902080546001810190915561210493906120ff909860405160208101917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9835260018060a01b0389169b8c604084015260018060a01b038b1660608401528b608084015260a083015260c082015260c08152611c5060e0826110f0565b612fa2565b936001600160a01b0385160361211e57610ae39350612fd9565b6325c0072360e11b5f526001600160a01b038085166004521660245260445ffd5b8663313c898160e11b5f5260045260245ffd5b346103be5760403660031901126103be5760206121a8600435612174816104d4565b60243590612181826104d4565b60018060a01b03165f526006835260405f209060018060a01b03165f5260205260405f2090565b54604051908152f35b346103be5760403660031901126103be5761044e6122176004356121d4816104d4565b602435906121e182610bc3565b6121e9612361565b506121f2612361565b506001600160a01b03165f908152600e60205260409020612211612361565b5061397b565b5060405190612225826110d5565b5465ffffffffffff811680835260309190911c60209283019081526040805192835290516001600160d01b031692820192909252918291820190565b346103be5760203660031901126103be5760043561227e816104d4565b6122866128bf565b6001600160a01b031680156122d7575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346103be5760603660031901126103be57602061230636610779565b63ffffffff813561231681610bc3565b165f52600182528160405f205491013560405191148152f35b634e487b7160e01b5f52601160045260245ffd5b604051906105c46040836110f0565b604051906105c460a0836110f0565b6040519061236e826110d5565b5f6020838281520152565b908160209103126103be57516103f7816104d4565b6040513d5f823e3d90fd5b908160209103126103be575190565b6001600160401b0381116110d05760051b60200190565b604051906123ce6020836110f0565b5f80835282815b8281106123e157505050565b6020906040516123f0816110d5565b5f8152606083820152828285010152016123d5565b356103f781610bc3565b6001600160401b0381116110d057601f01601f191660200190565b9291926124368261240f565b9161244460405193846110f0565b8294818452818301116103be578281602093845f960137010152565b90929192836002116103be5783116103be57600201916001190190565b805191908290602001825e015f815290565b6124a993926105c49281604051968794602086019061247d565b918237015f815203601f1981018452836110f0565b908060209392818452848401375f828201840152601f01601f1916010190565b9160206103f79381815201916124be565b6111656111719263ffffffff6125209397959697165f52600360205260405f209061ffff165f5260205260405f2090565b80511561258357831561257d576002841015612554575050611a93604051928392639a6d49cd60e01b8452600484016124de565b909280612577916103f79461257261256d36848461242a565b612f44565b612460565b9161248f565b92509050565b5091906103f791369161242a565b634e487b7160e01b5f52603260045260245ffd5b91908110156125c85760051b8101359061013e19813603018212156103be570190565b612591565b903590601e19813603018212156103be57018035906001600160401b0382116103be576020019181360383136103be57565b356103f7816104d4565b6001600160401b038116036103be57565b929093612676926001600160401b0360406103f79a98999763ffffffff813561264281610bc3565b16885260208101356020890152013561265a81612609565b166040860152606085015260e0608085015260e08401916124be565b6001600160a01b0390941660a082015280840360c0909101526124be565b6020818303126103be578051906001600160401b0382116103be570181601f820112156103be578051906126c78261240f565b926126d560405194856110f0565b828452602083830101116103be57815f9260208093018386015e8301015290565b60405190612703826110b5565b815f81525f60208201526040612717612361565b910152565b61274b90610df57f000000000000000000000000000000000000000000000000000000000000000080926130ba565b9182918084106127585750565b836371c4efed60e01b5f5260045260245260445ffd5b63ffffffff16805f52600160205260405f205490811561278c575090565b63f6ff4fb760e01b5f5260045260245ffd5b356103f781612609565b6103f7939260809260018060a01b0316825260208201525f604082015281606082015201906103c2565b6001600160a01b038116939291908415611ed5576001600160a01b03821680156128ac576001600160a01b0382165f908152600560205260409020549584871061288657846105c49697036128378460018060a01b03165f52600560205260405f2090565b556001600160a01b0384165f9081526005602052604090208054860190556040518581527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602090a3613cb7565b63391434e360e21b5f526001600160a01b0383166004526024879052604485905260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b5f546001600160a01b031633036128d257565b63118cdaa760e01b5f523360045260245ffd5b307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614806129d8575b15612940577f000000000000000000000000000000000000000000000000000000000000000090565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f000000000000000000000000000000000000000000000000000000000000000060408201527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a082015260a081526129d260c0826110f0565b51902090565b507f00000000000000000000000000000000000000000000000000000000000000004614612917565b65ffffffffffff612a11436132be565b1680821015612a2457506103f7906132be565b90637669fc0f60e11b5f5260045260245260445ffd5b5f19810191908211610d5c57565b9060018201809211610d5c57565b91908201809211610d5c57565b908160209103126103be57516103f781610d61565b9091612a8f6103f7936040845260408401906103c2565b9160208184039101526103c2565b9091612ad1612af793612ab46020850135916134af565b612acb612ac460a08701876125cd565b369161242a565b91613506565b93909283945f14612b73576002905b611a39612aec82612405565b9160808101906125cd565b60045490926001600160a01b03909116908382612b1357505050565b60405163043a78eb60e01b815292602092849283918291612b379160048401612a78565b03915afa801561071f57612b485750565b612b699060203d602011612b6c575b612b6181836110f0565b810190612a63565b50565b503d612b57565b600190612ae0565b91908260409103126103be57604051612b93816110d5565b6020808294805184520151910152565b906040828203126103be576103f791612b7b565b906020909392936040835263ffffffff81511660408401528181015160608401526080612c0b612bf5604084015160a08488015260e08701906103c2565b6060840151868203603f190160a08801526103c2565b910151151560c08401526001600160a01b03909416910152565b6001600160a01b038181165f818152600d6020526040812080548685166001600160a01b0319821681179092556105c496941694612ca09390928691907f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9080a46001600160a01b03165f9081526005602052604090205490565b9161357b565b80549081612cb45750505f90565b815f19810111610d5c575f525f199060205f2001015460301c90565b80518210156125c85760209160051b010190565b601f8211612cf157505050565b5f5260205f20906020601f840160051c83019310612d29575b601f0160051c01905b818110612d1e575050565b5f8155600101612d13565b9091508190612d0a565b91909182516001600160401b0381116110d057612d5a81612d548454610fe8565b84612ce4565b6020601f8211600114612d99578190612d8a9394955f92612d8e575b50508160011b915f199060031b1c19161790565b9055565b015190505f80612d76565b601f19821690612dac845f5260205f2090565b915f5b818110612de657509583600195969710612dce575b505050811b019055565b01515f1960f88460031b161c191690555f8080612dc4565b9192602060018192868b015181550194019201612daf565b602081016020825282518091526040820191602060408360051b8301019401925f915b838310612e3057505050505090565b9091929394602080612e73600193603f19868203018752606060408b5163ffffffff815116845261ffff86820151168685015201519181604082015201906103c2565b97019301930191939290612e21565b5f5b8151811015612f0d5780612ea76040612e9f60019486612cd0565b510151612f44565b612f076040612eb68386612cd0565b51015163ffffffff612ec88487612cd0565b5151165f526003602052612f0260405f20612ef26020612ee8878a612cd0565b51015161ffff1690565b61ffff165f5260205260405f2090565b612d33565b01612e84565b50612f3f7fbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b6749160405191829182612dfe565b0390a1565b600361ffff60028301511603612f575750565b604051639a6d49cd60e01b815260206004820152908190611a939060248301906103c2565b604290612f876128e5565b906040519161190160f01b8352600283015260228201522090565b916103f79391611c5d9361372d565b60409060231901126103be5760405190612fca826110d5565b60243582526044356020830152565b6001600160a01b0316908115613061576001600160a01b03811692831561304e57806130417f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92593855f52600660205260405f209060018060a01b03165f5260205260405f2090565b55604051908152602090a3565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b6001600160a01b0316908115613061576001600160a01b0381161561304e576130b7915f52600660205260405f209060018060a01b03165f5260205260405f2090565b55565b81156130c4570490565b634e487b7160e01b5f52601260045260245ffd5b81810292918115918404141715610d5c57565b906020116103be573590565b906028116103be576020013560c01c90565b6103f7906001600160401b037f000000000000000000000000000000000000000000000000000000000000000091166130d8565b9091506001600160a01b03811680156131f95761316461315f84600754612a56565b600755565b6001600160a01b0382165f908152600560209081526040808320805487019055518581527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9190a36007547f0000000000000000000000000000000000000000000000000000000000000000908181116131e4575050816103f791613c3e565b630e58ae9360e11b5f5260045260245260445ffd5b60405162461bcd60e51b815260206004820152602760248201527f5a4b50546f6b656e3a2063616e6e6f742062726964676520746f207a65726f206044820152666164647265737360c81b6064820152608490fd5b90806028116103be576103f7913691602719019060280161242a565b90926132b0906103f7936040519586946001600160401b0360c01b9060c01b16602086015263ffffffff60e01b9060e01b166028850152602c840152604c83019061247d565b03601f1981018352826110f0565b65ffffffffffff81116132d65765ffffffffffff1690565b6306dfcc6560e41b5f52603060045260245260445ffd5b60018111156103f757806001600160801b82101561340e575b6133b46133aa6133a061339661338c6133826133716133bb9760048a600160401b6133c09c1015613401575b6401000000008110156133f4575b620100008110156133e7575b6101008110156133da575b60108110156133cd575b10156133c5575b60030260011c90565b61337b818b6130ba565b0160011c90565b61337b818a6130ba565b61337b81896130ba565b61337b81886130ba565b61337b81876130ba565b61337b81866130ba565b80936130ba565b821190565b900390565b60011b613368565b60041c9160021b91613361565b60081c9160041b91613357565b60101c9160081b9161334c565b60201c9160101b91613340565b60401c9160201b91613332565b50506133c06133bb6133b46133aa6133a061339661338c6133826133716134358a60801c90565b9850600160401b97506133069650505050505050565b91905b83821061345b5750505090565b9091928083169080841860011c8201809211610d5c57845f5265ffffffffffff8260205f2001541665ffffffffffff8416105f1461349d5750925b919061344e565b9392506134a990612a48565b91613496565b6134da907f0000000000000000000000000000000000000000000000000000000000000000906130ba565b6001600160401b0381116134f4576001600160401b031690565b63e2ce941360e01b5f5260045260245ffd5b8251158015939061354c57906132b06135499260405194859360208501526001600160401b0360c01b9060c01b166040840152336048840152606883019061247d565b91565b50906040519160208301526001600160401b0360c01b9060c01b166040820152602881526135496048826110f0565b6001600160a01b03808316939291908116908185141580613694575b6135a3575b5050505050565b81613627575b5050826135b8575b808061359c565b6001600160a01b03165f908152600e602052604090207fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72491613604916135fe9091613990565b906139f5565b604080516001600160d01b039384168152919092166020820152a25f80806135b1565b6001600160a01b03165f908152600e602052604090207fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724906136729061366c86613990565b906139c1565b604080516001600160d01b039384168152919092166020820152a25f806135a9565b50831515613597565b60ff81146136e35760ff811690601f82116136d457604051916136c16040846110f0565b6020808452838101919036833783525290565b632cd44ac360e21b5f5260045ffd5b506040516103f78161117181600a611020565b60ff811461371a5760ff811690601f82116136d457604051916136c16040846110f0565b506040516103f78161117181600b611020565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116137a4579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa1561071f575f516001600160a01b0381161561379a57905f905f90565b505f906001905f90565b5050505f9160039190565b600411156137b957565b634e487b7160e01b5f52602160045260245ffd5b6137d6816137af565b806137df575050565b6137e8816137af565b600181036137ff5763f645eedf60e01b5f5260045ffd5b613808816137af565b60028103613823575063fce698f760e01b5f5260045260245ffd5b8061382f6003926137af565b146138375750565b6335e2f38360e21b5f5260045260245ffd5b906080828203126103be57613883906040805193613866856110b5565b80518552602081015161387881612609565b602086015201612b7b565b604082015290565b6138e860809492613904969461389f6126f6565b5060206138ac8651613a93565b95019182518061396c575b506138c18561276e565b92511515926138d1610e3d612352565b602086015260408501526060840152151585830152565b6040518095819482936302637a4560e41b845260048401612bb7565b03917f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165af190811561071f575f91613943575090565b6103f7915060803d608011613965575b61395d81836110f0565b810190613849565b503d613953565b61397590613ab0565b5f6138b7565b80548210156125c8575f5260205f2001905f90565b6001600160d01b0381116139aa576001600160d01b031690565b6306dfcc6560e41b5f5260d060045260245260445ffd5b906139cb436132be565b906139d583612ca6565b6001600160d01b039182169082160391908211610d5c5761082092613d88565b906139ff436132be565b90613a0983612ca6565b6001600160d01b039182169082160191908211610d5c5761082092613d88565b613a32436132be565b90613a3d600f612ca6565b6001600160d01b0391821690821601908111610d5c5761082091600f613d88565b613a67436132be565b90613a72600f612ca6565b6001600160d01b0391821690821603908111610d5c5761082091600f613d88565b803403613a9d5790565b6304fb820960e51b5f523460045260245ffd5b60405163393f876560e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690602081600481855afa90811561071f575f91613b9a575b506001600160a01b0316918215613b8b57604051916323b872dd60e01b5f523360045260245260445260205f60648180865af160015f5114811615613b6c575b6040919091525f60605215613b515750565b635274afe760e01b5f526001600160a01b031660045260245ffd5b6001811516613b82573d15833b15151616613b3f565b503d5f823e3d90fd5b6329b99a9560e11b5f5260045ffd5b613bb3915060203d60201161074a5761073c81836110f0565b5f613aff565b6105c491906001600160a01b03168015613c26575b613bdf613bda83613990565b613a5e565b50505f908152600d60205260408120549080527f81955a0a11e65eac625c29e8882660bae4e165a75d72780094acae8ece9a29ee546001600160a01b03908116911661357b565b613c37613c3283613990565b613a29565b5050613bce565b906105c491613c4f613c3283613990565b50506001600160a01b03168015613ca4575b600d6020527f81955a0a11e65eac625c29e8882660bae4e165a75d72780094acae8ece9a29ee545f9182526040909120546001600160a01b03908116911661357b565b613cb0613bda83613990565b5050613c61565b6105c492916001600160a01b03909116908115613d1a575b6001600160a01b0316908115613d07575b5f908152600d6020526040808220549282529020546001600160a01b03908116911661357b565b613d13613bda84613990565b5050613ce0565b613d26613c3284613990565b5050613ccf565b8054600160401b8110156110d057613d4a9160018201815561397b565b613d7557815160209092015160301b65ffffffffffff191665ffffffffffff92909216919091179055565b634e487b7160e01b5f525f60045260245ffd5b80549293928015613e3457613d9f613daa91612a3a565b825f5260205f200190565b8054603081901c9365ffffffffffff91821692918116808411613e2557879303613df15750613ded92509065ffffffffffff82549181199060301b169116179055565b9190565b915050613ded91613e11613e03612343565b65ffffffffffff9093168352565b6001600160d01b0386166020830152613d2d565b632520601d60e01b5f5260045ffd5b5090613e5991613e45613e03612343565b6001600160d01b0385166020830152613d2d565b5f919056fea2646970667358221220451616d2cc8c7910e0f8ebe1d7dcc68c7f31a2e3d3281350478a806e9dbca44764736f6c634300081e00338d1108e10bcb7c27dddfc02ed9d693a074039d026cf4ea4240b40f7d581ac801dec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7240000000000000000000000001a44076050125825900e736c501f859c50fe728c000000000000000000000000182085ce8b0faddc8503d9921df6af076281a6a90000000000000000000000007f8410796549a621cd4dc8ff631dbdc477007baf0000000000000000000000000000000000000000000000000000000000000001
Deployed Bytecode
0x60806040526004361015610011575f80fd5b5f3560e01c806306fdde03146103af578063095ea7b3146103aa5780630cfccc83146103a55780630d35b415146103a0578063111ecdad1461039b57806313137d6514610396578063134d4f2514610391578063156a0d0f1461038c57806317442b701461038757806318160ddd146103825780631ab8e8e91461037d5780631f5e13341461037857806323b872dd14610373578063313ce5671461036e5780633400288b146103695780633644e515146103645780633a46b1a81461035f5780633b6f743b1461035a5780634bf5d7e91461035557806352ae28791461029c5780635535d46114610350578063587cde1e1461034b5780635a0dfe4d146103465780635c19a95c146103415780635e280f111461033c5780636fc1b31e146103375780636fcfff451461033257806370a082311461032d578063715018a6146103285780637d25a05e146103235780637ecebe001461031e57806382413eac1461031957806384b0196e14610314578063857749b01461030f5780638da5cb5b1461030a5780638e539e8c1461030557806391ddadf41461030057806395d89b41146102fb578063963efcaa146102f65780639ab24eb0146102f15780639f68b964146102ec578063a9059cbb146102e7578063b731ea0a146102e2578063b98bd070146102dd578063bb0b6a53146102d8578063bc70b354146102d3578063bd815db0146102ce578063c3cda520146102c9578063c7c7f5b3146102c4578063ca5eb5e1146102bf578063d045a0dc146102ba578063d4243885146102b5578063d505accf146102b0578063dd62ed3e146102ab578063f1127ed8146102a6578063f2fde38b146102a1578063fc0c546a1461029c5763ff7bd03d14610297575f80fd5b6122ea565b610fae565b612261565b6121b1565b612152565b612026565b611fb6565b611f85565b611ee8565b611d19565b611bb5565b611a41565b6119ed565b6119b4565b6118d1565b611857565b61182d565b611813565b6117c2565b611788565b6116e3565b6116b8565b6115f9565b6115d2565b6115b7565b6114ba565b61145c565b611421565b6113fb565b611393565b611357565b6112ef565b61127f565b61123b565b611215565b6111cf565b61118c565b611111565b610f1e565b610d6b565b610c78565b610c56565b610bd1565b610ba8565b610b00565b610ae5565b610abb565b610a9e565b610a7d565b610a57565b610a3c565b610824565b610751565b610602565b61051a565b6104e5565b6103fa565b5f9103126103be57565b5f80fd5b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b9060206103f79281815201906103c2565b90565b346103be575f3660031901126103be576040515f60085461041a81610fe8565b80845290600181169081156104b05750600114610452575b61044e83610442818503826110f0565b604051918291826103e6565b0390f35b60085f9081527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3939250905b80821061049657509091508101602001610442610432565b91926001816020925483858801015201910190929161047e565b60ff191660208086019190915291151560051b840190910191506104429050610432565b6001600160a01b038116036103be57565b346103be5760403660031901126103be5761050f600435610505816104d4565b6024359033612fd9565b602060405160018152f35b346103be575f3660031901126103be5760206040517f0000000000000000000000000000000000000000033b2e3c9fd0803ce80000008152f35b908160e09103126103be5790565b9392919061057e8560a081019260208091805184520151910152565b60a06040860152815180915260c0850190602060c08260051b8801019301915f905b8282106105c657505050509060606105c49294019060208091805184520151910152565b565b909192936020806105f460019360bf198c82030186526040838a5180518452015191818582015201906103c2565b9601920192019092916105a0565b346103be5760203660031901126103be576004356001600160401b0381116103be57610632903690600401610554565b61063a612361565b50610643612361565b50604051637e062a3560e11b8152602081600481305afa90811561071f576004916020915f91610724575b506040516318160ddd60e01b815292839182906001600160a01b03165afa90811561071f575f916106f0575b506106a3612343565b905f8252602082015261044e6106d46106ba6123bf565b9360408101356106ce606083013592612405565b5061271c565b6106dc612343565b918252602082015260405193849384610562565b610712915060203d602011610718575b61070a81836110f0565b810190612399565b5f61069a565b503d610700565b61238e565b6107449150823d841161074a575b61073c81836110f0565b810190612379565b5f61066e565b503d610732565b346103be575f3660031901126103be576004546040516001600160a01b039091168152602090f35b60609060031901126103be57600490565b9181601f840112156103be578235916001600160401b0383116103be57602083818601950101116103be57565b90600319820160e081126103be576060136103be57600491606435916084356001600160401b0381116103be57826107f19160040161078a565b9290929160a435610801816104d4565b9160c435906001600160401b0382116103be576108209160040161078a565b9091565b61082d366107b7565b50919492915050337f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b031603610a2957813561086f81610bc3565b6108788161276e565b906020840135809203610a045750506108a061089485836130eb565b6001600160a01b031690565b936108c66108b66108b183856130f7565b613109565b6108bf85612405565b908761313d565b916108d18260281090565b610929575b50506109027fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c92612405565b6040805163ffffffff92909216825260208201929092526001600160a01b039490941693a3005b90826109549261094e61093e6040880161279e565b9361094888612405565b9261324e565b9261326a565b917f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b0316803b156103be57604051633e5ac80960e11b8152935f9185918290849082906109ad908b8d600485016127a8565b03925af190811561071f577fefed6d3500546b29533b128a29e3a94d70788727f0507505ac12eaf2e578fd9c93610902926109ea575b50926108d6565b806109f85f6109fe936110f0565b806103b4565b5f6109e3565b80610a1363ffffffff92610bc3565b63309afaf360e21b5f521660045260245260445ffd5b6391ac5e4f60e01b5f523360045260245ffd5b346103be575f3660031901126103be57602060405160028152f35b346103be575f3660031901126103be576040805162b9270b60e21b815260016020820152f35b346103be575f3660031901126103be57604080516001815260026020820152f35b346103be575f3660031901126103be576020600754604051908152f35b346103be575f3660031901126103be57335f908152600c602052604090208054600181019091555b005b346103be575f3660031901126103be57602060405160018152f35b346103be5760603660031901126103be57600435610b1d816104d4565b602435610b29816104d4565b6001600160a01b0382165f9081526006602090815260408083203384529091529020549160443591905f198410610b71575b610b6593506127d2565b60405160018152602090f35b828410610b8d57610b8883610b6595033383613074565b610b5b565b8284637dc7a0d960e11b5f523360045260245260445260645ffd5b346103be575f3660031901126103be57602060405160128152f35b63ffffffff8116036103be57565b346103be5760403660031901126103be577f238399d427b947898edb290f5ff0f9109849b1c3ba196a42e35f00c50a54b98b600435610c0f81610bc3565b60243590610c1b6128bf565b63ffffffff81165f5260016020528160405f2055610c51604051928392836020909392919363ffffffff60408201951681520152565b0390a1005b346103be575f3660031901126103be576020610c706128e5565b604051908152f35b346103be5760403660031901126103be57600435610c95816104d4565b6001600160a01b03165f908152600e60205260409020610cb6602435612a01565b8154905f829160058411610d09575b610cd093508461344b565b9081610cee57505060205f5b6040516001600160d01b039091168152f35b610cf9602092612a3a565b905f52815f20015460301c610cdc565b9192610d14816132ed565b8103908111610d5c57610cd093855f5265ffffffffffff8260205f2001541665ffffffffffff8516105f14610d4a575091610cc5565b929150610d5690612a48565b90610cc5565b61232f565b801515036103be57565b346103be5760403660031901126103be576004356001600160401b0381116103be57610d9b903690600401610554565b602435610da781610d61565b610daf612361565b50813591606081013590610dfa6040820135610dca86610bc3565b610df57f000000000000000000000000000000000000000000000000000000e8d4a5100080926130ba565b6130d8565b91808310610f0857610e7b604086610e6087610e168888612a9d565b90610e2085610bc3565b610e28612361565b50610e328561276e565b610e49610e3d612352565b63ffffffff9097168752565b602086015285850152606084015215156080830152565b815180938192631bb8518b60e31b8352309060048401612bb7565b03817f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b03165afa801561071f5761044e915f91610ed9575b5060405191829182815181526020918201519181019190915260400190565b610efb915060403d604011610f01575b610ef381836110f0565b810190612ba3565b82610eba565b503d610ee9565b826371c4efed60e01b5f5260045260245260445ffd5b346103be575f3660031901126103be57610f37436132be565b65ffffffffffff80610f48436132be565b16911603610f9f5761044e604051610f616040826110f0565b601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c7400000060208201526040519182916020835260208301906103c2565b6301bfc1c560e61b5f5260045ffd5b346103be575f3660031901126103be576020604051308152f35b6024359061ffff821682036103be57565b359061ffff821682036103be57565b90600182811c92168015611016575b602083101461100257565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610ff7565b5f929181549161102f83610fe8565b8083529260018116908115611084575060011461104b57505050565b5f9081526020812093945091925b83831061106a575060209250010190565b600181602092949394548385870101520191019190611059565b915050602093945060ff929192191683830152151560051b010190565b634e487b7160e01b5f52604160045260245ffd5b606081019081106001600160401b038211176110d057604052565b6110a1565b604081019081106001600160401b038211176110d057604052565b90601f801991011681019081106001600160401b038211176110d057604052565b346103be5760403660031901126103be5761044e61117161117861116560043561113a81610bc3565b63ffffffff611147610fc8565b91165f52600360205260405f209061ffff165f5260205260405f2090565b60405192838092611020565b03826110f0565b6040519182916020835260208301906103c2565b346103be5760203660031901126103be576004356111a9816104d4565b60018060a01b03165f52600d602052602060018060a01b0360405f205416604051908152f35b346103be5760403660031901126103be57602061120b6004356111f181610bc3565b6024359063ffffffff165f52600160205260405f20541490565b6040519015158152f35b346103be5760203660031901126103be57610ae3600435611235816104d4565b33612c25565b346103be575f3660031901126103be576040517f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b03168152602090f35b346103be5760203660031901126103be577ff0be4f1e87349231d80c36b33f9e8639658eeaf474014dee15a3e6a4d441419760206004356112bf816104d4565b6112c76128bf565b600480546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346103be5760203660031901126103be5760043561130c816104d4565b6001600160a01b03165f908152600e602052604090205463ffffffff81116113405760405163ffffffff9091168152602090f35b6306dfcc6560e41b5f52602060045260245260445ffd5b346103be5760203660031901126103be576020610c70600435611379816104d4565b6001600160a01b03165f9081526005602052604090205490565b346103be575f3660031901126103be5760405162461bcd60e51b815260206004820152602a60248201527f5a4b50546f6b656e3a2072656e6f756e63696e67206f776e65727368697020696044820152691cc8191a5cd8589b195960b21b6064820152608490fd5b346103be5760403660031901126103be57611417600435610bc3565b60206040515f8152f35b346103be5760203660031901126103be5760043561143e816104d4565b60018060a01b03165f52600c602052602060405f2054604051908152f35b346103be5760a03660031901126103be5761147636610779565b506064356001600160401b0381116103be5761149690369060040161078a565b505060206084356114a6816104d4565b6040516001600160a01b0390911630148152f35b346103be575f3660031901126103be5761155e6114f67f7a6b50617373000000000000000000000000000000000000000000000000000661369d565b61151f7f31000000000000000000000000000000000000000000000000000000000000016136f6565b602060405161152e82826110f0565b5f81528161156c81830194601f198301368737604051978897600f60f81b895260e0858a015260e08901906103c2565b9087820360408901526103c2565b914660608701523060808701525f60a087015285830360c087015251918281520192915f5b8281106115a057505050500390f35b835185528695509381019392810192600101611591565b346103be575f3660031901126103be57602060405160068152f35b346103be575f3660031901126103be575f546040516001600160a01b039091168152602090f35b346103be5760203660031901126103be57611615600435612a01565b600f54905f829160058411611664575b6116319350600f61344b565b8061164257506040515f8152602090f35b61165f611650602092612a3a565b600f5f52825f20015460301c90565b610cdc565b919261166f816132ed565b8103908111610d5c5761163193600f5f5265ffffffffffff8260205f2001541665ffffffffffff8516105f146116a6575091611625565b9291506116b290612a48565b90611625565b346103be575f3660031901126103be5760206116d3436132be565b65ffffffffffff60405191168152f35b346103be575f3660031901126103be576040515f60095461170381610fe8565b80845290600181169081156104b0575060011461172a5761044e83610442818503826110f0565b60095f9081527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af939250905b80821061176e57509091508101602001610442610432565b919260018160209254838588010152019101909291611756565b346103be575f3660031901126103be5760206040517f000000000000000000000000000000000000000000000000000000e8d4a510008152f35b346103be5760203660031901126103be576004356117df816104d4565b6001600160a01b03165f908152600e602090815260409091206001600160d01b039061180a90612ca6565b16604051908152f35b346103be575f3660031901126103be5760206040515f8152f35b346103be5760403660031901126103be5761050f60043561184d816104d4565b60243590336127d2565b346103be575f3660031901126103be576002546040516001600160a01b039091168152602090f35b9060206003198301126103be576004356001600160401b0381116103be5760040182601f820112156103be578035926001600160401b0384116103be576020808301928560051b0101116103be579190565b346103be576118df3661187f565b906118e86128bf565b6118f1826123a8565b906118ff60405192836110f0565b828252602082019260051b8101903682116103be5780935b82851061192757610ae384612e82565b84356001600160401b0381116103be578201906060823603126103be5760405191611951836110b5565b803561195c81610bc3565b835261196a60208201610fd9565b60208401526040810135906001600160401b0382116103be57019036601f830112156103be576020926119a484933690858135910161242a565b6040820152815201940193611917565b346103be5760203660031901126103be5763ffffffff6004356119d681610bc3565b165f526001602052602060405f2054604051908152f35b346103be5760603660031901126103be57600435611a0a81610bc3565b611a12610fc8565b604435906001600160401b0382116103be5761044e92611a3961117893369060040161078a565b9290916124ef565b611a4a3661187f565b5f5b818110611ab957604051638e9e709960e01b81525f81600481335afa801561071f57611a93915f91611a97575b50604051638351eea760e01b8152918291600483016103e6565b0390fd5b611ab391503d805f833e611aab81836110f0565b810190612694565b82611a79565b611ac48183856125a5565b90611af4611af0611ad484612405565b60208501359063ffffffff165f52600160205260405f20541490565b1590565b611b8c5760c08201359160a0810135611b116101008301836125cd565b949091611b2060e085016125ff565b93611b2f6101208201826125cd565b959095303b156103be575f96611b5c926040519a8b9889978897633411683760e21b89526004890161261a565b0391305af191821561071f57600192611b78575b505b01611a4c565b806109f85f611b86936110f0565b5f611b70565b60019150611b72565b6064359060ff821682036103be57565b6084359060ff821682036103be57565b346103be5760c03660031901126103be57600435611bd2816104d4565b60243590604435611be1611b95565b6084359060a43592804211611cb65791611c669391611c58611c5d9460405160208101917fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf835260018060a01b038a1660408301528a6060830152608082015260808152611c5060a0826110f0565b519020612f7c565b61372d565b909291926137cd565b6001600160a01b0381165f908152600c60205260409020805460018101909155809303611c9757610ae39250612c25565b90506301d4b62360e61b5f5260018060a01b031660045260245260445ffd5b632341d78760e11b5f5260045260245ffd5b9160806105c4929493611d08604060c0830197805184526001600160401b0360208201511660208501520151604083019060208091805184520151910152565b019060208091805184520151910152565b60803660031901126103be576004356001600160401b0381116103be57611d44903690600401610554565b60403660231901126103be57606435611d5c816104d4565b611d646126f6565b50611d6d612361565b50611d766126f6565b50611d7f612361565b50606082013590611d986040840135610dca8535610bc3565b91808310610f0857503315611ed557335f90815260056020526040902054828110611eba57335f908152600560205260409020611e3f92918490039055611de28360075403600755565b6040518381525f9033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602090a3611e1c8333613bb9565b611e268385612a9d565b611e2f86612405565b91611e3936612fb1565b9261388b565b90611e48612343565b928184528160208501527f85496b760a4b7f8d66384b9df21b381f5d1b1e79f229a47aaf4c232edc2fe59a611ea8611e81855193612405565b936040519181839233978460409194939263ffffffff606083019616825260208201520152565b0390a361044e60405192839283611cc8565b63391434e360e21b5f5233600452602452604482905260645ffd5b634b637e8f60e11b5f525f60045260245ffd5b346103be575f60203660031901126103be57600435611f06816104d4565b611f0e6128bf565b7f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b031690813b156103be5760405163ca5eb5e160e01b81526001600160a01b039091166004820152905f908290602490829084905af1801561071f57611f79575080f35b610ae391505f906110f0565b611f8e366107b7565b5050509290303303611fa7576108a061089485836130eb565b63029a949d60e31b5f5260045ffd5b346103be5760203660031901126103be577fd48d879cef83a1c0bdda516f27b13ddb1b3f8bbac1c9e1511bb2a659c24277606020600435611ff6816104d4565b611ffe6128bf565b600280546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346103be5760e03660031901126103be57600435612043816104d4565b60243561204f816104d4565b604435906064359261205f611ba5565b60a43560c4359086421161213f576001600160a01b0384165f908152600c6020526040902080546001810190915561210493906120ff909860405160208101917f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9835260018060a01b0389169b8c604084015260018060a01b038b1660608401528b608084015260a083015260c082015260c08152611c5060e0826110f0565b612fa2565b936001600160a01b0385160361211e57610ae39350612fd9565b6325c0072360e11b5f526001600160a01b038085166004521660245260445ffd5b8663313c898160e11b5f5260045260245ffd5b346103be5760403660031901126103be5760206121a8600435612174816104d4565b60243590612181826104d4565b60018060a01b03165f526006835260405f209060018060a01b03165f5260205260405f2090565b54604051908152f35b346103be5760403660031901126103be5761044e6122176004356121d4816104d4565b602435906121e182610bc3565b6121e9612361565b506121f2612361565b506001600160a01b03165f908152600e60205260409020612211612361565b5061397b565b5060405190612225826110d5565b5465ffffffffffff811680835260309190911c60209283019081526040805192835290516001600160d01b031692820192909252918291820190565b346103be5760203660031901126103be5760043561227e816104d4565b6122866128bf565b6001600160a01b031680156122d7575f80546001600160a01b03198116831782556001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09080a3005b631e4fbdf760e01b5f525f60045260245ffd5b346103be5760603660031901126103be57602061230636610779565b63ffffffff813561231681610bc3565b165f52600182528160405f205491013560405191148152f35b634e487b7160e01b5f52601160045260245ffd5b604051906105c46040836110f0565b604051906105c460a0836110f0565b6040519061236e826110d5565b5f6020838281520152565b908160209103126103be57516103f7816104d4565b6040513d5f823e3d90fd5b908160209103126103be575190565b6001600160401b0381116110d05760051b60200190565b604051906123ce6020836110f0565b5f80835282815b8281106123e157505050565b6020906040516123f0816110d5565b5f8152606083820152828285010152016123d5565b356103f781610bc3565b6001600160401b0381116110d057601f01601f191660200190565b9291926124368261240f565b9161244460405193846110f0565b8294818452818301116103be578281602093845f960137010152565b90929192836002116103be5783116103be57600201916001190190565b805191908290602001825e015f815290565b6124a993926105c49281604051968794602086019061247d565b918237015f815203601f1981018452836110f0565b908060209392818452848401375f828201840152601f01601f1916010190565b9160206103f79381815201916124be565b6111656111719263ffffffff6125209397959697165f52600360205260405f209061ffff165f5260205260405f2090565b80511561258357831561257d576002841015612554575050611a93604051928392639a6d49cd60e01b8452600484016124de565b909280612577916103f79461257261256d36848461242a565b612f44565b612460565b9161248f565b92509050565b5091906103f791369161242a565b634e487b7160e01b5f52603260045260245ffd5b91908110156125c85760051b8101359061013e19813603018212156103be570190565b612591565b903590601e19813603018212156103be57018035906001600160401b0382116103be576020019181360383136103be57565b356103f7816104d4565b6001600160401b038116036103be57565b929093612676926001600160401b0360406103f79a98999763ffffffff813561264281610bc3565b16885260208101356020890152013561265a81612609565b166040860152606085015260e0608085015260e08401916124be565b6001600160a01b0390941660a082015280840360c0909101526124be565b6020818303126103be578051906001600160401b0382116103be570181601f820112156103be578051906126c78261240f565b926126d560405194856110f0565b828452602083830101116103be57815f9260208093018386015e8301015290565b60405190612703826110b5565b815f81525f60208201526040612717612361565b910152565b61274b90610df57f000000000000000000000000000000000000000000000000000000e8d4a5100080926130ba565b9182918084106127585750565b836371c4efed60e01b5f5260045260245260445ffd5b63ffffffff16805f52600160205260405f205490811561278c575090565b63f6ff4fb760e01b5f5260045260245ffd5b356103f781612609565b6103f7939260809260018060a01b0316825260208201525f604082015281606082015201906103c2565b6001600160a01b038116939291908415611ed5576001600160a01b03821680156128ac576001600160a01b0382165f908152600560205260409020549584871061288657846105c49697036128378460018060a01b03165f52600560205260405f2090565b556001600160a01b0384165f9081526005602052604090208054860190556040518581527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602090a3613cb7565b63391434e360e21b5f526001600160a01b0383166004526024879052604485905260645ffd5b63ec442f0560e01b5f525f60045260245ffd5b5f546001600160a01b031633036128d257565b63118cdaa760e01b5f523360045260245ffd5b307f000000000000000000000000e1be424f442d0687129128c6c38aace44f8c8dbc6001600160a01b031614806129d8575b15612940577f572448daf52f723e773b2e03d87d3ce6b9622c8832c0792fde41c326d1982ba990565b60405160208101907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f82527f3bd685aab1906f985aba57201b60f5f6398799ad8d1ffbd160ec1bb2177b9dde60408201527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260a081526129d260c0826110f0565b51902090565b507f00000000000000000000000000000000000000000000000000000000000000014614612917565b65ffffffffffff612a11436132be565b1680821015612a2457506103f7906132be565b90637669fc0f60e11b5f5260045260245260445ffd5b5f19810191908211610d5c57565b9060018201809211610d5c57565b91908201809211610d5c57565b908160209103126103be57516103f781610d61565b9091612a8f6103f7936040845260408401906103c2565b9160208184039101526103c2565b9091612ad1612af793612ab46020850135916134af565b612acb612ac460a08701876125cd565b369161242a565b91613506565b93909283945f14612b73576002905b611a39612aec82612405565b9160808101906125cd565b60045490926001600160a01b03909116908382612b1357505050565b60405163043a78eb60e01b815292602092849283918291612b379160048401612a78565b03915afa801561071f57612b485750565b612b699060203d602011612b6c575b612b6181836110f0565b810190612a63565b50565b503d612b57565b600190612ae0565b91908260409103126103be57604051612b93816110d5565b6020808294805184520151910152565b906040828203126103be576103f791612b7b565b906020909392936040835263ffffffff81511660408401528181015160608401526080612c0b612bf5604084015160a08488015260e08701906103c2565b6060840151868203603f190160a08801526103c2565b910151151560c08401526001600160a01b03909416910152565b6001600160a01b038181165f818152600d6020526040812080548685166001600160a01b0319821681179092556105c496941694612ca09390928691907f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9080a46001600160a01b03165f9081526005602052604090205490565b9161357b565b80549081612cb45750505f90565b815f19810111610d5c575f525f199060205f2001015460301c90565b80518210156125c85760209160051b010190565b601f8211612cf157505050565b5f5260205f20906020601f840160051c83019310612d29575b601f0160051c01905b818110612d1e575050565b5f8155600101612d13565b9091508190612d0a565b91909182516001600160401b0381116110d057612d5a81612d548454610fe8565b84612ce4565b6020601f8211600114612d99578190612d8a9394955f92612d8e575b50508160011b915f199060031b1c19161790565b9055565b015190505f80612d76565b601f19821690612dac845f5260205f2090565b915f5b818110612de657509583600195969710612dce575b505050811b019055565b01515f1960f88460031b161c191690555f8080612dc4565b9192602060018192868b015181550194019201612daf565b602081016020825282518091526040820191602060408360051b8301019401925f915b838310612e3057505050505090565b9091929394602080612e73600193603f19868203018752606060408b5163ffffffff815116845261ffff86820151168685015201519181604082015201906103c2565b97019301930191939290612e21565b5f5b8151811015612f0d5780612ea76040612e9f60019486612cd0565b510151612f44565b612f076040612eb68386612cd0565b51015163ffffffff612ec88487612cd0565b5151165f526003602052612f0260405f20612ef26020612ee8878a612cd0565b51015161ffff1690565b61ffff165f5260205260405f2090565b612d33565b01612e84565b50612f3f7fbe4864a8e820971c0247f5992e2da559595f7bf076a21cb5928d443d2a13b6749160405191829182612dfe565b0390a1565b600361ffff60028301511603612f575750565b604051639a6d49cd60e01b815260206004820152908190611a939060248301906103c2565b604290612f876128e5565b906040519161190160f01b8352600283015260228201522090565b916103f79391611c5d9361372d565b60409060231901126103be5760405190612fca826110d5565b60243582526044356020830152565b6001600160a01b0316908115613061576001600160a01b03811692831561304e57806130417f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92593855f52600660205260405f209060018060a01b03165f5260205260405f2090565b55604051908152602090a3565b634a1406b160e11b5f525f60045260245ffd5b63e602df0560e01b5f525f60045260245ffd5b6001600160a01b0316908115613061576001600160a01b0381161561304e576130b7915f52600660205260405f209060018060a01b03165f5260205260405f2090565b55565b81156130c4570490565b634e487b7160e01b5f52601260045260245ffd5b81810292918115918404141715610d5c57565b906020116103be573590565b906028116103be576020013560c01c90565b6103f7906001600160401b037f000000000000000000000000000000000000000000000000000000e8d4a5100091166130d8565b9091506001600160a01b03811680156131f95761316461315f84600754612a56565b600755565b6001600160a01b0382165f908152600560209081526040808320805487019055518581527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9190a36007547f0000000000000000000000000000000000000000033b2e3c9fd0803ce8000000908181116131e4575050816103f791613c3e565b630e58ae9360e11b5f5260045260245260445ffd5b60405162461bcd60e51b815260206004820152602760248201527f5a4b50546f6b656e3a2063616e6e6f742062726964676520746f207a65726f206044820152666164647265737360c81b6064820152608490fd5b90806028116103be576103f7913691602719019060280161242a565b90926132b0906103f7936040519586946001600160401b0360c01b9060c01b16602086015263ffffffff60e01b9060e01b166028850152602c840152604c83019061247d565b03601f1981018352826110f0565b65ffffffffffff81116132d65765ffffffffffff1690565b6306dfcc6560e41b5f52603060045260245260445ffd5b60018111156103f757806001600160801b82101561340e575b6133b46133aa6133a061339661338c6133826133716133bb9760048a600160401b6133c09c1015613401575b6401000000008110156133f4575b620100008110156133e7575b6101008110156133da575b60108110156133cd575b10156133c5575b60030260011c90565b61337b818b6130ba565b0160011c90565b61337b818a6130ba565b61337b81896130ba565b61337b81886130ba565b61337b81876130ba565b61337b81866130ba565b80936130ba565b821190565b900390565b60011b613368565b60041c9160021b91613361565b60081c9160041b91613357565b60101c9160081b9161334c565b60201c9160101b91613340565b60401c9160201b91613332565b50506133c06133bb6133b46133aa6133a061339661338c6133826133716134358a60801c90565b9850600160401b97506133069650505050505050565b91905b83821061345b5750505090565b9091928083169080841860011c8201809211610d5c57845f5265ffffffffffff8260205f2001541665ffffffffffff8416105f1461349d5750925b919061344e565b9392506134a990612a48565b91613496565b6134da907f000000000000000000000000000000000000000000000000000000e8d4a51000906130ba565b6001600160401b0381116134f4576001600160401b031690565b63e2ce941360e01b5f5260045260245ffd5b8251158015939061354c57906132b06135499260405194859360208501526001600160401b0360c01b9060c01b166040840152336048840152606883019061247d565b91565b50906040519160208301526001600160401b0360c01b9060c01b166040820152602881526135496048826110f0565b6001600160a01b03808316939291908116908185141580613694575b6135a3575b5050505050565b81613627575b5050826135b8575b808061359c565b6001600160a01b03165f908152600e602052604090207fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72491613604916135fe9091613990565b906139f5565b604080516001600160d01b039384168152919092166020820152a25f80806135b1565b6001600160a01b03165f908152600e602052604090207fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724906136729061366c86613990565b906139c1565b604080516001600160d01b039384168152919092166020820152a25f806135a9565b50831515613597565b60ff81146136e35760ff811690601f82116136d457604051916136c16040846110f0565b6020808452838101919036833783525290565b632cd44ac360e21b5f5260045ffd5b506040516103f78161117181600a611020565b60ff811461371a5760ff811690601f82116136d457604051916136c16040846110f0565b506040516103f78161117181600b611020565b91907f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084116137a4579160209360809260ff5f9560405194855216868401526040830152606082015282805260015afa1561071f575f516001600160a01b0381161561379a57905f905f90565b505f906001905f90565b5050505f9160039190565b600411156137b957565b634e487b7160e01b5f52602160045260245ffd5b6137d6816137af565b806137df575050565b6137e8816137af565b600181036137ff5763f645eedf60e01b5f5260045ffd5b613808816137af565b60028103613823575063fce698f760e01b5f5260045260245ffd5b8061382f6003926137af565b146138375750565b6335e2f38360e21b5f5260045260245ffd5b906080828203126103be57613883906040805193613866856110b5565b80518552602081015161387881612609565b602086015201612b7b565b604082015290565b6138e860809492613904969461389f6126f6565b5060206138ac8651613a93565b95019182518061396c575b506138c18561276e565b92511515926138d1610e3d612352565b602086015260408501526060840152151585830152565b6040518095819482936302637a4560e41b845260048401612bb7565b03917f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b03165af190811561071f575f91613943575090565b6103f7915060803d608011613965575b61395d81836110f0565b810190613849565b503d613953565b61397590613ab0565b5f6138b7565b80548210156125c8575f5260205f2001905f90565b6001600160d01b0381116139aa576001600160d01b031690565b6306dfcc6560e41b5f5260d060045260245260445ffd5b906139cb436132be565b906139d583612ca6565b6001600160d01b039182169082160391908211610d5c5761082092613d88565b906139ff436132be565b90613a0983612ca6565b6001600160d01b039182169082160191908211610d5c5761082092613d88565b613a32436132be565b90613a3d600f612ca6565b6001600160d01b0391821690821601908111610d5c5761082091600f613d88565b613a67436132be565b90613a72600f612ca6565b6001600160d01b0391821690821603908111610d5c5761082091600f613d88565b803403613a9d5790565b6304fb820960e51b5f523460045260245ffd5b60405163393f876560e21b81527f0000000000000000000000001a44076050125825900e736c501f859c50fe728c6001600160a01b031690602081600481855afa90811561071f575f91613b9a575b506001600160a01b0316918215613b8b57604051916323b872dd60e01b5f523360045260245260445260205f60648180865af160015f5114811615613b6c575b6040919091525f60605215613b515750565b635274afe760e01b5f526001600160a01b031660045260245ffd5b6001811516613b82573d15833b15151616613b3f565b503d5f823e3d90fd5b6329b99a9560e11b5f5260045ffd5b613bb3915060203d60201161074a5761073c81836110f0565b5f613aff565b6105c491906001600160a01b03168015613c26575b613bdf613bda83613990565b613a5e565b50505f908152600d60205260408120549080527f81955a0a11e65eac625c29e8882660bae4e165a75d72780094acae8ece9a29ee546001600160a01b03908116911661357b565b613c37613c3283613990565b613a29565b5050613bce565b906105c491613c4f613c3283613990565b50506001600160a01b03168015613ca4575b600d6020527f81955a0a11e65eac625c29e8882660bae4e165a75d72780094acae8ece9a29ee545f9182526040909120546001600160a01b03908116911661357b565b613cb0613bda83613990565b5050613c61565b6105c492916001600160a01b03909116908115613d1a575b6001600160a01b0316908115613d07575b5f908152600d6020526040808220549282529020546001600160a01b03908116911661357b565b613d13613bda84613990565b5050613ce0565b613d26613c3284613990565b5050613ccf565b8054600160401b8110156110d057613d4a9160018201815561397b565b613d7557815160209092015160301b65ffffffffffff191665ffffffffffff92909216919091179055565b634e487b7160e01b5f525f60045260245ffd5b80549293928015613e3457613d9f613daa91612a3a565b825f5260205f200190565b8054603081901c9365ffffffffffff91821692918116808411613e2557879303613df15750613ded92509065ffffffffffff82549181199060301b169116179055565b9190565b915050613ded91613e11613e03612343565b65ffffffffffff9093168352565b6001600160d01b0386166020830152613d2d565b632520601d60e01b5f5260045ffd5b5090613e5991613e45613e03612343565b6001600160d01b0385166020830152613d2d565b5f919056fea2646970667358221220451616d2cc8c7910e0f8ebe1d7dcc68c7f31a2e3d3281350478a806e9dbca44764736f6c634300081e0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000001a44076050125825900e736c501f859c50fe728c000000000000000000000000182085ce8b0faddc8503d9921df6af076281a6a90000000000000000000000007f8410796549a621cd4dc8ff631dbdc477007baf0000000000000000000000000000000000000000000000000000000000000001

-----Decoded View---------------
Arg [0] : lzEndpoint (address): 0x1a44076050125825900e736c501f859c50fE728c
Arg [1] : owner (address): 0x182085Ce8b0faDdc8503D9921dF6Af076281A6A9
Arg [2] : multiSigTreasury (address): 0x7F8410796549A621cd4Dc8ff631DBDC477007baf
Arg [3] : mintingChainId (uint256): 1

-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 0000000000000000000000001a44076050125825900e736c501f859c50fe728c
Arg [1] : 000000000000000000000000182085ce8b0faddc8503d9921df6af076281a6a9
Arg [2] : 0000000000000000000000007f8410796549a621cd4dc8ff631dbdc477007baf
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000001

🤖 Code Reader

Generate instant answers for your smart contract questions using AI Models. Read more.

Custom Contract ABI

                            

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

OVERVIEW

zkPass is a zero-knowledge data verification infrastructure that bridges Web2 and Web3 trust. It enables verifiable identity, assets, and reputation proofs without data exposure, forming a privacy-native foundation for compliance, governance, and programmable incentives at internet scale.

0xe1Be424F442D0687129128C6c38aAce44F8c8Dbc
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.