VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x4ea42E…5DCa
Summary
Transactions
Transfers
Address
0x4ea42E0385d9cc991DeAdBBF9Df502Ee11985DCa
VET
0.00
VET
VTHO
0.00
VTHO
Master
0xbf8df3046186c6cB44c25130910B44dA14eAbF58
Deployer
0xbf8df3046186c6cB44c25130910B44dA14eAbF58
Code
0x6080604052600436106102c55760003560e01c80636352211e11610179578063ad3cb1cc116100d6578063cbc95fa71161008a578063f514e66411610064578063f514e66414610849578063fbca6ba614610869578063ff9810991461088957600080fd5b8063cbc95fa7146107a1578063ddc63262146107c1578063e985e9c5146107e157600080fd5b8063bf7e214f116100bb578063bf7e214f14610724578063c4d66de814610761578063c87b56dd1461078157600080fd5b8063ad3cb1cc146106bb578063b88d4fde1461070457600080fd5b80638456cb591161012d57806395d89b411161011257806395d89b4114610666578063a22cb4651461067b578063a694fc3a1461069b57600080fd5b80638456cb59146106235780638fb360371461063857600080fd5b80636fb8616e1161015e5780636fb8616e146105c357806370a08231146105e35780637a9e5e4b1461060357600080fd5b80636352211e1461058d5780636c18d1ad146105ad57600080fd5b80632f745c591161022757806342966c68116101db5780634f6ccce7116101c05780634f6ccce71461052157806352d1902d146105415780635c975abb1461055657600080fd5b806342966c68146104ee5780634f1ef2861461050e57600080fd5b80633f4ba83a1161020c5780633f4ba83a146104995780634174caf7146104ae57806342842e0e146104ce57600080fd5b80632f745c591461045957806332f266941461047957600080fd5b8063081812fc1161027e5780630d831203116102635780630d831203146103db57806318160ddd146103fb57806323b872dd1461043957600080fd5b8063081812fc1461039b578063095ea7b3146103bb57600080fd5b806301ffc9a7116102af57806301ffc9a71461032957806306fdde031461035957806307920da81461037b57600080fd5b8062a5ae21146102ca5780630121b93f14610307575b600080fd5b3480156102d657600080fd5b506102ea6102e5366004614398565b6108b6565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561031357600080fd5b50610327610322366004614398565b6109e6565b005b34801561033557600080fd5b506103496103443660046143c7565b610e20565b60405190151581526020016102fe565b34801561036557600080fd5b5061036e610e31565b6040516102fe9190614434565b34801561038757600080fd5b50610349610396366004614398565b610ee7565b3480156103a757600080fd5b506102ea6103b6366004614398565b6112a5565b3480156103c757600080fd5b506103276103d636600461445c565b6112ed565b3480156103e757600080fd5b506103276103f6366004614398565b6112f8565b34801561040757600080fd5b507f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02545b6040519081526020016102fe565b34801561044557600080fd5b50610327610454366004614488565b61133d565b34801561046557600080fd5b5061042b61047436600461445c565b6113e1565b34801561048557600080fd5b5061042b610494366004614398565b611467565b3480156104a557600080fd5b50610327611491565b3480156104ba57600080fd5b506102ea6104c936600461458e565b6114a4565b3480156104da57600080fd5b506103276104e9366004614488565b6114af565b3480156104fa57600080fd5b50610327610509366004614398565b6114cf565b61032761051c3660046145c3565b6114db565b34801561052d57600080fd5b5061042b61053c366004614398565b6114f6565b34801561054d57600080fd5b5061042b611592565b34801561056257600080fd5b507fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff16610349565b34801561059957600080fd5b506102ea6105a8366004614398565b6115c1565b3480156105b957600080fd5b5061042b60005481565b3480156105cf57600080fd5b506103276105de366004614613565b6115cc565b3480156105ef57600080fd5b5061042b6105fe36600461466c565b6118d3565b34801561060f57600080fd5b5061032761061e36600461466c565b61195a565b34801561062f57600080fd5b50610327611a1f565b34801561064457600080fd5b5061064d611a30565b6040516001600160e01b031990911681526020016102fe565b34801561067257600080fd5b5061036e611a94565b34801561068757600080fd5b50610327610696366004614697565b611ae5565b3480156106a757600080fd5b506103276106b6366004614398565b611af0565b3480156106c757600080fd5b5061036e6040518060400160405280600581526020017f352e302e3000000000000000000000000000000000000000000000000000000081525081565b34801561071057600080fd5b5061032761071f3660046146d0565b611de2565b34801561073057600080fd5b507ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00546001600160a01b03166102ea565b34801561076d57600080fd5b5061032761077c36600461466c565b611df9565b34801561078d57600080fd5b5061036e61079c366004614398565b611fd2565b3480156107ad57600080fd5b506103276107bc3660046147da565b611fdd565b3480156107cd57600080fd5b506103276107dc366004614398565b612052565b3480156107ed57600080fd5b506103496107fc366004614894565b6001600160a01b0391821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793056020908152604080832093909416825291909152205460ff1690565b34801561085557600080fd5b506103276108643660046148c2565b61246f565b34801561087557600080fd5b50610327610884366004614398565b6124d7565b34801561089557600080fd5b506108a96108a4366004614398565b6124fe565b6040516102fe9190614945565b6000818152600160205260408120546001600160a01b031680610914576109116040518060400160405280601881526020017f7462614163636f756e74496d706c656d656e746174696f6e000000000000000081525061251b565b90505b6109406040518060400160405280600b81526020016a746261526567697374727960a81b81525061251b565b6040517f5e9bc5360000000000000000000000000000000000000000000000000000000081526001600160a01b03838116600483015246602483015230604483015260648201869052608482018690529190911690635e9bc5369060a401602060405180830381865afa1580156109bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109df91906149a5565b9392505050565b6109f3335b60003661256b565b8060006109ff826115c1565b6001600160a01b031603610a5a5760405162461bcd60e51b815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f742065786973740000000000000060448201526064015b60405180910390fd5b6000610a65836108b6565b90506000610a8d6040518060400160405280600381526020016233b7bb60e91b81525061251b565b90506000816001600160a01b0316639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610acf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610af391906149c2565b90506000826001600160a01b031663eb9019d485856001600160a01b031663d06efeda866040518263ffffffff1660e01b8152600401610b3591815260200190565b602060405180830381865afa158015610b52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7691906149c2565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381865afa158015610bbf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be391906149c2565b905080600003610bf557505050505050565b6000610c00876126cd565b8051805191925090606090600003610d2e576040517f42e65496000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038716906342e6549690602401600060405180830381865afa158015610c70573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c9891908101906149db565b80519092508067ffffffffffffffff811115610cb657610cb66144c9565b604051908082528060200260200182016040528015610cdf578160200160208202803683370190505b50602085015260005b81811015610d2b57610cfb826064614a82565b85602001518281518110610d1157610d11614aa4565b60ff90921660209283029190910190910152600101610ce8565b50505b610d3c8484602001516127df565b9050866001600160a01b03166374420f4c876000888686604051602401610d6593929190614aba565b60408051601f198184030181529181526020820180516001600160e01b03167f53ed6399000000000000000000000000000000000000000000000000000000001790525160e085901b6001600160e01b0319168152610dcc93929190600090600401614b17565b6000604051808303816000875af1158015610deb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610e139190810190614b50565b50505050505050505b5050565b6000610e2b82612906565b92915050565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793008054606091908190610e6390614bbe565b80601f0160208091040260200160405190810160405280929190818152602001828054610e8f90614bbe565b8015610edc5780601f10610eb157610100808354040283529160200191610edc565b820191906000526020600020905b815481529060010190602001808311610ebf57829003601f168201915b505050505091505090565b600080610ef3836108b6565b90506000610f1b6040518060400160405280600381526020016233b7bb60e91b81525061251b565b90506000816001600160a01b0316639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f5d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f8191906149c2565b6040517fd06efeda000000000000000000000000000000000000000000000000000000008152600481018290529091506000906001600160a01b0384169063d06efeda90602401602060405180830381865afa158015610fe5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100991906149c2565b90506000611032604051806040016040528060048152602001633119ba3960e11b81525061251b565b6040516370a0823160e01b81526001600160a01b03878116600483015291909116906370a0823190602401602060405180830381865afa15801561107a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109e91906149c2565b905060006110cb604051806040016040528060088152602001673932bbb0b93232b960c11b81525061251b565b6001600160a01b0316628f33d76110e3600187614bf8565b6040516001600160e01b031960e084901b16815260048101919091526001600160a01b0389166024820152604401602060405180830381865afa15801561112e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115291906149c2565b6040517f43859632000000000000000000000000000000000000000000000000000000008152600481018690526001600160a01b038881166024830152919250600091871690634385963290604401602060405180830381865afa1580156111be573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111e29190614c0b565b6040517feb9019d40000000000000000000000000000000000000000000000000000000081526001600160a01b0389811660048301526024820187905291925060009188169063eb9019d490604401602060405180830381865afa15801561124e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061127291906149c2565b905060008411806112835750600083115b806112975750600081118015611297575081155b9a9950505050505050505050565b60006112b082612944565b5060008281527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b0316610e2b565b610e1c82823361299c565b611301336109eb565b60008190556040518181527f4b392313c432b5ea962913f39ba6f53a1982c4d5bb7b7ee362825049407bcc8a906020015b60405180910390a150565b6001600160a01b03821661136757604051633250574960e11b815260006004820152602401610a51565b60006113748383336129a9565b9050836001600160a01b0316816001600160a01b0316146113db576040517f64283d7b0000000000000000000000000000000000000000000000000000000081526001600160a01b0380861660048301526024820184905282166044820152606401610a51565b50505050565b60007f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0061140d846118d3565b831061143e5760405163295f44f760e21b81526001600160a01b038516600482015260248101849052604401610a51565b6001600160a01b0384166000908152602091825260408082208583529092522054905092915050565b6000610e2b82604051806040016040528060068152602001651c995dd85c9960d21b8152506129be565b61149a336109eb565b6114a2612a10565b565b6000610e2b8261251b565b6114ca83838360405180602001604052806000815250611de2565b505050565b610e1c600082336129a9565b6114e3612a7c565b6114ec82612b33565b610e1c8282612b3c565b60007f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed006115417f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed025490565b831061156a5760405163295f44f760e21b81526000600482015260248101849052604401610a51565b80600201838154811061157f5761157f614aa4565b9060005260206000200154915050919050565b600061159c612c24565b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc90565b6000610e2b82612944565b60008381527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260409020546001600160a01b0316156116505760405162461bcd60e51b815260206004820181905260248201527f5644503a20546f6b656e204964206d75737420626520617661696c61626c652e6044820152606401610a51565b61165a8284612c6d565b6116648382612c87565b6116a26040518060400160405280601881526020017f7462614163636f756e74496d706c656d656e746174696f6e000000000000000081525061251b565b6001600085815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b031602179055506117056040518060400160405280600b81526020016a746261526567697374727960a81b81525061251b565b6000848152600160205260408082205490517fda7323b30000000000000000000000000000000000000000000000000000000081526001600160a01b039182166004820152466024820152306044820152606481018790526084810187905260c060a482015260c4810192909252919091169063da7323b39060e4016020604051808303816000875af11580156117a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117c491906149a5565b5060006117d0846108b6565b9050806001600160a01b03166374420f4c61180660405180604001604052806004815260200163766f743360e01b81525061251b565b6040516001600160a01b038516602482015260009060440160408051601f198184030181529181526020820180516001600160e01b03167f5c19a95c000000000000000000000000000000000000000000000000000000001790525160e085901b6001600160e01b031916815261188593929190600090600401614b17565b6000604051808303816000875af11580156118a4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118cc9190810190614b50565b5050505050565b60007f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793006001600160a01b038316611939576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610a51565b6001600160a01b039092166000908152600390920160205250604090205490565b3361198c7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00546001600160a01b031690565b6001600160a01b0316816001600160a01b0316146119c75760405162d1953b60e31b81526001600160a01b0382166004820152602401610a51565b816001600160a01b03163b600003611a16576040517fc2f31e5e0000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610a51565b610e1c82612cfa565b611a28336109eb565b6114a2612d6d565b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00805460009190600160a01b900460ff16611a6c576000611a8e565b7f8fb36037000000000000000000000000000000000000000000000000000000005b91505090565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930180546060917f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930091610e6390614bbe565b610e1c338383612dc8565b611af9336109eb565b806000611b05826115c1565b6001600160a01b031603611b5b5760405162461bcd60e51b815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f74206578697374000000000000006044820152606401610a51565b6000611b66836108b6565b90506000611b8f604051806040016040528060048152602001633119ba3960e11b81525061251b565b6040516370a0823160e01b81526001600160a01b03848116600483015291909116906370a0823190602401602060405180830381865afa158015611bd7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bfb91906149c2565b905060008111611c0b5750505050565b816001600160a01b03166374420f4c611c3f604051806040016040528060048152602001633119ba3960e11b81525061251b565b6000611c6660405180604001604052806004815260200163766f743360e01b81525061251b565b6040516001600160a01b0390911660248201526044810186905260640160408051601f198184030181529181526020820180516001600160e01b03167f095ea7b3000000000000000000000000000000000000000000000000000000001790525160e085901b6001600160e01b0319168152611cea93929190600090600401614b17565b6000604051808303816000875af1158015611d09573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611d319190810190614b50565b50816001600160a01b03166374420f4c611d6660405180604001604052806004815260200163766f743360e01b81525061251b565b600084604051602401611d7b91815260200190565b60408051601f198184030181529181526020820180516001600160e01b03167fa694fc3a000000000000000000000000000000000000000000000000000000001790525160e085901b6001600160e01b031916815261188593929190600090600401614b17565b611ded84848461133d565b6113db84848484612ea4565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff16600081158015611e445750825b905060008267ffffffffffffffff166001148015611e615750303b155b905081158015611e6f575080155b15611ea6576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611eda57845468ff00000000000000001916680100000000000000001785555b611f4e6040518060400160405280600e81526020017f566544656c6567617465506f6f6c0000000000000000000000000000000000008152506040518060400160405280600381526020017f5644500000000000000000000000000000000000000000000000000000000000815250612fc6565b611f56612fd8565b611f5e612fd8565b611f66612fe0565b611f6f86612ff0565b611f77612fd8565b611f7f612fd8565b8315611fca57845468ff000000000000000019168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b6060610e2b82613001565b82611fe7816115c1565b6001600160a01b0316336001600160a01b0316146120475760405162461bcd60e51b815260206004820152601360248201527f4d75737420626520746f6b656e206f776e6572000000000000000000000000006044820152606401610a51565b6113db84848461315b565b61205b336109eb565b806000612067826115c1565b6001600160a01b0316036120bd5760405162461bcd60e51b815260206004820152601960248201527f5644503a20546f6b656e20646f6573206e6f74206578697374000000000000006044820152606401610a51565b60006120c8836108b6565b905060006120f06040518060400160405280600381526020016233b7bb60e91b81525061251b565b905060006001826001600160a01b0316639cbe5efd6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612134573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061215891906149c2565b6121629190614bf8565b9050600061218f604051806040016040528060088152602001673932bbb0b93232b960c11b81525061251b565b6040517e8f33d7000000000000000000000000000000000000000000000000000000008152600481018490526001600160a01b038681166024830152919250600091831690628f33d790604401602060405180830381865afa1580156121f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061221d91906149c2565b9050806000036122305750505050505050565b6040517fe70eb392000000000000000000000000000000000000000000000000000000008152600481018490526001600160a01b03868116602483015283169063e70eb39290604401600060405180830381600087803b15801561229357600080fd5b505af11580156122a7573d6000803e3d6000fd5b5050505060008054612710836122bd9190614a82565b6122c79190614c28565b905060006122f86040518060400160405280600c81526020016b199959549958da5c1a595b9d60a21b81525061251b565b905061236089604051806040016040528060068152602001651c995dd85c9960d21b81525084866123478e604051806040016040528060068152602001651c995dd85c9960d21b8152506129be565b6123519190614c3f565b61235b9190614bf8565b613224565b60008211801561237857506001600160a01b03811615155b1561246457866001600160a01b03166374420f4c6123b1604051806040016040528060048152602001633119ba3960e11b81525061251b565b60006123e06040518060400160405280600c81526020016b199959549958da5c1a595b9d60a21b81525061251b565b6040516001600160a01b0390911660248201526044810187905260640160408051601f198184030181529181526020820180516001600160e01b03167fa9059cbb000000000000000000000000000000000000000000000000000000001790525160e085901b6001600160e01b0319168152610dcc93929190600090600401614b17565b505050505050505050565b612478336109eb565b6124828282613278565b816040516124909190614c52565b6040519081900381206001600160a01b0383168252907f730d2c947df3fb4e9d1b8da26c871ddd4d9aa91d7436a0419317f40cc3f8cc3a9060200160405180910390a25050565b6124e0336109eb565b6124e981612052565b6124f281611af0565b6124fb816109e6565b50565b6040805180820190915260608082526020820152610e2b826126cd565b60007fb0d6748fa93bf3ed63f92055e4aafaa296bc4e6cb8270c656d0441fd8e09763060405161254c908490614c52565b908152604051908190036020019020546001600160a01b031692915050565b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a006000806125e16125c37ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00546001600160a01b031690565b87306125d3600460008a8c614c6e565b6125dc91614c98565b6132e3565b9150915081611fca5763ffffffff8116156126aa57825460ff60a01b1916600160a01b1783556126387ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00546001600160a01b031690565b6001600160a01b03166394c7d7ee8787876040518463ffffffff1660e01b815260040161266793929190614cc8565b600060405180830381600087803b15801561268157600080fd5b505af1158015612695573d6000803e3d6000fd5b5050845460ff60a01b1916855550611fca9050565b60405162d1953b60e31b81526001600160a01b0387166004820152602401610a51565b6040805180820182526060808252602080830182905260008581527fd277e5aede2b65b869a92da47023688696a856a59347419ee0fb85a624d713f482528490208451815492830281018401865294850182815293949390928492849184018282801561275957602002820191906000526020600020905b815481526020019060010190808311612745575b50505050508152602001600182018054806020026020016040519081016040528092919081815260200182805480156127cf57602002820191906000526020600020906000905b825461010083900a900460ff168152602060019283018181049485019490930390920291018084116127a05790505b5050505050815250509050919050565b6060815167ffffffffffffffff8111156127fb576127fb6144c9565b604051908082528060200260200182016040528015612824578160200160208202803683370190505b5090506000805b83518110156128b557606484828151811061284857612848614aa4565b602002602001015160ff168661285e9190614c28565b6128689190614a82565b83828151811061287a5761287a614aa4565b60200260200101818152505082818151811061289857612898614aa4565b6020026020010151826128ab9190614c3f565b915060010161282b565b50838110156128ff576128c88185614bf8565b82600184516128d79190614bf8565b815181106128e7576128e7614aa4565b602002602001018181516128fb9190614c3f565b9052505b5092915050565b60006001600160e01b031982167f49064906000000000000000000000000000000000000000000000000000000001480610e2b5750610e2b82613408565b60008181527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260408120546001600160a01b031680610e2b57604051637e27328960e01b815260048101849052602401610a51565b6114ca8383836001613446565b60006129b68484846135c5565b949350505050565b60008281527fa6ec71ebee4daafeb98631a9e1229a4b789e4d3ffac0dc3377ec79d21a372fb2602052604080822090516129f9908490614c52565b908152602001604051809103902054905092915050565b612a186135da565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300805460ff191681557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b039091168152602001611332565b306001600160a01b037f0000000000000000000000004ea42e0385d9cc991deadbbf9df502ee11985dca161480612b1557507f0000000000000000000000004ea42e0385d9cc991deadbbf9df502ee11985dca6001600160a01b0316612b097f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b6001600160a01b031614155b156114a25760405163703e46dd60e11b815260040160405180910390fd5b6124fb336109eb565b816001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612b96575060408051601f3d908101601f19168201909252612b93918101906149c2565b60015b612bbe57604051634c9c8ce360e01b81526001600160a01b0383166004820152602401610a51565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8114612c1a576040517faa1d49a400000000000000000000000000000000000000000000000000000000815260048101829052602401610a51565b6114ca8383613635565b306001600160a01b037f0000000000000000000000004ea42e0385d9cc991deadbbf9df502ee11985dca16146114a25760405163703e46dd60e11b815260040160405180910390fd5b610e1c82826040518060200160405280600081525061368b565b60008281527f0542a41881ee128a365a727b282c86fa859579490b9bb45aab8503648c8e790060208190526040909120612cc18382614d4f565b506040518381527ff8e1a15aba9398e019f0b49df1a4fde98ee17ae345cb5f6b5e2c27f5033e8ce79060200160405180910390a1505050565b7ff3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a0080546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b612d756136a2565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300805460ff191660011781557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833612a64565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab00793006001600160a01b038316612e34576040517f5b08ba180000000000000000000000000000000000000000000000000000000081526001600160a01b0384166004820152602401610a51565b6001600160a01b038481166000818152600584016020908152604080832094881680845294825291829020805460ff191687151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a350505050565b6001600160a01b0383163b156113db57604051630a85bd0160e11b81526001600160a01b0384169063150b7a0290612ee6903390889087908790600401614e0f565b6020604051808303816000875af1925050508015612f21575060408051601f3d908101601f19168201909252612f1e91810190614e4b565b60015b612f8a573d808015612f4f576040519150601f19603f3d011682016040523d82523d6000602084013e612f54565b606091505b508051600003612f8257604051633250574960e11b81526001600160a01b0385166004820152602401610a51565b805181602001fd5b6001600160e01b03198116630a85bd0160e11b146118cc57604051633250574960e11b81526001600160a01b0385166004820152602401610a51565b612fce6136fe565b610e1c8282613765565b6114a26136fe565b612fe86136fe565b6114a26137a8565b612ff86136fe565b6124fb816137db565b60607f0542a41881ee128a365a727b282c86fa859579490b9bb45aab8503648c8e790061302d83612944565b506000838152602082905260408120805461304790614bbe565b80601f016020809104026020016040519081016040528092919081815260200182805461307390614bbe565b80156130c05780601f10613095576101008083540402835291602001916130c0565b820191906000526020600020905b8154815290600101906020018083116130a357829003601f168201915b50505050509050600061310360408051808201909152601781527f68747470733a2f2f766544656c65676174652e7665742f000000000000000000602082015290565b9050805160000361311657509392505050565b815115613149578082604051602001613130929190614e68565b6040516020818303038152906040529350505050919050565b613152856137ec565b95945050505050565b80518251146131ac5760405162461bcd60e51b815260206004820152601960248201527f566f7465734c69623a204c656e677468206d69736d61746368000000000000006044820152606401610a51565b6040518060400160405280838152602001828152506131e87fd277e5aede2b65b869a92da47023688696a856a59347419ee0fb85a624d713f490565b600085815260209182526040902082518051919261320b9284929091019061429b565b506020828101518051611fca92600185019201906142e6565b60008381527fa6ec71ebee4daafeb98631a9e1229a4b789e4d3ffac0dc3377ec79d21a372fb26020526040908190209051829190613263908590614c52565b90815260405190819003602001902055505050565b807fb0d6748fa93bf3ed63f92055e4aafaa296bc4e6cb8270c656d0441fd8e0976306040516132a8908590614c52565b90815260405190819003602001812080546001600160a01b03939093166001600160a01b031990931692909217909155612490908390614c52565b6040516001600160a01b03848116602483015283811660448301526001600160e01b03198316606483015260009182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b03167fb7009613000000000000000000000000000000000000000000000000000000001790525161336b9190614c52565b600060405180830381855afa9150503d80600081146133a6576040519150601f19603f3d011682016040523d82523d6000602084013e6133ab565b606091505b509150915081156133fd5760408151106133dd57808060200190518101906133d39190614e97565b90945092506133fd565b60208151106133fd57808060200190518101906133fa9190614c0b565b93505b505094509492505050565b60006001600160e01b031982167f780e9d63000000000000000000000000000000000000000000000000000000001480610e2b5750610e2b82613885565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079300818061347b57506001600160a01b03831615155b1561359457600061348b85612944565b90506001600160a01b038416158015906134b75750836001600160a01b0316816001600160a01b031614155b801561350857506001600160a01b0380821660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079305602090815260408083209388168352929052205460ff16155b1561354a576040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526001600160a01b0385166004820152602401610a51565b82156135925784866001600160a01b0316826001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45b505b600093845260040160205250506040902080546001600160a01b0319166001600160a01b0392909216919091179055565b60006135cf6136a2565b6129b6848484613920565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff166114a2576040517f8dfc202b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61363e82613a2b565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115613683576114ca8282613aa2565b610e1c613b0f565b6136958383613b47565b6114ca6000848484612ea4565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f033005460ff16156114a2576040517fd93c066500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff166114a2576040517fd7e6bcf800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61376d6136fe565b7f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079300806137998482614d4f565b50600181016113db8382614d4f565b6137b06136fe565b7fcd5ed15c6e187e77e9aee88184c21f4f2182ab5827cb3b7e07fbedcd63f03300805460ff19169055565b6137e36136fe565b6124fb81612cfa565b60606137f782612944565b50600061383460408051808201909152601781527f68747470733a2f2f766544656c65676174652e7665742f000000000000000000602082015290565b9050600081511161385457604051806020016040528060008152506109df565b8061385e84613bc5565b60405160200161386f929190614e68565b6040516020818303038152906040529392505050565b60006001600160e01b031982167f80ac58cd0000000000000000000000000000000000000000000000000000000014806138e857506001600160e01b031982167f5b5e139f00000000000000000000000000000000000000000000000000000000145b80610e2b57507f01ffc9a7000000000000000000000000000000000000000000000000000000006001600160e01b0319831614610e2b565b60008061392e858585613c65565b90506001600160a01b0381166139c9576139c4847f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02805460008381527f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0360205260408120829055600182018355919091527fa42f15e5d656f8155fd7419d740a6073999f19cd6e061449ce4a257150545bf20155565b6139ec565b846001600160a01b0316816001600160a01b0316146139ec576139ec8185613da6565b6001600160a01b038516613a0857613a0384613e5c565b6129b6565b846001600160a01b0316816001600160a01b0316146129b6576129b68585613f57565b806001600160a01b03163b600003613a6157604051634c9c8ce360e01b81526001600160a01b0382166004820152602401610a51565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b031684604051613abf9190614c52565b600060405180830381855af49150503d8060008114613afa576040519150601f19603f3d011682016040523d82523d6000602084013e613aff565b606091505b5091509150613152858383613fc4565b34156114a2576040517fb398979f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038216613b7157604051633250574960e11b815260006004820152602401610a51565b6000613b7f838360006129a9565b90506001600160a01b038116156114ca576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610a51565b60606000613bd283614039565b600101905060008167ffffffffffffffff811115613bf257613bf26144c9565b6040519080825280601f01601f191660200182016040528015613c1c576020820181803683370190505b5090508181016020015b600019017f3031323334353637383961626364656600000000000000000000000000000000600a86061a8153600a8504945084613c2657509392505050565b60008281527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930260205260408120547f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079300906001600160a01b0390811690841615613cd357613cd381858761411b565b6001600160a01b03811615613d1357613cf0600086600080613446565b6001600160a01b0381166000908152600383016020526040902080546000190190555b6001600160a01b03861615613d44576001600160a01b03861660009081526003830160205260409020805460010190555b600085815260028301602052604080822080546001600160a01b0319166001600160a01b038a811691821790925591518893918516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a495945050505050565b7f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed006000613dd2846118d3565b6000848152600184016020526040902054909150808214613e27576001600160a01b03851660009081526020848152604080832085845282528083205484845281842081905583526001860190915290208190555b50600092835260018201602090815260408085208590556001600160a01b039095168452918252838320908352905290812055565b7f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed02547f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0090600090613eaf90600190614bf8565b6000848152600384016020526040812054600285018054939450909284908110613edb57613edb614aa4565b9060005260206000200154905080846002018381548110613efe57613efe614aa4565b600091825260208083209091019290925582815260038601909152604080822084905586825281205560028401805480613f3a57613f3a614ecf565b600190038181906000526020600020016000905590555050505050565b7f645e039705490088daad89bae25049a34f4a9072d398537b1ab2425f24cbed0060006001613f85856118d3565b613f8f9190614bf8565b6001600160a01b0390941660009081526020838152604080832087845282528083208690559482526001909301909252502055565b606082613fd957613fd482614198565b6109df565b8151158015613ff057506001600160a01b0384163b155b15614032576040517f9996b3150000000000000000000000000000000000000000000000000000000081526001600160a01b0385166004820152602401610a51565b50806109df565b6000807a184f03e93ff9f4daa797ed6e38ed64bf6a1f0100000000000000008310614082577a184f03e93ff9f4daa797ed6e38ed64bf6a1f010000000000000000830492506040015b6d04ee2d6d415b85acef810000000083106140ae576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc1000083106140cc57662386f26fc10000830492506010015b6305f5e10083106140e4576305f5e100830492506008015b61271083106140f857612710830492506004015b6064831061410a576064830492506002015b600a8310610e2b5760010192915050565b6141268383836141da565b6114ca576001600160a01b03831661415457604051637e27328960e01b815260048101829052602401610a51565b6040517f177e802f0000000000000000000000000000000000000000000000000000000081526001600160a01b038316600482015260248101829052604401610a51565b8051156141a85780518082602001fd5b6040517f1425ea4200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006001600160a01b038316158015906129b65750826001600160a01b0316846001600160a01b0316148061425357506001600160a01b0380851660009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab0079305602090815260408083209387168352929052205460ff165b806129b657505060009081527f80bb2b638cc20bc4d0a60d66940f3ab4a00c1d7b313497ca82fb0b4ab007930460205260409020546001600160a01b03908116911614919050565b8280548282559060005260206000209081019282156142d6579160200282015b828111156142d65782518255916020019190600101906142bb565b506142e2929150614383565b5090565b82805482825590600052602060002090601f016020900481019282156142d65791602002820160005b8382111561434d57835183826101000a81548160ff021916908360ff160217905550926020019260010160208160000104928301926001030261430f565b801561437a5782816101000a81549060ff021916905560010160208160000104928301926001030261434d565b50506142e29291505b5b808211156142e25760008155600101614384565b6000602082840312156143aa57600080fd5b5035919050565b6001600160e01b0319811681146124fb57600080fd5b6000602082840312156143d957600080fd5b81356109df816143b1565b60005b838110156143ff5781810151838201526020016143e7565b50506000910152565b600081518084526144208160208601602086016143e4565b601f01601f19169290920160200192915050565b6020815260006109df6020830184614408565b6001600160a01b03811681146124fb57600080fd5b6000806040838503121561446f57600080fd5b823561447a81614447565b946020939093013593505050565b60008060006060848603121561449d57600080fd5b83356144a881614447565b925060208401356144b881614447565b929592945050506040919091013590565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715614508576145086144c9565b604052919050565b600067ffffffffffffffff82111561452a5761452a6144c9565b50601f01601f191660200190565b600082601f83011261454957600080fd5b813561455c61455782614510565b6144df565b81815284602083860101111561457157600080fd5b816020850160208301376000918101602001919091529392505050565b6000602082840312156145a057600080fd5b813567ffffffffffffffff8111156145b757600080fd5b6129b684828501614538565b600080604083850312156145d657600080fd5b82356145e181614447565b9150602083013567ffffffffffffffff8111156145fd57600080fd5b61460985828601614538565b9150509250929050565b60008060006060848603121561462857600080fd5b83359250602084013561463a81614447565b9150604084013567ffffffffffffffff81111561465657600080fd5b61466286828701614538565b9150509250925092565b60006020828403121561467e57600080fd5b81356109df81614447565b80151581146124fb57600080fd5b600080604083850312156146aa57600080fd5b82356146b581614447565b915060208301356146c581614689565b809150509250929050565b600080600080608085870312156146e657600080fd5b84356146f181614447565b9350602085013561470181614447565b925060408501359150606085013567ffffffffffffffff81111561472457600080fd5b61473087828801614538565b91505092959194509250565b600067ffffffffffffffff821115614756576147566144c9565b5060051b60200190565b600082601f83011261477157600080fd5b813560206147816145578361473c565b8083825260208201915060208460051b8701019350868411156147a357600080fd5b602086015b848110156147cf57803560ff811681146147c25760008081fd5b83529183019183016147a8565b509695505050505050565b6000806000606084860312156147ef57600080fd5b8335925060208085013567ffffffffffffffff8082111561480f57600080fd5b818701915087601f83011261482357600080fd5b81356148316145578261473c565b81815260059190911b8301840190848101908a83111561485057600080fd5b938501935b8285101561486e57843582529385019390850190614855565b96505050604087013592508083111561488657600080fd5b505061466286828701614760565b600080604083850312156148a757600080fd5b82356148b281614447565b915060208301356146c581614447565b600080604083850312156148d557600080fd5b823567ffffffffffffffff8111156148ec57600080fd5b6148f885828601614538565b92505060208301356146c581614447565b60008151808452602080850194506020840160005b8381101561493a5781518752958201959082019060010161491e565b509495945050505050565b6000602080835283516040828501526149616060850182614909565b85830151858203601f19016040870152805180835290840192506000918401905b808310156147cf57835160ff168252928401926001929092019190840190614982565b6000602082840312156149b757600080fd5b81516109df81614447565b6000602082840312156149d457600080fd5b5051919050565b600060208083850312156149ee57600080fd5b825167ffffffffffffffff811115614a0557600080fd5b8301601f81018513614a1657600080fd5b8051614a246145578261473c565b81815260059190911b82018301908381019087831115614a4357600080fd5b928401925b82841015614a6157835182529284019290840190614a48565b979650505050505050565b634e487b7160e01b600052601160045260246000fd5b600082614a9f57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b8381526000602060606020840152614ad56060840186614909565b83810360408501528451808252602080870192019060005b81811015614b0957835183529284019291840191600101614aed565b509098975050505050505050565b6001600160a01b0385168152836020820152608060408201526000614b3f6080830185614408565b905082606083015295945050505050565b600060208284031215614b6257600080fd5b815167ffffffffffffffff811115614b7957600080fd5b8201601f81018413614b8a57600080fd5b8051614b9861455782614510565b818152856020838501011115614bad57600080fd5b6131528260208301602086016143e4565b600181811c90821680614bd257607f821691505b602082108103614bf257634e487b7160e01b600052602260045260246000fd5b50919050565b81810381811115610e2b57610e2b614a6c565b600060208284031215614c1d57600080fd5b81516109df81614689565b8082028115828204841417610e2b57610e2b614a6c565b80820180821115610e2b57610e2b614a6c565b60008251614c648184602087016143e4565b9190910192915050565b60008085851115614c7e57600080fd5b83861115614c8b57600080fd5b5050820193919092039150565b6001600160e01b03198135818116916004851015614cc05780818660040360031b1b83161692505b505092915050565b6001600160a01b038416815260406020820152816040820152818360608301376000818301606090810191909152601f909201601f1916010192915050565b601f8211156114ca576000816000526020600020601f850160051c81016020861015614d305750805b601f850160051c820191505b81811015611fca57828155600101614d3c565b815167ffffffffffffffff811115614d6957614d696144c9565b614d7d81614d778454614bbe565b84614d07565b602080601f831160018114614db25760008415614d9a5750858301515b600019600386901b1c1916600185901b178555611fca565b600085815260208120601f198616915b82811015614de157888601518255948401946001909101908401614dc2565b5085821015614dff5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60006001600160a01b03808716835280861660208401525083604083015260806060830152614e416080830184614408565b9695505050505050565b600060208284031215614e5d57600080fd5b81516109df816143b1565b60008351614e7a8184602088016143e4565b835190830190614e8e8183602088016143e4565b01949350505050565b60008060408385031215614eaa57600080fd5b8251614eb581614689565b602084015190925063ffffffff811681146146c557600080fd5b634e487b7160e01b600052603160045260246000fdfea264697066735822122018b46e2aad94909eb5e49e4164761972f9b81170089b903bce5f6c7075ba214564736f6c63430008180033