VeChain
Explorer
Mainnet
Search
Networks
Main
Test
Contract
0x09De21…52a7
Summary
Transactions
Transfers
Address
0x09De21fC43703661737b0a205260a13416A552a7
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x30B76A6862A190c24506CDefF93e46Ff61D978C9
Deployer
0x30B76A6862A190c24506CDefF93e46Ff61D978C9
Code
0x608060405234801561001057600080fd5b50600436106103415760003560e01c80636352211e116101bd578063a217fddf116100f9578063d547741f116100a2578063e985e9c51161007c578063e985e9c514610723578063f2fde38b1461075f578063f48cc32614610772578063f9ff78f41461078557600080fd5b8063d547741f146106f5578063d5abeb0114610708578063e6113cfa1461071057600080fd5b8063c3cda520116100d3578063c3cda520146106a8578063c87b56dd146106bb578063d5391393146106ce57600080fd5b8063a217fddf1461067a578063a22cb46514610682578063b88d4fde1461069557600080fd5b806384b0196e1161016657806391d148541161014057806391d148541461060757806391ddadf41461064057806395d89b411461065f5780639ab24eb01461066757600080fd5b806384b0196e146105c35780638da5cb5b146105de5780638e539e8c146105f457600080fd5b8063799161d511610197578063799161d5146105955780637ecebe00146105a85780638456cb59146105bb57600080fd5b80636352211e1461056757806370a082311461057a578063715018a61461058d57600080fd5b80633644e5151161028c5780634bf5d7e911610235578063587cde1e1161020f578063587cde1e146104fd5780635c19a95c146105295780635c975abb1461053c5780636108375f1461054757600080fd5b80634bf5d7e9146104da5780634e71d92d146104e25780634f6ccce7146104ea57600080fd5b80633f4ba83a116102665780633f4ba83a146104ac57806342842e0e146104b457806342966c68146104c757600080fd5b80633644e5151461047e57806336568abe146104865780633a46b1a81461049957600080fd5b806323b872dd116102ee578063282c51f3116102c8578063282c51f3146104315780632f2ff15d146104585780632f745c591461046b57600080fd5b806323b872dd146103e8578063248a9ca3146103fb57806324b76fd51461041e57600080fd5b8063081812fc1161031f578063081812fc14610398578063095ea7b3146103c357806318160ddd146103d657600080fd5b806301ffc9a71461034657806302fe53051461036e57806306fdde0314610383575b600080fd5b61035961035436600461460f565b610798565b60405190151581526020015b60405180910390f35b61038161037c3660046146eb565b6107a9565b005b61038b6107c8565b6040516103659190614778565b6103ab6103a636600461478b565b61085a565b6040516001600160a01b039091168152602001610365565b6103816103d13660046147c0565b610881565b6008545b604051908152602001610365565b6103816103f63660046147ea565b6109b8565b6103da61040936600461478b565b6000908152600b602052604090206001015490565b61038161042c366004614826565b610a2f565b6103da7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84881565b61038161046636600461486d565b610c85565b6103da6104793660046147c0565b610caa565b6103da610d52565b61038161049436600461486d565b610d61565b6103da6104a73660046147c0565b610de9565b610381610e83565b6103816104c23660046147ea565b610f53565b6103816104d536600461478b565b610f6e565b61038b61113c565b6103816111d4565b6103da6104f836600461478b565b61139c565b6103ab61050b366004614899565b6001600160a01b039081166000908152600e60205260409020541690565b610381610537366004614899565b611440565b600a5460ff16610359565b61055a61055536600461478b565b61144b565b60405161036591906148b4565b6103ab61057536600461478b565b611524565b6103da610588366004614899565b611589565b610381611623565b6103816105a3366004614899565b611635565b6103da6105b6366004614899565b6116dd565b6103816116fb565b6105cb6117a5565b60405161036597969594939291906148e2565b600a5461010090046001600160a01b03166103ab565b6103da61060236600461478b565b61184a565b61035961061536600461486d565b6000918252600b602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6106486118cd565b60405165ffffffffffff9091168152602001610365565b61038b6118d8565b6103da610675366004614899565b6118e7565b6103da600081565b6103816106903660046149a2565b611908565b6103816106a33660046149d9565b611913565b6103816106b6366004614a55565b611991565b61038b6106c936600461478b565b611ac7565b6103da7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b61038161070336600461486d565b611b2e565b6014546103da565b61038161071e3660046147c0565b611b53565b610359610731366004614ab5565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205460ff1690565b61038161076d366004614899565b611d43565b61035961078036600461478b565b611dd3565b610381610793366004614adf565b611e42565b60006107a382612031565b92915050565b6107b161206f565b80516107c4906015906020840190614569565b5050565b6060600080546107d790614b91565b80601f016020809104026020016040519081016040528092919081815260200182805461080390614b91565b80156108505780601f1061082557610100808354040283529160200191610850565b820191906000526020600020905b81548152906001019060200180831161083357829003601f168201915b5050505050905090565b6000610865826120cf565b506000908152600460205260409020546001600160a01b031690565b600061088c82611524565b9050806001600160a01b0316836001600160a01b0316141561091b5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560448201527f720000000000000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b336001600160a01b038216148061093757506109378133610731565b6109a95760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610912565b6109b38383612133565b505050565b6109c233826121a1565b610a245760405162461bcd60e51b815260206004820152602d60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526c1c881bdc88185c1c1c9bdd9959609a1b6064820152608401610912565b6109b3838383612220565b610a566040518060400160405280600681526020016552454445454d60d01b81525061242e565b610ac85760405162461bcd60e51b815260206004820152603a60248201527f455243373231202d2052656465656d3a205468697320636f6e7472616374206460448201527f6f6573206e6f7420737570706f7274207468652072656465656d0000000000006064820152608401610912565b60008281526002602052604090205433906001600160a01b03168114610b565760405162461bcd60e51b815260206004820152603760248201527f455243373231202d2052656465656d3a2063616c6c6572206973206e6f74207460448201527f6865206f776e6572206f662074686520746f6b656e49640000000000000000006064820152608401610912565b6000838152601960205260409020546001600160a01b031615610be15760405162461bcd60e51b815260206004820152602760248201527f455243373231202d2052656465656d3a20546f6b656e20616c7265616479207260448201527f656465656d6564000000000000000000000000000000000000000000000000006064820152608401610912565b6040805180820182526001600160a01b038381168252602080830186815260008881526019835294909420835181546001600160a01b03191693169290921782559251805192939192610c3a9260018501920190614569565b5090505082816001600160a01b03167f78e6c3f67f57c26578f2487b930b70d844bcc8dd8f4d629fb4af81252ab5aa6584604051610c789190614778565b60405180910390a3505050565b6000828152600b6020526040902060010154610ca081612459565b6109b38383612463565b6000610cb583611589565b8210610d295760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201527f74206f6620626f756e64730000000000000000000000000000000000000000006064820152608401610912565b506001600160a01b03919091166000908152600660209081526040808320938352929052205490565b6000610d5c612505565b905090565b6001600160a01b0381163314610ddf5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201527f20726f6c657320666f722073656c6600000000000000000000000000000000006064820152608401610912565b6107c48282612630565b6000610df36118cd565b65ffffffffffff168210610e495760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20667574757265206c6f6f6b75700000000000000000000000006044820152606401610912565b610e73610e55836126b3565b6001600160a01b0385166000908152600f6020526040902090612733565b6001600160e01b03169392505050565b610e8b61206f565b610eb160405180604001604052806005815260200164504155534560d81b81525061242e565b610f495760405162461bcd60e51b815260206004820152604260248201527f455243373231202d2050617573653a205468697320636f6e747261637420646f60448201527f6573206e6f742068617665207065726d697373696f6e20746f20756e7061757360648201527f652e000000000000000000000000000000000000000000000000000000000000608482015260a401610912565b610f516127e8565b565b6109b383838360405180602001604052806000815250611913565b7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a848610f9881612459565b3360009081527f6e6b940fd38f04962e96e3f162add428e7eb5daad8003be9ff37afca77846669602052604090205460ff166110165760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206275726e6572000000000000000000006044820152606401610912565b61103b60405180604001604052806004815260200163212aa92760e11b81525061242e565b6110ad5760405162461bcd60e51b815260206004820152603e60248201527f455243373231202d204275726e3a205468697320636f6e747261637420646f6560448201527f73206e6f742068617665207065726d697373696f6e20746f206275726e2e00006064820152608401610912565b336110b783611524565b6001600160a01b0316146111335760405162461bcd60e51b815260206004820152603560248201527f455243373231202d204275726e3a2063616c6c6572206973206e6f742074686560448201527f206f776e6572206f662074686520746f6b656e496400000000000000000000006064820152608401610912565b6107c48261283a565b6060436111476118cd565b65ffffffffffff161461119c5760405162461bcd60e51b815260206004820152601860248201527f566f7465733a2062726f6b656e20636c6f636b206d6f646500000000000000006044820152606401610912565b5060408051808201909152601d81527f6d6f64653d626c6f636b6e756d6265722666726f6d3d64656661756c74000000602082015290565b6112126040518060400160405280600981526020017f434c41494d41424c45000000000000000000000000000000000000000000000081525061242e565b6112845760405162461bcd60e51b815260206004820152602760248201527f455243373231202d205468697320636f6e7472616374206973206e6f7420636c60448201527f61696d61626c65000000000000000000000000000000000000000000000000006064820152608401610912565b6016546040517fc70f57540000000000000000000000000000000000000000000000000000000081523360048201819052916000916001600160a01b039091169063c70f57549060240160206040518083038186803b1580156112e657600080fd5b505afa1580156112fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131e9190614bc6565b9050806113935760405162461bcd60e51b815260206004820152602c60248201527f455243373231202d2063616c6c657220616464726573732063616e6e6f74206360448201527f6c61696d20746865206e667400000000000000000000000000000000000000006064820152608401610912565b6107c4826128e7565b60006113a760085490565b821061141b5760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201527f7574206f6620626f756e647300000000000000000000000000000000000000006064820152608401610912565b6008828154811061142e5761142e614be3565b90600052602060002001549050919050565b336107c48183612a18565b604080518082019091526000815260606020820152600082815260196020908152604091829020825180840190935280546001600160a01b03168352600181018054919284019161149b90614b91565b80601f01602080910402602001604051908101604052809291908181526020018280546114c790614b91565b80156115145780601f106114e957610100808354040283529160200191611514565b820191906000526020600020905b8154815290600101906020018083116114f757829003601f168201915b5050505050815250509050919050565b6000818152600260205260408120546001600160a01b0316806107a35760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610912565b60006001600160a01b0382166116075760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f74206120766160448201527f6c6964206f776e657200000000000000000000000000000000000000000000006064820152608401610912565b506001600160a01b031660009081526003602052604090205490565b61162b61206f565b610f516000612a8a565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a661165f81612459565b3360009081527ff70e363b3d7895af770c4a138460777d52eebd3cb9962ccc6b58721f6127bbc8602052604090205460ff166113935760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206d696e746572000000000000000000006044820152606401610912565b6001600160a01b0381166000908152601160205260408120546107a3565b61170361206f565b61172960405180604001604052806005815260200164504155534560d81b81525061242e565b61179d576040805162461bcd60e51b81526020600482015260248101919091527f455243373231202d2050617573653a205468697320636f6e747261637420646f60448201527f6573206e6f742068617665207065726d697373696f6e20746f2070617573652e6064820152608401610912565b610f51612be0565b6000606080828080836117d97f566f726a00000000000000000000000000000000000000000000000000000004600c612c1d565b6118047f312e302e30000000000000000000000000000000000000000000000000000005600d612c1d565b604080516000808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b60006118546118cd565b65ffffffffffff1682106118aa5760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20667574757265206c6f6f6b75700000000000000000000000006044820152606401610912565b6118be6118b6836126b3565b601090612733565b6001600160e01b031692915050565b6000610d5c43612cc1565b6060600180546107d790614b91565b6001600160a01b0381166000908152600f602052604081206118be90612d3f565b6107c4338383612d79565b61191d33836121a1565b61197f5760405162461bcd60e51b815260206004820152602d60248201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560448201526c1c881bdc88185c1c1c9bdd9959609a1b6064820152608401610912565b61198b84848484612e40565b50505050565b834211156119e15760405162461bcd60e51b815260206004820152601860248201527f566f7465733a207369676e6174757265206578706972656400000000000000006044820152606401610912565b604080517fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60208201526001600160a01b038816918101919091526060810186905260808101859052600090611a5b90611a539060a00160405160208183030381529060405280519060200120612ebe565b858585612f06565b9050611a6681612f2e565b8614611ab45760405162461bcd60e51b815260206004820152601460248201527f566f7465733a20696e76616c6964206e6f6e63650000000000000000000000006044820152606401610912565b611abe8188612a18565b50505050505050565b6060611ad2826120cf565b6000611adc612f56565b90506000815111611afc5760405180602001604052806000815250611b27565b80611b0684612f65565b604051602001611b17929190614bf9565b6040516020818303038152906040525b9392505050565b6000828152600b6020526040902060010154611b4981612459565b6109b38383612630565b7f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6611b7d81612459565b3360009081527ff70e363b3d7895af770c4a138460777d52eebd3cb9962ccc6b58721f6127bbc8602052604090205460ff16611bfb5760405162461bcd60e51b815260206004820152601660248201527f43616c6c6572206973206e6f742061206d696e746572000000000000000000006044820152606401610912565b611c256040518060400160405280600981526020016853454c45435449564560b81b81525061242e565b611cbd5760405162461bcd60e51b815260206004820152604c60248201527f455243373231202d204d696e743a205468697320636f6e747261637420646f6560448201527f73206e6f742068617665207065726d697373696f6e20746f206d696e7420736560648201527f6c65637420746f6b656e732e0000000000000000000000000000000000000000608482015260a401610912565b611ccb601380546001019055565b6000611cd660135490565b9050601454811115611d395760405162461bcd60e51b815260206004820152602660248201527f4552433732313a20546f6b656e4964206f757473696465206f6620746f6b656e604482015265081b1a5b5a5d60d21b6064820152608401610912565b61198b848461300f565b611d4b61206f565b6001600160a01b038116611dc75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610912565b611dd081612a8a565b50565b6000611dfc6040518060400160405280600681526020016552454445454d60d01b81525061242e565b8015611e1e57506000828152600260205260409020546001600160a01b031633145b80156107a35750506000908152601960205260409020546001600160a01b03161590565b611e4a61206f565b80600081518110611e5d57611e5d614be3565b6020026020010151601860405180604001604052806004815260200163212aa92760e11b815250604051611e919190614c28565b908152604051908190036020019020805491151560ff19909216919091179055805181906001908110611ec657611ec6614be3565b6020026020010151601860405180604001604052806005815260200164504155534560d81b815250604051611efb9190614c28565b908152604051908190036020019020805491151560ff19909216919091179055805181906001908110611f3057611f30614be3565b6020026020010151151581600081518110611f4d57611f4d614be3565b602002602001015115157f7f6ccb34ebb8d30f336e6c5763f6a8067f295aad751357b3065fdd37d026ed1260405160405180910390a350565b6000602083511015611fa257611f9b83613029565b90506107a3565b82828151611fb39260200190614569565b5060ff90506107a3565b600a80546001600160a01b038381166101008181027fffffffffffffffffffffff0000000000000000000000000000000000000000ff85161790945560405193909204169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b90565b60006001600160e01b031982167f7965db0b0000000000000000000000000000000000000000000000000000000014806107a357506107a382613080565b600a546001600160a01b03610100909104163314610f515760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610912565b6000818152600260205260409020546001600160a01b0316611dd05760405162461bcd60e51b815260206004820152601860248201527f4552433732313a20696e76616c696420746f6b656e20494400000000000000006044820152606401610912565b600081815260046020526040902080546001600160a01b0319166001600160a01b038416908117909155819061216882611524565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000806121ad83611524565b9050806001600160a01b0316846001600160a01b031614806121f457506001600160a01b0380821660009081526005602090815260408083209388168352929052205460ff165b806122185750836001600160a01b031661220d8461085a565b6001600160a01b0316145b949350505050565b826001600160a01b031661223382611524565b6001600160a01b0316146122975760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610912565b6001600160a01b0382166123125760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f2061646460448201527f72657373000000000000000000000000000000000000000000000000000000006064820152608401610912565b61231f83838360016130be565b826001600160a01b031661233282611524565b6001600160a01b0316146123965760405162461bcd60e51b815260206004820152602560248201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060448201526437bbb732b960d91b6064820152608401610912565b600081815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260038552838620805460001901905590871680865283862080546001019055868652600290945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a46109b383838360016130ca565b60006018826040516124409190614c28565b9081526040519081900360200190205460ff1692915050565b611dd081336130d6565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff166107c4576000828152600b602090815260408083206001600160a01b03851684529091529020805460ff191660011790556124c13390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6000306001600160a01b037f00000000000000000000000009de21fc43703661737b0a205260a13416a552a71614801561255e57507f00000000851caf3cfdb6e899cf5958bfb1ac3413d346d43539627e6be7ec1b4a46145b1561258857507f832bd7ecb24eaedac376c6f690f62e72720860afc9c0b1eb042af5dcb95fd4b690565b610d5c604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f84f1dbb26117f991ecd75469675019d33fe81c751fcb3c99805e361226eefd47918101919091527f06c015bd22b4c69690933c1058878ebdfef31f9aaae40bbe86d8a09fe1b2972c60608201524660808201523060a082015260009060c00160405160208183030381529060405280519060200120905090565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff16156107c4576000828152600b602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600063ffffffff82111561272f5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203360448201527f32206269747300000000000000000000000000000000000000000000000000006064820152608401610912565b5090565b81546000908181600581111561279057600061274e8461314b565b6127589085614c5a565b60008881526020902090915081015463ffffffff90811690871610156127805780915061278e565b61278b816001614c71565b92505b505b600061279e87878585613230565b905080156127da576127c3876127b5600184614c5a565b600091825260209091200190565b5464010000000090046001600160e01b03166127dd565b60005b979650505050505050565b6127f0613286565b600a805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b600061284582611524565b90506128558160008460016130be565b61285e82611524565b600083815260046020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526003845282852080546000190190558785526002909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a46107c48160008460016130ca565b6129116040518060400160405280600981526020016853454c45435449564560b81b81525061242e565b156129845760405162461bcd60e51b815260206004820152603f60248201527f455243373231202d204d696e743a205468697320636f6e74726163742072657160448201527f69757265732073656c65637420746f6b656e2049447320746f206d696e742e006064820152608401610912565b612992601280546001019055565b6129a0601380546001019055565b60006129ab60135490565b9050601454811115612a0e5760405162461bcd60e51b815260206004820152602660248201527f4552433732313a20546f6b656e4964206f757473696465206f6620746f6b656e604482015265081b1a5b5a5d60d21b6064820152608401610912565b6107c4828261300f565b6001600160a01b038281166000818152600e602052604080822080548686166001600160a01b0319821681179092559151919094169392849290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a46109b38183612a85866132d8565b6132e3565b600a5461010090046001600160a01b0316612aa6600083612463565b612ad07f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a683612463565b612afa7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84883612463565b612b247f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a682612630565b612b4e7f3c11d16cbaffd01df69ce1c404f6340ee057498f5f00246190ea54220576a84882612630565b612b59600082612630565b6017546040517f01378b580000000000000000000000000000000000000000000000000000000081523060048201526001600160a01b038481166024830152909116906301378b5890604401600060405180830381600087803b158015612bbf57600080fd5b505af1158015612bd3573d6000803e3d6000fd5b505050506107c482611fbd565b612be861344f565b600a805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861281d3390565b606060ff8314612c3057611f9b836134a2565b818054612c3c90614b91565b80601f0160208091040260200160405190810160405280929190818152602001828054612c6890614b91565b8015612cb55780601f10612c8a57610100808354040283529160200191612cb5565b820191906000526020600020905b815481529060010190602001808311612c9857829003601f168201915b505050505090506107a3565b600065ffffffffffff82111561272f5760405162461bcd60e51b815260206004820152602660248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203460448201527f38206269747300000000000000000000000000000000000000000000000000006064820152608401610912565b80546000908015612d7057612d59836127b5600184614c5a565b5464010000000090046001600160e01b0316611b27565b60009392505050565b816001600160a01b0316836001600160a01b03161415612ddb5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610912565b6001600160a01b03838116600081815260056020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c319101610c78565b612e4b848484612220565b612e57848484846134e1565b61198b5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6064820152608401610912565b60006107a3612ecb612505565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b6000806000612f1787878787613636565b91509150612f24816136fa565b5095945050505050565b6001600160a01b03811660009081526011602052604090208054600181018255905b50919050565b6060601580546107d790614b91565b60606000612f7283613863565b600101905060008167ffffffffffffffff811115612f9257612f9261462c565b6040519080825280601f01601f191660200182016040528015612fbc576020820181803683370190505b5090508181016020015b600019017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a850494508461300257613007565b612fc6565b509392505050565b6107c4828260405180602001604052806000815250613945565b600080829050601f8151111561306d57826040517f305a27a90000000000000000000000000000000000000000000000000000000081526004016109129190614778565b805161307882614c9f565b179392505050565b60006001600160e01b031982167f780e9d630000000000000000000000000000000000000000000000000000000014806107a357506107a3826139c3565b61198b84848484613a5e565b61198b84848484613ae3565b6000828152600b602090815260408083206001600160a01b038516845290915290205460ff166107c45761310981613af3565b613114836020613b05565b604051602001613125929190614cc3565b60408051601f198184030181529082905262461bcd60e51b825261091291600401614778565b60008161315a57506000919050565b6000600161316784613ce6565b901c6001901b9050600181848161318057613180614c89565b048201901c9050600181848161319857613198614c89565b048201901c905060018184816131b0576131b0614c89565b048201901c905060018184816131c8576131c8614c89565b048201901c905060018184816131e0576131e0614c89565b048201901c905060018184816131f8576131f8614c89565b048201901c9050600181848161321057613210614c89565b048201901c9050611b278182858161322a5761322a614c89565b04613d7a565b60005b818310156130075760006132478484613d90565b60008781526020902090915063ffffffff86169082015463ffffffff16111561327257809250613280565b61327d816001614c71565b93505b50613233565b600a5460ff16610f515760405162461bcd60e51b815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610912565b60006107a382611589565b816001600160a01b0316836001600160a01b0316141580156133055750600081115b156109b3576001600160a01b038316156133ad576001600160a01b0383166000908152600f60205260408120819061334890613dab61334386613db7565b613e36565b6001600160e01b031691506001600160e01b03169150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516133a2929190918252602082015260400190565b60405180910390a250505b6001600160a01b038216156109b3576001600160a01b0382166000908152600f6020526040812081906133e690613e7f61334386613db7565b6001600160e01b031691506001600160e01b03169150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a7248383604051613440929190918252602082015260400190565b60405180910390a25050505050565b600a5460ff1615610f515760405162461bcd60e51b815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610912565b606060006134af83613e8b565b604080516020808252818301909252919250600091906020820181803683375050509182525060208101929092525090565b60006001600160a01b0384163b1561362e57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290613525903390899088908890600401614d44565b602060405180830381600087803b15801561353f57600080fd5b505af192505050801561356f575060408051601f3d908101601f1916820190925261356c91810190614d80565b60015b613614573d80801561359d576040519150601f19603f3d011682016040523d82523d6000602084013e6135a2565b606091505b50805161360c5760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6064820152608401610912565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050612218565b506001612218565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561366d57506000905060036136f1565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156136c1573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166136ea576000600192509250506136f1565b9150600090505b94509492505050565b600081600481111561370e5761370e614d9d565b14156137175750565b600181600481111561372b5761372b614d9d565b14156137795760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610912565b600281600481111561378d5761378d614d9d565b14156137db5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610912565b60038160048111156137ef576137ef614d9d565b1415611dd05760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c60448201527f75650000000000000000000000000000000000000000000000000000000000006064820152608401610912565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f01000000000000000083106138ac577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef810000000083106138d8576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106138f657662386f26fc10000830492506010015b6305f5e100831061390e576305f5e100830492506008015b612710831061392257612710830492506004015b60648310613934576064830492506002015b600a83106107a35760010192915050565b61394f8383613ecc565b61395c60008484846134e1565b6109b35760405162461bcd60e51b815260206004820152603260248201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560448201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b6064820152608401610912565b60006001600160e01b031982167f80ac58cd000000000000000000000000000000000000000000000000000000001480613a2657506001600160e01b031982167f5b5e139f00000000000000000000000000000000000000000000000000000000145b806107a357507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b03198316146107a3565b613a6a8484848461406f565b600a5460ff161561198b5760405162461bcd60e51b815260206004820152602b60248201527f4552433732315061757361626c653a20746f6b656e207472616e73666572207760448201527f68696c65207061757365640000000000000000000000000000000000000000006064820152608401610912565b613aee8484836141ab565b61198b565b60606107a36001600160a01b03831660145b60606000613b14836002614db3565b613b1f906002614c71565b67ffffffffffffffff811115613b3757613b3761462c565b6040519080825280601f01601f191660200182016040528015613b61576020820181803683370190505b5090507f300000000000000000000000000000000000000000000000000000000000000081600081518110613b9857613b98614be3565b60200101906001600160f81b031916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110613be357613be3614be3565b60200101906001600160f81b031916908160001a9053506000613c07846002614db3565b613c12906001614c71565b90505b6001811115613c97577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110613c5357613c53614be3565b1a60f81b828281518110613c6957613c69614be3565b60200101906001600160f81b031916908160001a90535060049490941c93613c9081614dd2565b9050613c15565b508315611b275760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610912565b600080608083901c15613cfb57608092831c92015b604083901c15613d0d57604092831c92015b602083901c15613d1f57602092831c92015b601083901c15613d3157601092831c92015b600883901c15613d4357600892831c92015b600483901c15613d5557600492831c92015b600283901c15613d6757600292831c92015b600183901c156107a35760010192915050565b6000818310613d895781611b27565b5090919050565b6000613d9f6002848418614de9565b611b2790848416614c71565b6000611b278284614e0b565b60006001600160e01b0382111561272f5760405162461bcd60e51b815260206004820152602760248201527f53616665436173743a2076616c756520646f65736e27742066697420696e203260448201527f32342062697473000000000000000000000000000000000000000000000000006064820152608401610912565b600080613e72613e54613e476118cd565b65ffffffffffff166126b3565b613e6a613e6088612d3f565b868863ffffffff16565b879190614221565b915091505b935093915050565b6000611b278284614e33565b600060ff8216601f8111156107a3576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038216613f225760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610912565b6000818152600260205260409020546001600160a01b031615613f875760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610912565b613f956000838360016130be565b6000818152600260205260409020546001600160a01b031615613ffa5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610912565b6001600160a01b038216600081815260036020908152604080832080546001019055848352600290915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a46107c46000838360016130ca565b60018111156140e65760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e736563757469766520747260448201527f616e7366657273206e6f7420737570706f7274656400000000000000000000006064820152608401610912565b816001600160a01b0385166141425761413d81600880546000838152600960205260408120829055600182018355919091527ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee30155565b614165565b836001600160a01b0316856001600160a01b03161461416557614165858261422f565b6001600160a01b0384166141815761417c816142cc565b6141a4565b846001600160a01b0316846001600160a01b0316146141a4576141a4848261437b565b5050505050565b6001600160a01b0383166141cd576141ca6010613e7f61334384613db7565b50505b6001600160a01b0382166141ef576141ec6010613dab61334384613db7565b50505b6001600160a01b038381166000908152600e60205260408082205485841683529120546109b3929182169116836132e3565b600080613e728585856143bf565b6000600161423c84611589565b6142469190614c5a565b600083815260076020526040902054909150808214614299576001600160a01b03841660009081526006602090815260408083208584528252808320548484528184208190558352600790915290208190555b5060009182526007602090815260408084208490556001600160a01b039094168352600681528383209183525290812055565b6008546000906142de90600190614c5a565b6000838152600960205260408120546008805493945090928490811061430657614306614be3565b90600052602060002001549050806008838154811061432757614327614be3565b600091825260208083209091019290925582815260099091526040808220849055858252812055600880548061435f5761435f614e55565b6001900381819060005260206000200160009055905550505050565b600061438683611589565b6001600160a01b039093166000908152600660209081526040808320868452825280832085905593825260079052919091209190915550565b82546000908190801561450f5760006143dd876127b5600185614c5a565b60408051808201909152905463ffffffff8082168084526401000000009092046001600160e01b03166020840152919250908716101561445f5760405162461bcd60e51b815260206004820152601b60248201527f436865636b706f696e743a2064656372656173696e67206b65797300000000006044820152606401610912565b8563ffffffff16816000015163ffffffff1614156144af5784614487886127b5600186614c5a565b80546001600160e01b03929092166401000000000263ffffffff9092169190911790556144ff565b6040805180820190915263ffffffff80881682526001600160e01b0380881660208085019182528b54600181018d5560008d81529190912094519151909216640100000000029216919091179101555b602001519250839150613e779050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a5560008a815291822095519251909316640100000000029190931617920191909155905081613e77565b82805461457590614b91565b90600052602060002090601f01602090048101928261459757600085556145dd565b82601f106145b057805160ff19168380011785556145dd565b828001600101855582156145dd579182015b828111156145dd5782518255916020019190600101906145c2565b5061272f9291505b8082111561272f57600081556001016145e5565b6001600160e01b031981168114611dd057600080fd5b60006020828403121561462157600080fd5b8135611b27816145f9565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff8111828210171561466b5761466b61462c565b604052919050565b600067ffffffffffffffff83111561468d5761468d61462c565b6146a0601f8401601f1916602001614642565b90508281528383830111156146b457600080fd5b828260208301376000602084830101529392505050565b600082601f8301126146dc57600080fd5b611b2783833560208501614673565b6000602082840312156146fd57600080fd5b813567ffffffffffffffff81111561471457600080fd5b612218848285016146cb565b60005b8381101561473b578181015183820152602001614723565b8381111561198b5750506000910152565b60008151808452614764816020860160208601614720565b601f01601f19169290920160200192915050565b602081526000611b27602083018461474c565b60006020828403121561479d57600080fd5b5035919050565b80356001600160a01b03811681146147bb57600080fd5b919050565b600080604083850312156147d357600080fd5b6147dc836147a4565b946020939093013593505050565b6000806000606084860312156147ff57600080fd5b614808846147a4565b9250614816602085016147a4565b9150604084013590509250925092565b6000806040838503121561483957600080fd5b82359150602083013567ffffffffffffffff81111561485757600080fd5b614863858286016146cb565b9150509250929050565b6000806040838503121561488057600080fd5b82359150614890602084016147a4565b90509250929050565b6000602082840312156148ab57600080fd5b611b27826147a4565b602081526001600160a01b03825116602082015260006020830151604080840152612218606084018261474c565b7fff00000000000000000000000000000000000000000000000000000000000000881681526000602060e08184015261491e60e084018a61474c565b8381036040850152614930818a61474c565b606085018990526001600160a01b038816608086015260a0850187905284810360c0860152855180825283870192509083019060005b8181101561498257835183529284019291840191600101614966565b50909c9b505050505050505050505050565b8015158114611dd057600080fd5b600080604083850312156149b557600080fd5b6149be836147a4565b915060208301356149ce81614994565b809150509250929050565b600080600080608085870312156149ef57600080fd5b6149f8856147a4565b9350614a06602086016147a4565b925060408501359150606085013567ffffffffffffffff811115614a2957600080fd5b8501601f81018713614a3a57600080fd5b614a4987823560208401614673565b91505092959194509250565b60008060008060008060c08789031215614a6e57600080fd5b614a77876147a4565b95506020870135945060408701359350606087013560ff81168114614a9b57600080fd5b9598949750929560808101359460a0909101359350915050565b60008060408385031215614ac857600080fd5b614ad1836147a4565b9150614890602084016147a4565b60006020808385031215614af257600080fd5b823567ffffffffffffffff80821115614b0a57600080fd5b818501915085601f830112614b1e57600080fd5b813581811115614b3057614b3061462c565b8060051b9150614b41848301614642565b8181529183018401918481019088841115614b5b57600080fd5b938501935b83851015614b855784359250614b7583614994565b8282529385019390850190614b60565b98975050505050505050565b600181811c90821680614ba557607f821691505b60208210811415612f5057634e487b7160e01b600052602260045260246000fd5b600060208284031215614bd857600080fd5b8151611b2781614994565b634e487b7160e01b600052603260045260246000fd5b60008351614c0b818460208801614720565b835190830190614c1f818360208801614720565b01949350505050565b60008251614c3a818460208701614720565b9190910192915050565b634e487b7160e01b600052601160045260246000fd5b600082821015614c6c57614c6c614c44565b500390565b60008219821115614c8457614c84614c44565b500190565b634e487b7160e01b600052601260045260246000fd5b80516020808301519190811015612f505760001960209190910360031b1b16919050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351614cfb816017850160208801614720565b7f206973206d697373696e6720726f6c65200000000000000000000000000000006017918401918201528351614d38816028840160208801614720565b01602801949350505050565b60006001600160a01b03808716835280861660208401525083604083015260806060830152614d76608083018461474c565b9695505050505050565b600060208284031215614d9257600080fd5b8151611b27816145f9565b634e487b7160e01b600052602160045260246000fd5b6000816000190483118215151615614dcd57614dcd614c44565b500290565b600081614de157614de1614c44565b506000190190565b600082614e0657634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160e01b0383811690831681811015614e2b57614e2b614c44565b039392505050565b60006001600160e01b03808316818516808303821115614c1f57614c1f614c44565b634e487b7160e01b600052603160045260246000fdfea2646970667358221220e7a68bdc6fcdca3a60f58988a6f8f772b8337d2f73c8d2fba13f0a959355223064736f6c63430008080033