VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x8581c3…9db3
Summary
Transactions
Transfers
Address
0x8581c3EE3450F6d398a9EF6848f0921778e69db3
VET
0.00
VET
VTHO
0.00
VTHO
Master
0x00cbC0b44414a6b65b7ce1eaD956043900F91AF0
Deployer
0x00cbC0b44414a6b65b7ce1eaD956043900F91AF0
Code
0x608060405234801561001057600080fd5b50600436106104125760003560e01c806365d65a14116102205780639bdb458e11610130578063c9418de1116100b8578063e64853c411610087578063e64853c41461092e578063e985e9c514610946578063ea9baf2414610982578063f2c78e4914610995578063f6a03ebf146109b557600080fd5b8063c9418de1146108ed578063c943e0f214610900578063d492589314610908578063e08fc5a41461091b57600080fd5b8063b88d4fde116100ff578063b88d4fde14610899578063bd0bd050146108ac578063bf78696e146108bf578063c19d93fb146108d2578063c87b56dd146108da57600080fd5b80639bdb458e1461084d578063a22cb46514610860578063a5d7827e14610873578063af7acc611461088657600080fd5b80637c31407b116101b357806387cea7771161018257806387cea7771461080357806389dc8c8c1461081657806395d89b411461081f578063971582351461082757806397ed07a01461083a57600080fd5b80637c31407b146107c25780637f498ffc146107d55780637fca72b9146107e85780638456cb59146107fb57600080fd5b80636d9eac85116101ef5780636d9eac851461077157806370a082311461078457806372271de9146107975780637be514e51461079f57600080fd5b806365d65a141461071457806368794b87146107325780636a51c955146107455780636ac8e35b1461074e57600080fd5b806323b872dd1161032657806342842e0e116102ae57806354fd4d501161027d57806354fd4d501461069b5780635588c5b3146106a45780635c975abb146106d65780636352211e146106e15780636530735e146106f457600080fd5b806342842e0e1461064057806342966c68146106535780634ae3a23f146106665780634f6ccce71461068857600080fd5b80633c4a206f116102f55780633c4a206f146105ec5780633c7e47cb146105ff5780633cbad60b146106125780633d1e7b26146106255780633f4ba83a1461063857600080fd5b806323b872dd1461059e5780632f745c59146105b157806334bfce7f146105c457806335ac6ec6146105d757600080fd5b80630db70368116103a957806318160ddd1161037857806318160ddd1461054a5780631ca92613146105525780631e356fda146105655780631ec71c45146105785780631fb05fca1461058b57600080fd5b80630db70368146105095780630e51d8bd1461051c5780630f8edad61461052457806314b1c4e61461053757600080fd5b8063096c490c116103e5578063096c490c14610494578063098c9d3e146104d057806309b72ada146104e35780630a9a1251146104f657600080fd5b806301ffc9a71461041757806306fdde031461043f578063081812fc14610454578063095ea7b31461047f575b600080fd5b61042a610425366004614e8e565b6109c8565b60405190151581526020015b60405180910390f35b6104476109d9565b60405161043691906154cc565b61046761046236600461506d565b610a6b565b6040516001600160a01b039091168152602001610436565b61049261048d366004614c92565b610af8565b005b6104c26104a2366004615135565b600090815260176020908152604080832093835260099093019052205490565b604051908152602001610436565b6104926104de366004615156565b610c0e565b6104476104f1366004615135565b610cd1565b610492610504366004615199565b610d85565b601354610467906001600160a01b031681565b610447610eff565b61044761053236600461502b565b610f8d565b610492610545366004615199565b610fd4565b6009546104c2565b610492610560366004615135565b61135c565b6104926105733660046150fb565b61148c565b610492610586366004614f32565b61152c565b61044761059936600461506d565b611593565b6104926105ac366004614ba2565b611635565b6104c26105bf366004614c92565b611667565b6104926105d236600461506d565b6116fd565b6105df611785565b60405161043691906153b4565b6104926105fa3660046150d9565b611b7d565b61049261060d366004614e4f565b611c36565b610492610620366004614d8a565b611de9565b610492610633366004614f32565b611ef1565b610492611f4d565b61049261064e366004614ba2565b611f81565b61049261066136600461506d565b611f9c565b61067961067436600461506d565b612016565b60405161043693929190615735565b6104c261069636600461506d565b6121ae565b6104c260125481565b6104c26106b2366004615135565b60009182526017602090815260408084209284526007909201905290206002015490565b600b5460ff1661042a565b6104676106ef36600461506d565b61224f565b61070761070236600461506d565b6122c6565b6040516104369190615414565b601954601a5460ff1660408051928352901515602083015201610436565b610492610740366004614f32565b612327565b6104c2600e5481565b61076161075c36600461506d565b612457565b604051610436949392919061547f565b61044761077f36600461506d565b61283c565b6104c2610792366004614b4e565b61285c565b6104476128e3565b6104c26107ad36600461506d565b60009081526017602052604090206002015490565b6104c26107d0366004614f32565b6128f0565b6104926107e336600461506d565b6129cb565b6104926107f6366004614d58565b612a33565b610492612b16565b6104926108113660046150fb565b612b48565b6104c2600d5481565b610447612b97565b6104c2610835366004614ec6565b612ba6565b610492610848366004615135565b612bd1565b61049261085b36600461509d565b612c6b565b61049261086e366004614c5e565b612e33565b6104c2610881366004614b4e565b612e3e565b610492610894366004614f32565b612ec5565b6104926108a7366004614be2565b612f21565b6104926108ba366004615135565b612f53565b6104926108cd366004614fa8565b612fbd565b610447613054565b6104476108e836600461506d565b613061565b6104926108fb366004614f64565b613138565b61044761323c565b6104926109163660046150fb565b613249565b610492610929366004614def565b613351565b610936613385565b6040516104369493929190615427565b61042a610954366004614b6a565b6001600160a01b03918216600090815260066020908152604080832093909416825291909152205460ff1690565b61044761099036600461506d565b6137a3565b6109a86109a3366004614d58565b6137c3565b6040516104369190615401565b6104926109c336600461506d565b613942565b60006109d3826139b4565b92915050565b6060600180546109e890615933565b80601f0160208091040260200160405190810160405280929190818152602001828054610a1490615933565b8015610a615780601f10610a3657610100808354040283529160200191610a61565b820191906000526020600020905b815481529060010190602001808311610a4457829003601f168201915b5050505050905090565b6000610a76826139d9565b610adc5760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a20617070726f76656420717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b60648201526084015b60405180910390fd5b506000908152600560205260409020546001600160a01b031690565b6000610b038261224f565b9050806001600160a01b0316836001600160a01b03161415610b715760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610ad3565b336001600160a01b0382161480610b8d5750610b8d8133610954565b610bff5760405162461bcd60e51b815260206004820152603860248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f74206f7760448201527f6e6572206e6f7220617070726f76656420666f7220616c6c00000000000000006064820152608401610ad3565b610c0983836139f6565b505050565b601454610c1a33612e3e565b1015610c385760405162461bcd60e51b8152600401610ad39061562a565b600083815260176020908152604080832085845260070182529091208251610c6892600190920191840190614955565b50600083815260176020908152604080832080548685526007909101909252918290208054600282015493517f608e229dcea3d7ffffba95e0156bb81278a99d8c8369b4a93106b6f4d6f56a0f94610cc494936001019161582a565b60405180910390a1505050565b60008281526017602090815260408083208484526007019091529020600101805460609190610cff90615933565b80601f0160208091040260200160405190810160405280929190818152602001828054610d2b90615933565b8015610d785780601f10610d4d57610100808354040283529160200191610d78565b820191906000526020600020905b815481529060010190602001808311610d5b57829003601f168201915b5050505050905092915050565b601454610d9133612e3e565b1015610daf5760405162461bcd60e51b8152600401610ad39061562a565b6000838152601760205260409020600501548110610ddf5760405162461bcd60e51b8152600401610ad390615696565b60005b600084815260176020526040902060050154811015610e9d5760008481526017602090815260408083208484526007019091529020600201548211801590610e55575060008481526017602090815260408083208684526007018083528184206002908101548686529190935292200154105b15610e8b5760008481526017602090815260408083208484526007019091528120600201805491610e858361596e565b91905055505b80610e958161596e565b915050610de2565b5060008381526017602090815260408083208584526007810190925291829020600281018490559054815492517f608e229dcea3d7ffffba95e0156bb81278a99d8c8369b4a93106b6f4d6f56a0f93610cc4939091600190910190869061582a565b60108054610f0c90615933565b80601f0160208091040260200160405190810160405280929190818152602001828054610f3890615933565b8015610f855780601f10610f5a57610100808354040283529160200191610f85565b820191906000526020600020905b815481529060010190602001808311610f6857829003601f168201915b505050505081565b81516020818401810180516016825292820191850191909120919052805482908110610fb857600080fd5b90600052602060002001600091509150508054610f0c90615933565b610fdd836139d9565b61101b5760405162461bcd60e51b815260206004820152600f60248201526e1a5b9d985b1a59081d1bdad95b9259608a1b6044820152606401610ad3565b6110248361224f565b6001600160a01b0316336001600160a01b0316146110745760405162461bcd60e51b815260206004820152600d60248201526c6e6f7420796f757220766f746560981b6044820152606401610ad3565b60185482106110955760405162461bcd60e51b8152600401610ad390615599565b60008281526017602052604090206004015460ff16156110e65760405162461bcd60e51b815260206004820152600c60248201526b1c995b5bdd9959081c1bdb1b60a21b6044820152606401610ad3565b60008281526017602052604090206005015481106111375760405162461bcd60e51b815260206004820152600e60248201526d34b73b30b634b21030b739bbb2b960911b6044820152606401610ad3565b600082815260176020908152604080832084845260070190915290206004015460ff16156111985760405162461bcd60e51b815260206004820152600e60248201526d3932b6b7bb32b21030b739bbb2b960911b6044820152606401610ad3565b81601954146111db5760405162461bcd60e51b815260206004820152600f60248201526e706f6c6c206e6f742061637469766560881b6044820152606401610ad3565b601a5460ff166112235760405162461bcd60e51b81526020600482015260136024820152726e6f7420616363657074696e6720766f74657360681b6044820152606401610ad3565b600082815260176020908152604080832086845260080190915290205460ff16156112805760405162461bcd60e51b815260206004820152600d60248201526c185b1c9958591e481d9bdd1959609a1b6044820152606401610ad3565b6000828152601760208181526040808420878552600881018352818520805460ff191660011790556009810183529084208590558584529190526006018054916112c98361596e565b9091555050600082815260176020908152604080832084845260070190915281206003018054916112f98361596e565b90915550506000838152601e60209081526040822080546001810182559083529120018290557fb00b8ad5b5df5ff78c51394c15bb8917e8a0c1595bfaeab935fffb075d91dffa8361134a81611593565b8484604051610cc49493929190615760565b60145461136833612e3e565b10156113865760405162461bcd60e51b8152600401610ad39061562a565b60185481106113a75760405162461bcd60e51b8152600401610ad390615696565b60005b60185481101561142c5760008181526017602052604090206002015482118015906113f257506000838152601760205260408082206002908101548484529190922090910154105b1561141a5760008181526017602052604081206002018054916114148361596e565b91905055505b806114248161596e565b9150506113aa565b506000828152601760205260409081902060028101839055805491517fd84487b653f8ac649590c7448e4f3c75619bfea916ec87fa65acc2f4836386ff9261148092909160018201916003019086906157a5565b60405180910390a15050565b60145461149833612e3e565b10156114b65760405162461bcd60e51b8152600401610ad39061562a565b600082815260176020908152604090912082516114db92600390920191840190614955565b50600082815260176020526040908190208054600282015492517fd84487b653f8ac649590c7448e4f3c75619bfea916ec87fa65acc2f4836386ff93611480936001810192600390910191906157a5565b60145461153833612e3e565b10156115565760405162461bcd60e51b8152600401610ad39061562a565b8051611569906011906020840190614955565b50600080516020615a0b8339815191526011604051611588919061555f565b60405180910390a150565b6000818152601d602052604090208054606091906115b090615933565b80601f01602080910402602001604051908101604052809291908181526020018280546115dc90615933565b80156116295780601f106115fe57610100808354040283529160200191611629565b820191906000526020600020905b81548152906001019060200180831161160c57829003601f168201915b50505050509050919050565b611640335b82613a64565b61165c5760405162461bcd60e51b8152600401610ad3906156e4565b610c09838383613b4e565b60006116728361285c565b82106116d45760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b6064820152608401610ad3565b506001600160a01b03919091166000908152600760209081526040808320938352929052205490565b60145461170933612e3e565b10156117275760405162461bcd60e51b8152600401610ad39061562a565b6000818152601760205260409081902060048101805460ff191660019081179091558154600283015493517f27e287a04e8befec97809c62380f0a300b68d9febe3485dbb08ac34600133994946115889492939290920191906157e2565b60135460408051631ad6376360e11b815290516060926001600160a01b03169160009183916335ac6ec69160048083019286929190829003018186803b1580156117ce57600080fd5b505afa1580156117e2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261180a9190810190614cbd565b90506000805b825181101561196257836001600160a01b031663c80c07386040518163ffffffff1660e01b815260040160206040518083038186803b15801561185257600080fd5b505afa158015611866573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061188a9190615085565b846001600160a01b031663a1c83c6a8584815181106118b957634e487b7160e01b600052603260045260246000fd5b60200260200101516040518263ffffffff1660e01b81526004016118ec91906001600160a01b0391909116815260200190565b60206040518083038186803b15801561190457600080fd5b505afa158015611918573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061193c9190615085565b1415611950578161194c8161596e565b9250505b61195b6001826158ad565b9050611810565b506000816001600160401b0381111561198b57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156119b4578160200160208202803683370190505b50905060005b8351811015611b7457846001600160a01b031663c80c07386040518163ffffffff1660e01b815260040160206040518083038186803b1580156119fc57600080fd5b505afa158015611a10573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a349190615085565b856001600160a01b031663a1c83c6a868481518110611a6357634e487b7160e01b600052603260045260246000fd5b60200260200101516040518263ffffffff1660e01b8152600401611a9691906001600160a01b0391909116815260200190565b60206040518083038186803b158015611aae57600080fd5b505afa158015611ac2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ae69190615085565b1415611b625782611af68161591c565b935050838181518110611b1957634e487b7160e01b600052603260045260246000fd5b6020026020010151828481518110611b4157634e487b7160e01b600052603260045260246000fd5b60200260200101906001600160a01b031690816001600160a01b0316815250505b611b6d6001826158ad565b90506119ba565b50949350505050565b601454611b8933612e3e565b1015611ba75760405162461bcd60e51b8152600401610ad39061562a565b6018548210611bc85760405162461bcd60e51b8152600401610ad390615599565b60008281526017602052604090206004015460ff1615611c1d5760405162461bcd60e51b815260206004820152601060248201526f1c1bdb1b081dd85cc81c995b5bdd995960821b6044820152606401610ad3565b601991909155601a805460ff1916911515919091179055565b601454611c4233612e3e565b1015611c605760405162461bcd60e51b8152600401610ad39061562a565b60005b81811015610c09578060176000858585818110611c9057634e487b7160e01b600052603260045260246000fd5b905060200201358152602001908152602001600020600201819055507fd84487b653f8ac649590c7448e4f3c75619bfea916ec87fa65acc2f4836386ff60176000858585818110611cf157634e487b7160e01b600052603260045260246000fd5b9050602002013581526020019081526020016000206000015460176000868686818110611d2e57634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060010160176000878787818110611d6a57634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060030160176000888888818110611da657634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060020154604051611dcf94939291906157a5565b60405180910390a180611de18161596e565b915050611c63565b601554611df533612e3e565b1015611e135760405162461bcd60e51b8152600401610ad39061562a565b82518114611e6d5760405162461bcd60e51b815260206004820152602160248201527f6c6973742073686f756c6420686176652073616d6520656e7472792d636f756e6044820152601d60fa1b6064820152608401610ad3565b60005b8351811015611eeb57611ed9848281518110611e9c57634e487b7160e01b600052603260045260246000fd5b6020026020010151848484818110611ec457634e487b7160e01b600052603260045260246000fd5b90506020020160208101906108fb9190614b4e565b80611ee38161596e565b915050611e70565b50505050565b601454611efd33612e3e565b1015611f1b5760405162461bcd60e51b8152600401610ad39061562a565b8051611f2e906010906020840190614955565b50600080516020615a0b833981519152601060405161158891906155ee565b601554611f5933612e3e565b1015611f775760405162461bcd60e51b8152600401610ad39061562a565b611f7f613cf9565b565b610c0983838360405180602001604052806000815250612f21565b611fa53361163a565b61200a5760405162461bcd60e51b815260206004820152603060248201527f4552433732314275726e61626c653a2063616c6c6572206973206e6f74206f7760448201526f1b995c881b9bdc88185c1c1c9bdd995960821b6064820152608401610ad3565b61201381613d8c565b50565b6000606080601854841061203c5760405162461bcd60e51b8152600401610ad390615599565b60008481526017602052604090206004015460ff161561208d5760405162461bcd60e51b815260206004820152600c60248201526b1c995b5bdd9959081c1bdb1b60a21b6044820152606401610ad3565b606061209885612457565b5050815191925060009190506001600160401b038111156120c957634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156120f2578160200160208202803683370190505b50905060005b82518110156121905760176000888152602001908152602001600020600701600084838151811061213957634e487b7160e01b600052603260045260246000fd5b602002602001015181526020019081526020016000206003015482828151811061217357634e487b7160e01b600052603260045260246000fd5b60209081029190910101526121896001826158ad565b90506120f8565b50600095865260176020526040909520600601549590949350915050565b60006121b960095490565b821061221c5760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b6064820152608401610ad3565b6009828154811061223d57634e487b7160e01b600052603260045260246000fd5b90600052602060002001549050919050565b6000818152600360205260408120546001600160a01b0316806109d35760405162461bcd60e51b815260206004820152602960248201527f4552433732313a206f776e657220717565727920666f72206e6f6e657869737460448201526832b73a103a37b5b2b760b91b6064820152608401610ad3565b6000818152601e602090815260409182902080548351818402810184019094528084526060939283018282801561162957602002820191906000526020600020905b8154815260200190600101908083116123085750505050509050919050565b60145461233333612e3e565b10156123515760405162461bcd60e51b8152600401610ad39061562a565b6123e5600c805461236190615933565b80601f016020809104026020016040519081016040528092919081815260200182805461238d90615933565b80156123da5780601f106123af576101008083540402835291602001916123da565b820191906000526020600020905b8154815290600101906020018083116123bd57829003601f168201915b505050505082613e33565b6124255760405162461bcd60e51b81526020600482015260116024820152701cdd185d19481b9bdd08185b1b1bddd959607a1b6044820152606401610ad3565b805161243890600c906020840190614955565b50600080516020615a0b833981519152600c60405161158891906155bf565b600081815260176020526040812060050154606091829182918291815b818110156124c357600088815260176020908152604080832084845260070190915290206004015460ff166124b157826124ad8161596e565b9350505b806124bb8161596e565b915050612474565b506000826001600160401b038111156124ec57634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015612515578160200160208202803683370190505b5090506000836001600160401b0381111561254057634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561257357816020015b606081526020019060019003908161255e5790505b5090506000846001600160401b0381111561259e57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156125c7578160200160208202803683370190505b5090506000856001600160401b038111156125f257634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561261b578160200160208202803683370190505b50905060005b8581101561282a5760008c815260176020908152604080832084845260070190915290206004015460ff16612818578661265a8161591c565b60008e81526017602090815260408083208684526007019091529020548751919950915086908990811061269e57634e487b7160e01b600052603260045260246000fd5b60209081029190910181019190915260008d81526017825260408082208483526007019092522060010180546126d390615933565b80601f01602080910402602001604051908101604052809291908181526020018280546126ff90615933565b801561274c5780601f106127215761010080835404028352916020019161274c565b820191906000526020600020905b81548152906001019060200180831161272f57829003601f168201915b505050505084888151811061277157634e487b7160e01b600052603260045260246000fd5b60209081029190910181019190915260008d8152601782526040808220848352600701909252206002015483518490899081106127be57634e487b7160e01b600052603260045260246000fd5b60209081029190910181019190915260008d81526017825260408082208483526007019092522060030154825183908990811061280b57634e487b7160e01b600052603260045260246000fd5b6020026020010181815250505b806128228161596e565b915050612621565b50929a91995097509095509350505050565b60008181526017602052604090206003018054606091906115b090615933565b60006001600160a01b0382166128c75760405162461bcd60e51b815260206004820152602a60248201527f4552433732313a2062616c616e636520717565727920666f7220746865207a65604482015269726f206164647265737360b01b6064820152608401610ad3565b506001600160a01b031660009081526004602052604090205490565b600f8054610f0c90615933565b60006014546128fe33612e3e565b101561291c5760405162461bcd60e51b8152600401610ad39061562a565b6018546000818152601760209081526040909120828155845161294792600190920191860190614955565b50600081815260176020526040908190206002810183905560048101805460ff19169055805491517fcd741d2d461c4fee0f259e59c0981bcde3c47a31123dd8a63a58ac86541de52c926129a292909160019091019061578c565b60405180910390a16001601860008282546129bd91906158ad565b90915550909150505b919050565b6014546129d733612e3e565b10156129f55760405162461bcd60e51b8152600401610ad39061562a565b600e819055600d5460408051918252602082018390527ff01ec6d21a4130f35292866e863af416fcf59886f24171a9fef4317a4f9ef9399101611588565b601554612a3f33612e3e565b1015612a5d5760405162461bcd60e51b8152600401610ad39061562a565b60005b8151811015612b1257612ab7601c838381518110612a8e57634e487b7160e01b600052603260045260246000fd5b6020026020010151604051612aa3919061532c565b908152602001604051809103902054613d8c565b6000601c838381518110612adb57634e487b7160e01b600052603260045260246000fd5b6020026020010151604051612af0919061532c565b90815260405190819003602001902055612b0b6001826158ad565b9050612a60565b5050565b601554612b2233612e3e565b1015612b405760405162461bcd60e51b8152600401610ad39061562a565b611f7f613f7a565b601454612b5433612e3e565b1015612b725760405162461bcd60e51b8152600401610ad39061562a565b600082815260176020908152604090912082516114db92600190920191840190614955565b6060600280546109e890615933565b6000601c8383604051612bba92919061531c565b908152602001604051809103902054905092915050565b601454612bdd33612e3e565b1015612bfb5760405162461bcd60e51b8152600401610ad39061562a565b6000828152601760209081526040808320848452600781019092529182902060048101805460ff1916600190811790915591548154600283015494517f6d9e2a94f822af2b1b82f26088d84bf902197089414f34a9d9ad8101f962485c956114809593949293909201919061582a565b601454612c7733612e3e565b1015612c955760405162461bcd60e51b8152600401610ad39061562a565b60005b81811015611eeb5760008481526017602052604081208291600790910190858584818110612cd657634e487b7160e01b600052603260045260246000fd5b602090810292909201358352508181019290925260409081016000908120600201939093558683526017909152812080547f608e229dcea3d7ffffba95e0156bb81278a99d8c8369b4a93106b6f4d6f56a0f92909160070190868686818110612d4f57634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060000154601760008881526020019081526020016000206007016000878787818110612da057634e487b7160e01b600052603260045260246000fd5b905060200201358152602001908152602001600020600101601760008981526020019081526020016000206007016000888888818110612df057634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060020154604051612e19949392919061582a565b60405180910390a180612e2b8161596e565b915050612c98565b612b12338383613ff5565b6013546040516352ebc13f60e11b81526001600160a01b0383811660048301526000921690819063a5d7827e9060240160206040518083038186803b158015612e8657600080fd5b505afa158015612e9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ebe9190615085565b9392505050565b601454612ed133612e3e565b1015612eef5760405162461bcd60e51b8152600401610ad39061562a565b8051612f0290600f906020840190614955565b50600080516020615a0b833981519152600f6040516115889190615661565b612f2b3383613a64565b612f475760405162461bcd60e51b8152600401610ad3906156e4565b611eeb848484846140c4565b601454612f5f33612e3e565b1015612f7d5760405162461bcd60e51b8152600401610ad39061562a565b600d829055600e81905560408051838152602081018390527ff01ec6d21a4130f35292866e863af416fcf59886f24171a9fef4317a4f9ef9399101611480565b601454612fc933612e3e565b1015612fe75760405162461bcd60e51b8152600401610ad39061562a565b6000612ff2846128f0565b9050612ffe818461148c565b60005b825181101561304d5761303b8284838151811061302e57634e487b7160e01b600052603260045260246000fd5b6020026020010151613249565b806130458161596e565b915050613001565b5050505050565b600c8054610f0c90615933565b606061306c826139d9565b6130d05760405162461bcd60e51b815260206004820152602f60248201527f4552433732314d657461646174613a2055524920717565727920666f72206e6f60448201526e3732bc34b9ba32b73a103a37b5b2b760891b6064820152608401610ad3565b60006130e760408051602081019091526000815290565b905060008151116131075760405180602001604052806000815250612ebe565b80613111846140f7565b604051602001613122929190615348565b6040516020818303038152906040529392505050565b60155461314433612e3e565b10156131625760405162461bcd60e51b8152600401610ad39061562a565b613189601c83604051613175919061532c565b9081526020016040518091039020546139d9565b156131d65760405162461bcd60e51b815260206004820152601a60248201527f766f746572496420616c726561647920686173206120766f74650000000000006044820152606401610ad3565b60006131e1601b5490565b90506131f1601b80546001019055565b6131fb8282614210565b80601c8460405161320c919061532c565b9081526040805160209281900383019020929092556000838152601d8252919091208451611eeb92860190614955565b60118054610f0c90615933565b60145461325533612e3e565b10156132735760405162461bcd60e51b8152600401610ad39061562a565b6000828152601760209081526040808320600581015480855260079091018352922091825582516132aa9260010191840190614955565b50600082815260176020908152604080832060058101805480865260079092019093528184206002810191909155600401805460ff191690559054825290819020805491517fb3195bc367c77b97f6ac197202b7dbd50d797b6483ec23b93039dac027a6bb51926133239286926001919091019061580b565b60405180910390a160008281526017602052604081206005018054916133488361596e565b91905055505050565b60145461335d33612e3e565b101561337b5760405162461bcd60e51b8152600401610ad39061562a565b612b12828261422a565b6060806060806000805b6018548110156133d25760008181526017602052604090206004015460ff166133c057816133bc8161596e565b9250505b806133ca8161596e565b91505061338f565b506000816001600160401b038111156133fb57634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015613424578160200160208202803683370190505b5090506000826001600160401b0381111561344f57634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561348257816020015b606081526020019060019003908161346d5790505b5090506000836001600160401b038111156134ad57634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156134d6578160200160208202803683370190505b5090506000846001600160401b0381111561350157634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561353457816020015b606081526020019060019003908161351f5790505b50905060005b6018548110156137935760008181526017602052604090206004015460ff1661378157856135678161591c565b6000838152601760205260409020548751919850915086908890811061359d57634e487b7160e01b600052603260045260246000fd5b6020026020010181815250506017600082815260200190815260200160002060010180546135ca90615933565b80601f01602080910402602001604051908101604052809291908181526020018280546135f690615933565b80156136435780601f1061361857610100808354040283529160200191613643565b820191906000526020600020905b81548152906001019060200180831161362657829003601f168201915b505050505084878151811061366857634e487b7160e01b600052603260045260246000fd5b602002602001018190525060176000828152602001908152602001600020600201548387815181106136aa57634e487b7160e01b600052603260045260246000fd5b6020026020010181815250506017600082815260200190815260200160002060030180546136d790615933565b80601f016020809104026020016040519081016040528092919081815260200182805461370390615933565b80156137505780601f1061372557610100808354040283529160200191613750565b820191906000526020600020905b81548152906001019060200180831161373357829003601f168201915b505050505082878151811061377557634e487b7160e01b600052603260045260246000fd5b60200260200101819052505b8061378b8161596e565b91505061353a565b5092989197509550909350915050565b60008181526017602052604090206001018054606091906115b090615933565b6060600082516001600160401b038111156137ee57634e487b7160e01b600052604160045260246000fd5b60405190808252806020026020018201604052801561382157816020015b606081526020019060019003908161380c5790505b50905060005b835181101561393b57600084828151811061385257634e487b7160e01b600052603260045260246000fd5b6020026020010151604051613867919061532c565b9081526020016040518091039020805461388090615933565b80601f01602080910402602001604051908101604052809291908181526020018280546138ac90615933565b80156138f95780601f106138ce576101008083540402835291602001916138f9565b820191906000526020600020905b8154815290600101906020018083116138dc57829003601f168201915b505050505082828151811061391e57634e487b7160e01b600052603260045260246000fd5b60209081029190910101526139346001826158ad565b9050613827565b5092915050565b60145461394e33612e3e565b101561396c5760405162461bcd60e51b8152600401610ad39061562a565b600d819055600e546040805183815260208101929092527ff01ec6d21a4130f35292866e863af416fcf59886f24171a9fef4317a4f9ef9399101611588565b80546001019055565b60006001600160e01b0319821663780e9d6360e01b14806109d357506109d38261436a565b6000908152600360205260409020546001600160a01b0316151590565b600081815260056020526040902080546001600160a01b0319166001600160a01b0384169081179091558190613a2b8261224f565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b6000613a6f826139d9565b613ad05760405162461bcd60e51b815260206004820152602c60248201527f4552433732313a206f70657261746f7220717565727920666f72206e6f6e657860448201526b34b9ba32b73a103a37b5b2b760a11b6064820152608401610ad3565b6000613adb8361224f565b9050806001600160a01b0316846001600160a01b03161480613b165750836001600160a01b0316613b0b84610a6b565b6001600160a01b0316145b80613b4657506001600160a01b0380821660009081526006602090815260408083209388168352929052205460ff165b949350505050565b826001600160a01b0316613b618261224f565b6001600160a01b031614613bc95760405162461bcd60e51b815260206004820152602960248201527f4552433732313a207472616e73666572206f6620746f6b656e2074686174206960448201526839903737ba1037bbb760b91b6064820152608401610ad3565b6001600160a01b038216613c2b5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610ad3565b613c368383836143ba565b613c416000826139f6565b6001600160a01b0383166000908152600460205260408120805460019290613c6a9084906158d9565b90915550506001600160a01b0382166000908152600460205260408120805460019290613c989084906158ad565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b0386811691821790925591518493918716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b600b5460ff16613d425760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610ad3565b600b805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b6000613d978261224f565b9050613da5816000846143ba565b613db06000836139f6565b6001600160a01b0381166000908152600460205260408120805460019290613dd99084906158d9565b909155505060008281526003602052604080822080546001600160a01b0319169055518391906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a45050565b6000613e3f838361440b565b15613e4c575060016109d3565b60005b601684604051613e5f919061532c565b90815260405190819003602001902054811015613f7057613f4f83601686604051613e8a919061532c565b90815260200160405180910390208381548110613eb757634e487b7160e01b600052603260045260246000fd5b906000526020600020018054613ecc90615933565b80601f0160208091040260200160405190810160405280929190818152602001828054613ef890615933565b8015613f455780601f10613f1a57610100808354040283529160200191613f45565b820191906000526020600020905b815481529060010190602001808311613f2857829003601f168201915b505050505061440b565b15613f5e5760019150506109d3565b80613f688161596e565b915050613e4f565b5060009392505050565b600b5460ff1615613fc05760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610ad3565b600b805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613d6f3390565b816001600160a01b0316836001600160a01b031614156140575760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610ad3565b6001600160a01b03838116600081815260066020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6140cf848484613b4e565b6140db84848484614464565b611eeb5760405162461bcd60e51b8152600401610ad39061550d565b60608161411b5750506040805180820190915260018152600360fc1b602082015290565b8160005b8115614145578061412f8161596e565b915061413e9050600a836158c5565b915061411f565b6000816001600160401b0381111561416d57634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015614197576020820181803683370190505b5090505b8415613b46576141ac6001836158d9565b91506141b9600a86615989565b6141c49060306158ad565b60f81b8183815181106141e757634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a905350614209600a866158c5565b945061419b565b612b12828260405180602001604052806000815250614571565b60005b8251811015610c095781818151811061425657634e487b7160e01b600052603260045260246000fd5b6020026020010151600084838151811061428057634e487b7160e01b600052603260045260246000fd5b6020026020010151604051614295919061532c565b908152602001604051809103902090805190602001906142b6929190614955565b507f60b5517c9fa1c54ce16ec588971d9a7036492733d345a0627a827a7808772c848382815181106142f857634e487b7160e01b600052603260045260246000fd5b6020026020010151600085848151811061432257634e487b7160e01b600052603260045260246000fd5b6020026020010151604051614337919061532c565b90815260405190819003602001812061435092916154df565b60405180910390a16143636001826158ad565b905061422d565b60006001600160e01b031982166380ac58cd60e01b148061439b57506001600160e01b03198216635b5e139f60e01b145b806109d357506301ffc9a760e01b6001600160e01b03198316146109d3565b600b5460ff16156144005760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610ad3565b610c098383836145a4565b60008160405160200161441e919061532c565b6040516020818303038152906040528051906020012083604051602001614445919061532c565b6040516020818303038152906040528051906020012014905092915050565b60006001600160a01b0384163b1561456657604051630a85bd0160e11b81526001600160a01b0385169063150b7a02906144a8903390899088908890600401615377565b602060405180830381600087803b1580156144c257600080fd5b505af19250505080156144f2575060408051601f3d908101601f191682019092526144ef91810190614eaa565b60015b61454c573d808015614520576040519150601f19603f3d011682016040523d82523d6000602084013e614525565b606091505b5080516145445760405162461bcd60e51b8152600401610ad39061550d565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050613b46565b506001949350505050565b61457b838361465c565b6145886000848484614464565b610c095760405162461bcd60e51b8152600401610ad39061550d565b6001600160a01b0383166145ff576145fa81600980546000838152600a60205260408120829055600182018355919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af0155565b614622565b816001600160a01b0316836001600160a01b03161461462257614622838261479b565b6001600160a01b03821661463957610c0981614838565b826001600160a01b0316826001600160a01b031614610c0957610c098282614911565b6001600160a01b0382166146b25760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610ad3565b6146bb816139d9565b156147085760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610ad3565b614714600083836143ba565b6001600160a01b038216600090815260046020526040812080546001929061473d9084906158ad565b909155505060008181526003602052604080822080546001600160a01b0319166001600160a01b03861690811790915590518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600060016147a88461285c565b6147b291906158d9565b600083815260086020526040902054909150808214614805576001600160a01b03841660009081526007602090815260408083208584528252808320548484528184208190558352600890915290208190555b5060009182526008602090815260408084208490556001600160a01b039094168352600781528383209183525290812055565b60095460009061484a906001906158d9565b6000838152600a60205260408120546009805493945090928490811061488057634e487b7160e01b600052603260045260246000fd5b9060005260206000200154905080600983815481106148af57634e487b7160e01b600052603260045260246000fd5b6000918252602080832090910192909255828152600a909152604080822084905585825281205560098054806148f557634e487b7160e01b600052603160045260246000fd5b6001900381819060005260206000200160009055905550505050565b600061491c8361285c565b6001600160a01b039093166000908152600760209081526040808320868452825280832085905593825260089052919091209190915550565b82805461496190615933565b90600052602060002090601f01602090048101928261498357600085556149c9565b82601f1061499c57805160ff19168380011785556149c9565b828001600101855582156149c9579182015b828111156149c95782518255916020019190600101906149ae565b506149d59291506149d9565b5090565b5b808211156149d557600081556001016149da565b60006001600160401b03831115614a0757614a076159c9565b614a1a601f8401601f191660200161585a565b9050828152838383011115614a2e57600080fd5b828260208301376000602084830101529392505050565b60008083601f840112614a56578182fd5b5081356001600160401b03811115614a6c578182fd5b6020830191508360208260051b8501011115614a8757600080fd5b9250929050565b600082601f830112614a9e578081fd5b81356020614ab3614aae8361588a565b61585a565b80838252828201915082860187848660051b8901011115614ad2578586fd5b855b85811015614b125781356001600160401b03811115614af1578788fd5b614aff8a87838c0101614b2f565b8552509284019290840190600101614ad4565b5090979650505050505050565b803580151581146129c657600080fd5b600082601f830112614b3f578081fd5b612ebe838335602085016149ee565b600060208284031215614b5f578081fd5b8135612ebe816159df565b60008060408385031215614b7c578081fd5b8235614b87816159df565b91506020830135614b97816159df565b809150509250929050565b600080600060608486031215614bb6578081fd5b8335614bc1816159df565b92506020840135614bd1816159df565b929592945050506040919091013590565b60008060008060808587031215614bf7578081fd5b8435614c02816159df565b93506020850135614c12816159df565b92506040850135915060608501356001600160401b03811115614c33578182fd5b8501601f81018713614c43578182fd5b614c52878235602084016149ee565b91505092959194509250565b60008060408385031215614c70578182fd5b8235614c7b816159df565b9150614c8960208401614b1f565b90509250929050565b60008060408385031215614ca4578182fd5b8235614caf816159df565b946020939093013593505050565b60006020808385031215614ccf578182fd5b82516001600160401b03811115614ce4578283fd5b8301601f81018513614cf4578283fd5b8051614d02614aae8261588a565b80828252848201915084840188868560051b8701011115614d21578687fd5b8694505b83851015614d4c578051614d38816159df565b835260019490940193918501918501614d25565b50979650505050505050565b600060208284031215614d69578081fd5b81356001600160401b03811115614d7e578182fd5b613b4684828501614a8e565b600080600060408486031215614d9e578081fd5b83356001600160401b0380821115614db4578283fd5b614dc087838801614a8e565b94506020860135915080821115614dd5578283fd5b50614de286828701614a45565b9497909650939450505050565b60008060408385031215614e01578182fd5b82356001600160401b0380821115614e17578384fd5b614e2386838701614a8e565b93506020850135915080821115614e38578283fd5b50614e4585828601614a8e565b9150509250929050565b60008060208385031215614e61578182fd5b82356001600160401b03811115614e76578283fd5b614e8285828601614a45565b90969095509350505050565b600060208284031215614e9f578081fd5b8135612ebe816159f4565b600060208284031215614ebb578081fd5b8151612ebe816159f4565b60008060208385031215614ed8578182fd5b82356001600160401b0380821115614eee578384fd5b818501915085601f830112614f01578384fd5b813581811115614f0f578485fd5b866020828501011115614f20578485fd5b60209290920196919550909350505050565b600060208284031215614f43578081fd5b81356001600160401b03811115614f58578182fd5b613b4684828501614b2f565b60008060408385031215614f76578182fd5b82356001600160401b03811115614f8b578283fd5b614f9785828601614b2f565b9250506020830135614b97816159df565b600080600060608486031215614fbc578081fd5b83356001600160401b0380821115614fd2578283fd5b614fde87838801614b2f565b94506020860135915080821115614ff3578283fd5b614fff87838801614b2f565b93506040860135915080821115615014578283fd5b5061502186828701614a8e565b9150509250925092565b6000806040838503121561503d578182fd5b82356001600160401b03811115615052578283fd5b61505e85828601614b2f565b95602094909401359450505050565b60006020828403121561507e578081fd5b5035919050565b600060208284031215615096578081fd5b5051919050565b6000806000604084860312156150b1578081fd5b8335925060208401356001600160401b038111156150cd578182fd5b614de286828701614a45565b600080604083850312156150eb578182fd5b82359150614c8960208401614b1f565b6000806040838503121561510d578182fd5b8235915060208301356001600160401b03811115615129578182fd5b614e4585828601614b2f565b60008060408385031215615147578182fd5b50508035926020909101359150565b60008060006060848603121561516a578081fd5b833592506020840135915060408401356001600160401b0381111561518d578182fd5b61502186828701614b2f565b6000806000606084860312156151ad578081fd5b505081359360208301359350604090920135919050565b600081518084526020808501808196508360051b81019150828601855b8581101561520b5782840389526151f9848351615252565b988501989350908401906001016151e1565b5091979650505050505050565b6000815180845260208085019450808401835b838110156152475781518752958201959082019060010161522b565b509495945050505050565b6000815180845261526a8160208601602086016158f0565b601f01601f19169290920160200192915050565b8054600090600181811c908083168061529857607f831692505b60208084108214156152b857634e487b7160e01b86526022600452602486fd5b838852602088018280156152d357600181146152e45761530f565b60ff1987168252828201975061530f565b60008981526020902060005b87811015615309578154848201529086019084016152f0565b83019850505b5050505050505092915050565b8183823760009101908152919050565b6000825161533e8184602087016158f0565b9190910192915050565b6000835161535a8184602088016158f0565b83519083019061536e8183602088016158f0565b01949350505050565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906153aa90830184615252565b9695505050505050565b6020808252825182820181905260009190848201906040850190845b818110156153f55783516001600160a01b0316835292840192918401916001016153d0565b50909695505050505050565b602081526000612ebe60208301846151c4565b602081526000612ebe6020830184615218565b60808152600061543a6080830187615218565b828103602084015261544c81876151c4565b905082810360408401526154608186615218565b9050828103606084015261547481856151c4565b979650505050505050565b6080815260006154926080830187615218565b82810360208401526154a481876151c4565b905082810360408401526154b88186615218565b905082810360608401526154748185615218565b602081526000612ebe6020830184615252565b6040815260006154f26040830185615252565b8281036020840152615504818561527e565b95945050505050565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60408152601060408201526f757269566f746572526567697374727960801b6060820152608060208201526000612ebe608083018461527e565b6020808252600c908201526b1a5b9d985b1a59081c1bdb1b60a21b604082015260600190565b604081526005604082015264737461746560d81b6060820152608060208201526000612ebe608083018461527e565b604081526012604082015271757269507269766174654d6574616461746160701b6060820152608060208201526000612ebe608083018461527e565b6020808252601f908201527f757365722068617320696e76616c6964206f7267616e697a657220726f6c6500604082015260600190565b60408152600b60408201526a7572694d6574616461746160a81b6060820152608060208201526000612ebe608083018461527e565b6020808252602e908201527f6f726465722063616e206e6f7420626520686967686572207468616e206e756d60408201526d626572206f66206f7074696f6e7360901b606082015260800190565b60208082526031908201527f4552433732313a207472616e736665722063616c6c6572206973206e6f74206f6040820152701ddb995c881b9bdc88185c1c1c9bdd9959607a1b606082015260800190565b83815260606020820152600061574e6060830185615218565b82810360408401526153aa8185615218565b8481526080602082015260006157796080830186615252565b6040830194909452506060015292915050565b828152604060208201526000613b46604083018461527e565b8481526080602082015260006157be608083018661527e565b82810360408401526157d0818661527e565b91505082606083015295945050505050565b8381526060602082015260006157fb606083018561527e565b9050826040830152949350505050565b838152826020820152606060408201526000615504606083018461527e565b848152836020820152608060408201526000615849608083018561527e565b905082606083015295945050505050565b604051601f8201601f191681016001600160401b0381118282101715615882576158826159c9565b604052919050565b60006001600160401b038211156158a3576158a36159c9565b5060051b60200190565b600082198211156158c0576158c061599d565b500190565b6000826158d4576158d46159b3565b500490565b6000828210156158eb576158eb61599d565b500390565b60005b8381101561590b5781810151838201526020016158f3565b83811115611eeb5750506000910152565b60008161592b5761592b61599d565b506000190190565b600181811c9082168061594757607f821691505b6020821081141561596857634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156159825761598261599d565b5060010190565b600082615998576159986159b3565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461201357600080fd5b6001600160e01b03198116811461201357600080fdfe469de3b344361a973cff6fdeebc9d7c0ce4b5407c4810694199b73f2f9d3f74da2646970667358221220d852e539407aaec5b1be23ce0076e231859ee6ce329035f1a5dfac99ef9d58e464736f6c63430008040033