0%
  • Bridge
  • Layer 2

Explore the source code, ABI, and bytecode for the TokenBridge smart contract.

0x50002cdfe7ccb0c41f519c6eb0653158d11cd907
Copied
TokenBridge ABI
Copied
[{"inputs":[{"internalType":"address","name":"_layerZeroEndpoint","type":"address"},{"internalType":"uint16","name":"_aptosChainId","type":"uint16"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"},{"indexed":false,"internalType":"uint256","name":"unlockTime","type":"uint256"}],"name":"EnableEmergencyWithdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"indexed":false,"internalType":"bytes","name":"_srcAddress","type":"bytes"},{"indexed":false,"internalType":"uint64","name":"_nonce","type":"uint64"},{"indexed":false,"internalType":"bytes","name":"_payload","type":"bytes"},{"indexed":false,"internalType":"bytes","name":"_reason","type":"bytes"}],"name":"MessageFailed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"Receive","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"token","type":"address"}],"name":"RegisterToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"indexed":false,"internalType":"bytes","name":"_srcAddress","type":"bytes"},{"indexed":false,"internalType":"uint64","name":"_nonce","type":"uint64"},{"indexed":false,"internalType":"bytes32","name":"_payloadHash","type":"bytes32"}],"name":"RetryMessageSuccess","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"bytes32","name":"to","type":"bytes32"},{"indexed":false,"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"Send","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"aptosChainId","type":"uint16"}],"name":"SetAptosChainId","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"bridgeFeeBP","type":"uint256"}],"name":"SetBridgeBP","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"paused","type":"bool"}],"name":"SetGlobalPause","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"localChainId","type":"uint16"}],"name":"SetLocalChainId","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"_dstChainId","type":"uint16"},{"indexed":false,"internalType":"uint16","name":"_type","type":"uint16"},{"indexed":false,"internalType":"uint256","name":"_minDstGas","type":"uint256"}],"name":"SetMinDstGas","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"precrime","type":"address"}],"name":"SetPrecrime","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"bool","name":"paused","type":"bool"}],"name":"SetTokenPause","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"_remoteChainId","type":"uint16"},{"indexed":false,"internalType":"bytes","name":"_path","type":"bytes"}],"name":"SetTrustedRemote","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint16","name":"_remoteChainId","type":"uint16"},{"indexed":false,"internalType":"bytes","name":"_remoteAddress","type":"bytes"}],"name":"SetTrustedRemoteAddress","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"useCustomAdapterParams","type":"bool"}],"name":"SetUseCustomAdapterParams","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"weth","type":"address"}],"name":"SetWETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"WithdrawFee","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":false,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountLD","type":"uint256"}],"name":"WithdrawTVL","type":"event"},{"inputs":[],"name":"BP_DENOMINATOR","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SHARED_DECIMALS","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"accruedFeeLD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"aptosChainId","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"bridgeFeeBP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"emergencyWithdrawEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"emergencyWithdrawTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"}],"name":"enableEmergencyWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"","type":"uint16"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"uint64","name":"","type":"uint64"}],"name":"failedMessages","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"internalType":"bytes","name":"_srcAddress","type":"bytes"}],"name":"forceResumeReceive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_version","type":"uint16"},{"internalType":"uint16","name":"_chainId","type":"uint16"},{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"_configType","type":"uint256"}],"name":"getConfig","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"_remoteChainId","type":"uint16"}],"name":"getTrustedRemoteAddress","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"globalPaused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"internalType":"bytes","name":"_srcAddress","type":"bytes"}],"name":"isTrustedRemote","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"ld2sdRates","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lzEndpoint","outputs":[{"internalType":"contract ILayerZeroEndpoint","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"internalType":"bytes","name":"_srcAddress","type":"bytes"},{"internalType":"uint64","name":"_nonce","type":"uint64"},{"internalType":"bytes","name":"_payload","type":"bytes"}],"name":"lzReceive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"","type":"uint16"},{"internalType":"uint16","name":"","type":"uint16"}],"name":"minDstGasLookup","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"internalType":"bytes","name":"_srcAddress","type":"bytes"},{"internalType":"uint64","name":"_nonce","type":"uint64"},{"internalType":"bytes","name":"_payload","type":"bytes"}],"name":"nonblockingLzReceive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"pausedTokens","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"precrime","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"components":[{"internalType":"address payable","name":"refundAddress","type":"address"},{"internalType":"address","name":"zroPaymentAddress","type":"address"}],"internalType":"struct LzLib.CallParams","name":"_callParams","type":"tuple"},{"internalType":"bytes","name":"_adapterParams","type":"bytes"}],"name":"quoteForSend","outputs":[{"internalType":"uint256","name":"nativeFee","type":"uint256"},{"internalType":"uint256","name":"zroFee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"registerToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"internalType":"bytes","name":"_srcAddress","type":"bytes"},{"internalType":"uint64","name":"_nonce","type":"uint64"},{"internalType":"bytes","name":"_payload","type":"bytes"}],"name":"retryMessage","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"bytes32","name":"_toAddress","type":"bytes32"},{"internalType":"uint256","name":"_amountLD","type":"uint256"},{"components":[{"internalType":"address payable","name":"refundAddress","type":"address"},{"internalType":"address","name":"zroPaymentAddress","type":"address"}],"internalType":"struct LzLib.CallParams","name":"_callParams","type":"tuple"},{"internalType":"bytes","name":"_adapterParams","type":"bytes"}],"name":"sendETHToAptos","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"bytes32","name":"_toAddress","type":"bytes32"},{"internalType":"uint256","name":"_amountLD","type":"uint256"},{"components":[{"internalType":"address payable","name":"refundAddress","type":"address"},{"internalType":"address","name":"zroPaymentAddress","type":"address"}],"internalType":"struct LzLib.CallParams","name":"_callParams","type":"tuple"},{"internalType":"bytes","name":"_adapterParams","type":"bytes"}],"name":"sendToAptos","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_aptosChainId","type":"uint16"}],"name":"setAptosChainId","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_bridgeFeeBP","type":"uint256"}],"name":"setBridgeFeeBP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_version","type":"uint16"},{"internalType":"uint16","name":"_chainId","type":"uint16"},{"internalType":"uint256","name":"_configType","type":"uint256"},{"internalType":"bytes","name":"_config","type":"bytes"}],"name":"setConfig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_paused","type":"bool"}],"name":"setGlobalPause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_dstChainId","type":"uint16"},{"internalType":"uint16","name":"_packetType","type":"uint16"},{"internalType":"uint256","name":"_minGas","type":"uint256"}],"name":"setMinDstGas","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_precrime","type":"address"}],"name":"setPrecrime","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_version","type":"uint16"}],"name":"setReceiveVersion","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_version","type":"uint16"}],"name":"setSendVersion","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"bool","name":"_paused","type":"bool"}],"name":"setTokenPause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_srcChainId","type":"uint16"},{"internalType":"bytes","name":"_path","type":"bytes"}],"name":"setTrustedRemote","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"_remoteChainId","type":"uint16"},{"internalType":"bytes","name":"_remoteAddress","type":"bytes"}],"name":"setTrustedRemoteAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_useCustomAdapterParams","type":"bool"}],"name":"setUseCustomAdapterParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_weth","type":"address"}],"name":"setWETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"supportedTokens","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint16","name":"","type":"uint16"}],"name":"trustedRemoteLookup","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"tvlSDs","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"useCustomAdapterParams","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"weth","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"}],"name":"withdrawEmergency","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amountLD","type":"uint256"}],"name":"withdrawFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint64","name":"_amountSD","type":"uint64"}],"name":"withdrawTVL","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
TokenBridge Bytecode
Copied
60a06040523480156200001157600080fd5b5060405162004b8738038062004b878339810160408190526200003491620000c0565b8180620000413362000070565b6001600160a01b03166080525060016005556006805461ffff191661ffff929092169190911790555062000110565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60008060408385031215620000d457600080fd5b82516001600160a01b0381168114620000ec57600080fd5b602084015190925061ffff811681146200010557600080fd5b809150509250929050565b608051614a23620001646000396000818161081501528181610af201528181610d6c015281816110e00152818161121c015281816113160152818161219c0152818161273301526139b00152614a236000f3fe60806040526004361061032b5760003560e01c806393f26a4c116101a5578063cb8d3b1f116100ec578063e3179c3e11610095578063ed629c5c1161006f578063ed629c5c146109c3578063ee7a4596146109e4578063f2fde38b14610a14578063f5ecbdbc14610a3457600080fd5b8063e3179c3e14610933578063eab45d9c14610983578063eb8d72b7146109a357600080fd5b8063d71e409e116100c6578063d71e409e146108dd578063de9b9488146108fd578063df2a5b3b1461091357600080fd5b8063cb8d3b1f1461088a578063cbed8b9c146108aa578063d1deba1f146108ca57600080fd5b8063a6c3d1651161014e578063baf3292d11610128578063baf3292d14610837578063c21f511414610857578063ca23bb4c1461087757600080fd5b8063a6c3d165146107cd578063abe685cd146107ed578063b353aaa71461080357600080fd5b8063971679641161017f57806397167964146107665780639f38369a1461078d578063a2f27ae0146107ad57600080fd5b806393f26a4c14610706578063950c8a741461072657806395e2c1681461074657600080fd5b80635747e69f1161027457806369a6b3db1161021d57806376a9099a116101f757806376a9099a146106705780638cfd8f5c146106835780638da5cb5b146106bb57806392cc13c5146106d957600080fd5b806369a6b3db1461060e578063715018a61461062e5780637533d7881461064357600080fd5b806361a552dc1161024e57806361a552dc1461059d57806366ad5c8a146105be57806368c4ac26146105de57600080fd5b80635747e69f1461050d5780635b769f3c1461052e5780635b8c41e61461054e57600080fd5b806325a9f792116102d65780633fc8cef3116102b05780633fc8cef31461048057806342d65a8d146104b8578063468b9668146104d857600080fd5b806325a9f792146103f95780632db88ecf146104225780633d8b38f61461045057600080fd5b806309824a801161030757806309824a80146103995780631095b6d7146103b957806310ddb137146103d957600080fd5b80620d5900146103375780621d35671461035957806307e0db171461037957600080fd5b3661033257005b600080fd5b34801561034357600080fd5b50610357610352366004613c18565b610a54565b005b34801561036557600080fd5b50610357610374366004613ca9565b610aef565b34801561038557600080fd5b50610357610394366004613d3d565b610d32565b3480156103a557600080fd5b506103576103b4366004613d6d565b610dd4565b3480156103c557600080fd5b506103576103d4366004613d8a565b610fe0565b3480156103e557600080fd5b506103576103f4366004613d3d565b6110a6565b34801561040557600080fd5b5061040f60075481565b6040519081526020015b60405180910390f35b34801561042e57600080fd5b5060065461043d9061ffff1681565b60405161ffff9091168152602001610419565b34801561045c57600080fd5b5061047061046b366004613dcb565b611117565b6040519015158152602001610419565b34801561048c57600080fd5b50600c546104a0906001600160a01b031681565b6040516001600160a01b039091168152602001610419565b3480156104c457600080fd5b506103576104d3366004613dcb565b6111e4565b3480156104e457600080fd5b506104f86104f3366004613e36565b611283565b60408051928352602083019190915201610419565b34801561051957600080fd5b50600c5461047090600160b01b900460ff1681565b34801561053a57600080fd5b50610357610549366004613d6d565b6113aa565b34801561055a57600080fd5b5061040f610569366004613ee0565b6004602090815260009384526040808520845180860184018051928152908401958401959095209452929052825290205481565b3480156105a957600080fd5b50600c5461047090600160a81b900460ff1681565b3480156105ca57600080fd5b506103576105d9366004613ca9565b61146e565b3480156105ea57600080fd5b506104706105f9366004613d6d565b60096020526000908152604090205460ff1681565b34801561061a57600080fd5b50610357610629366004613f8f565b611561565b34801561063a57600080fd5b506103576115d1565b34801561064f57600080fd5b5061066361065e366004613d3d565b6115db565b6040516104199190614004565b61035761067e366004614017565b611675565b34801561068f57600080fd5b5061040f61069e366004614080565b600260209081526000928352604080842090915290825290205481565b3480156106c757600080fd5b506000546001600160a01b03166104a0565b3480156106e557600080fd5b5061040f6106f4366004613d6d565b600b6020526000908152604090205481565b34801561071257600080fd5b506103576107213660046140b3565b61192c565b34801561073257600080fd5b506003546104a0906001600160a01b031681565b34801561075257600080fd5b506103576107613660046140ec565b611976565b34801561077257600080fd5b5061077b600681565b60405160ff9091168152602001610419565b34801561079957600080fd5b506106636107a8366004613d3d565b611ac8565b3480156107b957600080fd5b5061040f6107c8366004613d6d565b611bd7565b3480156107d957600080fd5b506103576107e8366004613dcb565b611c7e565b3480156107f957600080fd5b5061040f61271081565b34801561080f57600080fd5b506104a07f000000000000000000000000000000000000000000000000000000000000000081565b34801561084357600080fd5b50610357610852366004613d6d565b611d07565b34801561086357600080fd5b50610357610872366004613d3d565b611d6a565b61035761088536600461412a565b611db6565b34801561089657600080fd5b506103576108a5366004614193565b612100565b3480156108b657600080fd5b506103576108c53660046141c1565b612164565b6103576108d8366004613ca9565b612212565b3480156108e957600080fd5b506103576108f8366004613f8f565b612444565b34801561090957600080fd5b5061040f600d5481565b34801561091f57600080fd5b5061035761092e366004614213565b6124d5565b34801561093f57600080fd5b5061096a61094e366004613d6d565b60086020526000908152604090205467ffffffffffffffff1681565b60405167ffffffffffffffff9091168152602001610419565b34801561098f57600080fd5b5061035761099e366004613f8f565b61258f565b3480156109af57600080fd5b506103576109be366004613dcb565b6125ff565b3480156109cf57600080fd5b50600c5461047090600160a01b900460ff1681565b3480156109f057600080fd5b506104706109ff366004613d6d565b600a6020526000908152604090205460ff1681565b348015610a2057600080fd5b50610357610a2f366004613d6d565b612659565b348015610a4057600080fd5b50610663610a4f36600461424f565b6126e9565b610a5c6127b3565b612710811115610ab35760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4272696467653a2062726964676520666565203e2031303025000060448201526064015b60405180910390fd5b60078190556040518181527f9a749c8193bfd56b2b2a05c0bd18fbb0f69801a3fd6576c40b90537fd0fc3854906020015b60405180910390a150565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614610b675760405162461bcd60e51b815260206004820152601e60248201527f4c7a4170703a20696e76616c696420656e64706f696e742063616c6c657200006044820152606401610aaa565b61ffff861660009081526001602052604081208054610b859061429c565b80601f0160208091040260200160405190810160405280929190818152602001828054610bb19061429c565b8015610bfe5780601f10610bd357610100808354040283529160200191610bfe565b820191906000526020600020905b815481529060010190602001808311610be157829003601f168201915b50505050509050805186869050148015610c19575060008151115b8015610c41575080516020820120604051610c3790889088906142d0565b6040518091039020145b610cb35760405162461bcd60e51b815260206004820152602660248201527f4c7a4170703a20696e76616c696420736f757263652073656e64696e6720636f60448201527f6e747261637400000000000000000000000000000000000000000000000000006064820152608401610aaa565b610d298787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881528a93509150889088908190840183828082843760009201919091525061280d92505050565b50505050505050565b610d3a6127b3565b6040517f07e0db1700000000000000000000000000000000000000000000000000000000815261ffff821660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906307e0db17906024015b600060405180830381600087803b158015610db957600080fd5b505af1158015610dcd573d6000803e3d6000fd5b5050505050565b610ddc6127b3565b6001600160a01b038116610e3d5760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4272696467653a20696e76616c696420746f6b656e206164647265604482015261737360f01b6064820152608401610aaa565b6001600160a01b03811660009081526009602052604090205460ff1615610ecc5760405162461bcd60e51b815260206004820152602560248201527f546f6b656e4272696467653a20746f6b656e20616c726561647920726567697360448201527f74657265640000000000000000000000000000000000000000000000000000006064820152608401610aaa565b6000610ed782612930565b9050600660ff82161015610f535760405162461bcd60e51b815260206004820152603060248201527f546f6b656e4272696467653a20646563696d616c73206d757374206265203e3d60448201527f205348415245445f444543494d414c53000000000000000000000000000000006064820152608401610aaa565b6001600160a01b0382166000908152600960205260409020805460ff19166001179055610f816006826142f6565b610f8c90600a6143fd565b6001600160a01b0383166000818152600b602090815260409182902093909355519081527ff7fe8023cb2e36bde1d59a88ac5763a8c11be6d25e6819f71bb7e23e5bf0dc1691015b60405180910390a15050565b610fe86127b3565b6000610ff384611bd7565b9050808211156110455760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4272696467653a20666565206e6f7420656e6f75676800000000006044820152606401610aaa565b6110596001600160a01b0385168484612a63565b604080516001600160a01b038581168252602082018590528616917ff15a0a3784dea9b4fe33bc98e2450745e262d310237b2868ea8ef56967ff3ecb91015b60405180910390a250505050565b6110ae6127b3565b6040517f10ddb13700000000000000000000000000000000000000000000000000000000815261ffff821660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906310ddb13790602401610d9f565b61ffff8316600090815260016020526040812080548291906111389061429c565b80601f01602080910402602001604051908101604052809291908181526020018280546111649061429c565b80156111b15780601f10611186576101008083540402835291602001916111b1565b820191906000526020600020905b81548152906001019060200180831161119457829003601f168201915b5050505050905083836040516111c89291906142d0565b60405180910390208180519060200120149150505b9392505050565b6111ec6127b3565b6040517f42d65a8d0000000000000000000000000000000000000000000000000000000081526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906342d65a8d9061125590869086908690600401614435565b600060405180830381600087803b15801561126f57600080fd5b505af1158015610d29573d6000803e3d6000fd5b6000806112908484612afc565b6040805160006020820181905260218201819052604182018190526061820181905282518083036049018152606990920190925290506000806112d96040890160208a01613d6d565b6006546040517f40a7bb100000000000000000000000000000000000000000000000000000000081526001600160a01b03928316939093141593507f0000000000000000000000000000000000000000000000000000000000000000909116916340a7bb109161135c9161ffff909116903090879087908d908d90600401614453565b6040805180830381865afa158015611378573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061139c91906144a7565b935093505050935093915050565b6113b26127b3565b6001600160a01b0381166114135760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4272696467653a20696e76616c696420746f6b656e206164647265604482015261737360f01b6064820152608401610aaa565b600c805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527fe390bcec6614d6b1f8ae47a4d9d46531ce328e3d293ecd6ddd015cb01eff030090602001610ae4565b3330146114e35760405162461bcd60e51b815260206004820152602660248201527f4e6f6e626c6f636b696e674c7a4170703a2063616c6c6572206d75737420626560448201527f204c7a41707000000000000000000000000000000000000000000000000000006064820152608401610aaa565b6115598686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f890181900481028201810190925287815289935091508790879081908401838280828437600092019190915250612bcb92505050565b505050505050565b6115696127b3565b600c8054821515600160a81b027fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff9091161790556040517f5362d4bd13945e8d116b90d83a7050fa61ceb02bb79bfae783377adb46916d9490610ae490831515815260200190565b6115d96127b3565b565b600160205260009081526040902080546115f49061429c565b80601f01602080910402602001604051908101604052809291908181526020018280546116209061429c565b801561166d5780601f106116425761010080835404028352916020019161166d565b820191906000526020600020905b81548152906001019060200180831161165057829003601f168201915b505050505081565b600c548690600160a81b900460ff161580156116aa57506001600160a01b0381166000908152600a602052604090205460ff16155b6116f65760405162461bcd60e51b815260206004820152601360248201527f546f6b656e4272696467653a20706175736564000000000000000000000000006044820152606401610aaa565b6002600554036117485760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610aaa565b60026005556001600160a01b03871660009081526009602052604090205460ff166117c15760405162461bcd60e51b815260206004820152602360248201527f546f6b656e4272696467653a20746f6b656e206973206e6f7420737570706f726044820152621d195960ea1b6064820152608401610aaa565b6117cb8786612f64565b94506117d8873387612f82565b945060006117e68887613087565b905060008167ffffffffffffffff16116118685760405162461bcd60e51b815260206004820152602c60248201527f546f6b656e4272696467653a20616d6f756e745344206d75737420626520677260448201527f6561746572207468616e203000000000000000000000000000000000000000006064820152608401610aaa565b6001600160a01b0388166000908152600860205260408120805483929061189a90849067ffffffffffffffff166144cb565b92506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506118cf88888388888834613106565b86336001600160a01b0316896001600160a01b03167fbe6ff12fec5087498d44bc85f1a83235a630944a1e2d5a7938afe810370a58678960405161191591815260200190565b60405180910390a450506001600555505050505050565b6119346127b3565b61194282826103d485611bd7565b6001600160a01b038216600090815260086020526040902054611972908390839067ffffffffffffffff16611976565b5050565b61197e6127b3565b600c54600160b01b900460ff1680156119995750600d544210155b611a0b5760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4272696467653a20656d657267656e63792077697468647261772060448201527f6c6f636b656400000000000000000000000000000000000000000000000000006064820152608401610aaa565b6001600160a01b03831660009081526008602052604081208054839290611a3d90849067ffffffffffffffff166144f7565b92506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506000611a6f84836131e5565b9050611a856001600160a01b0385168483612a63565b604080516001600160a01b038581168252602082018490528616917f49507695f37b729944475cf3388760a14760fef784b7ab5ca8863a5f3f8be6bd9101611098565b61ffff8116600090815260016020526040812080546060929190611aeb9061429c565b80601f0160208091040260200160405190810160405280929190818152602001828054611b179061429c565b8015611b645780601f10611b3957610100808354040283529160200191611b64565b820191906000526020600020905b815481529060010190602001808311611b4757829003601f168201915b505050505090508051600003611bbc5760405162461bcd60e51b815260206004820152601d60248201527f4c7a4170703a206e6f20747275737465642070617468207265636f72640000006044820152606401610aaa565b6111dd600060148351611bcf9190614520565b839190613212565b6001600160a01b0381166000908152600860205260408120548190611c0790849067ffffffffffffffff166131e5565b6040516370a0823160e01b815230600482015290915081906001600160a01b038516906370a0823190602401602060405180830381865afa158015611c50573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c749190614537565b6111dd9190614520565b611c866127b3565b818130604051602001611c9b93929190614550565b60408051601f1981840301815291815261ffff8516600090815260016020522090611cc690826145bc565b507f8c0400cfe2d1199b1a725c78960bcc2a344d869b80590d0f2bd005db15a572ce838383604051611cfa93929190614435565b60405180910390a1505050565b611d0f6127b3565b6003805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0383169081179091556040519081527f5db758e995a17ec1ad84bdef7e8c3293a0bd6179bcce400dff5d4c3d87db726b90602001610ae4565b611d726127b3565b6006805461ffff191661ffff83169081179091556040519081527f6a9ea26cc7efedf0df6fd048e06f3de4be1a978bb5d440277147c76e1c0eb75a90602001610ae4565b600c546001600160a01b03811690600160a81b900460ff16158015611df457506001600160a01b0381166000908152600a602052604090205460ff16155b611e405760405162461bcd60e51b815260206004820152601360248201527f546f6b656e4272696467653a20706175736564000000000000000000000000006044820152606401610aaa565b600260055403611e925760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610aaa565b6002600555600c546001600160a01b03168015801590611eca57506001600160a01b03811660009081526009602052604090205460ff165b611f205760405162461bcd60e51b815260206004820152602160248201527f546f6b656e4272696467653a20455448206973206e6f7420737570706f7274656044820152601960fa1b6064820152608401610aaa565b611f2a8187612f64565b955060008611611fa25760405162461bcd60e51b815260206004820152602a60248201527f546f6b656e4272696467653a20616d6f756e74206d757374206265206772656160448201527f746572207468616e2030000000000000000000000000000000000000000000006064820152608401610aaa565b85341015611ff25760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4272696467653a20666565206e6f7420656e6f75676800000000006044820152606401610aaa565b806001600160a01b031663d0e30db0876040518263ffffffff1660e01b81526004016000604051808303818588803b15801561202d57600080fd5b505af1158015612041573d6000803e3d6000fd5b505050505060006120528288613087565b6001600160a01b03831660009081526008602052604081208054929350839290919061208990849067ffffffffffffffff166144cb565b92506101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506120c98289838989898d346120c49190614520565b613106565b604051878152889033906000907fbe6ff12fec5087498d44bc85f1a83235a630944a1e2d5a7938afe810370a586790602001611915565b6121086127b3565b6001600160a01b0382166000818152600a6020908152604091829020805460ff19168515159081179091558251938452908301527fb1656bd3b50ddb6b12ef259c86e9cb359952b53c4403cfb5a83e23c515a35e229101610fd4565b61216c6127b3565b6040517fcbed8b9c0000000000000000000000000000000000000000000000000000000081526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063cbed8b9c906121d9908890889088908890889060040161467c565b600060405180830381600087803b1580156121f357600080fd5b505af1158015612207573d6000803e3d6000fd5b505050505050505050565b61ffff8616600090815260046020526040808220905161223590889088906142d0565b908152604080516020928190038301902067ffffffffffffffff8716600090815292529020549050806122d05760405162461bcd60e51b815260206004820152602360248201527f4e6f6e626c6f636b696e674c7a4170703a206e6f2073746f726564206d65737360448201527f61676500000000000000000000000000000000000000000000000000000000006064820152608401610aaa565b8083836040516122e19291906142d0565b6040518091039020146123405760405162461bcd60e51b815260206004820152602160248201527f4e6f6e626c6f636b696e674c7a4170703a20696e76616c6964207061796c6f616044820152601960fa1b6064820152608401610aaa565b61ffff8716600090815260046020526040808220905161236390899089906142d0565b908152604080516020928190038301812067ffffffffffffffff8916600090815290845282902093909355601f880182900482028301820190528682526123fc918991899089908190840183828082843760009201919091525050604080516020601f8a018190048102820181019092528881528a935091508890889081908401838280828437600092019190915250612bcb92505050565b7fc264d91f3adc5588250e1551f547752ca0cfa8f6b530d243b9f9f4cab10ea8e587878787856040516124339594939291906146aa565b60405180910390a150505050505050565b61244c6127b3565b600c80547fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff16600160b01b831515021790558061248a576000612497565b6124974262093a806146e6565b600d81905560408051831515815260208101929092527f27a37fc51e6c5d14309bbed3a54787c8788223b5d9cd5fe10605661665dd84159101610ae4565b6124dd6127b3565b6000811161252d5760405162461bcd60e51b815260206004820152601560248201527f4c7a4170703a20696e76616c6964206d696e47617300000000000000000000006044820152606401610aaa565b61ffff83811660008181526002602090815260408083209487168084529482529182902085905581519283528201929092529081018290527f9d5c7c0b934da8fefa9c7760c98383778a12dfbfc0c3b3106518f43fb9508ac090606001611cfa565b6125976127b3565b600c8054821515600160a01b027fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff9091161790556040517f1584ad594a70cbe1e6515592e1272a987d922b097ead875069cebe8b40c004a490610ae490831515815260200190565b6126076127b3565b61ffff831660009081526001602052604090206126258284836146fe565b507ffa41487ad5d6728f0b19276fa1eddc16558578f5109fc39d2dc33c3230470dab838383604051611cfa93929190614435565b6126616127b3565b6001600160a01b0381166126dd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610aaa565b6126e68161333a565b50565b6040517ff5ecbdbc00000000000000000000000000000000000000000000000000000000815261ffff808616600483015284166024820152306044820152606481018290526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063f5ecbdbc90608401600060405180830381865afa158015612782573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526127aa91908101906147be565b95945050505050565b6000546001600160a01b031633146115d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610aaa565b6000806128885a60966366ad5c8a60e01b89898989604051602401612835949392919061482c565b60408051601f198184030181529190526020810180516001600160e01b03167fffffffff000000000000000000000000000000000000000000000000000000009093169290921790915230929190613397565b9150915081611559578280519060200120600460008861ffff1661ffff168152602001908152602001600020866040516128c2919061486b565b90815260408051918290036020908101832067ffffffffffffffff89166000908152915220919091557fe183f33de2837795525b4792ca4cd60535bd77c53b7e7030060bfcf5734d6b0c906129209088908890889088908790614887565b60405180910390a1505050505050565b60408051600481526024810182526020810180516001600160e01b03167f313ce567000000000000000000000000000000000000000000000000000000001790529051600091829182916001600160a01b0386169161298f919061486b565b600060405180830381855afa9150503d80600081146129ca576040519150601f19603f3d011682016040523d82523d6000602084013e6129cf565b606091505b509150915081612a475760405162461bcd60e51b815260206004820152602960248201527f546f6b656e4272696467653a206661696c656420746f2067657420746f6b656e60448201527f20646563696d616c7300000000000000000000000000000000000000000000006064820152608401610aaa565b80806020019051810190612a5b91906148e6565b949350505050565b6040516001600160a01b038316602482015260448101829052612af79084907fa9059cbb00000000000000000000000000000000000000000000000000000000906064015b60408051601f198184030181529190526020810180516001600160e01b03167fffffffff0000000000000000000000000000000000000000000000000000000090931692909217909152613422565b505050565b600c54600160a01b900460ff1615612b57576006546119729061ffff16600084848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201829052509250613507915050565b80156119725760405162461bcd60e51b815260206004820152602a60248201527f546f6b656e4272696467653a205f61646170746572506172616d73206d75737460448201527f20626520656d7074792e000000000000000000000000000000000000000000006064820152608401610aaa565b60065461ffff858116911614612c485760405162461bcd60e51b8152602060048201526024808201527f546f6b656e4272696467653a20696e76616c696420736f75726365206368616960448201527f6e206964000000000000000000000000000000000000000000000000000000006064820152608401610aaa565b600080600080612c57856135e6565b600c5493975091955093509150600160a81b900460ff16158015612c9457506001600160a01b0384166000908152600a602052604090205460ff16155b612ce05760405162461bcd60e51b815260206004820152601360248201527f546f6b656e4272696467653a20706175736564000000000000000000000000006044820152606401610aaa565b6001600160a01b03841660009081526009602052604090205460ff16612d545760405162461bcd60e51b815260206004820152602360248201527f546f6b656e4272696467653a20746f6b656e206973206e6f7420737570706f726044820152621d195960ea1b6064820152608401610aaa565b6001600160a01b03841660009081526008602052604090205467ffffffffffffffff908116908316811015612df15760405162461bcd60e51b815260206004820152602360248201527f546f6b656e4272696467653a20696e73756666696369656e74206c697175696460448201527f69747900000000000000000000000000000000000000000000000000000000006064820152608401610aaa565b612dfb83826144f7565b6001600160a01b0386166000908152600860205260408120805467ffffffffffffffff191667ffffffffffffffff9390931692909217909155612e3e86856131e5565b9050600060075411612e5257806000612e5b565b612e5b8161373a565b50600c549091506001600160a01b038781169116148015612e795750825b15612edb57600c54612e95906001600160a01b0316868361376b565b6040518181526001600160a01b038616906000907ffd19781f43410d9594fd4c02dd1d98dbe99099cbd222d5851a6e183c468d33ca9060200160405180910390a3612f58565b6001600160a01b03851615612ef05784612ef4565b61dead5b9450612f0a6001600160a01b0387168683612a63565b846001600160a01b0316866001600160a01b03167ffd19781f43410d9594fd4c02dd1d98dbe99099cbd222d5851a6e183c468d33ca83604051612f4f91815260200190565b60405180910390a35b50505050505050505050565b6000612f7983612f748585613087565b6131e5565b90505b92915050565b6040516370a0823160e01b815230600482015260009081906001600160a01b038616906370a0823190602401602060405180830381865afa158015612fcb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612fef9190614537565b90506130066001600160a01b03861685308661381a565b6040516370a0823160e01b81523060048201526000906001600160a01b038716906370a0823190602401602060405180830381865afa15801561304d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130719190614537565b905061307d8282614520565b9695505050505050565b6001600160a01b0382166000908152600b602052604081205481906130ac908461491f565b905067ffffffffffffffff811115612f795760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4272696467653a20616d6f756e745344206f766572666c6f7700006044820152606401610aaa565b6131108383612afc565b604080516000602082018190526001600160a01b038a1660218301526041820189905260c088901b7fffffffffffffffff0000000000000000000000000000000000000000000000001660618301528251808303604901815260699092019092526006549091506131db9061ffff168261318d6020890189613d6d565b61319d60408a0160208b01613d6d565b88888080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152508a925061386b915050565b5050505050505050565b6001600160a01b0382166000908152600b6020526040812054612f799067ffffffffffffffff8416614941565b60608161322081601f6146e6565b101561326e5760405162461bcd60e51b815260206004820152600e60248201527f736c6963655f6f766572666c6f770000000000000000000000000000000000006044820152606401610aaa565b61327882846146e6565b845110156132c85760405162461bcd60e51b815260206004820152601160248201527f736c6963655f6f75744f66426f756e64730000000000000000000000000000006044820152606401610aaa565b6060821580156132e75760405191506000825260208201604052613331565b6040519150601f8416801560200281840101858101878315602002848b0101015b81831015613320578051835260209283019201613308565b5050858452601f01601f1916604052505b50949350505050565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000606060008060008661ffff1667ffffffffffffffff8111156133bd576133bd613e71565b6040519080825280601f01601f1916602001820160405280156133e7576020820181803683370190505b50905060008087516020890160008d8df191503d925086831115613409578692505b828152826000602083013e909890975095505050505050565b6000613477826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316613a2c9092919063ffffffff16565b805190915015612af757808060200190518101906134959190614960565b612af75760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610aaa565b600061351283613a3b565b61ffff8087166000908152600260209081526040808320938916835292905290812054919250906135449084906146e6565b9050600081116135965760405162461bcd60e51b815260206004820152601a60248201527f4c7a4170703a206d696e4761734c696d6974206e6f74207365740000000000006044820152606401610aaa565b808210156115595760405162461bcd60e51b815260206004820152601b60248201527f4c7a4170703a20676173206c696d697420697320746f6f206c6f7700000000006044820152606401610aaa565b6000806000808451604a146136635760405162461bcd60e51b815260206004820152602360248201527f546f6b656e4272696467653a20696e76616c6964207061796c6f6164206c656e60448201527f67746800000000000000000000000000000000000000000000000000000000006064820152608401610aaa565b6000856000815181106136785761367861497d565b016020015160f81c600181111561369157613691614909565b905060018160018111156136a7576136a7614909565b146136f45760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4272696467653a20756e6b6e6f776e207061636b657420747970656044820152606401610aaa565b6021860151945060418601519350604986015192508560498151811061371c5761371c61497d565b602001015160f81c60f81b60f81c60ff166001149150509193509193565b6000806127106007548461374e9190614941565b613758919061491f565b90506137648184614520565b9150915091565b6040517f2e1a7d4d000000000000000000000000000000000000000000000000000000008152600481018290526001600160a01b03841690632e1a7d4d90602401600060405180830381600087803b1580156137c657600080fd5b505af11580156137da573d6000803e3d6000fd5b50506040516001600160a01b038516925083156108fc02915083906000818181858888f19350505050158015613814573d6000803e3d6000fd5b50505050565b6040516001600160a01b03808516602483015283166044820152606481018290526138149085907f23b872dd0000000000000000000000000000000000000000000000000000000090608401612aa8565b61ffff8616600090815260016020526040812080546138899061429c565b80601f01602080910402602001604051908101604052809291908181526020018280546138b59061429c565b80156139025780601f106138d757610100808354040283529160200191613902565b820191906000526020600020905b8154815290600101906020018083116138e557829003601f168201915b5050505050905080516000036139805760405162461bcd60e51b815260206004820152603060248201527f4c7a4170703a2064657374696e6174696f6e20636861696e206973206e6f742060448201527f61207472757374656420736f75726365000000000000000000000000000000006064820152608401610aaa565b6040517fc58031000000000000000000000000000000000000000000000000000000000081526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c58031009084906139f1908b9086908c908c908c908c90600401614993565b6000604051808303818588803b158015613a0a57600080fd5b505af1158015613a1e573d6000803e3d6000fd5b505050505050505050505050565b6060612a5b8484600085613a97565b6000602282511015613a8f5760405162461bcd60e51b815260206004820152601c60248201527f4c7a4170703a20696e76616c69642061646170746572506172616d73000000006044820152606401610aaa565b506022015190565b606082471015613b0f5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610aaa565b6001600160a01b0385163b613b665760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610aaa565b600080866001600160a01b03168587604051613b82919061486b565b60006040518083038185875af1925050503d8060008114613bbf576040519150601f19603f3d011682016040523d82523d6000602084013e613bc4565b606091505b5091509150613bd4828286613bdf565b979650505050505050565b60608315613bee5750816111dd565b825115613bfe5782518084602001fd5b8160405162461bcd60e51b8152600401610aaa9190614004565b600060208284031215613c2a57600080fd5b5035919050565b803561ffff81168114613c4357600080fd5b919050565b60008083601f840112613c5a57600080fd5b50813567ffffffffffffffff811115613c7257600080fd5b602083019150836020828501011115613c8a57600080fd5b9250929050565b803567ffffffffffffffff81168114613c4357600080fd5b60008060008060008060808789031215613cc257600080fd5b613ccb87613c31565b9550602087013567ffffffffffffffff80821115613ce857600080fd5b613cf48a838b01613c48565b9097509550859150613d0860408a01613c91565b94506060890135915080821115613d1e57600080fd5b50613d2b89828a01613c48565b979a9699509497509295939492505050565b600060208284031215613d4f57600080fd5b612f7982613c31565b6001600160a01b03811681146126e657600080fd5b600060208284031215613d7f57600080fd5b8135612f7981613d58565b600080600060608486031215613d9f57600080fd5b8335613daa81613d58565b92506020840135613dba81613d58565b929592945050506040919091013590565b600080600060408486031215613de057600080fd5b613de984613c31565b9250602084013567ffffffffffffffff811115613e0557600080fd5b613e1186828701613c48565b9497909650939450505050565b600060408284031215613e3057600080fd5b50919050565b600080600060608486031215613e4b57600080fd5b613e558585613e1e565b9250604084013567ffffffffffffffff811115613e0557600080fd5b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715613eb057613eb0613e71565b604052919050565b600067ffffffffffffffff821115613ed257613ed2613e71565b50601f01601f191660200190565b600080600060608486031215613ef557600080fd5b613efe84613c31565b9250602084013567ffffffffffffffff811115613f1a57600080fd5b8401601f81018613613f2b57600080fd5b8035613f3e613f3982613eb8565b613e87565b818152876020838501011115613f5357600080fd5b81602084016020830137600060208383010152809450505050613f7860408501613c91565b90509250925092565b80151581146126e657600080fd5b600060208284031215613fa157600080fd5b8135612f7981613f81565b60005b83811015613fc7578181015183820152602001613faf565b838111156138145750506000910152565b60008151808452613ff0816020860160208601613fac565b601f01601f19169290920160200192915050565b602081526000612f796020830184613fd8565b60008060008060008060c0878903121561403057600080fd5b863561403b81613d58565b955060208701359450604087013593506140588860608901613e1e565b925060a087013567ffffffffffffffff81111561407457600080fd5b613d2b89828a01613c48565b6000806040838503121561409357600080fd5b61409c83613c31565b91506140aa60208401613c31565b90509250929050565b600080604083850312156140c657600080fd5b82356140d181613d58565b915060208301356140e181613d58565b809150509250929050565b60008060006060848603121561410157600080fd5b833561410c81613d58565b9250602084013561411c81613d58565b9150613f7860408501613c91565b600080600080600060a0868803121561414257600080fd5b853594506020860135935061415a8760408801613e1e565b9250608086013567ffffffffffffffff81111561417657600080fd5b61418288828901613c48565b969995985093965092949392505050565b600080604083850312156141a657600080fd5b82356141b181613d58565b915060208301356140e181613f81565b6000806000806000608086880312156141d957600080fd5b6141e286613c31565b94506141f060208701613c31565b935060408601359250606086013567ffffffffffffffff81111561417657600080fd5b60008060006060848603121561422857600080fd5b61423184613c31565b925061423f60208501613c31565b9150604084013590509250925092565b6000806000806080858703121561426557600080fd5b61426e85613c31565b935061427c60208601613c31565b9250604085013561428c81613d58565b9396929550929360600135925050565b600181811c908216806142b057607f821691505b602082108103613e3057634e487b7160e01b600052602260045260246000fd5b8183823760009101908152919050565b634e487b7160e01b600052601160045260246000fd5b600060ff821660ff841680821015614310576143106142e0565b90039392505050565b600181815b8085111561435457816000190482111561433a5761433a6142e0565b8085161561434757918102915b93841c939080029061431e565b509250929050565b60008261436b57506001612f7c565b8161437857506000612f7c565b816001811461438e5760028114614398576143b4565b6001915050612f7c565b60ff8411156143a9576143a96142e0565b50506001821b612f7c565b5060208310610133831016604e8410600b84101617156143d7575081810a612f7c565b6143e18383614319565b80600019048211156143f5576143f56142e0565b029392505050565b6000612f7960ff84168361435c565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b61ffff841681526040602082015260006127aa60408301848661440c565b61ffff871681526001600160a01b038616602082015260a06040820152600061447f60a0830187613fd8565b8515156060840152828103608084015261449a81858761440c565b9998505050505050505050565b600080604083850312156144ba57600080fd5b505080516020909101519092909150565b600067ffffffffffffffff8083168185168083038211156144ee576144ee6142e0565b01949350505050565b600067ffffffffffffffff83811690831681811015614518576145186142e0565b039392505050565b600082821015614532576145326142e0565b500390565b60006020828403121561454957600080fd5b5051919050565b8284823760609190911b6bffffffffffffffffffffffff19169101908152601401919050565b601f821115612af757600081815260208120601f850160051c8101602086101561459d5750805b601f850160051c820191505b81811015611559578281556001016145a9565b815167ffffffffffffffff8111156145d6576145d6613e71565b6145ea816145e4845461429c565b84614576565b602080601f83116001811461461f57600084156146075750858301515b600019600386901b1c1916600185901b178555611559565b600085815260208120601f198616915b8281101561464e5788860151825594840194600190910190840161462f565b508582101561466c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600061ffff808816835280871660208401525084604083015260806060830152613bd460808301848661440c565b61ffff861681526080602082015260006146c860808301868861440c565b67ffffffffffffffff94909416604083015250606001529392505050565b600082198211156146f9576146f96142e0565b500190565b67ffffffffffffffff83111561471657614716613e71565b61472a83614724835461429c565b83614576565b6000601f84116001811461475e57600085156147465750838201355b600019600387901b1c1916600186901b178355610dcd565b600083815260209020601f19861690835b8281101561478f578685013582556020948501946001909201910161476f565b50868210156147ac5760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b6000602082840312156147d057600080fd5b815167ffffffffffffffff8111156147e757600080fd5b8201601f810184136147f857600080fd5b8051614806613f3982613eb8565b81815285602083850101111561481b57600080fd5b6127aa826020830160208601613fac565b61ffff851681526080602082015260006148496080830186613fd8565b67ffffffffffffffff851660408401528281036060840152613bd48185613fd8565b6000825161487d818460208701613fac565b9190910192915050565b61ffff8616815260a0602082015260006148a460a0830187613fd8565b67ffffffffffffffff8616604084015282810360608401526148c68186613fd8565b905082810360808401526148da8185613fd8565b98975050505050505050565b6000602082840312156148f857600080fd5b815160ff81168114612f7957600080fd5b634e487b7160e01b600052602160045260246000fd5b60008261493c57634e487b7160e01b600052601260045260246000fd5b500490565b600081600019048311821515161561495b5761495b6142e0565b500290565b60006020828403121561497257600080fd5b8151612f7981613f81565b634e487b7160e01b600052603260045260246000fd5b61ffff8716815260c0602082015260006149b060c0830188613fd8565b82810360408401526149c28188613fd8565b6001600160a01b0387811660608601528616608085015283810360a0850152905061449a8185613fd856fea26469706673582212207e627899a6ccdd0f8de8e25cd4ab72f6102844709371ea2bdb3c25b0c444336f64736f6c634300080f003300000000000000000000000066a71dcef29a0ffbdbe3c6a460a3b5bc225cd675000000000000000000000000000000000000000000000000000000000000006c
Smart Contracts contract page background

Checkout more smart contracts

    Ethereum  logo

    AnyswapV4Router

    Verified

    The following smart contract is the

    0x6b7a87899490ece95443e979ca9485cbe7e71522
    Copied
    • Verified
    • Multichain
    • Bridge
    Ethereum  logo

    TokenBridge

    Explore the source code, ABI, and bytecode for the TokenBridge smart contract.

    0x50002cdfe7ccb0c41f519c6eb0653158d11cd907
    Copied
    • Bridge
    • Layer 2
    Ethereum  logo

    ERC20PredicateProxy

    Verified

    This contract is a proxy and the implementation details are not yet known.

    0x40ec5b33f54e0e8a33a975908c5ba1c14e5bbbdf
    Copied
    • Verified
    • Polygon (Matic)
    • Bridge
    • Proxy
Section background image

Build blockchain magic

Alchemy combines the most powerful web3 developer products and tools with resources, community and legendary support.

Get your API key