VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0xBAC2ad…fBF6
Summary
Transactions
Transfers
Address
0xBAC2ad23f3F2c781c08abE44a645F7409F4efBF6
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x30B76A6862A190c24506CDefF93e46Ff61D978C9
Deployer
0x30B76A6862A190c24506CDefF93e46Ff61D978C9
Code
0x608060405234801561001057600080fd5b506004361061038e5760003560e01c806370a08231116101de578063a22cb4651161010f578063d5abeb01116100ad578063efaec9181161007c578063efaec9181461081f578063f2fde38b14610832578063f48cc32614610845578063f9ff78f41461085857600080fd5b8063d5abeb01146107b5578063e602db67146107bd578063e6113cfa146107d0578063e985e9c5146107e357600080fd5b8063c3cda520116100e9578063c3cda52014610755578063c87b56dd14610768578063d53913931461077b578063d547741f146107a257600080fd5b8063a22cb46514610727578063aa1b103f1461073a578063b88d4fde1461074257600080fd5b80638da5cb5b1161017c57806391ddadf41161015657806391ddadf4146106e557806395d89b41146107045780639ab24eb01461070c578063a217fddf1461071f57600080fd5b80638da5cb5b146106835780638e539e8c1461069957806391d14854146106ac57600080fd5b80637ecebe00116101b85780637ecebe001461063a5780638456cb591461064d57806384b0196e146106555780638a616bc01461067057600080fd5b806370a082311461060c578063715018a61461061f578063799161d51461062757600080fd5b80633644e515116102c35780634e71d92d116102615780635c19a95c116102305780635c19a95c146105bb5780635c975abb146105ce5780636108375f146105d95780636352211e146105f957600080fd5b80634e71d92d146105615780634f6ccce714610569578063587cde1e1461057c5780635944c753146105a857600080fd5b80633f4ba83a1161029d5780633f4ba83a1461052b57806342842e0e1461053357806342966c68146105465780634bf5d7e91461055957600080fd5b80633644e515146104fd57806336568abe146105055780633a46b1a81461051857600080fd5b806323b872dd11610330578063282c51f31161030a578063282c51f31461047e5780632a55205a146104a55780632f2ff15d146104d75780632f745c59146104ea57600080fd5b806323b872dd14610435578063248a9ca31461044857806324b76fd51461046b57600080fd5b8063081812fc1161036c578063081812fc146103e5578063095ea7b314610410578063180b0d7e146103ce57806318160ddd1461042357600080fd5b806301ffc9a71461039357806302fe5305146103bb57806306fdde03146103d0575b600080fd5b6103a66103a1366004614f16565b61086b565b60405190151581526020015b60405180910390f35b6103ce6103c9366004614ff2565b61087c565b005b6103d861089b565b6040516103b2919061507f565b6103f86103f3366004615092565b61092d565b6040516001600160a01b0390911681526020016103b2565b6103ce61041e3660046150c7565b610954565b6008545b6040519081526020016103b2565b6103ce6104433660046150f1565b610a90565b610427610456366004615092565b6000908152600b602052604090206001015490565b6103ce61047936600461512d565b610b07565b6104277f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b6104b86104b3366004615174565b610d5d565b604080516001600160a01b0390931683526020830191909152016103b2565b6103ce6104e5366004615196565b610e18565b6104276104f83660046150c7565b610e3d565b610427610ee5565b6103ce610513366004615196565b610ef4565b6104276105263660046150c7565b610f7c565b6103ce611016565b6103ce6105413660046150f1565b6110e4565b6103ce610554366004615092565b6110ff565b6103d86112df565b6103ce611377565b610427610577366004615092565b611584565b6103f861058a3660046151c2565b6001600160a01b039081166000908152600e60205260409020541690565b6103ce6105b63660046151dd565b611628565b6103ce6105c93660046151c2565b61163b565b600a5460ff166103a6565b6105ec6105e7366004615092565b611646565b6040516103b2919061522e565b6103f8610607366004615092565b61171f565b61042761061a3660046151c2565b611784565b6103ce61181e565b6103ce6106353660046151c2565b611830565b6104276106483660046151c2565b6118d8565b6103ce6118f6565b61065d6119a0565b6040516103b2979695949392919061525c565b6103ce61067e366004615092565b611a45565b600a5461010090046001600160a01b03166103f8565b6104276106a7366004615092565b611a5e565b6103a66106ba366004615196565b6000918252600b602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6106ed611ae1565b60405165ffffffffffff90911681526020016103b2565b6103d8611aec565b61042761071a3660046151c2565b611afb565b610427600081565b6103ce61073536600461531c565b611b1c565b6103ce611b27565b6103ce610750366004615353565b611b39565b6103ce6107633660046153cf565b611bb7565b6103d8610776366004615092565b611ced565b6104277f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6103ce6107b0366004615196565b611d54565b601454610427565b6103ce6107cb366004614ff2565b611d79565b6103ce6107de3660046150c7565b611f90565b6103a66107f136600461542f565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b6103ce61082d366004615459565b612180565b6103ce6108403660046151c2565b6123ba565b6103a6610853366004615092565b612447565b6103ce610866366004615477565b6124b6565b6000610876826127c4565b92915050565b610884612802565b8051610897906015906020840190614e70565b5050565b6060600080546108aa90615529565b80601f01602080910402602001604051908101604052809291908181526020018280546108d690615529565b80156109235780601f106108f857610100808354040283529160200191610923565b820191906000526020600020905b81548152906001019060200180831161090657829003601f168201915b5050505050905090565b600061093882612862565b506000908152600460205260409020546001600160a01b031690565b600061095f8261171f565b9050806001600160a01b0316836001600160a01b031614156109ee5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b336001600160a01b0382161480610a0a5750610a0a81336107f1565b610a7c5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016109e5565b610a8683836128c6565b505050565b565b50565b610a9a3382612934565b610afc5760405162461bcd60e51b815260206004820152602d60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526c1c881bdc88185c1c1c9bdd9959609a1b60648201526084016109e5565b610a868383836129b3565b610b2e6040518060400160405280600681526020016552454445454d60d01b815250612bc1565b610ba05760405162461bcd60e51b815260206004820152603a60248201527f455243373231202d2052656465656d3a205468697320636f6e7472616374206460448201527f6f6573206e6f7420737570706f7274207468652072656465656d00000000000060648201526084016109e5565b60008281526002602052604090205433906001600160a01b03168114610c2e5760405162461bcd60e51b815260206004820152603760248201527f455243373231202d2052656465656d3a2063616c6c6572206973206e6f74207460448201527f6865206f776e6572206f662074686520746f6b656e496400000000000000000060648201526084016109e5565b6000838152601960205260409020546001600160a01b031615610cb95760405162461bcd60e51b815260206004820152602760248201527f455243373231202d2052656465656d3a20546f6b656e20616c7265616479207260448201527f656465656d65640000000000000000000000000000000000000000000000000060648201526084016109e5565b6040805180820182526001600160a01b038381168252602080830186815260008881526019835294909420835181546001600160a01b03191693169290921782559251805192939192610d129260018501920190614e70565b5090505082816001600160a01b03167f78e6c3f67f57c26578f2487b930b70d844bcc8dd8f4d629fb4af81252ab5aa6584604051610d50919061507f565b60405180910390a3505050565b6000828152601b602090815260408083208151808301909252546001600160a01b038116808352600160a01b9091046bffffffffffffffffffffffff16928201929092528291610ddc575060408051808201909152601a546001600160a01b0381168252600160a01b90046bffffffffffffffffffffffff1660208201525b602081015160009061271090610e00906bffffffffffffffffffffffff1687615574565b610e0a91906155a9565b915196919550909350505050565b6000828152600b6020526040902060010154610e3381612bec565b610a868383612bf6565b6000610e4883611784565b8210610ebc5760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201527f74206f6620626f756e647300000000000000000000000000000000000000000060648201526084016109e5565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b6000610eef612c98565b905090565b6001600160a01b0381163314610f725760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201527f20726f6c657320666f722073656c66000000000000000000000000000000000060648201526084016109e5565b6108978282612dc3565b6000610f86611ae1565b65ffffffffffff168210610fdc5760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20667574757265206c6f6f6b757000000000000000000000000060448201526064016109e5565b611006610fe883612e46565b6001600160a01b0385166000908152600f6020526040902090612ec6565b6001600160e01b03169392505050565b61101e612802565b61104460405180604001604052806005815260200164504155534560d81b815250612bc1565b6110dc5760405162461bcd60e51b815260206004820152604260248201527f455243373231202d2050617573653a205468697320636f6e747261637420646f60448201527f6573206e6f742068617665207065726d697373696f6e20746f20756e7061757360648201527f652e000000000000000000000000000000000000000000000000000000000000608482015260a4016109e5565b610a8b612f7b565b610a8683838360405180602001604052806000815250611b39565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84861112981612bec565b3360009081527f6e6b940fd38f04962e96e3f162add428e7eb5daad8003be9ff37afca77846669602052604090205460ff166111a75760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206275726e65720000000000000000000060448201526064016109e5565b6111cc60405180604001604052806004815260200163212aa92760e11b815250612bc1565b61123e5760405162461bcd60e51b815260206004820152603e60248201527f455243373231202d204275726e3a205468697320636f6e747261637420646f6560448201527f73206e6f742068617665207065726d697373696f6e20746f206275726e2e000060648201526084016109e5565b336112488361171f565b6001600160a01b0316146112c45760405162461bcd60e51b815260206004820152603560248201527f455243373231202d204275726e3a2063616c6c6572206973206e6f742074686560448201527f206f776e6572206f662074686520746f6b656e4964000000000000000000000060648201526084016109e5565b6112cd82612fcd565b506000908152601b6020526040812055565b6060436112ea611ae1565b65ffffffffffff161461133f5760405162461bcd60e51b815260206004820152601860248201527f566f7465733a2062726f6b656e20636c6f636b206d6f6465000000000000000060448201526064016109e5565b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b6113a160405180604001604052806009815260200168434c41494d41424c4560b81b815250612bc1565b6113fd5760405162461bcd60e51b815260206004820152602760248201527f455243373231202d205468697320636f6e7472616374206973206e6f7420636c60448201526661696d61626c6560c81b60648201526084016109e5565b601654600160a01b900460ff161561147d5760405162461bcd60e51b815260206004820152603360248201527f455243373231202d205468697320636f6e74726163742072657175697265732060448201527f612070617373776f726420746f20636c61696d0000000000000000000000000060648201526084016109e5565b6016546040517fc70f57540000000000000000000000000000000000000000000000000000000081523360048201819052916000916001600160a01b039091169063c70f57549060240160206040518083038186803b1580156114df57600080fd5b505afa1580156114f3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061151791906155cb565b90508061157b5760405162461bcd60e51b815260206004820152602c60248201527f455243373231202d2063616c6c657220616464726573732063616e6e6f74206360448201526b1b185a5b481d1a19481b999d60a21b60648201526084016109e5565b6108978261307a565b600061158f60085490565b82106116035760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201527f7574206f6620626f756e6473000000000000000000000000000000000000000060648201526084016109e5565b60088281548110611616576116166155e8565b90600052602060002001549050919050565b611630612802565b610a868383836131ab565b3361089781836132d6565b604080518082019091526000815260606020820152600082815260196020908152604091829020825180840190935280546001600160a01b03168352600181018054919284019161169690615529565b80601f01602080910402602001604051908101604052809291908181526020018280546116c290615529565b801561170f5780601f106116e45761010080835404028352916020019161170f565b820191906000526020600020905b8154815290600101906020018083116116f257829003601f168201915b5050505050815250509050919050565b6000818152600260205260408120546001600160a01b0316806108765760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016109e5565b60006001600160a01b0382166118025760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e6572000000000000000000000000000000000000000000000060648201526084016109e5565b506001600160a01b031660009081526003602052604090205490565b611826612802565b610a8b6000613348565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a661185a81612bec565b3360009081527ff70e363b3d7895af770c4a138460777d52eebd3cb9962ccc6b58721f6127bbc8602052604090205460ff1661157b5760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206d696e7465720000000000000000000060448201526064016109e5565b6001600160a01b038116600090815260116020526040812054610876565b6118fe612802565b61192460405180604001604052806005815260200164504155534560d81b815250612bc1565b611998576040805162461bcd60e51b81526020600482015260248101919091527f455243373231202d2050617573653a205468697320636f6e747261637420646f60448201527f6573206e6f742068617665207065726d697373696f6e20746f2070617573652e60648201526084016109e5565b610a8b61349e565b6000606080828080836119d47f566f726a00000000000000000000000000000000000000000000000000000004600c6134db565b6119ff7f312e302e30000000000000000000000000000000000000000000000000000005600d6134db565b604080516000808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b611a4d612802565b6000908152601b6020526040812055565b6000611a68611ae1565b65ffffffffffff168210611abe5760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20667574757265206c6f6f6b757000000000000000000000000060448201526064016109e5565b611ad2611aca83612e46565b601090612ec6565b6001600160e01b031692915050565b6000610eef4361357f565b6060600180546108aa90615529565b6001600160a01b0381166000908152600f60205260408120611ad2906135fd565b610897338383613637565b611b2f612802565b610a8b6000601a55565b611b433383612934565b611ba55760405162461bcd60e51b815260206004820152602d60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526c1c881bdc88185c1c1c9bdd9959609a1b60648201526084016109e5565b611bb1848484846136fe565b50505050565b83421115611c075760405162461bcd60e51b815260206004820152601860248201527f566f7465733a207369676e61747572652065787069726564000000000000000060448201526064016109e5565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b038816918101919091526060810186905260808101859052600090611c8190611c799060a0016040516020818303038152906040528051906020012061377c565b8585856137c4565b9050611c8c816137ec565b8614611cda5760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20696e76616c6964206e6f6e636500000000000000000000000060448201526064016109e5565b611ce481886132d6565b50505050505050565b6060611cf882612862565b6000611d02613814565b90506000815111611d225760405180602001604052806000815250611d4d565b80611d2c84613823565b604051602001611d3d9291906155fe565b6040516020818303038152906040525b9392505050565b6000828152600b6020526040902060010154611d6f81612bec565b610a868383612dc3565b611da360405180604001604052806009815260200168434c41494d41424c4560b81b815250612bc1565b611dff5760405162461bcd60e51b815260206004820152602760248201527f455243373231202d205468697320636f6e7472616374206973206e6f7420636c60448201526661696d61626c6560c81b60648201526084016109e5565b601654600160a01b900460ff161515600114611e835760405162461bcd60e51b815260206004820152603760248201527f455243373231202d205468697320636f6e747261637420646f6573207265717560448201527f69726520612070617373776f726420746f20636c61696d00000000000000000060648201526084016109e5565b6016546040517f957f177400000000000000000000000000000000000000000000000000000000815233916000916001600160a01b039091169063957f177490611ed3908590879060040161562d565b60206040518083038186803b158015611eeb57600080fd5b505afa158015611eff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f2391906155cb565b905080611f875760405162461bcd60e51b815260206004820152602c60248201527f455243373231202d2063616c6c657220616464726573732063616e6e6f74206360448201526b1b185a5b481d1a19481b999d60a21b60648201526084016109e5565b610a868261307a565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6611fba81612bec565b3360009081527ff70e363b3d7895af770c4a138460777d52eebd3cb9962ccc6b58721f6127bbc8602052604090205460ff166120385760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206d696e7465720000000000000000000060448201526064016109e5565b6120626040518060400160405280600981526020016853454c45435449564560b81b815250612bc1565b6120fa5760405162461bcd60e51b815260206004820152604c60248201527f455243373231202d204d696e743a205468697320636f6e747261637420646f6560448201527f73206e6f742068617665207065726d697373696f6e20746f206d696e7420736560648201527f6c65637420746f6b656e732e0000000000000000000000000000000000000000608482015260a4016109e5565b612108601380546001019055565b600061211360135490565b90506014548111156121765760405162461bcd60e51b815260206004820152602660248201527f4552433732313a20546f6b656e4964206f757473696465206f6620746f6b656e604482015265081b1a5b5a5d60d21b60648201526084016109e5565b611bb184846138cd565b612188612802565b6121b260405180604001604052806009815260200168434c41494d41424c4560b81b815250612bc1565b61220e5760405162461bcd60e51b815260206004820152602760248201527f455243373231202d205468697320636f6e7472616374206973206e6f7420636c60448201526661696d61626c6560c81b60648201526084016109e5565b811561229957601654600160a01b900460ff16156122945760405162461bcd60e51b815260206004820152603b60248201527f455243373231202d205468697320636f6e747261637420616c7265616479207260448201527f6571756972657320612070617373776f726420746f20636c61696d000000000060648201526084016109e5565b61233e565b601654600160a01b900460ff1661233e5760405162461bcd60e51b815260206004820152604360248201527f455243373231202d205468697320636f6e747261637420616c7265616479206460448201527f6f6573206e6f74207265717569726520612070617373776f726420746f20636c60648201527f61696d0000000000000000000000000000000000000000000000000000000000608482015260a4016109e5565b601680547fffffffffffffffffffffff00000000000000000000000000000000000000000016600160a01b8415159081026001600160a01b031916919091176001600160a01b0384169081179092556040517f818b233a1ba8fe2dba0fa170a3d459fe03b21e3fb8e99096bb7c1fb1281968fb90600090a35050565b6123c2612802565b6001600160a01b03811661243e5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016109e5565b610a8d81613348565b60006124706040518060400160405280600681526020016552454445454d60d01b815250612bc1565b801561249257506000828152600260205260409020546001600160a01b031633145b80156108765750506000908152601960205260409020546001600160a01b03161590565b6124be612802565b806000815181106124d1576124d16155e8565b6020026020010151601860405180604001604052806004815260200163212aa92760e11b815250604051612505919061564f565b908152604051908190036020019020805491151560ff1990921691909117905580518190600190811061253a5761253a6155e8565b6020026020010151601860405180604001604052806005815260200164504155534560d81b81525060405161256f919061564f565b908152604051908190036020019020805491151560ff199092169190911790558051819060029081106125a4576125a46155e8565b6020026020010151601860405180604001604052806009815260200168434c41494d41424c4560b81b8152506040516125dd919061564f565b908152604051908190036020019020805491151560ff19909216919091179055805181906003908110612612576126126155e8565b602002602001015160186040518060400160405280600681526020016552454445454d60d01b815250604051612648919061564f565b908152604051908190036020019020805491151560ff1990921691909117905580518190600290811061267d5761267d6155e8565b602002602001015115158160018151811061269a5761269a6155e8565b60200260200101511515826000815181106126b7576126b76155e8565b602002602001015115157fc5efaa1aa7f8709cf7a1d5fcabf38bd9ef53f0e3bd97f1b5b773e9533a23f4a9846003815181106126f5576126f56155e8565b602002602001015160405161270e911515815260200190565b60405180910390a450565b60006020835110156127355761272e836138e7565b9050610876565b828281516127469260200190614e70565b5060ff9050610876565b600a80546001600160a01b038381166101008181027fffffffffffffffffffffff0000000000000000000000000000000000000000ff85161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b90565b60006001600160e01b031982167f2a55205a00000000000000000000000000000000000000000000000000000000148061087657506108768261393e565b600a546001600160a01b03610100909104163314610a8b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109e5565b6000818152600260205260409020546001600160a01b0316610a8d5760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016109e5565b600081815260046020526040902080546001600160a01b0319166001600160a01b03841690811790915581906128fb8261171f565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000806129408361171f565b9050806001600160a01b0316846001600160a01b0316148061298757506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806129ab5750836001600160a01b03166129a08461092d565b6001600160a01b0316145b949350505050565b826001600160a01b03166129c68261171f565b6001600160a01b031614612a2a5760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b60648201526084016109e5565b6001600160a01b038216612aa55760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016109e5565b612ab28383836001613949565b826001600160a01b0316612ac58261171f565b6001600160a01b031614612b295760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b60648201526084016109e5565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4610a868383836001613955565b6000601882604051612bd3919061564f565b9081526040519081900360200190205460ff1692915050565b610a8d8133613961565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff16610897576000828152600b602090815260408083206001600160a01b03851684529091529020805460ff19166001179055612c543390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000306001600160a01b037f000000000000000000000000bac2ad23f3f2c781c08abe44a645f7409f4efbf616148015612cf157507f00000000851caf3cfdb6e899cf5958bfb1ac3413d346d43539627e6be7ec1b4a46145b15612d1b57507f0bb580d95ce0f0d177a1dc349b47f1d228921f212d5e50c2f5c047b6c9f8121990565b610eef604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f84f1dbb26117f991ecd75469675019d33fe81c751fcb3c99805e361226eefd47918101919091527f06c015bd22b4c69690933c1058878ebdfef31f9aaae40bbe86d8a09fe1b2972c60608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff1615610897576000828152600b602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600063ffffffff821115612ec25760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201527f322062697473000000000000000000000000000000000000000000000000000060648201526084016109e5565b5090565b815460009081816005811115612f23576000612ee1846139d6565b612eeb908561566b565b60008881526020902090915081015463ffffffff9081169087161015612f1357809150612f21565b612f1e816001615682565b92505b505b6000612f3187878585613abb565b90508015612f6d57612f5687612f4860018461566b565b600091825260209091200190565b5464010000000090046001600160e01b0316612f70565b60005b979650505050505050565b612f83613b11565b600a805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6000612fd88261171f565b9050612fe8816000846001613949565b612ff18261171f565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a4610897816000846001613955565b6130a46040518060400160405280600981526020016853454c45435449564560b81b815250612bc1565b156131175760405162461bcd60e51b815260206004820152603f60248201527f455243373231202d204d696e743a205468697320636f6e74726163742072657160448201527f69757265732073656c65637420746f6b656e2049447320746f206d696e742e0060648201526084016109e5565b613125601280546001019055565b613133601380546001019055565b600061313e60135490565b90506014548111156131a15760405162461bcd60e51b815260206004820152602660248201527f4552433732313a20546f6b656e4964206f757473696465206f6620746f6b656e604482015265081b1a5b5a5d60d21b60648201526084016109e5565b61089782826138cd565b6127106bffffffffffffffffffffffff821611156132315760405162461bcd60e51b815260206004820152602a60248201527f455243323938313a20726f79616c7479206665652077696c6c2065786365656460448201527f2073616c6550726963650000000000000000000000000000000000000000000060648201526084016109e5565b6001600160a01b0382166132875760405162461bcd60e51b815260206004820152601b60248201527f455243323938313a20496e76616c696420706172616d6574657273000000000060448201526064016109e5565b6040805180820182526001600160a01b0393841681526bffffffffffffffffffffffff92831660208083019182526000968752601b90529190942093519051909116600160a01b029116179055565b6001600160a01b038281166000818152600e602052604080822080548686166001600160a01b0319821681179092559151919094169392849290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a4610a86818361334386613b63565b613b6e565b600a5461010090046001600160a01b0316613364600083612bf6565b61338e7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a683612bf6565b6133b87f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84883612bf6565b6133e27f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a682612dc3565b61340c7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84882612dc3565b613417600082612dc3565b6017546040517f01378b580000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b038481166024830152909116906301378b5890604401600060405180830381600087803b15801561347d57600080fd5b505af1158015613491573d6000803e3d6000fd5b5050505061089782612750565b6134a6613cda565b600a805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612fb03390565b606060ff83146134ee5761272e83613d2d565b8180546134fa90615529565b80601f016020809104026020016040519081016040528092919081815260200182805461352690615529565b80156135735780601f1061354857610100808354040283529160200191613573565b820191906000526020600020905b81548152906001019060200180831161355657829003601f168201915b50505050509050610876565b600065ffffffffffff821115612ec25760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203460448201527f382062697473000000000000000000000000000000000000000000000000000060648201526084016109e5565b8054600090801561362e5761361783612f4860018461566b565b5464010000000090046001600160e01b0316611d4d565b60009392505050565b816001600160a01b0316836001600160a01b031614156136995760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016109e5565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319101610d50565b6137098484846129b3565b61371584848484613d6c565b611bb15760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016109e5565b6000610876613789612c98565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b60008060006137d587878787613ec1565b915091506137e281613f85565b5095945050505050565b6001600160a01b03811660009081526011602052604090208054600181018255905b50919050565b6060601580546108aa90615529565b60606000613830836140ee565b600101905060008167ffffffffffffffff81111561385057613850614f33565b6040519080825280601f01601f19166020018201604052801561387a576020820181803683370190505b5090508181016020015b600019017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85049450846138c0576138c5565b613884565b509392505050565b6108978282604051806020016040528060008152506141d0565b600080829050601f8151111561392b57826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016109e5919061507f565b80516139368261569a565b179392505050565b60006108768261424e565b611bb18484848461428c565b611bb184848484614311565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff166108975761399481614321565b61399f836020614333565b6040516020016139b09291906156be565b60408051601f198184030181529082905262461bcd60e51b82526109e59160040161507f565b6000816139e557506000919050565b600060016139f284614514565b901c6001901b90506001818481613a0b57613a0b615593565b048201901c90506001818481613a2357613a23615593565b048201901c90506001818481613a3b57613a3b615593565b048201901c90506001818481613a5357613a53615593565b048201901c90506001818481613a6b57613a6b615593565b048201901c90506001818481613a8357613a83615593565b048201901c90506001818481613a9b57613a9b615593565b048201901c9050611d4d81828581613ab557613ab5615593565b046145a8565b60005b818310156138c5576000613ad284846145be565b60008781526020902090915063ffffffff86169082015463ffffffff161115613afd57809250613b0b565b613b08816001615682565b93505b50613abe565b600a5460ff16610a8b5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f742070617573656400000000000000000000000060448201526064016109e5565b600061087682611784565b816001600160a01b0316836001600160a01b031614158015613b905750600081115b15610a86576001600160a01b03831615613c38576001600160a01b0383166000908152600f602052604081208190613bd3906145d9613bce866145e5565b614664565b6001600160e01b031691506001600160e01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051613c2d929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610a86576001600160a01b0382166000908152600f602052604081208190613c71906146ad613bce866145e5565b6001600160e01b031691506001600160e01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051613ccb929190918252602082015260400190565b60405180910390a25050505050565b600a5460ff1615610a8b5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064016109e5565b60606000613d3a836146b9565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b60006001600160a01b0384163b15613eb957604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290613db090339089908890889060040161573f565b602060405180830381600087803b158015613dca57600080fd5b505af1925050508015613dfa575060408051601f3d908101601f19168201909252613df79181019061577b565b60015b613e9f573d808015613e28576040519150601f19603f3d011682016040523d82523d6000602084013e613e2d565b606091505b508051613e975760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016109e5565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506129ab565b5060016129ab565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613ef85750600090506003613f7c565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613f4c573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613f7557600060019250925050613f7c565b9150600090505b94509492505050565b6000816004811115613f9957613f99615798565b1415613fa25750565b6001816004811115613fb657613fb6615798565b14156140045760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016109e5565b600281600481111561401857614018615798565b14156140665760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016109e5565b600381600481111561407a5761407a615798565b1415610a8d5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f756500000000000000000000000000000000000000000000000000000000000060648201526084016109e5565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310614137577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310614163576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc10000831061418157662386f26fc10000830492506010015b6305f5e1008310614199576305f5e100830492506008015b61271083106141ad57612710830492506004015b606483106141bf576064830492506002015b600a83106108765760010192915050565b6141da83836146fa565b6141e76000848484613d6c565b610a865760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016109e5565b60006001600160e01b031982167f7965db0b00000000000000000000000000000000000000000000000000000000148061087657506108768261489d565b614298848484846148db565b600a5460ff1615611bb15760405162461bcd60e51b815260206004820152602b60248201527f4552433732315061757361626c653a20746f6b656e207472616e73666572207760448201527f68696c652070617573656400000000000000000000000000000000000000000060648201526084016109e5565b61431c848483614a17565b611bb1565b60606108766001600160a01b03831660145b60606000614342836002615574565b61434d906002615682565b67ffffffffffffffff81111561436557614365614f33565b6040519080825280601f01601f19166020018201604052801561438f576020820181803683370190505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106143c6576143c66155e8565b60200101906001600160f81b031916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110614411576144116155e8565b60200101906001600160f81b031916908160001a9053506000614435846002615574565b614440906001615682565b90505b60018111156144c5577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110614481576144816155e8565b1a60f81b828281518110614497576144976155e8565b60200101906001600160f81b031916908160001a90535060049490941c936144be816157ae565b9050614443565b508315611d4d5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016109e5565b600080608083901c1561452957608092831c92015b604083901c1561453b57604092831c92015b602083901c1561454d57602092831c92015b601083901c1561455f57601092831c92015b600883901c1561457157600892831c92015b600483901c1561458357600492831c92015b600283901c1561459557600292831c92015b600183901c156108765760010192915050565b60008183106145b75781611d4d565b5090919050565b60006145cd60028484186155a9565b611d4d90848416615682565b6000611d4d82846157c5565b60006001600160e01b03821115612ec25760405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203260448201527f323420626974730000000000000000000000000000000000000000000000000060648201526084016109e5565b6000806146a0614682614675611ae1565b65ffffffffffff16612e46565b61469861468e886135fd565b868863ffffffff16565b879190614a8d565b915091505b935093915050565b6000611d4d82846157ed565b600060ff8216601f811115610876576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0382166147505760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016109e5565b6000818152600260205260409020546001600160a01b0316156147b55760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016109e5565b6147c3600083836001613949565b6000818152600260205260409020546001600160a01b0316156148285760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016109e5565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a4610897600083836001613955565b60006001600160e01b031982167f780e9d63000000000000000000000000000000000000000000000000000000001480610876575061087682614a9b565b60018111156149525760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e736563757469766520747260448201527f616e7366657273206e6f7420737570706f72746564000000000000000000000060648201526084016109e5565b816001600160a01b0385166149ae576149a981600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b6149d1565b836001600160a01b0316856001600160a01b0316146149d1576149d18582614b36565b6001600160a01b0384166149ed576149e881614bd3565b614a10565b846001600160a01b0316846001600160a01b031614614a1057614a108482614c82565b5050505050565b6001600160a01b038316614a3957614a3660106146ad613bce846145e5565b50505b6001600160a01b038216614a5b57614a5860106145d9613bce846145e5565b50505b6001600160a01b038381166000908152600e6020526040808220548584168352912054610a8692918216911683613b6e565b6000806146a0858585614cc6565b60006001600160e01b031982167f80ac58cd000000000000000000000000000000000000000000000000000000001480614afe57506001600160e01b031982167f5b5e139f00000000000000000000000000000000000000000000000000000000145b8061087657507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0319831614610876565b60006001614b4384611784565b614b4d919061566b565b600083815260076020526040902054909150808214614ba0576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b600854600090614be59060019061566b565b60008381526009602052604081205460088054939450909284908110614c0d57614c0d6155e8565b906000526020600020015490508060088381548110614c2e57614c2e6155e8565b6000918252602080832090910192909255828152600990915260408082208490558582528120556008805480614c6657614c6661580f565b6001900381819060005260206000200160009055905550505050565b6000614c8d83611784565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b825460009081908015614e16576000614ce487612f4860018561566b565b60408051808201909152905463ffffffff8082168084526401000000009092046001600160e01b031660208401529192509087161015614d665760405162461bcd60e51b815260206004820152601b60248201527f436865636b706f696e743a2064656372656173696e67206b657973000000000060448201526064016109e5565b8563ffffffff16816000015163ffffffff161415614db65784614d8e88612f4860018661566b565b80546001600160e01b03929092166401000000000263ffffffff909216919091179055614e06565b6040805180820190915263ffffffff80881682526001600160e01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216640100000000029216919091179101555b6020015192508391506146a59050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a5560008a8152918220955192519093166401000000000291909316179201919091559050816146a5565b828054614e7c90615529565b90600052602060002090601f016020900481019282614e9e5760008555614ee4565b82601f10614eb757805160ff1916838001178555614ee4565b82800160010185558215614ee4579182015b82811115614ee4578251825591602001919060010190614ec9565b50612ec29291505b80821115612ec25760008155600101614eec565b6001600160e01b031981168114610a8d57600080fd5b600060208284031215614f2857600080fd5b8135611d4d81614f00565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715614f7257614f72614f33565b604052919050565b600067ffffffffffffffff831115614f9457614f94614f33565b614fa7601f8401601f1916602001614f49565b9050828152838383011115614fbb57600080fd5b828260208301376000602084830101529392505050565b600082601f830112614fe357600080fd5b611d4d83833560208501614f7a565b60006020828403121561500457600080fd5b813567ffffffffffffffff81111561501b57600080fd5b6129ab84828501614fd2565b60005b8381101561504257818101518382015260200161502a565b83811115611bb15750506000910152565b6000815180845261506b816020860160208601615027565b601f01601f19169290920160200192915050565b602081526000611d4d6020830184615053565b6000602082840312156150a457600080fd5b5035919050565b80356001600160a01b03811681146150c257600080fd5b919050565b600080604083850312156150da57600080fd5b6150e3836150ab565b946020939093013593505050565b60008060006060848603121561510657600080fd5b61510f846150ab565b925061511d602085016150ab565b9150604084013590509250925092565b6000806040838503121561514057600080fd5b82359150602083013567ffffffffffffffff81111561515e57600080fd5b61516a85828601614fd2565b9150509250929050565b6000806040838503121561518757600080fd5b50508035926020909101359150565b600080604083850312156151a957600080fd5b823591506151b9602084016150ab565b90509250929050565b6000602082840312156151d457600080fd5b611d4d826150ab565b6000806000606084860312156151f257600080fd5b83359250615202602085016150ab565b915060408401356bffffffffffffffffffffffff8116811461522357600080fd5b809150509250925092565b602081526001600160a01b038251166020820152600060208301516040808401526129ab6060840182615053565b7fff00000000000000000000000000000000000000000000000000000000000000881681526000602060e08184015261529860e084018a615053565b83810360408501526152aa818a615053565b606085018990526001600160a01b038816608086015260a0850187905284810360c0860152855180825283870192509083019060005b818110156152fc578351835292840192918401916001016152e0565b50909c9b505050505050505050505050565b8015158114610a8d57600080fd5b6000806040838503121561532f57600080fd5b615338836150ab565b915060208301356153488161530e565b809150509250929050565b6000806000806080858703121561536957600080fd5b615372856150ab565b9350615380602086016150ab565b925060408501359150606085013567ffffffffffffffff8111156153a357600080fd5b8501601f810187136153b457600080fd5b6153c387823560208401614f7a565b91505092959194509250565b60008060008060008060c087890312156153e857600080fd5b6153f1876150ab565b95506020870135945060408701359350606087013560ff8116811461541557600080fd5b9598949750929560808101359460a0909101359350915050565b6000806040838503121561544257600080fd5b61544b836150ab565b91506151b9602084016150ab565b6000806040838503121561546c57600080fd5b823561544b8161530e565b6000602080838503121561548a57600080fd5b823567ffffffffffffffff808211156154a257600080fd5b818501915085601f8301126154b657600080fd5b8135818111156154c8576154c8614f33565b8060051b91506154d9848301614f49565b81815291830184019184810190888411156154f357600080fd5b938501935b8385101561551d578435925061550d8361530e565b82825293850193908501906154f8565b98975050505050505050565b600181811c9082168061553d57607f821691505b6020821081141561380e57634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600081600019048311821515161561558e5761558e61555e565b500290565b634e487b7160e01b600052601260045260246000fd5b6000826155c657634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156155dd57600080fd5b8151611d4d8161530e565b634e487b7160e01b600052603260045260246000fd5b60008351615610818460208801615027565b835190830190615624818360208801615027565b01949350505050565b6001600160a01b03831681526040602082015260006129ab6040830184615053565b60008251615661818460208701615027565b9190910192915050565b60008282101561567d5761567d61555e565b500390565b600082198211156156955761569561555e565b500190565b8051602080830151919081101561380e5760001960209190910360031b1b16919050565b7f416363657373436f6e74726f6c3a206163636f756e74200000000000000000008152600083516156f6816017850160208801615027565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351615733816028840160208801615027565b01602801949350505050565b60006001600160a01b038087168352808616602084015250836040830152608060608301526157716080830184615053565b9695505050505050565b60006020828403121561578d57600080fd5b8151611d4d81614f00565b634e487b7160e01b600052602160045260246000fd5b6000816157bd576157bd61555e565b506000190190565b60006001600160e01b03838116908316818110156157e5576157e561555e565b039392505050565b60006001600160e01b038083168185168083038211156156245761562461555e565b634e487b7160e01b600052603160045260246000fdfea26469706673582212200bfd05b9dd732c18ec3547656e2598e714bf8a6aee8d4be1f5f600e10b69ce3464736f6c63430008080033