Sepolia Testnet

Contract

0x43c3f0D0A1a52f98a33e606d3D0e949eCE335ea9
Sponsored: Advertise across our explorers and boost your visibility. Book your slot here! 
Source Code Source Code

Overview

ETH Balance

0 ETH

More Info

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Amount

There are no matching entries

Please try again later

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading
Loading...
Loading

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

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

Contract Name

lnBTC

Compiler Version
v0.8.24+commit.e11b9ed9
Optimization Enabled
Yes with 200 runs
Other Settings
paris EvmVersion
License
-NA-
Contract Source Code (Solidity Standard Json-Input format)
Contract ABI
API
[{"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":[],"name":"EnforcedPause","type":"error"},{"inputs":[],"name":"ExpectedPause","type":"error"},{"inputs":[],"name":"InvalidInitialization","type":"error"},{"inputs":[],"name":"NotInitializing","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","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":"uint64","name":"version","type":"uint64"}],"name":"Initialized","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"},{"indexed":false,"internalType":"bytes32","name":"_btcDepositId","type":"bytes32"}],"name":"MintBtcEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":false,"internalType":"string","name":"_BTCAddress","type":"string"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_id","type":"uint256"}],"name":"RedeemBtcEvent","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":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[{"internalType":"bytes1","name":"char","type":"bytes1"}],"name":"BECH32_ALPHABET_MAP","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DUST_LIMIT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"BTCAddress","type":"bytes"}],"name":"alphabetCheck","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"name":"btcDepositIds","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bytes","name":"one","type":"bytes"},{"internalType":"bytes","name":"two","type":"bytes"}],"name":"equalBytes","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"enum BitcoinUtils.Network","name":"network","type":"uint8"}],"name":"getBtcBase58_P2PKH","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"enum BitcoinUtils.Network","name":"network","type":"uint8"}],"name":"getBtcBase58_P2SH","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"enum BitcoinUtils.Network","name":"network","type":"uint8"}],"name":"getBtcBech32Prefix","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function"},{"inputs":[{"components":[{"internalType":"bytes32","name":"btcDepositId","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct MintInvoice","name":"invoice","type":"tuple"}],"name":"getMintInvoiceHash","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"enum BitcoinUtils.Network","name":"_network","type":"uint8"},{"internalType":"contract ValidatorRegistry","name":"_validatorRegistry","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract ValidatorRegistry","name":"_validatorRegistry","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"minWithdrawAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"address","name":"_recipient","type":"address"},{"internalType":"bytes32","name":"_btcDepositId","type":"bytes32"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"components":[{"internalType":"bytes32","name":"btcDepositId","type":"bytes32"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"internalType":"struct MintInvoice","name":"invoice","type":"tuple"},{"internalType":"bytes","name":"signature","type":"bytes"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"_amounts","type":"uint256[]"},{"internalType":"address[]","name":"_recipients","type":"address[]"}],"name":"mintBatchMinterOnly","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"minter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"network","outputs":[{"internalType":"enum BitcoinUtils.Network","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"pre","type":"uint256"}],"name":"polymodStep","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bytes","name":"prefix","type":"bytes"}],"name":"prefixChk","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"string","name":"BTCAddress","type":"string"}],"name":"redeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"redeemCounter","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minWithdrawAmount","type":"uint256"}],"name":"setMinWithdrawAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes32[]","name":"_btcDepositIds","type":"bytes32[]"}],"name":"setMintedInvoiceBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_minter","type":"address"}],"name":"setMinter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"btcAddress","type":"string"}],"name":"validateBase58Checksum","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"btcAddress","type":"string"}],"name":"validateBech32Checksum","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"enum BitcoinUtils.Network","name":"network","type":"uint8"},{"internalType":"string","name":"BTCAddress","type":"string"}],"name":"validateBitcoinAddress","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"validatorRegistry","outputs":[{"internalType":"contract ValidatorRegistry","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"px","type":"uint256"},{"internalType":"uint256","name":"rx","type":"uint256"},{"internalType":"uint256","name":"s","type":"uint256"},{"internalType":"bytes32","name":"m","type":"bytes32"}],"name":"verify","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"pure","type":"function"}]
608060405234801561001057600080fd5b506144ab806100206000396000f3fe608060405234801561001057600080fd5b50600436106102745760003560e01c806370a0823111610151578063a9059cbb116100c3578063d9ab380111610087578063d9ab3801146105b5578063dd62ed3e146105c8578063e07fbd00146105db578063f2fde38b146105ee578063f376ebbb14610601578063fca3b5aa1461061457600080fd5b8063a9059cbb14610556578063af7b817014610569578063c4d66de81461057c578063d354c65d1461058f578063d3b6d7f5146105a257600080fd5b80638456cb59116101155780638456cb59146104e75780638da5cb5b146104ef57806395d89b411461051f5780639647ea37146105275780639fd956871461053a578063a7ce45651461054d57600080fd5b806370a0823114610470578063715018a6146104a6578063780f8df3146104ae5780637b8d3cb4146104c157806380cf79c8146104d457600080fd5b8063313ce567116101ea5780634ae1d1e5116101ae5780634ae1d1e5146103eb5780634cac70ff146103fe5780635187599d146104115780635abdb0dc146104245780635c975abb146104375780636739afca1461044f57600080fd5b8063313ce567146103a95780633d003000146103be5780633f4ba83a146103d157806342193473146103d9578063457e1a49146103e257600080fd5b80630b2aeb6c1161023c5780630b2aeb6c146103175780630fde6e551461032a57806318160ddd1461033d57806323b872dd1461036e57806324b76fd5146103815780633082599e1461039657600080fd5b8063026034f01461027957806306fdde03146102b157806307546172146102c6578063095ea7b3146102f15780630b2a158514610304575b600080fd5b61029c6102873660046139e0565b60046020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6102b9610627565b6040516102a89190613a49565b6003546102d9906001600160a01b031681565b6040516001600160a01b0390911681526020016102a8565b61029c6102ff366004613a71565b6106ea565b6102b9610312366004613aac565b610704565b61029c610325366004613b08565b6107f1565b61029c610338366004613b5a565b610ad0565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02545b6040519081526020016102a8565b61029c61037c366004613b8c565b610c38565b61039461038f366004613bcd565b610c5c565b005b6102b96103a4366004613aac565b610db2565b60085b60405160ff90911681526020016102a8565b6103946103cc366004613c43565b610e56565b610394610f5a565b61036061022281565b61036060015481565b6103946103f9366004613cae565b610f6c565b61029c61040c366004613d9a565b610fcc565b61039461041f366004613dfd565b611054565b6103946104323660046139e0565b611202565b60008051602061441c8339815191525460ff1661029c565b60005461046390600160a01b900460ff1681565b6040516102a89190613e68565b61036061047e366004613e7b565b6001600160a01b031660009081526000805160206143fc833981519152602052604090205490565b610394611287565b6103946104bc366004613e98565b611299565b6103ac6104cf366004613ebf565b6112d6565b6103606104e23660046139e0565b6116bb565b61039461177b565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b03166102d9565b6102b961178b565b61029c610535366004613ee9565b6117ca565b610394610548366004613f36565b611d00565b61036060025481565b61029c610564366004613a71565b611e71565b61029c610577366004613f70565b611e7f565b61039461058a366004613e7b565b611eda565b61029c61059d366004613fa4565b611f0d565b6103606105b0366004613f70565b61253e565b6102b96105c3366004613aac565b612628565b6103606105d6366004613fec565b6126d4565b6103606105e936600461400a565b61271e565b6103946105fc366004613e7b565b612778565b6000546102d9906001600160a01b031681565b610394610622366004613e7b565b6127b6565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0380546060916000805160206143fc8339815191529161066690614026565b80601f016020809104026020016040519081016040528092919081815260200182805461069290614026565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b505050505091505090565b6000336106f88185856127e0565b60019150505b92915050565b6060600082600281111561071a5761071a613e34565b0361073c5750506040805180820190915260018152603360f81b602082015290565b600282600281111561075057610750613e34565b036107725750506040805180820190915260018152606d60f81b602082015290565b600182600281111561078657610786613e34565b036107a85750506040805180820190915260018152606d60f81b602082015290565b60405162461bcd60e51b8152602060048201526014602482015273556e6b6e6f776e206e6574776f726b207479706560601b60448201526064015b60405180910390fd5b919050565b6000606061083684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250610fcc915050565b15610845576000915050610ac9565b610877604051806040016040528060118152602001700a7261772061646472657373206461746160781b8152506127ed565b6108b684848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061283092505050565b60006108c186610db2565b905060006108ce87610704565b905061091d6108e160016000888a61405a565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610fcc915050565b80610970575061097061093460016000888a61405a565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250610fcc915050565b156109f057601a8510806109845750602385115b806109cb57506109c986868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e7f92505050565b155b156109dc5760009350505050610ac9565b6109e686866117ca565b9350505050610ac9565b60006109fb88612628565b8051909150610a1190610934906000898b61405a565b15610ac0576002886002811115610a2a57610a2a613e34565b03610a5557602b861080610a3e5750603f86115b15610a50576000945050505050610ac9565b610a76565b602a861080610a645750603e86115b15610a76576000945050505050610ac9565b610ab587878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611f0d92505050565b945050505050610ac9565b60009450505050505b9392505050565b60006401000003d01985101580610aed57506401000003d0198410155b80610b0a575070014551231950b75fc4402da1732fc9bebe198310155b15610b1757506000610c30565b600080610b2386612873565b9150915080610b3757600092505050610c30565b6000610b448789876128ce565b9050600070014551231950b75fc4402da1732fc9bebe19898809610b7a9070014551231950b75fc4402da1732fc9bebe196140b0565b9050600070014551231950b75fc4402da1732fc9bebe198a8409610bb09070014551231950b75fc4402da1732fc9bebe196140b0565b60408051600080825260208201808452869052601b92820192909252606081018d9052608081018390529192509060019060a0016020604051602081039080840390855afa158015610c06573d6000803e3d6000fd5b505050602060405103519050856001600160a01b0316816001600160a01b03161496505050505050505b949350505050565b600033610c468582856129a0565b610c51858585612a06565b506001949350505050565b610c64612a65565b600154831015610cdc5760405162461bcd60e51b815260206004820152603e60248201527f5468652073656e742076616c7565206d7573742062652067726561746572206f60448201527f7220657175616c20746f206d696e20776974686472617720616d6f756e74000060648201526084016107e3565b600054610cf490600160a01b900460ff1683836107f1565b610d4a5760405162461bcd60e51b815260206004820152602160248201527f5468652073656e74204254432061646472657373206973206e6f742076616c696044820152601960fa1b60648201526084016107e3565b610d543384612a96565b600160026000828254610d6791906140c3565b909155505060025460405133917f83c16822c691a011b471d2653b84faff158a050c4e117390a6c008ecdefcc14e91610da5918691869189916140ff565b60405180910390a2505050565b60606000826002811115610dc857610dc8613e34565b03610dea5750506040805180820190915260018152603160f81b602082015290565b6002826002811115610dfe57610dfe613e34565b03610e205750506040805180820190915260018152601960f91b602082015290565b6001826002811115610e3457610e34613e34565b036107a85750506040805180820190915260018152601960f91b602082015290565b610e5e612a65565b6003546001600160a01b03163314610e885760405162461bcd60e51b81526004016107e390614126565b828114610ed75760405162461bcd60e51b815260206004820152601d60248201527f6c6e4254433a20617272617973206c656e677468206d69736d6174636800000060448201526064016107e3565b60005b83811015610f5357848482818110610ef457610ef4614168565b9050602002013560000315610f4b57610f4b838383818110610f1857610f18614168565b9050602002016020810190610f2d9190613e7b565b868684818110610f3f57610f3f614168565b90506020020135612ad0565b600101610eda565b5050505050565b610f62612b06565b610f6a612b61565b565b610f74612b06565b60005b81811015610fc757600160046000858585818110610f9757610f97614168565b60209081029290920135835250810191909152604001600020805460ff1916911515919091179055600101610f77565b505050565b60008151835114610fdf575060006106fe565b60005b835181101561104a57828181518110610ffd57610ffd614168565b602001015160f81c60f81b6001600160f81b03191684828151811061102457611024614168565b01602001516001600160f81b031916146110425760009150506106fe565b600101610fe2565b5060019392505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b03166000811580156110995750825b90506000826001600160401b031660011480156110b55750303b155b9050811580156110c3575080155b156110e15760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561110b57845460ff60401b1916600160401b1785555b6111586040518060400160405280600e81526020016d29ba3937b7b6902134ba31b7b4b760911b81525060405180604001604052806005815260200164737442544360d81b815250612bc1565b611160612bd3565b61116986611eda565b6107d060015560006002818155815489929160ff60a01b1990911690600160a01b90849081111561119c5761119c613e34565b0217905550600380546001600160a01b0319163317905583156111f957845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b61120a612b06565b6102228110156112825760405162461bcd60e51b815260206004820152603c60248201527f4d696e20776974686472617720616d6f756e742073686f756c6420626520677260448201527f6561746572206f7220657175616c20746f2064757374206c696d69740000000060648201526084016107e3565b600155565b61128f612b06565b610f6a6000612be3565b6112a1612a65565b6003546001600160a01b031633146112cb5760405162461bcd60e51b81526004016107e390614126565b610fc7838383612c54565b6000600d60fc1b6001600160f81b03198316016112f55750600f919050565b606760f91b6001600160f81b03198316016113125750600a919050565b60cd60f81b6001600160f81b031983160161132f57506011919050565b603360fa1b6001600160f81b031983160161134c57506015919050565b60cb60f81b6001600160f81b031983160161136957506014919050565b606560f91b6001600160f81b03198316016113865750601a919050565b601960fb1b6001600160f81b03198316016113a357506007919050565b60c960f81b6001600160f81b03198316016113c05750601e919050565b60c760f81b6001600160f81b03198316016113dd57506005919050565b608f60f81b6001600160f81b03198316016113fa57506000919050565b600960fc1b6001600160f81b031983160161141757506001919050565b604360f91b6001600160f81b031983160161143457506002919050565b604760f91b6001600160f81b031983160161145157506003919050565b608760f81b6001600160f81b031983160161146e57506004919050565b601160fb1b6001600160f81b031983160161148b57506006919050565b609960f81b6001600160f81b03198316016114a857506008919050565b604d60f91b6001600160f81b03198316016114c557506009919050565b602360fa1b6001600160f81b03198316016114e25750600b919050565b604560f91b6001600160f81b03198316016114ff5750600c919050565b602760fa1b6001600160f81b031983160161151c5750600d919050565b608960f81b6001600160f81b03198316016115395750600e919050565b608d60f81b6001600160f81b031983160161155657506010919050565b604b60f91b6001600160f81b031983160161157357506012919050565b604960f91b6001600160f81b031983160161159057506013919050565b609560f81b6001600160f81b03198316016115ad57506016919050565b601360fb1b6001600160f81b03198316016115ca57506017919050565b609d60f81b6001600160f81b03198316016115e757506018919050565b609b60f81b6001600160f81b031983160161160457506019919050565b609360f81b6001600160f81b03198316016116215750601b919050565b608b60f81b6001600160f81b031983160161163e5750601c919050565b609f60f81b6001600160f81b031983160161165b5750601d919050565b602560fa1b6001600160f81b03198316016116785750601f919050565b6116aa6040518060400160405280601181526020017024b73b30b634b21031b430b930b1ba32b960791b8152506127ed565b6116b382612e01565b5060ff919050565b6000601982901c6001601d84901c8116146116d75760006116dd565b632a1462b35b63ffffffff16600382901c6001166001146116f95760006116ff565b633d4233dd5b63ffffffff16600283901c60011660011461171b576000611721565b631ea119fa5b63ffffffff16600184811c81161461173a576000611740565b6326508e6d5b63ffffffff1660018086161461175757600061175d565b633b6a57b25b63ffffffff166005886301ffffff16901b1818181818915050919050565b611783612b06565b610f6a612e4a565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0480546060916000805160206143fc8339815191529161066690614026565b60008061180c84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612e9392505050565b90506118456040518060400160405280601681526020017576616c6964617465426173653538436865636b73756d60501b8152506127ed565b61186d604051806040016040528060078152602001661c185e5b1bd85960ca1b8152506127ed565b61187681612830565b80516019146118895760009150506106fe565b604080516001808252818301909252600091602082018180368337019050509050816000815181106118bd576118bd614168565b602001015160f81c60f81b816000815181106118db576118db614168565b60200101906001600160f81b031916908160001a90535061191a604051806040016040528060078152602001663b32b939b4b7b760c91b8152506127ed565b61192381612830565b600060046001845161193591906140b0565b61193f91906140b0565b6001600160401b0381111561195657611956613cef565b6040519080825280601f01601f191660200182016040528015611980576020820181803683370190505b50905060005b60046001855161199691906140b0565b6119a091906140b0565b8110156119ff57836119b38260016140c3565b815181106119c3576119c3614168565b602001015160f81c60f81b8282815181106119e0576119e0614168565b60200101906001600160f81b031916908160001a905350600101611986565b50611a28604051806040016040528060078152602001661c185e5b1bd85960ca1b8152506127ed565b611a3181612830565b8051601414611a4657600093505050506106fe565b60408051600480825281830190925260009160208201818036833701905050905060005b6004811015611ad957848160048751611a8391906140b0565b611a8d91906140c3565b81518110611a9d57611a9d614168565b602001015160f81c60f81b828281518110611aba57611aba614168565b60200101906001600160f81b031916908160001a905350600101611a6a565b50611b0360405180604001604052806008815260200167636865636b73756d60c01b8152506127ed565b611b0c81612830565b60006002808585604051602001611b2492919061417e565b60408051601f1981840301815290829052611b3e916141ad565b602060405180830381855afa158015611b5b573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190611b7e91906141c9565b604051602001611b9091815260200190565b60408051601f1981840301815290829052611baa916141ad565b602060405180830381855afa158015611bc7573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190611bea91906141c9565b9050611c206040518060400160405280601381526020017263616c63756c6174656420636865636b73756d60681b8152506127ed565b611c2981612e9e565b8060031a60f81b82600381518110611c4357611c43614168565b01602001516001600160f81b031916188160021a60f81b83600281518110611c6d57611c6d614168565b01602001516001600160f81b031916188260011a60f81b84600181518110611c9757611c97614168565b01602001516001600160f81b031916188360001a60f81b85600081518110611cc157611cc1614168565b602001015160f81c60f81b181717176001600160f81b031916600060f81b14611cf2576000955050505050506106fe565b506001979650505050505050565b611d08612a65565b6000611d1384612ee3565b6000546040516372ee4c8760e01b8152859185916001600160a01b039091169063f9a8bc489082906372ee4c8790611d5190899089906004016141e2565b602060405180830381865afa158015611d6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d9291906141c9565b84846040518463ffffffff1660e01b8152600401611db293929190614204565b602060405180830381865afa158015611dcf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df3919061421e565b611e535760405162461bcd60e51b815260206004820152602b60248201527f56616c696461746f724d65737361676552656365697665723a20494e56414c4960448201526a445f5349474e415455524560a81b60648201526084016107e3565b6111f960408801803590611e6a9060208b01613e7b565b8935612c54565b6000336106f8818585612a06565b6000805b8251811015611ed1576000838281518110611ea057611ea0614168565b016020015160f81c90506000611eb582612f3b565b905080611ec757506000949350505050565b5050600101611e83565b50600192915050565b611ee2612fe4565b611eeb3361302d565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000611f4d6040518060400160405280601981526020017f0a76616c69646174652062656368333220636865636b73756d000000000000008152506127ed565b611f75604051806040016040528060078152602001666164647265737360c81b8152506127ed565b611f7e826127ed565b8151829060081115611fbd57611fb4604051806040016040528060098152602001681d1bdbc81cda1bdc9d60ba1b8152506127ed565b50600092915050565b605a81511115611ff057611fb460405180604001604052806008815260200167746f6f206c6f6e6760c01b8152506127ed565b50816000805b825181101561203a5782818151811061201157612011614168565b01602001516001600160f81b031916603160f81b036120325780915061203a565b600101611ff6565b508060000361207a576120706040518060400160405280600c81526020016b37379039b2b830b930ba37b960a11b8152506127ed565b5060009392505050565b806001036120b1576120706040518060400160405280600e81526020016d0dad2e6e6d2dcce40e0e4caccd2f60931b8152506127ed565b6000816001600160401b038111156120cb576120cb613cef565b6040519080825280601f01601f1916602001820160405280156120f5576020820181803683370190505b5090506000600183855161210991906140b0565b61211391906140b0565b6001600160401b0381111561212a5761212a613cef565b6040519080825280601f01601f191660200182016040528015612154576020820181803683370190505b50905060005b838110156121b05784818151811061217457612174614168565b602001015160f81c60f81b83828151811061219157612191614168565b60200101906001600160f81b031916908160001a90535060010161215a565b5060005b815181101561221f57846121c885836140c3565b6121d39060016140c3565b815181106121e3576121e3614168565b602001015160f81c60f81b82828151811061220057612200614168565b60200101906001600160f81b031916908160001a9053506001016121b4565b50612247604051806040016040528060068152602001650e0e4caccd2f60d31b8152506127ed565b61225082612830565b600681511015612295576122896040518060400160405280600e81526020016d19185d18481d1bdbc81cda1bdc9d60921b8152506127ed565b50600095945050505050565b60006122a08361253e565b9050806000036122e6576122d96040518060400160405280600e81526020016d0d2dcecc2d8d2c840e0e4caccd2f60931b8152506127ed565b5060009695505050505050565b600082516001600160401b0381111561230157612301613cef565b6040519080825280601f01601f19166020018201604052801561232b576020820181803683370190505b50905060005b835181101561248457600084828151811061234e5761234e614168565b01602001516001600160f81b0319169050600061236a826112d6565b905060fe1960ff821601612422576123aa604051806040016040528060118152602001703ab735b737bbb71031b430b930b1ba32b960791b8152506127ed565b6123b38361303e565b6123bc82612e01565b6124116040518060400160405280600481526020016331b430b960e11b815250836040516020016123fd91906001600160f81b031991909116815260010190565b604051602081830303815290604052613083565b5060009a9950505050505050505050565b8060ff1661242f866116bb565b8751911895506124408460066140c3565b1061244c57505061247c565b8060f81b84848151811061246257612462614168565b60200101906001600160f81b031916908160001a90535050505b600101612331565b506124ab60405180604001604052806005815260200164776f72647360d81b8152506127ed565b6124b481612830565b632bc830a382141580156124c9575081600114155b1561250e576125006040518060400160405280601081526020016f696e76616c696420636865636b73756d60801b815250836130c8565b506000979650505050505050565b611cf26040518060400160405280600e81526020016d76616c696420636865636b73756d60901b815250836130c8565b60006001815b83518110156125d257600084828151811061256157612561614168565b016020015160f81c9050602181108061257a5750607e81115b156125b85760405162461bcd60e51b815260206004820152600e60248201526d092dcecc2d8d2c840e0e4caccd2f60931b60448201526064016107e3565b600581901c6125c6846116bb565b18925050600101612544565b506125dc816116bb565b905060005b83518110156126215760008482815181106125fe576125fe614168565b016020015160f81c9050601f8116612615846116bb565b189250506001016125e1565b5092915050565b6060600082600281111561263e5761263e613e34565b0361266257505060408051808201909152600381526262633160e81b602082015290565b600282600281111561267657612676613e34565b0361269c575050604080518082019091526005815264626372743160d81b602082015290565b60018260028111156126b0576126b0613e34565b036107a857505060408051808201909152600381526274623160e81b602082015290565b6001600160a01b0391821660009081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace016020908152604080832093909416825291909152205490565b60007f7d21eae75cdfb1cf6d27ca9a73c6341b49bc05072228b51a7cd4df444c1c871061274a83612ee3565b60405160200161275b929190614240565b604051602081830303815290604052805190602001209050919050565b612780612b06565b6001600160a01b0381166127aa57604051631e4fbdf760e01b8152600060048201526024016107e3565b6127b381612be3565b50565b6127be612b06565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b610fc7838383600161310d565b6127b3816040516024016128019190613a49565b60408051601f198184030181529190526020810180516001600160e01b031663104c13eb60e21b1790526131f4565b6127b3816040516024016128449190613a49565b60408051601f198184030181529190526020810180516001600160e01b03166305f3bfab60e11b1790526131f4565b60008060008061288285613215565b9150915080612898575060009485945092505050565b50604080516020808201969096528082019290925280518083038201815260609092019052805193019290922092600192509050565b604080517f7bb52d7a9fef58323eb1bf7a407db382d2f3f2d81bb1224f49fe518f6d48d37c60208201819052918101829052606081018590526080810184905260a081018390526000919070014551231950b75fc4402da1732fc9bebe199060029060c00160408051601f198184030181529082905261294d916141ad565b602060405180830381855afa15801561296a573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061298d91906141c9565b6129979190614266565b95945050505050565b60006129ac84846126d4565b90506000198114612a0057818110156129f157604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016107e3565b612a008484848403600061310d565b50505050565b6001600160a01b038316612a3057604051634b637e8f60e11b8152600060048201526024016107e3565b6001600160a01b038216612a5a5760405163ec442f0560e01b8152600060048201526024016107e3565b610fc78383836132da565b60008051602061441c8339815191525460ff1615610f6a5760405163d93c066560e01b815260040160405180910390fd5b6001600160a01b038216612ac057604051634b637e8f60e11b8152600060048201526024016107e3565b612acc826000836132da565b5050565b6001600160a01b038216612afa5760405163ec442f0560e01b8152600060048201526024016107e3565b612acc600083836132da565b33612b387f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6001600160a01b031614610f6a5760405163118cdaa760e01b81523360048201526024016107e3565b612b69613418565b60008051602061441c833981519152805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a150565b612bc9612fe4565b612acc8282613448565b612bdb612fe4565b610f6a613499565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60008311612c975760405162461bcd60e51b815260206004820152601060248201526f4d494e545f414d4f554e545f5a45524f60801b60448201526064016107e3565b612ca96305f5e1006301406f4061427a565b8310612ced5760405162461bcd60e51b81526020600482015260136024820152724d494e545f414d4f554e545f544f4f5f42494760681b60448201526064016107e3565b306001600160a01b03831603612d455760405162461bcd60e51b815260206004820152601c60248201527f4d494e545f544f5f5448455f434f4e54524143545f414444524553530000000060448201526064016107e3565b60008181526004602052604090205460ff1615612d9d5760405162461bcd60e51b81526020600482015260166024820152751352539517d053149150511657d41493d0d154d4d15160521b60448201526064016107e3565b6000818152600460205260409020805460ff19166001179055612dc08284612ad0565b60408051848152602081018390526001600160a01b038416917fb73f3e96d1e157f064cb3a8d0abed06bcec05e5515bf7486364c027dab6aa4699101610da5565b6040516001600160f81b0319821660248201526127b39060440160408051601f198184030181529190526020810180516001600160e01b0316630dc3142560e31b1790526131f4565b612e52612a65565b60008051602061441c833981519152805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833612ba3565b60606106fe826134ba565b6127b381604051602401612eb491815260200190565b60408051601f198184030181529190526020810180516001600160e01b03166327b7cf8560e01b1790526131f4565b6060612ef56040830160208401613e7b565b6040805160609290921b6bffffffffffffffffffffffff191660208301528301356034820152823560548201526074016040516020818303038152906040529050919050565b60008160ff1660491480612f5257508160ff16604f145b80612f6057508160ff16606c145b15612f6d57506000919050565b60318260ff1610158015612f85575060398260ff1611155b15612f9257506001919050565b60418260ff1610158015612faa5750605a8260ff1611155b15612fb757506001919050565b60618260ff1610158015612fcf5750607a8260ff1611155b15612fdc57506001919050565b506000919050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16610f6a57604051631afcd79f60e31b815260040160405180910390fd5b613035612fe4565b6127b381613804565b6127b38160405160240161305491815260200190565b60408051601f198184030181529190526020810180516001600160e01b031663f5b1bba960e01b1790526131f4565b612acc8282604051602401613099929190614291565b60408051601f198184030181529190526020810180516001600160e01b0316634b5c427760e01b1790526131f4565b612acc82826040516024016130de9291906142b6565b60408051601f198184030181529190526020810180516001600160e01b03166309710a9d60e41b1790526131f4565b6000805160206143fc8339815191526001600160a01b0385166131465760405163e602df0560e01b8152600060048201526024016107e3565b6001600160a01b03841661317057604051634a1406b160e11b8152600060048201526024016107e3565b6001600160a01b03808616600090815260018301602090815260408083209388168352929052208390558115610f5357836001600160a01b0316856001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040516131e591815260200190565b60405180910390a35050505050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b6000806401000003d01981600782861061323757506000958695509350505050565b6000838061324757613247614084565b848061325557613255614084565b83868061326457613264614084565b868b0908858061327657613276614084565b868061328457613284614084565b8a8b098a090890506132ad81600461329d8760016140c3565b6132a791906142d8565b8661380c565b9050600060018216156132c9576132c482866140b0565b6132cb565b815b98600198509650505050505050565b6000805160206143fc8339815191526001600160a01b038416613316578181600201600082825461330b91906140c3565b909155506133889050565b6001600160a01b038416600090815260208290526040902054828110156133695760405163391434e360e21b81526001600160a01b038616600482015260248101829052604481018490526064016107e3565b6001600160a01b03851660009081526020839052604090209083900390555b6001600160a01b0383166133a65760028101805483900390556133c5565b6001600160a01b03831660009081526020829052604090208054830190555b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161340a91815260200190565b60405180910390a350505050565b60008051602061441c8339815191525460ff16610f6a57604051638dfc202b60e01b815260040160405180910390fd5b613450612fe4565b6000805160206143fc8339815191527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0361348a848261433c565b5060048101612a00838261433c565b6134a1612fe4565b60008051602061441c833981519152805460ff19169055565b80516060906031906000805b82811080156134ed5750838682815181106134e3576134e3614168565b016020015160f81c145b156134fe57600191820191016134c6565b5060008080806117e361209f8702046001016002026001600160401b0381111561352a5761352a613cef565b6040519080825280601f01601f191660200182016040528015613554576020820181803683370190505b5090506000600460038801046001600160401b0381111561357757613577613cef565b6040519080825280602002602001820160405280156135a0578160200160208202803683370190505b50905060005b8a518110156136c25760008b82815181106135c3576135c3614168565b602001015160f81c60f81b90506135f26040518060600160405280603a815260200161443c603a9139826138d5565b90965094508461363b5760405162461bcd60e51b81526020600482015260146024820152731a5b9d985b1a590818985cd94d4e08191a59da5d60621b60448201526064016107e3565b8251600019015b600081126136b8578684828151811061365d5761365d614168565b602002602001015163ffffffff16603a026001600160401b0316019750602088901c96508763ffffffff1684828151811061369a5761369a614168565b63ffffffff9092166020928302919091019091015260001901613642565b50506001016135a6565b50600860038816026001600160401b0381166000036136df575060205b600719016000805b8351811015613789575b6020836001600160401b0316101561377d57826001600160401b031684828151811061371f5761371f614168565b602002602001015163ffffffff16901c60f81b85838151811061374457613744614168565b60200101906001600160f81b031916908160001a90535060019091019060086001600160401b0384161061377d576008830392506136f1565b601892506001016136e7565b50875b84518110156137e757600060f81b8582815181106137ac576137ac614168565b01602001516001600160f81b03191611156137df576137ce858a830384613938565b9d9c50505050505050505050505050565b60010161378c565b506137f484600083613938565b9c9b505050505050505050505050565b612780612fe4565b6000816000036138505760405162461bcd60e51b815260206004820152600f60248201526e4d6f64756c7573206973207a65726f60881b60448201526064016107e3565b8360000361386057506000610ac9565b8260000361387057506001610ac9565b6001600160ff1b5b80156138cc57838186161515870a85848509099150836002820486161515870a85848509099150836004820486161515870a85848509099150836008820486161515870a8584850909915060109004613878565b50949350505050565b60008060005b845181101561392857836001600160f81b03191685828151811061390157613901614168565b01602001516001600160f81b0319160361392057915060019050613931565b6001016138db565b50600080915091505b9250929050565b606060008383036001600160401b0381111561395657613956613cef565b6040519080825280601f01601f191660200182016040528015613980576020820181803683370190505b50905060005b8484038110156138cc5785858201815181106139a4576139a4614168565b602001015160f81c60f81b8282815181106139c1576139c1614168565b60200101906001600160f81b031916908160001a905350600101613986565b6000602082840312156139f257600080fd5b5035919050565b60005b83811015613a145781810151838201526020016139fc565b50506000910152565b60008151808452613a358160208601602086016139f9565b601f01601f19169290920160200192915050565b602081526000610ac96020830184613a1d565b6001600160a01b03811681146127b357600080fd5b60008060408385031215613a8457600080fd5b8235613a8f81613a5c565b946020939093013593505050565b8035600381106107ec57600080fd5b600060208284031215613abe57600080fd5b610ac982613a9d565b60008083601f840112613ad957600080fd5b5081356001600160401b03811115613af057600080fd5b60208301915083602082850101111561393157600080fd5b600080600060408486031215613b1d57600080fd5b613b2684613a9d565b925060208401356001600160401b03811115613b4157600080fd5b613b4d86828701613ac7565b9497909650939450505050565b60008060008060808587031215613b7057600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060608486031215613ba157600080fd5b8335613bac81613a5c565b92506020840135613bbc81613a5c565b929592945050506040919091013590565b600080600060408486031215613be257600080fd5b8335925060208401356001600160401b03811115613b4157600080fd5b60008083601f840112613c1157600080fd5b5081356001600160401b03811115613c2857600080fd5b6020830191508360208260051b850101111561393157600080fd5b60008060008060408587031215613c5957600080fd5b84356001600160401b0380821115613c7057600080fd5b613c7c88838901613bff565b90965094506020870135915080821115613c9557600080fd5b50613ca287828801613bff565b95989497509550505050565b60008060208385031215613cc157600080fd5b82356001600160401b03811115613cd757600080fd5b613ce385828601613bff565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115613d1f57613d1f613cef565b604051601f8501601f19908116603f01168101908282118183101715613d4757613d47613cef565b81604052809350858152868686011115613d6057600080fd5b858560208301376000602087830101525050509392505050565b600082601f830112613d8b57600080fd5b610ac983833560208501613d05565b60008060408385031215613dad57600080fd5b82356001600160401b0380821115613dc457600080fd5b613dd086838701613d7a565b93506020850135915080821115613de657600080fd5b50613df385828601613d7a565b9150509250929050565b60008060408385031215613e1057600080fd5b613e1983613a9d565b91506020830135613e2981613a5c565b809150509250929050565b634e487b7160e01b600052602160045260246000fd5b600381106127b357634e487b7160e01b600052602160045260246000fd5b60208101613e7583613e4a565b91905290565b600060208284031215613e8d57600080fd5b8135610ac981613a5c565b600080600060608486031215613ead57600080fd5b833592506020840135613bbc81613a5c565b600060208284031215613ed157600080fd5b81356001600160f81b031981168114610ac957600080fd5b60008060208385031215613efc57600080fd5b82356001600160401b03811115613f1257600080fd5b613ce385828601613ac7565b600060608284031215613f3057600080fd5b50919050565b600080600060808486031215613f4b57600080fd5b613f558585613f1e565b925060608401356001600160401b03811115613b4157600080fd5b600060208284031215613f8257600080fd5b81356001600160401b03811115613f9857600080fd5b610c3084828501613d7a565b600060208284031215613fb657600080fd5b81356001600160401b03811115613fcc57600080fd5b8201601f81018413613fdd57600080fd5b610c3084823560208401613d05565b60008060408385031215613fff57600080fd5b8235613e1981613a5c565b60006060828403121561401c57600080fd5b610ac98383613f1e565b600181811c9082168061403a57607f821691505b602082108103613f3057634e487b7160e01b600052602260045260246000fd5b6000808585111561406a57600080fd5b8386111561407757600080fd5b5050820193919092039150565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156106fe576106fe61409a565b808201808211156106fe576106fe61409a565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6060815260006141136060830186886140d6565b6020830194909452506040015292915050565b60208082526022908201527f6c6e4254433a206f6e6c79206d696e74657220616c6c6f77656420746f206d696040820152611b9d60f21b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600083516141908184602088016139f9565b8351908301906141a48183602088016139f9565b01949350505050565b600082516141bf8184602087016139f9565b9190910192915050565b6000602082840312156141db57600080fd5b5051919050565b6141eb83613e4a565b828152604060208201526000610c306040830184613a1d565b8381526040602082015260006129976040830184866140d6565b60006020828403121561423057600080fd5b81518015158114610ac957600080fd5b828152600082516142588160208501602087016139f9565b919091016020019392505050565b60008261427557614275614084565b500690565b80820281158282048414176106fe576106fe61409a565b6040815260006142a46040830185613a1d565b82810360208401526129978185613a1d565b6040815260006142c96040830185613a1d565b90508260208301529392505050565b6000826142e7576142e7614084565b500490565b601f821115610fc7576000816000526020600020601f850160051c810160208610156143155750805b601f850160051c820191505b8181101561433457828155600101614321565b505050505050565b81516001600160401b0381111561435557614355613cef565b614369816143638454614026565b846142ec565b602080601f83116001811461439e57600084156143865750858301515b600019600386901b1c1916600185901b178555614334565b600085815260208120601f198616915b828110156143cd578886015182559484019460019091019084016143ae565b50858210156143eb5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330031323334353637383941424344454647484a4b4c4d4e505152535455565758595a6162636465666768696a6b6d6e6f707172737475767778797aa2646970667358221220444377d4d939bf4858dcea5516961daedd304474e0c4090136a8ef9d29f98ce064736f6c63430008180033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106102745760003560e01c806370a0823111610151578063a9059cbb116100c3578063d9ab380111610087578063d9ab3801146105b5578063dd62ed3e146105c8578063e07fbd00146105db578063f2fde38b146105ee578063f376ebbb14610601578063fca3b5aa1461061457600080fd5b8063a9059cbb14610556578063af7b817014610569578063c4d66de81461057c578063d354c65d1461058f578063d3b6d7f5146105a257600080fd5b80638456cb59116101155780638456cb59146104e75780638da5cb5b146104ef57806395d89b411461051f5780639647ea37146105275780639fd956871461053a578063a7ce45651461054d57600080fd5b806370a0823114610470578063715018a6146104a6578063780f8df3146104ae5780637b8d3cb4146104c157806380cf79c8146104d457600080fd5b8063313ce567116101ea5780634ae1d1e5116101ae5780634ae1d1e5146103eb5780634cac70ff146103fe5780635187599d146104115780635abdb0dc146104245780635c975abb146104375780636739afca1461044f57600080fd5b8063313ce567146103a95780633d003000146103be5780633f4ba83a146103d157806342193473146103d9578063457e1a49146103e257600080fd5b80630b2aeb6c1161023c5780630b2aeb6c146103175780630fde6e551461032a57806318160ddd1461033d57806323b872dd1461036e57806324b76fd5146103815780633082599e1461039657600080fd5b8063026034f01461027957806306fdde03146102b157806307546172146102c6578063095ea7b3146102f15780630b2a158514610304575b600080fd5b61029c6102873660046139e0565b60046020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6102b9610627565b6040516102a89190613a49565b6003546102d9906001600160a01b031681565b6040516001600160a01b0390911681526020016102a8565b61029c6102ff366004613a71565b6106ea565b6102b9610312366004613aac565b610704565b61029c610325366004613b08565b6107f1565b61029c610338366004613b5a565b610ad0565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace02545b6040519081526020016102a8565b61029c61037c366004613b8c565b610c38565b61039461038f366004613bcd565b610c5c565b005b6102b96103a4366004613aac565b610db2565b60085b60405160ff90911681526020016102a8565b6103946103cc366004613c43565b610e56565b610394610f5a565b61036061022281565b61036060015481565b6103946103f9366004613cae565b610f6c565b61029c61040c366004613d9a565b610fcc565b61039461041f366004613dfd565b611054565b6103946104323660046139e0565b611202565b60008051602061441c8339815191525460ff1661029c565b60005461046390600160a01b900460ff1681565b6040516102a89190613e68565b61036061047e366004613e7b565b6001600160a01b031660009081526000805160206143fc833981519152602052604090205490565b610394611287565b6103946104bc366004613e98565b611299565b6103ac6104cf366004613ebf565b6112d6565b6103606104e23660046139e0565b6116bb565b61039461177b565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b03166102d9565b6102b961178b565b61029c610535366004613ee9565b6117ca565b610394610548366004613f36565b611d00565b61036060025481565b61029c610564366004613a71565b611e71565b61029c610577366004613f70565b611e7f565b61039461058a366004613e7b565b611eda565b61029c61059d366004613fa4565b611f0d565b6103606105b0366004613f70565b61253e565b6102b96105c3366004613aac565b612628565b6103606105d6366004613fec565b6126d4565b6103606105e936600461400a565b61271e565b6103946105fc366004613e7b565b612778565b6000546102d9906001600160a01b031681565b610394610622366004613e7b565b6127b6565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0380546060916000805160206143fc8339815191529161066690614026565b80601f016020809104026020016040519081016040528092919081815260200182805461069290614026565b80156106df5780601f106106b4576101008083540402835291602001916106df565b820191906000526020600020905b8154815290600101906020018083116106c257829003601f168201915b505050505091505090565b6000336106f88185856127e0565b60019150505b92915050565b6060600082600281111561071a5761071a613e34565b0361073c5750506040805180820190915260018152603360f81b602082015290565b600282600281111561075057610750613e34565b036107725750506040805180820190915260018152606d60f81b602082015290565b600182600281111561078657610786613e34565b036107a85750506040805180820190915260018152606d60f81b602082015290565b60405162461bcd60e51b8152602060048201526014602482015273556e6b6e6f776e206e6574776f726b207479706560601b60448201526064015b60405180910390fd5b919050565b6000606061083684848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250610fcc915050565b15610845576000915050610ac9565b610877604051806040016040528060118152602001700a7261772061646472657373206461746160781b8152506127ed565b6108b684848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061283092505050565b60006108c186610db2565b905060006108ce87610704565b905061091d6108e160016000888a61405a565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250869250610fcc915050565b80610970575061097061093460016000888a61405a565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250859250610fcc915050565b156109f057601a8510806109845750602385115b806109cb57506109c986868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611e7f92505050565b155b156109dc5760009350505050610ac9565b6109e686866117ca565b9350505050610ac9565b60006109fb88612628565b8051909150610a1190610934906000898b61405a565b15610ac0576002886002811115610a2a57610a2a613e34565b03610a5557602b861080610a3e5750603f86115b15610a50576000945050505050610ac9565b610a76565b602a861080610a645750603e86115b15610a76576000945050505050610ac9565b610ab587878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611f0d92505050565b945050505050610ac9565b60009450505050505b9392505050565b60006401000003d01985101580610aed57506401000003d0198410155b80610b0a575070014551231950b75fc4402da1732fc9bebe198310155b15610b1757506000610c30565b600080610b2386612873565b9150915080610b3757600092505050610c30565b6000610b448789876128ce565b9050600070014551231950b75fc4402da1732fc9bebe19898809610b7a9070014551231950b75fc4402da1732fc9bebe196140b0565b9050600070014551231950b75fc4402da1732fc9bebe198a8409610bb09070014551231950b75fc4402da1732fc9bebe196140b0565b60408051600080825260208201808452869052601b92820192909252606081018d9052608081018390529192509060019060a0016020604051602081039080840390855afa158015610c06573d6000803e3d6000fd5b505050602060405103519050856001600160a01b0316816001600160a01b03161496505050505050505b949350505050565b600033610c468582856129a0565b610c51858585612a06565b506001949350505050565b610c64612a65565b600154831015610cdc5760405162461bcd60e51b815260206004820152603e60248201527f5468652073656e742076616c7565206d7573742062652067726561746572206f60448201527f7220657175616c20746f206d696e20776974686472617720616d6f756e74000060648201526084016107e3565b600054610cf490600160a01b900460ff1683836107f1565b610d4a5760405162461bcd60e51b815260206004820152602160248201527f5468652073656e74204254432061646472657373206973206e6f742076616c696044820152601960fa1b60648201526084016107e3565b610d543384612a96565b600160026000828254610d6791906140c3565b909155505060025460405133917f83c16822c691a011b471d2653b84faff158a050c4e117390a6c008ecdefcc14e91610da5918691869189916140ff565b60405180910390a2505050565b60606000826002811115610dc857610dc8613e34565b03610dea5750506040805180820190915260018152603160f81b602082015290565b6002826002811115610dfe57610dfe613e34565b03610e205750506040805180820190915260018152601960f91b602082015290565b6001826002811115610e3457610e34613e34565b036107a85750506040805180820190915260018152601960f91b602082015290565b610e5e612a65565b6003546001600160a01b03163314610e885760405162461bcd60e51b81526004016107e390614126565b828114610ed75760405162461bcd60e51b815260206004820152601d60248201527f6c6e4254433a20617272617973206c656e677468206d69736d6174636800000060448201526064016107e3565b60005b83811015610f5357848482818110610ef457610ef4614168565b9050602002013560000315610f4b57610f4b838383818110610f1857610f18614168565b9050602002016020810190610f2d9190613e7b565b868684818110610f3f57610f3f614168565b90506020020135612ad0565b600101610eda565b5050505050565b610f62612b06565b610f6a612b61565b565b610f74612b06565b60005b81811015610fc757600160046000858585818110610f9757610f97614168565b60209081029290920135835250810191909152604001600020805460ff1916911515919091179055600101610f77565b505050565b60008151835114610fdf575060006106fe565b60005b835181101561104a57828181518110610ffd57610ffd614168565b602001015160f81c60f81b6001600160f81b03191684828151811061102457611024614168565b01602001516001600160f81b031916146110425760009150506106fe565b600101610fe2565b5060019392505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b03166000811580156110995750825b90506000826001600160401b031660011480156110b55750303b155b9050811580156110c3575080155b156110e15760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561110b57845460ff60401b1916600160401b1785555b6111586040518060400160405280600e81526020016d29ba3937b7b6902134ba31b7b4b760911b81525060405180604001604052806005815260200164737442544360d81b815250612bc1565b611160612bd3565b61116986611eda565b6107d060015560006002818155815489929160ff60a01b1990911690600160a01b90849081111561119c5761119c613e34565b0217905550600380546001600160a01b0319163317905583156111f957845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b61120a612b06565b6102228110156112825760405162461bcd60e51b815260206004820152603c60248201527f4d696e20776974686472617720616d6f756e742073686f756c6420626520677260448201527f6561746572206f7220657175616c20746f2064757374206c696d69740000000060648201526084016107e3565b600155565b61128f612b06565b610f6a6000612be3565b6112a1612a65565b6003546001600160a01b031633146112cb5760405162461bcd60e51b81526004016107e390614126565b610fc7838383612c54565b6000600d60fc1b6001600160f81b03198316016112f55750600f919050565b606760f91b6001600160f81b03198316016113125750600a919050565b60cd60f81b6001600160f81b031983160161132f57506011919050565b603360fa1b6001600160f81b031983160161134c57506015919050565b60cb60f81b6001600160f81b031983160161136957506014919050565b606560f91b6001600160f81b03198316016113865750601a919050565b601960fb1b6001600160f81b03198316016113a357506007919050565b60c960f81b6001600160f81b03198316016113c05750601e919050565b60c760f81b6001600160f81b03198316016113dd57506005919050565b608f60f81b6001600160f81b03198316016113fa57506000919050565b600960fc1b6001600160f81b031983160161141757506001919050565b604360f91b6001600160f81b031983160161143457506002919050565b604760f91b6001600160f81b031983160161145157506003919050565b608760f81b6001600160f81b031983160161146e57506004919050565b601160fb1b6001600160f81b031983160161148b57506006919050565b609960f81b6001600160f81b03198316016114a857506008919050565b604d60f91b6001600160f81b03198316016114c557506009919050565b602360fa1b6001600160f81b03198316016114e25750600b919050565b604560f91b6001600160f81b03198316016114ff5750600c919050565b602760fa1b6001600160f81b031983160161151c5750600d919050565b608960f81b6001600160f81b03198316016115395750600e919050565b608d60f81b6001600160f81b031983160161155657506010919050565b604b60f91b6001600160f81b031983160161157357506012919050565b604960f91b6001600160f81b031983160161159057506013919050565b609560f81b6001600160f81b03198316016115ad57506016919050565b601360fb1b6001600160f81b03198316016115ca57506017919050565b609d60f81b6001600160f81b03198316016115e757506018919050565b609b60f81b6001600160f81b031983160161160457506019919050565b609360f81b6001600160f81b03198316016116215750601b919050565b608b60f81b6001600160f81b031983160161163e5750601c919050565b609f60f81b6001600160f81b031983160161165b5750601d919050565b602560fa1b6001600160f81b03198316016116785750601f919050565b6116aa6040518060400160405280601181526020017024b73b30b634b21031b430b930b1ba32b960791b8152506127ed565b6116b382612e01565b5060ff919050565b6000601982901c6001601d84901c8116146116d75760006116dd565b632a1462b35b63ffffffff16600382901c6001166001146116f95760006116ff565b633d4233dd5b63ffffffff16600283901c60011660011461171b576000611721565b631ea119fa5b63ffffffff16600184811c81161461173a576000611740565b6326508e6d5b63ffffffff1660018086161461175757600061175d565b633b6a57b25b63ffffffff166005886301ffffff16901b1818181818915050919050565b611783612b06565b610f6a612e4a565b7f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0480546060916000805160206143fc8339815191529161066690614026565b60008061180c84848080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250612e9392505050565b90506118456040518060400160405280601681526020017576616c6964617465426173653538436865636b73756d60501b8152506127ed565b61186d604051806040016040528060078152602001661c185e5b1bd85960ca1b8152506127ed565b61187681612830565b80516019146118895760009150506106fe565b604080516001808252818301909252600091602082018180368337019050509050816000815181106118bd576118bd614168565b602001015160f81c60f81b816000815181106118db576118db614168565b60200101906001600160f81b031916908160001a90535061191a604051806040016040528060078152602001663b32b939b4b7b760c91b8152506127ed565b61192381612830565b600060046001845161193591906140b0565b61193f91906140b0565b6001600160401b0381111561195657611956613cef565b6040519080825280601f01601f191660200182016040528015611980576020820181803683370190505b50905060005b60046001855161199691906140b0565b6119a091906140b0565b8110156119ff57836119b38260016140c3565b815181106119c3576119c3614168565b602001015160f81c60f81b8282815181106119e0576119e0614168565b60200101906001600160f81b031916908160001a905350600101611986565b50611a28604051806040016040528060078152602001661c185e5b1bd85960ca1b8152506127ed565b611a3181612830565b8051601414611a4657600093505050506106fe565b60408051600480825281830190925260009160208201818036833701905050905060005b6004811015611ad957848160048751611a8391906140b0565b611a8d91906140c3565b81518110611a9d57611a9d614168565b602001015160f81c60f81b828281518110611aba57611aba614168565b60200101906001600160f81b031916908160001a905350600101611a6a565b50611b0360405180604001604052806008815260200167636865636b73756d60c01b8152506127ed565b611b0c81612830565b60006002808585604051602001611b2492919061417e565b60408051601f1981840301815290829052611b3e916141ad565b602060405180830381855afa158015611b5b573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190611b7e91906141c9565b604051602001611b9091815260200190565b60408051601f1981840301815290829052611baa916141ad565b602060405180830381855afa158015611bc7573d6000803e3d6000fd5b5050506040513d601f19601f82011682018060405250810190611bea91906141c9565b9050611c206040518060400160405280601381526020017263616c63756c6174656420636865636b73756d60681b8152506127ed565b611c2981612e9e565b8060031a60f81b82600381518110611c4357611c43614168565b01602001516001600160f81b031916188160021a60f81b83600281518110611c6d57611c6d614168565b01602001516001600160f81b031916188260011a60f81b84600181518110611c9757611c97614168565b01602001516001600160f81b031916188360001a60f81b85600081518110611cc157611cc1614168565b602001015160f81c60f81b181717176001600160f81b031916600060f81b14611cf2576000955050505050506106fe565b506001979650505050505050565b611d08612a65565b6000611d1384612ee3565b6000546040516372ee4c8760e01b8152859185916001600160a01b039091169063f9a8bc489082906372ee4c8790611d5190899089906004016141e2565b602060405180830381865afa158015611d6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d9291906141c9565b84846040518463ffffffff1660e01b8152600401611db293929190614204565b602060405180830381865afa158015611dcf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df3919061421e565b611e535760405162461bcd60e51b815260206004820152602b60248201527f56616c696461746f724d65737361676552656365697665723a20494e56414c4960448201526a445f5349474e415455524560a81b60648201526084016107e3565b6111f960408801803590611e6a9060208b01613e7b565b8935612c54565b6000336106f8818585612a06565b6000805b8251811015611ed1576000838281518110611ea057611ea0614168565b016020015160f81c90506000611eb582612f3b565b905080611ec757506000949350505050565b5050600101611e83565b50600192915050565b611ee2612fe4565b611eeb3361302d565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000611f4d6040518060400160405280601981526020017f0a76616c69646174652062656368333220636865636b73756d000000000000008152506127ed565b611f75604051806040016040528060078152602001666164647265737360c81b8152506127ed565b611f7e826127ed565b8151829060081115611fbd57611fb4604051806040016040528060098152602001681d1bdbc81cda1bdc9d60ba1b8152506127ed565b50600092915050565b605a81511115611ff057611fb460405180604001604052806008815260200167746f6f206c6f6e6760c01b8152506127ed565b50816000805b825181101561203a5782818151811061201157612011614168565b01602001516001600160f81b031916603160f81b036120325780915061203a565b600101611ff6565b508060000361207a576120706040518060400160405280600c81526020016b37379039b2b830b930ba37b960a11b8152506127ed565b5060009392505050565b806001036120b1576120706040518060400160405280600e81526020016d0dad2e6e6d2dcce40e0e4caccd2f60931b8152506127ed565b6000816001600160401b038111156120cb576120cb613cef565b6040519080825280601f01601f1916602001820160405280156120f5576020820181803683370190505b5090506000600183855161210991906140b0565b61211391906140b0565b6001600160401b0381111561212a5761212a613cef565b6040519080825280601f01601f191660200182016040528015612154576020820181803683370190505b50905060005b838110156121b05784818151811061217457612174614168565b602001015160f81c60f81b83828151811061219157612191614168565b60200101906001600160f81b031916908160001a90535060010161215a565b5060005b815181101561221f57846121c885836140c3565b6121d39060016140c3565b815181106121e3576121e3614168565b602001015160f81c60f81b82828151811061220057612200614168565b60200101906001600160f81b031916908160001a9053506001016121b4565b50612247604051806040016040528060068152602001650e0e4caccd2f60d31b8152506127ed565b61225082612830565b600681511015612295576122896040518060400160405280600e81526020016d19185d18481d1bdbc81cda1bdc9d60921b8152506127ed565b50600095945050505050565b60006122a08361253e565b9050806000036122e6576122d96040518060400160405280600e81526020016d0d2dcecc2d8d2c840e0e4caccd2f60931b8152506127ed565b5060009695505050505050565b600082516001600160401b0381111561230157612301613cef565b6040519080825280601f01601f19166020018201604052801561232b576020820181803683370190505b50905060005b835181101561248457600084828151811061234e5761234e614168565b01602001516001600160f81b0319169050600061236a826112d6565b905060fe1960ff821601612422576123aa604051806040016040528060118152602001703ab735b737bbb71031b430b930b1ba32b960791b8152506127ed565b6123b38361303e565b6123bc82612e01565b6124116040518060400160405280600481526020016331b430b960e11b815250836040516020016123fd91906001600160f81b031991909116815260010190565b604051602081830303815290604052613083565b5060009a9950505050505050505050565b8060ff1661242f866116bb565b8751911895506124408460066140c3565b1061244c57505061247c565b8060f81b84848151811061246257612462614168565b60200101906001600160f81b031916908160001a90535050505b600101612331565b506124ab60405180604001604052806005815260200164776f72647360d81b8152506127ed565b6124b481612830565b632bc830a382141580156124c9575081600114155b1561250e576125006040518060400160405280601081526020016f696e76616c696420636865636b73756d60801b815250836130c8565b506000979650505050505050565b611cf26040518060400160405280600e81526020016d76616c696420636865636b73756d60901b815250836130c8565b60006001815b83518110156125d257600084828151811061256157612561614168565b016020015160f81c9050602181108061257a5750607e81115b156125b85760405162461bcd60e51b815260206004820152600e60248201526d092dcecc2d8d2c840e0e4caccd2f60931b60448201526064016107e3565b600581901c6125c6846116bb565b18925050600101612544565b506125dc816116bb565b905060005b83518110156126215760008482815181106125fe576125fe614168565b016020015160f81c9050601f8116612615846116bb565b189250506001016125e1565b5092915050565b6060600082600281111561263e5761263e613e34565b0361266257505060408051808201909152600381526262633160e81b602082015290565b600282600281111561267657612676613e34565b0361269c575050604080518082019091526005815264626372743160d81b602082015290565b60018260028111156126b0576126b0613e34565b036107a857505060408051808201909152600381526274623160e81b602082015290565b6001600160a01b0391821660009081527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace016020908152604080832093909416825291909152205490565b60007f7d21eae75cdfb1cf6d27ca9a73c6341b49bc05072228b51a7cd4df444c1c871061274a83612ee3565b60405160200161275b929190614240565b604051602081830303815290604052805190602001209050919050565b612780612b06565b6001600160a01b0381166127aa57604051631e4fbdf760e01b8152600060048201526024016107e3565b6127b381612be3565b50565b6127be612b06565b600380546001600160a01b0319166001600160a01b0392909216919091179055565b610fc7838383600161310d565b6127b3816040516024016128019190613a49565b60408051601f198184030181529190526020810180516001600160e01b031663104c13eb60e21b1790526131f4565b6127b3816040516024016128449190613a49565b60408051601f198184030181529190526020810180516001600160e01b03166305f3bfab60e11b1790526131f4565b60008060008061288285613215565b9150915080612898575060009485945092505050565b50604080516020808201969096528082019290925280518083038201815260609092019052805193019290922092600192509050565b604080517f7bb52d7a9fef58323eb1bf7a407db382d2f3f2d81bb1224f49fe518f6d48d37c60208201819052918101829052606081018590526080810184905260a081018390526000919070014551231950b75fc4402da1732fc9bebe199060029060c00160408051601f198184030181529082905261294d916141ad565b602060405180830381855afa15801561296a573d6000803e3d6000fd5b5050506040513d601f19601f8201168201806040525081019061298d91906141c9565b6129979190614266565b95945050505050565b60006129ac84846126d4565b90506000198114612a0057818110156129f157604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064016107e3565b612a008484848403600061310d565b50505050565b6001600160a01b038316612a3057604051634b637e8f60e11b8152600060048201526024016107e3565b6001600160a01b038216612a5a5760405163ec442f0560e01b8152600060048201526024016107e3565b610fc78383836132da565b60008051602061441c8339815191525460ff1615610f6a5760405163d93c066560e01b815260040160405180910390fd5b6001600160a01b038216612ac057604051634b637e8f60e11b8152600060048201526024016107e3565b612acc826000836132da565b5050565b6001600160a01b038216612afa5760405163ec442f0560e01b8152600060048201526024016107e3565b612acc600083836132da565b33612b387f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c199300546001600160a01b031690565b6001600160a01b031614610f6a5760405163118cdaa760e01b81523360048201526024016107e3565b612b69613418565b60008051602061441c833981519152805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a150565b612bc9612fe4565b612acc8282613448565b612bdb612fe4565b610f6a613499565b7f9016d09d72d40fdae2fd8ceac6b6234c7706214fd39c1cd1e609a0528c19930080546001600160a01b031981166001600160a01b03848116918217845560405192169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60008311612c975760405162461bcd60e51b815260206004820152601060248201526f4d494e545f414d4f554e545f5a45524f60801b60448201526064016107e3565b612ca96305f5e1006301406f4061427a565b8310612ced5760405162461bcd60e51b81526020600482015260136024820152724d494e545f414d4f554e545f544f4f5f42494760681b60448201526064016107e3565b306001600160a01b03831603612d455760405162461bcd60e51b815260206004820152601c60248201527f4d494e545f544f5f5448455f434f4e54524143545f414444524553530000000060448201526064016107e3565b60008181526004602052604090205460ff1615612d9d5760405162461bcd60e51b81526020600482015260166024820152751352539517d053149150511657d41493d0d154d4d15160521b60448201526064016107e3565b6000818152600460205260409020805460ff19166001179055612dc08284612ad0565b60408051848152602081018390526001600160a01b038416917fb73f3e96d1e157f064cb3a8d0abed06bcec05e5515bf7486364c027dab6aa4699101610da5565b6040516001600160f81b0319821660248201526127b39060440160408051601f198184030181529190526020810180516001600160e01b0316630dc3142560e31b1790526131f4565b612e52612a65565b60008051602061441c833981519152805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833612ba3565b60606106fe826134ba565b6127b381604051602401612eb491815260200190565b60408051601f198184030181529190526020810180516001600160e01b03166327b7cf8560e01b1790526131f4565b6060612ef56040830160208401613e7b565b6040805160609290921b6bffffffffffffffffffffffff191660208301528301356034820152823560548201526074016040516020818303038152906040529050919050565b60008160ff1660491480612f5257508160ff16604f145b80612f6057508160ff16606c145b15612f6d57506000919050565b60318260ff1610158015612f85575060398260ff1611155b15612f9257506001919050565b60418260ff1610158015612faa5750605a8260ff1611155b15612fb757506001919050565b60618260ff1610158015612fcf5750607a8260ff1611155b15612fdc57506001919050565b506000919050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff16610f6a57604051631afcd79f60e31b815260040160405180910390fd5b613035612fe4565b6127b381613804565b6127b38160405160240161305491815260200190565b60408051601f198184030181529190526020810180516001600160e01b031663f5b1bba960e01b1790526131f4565b612acc8282604051602401613099929190614291565b60408051601f198184030181529190526020810180516001600160e01b0316634b5c427760e01b1790526131f4565b612acc82826040516024016130de9291906142b6565b60408051601f198184030181529190526020810180516001600160e01b03166309710a9d60e41b1790526131f4565b6000805160206143fc8339815191526001600160a01b0385166131465760405163e602df0560e01b8152600060048201526024016107e3565b6001600160a01b03841661317057604051634a1406b160e11b8152600060048201526024016107e3565b6001600160a01b03808616600090815260018301602090815260408083209388168352929052208390558115610f5357836001600160a01b0316856001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925856040516131e591815260200190565b60405180910390a35050505050565b80516a636f6e736f6c652e6c6f67602083016000808483855afa5050505050565b6000806401000003d01981600782861061323757506000958695509350505050565b6000838061324757613247614084565b848061325557613255614084565b83868061326457613264614084565b868b0908858061327657613276614084565b868061328457613284614084565b8a8b098a090890506132ad81600461329d8760016140c3565b6132a791906142d8565b8661380c565b9050600060018216156132c9576132c482866140b0565b6132cb565b815b98600198509650505050505050565b6000805160206143fc8339815191526001600160a01b038416613316578181600201600082825461330b91906140c3565b909155506133889050565b6001600160a01b038416600090815260208290526040902054828110156133695760405163391434e360e21b81526001600160a01b038616600482015260248101829052604481018490526064016107e3565b6001600160a01b03851660009081526020839052604090209083900390555b6001600160a01b0383166133a65760028101805483900390556133c5565b6001600160a01b03831660009081526020829052604090208054830190555b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161340a91815260200190565b60405180910390a350505050565b60008051602061441c8339815191525460ff16610f6a57604051638dfc202b60e01b815260040160405180910390fd5b613450612fe4565b6000805160206143fc8339815191527f52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace0361348a848261433c565b5060048101612a00838261433c565b6134a1612fe4565b60008051602061441c833981519152805460ff19169055565b80516060906031906000805b82811080156134ed5750838682815181106134e3576134e3614168565b016020015160f81c145b156134fe57600191820191016134c6565b5060008080806117e361209f8702046001016002026001600160401b0381111561352a5761352a613cef565b6040519080825280601f01601f191660200182016040528015613554576020820181803683370190505b5090506000600460038801046001600160401b0381111561357757613577613cef565b6040519080825280602002602001820160405280156135a0578160200160208202803683370190505b50905060005b8a518110156136c25760008b82815181106135c3576135c3614168565b602001015160f81c60f81b90506135f26040518060600160405280603a815260200161443c603a9139826138d5565b90965094508461363b5760405162461bcd60e51b81526020600482015260146024820152731a5b9d985b1a590818985cd94d4e08191a59da5d60621b60448201526064016107e3565b8251600019015b600081126136b8578684828151811061365d5761365d614168565b602002602001015163ffffffff16603a026001600160401b0316019750602088901c96508763ffffffff1684828151811061369a5761369a614168565b63ffffffff9092166020928302919091019091015260001901613642565b50506001016135a6565b50600860038816026001600160401b0381166000036136df575060205b600719016000805b8351811015613789575b6020836001600160401b0316101561377d57826001600160401b031684828151811061371f5761371f614168565b602002602001015163ffffffff16901c60f81b85838151811061374457613744614168565b60200101906001600160f81b031916908160001a90535060019091019060086001600160401b0384161061377d576008830392506136f1565b601892506001016136e7565b50875b84518110156137e757600060f81b8582815181106137ac576137ac614168565b01602001516001600160f81b03191611156137df576137ce858a830384613938565b9d9c50505050505050505050505050565b60010161378c565b506137f484600083613938565b9c9b505050505050505050505050565b612780612fe4565b6000816000036138505760405162461bcd60e51b815260206004820152600f60248201526e4d6f64756c7573206973207a65726f60881b60448201526064016107e3565b8360000361386057506000610ac9565b8260000361387057506001610ac9565b6001600160ff1b5b80156138cc57838186161515870a85848509099150836002820486161515870a85848509099150836004820486161515870a85848509099150836008820486161515870a8584850909915060109004613878565b50949350505050565b60008060005b845181101561392857836001600160f81b03191685828151811061390157613901614168565b01602001516001600160f81b0319160361392057915060019050613931565b6001016138db565b50600080915091505b9250929050565b606060008383036001600160401b0381111561395657613956613cef565b6040519080825280601f01601f191660200182016040528015613980576020820181803683370190505b50905060005b8484038110156138cc5785858201815181106139a4576139a4614168565b602001015160f81c60f81b8282815181106139c1576139c1614168565b60200101906001600160f81b031916908160001a905350600101613986565b6000602082840312156139f257600080fd5b5035919050565b60005b83811015613a145781810151838201526020016139fc565b50506000910152565b60008151808452613a358160208601602086016139f9565b601f01601f19169290920160200192915050565b602081526000610ac96020830184613a1d565b6001600160a01b03811681146127b357600080fd5b60008060408385031215613a8457600080fd5b8235613a8f81613a5c565b946020939093013593505050565b8035600381106107ec57600080fd5b600060208284031215613abe57600080fd5b610ac982613a9d565b60008083601f840112613ad957600080fd5b5081356001600160401b03811115613af057600080fd5b60208301915083602082850101111561393157600080fd5b600080600060408486031215613b1d57600080fd5b613b2684613a9d565b925060208401356001600160401b03811115613b4157600080fd5b613b4d86828701613ac7565b9497909650939450505050565b60008060008060808587031215613b7057600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060608486031215613ba157600080fd5b8335613bac81613a5c565b92506020840135613bbc81613a5c565b929592945050506040919091013590565b600080600060408486031215613be257600080fd5b8335925060208401356001600160401b03811115613b4157600080fd5b60008083601f840112613c1157600080fd5b5081356001600160401b03811115613c2857600080fd5b6020830191508360208260051b850101111561393157600080fd5b60008060008060408587031215613c5957600080fd5b84356001600160401b0380821115613c7057600080fd5b613c7c88838901613bff565b90965094506020870135915080821115613c9557600080fd5b50613ca287828801613bff565b95989497509550505050565b60008060208385031215613cc157600080fd5b82356001600160401b03811115613cd757600080fd5b613ce385828601613bff565b90969095509350505050565b634e487b7160e01b600052604160045260246000fd5b60006001600160401b0380841115613d1f57613d1f613cef565b604051601f8501601f19908116603f01168101908282118183101715613d4757613d47613cef565b81604052809350858152868686011115613d6057600080fd5b858560208301376000602087830101525050509392505050565b600082601f830112613d8b57600080fd5b610ac983833560208501613d05565b60008060408385031215613dad57600080fd5b82356001600160401b0380821115613dc457600080fd5b613dd086838701613d7a565b93506020850135915080821115613de657600080fd5b50613df385828601613d7a565b9150509250929050565b60008060408385031215613e1057600080fd5b613e1983613a9d565b91506020830135613e2981613a5c565b809150509250929050565b634e487b7160e01b600052602160045260246000fd5b600381106127b357634e487b7160e01b600052602160045260246000fd5b60208101613e7583613e4a565b91905290565b600060208284031215613e8d57600080fd5b8135610ac981613a5c565b600080600060608486031215613ead57600080fd5b833592506020840135613bbc81613a5c565b600060208284031215613ed157600080fd5b81356001600160f81b031981168114610ac957600080fd5b60008060208385031215613efc57600080fd5b82356001600160401b03811115613f1257600080fd5b613ce385828601613ac7565b600060608284031215613f3057600080fd5b50919050565b600080600060808486031215613f4b57600080fd5b613f558585613f1e565b925060608401356001600160401b03811115613b4157600080fd5b600060208284031215613f8257600080fd5b81356001600160401b03811115613f9857600080fd5b610c3084828501613d7a565b600060208284031215613fb657600080fd5b81356001600160401b03811115613fcc57600080fd5b8201601f81018413613fdd57600080fd5b610c3084823560208401613d05565b60008060408385031215613fff57600080fd5b8235613e1981613a5c565b60006060828403121561401c57600080fd5b610ac98383613f1e565b600181811c9082168061403a57607f821691505b602082108103613f3057634e487b7160e01b600052602260045260246000fd5b6000808585111561406a57600080fd5b8386111561407757600080fd5b5050820193919092039150565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b818103818111156106fe576106fe61409a565b808201808211156106fe576106fe61409a565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b6060815260006141136060830186886140d6565b6020830194909452506040015292915050565b60208082526022908201527f6c6e4254433a206f6e6c79206d696e74657220616c6c6f77656420746f206d696040820152611b9d60f21b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b600083516141908184602088016139f9565b8351908301906141a48183602088016139f9565b01949350505050565b600082516141bf8184602087016139f9565b9190910192915050565b6000602082840312156141db57600080fd5b5051919050565b6141eb83613e4a565b828152604060208201526000610c306040830184613a1d565b8381526040602082015260006129976040830184866140d6565b60006020828403121561423057600080fd5b81518015158114610ac957600080fd5b828152600082516142588160208501602087016139f9565b919091016020019392505050565b60008261427557614275614084565b500690565b80820281158282048414176106fe576106fe61409a565b6040815260006142a46040830185613a1d565b82810360208401526129978185613a1d565b6040815260006142c96040830185613a1d565b90508260208301529392505050565b6000826142e7576142e7614084565b500490565b601f821115610fc7576000816000526020600020601f850160051c810160208610156143155750805b601f850160051c820191505b8181101561433457828155600101614321565b505050505050565b81516001600160401b0381111561435557614355613cef565b614369816143638454614026565b846142ec565b602080601f83116001811461439e57600084156143865750858301515b600019600386901b1c1916600185901b178555614334565b600085815260208120601f198616915b828110156143cd578886015182559484019460019091019084016143ae565b50858210156143eb5787850151600019600388901b60f8161c191681555b5050505050600190811b0190555056fe52c63247e1f47db19d5ce0460030c497f067ca4cebf71ba98eeadabe20bace00cd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f0330031323334353637383941424344454647484a4b4c4d4e505152535455565758595a6162636465666768696a6b6d6e6f707172737475767778797aa2646970667358221220444377d4d939bf4858dcea5516961daedd304474e0c4090136a8ef9d29f98ce064736f6c63430008180033
Custom Contract ABI

                            

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
0x43c3f0D0A1a52f98a33e606d3D0e949eCE335ea9
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.