Source Code
Overview
ETH Balance
0 ETH
More Info
ContractCreator
Multichain Info
N/A
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Loading...
Loading
Heuristics suggest this may be a proxy contract. Verify using the Proxy Contract Checker
Contract Source Code (Solidity Standard Json-Input format)
Contract ABI
API[{"inputs":[{"internalType":"uint256","name":"chainId","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"AccessControlBadConfirmation","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bytes32","name":"neededRole","type":"bytes32"}],"name":"AccessControlUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"address","name":"target","type":"address"}],"name":"AddressEmptyCode","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"AddressInsufficientBalance","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":"address","name":"implementation","type":"address"}],"name":"ERC1967InvalidImplementation","type":"error"},{"inputs":[],"name":"ERC1967NonPayable","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":[],"name":"FailedInnerCall","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"currentNonce","type":"uint256"}],"name":"InvalidAccountNonce","type":"error"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[],"name":"ReentrancyGuardReentrantCall","type":"error"},{"inputs":[{"internalType":"address","name":"token","type":"address"}],"name":"SafeERC20FailedOperation","type":"error"},{"inputs":[],"name":"UUPSUnauthorizedCallContext","type":"error"},{"inputs":[{"internalType":"bytes32","name":"slot","type":"bytes32"}],"name":"UUPSUnsupportedProxiableUUID","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":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"batched","type":"bool"},{"indexed":false,"internalType":"uint256","name":"swapDeltaBP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"lpDeltaBP","type":"uint256"},{"indexed":false,"internalType":"bool","name":"defaultSwapMode","type":"bool"},{"indexed":false,"internalType":"bool","name":"defaultLPMode","type":"bool"}],"name":"DeltaParamUpdated","type":"event"},{"anonymous":false,"inputs":[],"name":"EIP712DomainChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"FeeDrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerChainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"weight","type":"uint256"}],"name":"PeerPoolInfoUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"protocolFee","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"eqFee","type":"uint256"}],"name":"Recv","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"previousAdminRole","type":"bytes32"},{"indexed":true,"internalType":"bytes32","name":"newAdminRole","type":"bytes32"}],"name":"RoleAdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleGranted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bytes32","name":"role","type":"bytes32"},{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":true,"internalType":"address","name":"sender","type":"address"}],"name":"RoleRevoked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"credits","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"targetBalance","type":"uint256"}],"name":"SendCredit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"stopTransfer","type":"bool"}],"name":"StopTransferUpdated","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerChainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"eqReward","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"eqFee","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"protocolFee","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"lpFee","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerChainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"credits","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"targetBalance","type":"uint256"}],"name":"UpdateCredit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"implementation","type":"address"}],"name":"Upgraded","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerChainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountLP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"}],"name":"WithdrawCheck","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerChainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountMintGD","type":"uint256"}],"name":"WithdrawConfirm","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"},{"indexed":false,"internalType":"address","name":"to","type":"address"}],"name":"WithdrawInstant","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerChainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountGD","type":"uint256"},{"indexed":false,"internalType":"bytes","name":"to","type":"bytes"}],"name":"WithdrawLocal","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"peerChainId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"indexed":false,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLP","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"WithdrawRemote","type":"event"},{"inputs":[],"name":"BPS_DENOMINATOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"CHAIN_ID","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_ADMIN_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEFAULT_ROUTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amountLD","type":"uint256"}],"name":"LDToLP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountLP","type":"uint256"}],"name":"LPToLD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UPGRADE_INTERFACE_VERSION","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"}],"name":"activatePeerPool","outputs":[],"stateMutability":"nonpayable","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":[{"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":[],"name":"batched","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"calcFee","outputs":[{"components":[{"internalType":"uint256","name":"amountGD","type":"uint256"},{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"lpFee","type":"uint256"},{"internalType":"uint256","name":"eqFee","type":"uint256"},{"internalType":"uint256","name":"eqReward","type":"uint256"},{"internalType":"uint256","name":"lastKnownBalance","type":"uint256"}],"internalType":"struct ITransferPoolFeeCalculator.FeeInfo","name":"feeInfo","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"fullMode","type":"bool"}],"name":"callDelta","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"convertRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultLPMode","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"defaultSwapMode","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deltaCredit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"}],"name":"drawFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"dstFlowRateLimiter","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":"eqFeePool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeCalculator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"}],"name":"getPeerPoolInfo","outputs":[{"components":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"targetBalance","type":"uint256"},{"internalType":"uint256","name":"lastKnownBalance","type":"uint256"},{"internalType":"uint256","name":"credits","type":"uint256"},{"internalType":"bool","name":"ready","type":"bool"}],"internalType":"struct IPool.PeerPoolInfo","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"}],"name":"getRoleAdmin","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"globalDecimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"grantRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"hasRole","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint256","name":"poolId","type":"uint256"},{"internalType":"address","name":"token","type":"address"},{"internalType":"uint8","name":"globalDecimals","type":"uint8"},{"internalType":"uint8","name":"localDecimals","type":"uint8"},{"internalType":"address","name":"feeCalculator","type":"address"},{"internalType":"address","name":"admin","type":"address"},{"internalType":"address","name":"router","type":"address"},{"internalType":"address","name":"dstFlowRateLimiter","type":"address"}],"internalType":"struct Pool.InitializeParam","name":"p","type":"tuple"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"localDecimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpDeltaBP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"mint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"peerPoolInfoIndexSeek","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"peerPoolInfos","outputs":[{"internalType":"uint256","name":"chainId","type":"uint256"},{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"},{"internalType":"uint256","name":"balance","type":"uint256"},{"internalType":"uint256","name":"targetBalance","type":"uint256"},{"internalType":"uint256","name":"lastKnownBalance","type":"uint256"},{"internalType":"uint256","name":"credits","type":"uint256"},{"internalType":"bool","name":"ready","type":"bool"}],"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":"poolBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"poolId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"proxiableUUID","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"address","name":"to","type":"address"},{"components":[{"internalType":"uint256","name":"amountGD","type":"uint256"},{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"lpFee","type":"uint256"},{"internalType":"uint256","name":"eqFee","type":"uint256"},{"internalType":"uint256","name":"eqReward","type":"uint256"},{"internalType":"uint256","name":"lastKnownBalance","type":"uint256"}],"internalType":"struct ITransferPoolFeeCalculator.FeeInfo","name":"feeInfo","type":"tuple"}],"name":"recv","outputs":[{"internalType":"uint256","name":"amountLD","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"}],"name":"registerPeerPool","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"callerConfirmation","type":"address"}],"name":"renounceRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"role","type":"bytes32"},{"internalType":"address","name":"account","type":"address"}],"name":"revokeRole","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"}],"name":"sendCredit","outputs":[{"components":[{"internalType":"uint256","name":"credits","type":"uint256"},{"internalType":"uint256","name":"targetBalance","type":"uint256"}],"internalType":"struct IPool.CreditInfo","name":"creditInfo","type":"tuple"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"batched_","type":"bool"},{"internalType":"uint256","name":"swapDeltaBP_","type":"uint256"},{"internalType":"uint256","name":"lpDeltaBP_","type":"uint256"},{"internalType":"bool","name":"defaultSwapMode_","type":"bool"},{"internalType":"bool","name":"defaultLPMode_","type":"bool"}],"name":"setDeltaParam","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"dstFlowRateLimiter_","type":"address"}],"name":"setDstFlowRateLimiter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"uint256","name":"weight","type":"uint256"}],"name":"setPeerPoolWeight","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"transferStop_","type":"bool"}],"name":"setTransferStop","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapDeltaBP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"totalLiquidity","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalWeight","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amountLD","type":"uint256"},{"internalType":"uint256","name":"minAmountLD","type":"uint256"},{"internalType":"bool","name":"newLiquidity","type":"bool"}],"name":"transfer","outputs":[{"components":[{"internalType":"uint256","name":"amountGD","type":"uint256"},{"internalType":"uint256","name":"protocolFee","type":"uint256"},{"internalType":"uint256","name":"lpFee","type":"uint256"},{"internalType":"uint256","name":"eqFee","type":"uint256"},{"internalType":"uint256","name":"eqReward","type":"uint256"},{"internalType":"uint256","name":"lastKnownBalance","type":"uint256"}],"internalType":"struct ITransferPoolFeeCalculator.FeeInfo","name":"feeInfo","type":"tuple"}],"stateMutability":"nonpayable","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":[],"name":"transferStop","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"components":[{"internalType":"uint256","name":"credits","type":"uint256"},{"internalType":"uint256","name":"targetBalance","type":"uint256"}],"internalType":"struct IPool.CreditInfo","name":"creditInfo","type":"tuple"}],"name":"updateCredit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"uint256","name":"amountGD","type":"uint256"}],"name":"withdrawCheck","outputs":[{"internalType":"uint256","name":"amountSwap","type":"uint256"},{"internalType":"uint256","name":"amountMint","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amountGD","type":"uint256"},{"internalType":"uint256","name":"amountToMintGD","type":"uint256"}],"name":"withdrawConfirm","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amountLP","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"withdrawInstant","outputs":[{"internalType":"uint256","name":"amountGD","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amountLP","type":"uint256"},{"internalType":"bytes","name":"to","type":"bytes"}],"name":"withdrawLocal","outputs":[{"internalType":"uint256","name":"amountGD","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"peerChainId","type":"uint256"},{"internalType":"uint256","name":"peerPoolId","type":"uint256"},{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amountLP","type":"uint256"}],"name":"withdrawRemote","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
60c0604052306080523480156200001557600080fd5b506040516200563938038062005639833981016040819052620000389162000041565b60a0526200005b565b6000602082840312156200005457600080fd5b5051919050565b60805160a05161559c6200009d600039600081816109e501528181611b1f0152612d5b0152600081816139b7015281816139e00152613b26015261559c6000f3fe6080604052600436106104055760003560e01c80636a9bb71211610213578063a217fddf11610123578063d547741f116100ab578063e46e70581161007a578063e46e705814610ccb578063e5b15b5214610cea578063e5b226ff14610d6d578063fc0c546a14610d8d578063feb56b1514610dad57600080fd5b8063d547741f14610c55578063dd62ed3e14610c75578063e065608b14610c95578063e1a4521814610cb557600080fd5b8063b6192d0b116100f2578063b6192d0b14610bbd578063c646b16614610bdd578063ca98190914610bfd578063cdfed0ab14610c1f578063d505accf14610c3557600080fd5b8063a217fddf14610b37578063a9059cbb14610b4c578063ad3cb1cc14610b6c578063b00eb9fe14610b9d57600080fd5b80638cdc1f24116101a657806396365d441161017557806396365d4414610ab757806396c82e5714610acc57806399a22d6814610ae25780639bb8111914610b015780639d3c38c514610b1757600080fd5b80638cdc1f2414610a425780638d55de6314610a6257806391d1485414610a8257806395d89b4114610aa257600080fd5b80637fb65265116101e25780637fb652651461098b57806384b0196e146109ab57806385e1f4d0146109d357806388cb0df714610a0757600080fd5b80636a9bb712146108f357806370a082311461092b57806372e30f6a1461094b5780637ecebe001461096b57600080fd5b8063364487771161031957806343469f32116102a1578063601c186111610270578063601c18611461084757806360b71d4e1461087c578063641ffaa11461089257806365fe044d146108b25780636780a311146108d257600080fd5b806343469f32146107df5780634f1ef286146107ff57806351fe0e181461081257806352d1902d1461083257600080fd5b80633e0dc34e116102e85780633e0dc34e146107315780633f668d6f146107475780633fc03c261461077f57806340c10f191461079f57806342b5d7ff146107bf57600080fd5b806336448777146106c65780633644e515146106dc57806336568abe146106f15780633dc69f2c1461071157600080fd5b80631e8e51da1161039c57806327f923761161036b57806327f923761461063457806328f079c21461064e5780632b3afdb01461066e5780632f2ff15d1461068e578063313ce567146106ae57600080fd5b80631e8e51da146105bc5780631fa22e18146105d257806323b872dd146105f4578063248a9ca31461061457600080fd5b8063106e846b116103d8578063106e846b146104ad57806310a470ab1461050a57806315770f921461057657806318160ddd1461059a57600080fd5b806301ffc9a71461040a57806306fdde031461043f578063095ea7b3146104615780630f45684a14610481575b600080fd5b34801561041657600080fd5b5061042a610425366004614723565b610dc3565b60405190151581526020015b60405180910390f35b34801561044b57600080fd5b50610454610dfa565b604051610436919061479d565b34801561046d57600080fd5b5061042a61047c3660046147cc565b610ea3565b34801561048d57600080fd5b5060005461049b9060ff1681565b60405160ff9091168152602001610436565b3480156104b957600080fd5b506104cd6104c83660046147f6565b610ebb565b604080519889526020890197909752958701949094526060860192909252608085015260a084015260c0830152151560e082015261010001610436565b34801561051657600080fd5b5061052a61052536600461481d565b610f14565b6040516104369190600060c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015292915050565b34801561058257600080fd5b5061058c60355481565b604051908152602001610436565b3480156105a657600080fd5b506000805160206154c78339815191525461058c565b3480156105c857600080fd5b5061058c60375481565b3480156105de57600080fd5b506105f26105ed366004614879565b6113d5565b005b34801561060057600080fd5b5061042a61060f366004614894565b611429565b34801561062057600080fd5b5061058c61062f3660046147f6565b61144f565b34801561064057600080fd5b5060385461042a9060ff1681565b34801561065a57600080fd5b5060385461042a9062010000900460ff1681565b34801561067a57600080fd5b5061058c6106893660046148d0565b611471565b34801561069a57600080fd5b506105f26106a936600461496f565b611582565b3480156106ba57600080fd5b5060005460ff1661049b565b3480156106d257600080fd5b5061058c603c5481565b3480156106e857600080fd5b5061058c6115a4565b3480156106fd57600080fd5b506105f261070c36600461496f565b6115b3565b34801561071d57600080fd5b506105f261072c36600461499b565b6115eb565b34801561073d57600080fd5b5061058c603d5481565b34801561075357600080fd5b5061058c6107623660046149c7565b603460209081526000928352604080842090915290825290205481565b34801561078b57600080fd5b5061058c61079a3660046149e9565b61192d565b3480156107ab57600080fd5b5061058c6107ba3660046147cc565b611a2c565b3480156107cb57600080fd5b5061058c6107da366004614a95565b611a65565b3480156107eb57600080fd5b506105f26107fa3660046149c7565b611c38565b6105f261080d366004614b28565b611cba565b34801561081e57600080fd5b5061058c61082d3660046147f6565b611cd9565b34801561083e57600080fd5b5061058c611cec565b34801561085357600080fd5b5061086761086236600461499b565b611d09565b60408051928352602083019190915201610436565b34801561088857600080fd5b5061058c60395481565b34801561089e57600080fd5b506105f26108ad366004614bce565b611de0565b3480156108be57600080fd5b506105f26108cd366004614c0b565b611eee565b3480156108de57600080fd5b50603e5461042a90600160a01b900460ff1681565b3480156108ff57600080fd5b50603254610913906001600160a01b031681565b6040516001600160a01b039091168152602001610436565b34801561093757600080fd5b5061058c610946366004614879565b6122f5565b34801561095757600080fd5b506105f2610966366004614c47565b612328565b34801561097757600080fd5b5061058c610986366004614879565b6123dd565b34801561099757600080fd5b506105f26109a6366004614cbb565b6123e8565b3480156109b757600080fd5b506109c0612409565b6040516104369796959493929190614cd8565b3480156109df57600080fd5b5061058c7f000000000000000000000000000000000000000000000000000000000000000081565b348015610a1357600080fd5b50610a27610a223660046149c7565b6124b5565b60408051825181526020928301519281019290925201610436565b348015610a4e57600080fd5b506105f2610a5d366004614879565b6125c0565b348015610a6e57600080fd5b5061058c610a7d3660046147f6565b6126d2565b348015610a8e57600080fd5b5061042a610a9d36600461496f565b6126e0565b348015610aae57600080fd5b50610454612718565b348015610ac357600080fd5b5061058c612757565b348015610ad857600080fd5b5061058c60365481565b348015610aee57600080fd5b5060385461042a90610100900460ff1681565b348015610b0d57600080fd5b5061058c603a5481565b348015610b2357600080fd5b506105f2610b32366004614cbb565b61276f565b348015610b4357600080fd5b5061058c600081565b348015610b5857600080fd5b5061042a610b673660046147cc565b6127d6565b348015610b7857600080fd5b50610454604051806040016040528060058152602001640352e302e360dc1b81525081565b348015610ba957600080fd5b50603154610913906001600160a01b031681565b348015610bc957600080fd5b5061052a610bd8366004614bce565b6127e4565b348015610be957600080fd5b506105f2610bf836600461499b565b6128ff565b348015610c0957600080fd5b5061058c60008051602061554783398151915281565b348015610c2b57600080fd5b5061058c603b5481565b348015610c4157600080fd5b506105f2610c50366004614d82565b61297d565b348015610c6157600080fd5b506105f2610c7036600461496f565b612ad6565b348015610c8157600080fd5b5061058c610c90366004614dec565b612af2565b348015610ca157600080fd5b506105f2610cb0366004614e16565b612b3c565b348015610cc157600080fd5b5061058c61271081565b348015610cd757600080fd5b5060005461049b90610100900460ff1681565b348015610cf657600080fd5b50610d0a610d053660046149c7565b612c35565b6040516104369190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e0830151151560e083015292915050565b348015610d7957600080fd5b506105f2610d88366004614e75565b612ced565b348015610d9957600080fd5b50603e54610913906001600160a01b031681565b348015610db957600080fd5b5061058c60015481565b60006001600160e01b03198216637965db0b60e01b1480610df457506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060006000805160206154a78339815191525b9050806003018054610e1f90614ebc565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4b90614ebc565b8015610e985780601f10610e6d57610100808354040283529160200191610e98565b820191906000526020600020905b815481529060010190602001808311610e7b57829003601f168201915b505050505091505090565b600033610eb1818585612e5e565b5060019392505050565b60338181548110610ecb57600080fd5b6000918252602090912060089091020180546001820154600283015460038401546004850154600586015460068701546007909701549597509395929491939092909160ff1688565b610f4d6040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b610f55612e6b565b600080516020615547833981519152610f6d81612eb5565b603e54600160a01b900460ff1615610fcc5760405162461bcd60e51b815260206004820152601960248201527f544f4b493a207472616e736665722069732073746f707065640000000000000060448201526064015b60405180910390fd5b6001600160a01b038616610ff25760405162461bcd60e51b8152600401610fc390614ef6565b6000610ffe8989612ec2565b600781015490915060ff16151560011461102a5760405162461bcd60e51b8152600401610fc390614f2d565b600061103587612fc5565b9050600061104287612fc5565b6040805160c081018252308152603d5460208201526000805460ff16928201929092529192509060608101611075612757565b81526035546020820152603a54604091820152603154905163143273dd60e21b81529192506001600160a01b0316906350c9cf74906110be90849088908f908990600401614f70565b60c060405180830381865afa1580156110db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ff9190615037565b805190965061115c5760405162461bcd60e51b8152602060048201526024808201527f544f4b493a20696e73756666696369656e7420616d6f756e7420746f207061796044820152632066656560e01b6064820152608401610fc3565b81866060015187608001518561117291906150a7565b61117c91906150ba565b10156111ca5760405162461bcd60e51b815260206004820152601760248201527f544f4b493a20736c69707061676520746f6f20686967680000000000000000006044820152606401610fc3565b6080860151156111f0578560800151603a60008282546111ea91906150ba565b90915550505b6080860151604087015161120490856150ba565b61120e91906150a7565b60a0870152600384015483111561127e5760405162461bcd60e51b815260206004820152602e60248201527f544f4b493a2070656572506f6f6c2062616c616e636520697320696e7375666660448201526d696369656e742062616c616e636560901b6064820152608401610fc3565b8560a00151846003015461129291906150ba565b600385015586156112c2578560800151836037546112b091906150a7565b6112ba91906150a7565b6037556112e2565b6080860151156112e25785608001516037546112de91906150a7565b6037555b60385460ff1615806113125750612710603b5460355461130291906150cd565b61130c91906150e4565b60375410155b1561132b5760385461132b90610100900460ff16612fd5565b7f9c7519dcf6aef530f7209189ddd559038a69f8bb53f818b7fa76c67379aa6b2c8c8c8c89600001518a608001518b606001518c602001518d604001516040516113b698979695949392919097885260208801969096526001600160a01b039490941660408701526060860192909252608085015260a084015260c083015260e08201526101000190565b60405180910390a150505050506113cb613425565b9695505050505050565b60006113e081612eb5565b6001600160a01b0382166114065760405162461bcd60e51b8152600401610fc390615106565b50603280546001600160a01b0319166001600160a01b0392909216919091179055565b60003361143785828561344b565b611442858585613498565b60019150505b9392505050565b6000908152600080516020615527833981519152602052604090206001015490565b600061147b612e6b565b60008051602061554783398151915261149381612eb5565b6001600160a01b0386166114b95760405162461bcd60e51b8152600401610fc390614ef6565b6114c38888612ec2565b6007015460ff1615156001146114eb5760405162461bcd60e51b8152600401610fc390614f2d565b6114f586866134f7565b60385490925060ff1615806115275750612710603c5460355461151891906150cd565b61152291906150e4565b603754115b15611536576115366000612fd5565b7fc184e55db14c3f814948da0d3295ebf968287d110e7ebb55ea0f30a773fc1d3c88888888868989604051611571979695949392919061514c565b60405180910390a1506113cb613425565b61158b8261144f565b61159481612eb5565b61159e8383613664565b50505050565b60006115ae613709565b905090565b6001600160a01b03811633146115dc5760405163334bd91960e11b815260040160405180910390fd5b6115e68282613713565b505050565b60006115f681612eb5565b60335460005b8181101561172b57600060338281548110611619576116196151a6565b600091825260208083206040805161010081018252600890940290910180548085526001820154938501939093526002810154918401919091526003810154606084015260048101546080840152600581015460a0840152600681015460c08401526007015460ff16151560e08301529092508814801561169d5750868260200151145b905080156117215760405162461bcd60e51b8152602060048201526044602482018190527f544f4b493a2063616e6e6f7420726567697374657250656572506f6f6c206f66908201527f206578697374696e672070656572436861696e496420616e642070656572506f6064820152631bdb125960e21b608482015260a401610fc3565b50506001016115fc565b508260365461173a91906150a7565b60365560338054600087815260346020908152604080832089845282528083208490558051610100810182528a81528083018a81528183018a815260608084018781526080850188815260a0860189815260c087018a815260e088018b815260018d018e559c909a5295517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a826008909b029a8b015593517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a838a015591517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8489015590517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8588015590517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8687015590517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8786015592517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8885015593517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a89909301805460ff19169315159390931790925582518881529182018790529181018590527f5b1ee307451dd65aa45d1657a66752bab8925be9aad7c827865655c8c2fdac2491015b60405180910390a15050505050565b6000611937612e6b565b60008051602061554783398151915261194f81612eb5565b6001600160a01b0385166119755760405162461bcd60e51b8152600401610fc390614ef6565b60375460006119838261378f565b905080861115611991578095505b61199b87876134f7565b93506119a784836150ba565b60375560006119b585613825565b603e549091506119cf906001600160a01b03168783613835565b604080516001600160a01b038a81168252602082018a90528183018890528816606082015290517f285a08d85aaeb56c8b9d22b6877dffaed0cb5d07c1c14494aff61d9524746a129181900360800190a150505050611448613425565b6000611a36612e6b565b600080516020615547833981519152611a4e81612eb5565b611a5a84846001613849565b915050610df4613425565b6000611a6f612e6b565b600080516020615547833981519152611a8781612eb5565b826040015160356000828254611a9d91906150a7565b90915550506060830151603a8054600090611ab99084906150a7565b9091555050602083015160398054600090611ad59084906150a7565b9091555060009050611ae78787612ec2565b90508360a001518160050154611afd91906150ba565b600582015560808401518451611b1b91611b16916150a7565b613825565b92507f00000000000000000000000000000000000000000000000000000000000000008714611ba3576032546040516347f4d98d60e01b8152600481018590526001600160a01b03909116906347f4d98d90602401600060405180830381600087803b158015611b8a57600080fd5b505af1158015611b9e573d6000803e3d6000fd5b505050505b603e54611bba906001600160a01b03168685613835565b7f82f23eb0ffa46ea98b1a7134447f74561cec3e194d0f1d06ffc35ce71ae803368585608001518660000151611bf091906150a7565b6020808801516060808a0151604080516001600160a01b039097168752938601949094529184015282015260800160405180910390a15050611c30613425565b949350505050565b6000611c4381612eb5565b6000611c4f8484612ec2565b600781015490915060ff1615611ca75760405162461bcd60e51b815260206004820181905260248201527f544f4b493a2050656572506f6f6c20697320616c7265616479206163746976656044820152606401610fc3565b600701805460ff19166001179055505050565b611cc26139ac565b611ccb82613a53565b611cd58282613a5e565b5050565b6000610df4611ce783612fc5565b61378f565b6000611cf6613b1b565b5060008051602061550783398151915290565b600080611d14612e6b565b600080516020615547833981519152611d2c81612eb5565b6000611d388787612ec2565b90508060030154851115611d69576003810154611d5590866150ba565b600382018054600090915594509250611d86565b848160030154611d7991906150ba565b6003820155849350600092505b6040805188815260208101889052908101859052606081018490527f9d8bfb8a1a799d9f6f5e207b8c00c13b549b7f20c8421d1f94bc9bfe23a901989060800160405180910390a15050611dd8613425565b935093915050565b611de8612e6b565b600080516020615547833981519152611e0081612eb5565b6001600160a01b038316611e265760405162461bcd60e51b8152600401610fc390614ef6565b6000611e3284846134f7565b60385490915060ff161580611e645750612710603c54603554611e5591906150cd565b611e5f91906150e4565b603754115b15611e7e57603854611e7e9062010000900460ff16612fd5565b6000611e8982613825565b60408051898152602081018990526001600160a01b03881681830152606081018790526080810183905290519192507f5f8ecf683e1923224ca1e9b396be6a7a13e480a011e7645d641e7a7d3a2d0f03919081900360a00190a150505061159e613425565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015611f345750825b905060008267ffffffffffffffff166001148015611f515750303b155b905081158015611f5f575080155b15611f7d5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611fa757845460ff60401b1916600160401b1785555b612030611fb487806151bc565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ff69250505060208901896151bc565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250613b6492505050565b61207761203d87806151bc565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250613b7692505050565b61207f613ba1565b612087613ba1565b6120af61209a60a088016080890161520a565b6120aa60c0890160a08a0161520a565b613ba9565b6120b7613bbb565b6120d260006120cd610100890160e08a01614879565b613664565b506120f76000805160206155478339815191526120cd61012089016101008a01614879565b506040860135603d5560006121126080880160608901614879565b6001600160a01b0316036121685760405162461bcd60e51b815260206004820152601960248201527f544f4b493a20746f6b656e2063616e6e6f7420626520307830000000000000006044820152606401610fc3565b600061217a60e0880160c08901614879565b6001600160a01b0316036121da5760405162461bcd60e51b815260206004820152602160248201527f544f4b493a2066656543616c63756c61746f722063616e6e6f742062652030786044820152600360fc1b6064820152608401610fc3565b60006121ee61014088016101208901614879565b6001600160a01b0316036122145760405162461bcd60e51b8152600401610fc390615106565b6122246080870160608801614879565b603e80546001600160a01b0319166001600160a01b039290921691909117905561225460e0870160c08801614879565b603180546001600160a01b0319166001600160a01b039290921691909117905561228661014087016101208801614879565b603280546001600160a01b0319166001600160a01b039290921691909117905583156122ed57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b505050505050565b6000806000805160206154a78339815191525b6001600160a01b0390931660009081526020939093525050604090205490565b612330612e6b565b60008051602061554783398151915261234881612eb5565b60006123548585612ec2565b83516003820154919250612367916150a7565b6003820155602083015160048201541461238657602083015160048201555b82516020808501516040805189815292830188905282810193909352606082015290517fdbbc76676cb73b8d1c33378e0cdc88f364e4203cfa5b1e4c7d15b66b5cb97f0c9181900360800190a150506115e6613425565b6000610df482613bcb565b60008051602061554783398151915261240081612eb5565b611cd582612fd5565b600060608082808083816000805160206154e7833981519152805490915015801561243657506001810154155b61247a5760405162461bcd60e51b81526020600482015260156024820152741152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959605a1b6044820152606401610fc3565b612482613bf4565b61248a613c33565b60408051600080825260208201909252600f60f81b9c939b5091995046985030975095509350915050565b60408051808201909152600080825260208201526124d1612e6b565b6000805160206155478339815191526124e981612eb5565b60006124f58585612ec2565b600781015490915060ff1615156001146125215760405162461bcd60e51b8152600401610fc390614f2d565b603654816002015460355461253691906150cd565b61254091906150e4565b60208401526006810154808452600582015461255c91906150a7565b600582015560006006820155825160208401516040517f0aeafd14584f8a6bfe6b3846da893395e218188cb3ba5586a705848f7fbcb1ad926125ae928883526020830191909152604082015260600190565b60405180910390a15050610df4613425565b60006125cb81612eb5565b6001600160a01b03821661261a5760405162461bcd60e51b81526020600482015260166024820152750544f4b493a20746f2063616e6e6f74206265203078360541b6044820152606401610fc3565b6000603954116126645760405162461bcd60e51b81526020600482015260156024820152740544f4b493a2066656542616c616e6365206973203605c1b6044820152606401610fc3565b6000612671603954613825565b6000603955604080516001600160a01b0386168152602081018390529192507f4d8561778a7e176276dbab0b22e231f4656392a2439d6c87311ce19c205114df910160405180910390a1603e546115e6906001600160a01b03168483613835565b6000610df4611b1683613c4b565b6000918252600080516020615527833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0480546060916000805160206154a783398151915291610e1f90614ebc565b6000600154612765306122f5565b6115ae91906150e4565b600061277a81612eb5565b603e805460ff60a01b1916600160a01b8415158102919091179182905560405160ff9190920416151581527f660b23189ca2beb2b4fa82b1cce83958fe200d635d3603ed6faa26f2d1b3dd7e9060200160405180910390a15050565b600033610eb1818585613498565b61281d6040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006128298686612ec2565b9050600061283684612fc5565b6040805160c081018252308152603d5460208201526000805460ff16928201929092529192509060608101612869612757565b81526035546020820152603a54604091820152603154905163143273dd60e21b81529192506001600160a01b0316906350c9cf74906128b290849087908b908890600401614f70565b60c060405180830381865afa1580156128cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128f39190615037565b98975050505050505050565b600061290a81612eb5565b60006129168585612ec2565b905082816002015460365461292b91906150ba565b61293591906150a7565b6036556002810183905560408051868152602081018690529081018490527f5b1ee307451dd65aa45d1657a66752bab8925be9aad7c827865655c8c2fdac249060600161191e565b834211156129a15760405163313c898160e11b815260048101859052602401610fc3565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888612a0d8c6001600160a01b031660009081527f5ab42ced628888259c08ac98db1eb0cf702fc1501344311d8b100cd1bfe4bb006020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000612a6882613ced565b90506000612a7882878787613d1a565b9050896001600160a01b0316816001600160a01b031614612abf576040516325c0072360e11b81526001600160a01b0380831660048301528b166024820152604401610fc3565b612aca8a8a8a612e5e565b50505050505050505050565b612adf8261144f565b612ae881612eb5565b61159e8383613713565b6001600160a01b0391821660009081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace016020908152604080832093909416825291909152205490565b6000612b4781612eb5565b6127108511158015612b5b57506127108411155b612ba75760405162461bcd60e51b815260206004820152601760248201527f544f4b493a2077726f6e672044656c746120706172616d0000000000000000006044820152606401610fc3565b60388054603b879055603c86905561ffff191687151561ff00198116919091176101008615159081029190911762ff00001916620100008615159081029190911790935560408051928352602083018990528201879052606082015260808101919091527f7cc11124872dc29ed41dd447ee7ab07d9eee5d8ebb55f65dd92bce19bb20224a9060a0016122e4565b612c7f604051806101000160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b612c898383612ec2565b604080516101008101825282548152600183015460208201526002830154918101919091526003820154606082015260048201546080820152600582015460a0820152600682015460c082015260079091015460ff16151560e08201529392505050565b612cf5612e6b565b600080516020615547833981519152612d0d81612eb5565b8115612d2957612d2784612d2084613825565b6000613849565b505b6000612d358787612ec2565b9050838160050154612d4791906150ba565b60058201556000612d5785613825565b90507f00000000000000000000000000000000000000000000000000000000000000008814612ddf576032546040516347f4d98d60e01b8152600481018390526001600160a01b03909116906347f4d98d90602401600060405180830381600087803b158015612dc657600080fd5b505af1158015612dda573d6000803e3d6000fd5b505050505b603e54612df6906001600160a01b03168783613835565b60408051898152602081018990526001600160a01b03881681830152606081018790526080810186905290517fcf0b8bea497be617351b2c1a4243bd9e92167fdf778a43ebb66fb37160594a0f9181900360a00190a1505050612e57613425565b5050505050565b6115e68383836001613d48565b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00805460011901612eaf57604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b612ebf8133613e2f565b50565b603354600090612f145760405162461bcd60e51b815260206004820152601c60248201527f544f4b493a206e6f2070656572506f6f6c496e666f73206578697374000000006044820152606401610fc3565b6000838152603460209081526040808320858452909152902054603380549091908110612f4357612f436151a6565b90600052602060002090600802019050828160000154148015612f695750818160010154145b610df45760405162461bcd60e51b815260206004820152602760248201527f544f4b493a206c6f63616c2070656572506f6f6c496e666f20646f6573206e6f6044820152661d08195e1a5cdd60ca1b6064820152608401610fc3565b600060015482610df491906150e4565b6000603754118015612fe957506000603654115b15612ebf5760335460008167ffffffffffffffff81111561300c5761300c614a25565b604051908082528060200260200182016040528015613035578160200160208202803683370190505b5090506000805b8381101561310a57600060338281548110613059576130596151a6565b906000526020600020906008020190506000603654826002015460355461308091906150cd565b61308a91906150e4565b90506000826006015483600501546130a291906150a7565b9050808211156130fc576130b681836150ba565b8685815181106130c8576130c86151a6565b6020026020010181815250508584815181106130e6576130e66151a6565b6020026020010151856130f991906150a7565b94505b50505080600101905061303c565b506000816000036131b15784801561312457506000603754115b156131ac5760005b848110156131aa57600060338281548110613149576131496151a6565b906000526020600020906008020190506000603654826002015460375461317091906150cd565b61317a91906150e4565b905061318681856150a7565b935080826006015461319891906150a7565b6006909201919091555060010161312c565b505b61340d565b8160375410156132bc5760005b848110156131aa5760008482815181106131da576131da6151a6565b602002602001015111156132b4576000603382815481106131fd576131fd6151a6565b9060005260206000209060080201905083603754868481518110613223576132236151a6565b602002602001015161323591906150cd565b61323f91906150e4565b858381518110613251576132516151a6565b60200260200101818152505084828151811061326f5761326f6151a6565b60200260200101518361328291906150a7565b9250848281518110613296576132966151a6565b602002602001015181600601546132ad91906150a7565b6006909101555b6001016131be565b841561335a576000826037546132d291906150ba565b905060005b85811015613353576000603382815481106132f4576132f46151a6565b90600052602060002090600802019050600060365482600201548561331991906150cd565b61332391906150e4565b905061332f81866150a7565b945080826006015461334191906150a7565b600690920191909155506001016132d7565b505061340d565b60005b8481101561340b576000848281518110613379576133796151a6565b602002602001015111156134035760006033828154811061339c5761339c6151a6565b906000526020600020906008020190508482815181106133be576133be6151a6565b6020026020010151836133d191906150a7565b92508482815181106133e5576133e56151a6565b602002602001015181600601546133fc91906150a7565b6006909101555b60010161335d565b505b8060375461341b91906150ba565b6037555050505050565b60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055565b60006134578484612af2565b9050600019811461159e578181101561348957828183604051637dc7a0d960e11b8152600401610fc393929190615225565b61159e84848484036000613d48565b6001600160a01b0383166134c257604051634b637e8f60e11b815260006004820152602401610fc3565b6001600160a01b0382166134ec5760405163ec442f0560e01b815260006004820152602401610fc3565b6115e6838383613e68565b6000806135106000805160206154c78339815191525490565b1161356d5760405162461bcd60e51b815260206004820152602760248201527f544f4b493a2063616e6e6f74206275726e207768656e20746f74616c5375707060448201526606c79203d3d20360cc1b6064820152608401610fc3565b6000613578846122f5565b9050828110156135d55760405162461bcd60e51b815260206004820152602260248201527f544f4b493a206e6f7420656e6f756768204c5020746f6b656e7320746f206275604482015261393760f11b6064820152608401610fc3565b60006135ed6000805160206154c78339815191525490565b6035546135fa90866150cd565b61360491906150e4565b90508060355461361491906150ba565b6035556136218585613f93565b7f49995e5dd6158cf69ad3e9777c46755a1a826a446c6416992167462dad033b2a85858360405161365493929190615225565b60405180910390a1949350505050565b600060008051602061552783398151915261367f84846126e0565b6136ff576000848152602082815260408083206001600160a01b03871684529091529020805460ff191660011790556136b53390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610df4565b6000915050610df4565b60006115ae613fc9565b600060008051602061552783398151915261372e84846126e0565b156136ff576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610df4565b600080603554116137fe5760405162461bcd60e51b815260206004820152603360248201527f544f4b493a2063616e6e6f7420636f6e7665727420417373657420746f204c506044820152720207768656e20746f74616c4c6971203d3d203606c1b6064820152608401610fc3565b6035546000805160206154c78339815191525461381b90846150cd565b610df491906150e4565b600060015482610df491906150cd565b6115e66001600160a01b038416838361403d565b6000806036541161389c5760405162461bcd60e51b815260206004820152601760248201527f544f4b493a204e6f2070656572506f6f6c2065786973740000000000000000006044820152606401610fc3565b6138a583612fc5565b905081156138bf57806037546138bb91906150a7565b6037555b806138d66000805160206154c78339815191525490565b15613905576035546000805160206154c7833981519152546138f890846150cd565b61390291906150e4565b90505b8160355461391391906150a7565b603555613920858261408f565b7f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f85828460405161395393929190615225565b60405180910390a160385460ff16158061398a5750612710603c5460355461397b91906150cd565b61398591906150e4565b603754115b156139a4576038546139a49062010000900460ff16612fd5565b509392505050565b306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480613a3357507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316613a27600080516020615507833981519152546001600160a01b031690565b6001600160a01b031614155b15613a515760405163703e46dd60e11b815260040160405180910390fd5b565b6000611cd581612eb5565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613ab8575060408051601f3d908101601f19168201909252613ab591810190615246565b60015b613ae057604051634c9c8ce360e01b81526001600160a01b0383166004820152602401610fc3565b6000805160206155078339815191528114613b1157604051632a87526960e21b815260048101829052602401610fc3565b6115e683836140c5565b306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614613a515760405163703e46dd60e11b815260040160405180910390fd5b613b6c61411b565b611cd58282614164565b613b7e61411b565b612ebf81604051806040016040528060018152602001603160f81b8152506141b5565b613a5161411b565b613bb161411b565b611cd58282614216565b613bc361411b565b613a51614262565b6000807f5ab42ced628888259c08ac98db1eb0cf702fc1501344311d8b100cd1bfe4bb00612308565b7fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d10280546060916000805160206154e783398151915291610e1f90614ebc565b606060006000805160206154e7833981519152610e0e565b600080613c646000805160206154c78339815191525490565b11613cd05760405162461bcd60e51b815260206004820152603660248201527f544f4b493a2063616e6e6f7420636f6e76657274204c5020746f2041737365746044820152750207768656e20746f74616c537570706c79203d3d20360541b6064820152608401610fc3565b6000805160206154c78339815191525460355461381b90846150cd565b6000610df4613cfa613709565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600080613d2c8888888861426a565b925092509250613d3c8282614339565b50909695505050505050565b6000805160206154a78339815191526001600160a01b038516613d815760405163e602df0560e01b815260006004820152602401610fc3565b6001600160a01b038416613dab57604051634a1406b160e11b815260006004820152602401610fc3565b6001600160a01b03808616600090815260018301602090815260408083209388168352929052208390558115612e5757836001600160a01b0316856001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92585604051613e2091815260200190565b60405180910390a35050505050565b613e3982826126e0565b611cd55760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610fc3565b6000805160206154a78339815191526001600160a01b038416613ea45781816002016000828254613e9991906150a7565b90915550613f039050565b6001600160a01b03841660009081526020829052604090205482811015613ee45784818460405163391434e360e21b8152600401610fc393929190615225565b6001600160a01b03851660009081526020839052604090209083900390555b6001600160a01b038316613f21576002810180548390039055613f40565b6001600160a01b03831660009081526020829052604090208054830190555b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051613f8591815260200190565b60405180910390a350505050565b6001600160a01b038216613fbd57604051634b637e8f60e11b815260006004820152602401610fc3565b611cd582600083613e68565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f613ff46143f2565b613ffc61445c565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526115e69084906144a0565b6001600160a01b0382166140b95760405163ec442f0560e01b815260006004820152602401610fc3565b611cd560008383613e68565b6140ce82614503565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115614113576115e68282614568565b611cd56145de565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16613a5157604051631afcd79f60e31b815260040160405180910390fd5b61416c61411b565b6000805160206154a78339815191527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace036141a684826152a7565b506004810161159e83826152a7565b6141bd61411b565b6000805160206154e78339815191527fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d1026141f784826152a7565b506003810161420683826152a7565b5060008082556001909101555050565b61421e61411b565b6000805460ff83811661010090810261ffff1990931682871617929092179283905561425092808216929004166150ba565b61425b90600a61544b565b6001555050565b61342561411b565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411156142a5575060009150600390508261432f565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156142f9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166143255750600092506001915082905061432f565b9250600091508190505b9450945094915050565b600082600381111561434d5761434d615457565b03614356575050565b600182600381111561436a5761436a615457565b036143885760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561439c5761439c615457565b036143bd5760405163fce698f760e01b815260048101829052602401610fc3565b60038260038111156143d1576143d1615457565b03611cd5576040516335e2f38360e21b815260048101829052602401610fc3565b60006000805160206154e78339815191528161440c613bf4565b80519091501561442457805160209091012092915050565b81548015614433579392505050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470935050505090565b60006000805160206154e783398151915281614476613c33565b80519091501561448e57805160209091012092915050565b60018201548015614433579392505050565b60006144b56001600160a01b038416836145fd565b905080516000141580156144da5750808060200190518101906144d8919061546d565b155b156115e657604051635274afe760e01b81526001600160a01b0384166004820152602401610fc3565b806001600160a01b03163b60000361453957604051634c9c8ce360e01b81526001600160a01b0382166004820152602401610fc3565b60008051602061550783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b031684604051614585919061548a565b600060405180830381855af49150503d80600081146145c0576040519150601f19603f3d011682016040523d82523d6000602084013e6145c5565b606091505b50915091506145d585838361460b565b95945050505050565b3415613a515760405163b398979f60e01b815260040160405180910390fd5b606061144883836000614667565b6060826146205761461b826146fa565b611448565b815115801561463757506001600160a01b0384163b155b1561466057604051639996b31560e01b81526001600160a01b0385166004820152602401610fc3565b5080611448565b60608147101561468c5760405163cd78605960e01b8152306004820152602401610fc3565b600080856001600160a01b031684866040516146a8919061548a565b60006040518083038185875af1925050503d80600081146146e5576040519150601f19603f3d011682016040523d82523d6000602084013e6146ea565b606091505b50915091506113cb86838361460b565b80511561470a5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b60006020828403121561473557600080fd5b81356001600160e01b03198116811461144857600080fd5b60005b83811015614768578181015183820152602001614750565b50506000910152565b6000815180845261478981602086016020860161474d565b601f01601f19169290920160200192915050565b6020815260006114486020830184614771565b80356001600160a01b03811681146147c757600080fd5b919050565b600080604083850312156147df57600080fd5b6147e8836147b0565b946020939093013593505050565b60006020828403121561480857600080fd5b5035919050565b8015158114612ebf57600080fd5b60008060008060008060c0878903121561483657600080fd5b863595506020870135945061484d604088016147b0565b9350606087013592506080870135915060a087013561486b8161480f565b809150509295509295509295565b60006020828403121561488b57600080fd5b611448826147b0565b6000806000606084860312156148a957600080fd5b6148b2846147b0565b92506148c0602085016147b0565b9150604084013590509250925092565b60008060008060008060a087890312156148e957600080fd5b8635955060208701359450614900604088016147b0565b935060608701359250608087013567ffffffffffffffff8082111561492457600080fd5b818901915089601f83011261493857600080fd5b81358181111561494757600080fd5b8a602082850101111561495957600080fd5b6020830194508093505050509295509295509295565b6000806040838503121561498257600080fd5b82359150614992602084016147b0565b90509250929050565b6000806000606084860312156149b057600080fd5b505081359360208301359350604090920135919050565b600080604083850312156149da57600080fd5b50508035926020909101359150565b6000806000606084860312156149fe57600080fd5b614a07846147b0565b925060208401359150614a1c604085016147b0565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715614a8d57614a8d614a25565b604052919050565b600080600080848603610120811215614aad57600080fd5b8535945060208601359350614ac4604087016147b0565b925060c0605f1982011215614ad857600080fd5b50614ae1614a3b565b606086013581526080860135602082015260a0860135604082015260c0860135606082015260e0860135608082015261010086013560a08201528091505092959194509250565b60008060408385031215614b3b57600080fd5b614b44836147b0565b915060208084013567ffffffffffffffff80821115614b6257600080fd5b818601915086601f830112614b7657600080fd5b813581811115614b8857614b88614a25565b614b9a601f8201601f19168501614a64565b91508082528784828501011115614bb057600080fd5b80848401858401376000848284010152508093505050509250929050565b60008060008060808587031215614be457600080fd5b8435935060208501359250614bfb604086016147b0565b9396929550929360600135925050565b600060208284031215614c1d57600080fd5b813567ffffffffffffffff811115614c3457600080fd5b8201610140818503121561144857600080fd5b60008060008385036080811215614c5d57600080fd5b84359350602085013592506040603f1982011215614c7a57600080fd5b506040516040810181811067ffffffffffffffff82111715614c9e57614c9e614a25565b604090815285013581526060909401356020850152509093909250565b600060208284031215614ccd57600080fd5b81356114488161480f565b60ff60f81b881681526000602060e06020840152614cf960e084018a614771565b8381036040850152614d0b818a614771565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b81811015614d5f57835183529284019291840191600101614d43565b50909c9b505050505050505050505050565b803560ff811681146147c757600080fd5b600080600080600080600060e0888a031215614d9d57600080fd5b614da6886147b0565b9650614db4602089016147b0565b95506040880135945060608801359350614dd060808901614d71565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215614dff57600080fd5b614e08836147b0565b9150614992602084016147b0565b600080600080600060a08688031215614e2e57600080fd5b8535614e398161480f565b945060208601359350604086013592506060860135614e578161480f565b91506080860135614e678161480f565b809150509295509295909350565b600080600080600060a08688031215614e8d57600080fd5b8535945060208601359350614ea4604087016147b0565b94979396509394606081013594506080013592915050565b600181811c90821680614ed057607f821691505b602082108103614ef057634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526018908201527f544f4b493a2066726f6d2063616e6e6f74206265203078300000000000000000604082015260600190565b60208082526023908201527f544f4b493a20636f756e7465722070656572506f6f6c206973206e6f7420726560408201526261647960e81b606082015260800190565b60006102008201905060018060a01b0386511682526020860151602083015260ff6040870151166040830152606086015160608301526080860151608083015260a086015160a0830152845460c0830152600185015460e08301526002850154610100830152600385015461012083015260048501546101408301526005850154610160830152600685015461018083015260ff6007860154166150196101a084018215159052565b506001600160a01b03939093166101c08201526101e0015292915050565b600060c0828403121561504957600080fd5b615051614a3b565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a08201528091505092915050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610df457610df4615091565b81810381811115610df457610df4615091565b8082028115828204841417610df457610df4615091565b60008261510157634e487b7160e01b600052601260045260246000fd5b500490565b60208082526026908201527f544f4b493a20647374466c6f77526174654c696d697465722063616e6e6f742060408201526506265203078360d41b606082015260800190565b87815286602082015260018060a01b038616604082015284606082015283608082015260c060a08201528160c0820152818360e0830137600081830160e090810191909152601f909201601f191601019695505050505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126151d357600080fd5b83018035915067ffffffffffffffff8211156151ee57600080fd5b60200191503681900382131561520357600080fd5b9250929050565b60006020828403121561521c57600080fd5b61144882614d71565b6001600160a01b039390931683526020830191909152604082015260600190565b60006020828403121561525857600080fd5b5051919050565b601f8211156115e6576000816000526020600020601f850160051c810160208610156152885750805b601f850160051c820191505b818110156122ed57828155600101615294565b815167ffffffffffffffff8111156152c1576152c1614a25565b6152d5816152cf8454614ebc565b8461525f565b602080601f83116001811461530a57600084156152f25750858301515b600019600386901b1c1916600185901b1785556122ed565b600085815260208120601f198616915b828110156153395788860151825594840194600190910190840161531a565b50858210156153575787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600181815b808511156153a257816000190482111561538857615388615091565b8085161561539557918102915b93841c939080029061536c565b509250929050565b6000826153b957506001610df4565b816153c657506000610df4565b81600181146153dc57600281146153e657615402565b6001915050610df4565b60ff8411156153f7576153f7615091565b50506001821b610df4565b5060208310610133831016604e8410600b8410161715615425575081810a610df4565b61542f8383615367565b806000190482111561544357615443615091565b029392505050565b600061144883836153aa565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561547f57600080fd5b81516114488161480f565b6000825161549c81846020870161474d565b919091019291505056fe52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0052c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02a16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d100360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b62680066d05ae646b1ee24e48a8708b8c0f6eade385a89cd689a1ed9121cb3ec9e2102a26469706673582212200944fe093538413cbda0b95e8a4cda8e45a94628eae858f9b0efd6d8a992cfd164736f6c634300081800330000000000000000000000000000000000000000000000000000000000aa36a7
Deployed Bytecode
0x6080604052600436106104055760003560e01c80636a9bb71211610213578063a217fddf11610123578063d547741f116100ab578063e46e70581161007a578063e46e705814610ccb578063e5b15b5214610cea578063e5b226ff14610d6d578063fc0c546a14610d8d578063feb56b1514610dad57600080fd5b8063d547741f14610c55578063dd62ed3e14610c75578063e065608b14610c95578063e1a4521814610cb557600080fd5b8063b6192d0b116100f2578063b6192d0b14610bbd578063c646b16614610bdd578063ca98190914610bfd578063cdfed0ab14610c1f578063d505accf14610c3557600080fd5b8063a217fddf14610b37578063a9059cbb14610b4c578063ad3cb1cc14610b6c578063b00eb9fe14610b9d57600080fd5b80638cdc1f24116101a657806396365d441161017557806396365d4414610ab757806396c82e5714610acc57806399a22d6814610ae25780639bb8111914610b015780639d3c38c514610b1757600080fd5b80638cdc1f2414610a425780638d55de6314610a6257806391d1485414610a8257806395d89b4114610aa257600080fd5b80637fb65265116101e25780637fb652651461098b57806384b0196e146109ab57806385e1f4d0146109d357806388cb0df714610a0757600080fd5b80636a9bb712146108f357806370a082311461092b57806372e30f6a1461094b5780637ecebe001461096b57600080fd5b8063364487771161031957806343469f32116102a1578063601c186111610270578063601c18611461084757806360b71d4e1461087c578063641ffaa11461089257806365fe044d146108b25780636780a311146108d257600080fd5b806343469f32146107df5780634f1ef286146107ff57806351fe0e181461081257806352d1902d1461083257600080fd5b80633e0dc34e116102e85780633e0dc34e146107315780633f668d6f146107475780633fc03c261461077f57806340c10f191461079f57806342b5d7ff146107bf57600080fd5b806336448777146106c65780633644e515146106dc57806336568abe146106f15780633dc69f2c1461071157600080fd5b80631e8e51da1161039c57806327f923761161036b57806327f923761461063457806328f079c21461064e5780632b3afdb01461066e5780632f2ff15d1461068e578063313ce567146106ae57600080fd5b80631e8e51da146105bc5780631fa22e18146105d257806323b872dd146105f4578063248a9ca31461061457600080fd5b8063106e846b116103d8578063106e846b146104ad57806310a470ab1461050a57806315770f921461057657806318160ddd1461059a57600080fd5b806301ffc9a71461040a57806306fdde031461043f578063095ea7b3146104615780630f45684a14610481575b600080fd5b34801561041657600080fd5b5061042a610425366004614723565b610dc3565b60405190151581526020015b60405180910390f35b34801561044b57600080fd5b50610454610dfa565b604051610436919061479d565b34801561046d57600080fd5b5061042a61047c3660046147cc565b610ea3565b34801561048d57600080fd5b5060005461049b9060ff1681565b60405160ff9091168152602001610436565b3480156104b957600080fd5b506104cd6104c83660046147f6565b610ebb565b604080519889526020890197909752958701949094526060860192909252608085015260a084015260c0830152151560e082015261010001610436565b34801561051657600080fd5b5061052a61052536600461481d565b610f14565b6040516104369190600060c082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015292915050565b34801561058257600080fd5b5061058c60355481565b604051908152602001610436565b3480156105a657600080fd5b506000805160206154c78339815191525461058c565b3480156105c857600080fd5b5061058c60375481565b3480156105de57600080fd5b506105f26105ed366004614879565b6113d5565b005b34801561060057600080fd5b5061042a61060f366004614894565b611429565b34801561062057600080fd5b5061058c61062f3660046147f6565b61144f565b34801561064057600080fd5b5060385461042a9060ff1681565b34801561065a57600080fd5b5060385461042a9062010000900460ff1681565b34801561067a57600080fd5b5061058c6106893660046148d0565b611471565b34801561069a57600080fd5b506105f26106a936600461496f565b611582565b3480156106ba57600080fd5b5060005460ff1661049b565b3480156106d257600080fd5b5061058c603c5481565b3480156106e857600080fd5b5061058c6115a4565b3480156106fd57600080fd5b506105f261070c36600461496f565b6115b3565b34801561071d57600080fd5b506105f261072c36600461499b565b6115eb565b34801561073d57600080fd5b5061058c603d5481565b34801561075357600080fd5b5061058c6107623660046149c7565b603460209081526000928352604080842090915290825290205481565b34801561078b57600080fd5b5061058c61079a3660046149e9565b61192d565b3480156107ab57600080fd5b5061058c6107ba3660046147cc565b611a2c565b3480156107cb57600080fd5b5061058c6107da366004614a95565b611a65565b3480156107eb57600080fd5b506105f26107fa3660046149c7565b611c38565b6105f261080d366004614b28565b611cba565b34801561081e57600080fd5b5061058c61082d3660046147f6565b611cd9565b34801561083e57600080fd5b5061058c611cec565b34801561085357600080fd5b5061086761086236600461499b565b611d09565b60408051928352602083019190915201610436565b34801561088857600080fd5b5061058c60395481565b34801561089e57600080fd5b506105f26108ad366004614bce565b611de0565b3480156108be57600080fd5b506105f26108cd366004614c0b565b611eee565b3480156108de57600080fd5b50603e5461042a90600160a01b900460ff1681565b3480156108ff57600080fd5b50603254610913906001600160a01b031681565b6040516001600160a01b039091168152602001610436565b34801561093757600080fd5b5061058c610946366004614879565b6122f5565b34801561095757600080fd5b506105f2610966366004614c47565b612328565b34801561097757600080fd5b5061058c610986366004614879565b6123dd565b34801561099757600080fd5b506105f26109a6366004614cbb565b6123e8565b3480156109b757600080fd5b506109c0612409565b6040516104369796959493929190614cd8565b3480156109df57600080fd5b5061058c7f0000000000000000000000000000000000000000000000000000000000aa36a781565b348015610a1357600080fd5b50610a27610a223660046149c7565b6124b5565b60408051825181526020928301519281019290925201610436565b348015610a4e57600080fd5b506105f2610a5d366004614879565b6125c0565b348015610a6e57600080fd5b5061058c610a7d3660046147f6565b6126d2565b348015610a8e57600080fd5b5061042a610a9d36600461496f565b6126e0565b348015610aae57600080fd5b50610454612718565b348015610ac357600080fd5b5061058c612757565b348015610ad857600080fd5b5061058c60365481565b348015610aee57600080fd5b5060385461042a90610100900460ff1681565b348015610b0d57600080fd5b5061058c603a5481565b348015610b2357600080fd5b506105f2610b32366004614cbb565b61276f565b348015610b4357600080fd5b5061058c600081565b348015610b5857600080fd5b5061042a610b673660046147cc565b6127d6565b348015610b7857600080fd5b50610454604051806040016040528060058152602001640352e302e360dc1b81525081565b348015610ba957600080fd5b50603154610913906001600160a01b031681565b348015610bc957600080fd5b5061052a610bd8366004614bce565b6127e4565b348015610be957600080fd5b506105f2610bf836600461499b565b6128ff565b348015610c0957600080fd5b5061058c60008051602061554783398151915281565b348015610c2b57600080fd5b5061058c603b5481565b348015610c4157600080fd5b506105f2610c50366004614d82565b61297d565b348015610c6157600080fd5b506105f2610c7036600461496f565b612ad6565b348015610c8157600080fd5b5061058c610c90366004614dec565b612af2565b348015610ca157600080fd5b506105f2610cb0366004614e16565b612b3c565b348015610cc157600080fd5b5061058c61271081565b348015610cd757600080fd5b5060005461049b90610100900460ff1681565b348015610cf657600080fd5b50610d0a610d053660046149c7565b612c35565b6040516104369190600061010082019050825182526020830151602083015260408301516040830152606083015160608301526080830151608083015260a083015160a083015260c083015160c083015260e0830151151560e083015292915050565b348015610d7957600080fd5b506105f2610d88366004614e75565b612ced565b348015610d9957600080fd5b50603e54610913906001600160a01b031681565b348015610db957600080fd5b5061058c60015481565b60006001600160e01b03198216637965db0b60e01b1480610df457506301ffc9a760e01b6001600160e01b03198316145b92915050565b606060006000805160206154a78339815191525b9050806003018054610e1f90614ebc565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4b90614ebc565b8015610e985780601f10610e6d57610100808354040283529160200191610e98565b820191906000526020600020905b815481529060010190602001808311610e7b57829003601f168201915b505050505091505090565b600033610eb1818585612e5e565b5060019392505050565b60338181548110610ecb57600080fd5b6000918252602090912060089091020180546001820154600283015460038401546004850154600586015460068701546007909701549597509395929491939092909160ff1688565b610f4d6040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b610f55612e6b565b600080516020615547833981519152610f6d81612eb5565b603e54600160a01b900460ff1615610fcc5760405162461bcd60e51b815260206004820152601960248201527f544f4b493a207472616e736665722069732073746f707065640000000000000060448201526064015b60405180910390fd5b6001600160a01b038616610ff25760405162461bcd60e51b8152600401610fc390614ef6565b6000610ffe8989612ec2565b600781015490915060ff16151560011461102a5760405162461bcd60e51b8152600401610fc390614f2d565b600061103587612fc5565b9050600061104287612fc5565b6040805160c081018252308152603d5460208201526000805460ff16928201929092529192509060608101611075612757565b81526035546020820152603a54604091820152603154905163143273dd60e21b81529192506001600160a01b0316906350c9cf74906110be90849088908f908990600401614f70565b60c060405180830381865afa1580156110db573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ff9190615037565b805190965061115c5760405162461bcd60e51b8152602060048201526024808201527f544f4b493a20696e73756666696369656e7420616d6f756e7420746f207061796044820152632066656560e01b6064820152608401610fc3565b81866060015187608001518561117291906150a7565b61117c91906150ba565b10156111ca5760405162461bcd60e51b815260206004820152601760248201527f544f4b493a20736c69707061676520746f6f20686967680000000000000000006044820152606401610fc3565b6080860151156111f0578560800151603a60008282546111ea91906150ba565b90915550505b6080860151604087015161120490856150ba565b61120e91906150a7565b60a0870152600384015483111561127e5760405162461bcd60e51b815260206004820152602e60248201527f544f4b493a2070656572506f6f6c2062616c616e636520697320696e7375666660448201526d696369656e742062616c616e636560901b6064820152608401610fc3565b8560a00151846003015461129291906150ba565b600385015586156112c2578560800151836037546112b091906150a7565b6112ba91906150a7565b6037556112e2565b6080860151156112e25785608001516037546112de91906150a7565b6037555b60385460ff1615806113125750612710603b5460355461130291906150cd565b61130c91906150e4565b60375410155b1561132b5760385461132b90610100900460ff16612fd5565b7f9c7519dcf6aef530f7209189ddd559038a69f8bb53f818b7fa76c67379aa6b2c8c8c8c89600001518a608001518b606001518c602001518d604001516040516113b698979695949392919097885260208801969096526001600160a01b039490941660408701526060860192909252608085015260a084015260c083015260e08201526101000190565b60405180910390a150505050506113cb613425565b9695505050505050565b60006113e081612eb5565b6001600160a01b0382166114065760405162461bcd60e51b8152600401610fc390615106565b50603280546001600160a01b0319166001600160a01b0392909216919091179055565b60003361143785828561344b565b611442858585613498565b60019150505b9392505050565b6000908152600080516020615527833981519152602052604090206001015490565b600061147b612e6b565b60008051602061554783398151915261149381612eb5565b6001600160a01b0386166114b95760405162461bcd60e51b8152600401610fc390614ef6565b6114c38888612ec2565b6007015460ff1615156001146114eb5760405162461bcd60e51b8152600401610fc390614f2d565b6114f586866134f7565b60385490925060ff1615806115275750612710603c5460355461151891906150cd565b61152291906150e4565b603754115b15611536576115366000612fd5565b7fc184e55db14c3f814948da0d3295ebf968287d110e7ebb55ea0f30a773fc1d3c88888888868989604051611571979695949392919061514c565b60405180910390a1506113cb613425565b61158b8261144f565b61159481612eb5565b61159e8383613664565b50505050565b60006115ae613709565b905090565b6001600160a01b03811633146115dc5760405163334bd91960e11b815260040160405180910390fd5b6115e68282613713565b505050565b60006115f681612eb5565b60335460005b8181101561172b57600060338281548110611619576116196151a6565b600091825260208083206040805161010081018252600890940290910180548085526001820154938501939093526002810154918401919091526003810154606084015260048101546080840152600581015460a0840152600681015460c08401526007015460ff16151560e08301529092508814801561169d5750868260200151145b905080156117215760405162461bcd60e51b8152602060048201526044602482018190527f544f4b493a2063616e6e6f7420726567697374657250656572506f6f6c206f66908201527f206578697374696e672070656572436861696e496420616e642070656572506f6064820152631bdb125960e21b608482015260a401610fc3565b50506001016115fc565b508260365461173a91906150a7565b60365560338054600087815260346020908152604080832089845282528083208490558051610100810182528a81528083018a81528183018a815260608084018781526080850188815260a0860189815260c087018a815260e088018b815260018d018e559c909a5295517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a826008909b029a8b015593517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a838a015591517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8489015590517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8588015590517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8687015590517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8786015592517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a8885015593517f82a75bdeeae8604d839476ae9efd8b0e15aa447e21bfd7f41283bb54e22c9a89909301805460ff19169315159390931790925582518881529182018790529181018590527f5b1ee307451dd65aa45d1657a66752bab8925be9aad7c827865655c8c2fdac2491015b60405180910390a15050505050565b6000611937612e6b565b60008051602061554783398151915261194f81612eb5565b6001600160a01b0385166119755760405162461bcd60e51b8152600401610fc390614ef6565b60375460006119838261378f565b905080861115611991578095505b61199b87876134f7565b93506119a784836150ba565b60375560006119b585613825565b603e549091506119cf906001600160a01b03168783613835565b604080516001600160a01b038a81168252602082018a90528183018890528816606082015290517f285a08d85aaeb56c8b9d22b6877dffaed0cb5d07c1c14494aff61d9524746a129181900360800190a150505050611448613425565b6000611a36612e6b565b600080516020615547833981519152611a4e81612eb5565b611a5a84846001613849565b915050610df4613425565b6000611a6f612e6b565b600080516020615547833981519152611a8781612eb5565b826040015160356000828254611a9d91906150a7565b90915550506060830151603a8054600090611ab99084906150a7565b9091555050602083015160398054600090611ad59084906150a7565b9091555060009050611ae78787612ec2565b90508360a001518160050154611afd91906150ba565b600582015560808401518451611b1b91611b16916150a7565b613825565b92507f0000000000000000000000000000000000000000000000000000000000aa36a78714611ba3576032546040516347f4d98d60e01b8152600481018590526001600160a01b03909116906347f4d98d90602401600060405180830381600087803b158015611b8a57600080fd5b505af1158015611b9e573d6000803e3d6000fd5b505050505b603e54611bba906001600160a01b03168685613835565b7f82f23eb0ffa46ea98b1a7134447f74561cec3e194d0f1d06ffc35ce71ae803368585608001518660000151611bf091906150a7565b6020808801516060808a0151604080516001600160a01b039097168752938601949094529184015282015260800160405180910390a15050611c30613425565b949350505050565b6000611c4381612eb5565b6000611c4f8484612ec2565b600781015490915060ff1615611ca75760405162461bcd60e51b815260206004820181905260248201527f544f4b493a2050656572506f6f6c20697320616c7265616479206163746976656044820152606401610fc3565b600701805460ff19166001179055505050565b611cc26139ac565b611ccb82613a53565b611cd58282613a5e565b5050565b6000610df4611ce783612fc5565b61378f565b6000611cf6613b1b565b5060008051602061550783398151915290565b600080611d14612e6b565b600080516020615547833981519152611d2c81612eb5565b6000611d388787612ec2565b90508060030154851115611d69576003810154611d5590866150ba565b600382018054600090915594509250611d86565b848160030154611d7991906150ba565b6003820155849350600092505b6040805188815260208101889052908101859052606081018490527f9d8bfb8a1a799d9f6f5e207b8c00c13b549b7f20c8421d1f94bc9bfe23a901989060800160405180910390a15050611dd8613425565b935093915050565b611de8612e6b565b600080516020615547833981519152611e0081612eb5565b6001600160a01b038316611e265760405162461bcd60e51b8152600401610fc390614ef6565b6000611e3284846134f7565b60385490915060ff161580611e645750612710603c54603554611e5591906150cd565b611e5f91906150e4565b603754115b15611e7e57603854611e7e9062010000900460ff16612fd5565b6000611e8982613825565b60408051898152602081018990526001600160a01b03881681830152606081018790526080810183905290519192507f5f8ecf683e1923224ca1e9b396be6a7a13e480a011e7645d641e7a7d3a2d0f03919081900360a00190a150505061159e613425565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015611f345750825b905060008267ffffffffffffffff166001148015611f515750303b155b905081158015611f5f575080155b15611f7d5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611fa757845460ff60401b1916600160401b1785555b612030611fb487806151bc565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611ff69250505060208901896151bc565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250613b6492505050565b61207761203d87806151bc565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250613b7692505050565b61207f613ba1565b612087613ba1565b6120af61209a60a088016080890161520a565b6120aa60c0890160a08a0161520a565b613ba9565b6120b7613bbb565b6120d260006120cd610100890160e08a01614879565b613664565b506120f76000805160206155478339815191526120cd61012089016101008a01614879565b506040860135603d5560006121126080880160608901614879565b6001600160a01b0316036121685760405162461bcd60e51b815260206004820152601960248201527f544f4b493a20746f6b656e2063616e6e6f7420626520307830000000000000006044820152606401610fc3565b600061217a60e0880160c08901614879565b6001600160a01b0316036121da5760405162461bcd60e51b815260206004820152602160248201527f544f4b493a2066656543616c63756c61746f722063616e6e6f742062652030786044820152600360fc1b6064820152608401610fc3565b60006121ee61014088016101208901614879565b6001600160a01b0316036122145760405162461bcd60e51b8152600401610fc390615106565b6122246080870160608801614879565b603e80546001600160a01b0319166001600160a01b039290921691909117905561225460e0870160c08801614879565b603180546001600160a01b0319166001600160a01b039290921691909117905561228661014087016101208801614879565b603280546001600160a01b0319166001600160a01b039290921691909117905583156122ed57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b505050505050565b6000806000805160206154a78339815191525b6001600160a01b0390931660009081526020939093525050604090205490565b612330612e6b565b60008051602061554783398151915261234881612eb5565b60006123548585612ec2565b83516003820154919250612367916150a7565b6003820155602083015160048201541461238657602083015160048201555b82516020808501516040805189815292830188905282810193909352606082015290517fdbbc76676cb73b8d1c33378e0cdc88f364e4203cfa5b1e4c7d15b66b5cb97f0c9181900360800190a150506115e6613425565b6000610df482613bcb565b60008051602061554783398151915261240081612eb5565b611cd582612fd5565b600060608082808083816000805160206154e7833981519152805490915015801561243657506001810154155b61247a5760405162461bcd60e51b81526020600482015260156024820152741152540dcc4c8e88155b9a5b9a5d1a585b1a5e9959605a1b6044820152606401610fc3565b612482613bf4565b61248a613c33565b60408051600080825260208201909252600f60f81b9c939b5091995046985030975095509350915050565b60408051808201909152600080825260208201526124d1612e6b565b6000805160206155478339815191526124e981612eb5565b60006124f58585612ec2565b600781015490915060ff1615156001146125215760405162461bcd60e51b8152600401610fc390614f2d565b603654816002015460355461253691906150cd565b61254091906150e4565b60208401526006810154808452600582015461255c91906150a7565b600582015560006006820155825160208401516040517f0aeafd14584f8a6bfe6b3846da893395e218188cb3ba5586a705848f7fbcb1ad926125ae928883526020830191909152604082015260600190565b60405180910390a15050610df4613425565b60006125cb81612eb5565b6001600160a01b03821661261a5760405162461bcd60e51b81526020600482015260166024820152750544f4b493a20746f2063616e6e6f74206265203078360541b6044820152606401610fc3565b6000603954116126645760405162461bcd60e51b81526020600482015260156024820152740544f4b493a2066656542616c616e6365206973203605c1b6044820152606401610fc3565b6000612671603954613825565b6000603955604080516001600160a01b0386168152602081018390529192507f4d8561778a7e176276dbab0b22e231f4656392a2439d6c87311ce19c205114df910160405180910390a1603e546115e6906001600160a01b03168483613835565b6000610df4611b1683613c4b565b6000918252600080516020615527833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0480546060916000805160206154a783398151915291610e1f90614ebc565b6000600154612765306122f5565b6115ae91906150e4565b600061277a81612eb5565b603e805460ff60a01b1916600160a01b8415158102919091179182905560405160ff9190920416151581527f660b23189ca2beb2b4fa82b1cce83958fe200d635d3603ed6faa26f2d1b3dd7e9060200160405180910390a15050565b600033610eb1818585613498565b61281d6040518060c001604052806000815260200160008152602001600081526020016000815260200160008152602001600081525090565b60006128298686612ec2565b9050600061283684612fc5565b6040805160c081018252308152603d5460208201526000805460ff16928201929092529192509060608101612869612757565b81526035546020820152603a54604091820152603154905163143273dd60e21b81529192506001600160a01b0316906350c9cf74906128b290849087908b908890600401614f70565b60c060405180830381865afa1580156128cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128f39190615037565b98975050505050505050565b600061290a81612eb5565b60006129168585612ec2565b905082816002015460365461292b91906150ba565b61293591906150a7565b6036556002810183905560408051868152602081018690529081018490527f5b1ee307451dd65aa45d1657a66752bab8925be9aad7c827865655c8c2fdac249060600161191e565b834211156129a15760405163313c898160e11b815260048101859052602401610fc3565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9888888612a0d8c6001600160a01b031660009081527f5ab42ced628888259c08ac98db1eb0cf702fc1501344311d8b100cd1bfe4bb006020526040902080546001810190915590565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e0016040516020818303038152906040528051906020012090506000612a6882613ced565b90506000612a7882878787613d1a565b9050896001600160a01b0316816001600160a01b031614612abf576040516325c0072360e11b81526001600160a01b0380831660048301528b166024820152604401610fc3565b612aca8a8a8a612e5e565b50505050505050505050565b612adf8261144f565b612ae881612eb5565b61159e8383613713565b6001600160a01b0391821660009081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace016020908152604080832093909416825291909152205490565b6000612b4781612eb5565b6127108511158015612b5b57506127108411155b612ba75760405162461bcd60e51b815260206004820152601760248201527f544f4b493a2077726f6e672044656c746120706172616d0000000000000000006044820152606401610fc3565b60388054603b879055603c86905561ffff191687151561ff00198116919091176101008615159081029190911762ff00001916620100008615159081029190911790935560408051928352602083018990528201879052606082015260808101919091527f7cc11124872dc29ed41dd447ee7ab07d9eee5d8ebb55f65dd92bce19bb20224a9060a0016122e4565b612c7f604051806101000160405280600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581525090565b612c898383612ec2565b604080516101008101825282548152600183015460208201526002830154918101919091526003820154606082015260048201546080820152600582015460a0820152600682015460c082015260079091015460ff16151560e08201529392505050565b612cf5612e6b565b600080516020615547833981519152612d0d81612eb5565b8115612d2957612d2784612d2084613825565b6000613849565b505b6000612d358787612ec2565b9050838160050154612d4791906150ba565b60058201556000612d5785613825565b90507f0000000000000000000000000000000000000000000000000000000000aa36a78814612ddf576032546040516347f4d98d60e01b8152600481018390526001600160a01b03909116906347f4d98d90602401600060405180830381600087803b158015612dc657600080fd5b505af1158015612dda573d6000803e3d6000fd5b505050505b603e54612df6906001600160a01b03168783613835565b60408051898152602081018990526001600160a01b03881681830152606081018790526080810186905290517fcf0b8bea497be617351b2c1a4243bd9e92167fdf778a43ebb66fb37160594a0f9181900360a00190a1505050612e57613425565b5050505050565b6115e68383836001613d48565b7f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f00805460011901612eaf57604051633ee5aeb560e01b815260040160405180910390fd5b60029055565b612ebf8133613e2f565b50565b603354600090612f145760405162461bcd60e51b815260206004820152601c60248201527f544f4b493a206e6f2070656572506f6f6c496e666f73206578697374000000006044820152606401610fc3565b6000838152603460209081526040808320858452909152902054603380549091908110612f4357612f436151a6565b90600052602060002090600802019050828160000154148015612f695750818160010154145b610df45760405162461bcd60e51b815260206004820152602760248201527f544f4b493a206c6f63616c2070656572506f6f6c496e666f20646f6573206e6f6044820152661d08195e1a5cdd60ca1b6064820152608401610fc3565b600060015482610df491906150e4565b6000603754118015612fe957506000603654115b15612ebf5760335460008167ffffffffffffffff81111561300c5761300c614a25565b604051908082528060200260200182016040528015613035578160200160208202803683370190505b5090506000805b8381101561310a57600060338281548110613059576130596151a6565b906000526020600020906008020190506000603654826002015460355461308091906150cd565b61308a91906150e4565b90506000826006015483600501546130a291906150a7565b9050808211156130fc576130b681836150ba565b8685815181106130c8576130c86151a6565b6020026020010181815250508584815181106130e6576130e66151a6565b6020026020010151856130f991906150a7565b94505b50505080600101905061303c565b506000816000036131b15784801561312457506000603754115b156131ac5760005b848110156131aa57600060338281548110613149576131496151a6565b906000526020600020906008020190506000603654826002015460375461317091906150cd565b61317a91906150e4565b905061318681856150a7565b935080826006015461319891906150a7565b6006909201919091555060010161312c565b505b61340d565b8160375410156132bc5760005b848110156131aa5760008482815181106131da576131da6151a6565b602002602001015111156132b4576000603382815481106131fd576131fd6151a6565b9060005260206000209060080201905083603754868481518110613223576132236151a6565b602002602001015161323591906150cd565b61323f91906150e4565b858381518110613251576132516151a6565b60200260200101818152505084828151811061326f5761326f6151a6565b60200260200101518361328291906150a7565b9250848281518110613296576132966151a6565b602002602001015181600601546132ad91906150a7565b6006909101555b6001016131be565b841561335a576000826037546132d291906150ba565b905060005b85811015613353576000603382815481106132f4576132f46151a6565b90600052602060002090600802019050600060365482600201548561331991906150cd565b61332391906150e4565b905061332f81866150a7565b945080826006015461334191906150a7565b600690920191909155506001016132d7565b505061340d565b60005b8481101561340b576000848281518110613379576133796151a6565b602002602001015111156134035760006033828154811061339c5761339c6151a6565b906000526020600020906008020190508482815181106133be576133be6151a6565b6020026020010151836133d191906150a7565b92508482815181106133e5576133e56151a6565b602002602001015181600601546133fc91906150a7565b6006909101555b60010161335d565b505b8060375461341b91906150ba565b6037555050505050565b60017f9b779b17422d0df92223018b32b4d1fa46e071723d6817e2486d003becc55f0055565b60006134578484612af2565b9050600019811461159e578181101561348957828183604051637dc7a0d960e11b8152600401610fc393929190615225565b61159e84848484036000613d48565b6001600160a01b0383166134c257604051634b637e8f60e11b815260006004820152602401610fc3565b6001600160a01b0382166134ec5760405163ec442f0560e01b815260006004820152602401610fc3565b6115e6838383613e68565b6000806135106000805160206154c78339815191525490565b1161356d5760405162461bcd60e51b815260206004820152602760248201527f544f4b493a2063616e6e6f74206275726e207768656e20746f74616c5375707060448201526606c79203d3d20360cc1b6064820152608401610fc3565b6000613578846122f5565b9050828110156135d55760405162461bcd60e51b815260206004820152602260248201527f544f4b493a206e6f7420656e6f756768204c5020746f6b656e7320746f206275604482015261393760f11b6064820152608401610fc3565b60006135ed6000805160206154c78339815191525490565b6035546135fa90866150cd565b61360491906150e4565b90508060355461361491906150ba565b6035556136218585613f93565b7f49995e5dd6158cf69ad3e9777c46755a1a826a446c6416992167462dad033b2a85858360405161365493929190615225565b60405180910390a1949350505050565b600060008051602061552783398151915261367f84846126e0565b6136ff576000848152602082815260408083206001600160a01b03871684529091529020805460ff191660011790556136b53390565b6001600160a01b0316836001600160a01b0316857f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a46001915050610df4565b6000915050610df4565b60006115ae613fc9565b600060008051602061552783398151915261372e84846126e0565b156136ff576000848152602082815260408083206001600160a01b0387168085529252808320805460ff1916905551339287917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a46001915050610df4565b600080603554116137fe5760405162461bcd60e51b815260206004820152603360248201527f544f4b493a2063616e6e6f7420636f6e7665727420417373657420746f204c506044820152720207768656e20746f74616c4c6971203d3d203606c1b6064820152608401610fc3565b6035546000805160206154c78339815191525461381b90846150cd565b610df491906150e4565b600060015482610df491906150cd565b6115e66001600160a01b038416838361403d565b6000806036541161389c5760405162461bcd60e51b815260206004820152601760248201527f544f4b493a204e6f2070656572506f6f6c2065786973740000000000000000006044820152606401610fc3565b6138a583612fc5565b905081156138bf57806037546138bb91906150a7565b6037555b806138d66000805160206154c78339815191525490565b15613905576035546000805160206154c7833981519152546138f890846150cd565b61390291906150e4565b90505b8160355461391391906150a7565b603555613920858261408f565b7f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f85828460405161395393929190615225565b60405180910390a160385460ff16158061398a5750612710603c5460355461397b91906150cd565b61398591906150e4565b603754115b156139a4576038546139a49062010000900460ff16612fd5565b509392505050565b306001600160a01b037f0000000000000000000000007897a06bf45c10241d71dc5818bbddcf9fc28896161480613a3357507f0000000000000000000000007897a06bf45c10241d71dc5818bbddcf9fc288966001600160a01b0316613a27600080516020615507833981519152546001600160a01b031690565b6001600160a01b031614155b15613a515760405163703e46dd60e11b815260040160405180910390fd5b565b6000611cd581612eb5565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613ab8575060408051601f3d908101601f19168201909252613ab591810190615246565b60015b613ae057604051634c9c8ce360e01b81526001600160a01b0383166004820152602401610fc3565b6000805160206155078339815191528114613b1157604051632a87526960e21b815260048101829052602401610fc3565b6115e683836140c5565b306001600160a01b037f0000000000000000000000007897a06bf45c10241d71dc5818bbddcf9fc288961614613a515760405163703e46dd60e11b815260040160405180910390fd5b613b6c61411b565b611cd58282614164565b613b7e61411b565b612ebf81604051806040016040528060018152602001603160f81b8152506141b5565b613a5161411b565b613bb161411b565b611cd58282614216565b613bc361411b565b613a51614262565b6000807f5ab42ced628888259c08ac98db1eb0cf702fc1501344311d8b100cd1bfe4bb00612308565b7fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d10280546060916000805160206154e783398151915291610e1f90614ebc565b606060006000805160206154e7833981519152610e0e565b600080613c646000805160206154c78339815191525490565b11613cd05760405162461bcd60e51b815260206004820152603660248201527f544f4b493a2063616e6e6f7420636f6e76657274204c5020746f2041737365746044820152750207768656e20746f74616c537570706c79203d3d20360541b6064820152608401610fc3565b6000805160206154c78339815191525460355461381b90846150cd565b6000610df4613cfa613709565b8360405161190160f01b8152600281019290925260228201526042902090565b600080600080613d2c8888888861426a565b925092509250613d3c8282614339565b50909695505050505050565b6000805160206154a78339815191526001600160a01b038516613d815760405163e602df0560e01b815260006004820152602401610fc3565b6001600160a01b038416613dab57604051634a1406b160e11b815260006004820152602401610fc3565b6001600160a01b03808616600090815260018301602090815260408083209388168352929052208390558115612e5757836001600160a01b0316856001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92585604051613e2091815260200190565b60405180910390a35050505050565b613e3982826126e0565b611cd55760405163e2517d3f60e01b81526001600160a01b038216600482015260248101839052604401610fc3565b6000805160206154a78339815191526001600160a01b038416613ea45781816002016000828254613e9991906150a7565b90915550613f039050565b6001600160a01b03841660009081526020829052604090205482811015613ee45784818460405163391434e360e21b8152600401610fc393929190615225565b6001600160a01b03851660009081526020839052604090209083900390555b6001600160a01b038316613f21576002810180548390039055613f40565b6001600160a01b03831660009081526020829052604090208054830190555b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051613f8591815260200190565b60405180910390a350505050565b6001600160a01b038216613fbd57604051634b637e8f60e11b815260006004820152602401610fc3565b611cd582600083613e68565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f613ff46143f2565b613ffc61445c565b60408051602081019490945283019190915260608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b1790526115e69084906144a0565b6001600160a01b0382166140b95760405163ec442f0560e01b815260006004820152602401610fc3565b611cd560008383613e68565b6140ce82614503565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115614113576115e68282614568565b611cd56145de565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16613a5157604051631afcd79f60e31b815260040160405180910390fd5b61416c61411b565b6000805160206154a78339815191527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace036141a684826152a7565b506004810161159e83826152a7565b6141bd61411b565b6000805160206154e78339815191527fa16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d1026141f784826152a7565b506003810161420683826152a7565b5060008082556001909101555050565b61421e61411b565b6000805460ff83811661010090810261ffff1990931682871617929092179283905561425092808216929004166150ba565b61425b90600a61544b565b6001555050565b61342561411b565b600080807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08411156142a5575060009150600390508261432f565b604080516000808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156142f9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166143255750600092506001915082905061432f565b9250600091508190505b9450945094915050565b600082600381111561434d5761434d615457565b03614356575050565b600182600381111561436a5761436a615457565b036143885760405163f645eedf60e01b815260040160405180910390fd5b600282600381111561439c5761439c615457565b036143bd5760405163fce698f760e01b815260048101829052602401610fc3565b60038260038111156143d1576143d1615457565b03611cd5576040516335e2f38360e21b815260048101829052602401610fc3565b60006000805160206154e78339815191528161440c613bf4565b80519091501561442457805160209091012092915050565b81548015614433579392505050565b7fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470935050505090565b60006000805160206154e783398151915281614476613c33565b80519091501561448e57805160209091012092915050565b60018201548015614433579392505050565b60006144b56001600160a01b038416836145fd565b905080516000141580156144da5750808060200190518101906144d8919061546d565b155b156115e657604051635274afe760e01b81526001600160a01b0384166004820152602401610fc3565b806001600160a01b03163b60000361453957604051634c9c8ce360e01b81526001600160a01b0382166004820152602401610fc3565b60008051602061550783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b031684604051614585919061548a565b600060405180830381855af49150503d80600081146145c0576040519150601f19603f3d011682016040523d82523d6000602084013e6145c5565b606091505b50915091506145d585838361460b565b95945050505050565b3415613a515760405163b398979f60e01b815260040160405180910390fd5b606061144883836000614667565b6060826146205761461b826146fa565b611448565b815115801561463757506001600160a01b0384163b155b1561466057604051639996b31560e01b81526001600160a01b0385166004820152602401610fc3565b5080611448565b60608147101561468c5760405163cd78605960e01b8152306004820152602401610fc3565b600080856001600160a01b031684866040516146a8919061548a565b60006040518083038185875af1925050503d80600081146146e5576040519150601f19603f3d011682016040523d82523d6000602084013e6146ea565b606091505b50915091506113cb86838361460b565b80511561470a5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b60006020828403121561473557600080fd5b81356001600160e01b03198116811461144857600080fd5b60005b83811015614768578181015183820152602001614750565b50506000910152565b6000815180845261478981602086016020860161474d565b601f01601f19169290920160200192915050565b6020815260006114486020830184614771565b80356001600160a01b03811681146147c757600080fd5b919050565b600080604083850312156147df57600080fd5b6147e8836147b0565b946020939093013593505050565b60006020828403121561480857600080fd5b5035919050565b8015158114612ebf57600080fd5b60008060008060008060c0878903121561483657600080fd5b863595506020870135945061484d604088016147b0565b9350606087013592506080870135915060a087013561486b8161480f565b809150509295509295509295565b60006020828403121561488b57600080fd5b611448826147b0565b6000806000606084860312156148a957600080fd5b6148b2846147b0565b92506148c0602085016147b0565b9150604084013590509250925092565b60008060008060008060a087890312156148e957600080fd5b8635955060208701359450614900604088016147b0565b935060608701359250608087013567ffffffffffffffff8082111561492457600080fd5b818901915089601f83011261493857600080fd5b81358181111561494757600080fd5b8a602082850101111561495957600080fd5b6020830194508093505050509295509295509295565b6000806040838503121561498257600080fd5b82359150614992602084016147b0565b90509250929050565b6000806000606084860312156149b057600080fd5b505081359360208301359350604090920135919050565b600080604083850312156149da57600080fd5b50508035926020909101359150565b6000806000606084860312156149fe57600080fd5b614a07846147b0565b925060208401359150614a1c604085016147b0565b90509250925092565b634e487b7160e01b600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715614a5e57614a5e614a25565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715614a8d57614a8d614a25565b604052919050565b600080600080848603610120811215614aad57600080fd5b8535945060208601359350614ac4604087016147b0565b925060c0605f1982011215614ad857600080fd5b50614ae1614a3b565b606086013581526080860135602082015260a0860135604082015260c0860135606082015260e0860135608082015261010086013560a08201528091505092959194509250565b60008060408385031215614b3b57600080fd5b614b44836147b0565b915060208084013567ffffffffffffffff80821115614b6257600080fd5b818601915086601f830112614b7657600080fd5b813581811115614b8857614b88614a25565b614b9a601f8201601f19168501614a64565b91508082528784828501011115614bb057600080fd5b80848401858401376000848284010152508093505050509250929050565b60008060008060808587031215614be457600080fd5b8435935060208501359250614bfb604086016147b0565b9396929550929360600135925050565b600060208284031215614c1d57600080fd5b813567ffffffffffffffff811115614c3457600080fd5b8201610140818503121561144857600080fd5b60008060008385036080811215614c5d57600080fd5b84359350602085013592506040603f1982011215614c7a57600080fd5b506040516040810181811067ffffffffffffffff82111715614c9e57614c9e614a25565b604090815285013581526060909401356020850152509093909250565b600060208284031215614ccd57600080fd5b81356114488161480f565b60ff60f81b881681526000602060e06020840152614cf960e084018a614771565b8381036040850152614d0b818a614771565b606085018990526001600160a01b038816608086015260a0850187905284810360c08601528551808252602080880193509091019060005b81811015614d5f57835183529284019291840191600101614d43565b50909c9b505050505050505050505050565b803560ff811681146147c757600080fd5b600080600080600080600060e0888a031215614d9d57600080fd5b614da6886147b0565b9650614db4602089016147b0565b95506040880135945060608801359350614dd060808901614d71565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215614dff57600080fd5b614e08836147b0565b9150614992602084016147b0565b600080600080600060a08688031215614e2e57600080fd5b8535614e398161480f565b945060208601359350604086013592506060860135614e578161480f565b91506080860135614e678161480f565b809150509295509295909350565b600080600080600060a08688031215614e8d57600080fd5b8535945060208601359350614ea4604087016147b0565b94979396509394606081013594506080013592915050565b600181811c90821680614ed057607f821691505b602082108103614ef057634e487b7160e01b600052602260045260246000fd5b50919050565b60208082526018908201527f544f4b493a2066726f6d2063616e6e6f74206265203078300000000000000000604082015260600190565b60208082526023908201527f544f4b493a20636f756e7465722070656572506f6f6c206973206e6f7420726560408201526261647960e81b606082015260800190565b60006102008201905060018060a01b0386511682526020860151602083015260ff6040870151166040830152606086015160608301526080860151608083015260a086015160a0830152845460c0830152600185015460e08301526002850154610100830152600385015461012083015260048501546101408301526005850154610160830152600685015461018083015260ff6007860154166150196101a084018215159052565b506001600160a01b03939093166101c08201526101e0015292915050565b600060c0828403121561504957600080fd5b615051614a3b565b825181526020830151602082015260408301516040820152606083015160608201526080830151608082015260a083015160a08201528091505092915050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610df457610df4615091565b81810381811115610df457610df4615091565b8082028115828204841417610df457610df4615091565b60008261510157634e487b7160e01b600052601260045260246000fd5b500490565b60208082526026908201527f544f4b493a20647374466c6f77526174654c696d697465722063616e6e6f742060408201526506265203078360d41b606082015260800190565b87815286602082015260018060a01b038616604082015284606082015283608082015260c060a08201528160c0820152818360e0830137600081830160e090810191909152601f909201601f191601019695505050505050565b634e487b7160e01b600052603260045260246000fd5b6000808335601e198436030181126151d357600080fd5b83018035915067ffffffffffffffff8211156151ee57600080fd5b60200191503681900382131561520357600080fd5b9250929050565b60006020828403121561521c57600080fd5b61144882614d71565b6001600160a01b039390931683526020830191909152604082015260600190565b60006020828403121561525857600080fd5b5051919050565b601f8211156115e6576000816000526020600020601f850160051c810160208610156152885750805b601f850160051c820191505b818110156122ed57828155600101615294565b815167ffffffffffffffff8111156152c1576152c1614a25565b6152d5816152cf8454614ebc565b8461525f565b602080601f83116001811461530a57600084156152f25750858301515b600019600386901b1c1916600185901b1785556122ed565b600085815260208120601f198616915b828110156153395788860151825594840194600190910190840161531a565b50858210156153575787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600181815b808511156153a257816000190482111561538857615388615091565b8085161561539557918102915b93841c939080029061536c565b509250929050565b6000826153b957506001610df4565b816153c657506000610df4565b81600181146153dc57600281146153e657615402565b6001915050610df4565b60ff8411156153f7576153f7615091565b50506001821b610df4565b5060208310610133831016604e8410600b8410161715615425575081810a610df4565b61542f8383615367565b806000190482111561544357615443615091565b029392505050565b600061144883836153aa565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561547f57600080fd5b81516114488161480f565b6000825161549c81846020870161474d565b919091019291505056fe52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0052c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02a16a46d94261c7517cc8ff89f61c0ce93598e3c849801011dee649a6a557d100360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc02dd7bc7dec4dceedda775e58dd541e08a116c6c53815c0bd028192f7b62680066d05ae646b1ee24e48a8708b8c0f6eade385a89cd689a1ed9121cb3ec9e2102a26469706673582212200944fe093538413cbda0b95e8a4cda8e45a94628eae858f9b0efd6d8a992cfd164736f6c63430008180033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000000aa36a7
-----Decoded View---------------
Arg [0] : chainId (uint256): 11155111
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000aa36a7
Loading...
Loading
Loading...
Loading
Loading...
Loading
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.

