VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0xe9CF8d…82BE
Summary
Transactions
Transfers
Address
0xe9CF8dF45198Aaa6cab2d09c664168AD039C82BE
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x30B76A6862A190c24506CDefF93e46Ff61D978C9
Deployer
0x30B76A6862A190c24506CDefF93e46Ff61D978C9
Code
0x608060405234801561001057600080fd5b50600436106103835760003560e01c80636352211e116101de578063a217fddf1161010f578063d547741f116100ad578063e985e9c51161007c578063e985e9c5146107d8578063f2fde38b14610814578063f48cc32614610827578063f9ff78f41461083a57600080fd5b8063d547741f14610797578063d5abeb01146107aa578063e602db67146107b2578063e6113cfa146107c557600080fd5b8063b88d4fde116100e9578063b88d4fde14610737578063c3cda5201461074a578063c87b56dd1461075d578063d53913931461077057600080fd5b8063a217fddf14610714578063a22cb4651461071c578063aa1b103f1461072f57600080fd5b80638a616bc01161017c57806391d148541161015657806391d14854146106a157806391ddadf4146106da57806395d89b41146106f95780639ab24eb01461070157600080fd5b80638a616bc0146106655780638da5cb5b146106785780638e539e8c1461068e57600080fd5b8063799161d5116101b8578063799161d51461061c5780637ecebe001461062f5780638456cb591461064257806384b0196e1461064a57600080fd5b80636352211e146105ee57806370a0823114610601578063715018a61461061457600080fd5b80633644e515116102b85780634e71d92d116102565780635944c753116102305780635944c7531461059d5780635c19a95c146105b05780635c975abb146105c35780636108375f146105ce57600080fd5b80634e71d92d146105565780634f6ccce71461055e578063587cde1e1461057157600080fd5b80633f4ba83a116102925780633f4ba83a1461052057806342842e0e1461052857806342966c681461053b5780634bf5d7e91461054e57600080fd5b80633644e515146104f257806336568abe146104fa5780633a46b1a81461050d57600080fd5b806323b872dd11610325578063282c51f3116102ff578063282c51f3146104735780632a55205a1461049a5780632f2ff15d146104cc5780632f745c59146104df57600080fd5b806323b872dd1461042a578063248a9ca31461043d57806324b76fd51461046057600080fd5b8063081812fc11610361578063081812fc146103da578063095ea7b314610405578063180b0d7e146103c357806318160ddd1461041857600080fd5b806301ffc9a71461038857806302fe5305146103b057806306fdde03146103c5575b600080fd5b61039b610396366004614b9f565b61084d565b60405190151581526020015b60405180910390f35b6103c36103be366004614c7b565b61085e565b005b6103cd61087d565b6040516103a79190614d08565b6103ed6103e8366004614d1b565b61090f565b6040516001600160a01b0390911681526020016103a7565b6103c3610413366004614d50565b610936565b6008545b6040519081526020016103a7565b6103c3610438366004614d7a565b610a72565b61041c61044b366004614d1b565b6000908152600b602052604090206001015490565b6103c361046e366004614db6565b610ae9565b61041c7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b6104ad6104a8366004614dfd565b610d3f565b604080516001600160a01b0390931683526020830191909152016103a7565b6103c36104da366004614e1f565b610dfa565b61041c6104ed366004614d50565b610e1f565b61041c610ec7565b6103c3610508366004614e1f565b610ed6565b61041c61051b366004614d50565b610f5e565b6103c3610ff8565b6103c3610536366004614d7a565b6110c6565b6103c3610549366004614d1b565b6110e1565b6103cd6112c1565b6103c3611359565b61041c61056c366004614d1b565b611566565b6103ed61057f366004614e4b565b6001600160a01b039081166000908152600e60205260409020541690565b6103c36105ab366004614e66565b61160a565b6103c36105be366004614e4b565b61161d565b600a5460ff1661039b565b6105e16105dc366004614d1b565b611628565b6040516103a79190614eb7565b6103ed6105fc366004614d1b565b611701565b61041c61060f366004614e4b565b611766565b6103c3611800565b6103c361062a366004614e4b565b611812565b61041c61063d366004614e4b565b6118ba565b6103c36118d8565b610652611982565b6040516103a79796959493929190614ee5565b6103c3610673366004614d1b565b611a27565b600a5461010090046001600160a01b03166103ed565b61041c61069c366004614d1b565b611a40565b61039b6106af366004614e1f565b6000918252600b602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6106e2611ac3565b60405165ffffffffffff90911681526020016103a7565b6103cd611ace565b61041c61070f366004614e4b565b611add565b61041c600081565b6103c361072a366004614fa5565b611afe565b6103c3611b09565b6103c3610745366004614fdc565b611b1b565b6103c3610758366004615058565b611b99565b6103cd61076b366004614d1b565b611ccf565b61041c7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6103c36107a5366004614e1f565b611d36565b60145461041c565b6103c36107c0366004614c7b565b611d5b565b6103c36107d3366004614d50565b611f72565b61039b6107e63660046150b8565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b6103c3610822366004614e4b565b612162565b61039b610835366004614d1b565b6121ef565b6103c36108483660046150e2565b61225e565b60006108588261244d565b92915050565b61086661248b565b8051610879906015906020840190614af9565b5050565b60606000805461088c90615194565b80601f01602080910402602001604051908101604052809291908181526020018280546108b890615194565b80156109055780601f106108da57610100808354040283529160200191610905565b820191906000526020600020905b8154815290600101906020018083116108e857829003601f168201915b5050505050905090565b600061091a826124eb565b506000908152600460205260409020546001600160a01b031690565b600061094182611701565b9050806001600160a01b0316836001600160a01b031614156109d05760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b336001600160a01b03821614806109ec57506109ec81336107e6565b610a5e5760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c00000060648201526084016109c7565b610a68838361254f565b505050565b565b50565b610a7c33826125bd565b610ade5760405162461bcd60e51b815260206004820152602d60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526c1c881bdc88185c1c1c9bdd9959609a1b60648201526084016109c7565b610a6883838361263c565b610b106040518060400160405280600681526020016552454445454d60d01b81525061284a565b610b825760405162461bcd60e51b815260206004820152603a60248201527f455243373231202d2052656465656d3a205468697320636f6e7472616374206460448201527f6f6573206e6f7420737570706f7274207468652072656465656d00000000000060648201526084016109c7565b60008281526002602052604090205433906001600160a01b03168114610c105760405162461bcd60e51b815260206004820152603760248201527f455243373231202d2052656465656d3a2063616c6c6572206973206e6f74207460448201527f6865206f776e6572206f662074686520746f6b656e496400000000000000000060648201526084016109c7565b6000838152601960205260409020546001600160a01b031615610c9b5760405162461bcd60e51b815260206004820152602760248201527f455243373231202d2052656465656d3a20546f6b656e20616c7265616479207260448201527f656465656d65640000000000000000000000000000000000000000000000000060648201526084016109c7565b6040805180820182526001600160a01b038381168252602080830186815260008881526019835294909420835181546001600160a01b03191693169290921782559251805192939192610cf49260018501920190614af9565b5090505082816001600160a01b03167f78e6c3f67f57c26578f2487b930b70d844bcc8dd8f4d629fb4af81252ab5aa6584604051610d329190614d08565b60405180910390a3505050565b6000828152601b602090815260408083208151808301909252546001600160a01b038116808352600160a01b9091046bffffffffffffffffffffffff16928201929092528291610dbe575060408051808201909152601a546001600160a01b0381168252600160a01b90046bffffffffffffffffffffffff1660208201525b602081015160009061271090610de2906bffffffffffffffffffffffff16876151df565b610dec9190615214565b915196919550909350505050565b6000828152600b6020526040902060010154610e1581612875565b610a68838361287f565b6000610e2a83611766565b8210610e9e5760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201527f74206f6620626f756e647300000000000000000000000000000000000000000060648201526084016109c7565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b6000610ed1612921565b905090565b6001600160a01b0381163314610f545760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201527f20726f6c657320666f722073656c66000000000000000000000000000000000060648201526084016109c7565b6108798282612a4c565b6000610f68611ac3565b65ffffffffffff168210610fbe5760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20667574757265206c6f6f6b757000000000000000000000000060448201526064016109c7565b610fe8610fca83612acf565b6001600160a01b0385166000908152600f6020526040902090612b4f565b6001600160e01b03169392505050565b61100061248b565b61102660405180604001604052806005815260200164504155534560d81b81525061284a565b6110be5760405162461bcd60e51b815260206004820152604260248201527f455243373231202d2050617573653a205468697320636f6e747261637420646f60448201527f6573206e6f742068617665207065726d697373696f6e20746f20756e7061757360648201527f652e000000000000000000000000000000000000000000000000000000000000608482015260a4016109c7565b610a6d612c04565b610a6883838360405180602001604052806000815250611b1b565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84861110b81612875565b3360009081527f6e6b940fd38f04962e96e3f162add428e7eb5daad8003be9ff37afca77846669602052604090205460ff166111895760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206275726e65720000000000000000000060448201526064016109c7565b6111ae60405180604001604052806004815260200163212aa92760e11b81525061284a565b6112205760405162461bcd60e51b815260206004820152603e60248201527f455243373231202d204275726e3a205468697320636f6e747261637420646f6560448201527f73206e6f742068617665207065726d697373696f6e20746f206275726e2e000060648201526084016109c7565b3361122a83611701565b6001600160a01b0316146112a65760405162461bcd60e51b815260206004820152603560248201527f455243373231202d204275726e3a2063616c6c6572206973206e6f742074686560448201527f206f776e6572206f662074686520746f6b656e4964000000000000000000000060648201526084016109c7565b6112af82612c56565b506000908152601b6020526040812055565b6060436112cc611ac3565b65ffffffffffff16146113215760405162461bcd60e51b815260206004820152601860248201527f566f7465733a2062726f6b656e20636c6f636b206d6f6465000000000000000060448201526064016109c7565b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b61138360405180604001604052806009815260200168434c41494d41424c4560b81b81525061284a565b6113df5760405162461bcd60e51b815260206004820152602760248201527f455243373231202d205468697320636f6e7472616374206973206e6f7420636c60448201526661696d61626c6560c81b60648201526084016109c7565b601654600160a01b900460ff161561145f5760405162461bcd60e51b815260206004820152603360248201527f455243373231202d205468697320636f6e74726163742072657175697265732060448201527f612070617373776f726420746f20636c61696d0000000000000000000000000060648201526084016109c7565b6016546040517fc70f57540000000000000000000000000000000000000000000000000000000081523360048201819052916000916001600160a01b039091169063c70f57549060240160206040518083038186803b1580156114c157600080fd5b505afa1580156114d5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114f99190615236565b90508061155d5760405162461bcd60e51b815260206004820152602c60248201527f455243373231202d2063616c6c657220616464726573732063616e6e6f74206360448201526b1b185a5b481d1a19481b999d60a21b60648201526084016109c7565b61087982612d03565b600061157160085490565b82106115e55760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201527f7574206f6620626f756e6473000000000000000000000000000000000000000060648201526084016109c7565b600882815481106115f8576115f8615253565b90600052602060002001549050919050565b61161261248b565b610a68838383612e34565b336108798183612f5f565b604080518082019091526000815260606020820152600082815260196020908152604091829020825180840190935280546001600160a01b03168352600181018054919284019161167890615194565b80601f01602080910402602001604051908101604052809291908181526020018280546116a490615194565b80156116f15780601f106116c6576101008083540402835291602001916116f1565b820191906000526020600020905b8154815290600101906020018083116116d457829003601f168201915b5050505050815250509050919050565b6000818152600260205260408120546001600160a01b0316806108585760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016109c7565b60006001600160a01b0382166117e45760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e6572000000000000000000000000000000000000000000000060648201526084016109c7565b506001600160a01b031660009081526003602052604090205490565b61180861248b565b610a6d6000612fd1565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a661183c81612875565b3360009081527ff70e363b3d7895af770c4a138460777d52eebd3cb9962ccc6b58721f6127bbc8602052604090205460ff1661155d5760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206d696e7465720000000000000000000060448201526064016109c7565b6001600160a01b038116600090815260116020526040812054610858565b6118e061248b565b61190660405180604001604052806005815260200164504155534560d81b81525061284a565b61197a576040805162461bcd60e51b81526020600482015260248101919091527f455243373231202d2050617573653a205468697320636f6e747261637420646f60448201527f6573206e6f742068617665207065726d697373696f6e20746f2070617573652e60648201526084016109c7565b610a6d613127565b6000606080828080836119b67f566f726a00000000000000000000000000000000000000000000000000000004600c613164565b6119e17f312e302e30000000000000000000000000000000000000000000000000000005600d613164565b604080516000808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b611a2f61248b565b6000908152601b6020526040812055565b6000611a4a611ac3565b65ffffffffffff168210611aa05760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20667574757265206c6f6f6b757000000000000000000000000060448201526064016109c7565b611ab4611aac83612acf565b601090612b4f565b6001600160e01b031692915050565b6000610ed143613208565b60606001805461088c90615194565b6001600160a01b0381166000908152600f60205260408120611ab490613286565b6108793383836132c0565b611b1161248b565b610a6d6000601a55565b611b2533836125bd565b611b875760405162461bcd60e51b815260206004820152602d60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526c1c881bdc88185c1c1c9bdd9959609a1b60648201526084016109c7565b611b9384848484613387565b50505050565b83421115611be95760405162461bcd60e51b815260206004820152601860248201527f566f7465733a207369676e61747572652065787069726564000000000000000060448201526064016109c7565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b038816918101919091526060810186905260808101859052600090611c6390611c5b9060a00160405160208183030381529060405280519060200120613405565b85858561344d565b9050611c6e81613475565b8614611cbc5760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20696e76616c6964206e6f6e636500000000000000000000000060448201526064016109c7565b611cc68188612f5f565b50505050505050565b6060611cda826124eb565b6000611ce461349d565b90506000815111611d045760405180602001604052806000815250611d2f565b80611d0e846134ac565b604051602001611d1f929190615269565b6040516020818303038152906040525b9392505050565b6000828152600b6020526040902060010154611d5181612875565b610a688383612a4c565b611d8560405180604001604052806009815260200168434c41494d41424c4560b81b81525061284a565b611de15760405162461bcd60e51b815260206004820152602760248201527f455243373231202d205468697320636f6e7472616374206973206e6f7420636c60448201526661696d61626c6560c81b60648201526084016109c7565b601654600160a01b900460ff161515600114611e655760405162461bcd60e51b815260206004820152603760248201527f455243373231202d205468697320636f6e747261637420646f6573207265717560448201527f69726520612070617373776f726420746f20636c61696d00000000000000000060648201526084016109c7565b6016546040517f957f177400000000000000000000000000000000000000000000000000000000815233916000916001600160a01b039091169063957f177490611eb59085908790600401615298565b60206040518083038186803b158015611ecd57600080fd5b505afa158015611ee1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f059190615236565b905080611f695760405162461bcd60e51b815260206004820152602c60248201527f455243373231202d2063616c6c657220616464726573732063616e6e6f74206360448201526b1b185a5b481d1a19481b999d60a21b60648201526084016109c7565b610a6882612d03565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6611f9c81612875565b3360009081527ff70e363b3d7895af770c4a138460777d52eebd3cb9962ccc6b58721f6127bbc8602052604090205460ff1661201a5760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206d696e7465720000000000000000000060448201526064016109c7565b6120446040518060400160405280600981526020016853454c45435449564560b81b81525061284a565b6120dc5760405162461bcd60e51b815260206004820152604c60248201527f455243373231202d204d696e743a205468697320636f6e747261637420646f6560448201527f73206e6f742068617665207065726d697373696f6e20746f206d696e7420736560648201527f6c65637420746f6b656e732e0000000000000000000000000000000000000000608482015260a4016109c7565b6120ea601380546001019055565b60006120f560135490565b90506014548111156121585760405162461bcd60e51b815260206004820152602660248201527f4552433732313a20546f6b656e4964206f757473696465206f6620746f6b656e604482015265081b1a5b5a5d60d21b60648201526084016109c7565b611b938484613556565b61216a61248b565b6001600160a01b0381166121e65760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084016109c7565b610a6f81612fd1565b60006122186040518060400160405280600681526020016552454445454d60d01b81525061284a565b801561223a57506000828152600260205260409020546001600160a01b031633145b80156108585750506000908152601960205260409020546001600160a01b03161590565b61226661248b565b8060008151811061227957612279615253565b6020026020010151601860405180604001604052806004815260200163212aa92760e11b8152506040516122ad91906152ba565b908152604051908190036020019020805491151560ff199092169190911790558051819060019081106122e2576122e2615253565b6020026020010151601860405180604001604052806005815260200164504155534560d81b81525060405161231791906152ba565b908152604051908190036020019020805491151560ff1990921691909117905580518190600190811061234c5761234c615253565b602002602001015115158160008151811061236957612369615253565b602002602001015115157f7f6ccb34ebb8d30f336e6c5763f6a8067f295aad751357b3065fdd37d026ed1260405160405180910390a350565b60006020835110156123be576123b783613570565b9050610858565b828281516123cf9260200190614af9565b5060ff9050610858565b600a80546001600160a01b038381166101008181027fffffffffffffffffffffff0000000000000000000000000000000000000000ff85161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b90565b60006001600160e01b031982167f2a55205a0000000000000000000000000000000000000000000000000000000014806108585750610858826135c7565b600a546001600160a01b03610100909104163314610a6d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016109c7565b6000818152600260205260409020546001600160a01b0316610a6f5760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e204944000000000000000060448201526064016109c7565b600081815260046020526040902080546001600160a01b0319166001600160a01b038416908117909155819061258482611701565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000806125c983611701565b9050806001600160a01b0316846001600160a01b0316148061261057506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806126345750836001600160a01b03166126298461090f565b6001600160a01b0316145b949350505050565b826001600160a01b031661264f82611701565b6001600160a01b0316146126b35760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b60648201526084016109c7565b6001600160a01b03821661272e5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f726573730000000000000000000000000000000000000000000000000000000060648201526084016109c7565b61273b83838360016135d2565b826001600160a01b031661274e82611701565b6001600160a01b0316146127b25760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b60648201526084016109c7565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4610a6883838360016135de565b600060188260405161285c91906152ba565b9081526040519081900360200190205460ff1692915050565b610a6f81336135ea565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff16610879576000828152600b602090815260408083206001600160a01b03851684529091529020805460ff191660011790556128dd3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000306001600160a01b037f000000000000000000000000e9cf8df45198aaa6cab2d09c664168ad039c82be1614801561297a57507f00000000851caf3cfdb6e899cf5958bfb1ac3413d346d43539627e6be7ec1b4a46145b156129a457507fe394cfdf621ecd4198abb19703c38160ae14d89baae22de14c1e5a3e3dfa326e90565b610ed1604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f84f1dbb26117f991ecd75469675019d33fe81c751fcb3c99805e361226eefd47918101919091527f06c015bd22b4c69690933c1058878ebdfef31f9aaae40bbe86d8a09fe1b2972c60608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff1615610879576000828152600b602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600063ffffffff821115612b4b5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201527f322062697473000000000000000000000000000000000000000000000000000060648201526084016109c7565b5090565b815460009081816005811115612bac576000612b6a8461365f565b612b7490856152d6565b60008881526020902090915081015463ffffffff9081169087161015612b9c57809150612baa565b612ba78160016152ed565b92505b505b6000612bba87878585613744565b90508015612bf657612bdf87612bd16001846152d6565b600091825260209091200190565b5464010000000090046001600160e01b0316612bf9565b60005b979650505050505050565b612c0c61379a565b600a805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6000612c6182611701565b9050612c718160008460016135d2565b612c7a82611701565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a46108798160008460016135de565b612d2d6040518060400160405280600981526020016853454c45435449564560b81b81525061284a565b15612da05760405162461bcd60e51b815260206004820152603f60248201527f455243373231202d204d696e743a205468697320636f6e74726163742072657160448201527f69757265732073656c65637420746f6b656e2049447320746f206d696e742e0060648201526084016109c7565b612dae601280546001019055565b612dbc601380546001019055565b6000612dc760135490565b9050601454811115612e2a5760405162461bcd60e51b815260206004820152602660248201527f4552433732313a20546f6b656e4964206f757473696465206f6620746f6b656e604482015265081b1a5b5a5d60d21b60648201526084016109c7565b6108798282613556565b6127106bffffffffffffffffffffffff82161115612eba5760405162461bcd60e51b815260206004820152602a60248201527f455243323938313a20726f79616c7479206665652077696c6c2065786365656460448201527f2073616c6550726963650000000000000000000000000000000000000000000060648201526084016109c7565b6001600160a01b038216612f105760405162461bcd60e51b815260206004820152601b60248201527f455243323938313a20496e76616c696420706172616d6574657273000000000060448201526064016109c7565b6040805180820182526001600160a01b0393841681526bffffffffffffffffffffffff92831660208083019182526000968752601b90529190942093519051909116600160a01b029116179055565b6001600160a01b038281166000818152600e602052604080822080548686166001600160a01b0319821681179092559151919094169392849290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a4610a688183612fcc866137ec565b6137f7565b600a5461010090046001600160a01b0316612fed60008361287f565b6130177f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a68361287f565b6130417f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a8488361287f565b61306b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a682612a4c565b6130957f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84882612a4c565b6130a0600082612a4c565b6017546040517f01378b580000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b038481166024830152909116906301378b5890604401600060405180830381600087803b15801561310657600080fd5b505af115801561311a573d6000803e3d6000fd5b50505050610879826123d9565b61312f613963565b600a805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612c393390565b606060ff8314613177576123b7836139b6565b81805461318390615194565b80601f01602080910402602001604051908101604052809291908181526020018280546131af90615194565b80156131fc5780601f106131d1576101008083540402835291602001916131fc565b820191906000526020600020905b8154815290600101906020018083116131df57829003601f168201915b50505050509050610858565b600065ffffffffffff821115612b4b5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203460448201527f382062697473000000000000000000000000000000000000000000000000000060648201526084016109c7565b805460009080156132b7576132a083612bd16001846152d6565b5464010000000090046001600160e01b0316611d2f565b60009392505050565b816001600160a01b0316836001600160a01b031614156133225760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c65720000000000000060448201526064016109c7565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319101610d32565b61339284848461263c565b61339e848484846139f5565b611b935760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016109c7565b6000610858613412612921565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b600080600061345e87878787613b4a565b9150915061346b81613c0e565b5095945050505050565b6001600160a01b03811660009081526011602052604090208054600181018255905b50919050565b60606015805461088c90615194565b606060006134b983613d77565b600101905060008167ffffffffffffffff8111156134d9576134d9614bbc565b6040519080825280601f01601f191660200182016040528015613503576020820181803683370190505b5090508181016020015b600019017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a85049450846135495761354e565b61350d565b509392505050565b610879828260405180602001604052806000815250613e59565b600080829050601f815111156135b457826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016109c79190614d08565b80516135bf82615305565b179392505050565b600061085882613ed7565b611b9384848484613f15565b611b9384848484613f9a565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff166108795761361d81613faa565b613628836020613fbc565b604051602001613639929190615329565b60408051601f198184030181529082905262461bcd60e51b82526109c791600401614d08565b60008161366e57506000919050565b6000600161367b8461419d565b901c6001901b90506001818481613694576136946151fe565b048201901c905060018184816136ac576136ac6151fe565b048201901c905060018184816136c4576136c46151fe565b048201901c905060018184816136dc576136dc6151fe565b048201901c905060018184816136f4576136f46151fe565b048201901c9050600181848161370c5761370c6151fe565b048201901c90506001818481613724576137246151fe565b048201901c9050611d2f8182858161373e5761373e6151fe565b04614231565b60005b8183101561354e57600061375b8484614247565b60008781526020902090915063ffffffff86169082015463ffffffff16111561378657809250613794565b6137918160016152ed565b93505b50613747565b600a5460ff16610a6d5760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f742070617573656400000000000000000000000060448201526064016109c7565b600061085882611766565b816001600160a01b0316836001600160a01b0316141580156138195750600081115b15610a68576001600160a01b038316156138c1576001600160a01b0383166000908152600f60205260408120819061385c906142626138578661426e565b6142ed565b6001600160e01b031691506001600160e01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516138b6929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610a68576001600160a01b0382166000908152600f6020526040812081906138fa906143366138578661426e565b6001600160e01b031691506001600160e01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051613954929190918252602082015260400190565b60405180910390a25050505050565b600a5460ff1615610a6d5760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a207061757365640000000000000000000000000000000060448201526064016109c7565b606060006139c383614342565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b60006001600160a01b0384163b15613b4257604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290613a399033908990889088906004016153aa565b602060405180830381600087803b158015613a5357600080fd5b505af1925050508015613a83575060408051601f3d908101601f19168201909252613a80918101906153e6565b60015b613b28573d808015613ab1576040519150601f19603f3d011682016040523d82523d6000602084013e613ab6565b606091505b508051613b205760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016109c7565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050612634565b506001612634565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0831115613b815750600090506003613c05565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015613bd5573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613bfe57600060019250925050613c05565b9150600090505b94509492505050565b6000816004811115613c2257613c22615403565b1415613c2b5750565b6001816004811115613c3f57613c3f615403565b1415613c8d5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e6174757265000000000000000060448201526064016109c7565b6002816004811115613ca157613ca1615403565b1415613cef5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e6774680060448201526064016109c7565b6003816004811115613d0357613d03615403565b1415610a6f5760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f756500000000000000000000000000000000000000000000000000000000000060648201526084016109c7565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310613dc0577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef81000000008310613dec576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310613e0a57662386f26fc10000830492506010015b6305f5e1008310613e22576305f5e100830492506008015b6127108310613e3657612710830492506004015b60648310613e48576064830492506002015b600a83106108585760010192915050565b613e638383614383565b613e7060008484846139f5565b610a685760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b60648201526084016109c7565b60006001600160e01b031982167f7965db0b000000000000000000000000000000000000000000000000000000001480610858575061085882614526565b613f2184848484614564565b600a5460ff1615611b935760405162461bcd60e51b815260206004820152602b60248201527f4552433732315061757361626c653a20746f6b656e207472616e73666572207760448201527f68696c652070617573656400000000000000000000000000000000000000000060648201526084016109c7565b613fa58484836146a0565b611b93565b60606108586001600160a01b03831660145b60606000613fcb8360026151df565b613fd69060026152ed565b67ffffffffffffffff811115613fee57613fee614bbc565b6040519080825280601f01601f191660200182016040528015614018576020820181803683370190505b5090507f30000000000000000000000000000000000000000000000000000000000000008160008151811061404f5761404f615253565b60200101906001600160f81b031916908160001a9053507f78000000000000000000000000000000000000000000000000000000000000008160018151811061409a5761409a615253565b60200101906001600160f81b031916908160001a90535060006140be8460026151df565b6140c99060016152ed565b90505b600181111561414e577f303132333435363738396162636465660000000000000000000000000000000085600f166010811061410a5761410a615253565b1a60f81b82828151811061412057614120615253565b60200101906001600160f81b031916908160001a90535060049490941c9361414781615419565b90506140cc565b508315611d2f5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016109c7565b600080608083901c156141b257608092831c92015b604083901c156141c457604092831c92015b602083901c156141d657602092831c92015b601083901c156141e857601092831c92015b600883901c156141fa57600892831c92015b600483901c1561420c57600492831c92015b600283901c1561421e57600292831c92015b600183901c156108585760010192915050565b60008183106142405781611d2f565b5090919050565b60006142566002848418615214565b611d2f908484166152ed565b6000611d2f8284615430565b60006001600160e01b03821115612b4b5760405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203260448201527f323420626974730000000000000000000000000000000000000000000000000060648201526084016109c7565b60008061432961430b6142fe611ac3565b65ffffffffffff16612acf565b61432161431788613286565b868863ffffffff16565b879190614716565b915091505b935093915050565b6000611d2f8284615458565b600060ff8216601f811115610858576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b0382166143d95760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f206164647265737360448201526064016109c7565b6000818152600260205260409020546001600160a01b03161561443e5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016109c7565b61444c6000838360016135d2565b6000818152600260205260409020546001600160a01b0316156144b15760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e7465640000000060448201526064016109c7565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a46108796000838360016135de565b60006001600160e01b031982167f780e9d63000000000000000000000000000000000000000000000000000000001480610858575061085882614724565b60018111156145db5760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e736563757469766520747260448201527f616e7366657273206e6f7420737570706f72746564000000000000000000000060648201526084016109c7565b816001600160a01b0385166146375761463281600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b61465a565b836001600160a01b0316856001600160a01b03161461465a5761465a85826147bf565b6001600160a01b038416614676576146718161485c565b614699565b846001600160a01b0316846001600160a01b03161461469957614699848261490b565b5050505050565b6001600160a01b0383166146c2576146bf60106143366138578461426e565b50505b6001600160a01b0382166146e4576146e160106142626138578461426e565b50505b6001600160a01b038381166000908152600e6020526040808220548584168352912054610a68929182169116836137f7565b60008061432985858561494f565b60006001600160e01b031982167f80ac58cd00000000000000000000000000000000000000000000000000000000148061478757506001600160e01b031982167f5b5e139f00000000000000000000000000000000000000000000000000000000145b8061085857507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0319831614610858565b600060016147cc84611766565b6147d691906152d6565b600083815260076020526040902054909150808214614829576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b60085460009061486e906001906152d6565b6000838152600960205260408120546008805493945090928490811061489657614896615253565b9060005260206000200154905080600883815481106148b7576148b7615253565b60009182526020808320909101929092558281526009909152604080822084905585825281205560088054806148ef576148ef61547a565b6001900381819060005260206000200160009055905550505050565b600061491683611766565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b825460009081908015614a9f57600061496d87612bd16001856152d6565b60408051808201909152905463ffffffff8082168084526401000000009092046001600160e01b0316602084015291925090871610156149ef5760405162461bcd60e51b815260206004820152601b60248201527f436865636b706f696e743a2064656372656173696e67206b657973000000000060448201526064016109c7565b8563ffffffff16816000015163ffffffff161415614a3f5784614a1788612bd16001866152d6565b80546001600160e01b03929092166401000000000263ffffffff909216919091179055614a8f565b6040805180820190915263ffffffff80881682526001600160e01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216640100000000029216919091179101555b60200151925083915061432e9050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a5560008a81529182209551925190931664010000000002919093161792019190915590508161432e565b828054614b0590615194565b90600052602060002090601f016020900481019282614b275760008555614b6d565b82601f10614b4057805160ff1916838001178555614b6d565b82800160010185558215614b6d579182015b82811115614b6d578251825591602001919060010190614b52565b50612b4b9291505b80821115612b4b5760008155600101614b75565b6001600160e01b031981168114610a6f57600080fd5b600060208284031215614bb157600080fd5b8135611d2f81614b89565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715614bfb57614bfb614bbc565b604052919050565b600067ffffffffffffffff831115614c1d57614c1d614bbc565b614c30601f8401601f1916602001614bd2565b9050828152838383011115614c4457600080fd5b828260208301376000602084830101529392505050565b600082601f830112614c6c57600080fd5b611d2f83833560208501614c03565b600060208284031215614c8d57600080fd5b813567ffffffffffffffff811115614ca457600080fd5b61263484828501614c5b565b60005b83811015614ccb578181015183820152602001614cb3565b83811115611b935750506000910152565b60008151808452614cf4816020860160208601614cb0565b601f01601f19169290920160200192915050565b602081526000611d2f6020830184614cdc565b600060208284031215614d2d57600080fd5b5035919050565b80356001600160a01b0381168114614d4b57600080fd5b919050565b60008060408385031215614d6357600080fd5b614d6c83614d34565b946020939093013593505050565b600080600060608486031215614d8f57600080fd5b614d9884614d34565b9250614da660208501614d34565b9150604084013590509250925092565b60008060408385031215614dc957600080fd5b82359150602083013567ffffffffffffffff811115614de757600080fd5b614df385828601614c5b565b9150509250929050565b60008060408385031215614e1057600080fd5b50508035926020909101359150565b60008060408385031215614e3257600080fd5b82359150614e4260208401614d34565b90509250929050565b600060208284031215614e5d57600080fd5b611d2f82614d34565b600080600060608486031215614e7b57600080fd5b83359250614e8b60208501614d34565b915060408401356bffffffffffffffffffffffff81168114614eac57600080fd5b809150509250925092565b602081526001600160a01b038251166020820152600060208301516040808401526126346060840182614cdc565b7fff00000000000000000000000000000000000000000000000000000000000000881681526000602060e081840152614f2160e084018a614cdc565b8381036040850152614f33818a614cdc565b606085018990526001600160a01b038816608086015260a0850187905284810360c0860152855180825283870192509083019060005b81811015614f8557835183529284019291840191600101614f69565b50909c9b505050505050505050505050565b8015158114610a6f57600080fd5b60008060408385031215614fb857600080fd5b614fc183614d34565b91506020830135614fd181614f97565b809150509250929050565b60008060008060808587031215614ff257600080fd5b614ffb85614d34565b935061500960208601614d34565b925060408501359150606085013567ffffffffffffffff81111561502c57600080fd5b8501601f8101871361503d57600080fd5b61504c87823560208401614c03565b91505092959194509250565b60008060008060008060c0878903121561507157600080fd5b61507a87614d34565b95506020870135945060408701359350606087013560ff8116811461509e57600080fd5b9598949750929560808101359460a0909101359350915050565b600080604083850312156150cb57600080fd5b6150d483614d34565b9150614e4260208401614d34565b600060208083850312156150f557600080fd5b823567ffffffffffffffff8082111561510d57600080fd5b818501915085601f83011261512157600080fd5b81358181111561513357615133614bbc565b8060051b9150615144848301614bd2565b818152918301840191848101908884111561515e57600080fd5b938501935b83851015615188578435925061517883614f97565b8282529385019390850190615163565b98975050505050505050565b600181811c908216806151a857607f821691505b6020821081141561349757634e487b7160e01b600052602260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156151f9576151f96151c9565b500290565b634e487b7160e01b600052601260045260246000fd5b60008261523157634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561524857600080fd5b8151611d2f81614f97565b634e487b7160e01b600052603260045260246000fd5b6000835161527b818460208801614cb0565b83519083019061528f818360208801614cb0565b01949350505050565b6001600160a01b03831681526040602082015260006126346040830184614cdc565b600082516152cc818460208701614cb0565b9190910192915050565b6000828210156152e8576152e86151c9565b500390565b60008219821115615300576153006151c9565b500190565b805160208083015191908110156134975760001960209190910360031b1b16919050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351615361816017850160208801614cb0565b7f206973206d697373696e6720726f6c6520000000000000000000000000000000601791840191820152835161539e816028840160208801614cb0565b01602801949350505050565b60006001600160a01b038087168352808616602084015250836040830152608060608301526153dc6080830184614cdc565b9695505050505050565b6000602082840312156153f857600080fd5b8151611d2f81614b89565b634e487b7160e01b600052602160045260246000fd5b600081615428576154286151c9565b506000190190565b60006001600160e01b0383811690831681811015615450576154506151c9565b039392505050565b60006001600160e01b0380831681851680830382111561528f5761528f6151c9565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220554d8903e9d126d2c9459d6bb44940238e8f58f78f762d339b006f934618786664736f6c63430008080033