VeChain
Explorer
Testnet
Search
Networks
Main
Test
Contract
0x0d377D…D551
Summary
Transactions
Transfers
Address
0x0d377D42fb05Dd57eEc28e40bCB63011525ED551
VET
0.00
VET
VTHO
0.00
VTHO
Tokens
50.00
PPR
Master
0x2a208EdCAC4A5261b2eE02cEe3E79F72B5920138
Deployer
0x2a208EdCAC4A5261b2eE02cEe3E79F72B5920138
Code
0x608060405234801561001057600080fd5b50600436106103e85760003560e01c806301ffc9a7146103ed578063021a5f481461041557806303f1737d1461042a57806306fdde0314610432578063081812fc146104475780630958997514610467578063095ea7b31461047e57806314e340301461049157806318160ddd1461049a5780631c19c215146104a257806323b872dd146104b55780632403c08e146104c8578063248a9ca3146104d05780632682a376146104e3578063298d904a146104f65780632a55205a146105095780632c91b7f81461052a5780632cf74d1c1461053d5780632f2ff15d146105505780632f745c591461056357806334452f381461057657806336568abe1461057e57806339091184146105915780633b37d1d61461059e5780633ccfd60b146105a65780633f4ba83a146105ae57806342842e0e146105b657806342966c68146105c9578063438b6300146105dc57806343b17259146105fc578063449bcd921461060f57806344b28d5914610622578063494cfc6c1461062a57806349d5e6041461063d5780634f6ccce7146106525780635157f46f1461066557806355f804b31461066e5780635944c75314610681578063599d2cb1146106945780635c868028146106a75780635c975abb146106ba5780635dc96d16146106c55780635ea8cd12146106d75780636352211e146106ea5780636b0000f5146106fd5780636f8b44b014610710578063708612e11461072357806370a082311461072c57806375b238fc1461073f5780637b45275d146107545780637caad5831461075d5780637fd6b25e146107705780638456cb591461077957806384cf6b4e146107815780638a616bc01461078a5780638c5db7761461079d5780638c63c072146107bd57806391d14854146107d057806395d89b41146107e35780639659867e146107eb5780639d1b464a146107f45780639d980bd2146107fc578063a217fddf14610805578063a22cb4651461080d578063a288caa314610820578063a3117bc014610829578063a8d0466c1461083c578063acc3f3a814610849578063b88d4fde1461085c578063bf647aa51461086f578063c21b471b14610882578063c32a50f914610895578063c87b56dd146108a8578063d1239730146108bb578063d4f3ecc6146108c8578063d5391393146108db578063d547741f14610902578063d5abeb0114610915578063e45be8eb1461091e578063e467f7e014610927578063e686cbd31461093a578063e985e9c514610998578063e9c26518146109ab578063ea60be0c146109d2578063f489e496146109da578063fc119133146109ed578063fc9b05df14610a00578063fca76c2614610a08575b600080fd5b6104006103fb366004614ed6565b610a10565b60405190151581526020015b60405180910390f35b610428610423366004614e9a565b610a21565b005b610428610a81565b61043a610ba1565b60405161040c91906151a9565b61045a610455366004614e9a565b610c33565b60405161040c91906150d7565b610470602a5481565b60405190815260200161040c565b61042861048c366004614c4e565b610c5a565b61047060295481565b600a54610470565b6104286104b0366004614e9a565b610d6b565b6104286104c3366004614b65565b610de8565b610428610e1a565b6104706104de366004614e9a565b610e79565b6104286104f1366004614cad565b610e8e565b601d5461045a906001600160a01b031681565b61051c610517366004614f95565b6111ec565b60405161040c92919061514c565b610428610538366004614e62565b61129a565b60225461045a906001600160a01b031681565b61042861055e366004614eb2565b6112ff565b610470610571366004614c4e565b61131b565b6104286113b1565b61042861058c366004614eb2565b61140f565b6018546104009060ff1681565b61042861148d565b6104286114f0565b61042861153f565b6104286105c4366004614b65565b61159b565b6104286105d7366004614e9a565b6115b6565b6105ef6105ea366004614af5565b6115e4565b60405161040c9190615165565b60205461045a906001600160a01b031681565b61042861061d366004614e9a565b6116a1565b6104286116f8565b6105ef610638366004614f95565b611759565b6104706000805160206155f383398151915281565b610470610660366004614e9a565b611832565b61047060155481565b61042861067c366004614f0e565b6118d3565b61042861068f366004614f58565b611938565b6104286106a2366004614af5565b611995565b601f5461045a906001600160a01b031681565b600d5460ff16610400565b60105461040090610100900460ff1681565b6104286106e5366004614e9a565b611a09565b61045a6106f8366004614e9a565b611a60565b61042861070b366004614af5565b611a94565b61042861071e366004614e9a565b611acf565b61047060255481565b61047061073a366004614af5565b611b37565b61047060008051602061561383398151915281565b61047060285481565b61042861076b366004614d15565b611bbd565b61047060265481565b610428611d31565b61047060145481565b610428610798366004614e9a565b611d8b565b6104706107ab366004614af5565b60166020526000908152604090205481565b6104286107cb366004614af5565b611dee565b6104006107de366004614eb2565b611e62565b61043a611e8d565b61047060115481565b610470611e9c565b610470602b5481565b610470600081565b61042861081b366004614c21565b611f0b565b61047060275481565b610428610837366004614f95565b611f16565b6013546104009060ff1681565b610428610857366004614dd0565b611f73565b61042861086a366004614ba5565b612037565b60215461045a906001600160a01b031681565b610428610890366004614c79565b612069565b6104286108a3366004614e9a565b6120c5565b61043a6108b6366004614e9a565b6120e3565b6010546104009060ff1681565b6104286108d6366004614fb6565b6120ee565b6104707f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b610428610910366004614eb2565b61214e565b61047060125481565b61047060245481565b6105ef610935366004614cad565b61216a565b610985610948366004614e9a565b602c602052600090815260409020805460018201546002830154600384015460048501546005860154600690960154949593949293919290919087565b60405161040c9796959493929190615381565b6104006109a6366004614b2d565b612a0a565b6104707f3b5d4cc60d3ec3516ee8ae083bd60934f6eb2a6c54b1229985c41bfb092b260381565b601b54610470565b6104286109e8366004614e9a565b612a38565b6104286109fb366004614b2d565b612a8f565b610428612b0f565b610428612b64565b6000610a1b82612b8c565b92915050565b610a396000805160206155f383398151915233611e62565b80610a575750610a5760008051602061561383398151915233611e62565b610a7c5760405162461bcd60e51b8152600401610a7390615308565b60405180910390fd5b602855565b600080516020615613833981519152610a9981612b97565b610aa1612ba1565b6022546040516370a0823160e01b81526001600160a01b0390911690819063a9059cbb90339083906370a0823190610add9030906004016150d7565b60206040518083038186803b158015610af557600080fd5b505afa158015610b09573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b2d9190614f40565b6040518363ffffffff1660e01b8152600401610b4a92919061514c565b602060405180830381600087803b158015610b6457600080fd5b505af1158015610b78573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b9c9190614e7e565b505050565b606060028054610bb0906154ed565b80601f0160208091040260200160405190810160405280929190818152602001828054610bdc906154ed565b8015610c295780601f10610bfe57610100808354040283529160200191610c29565b820191906000526020600020905b815481529060010190602001808311610c0c57829003601f168201915b5050505050905090565b6000610c3e82612be7565b506000908152600660205260409020546001600160a01b031690565b6000610c6582611a60565b9050806001600160a01b0316836001600160a01b03161415610cd35760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b6064820152608401610a73565b336001600160a01b0382161480610cef5750610cef8133612a0a565b610d615760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610a73565b610b9c8383612c0c565b610d73612ba1565b33610d7d82611a60565b6001600160a01b031614610dd15760405162461bcd60e51b815260206004820152601b60248201527a6f6e6c79206f776e65722063616e207265726f6c6c20737461747360281b6044820152606401610a73565b610ddc602b54612c7a565b610de581612e29565b50565b610df3335b82612f9f565b610e0f5760405162461bcd60e51b8152600401610a73906151bc565b610b9c838383612ffe565b610e326000805160206155f383398151915233611e62565b80610e505750610e5060008051602061561383398151915233611e62565b610e6c5760405162461bcd60e51b8152600401610a7390615308565b6010805461ff0019169055565b6000908152600e602052604090206001015490565b600080516020615613833981519152610ea681612b97565b60005b828110156111e45760185460ff1615610f56576019848483818110610ede57634e487b7160e01b600052603260045260246000fd5b9050602002810190610ef091906153b1565b604051610efe92919061500d565b9081526040519081900360200190205460ff1660011415610f565760405162461bcd60e51b815260206004820152601260248201527175726920616c72656164792065786973747360701b6044820152606401610a73565b601a6000878784818110610f7a57634e487b7160e01b600052603260045260246000fd5b602090810292909201358352508101919091526040016000205460ff1660011415610fe15760405162461bcd60e51b8152602060048201526017602482015276746f6b656e20696420616c72656164792065786973747360481b6044820152606401610a73565b600084848381811061100357634e487b7160e01b600052603260045260246000fd5b905060200281019061101591906153b1565b90501161105a5760405162461bcd60e51b81526020600482015260136024820152727572692063616e6e6f7420626520656d70747960681b6044820152606401610a73565b601b86868381811061107c57634e487b7160e01b600052603260045260246000fd5b835460018101855560009485526020948590209190940292909201359190920155508383828181106110be57634e487b7160e01b600052603260045260246000fd5b90506020028101906110d091906153b1565b601c60008989868181106110f457634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002091906111169291906148de565b506001601985858481811061113b57634e487b7160e01b600052603260045260246000fd5b905060200281019061114d91906153b1565b60405161115b92919061500d565b908152604051908190036020019020805460ff9290921660ff199092169190911790556001601a60008888858181106111a457634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060006101000a81548160ff021916908360ff16021790555080806111dc90615528565b915050610ea9565b505050505050565b60008281526001602090815260408083208151808301909252546001600160a01b038116808352600160a01b9091046001600160601b03169282019290925282916112615750604080518082019091526000546001600160a01b0381168252600160a01b90046001600160601b031660208201525b602081015160009061271090611280906001600160601b031687615474565b61128a9190615460565b91519350909150505b9250929050565b6112b26000805160206155f383398151915233611e62565b806112d057506112d060008051602061561383398151915233611e62565b6112ec5760405162461bcd60e51b8152600401610a7390615308565b6018805460ff1916911515919091179055565b61130882610e79565b61131181612b97565b610b9c838361315d565b600061132683611b37565b82106113885760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b6064820152608401610a73565b506001600160a01b03919091166000908152600860209081526040808320938352929052205490565b6113c96000805160206155f383398151915233611e62565b806113e757506113e760008051602061561383398151915233611e62565b6114035760405162461bcd60e51b8152600401610a7390615308565b6010805460ff19169055565b6001600160a01b038116331461147f5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610a73565b61148982826131e3565b5050565b6114a56000805160206155f383398151915233611e62565b806114c357506114c360008051602061561383398151915233611e62565b6114df5760405162461bcd60e51b8152600401610a7390615308565b6010805461ff001916610100179055565b60008051602061561383398151915261150881612b97565b611510612ba1565b6040514790339082156108fc029083906000818181858888f19350505050158015610b9c573d6000803e3d6000fd5b6115576000805160206155f383398151915233611e62565b80611575575061157560008051602061561383398151915233611e62565b6115915760405162461bcd60e51b8152600401610a7390615308565b61159961324a565b565b610b9c83838360405180602001604052806000815250612037565b6115bf33610ded565b6115db5760405162461bcd60e51b8152600401610a73906151bc565b610de581613296565b606060006115f183611b37565b90506000816001600160401b0381111561161b57634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015611644578160200160208202803683370190505b50905060005b828110156116995761165c858261131b565b82828151811061167c57634e487b7160e01b600052603260045260246000fd5b60209081029190910101528061169181615528565b91505061164a565b509392505050565b6116b96000805160206155f383398151915233611e62565b806116d757506116d760008051602061561383398151915233611e62565b6116f35760405162461bcd60e51b8152600401610a7390615308565b602a55565b6117106000805160206155f383398151915233611e62565b8061172e575061172e60008051602061561383398151915233611e62565b61174a5760405162461bcd60e51b8152600401610a7390615308565b6010805460ff19166001179055565b606060006117678484615493565b611772906001615448565b6001600160401b0381111561179757634e487b7160e01b600052604160045260246000fd5b6040519080825280602002602001820160405280156117c0578160200160208202803683370190505b5090506000845b848111611828576117d781613321565b1561181657808383815181106117fd57634e487b7160e01b600052603260045260246000fd5b60209081029190910101528161181281615528565b9250505b8061182081615528565b9150506117c7565b5090949350505050565b600061183d600a5490565b82106118a05760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b6064820152608401610a73565b600a82815481106118c157634e487b7160e01b600052603260045260246000fd5b90600052602060002001549050919050565b6118eb6000805160206155f383398151915233611e62565b80611909575061190960008051602061561383398151915233611e62565b6119255760405162461bcd60e51b8152600401610a7390615308565b805161148990600f906020840190614962565b6119506000805160206155f383398151915233611e62565b8061196e575061196e60008051602061561383398151915233611e62565b61198a5760405162461bcd60e51b8152600401610a7390615308565b610b9c83838361333e565b6119ad6000805160206155f383398151915233611e62565b806119cb57506119cb60008051602061561383398151915233611e62565b6119e75760405162461bcd60e51b8152600401610a7390615308565b602280546001600160a01b0319166001600160a01b0392909216919091179055565b611a216000805160206155f383398151915233611e62565b80611a3f5750611a3f60008051602061561383398151915233611e62565b611a5b5760405162461bcd60e51b8152600401610a7390615308565b602455565b600080611a6c83613407565b90506001600160a01b038116610a1b5760405162461bcd60e51b8152600401610a73906152d6565b600080516020615613833981519152611aac81612b97565b50601d80546001600160a01b0319166001600160a01b0392909216919091179055565b600080516020615613833981519152611ae781612b97565b60135460ff1615611b315760405162461bcd60e51b815260206004820152601460248201527326b0bc1039bab838363c9034b990333937bd32b760611b6044820152606401610a73565b50601255565b60006001600160a01b038216611ba15760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610a73565b506001600160a01b031660009081526005602052604090205490565b611bd56000805160206155f383398151915233611e62565b80611bf35750611bf360008051602061561383398151915233611e62565b611c0f5760405162461bcd60e51b8152600401610a7390615308565b6000815b8351611c1f9084615448565b811015611d2b57611c2f81613321565b611c7b5760405162461bcd60e51b815260206004820152601f60248201527f55524920717565727920666f72206e6f6e6578697374656e7420746f6b656e006044820152606401610a73565b611cac81858481518110611c9f57634e487b7160e01b600052603260045260246000fd5b6020026020010151613422565b807fa21868eaf3c7f76e3920b694616a9b525dabdac615d6e3da5f3890aac442e05d858481518110611cee57634e487b7160e01b600052603260045260246000fd5b6020026020010151604051611d0391906151a9565b60405180910390a281611d1581615528565b9250508080611d2390615528565b915050611c13565b50505050565b611d496000805160206155f383398151915233611e62565b80611d675750611d6760008051602061561383398151915233611e62565b611d835760405162461bcd60e51b8152600401610a7390615308565b6115996134ad565b611da36000805160206155f383398151915233611e62565b80611dc15750611dc160008051602061561383398151915233611e62565b611ddd5760405162461bcd60e51b8152600401610a7390615308565b600090815260016020526040812055565b611e066000805160206155f383398151915233611e62565b80611e245750611e2460008051602061561383398151915233611e62565b611e405760405162461bcd60e51b8152600401610a7390615308565b602180546001600160a01b0319166001600160a01b0392909216919091179055565b6000918252600e602090815260408084206001600160a01b0393909316845291905290205460ff1690565b606060038054610bb0906154ed565b60008060295443611ead9190615493565b9050600060285482611ebf9190615474565b9050601e54811115611ed5576024549250505090565b60245481601e54611ee69190615493565b1015611ef6576024549250505090565b80601e54611f049190615493565b9250505090565b6114893383836134ea565b611f2e6000805160206155f383398151915233611e62565b80611f4c5750611f4c60008051602061561383398151915233611e62565b611f685760405162461bcd60e51b8152600401610a7390615308565b601491909155601555565b600080516020615613833981519152611f8b81612b97565b60005b8251811015610b9c576000838281518110611fb957634e487b7160e01b600052603260045260246000fd5b602002602001015190506000611fce826135b5565b9050601981604051611fe0919061501d565b9081526040805160209281900383019020805460ff191690556000848152601c909252812061200e916149d6565b506000908152601a60205260409020805460ff191690558061202f81615528565b915050611f8e565b6120413383612f9f565b61205d5760405162461bcd60e51b8152600401610a73906151bc565b611d2b84848484613769565b6120816000805160206155f383398151915233611e62565b8061209f575061209f60008051602061561383398151915233611e62565b6120bb5760405162461bcd60e51b8152600401610a7390615308565b611489828261379c565b6000805160206156138339815191526120dd81612b97565b50601755565b6060610a1b82613852565b6121066000805160206155f383398151915233611e62565b80612124575061212460008051602061561383398151915233611e62565b6121405760405162461bcd60e51b8152600401610a7390615308565b602592909255602655602755565b61215782610e79565b61216081612b97565b610b9c83836131e3565b6060612174612ba1565b60105460019060ff166121c25760405162461bcd60e51b8152602060048201526016602482015275135a5b9d1a5b99c81a5cc81b9bdd08195b98589b195960521b6044820152606401610a73565b6000811161220f5760405162461bcd60e51b815260206004820152601a6024820152790517479206d7573742062652067726561746572207468616e20360341b6044820152606401610a73565b601554158061222057506015548111155b6122655760405162461bcd60e51b81526020600482015260166024820152750a2e8f240caf0c6cacac8e640dac2f040e0cae440e8f60531b6044820152606401610a73565b601454158061229057506014543360009081526016602052604090205461228d908390615448565b11155b6122da5760405162461bcd60e51b815260206004820152601b60248201527a5174792065786365656473206d617820706572206164647265737360281b6044820152606401610a73565b60125415806122f85750601254816011546122f59190615448565b11155b61233d5760405162461bcd60e51b81526020600482015260166024820152755174792065786365656473206d617820737570706c7960501b6044820152606401610a73565b33600090815260236020526040902054431161239b5760405162461bcd60e51b815260206004820152601e60248201527f6f6e65206d696e742070657220626c6f636b20706572206164647265737300006044820152606401610a73565b3360009081526023602052604081204390556123b5611e9c565b90506123c081612c7a565b6000805b878110156128f1578888828181106123ec57634e487b7160e01b600052603260045260246000fd5b90506020020160208101906124019190614af5565b6020546001600160a01b039081169116141561260457612422600183615448565b915088888281811061244457634e487b7160e01b600052603260045260246000fd5b90506020020160208101906124599190614af5565b6001600160a01b03166323b872dd3361dead8a8a8681811061248b57634e487b7160e01b600052603260045260246000fd5b905060200201356040518463ffffffff1660e01b81526004016124b0939291906150eb565b600060405180830381600087803b1580156124ca57600080fd5b505af11580156124de573d6000803e3d6000fd5b50506022546040516370a0823160e01b8152671bc16d674ec8000093506001600160a01b0390911691506370a082319061251c9030906004016150d7565b60206040518083038186803b15801561253457600080fd5b505afa158015612548573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061256c9190614f40565b106125ff5760225460405163a9059cbb60e01b81526001600160a01b039091169063a9059cbb906125ab903390671bc16d674ec800009060040161514c565b602060405180830381600087803b1580156125c557600080fd5b505af11580156125d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125fd9190614e7e565b505b6128df565b88888281811061262457634e487b7160e01b600052603260045260246000fd5b90506020020160208101906126399190614af5565b601f546001600160a01b03908116911614156128df576021546001600160a01b03166340c10f193389898581811061268157634e487b7160e01b600052603260045260246000fd5b905060200201356040518363ffffffff1660e01b81526004016126a592919061514c565b602060405180830381600087803b1580156126bf57600080fd5b505af11580156126d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126f79190614f40565b503389898381811061271957634e487b7160e01b600052603260045260246000fd5b905060200201602081019061272e9190614af5565b6001600160a01b0316636352211e89898581811061275c57634e487b7160e01b600052603260045260246000fd5b905060200201356040518263ffffffff1660e01b815260040161278191815260200190565b60206040518083038186803b15801561279957600080fd5b505afa1580156127ad573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127d19190614b11565b6001600160a01b0316146128175760405162461bcd60e51b815260206004820152600d60248201526c1b999d081b9bdd081bdddb9959609a1b6044820152606401610a73565b612822600183615448565b915088888281811061284457634e487b7160e01b600052603260045260246000fd5b90506020020160208101906128599190614af5565b6001600160a01b03166342966c6888888481811061288757634e487b7160e01b600052603260045260246000fd5b905060200201356040518263ffffffff1660e01b81526004016128ac91815260200190565b600060405180830381600087803b1580156128c657600080fd5b505af11580156128da573d6000803e3d6000fd5b505050505b806128e981615528565b9150506123c4565b50602a5481146129365760405162461bcd60e51b815260206004820152601060248201526f696e76616c6964206275726e2071747960801b6044820152606401610a73565b602754821015612962576064602554836129509190615474565b61295a9190615460565b601e55612980565b6064602654836129729190615474565b61297c9190615460565b601e555b4360295560008061298f61394e565b915091506129a461299d3390565b8383613b3d565b6129ad82612e29565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106129f157634e487b7160e01b600052603260045260246000fd5b60209081029190910101529a9950505050505050505050565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205460ff1690565b612a506000805160206155f383398151915233611e62565b80612a6e5750612a6e60008051602061561383398151915233611e62565b612a8a5760405162461bcd60e51b8152600401610a7390615308565b602b55565b612aa76000805160206155f383398151915233611e62565b80612ac55750612ac560008051602061561383398151915233611e62565b612ae15760405162461bcd60e51b8152600401610a7390615308565b601f80546001600160a01b039384166001600160a01b03199182161790915560208054929093169116179055565b600080516020615613833981519152612b2781612b97565b612b2f612ba1565b6040516370a0823160e01b815265456e6572677990819063a9059cbb90339083906370a0823190610add9030906004016150d7565b600080516020615613833981519152612b7c81612b97565b506013805460ff19166001179055565b6000610a1b82613bd3565b610de58133613bf8565b600d5460ff16156115995760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610a73565b612bf081613321565b610de55760405162461bcd60e51b8152600401610a73906152d6565b600081815260066020526040902080546001600160a01b0319166001600160a01b0384169081179091558190612c4182611a60565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b601d546040516323b872dd60e01b81526001600160a01b03909116906323b872dd90612cae903390309086906004016150eb565b602060405180830381600087803b158015612cc857600080fd5b505af1158015612cdc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d009190614e7e565b612d435760405162461bcd60e51b815260206004820152601460248201527363616e6e6f74207472616e73666572205653454160601b6044820152606401610a73565b601d5460405163095ea7b360e01b81526001600160a01b039091169063095ea7b390612d75903090859060040161514c565b602060405180830381600087803b158015612d8f57600080fd5b505af1158015612da3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dc79190614e7e565b50601d54604051630852cd8d60e31b8152600481018390526001600160a01b03909116906342966c6890602401600060405180830381600087803b158015612e0e57600080fd5b505af1158015612e22573d6000803e3d6000fd5b5050505050565b612e3560036006613c51565b6000828152602c6020526040902055612e5060036006613c51565b6000828152602c6020526040902060010155612e6e60036006613c51565b6000828152602c6020526040902060020155612e8c60036006613c51565b6000828152602c60205260409020600390810191909155612eae906006613c51565b6000828152602c6020526040902060040155612ecc60036006613c51565b6000828152602c602052604090206005810182905560048101546003820154600283015460018401549354929391929091612f0691615448565b612f109190615448565b612f1a9190615448565b612f249190615448565b612f2e9190615448565b6000828152602c6020526040908190206006810183905580546001820154600283015460038401546004850154600590950154955188977f96d198482e51c02028d523fa2a53599731a3be603a45953a24b5434ae6b90da197612f949792909190615381565b60405180910390a250565b600080612fab83611a60565b9050806001600160a01b0316846001600160a01b03161480612fd25750612fd28185612a0a565b80612ff65750836001600160a01b0316612feb84610c33565b6001600160a01b0316145b949350505050565b826001600160a01b031661301182611a60565b6001600160a01b0316146130375760405162461bcd60e51b8152600401610a739061525b565b6001600160a01b0382166130995760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610a73565b6130a68383836001613c85565b826001600160a01b03166130b982611a60565b6001600160a01b0316146130df5760405162461bcd60e51b8152600401610a739061525b565b600081815260066020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260058552838620805460001901905590871680865283862080546001019055868652600490945282852080549092168417909155905184936000805160206155d383398151915291a4505050565b6131678282611e62565b611489576000828152600e602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561319f3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6131ed8282611e62565b15611489576000828152600e602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b613252613c99565b600d805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b60405161328c91906150d7565b60405180910390a1565b61329e612ba1565b601054610100900460ff166132e85760405162461bcd60e51b815260206004820152601060248201526f109d5c9b9a5b99c8191a5cd8589b195960821b6044820152606401610a73565b6132f181613ce2565b604051339082907f41b05bf655882bc27017be44e8216d1059cbc6b9668d754f5a745dcce690a9d490600090a350565b60008061332d83613407565b6001600160a01b0316141592915050565b6127106001600160601b03821611156133695760405162461bcd60e51b8152600401610a7390615337565b6001600160a01b0382166133bd5760405162461bcd60e51b815260206004820152601b60248201527a455243323938313a20496e76616c696420706172616d657465727360281b6044820152606401610a73565b6040805180820182526001600160a01b0393841681526001600160601b0392831660208083019182526000968752600190529190942093519051909116600160a01b029116179055565b6000908152600460205260409020546001600160a01b031690565b61342b82613321565b61348e5760405162461bcd60e51b815260206004820152602e60248201527f45524337323155524953746f726167653a2055524920736574206f66206e6f6e60448201526d32bc34b9ba32b73a103a37b5b2b760911b6064820152608401610a73565b6000828152600c602090815260409091208251610b9c92840190614962565b6134b5612ba1565b600d805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25861327f3390565b816001600160a01b0316836001600160a01b031614156135485760405162461bcd60e51b815260206004820152601960248201527822a9219b99189d1030b8383937bb32903a379031b0b63632b960391b6044820152606401610a73565b6001600160a01b03838116600081815260076020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b606060005b601b548110156137535782601b82815481106135e657634e487b7160e01b600052603260045260246000fd5b9060005260206000200154141561374157601b5481101561366857601b805461361190600190615493565b8154811061362f57634e487b7160e01b600052603260045260246000fd5b9060005260206000200154601b828154811061365b57634e487b7160e01b600052603260045260246000fd5b6000918252602090912001555b601b80548061368757634e487b7160e01b600052603160045260246000fd5b60019003818190600052602060002001600090559055601c600084815260200190815260200160002080546136bb906154ed565b80601f01602080910402602001604051908101604052809291908181526020018280546136e7906154ed565b80156137345780601f1061370957610100808354040283529160200191613734565b820191906000526020600020905b81548152906001019060200180831161371757829003601f168201915b5050505050915050919050565b8061374b81615528565b9150506135ba565b5050604080516020810190915260008152919050565b613774848484612ffe565b61378084848484613ceb565b611d2b5760405162461bcd60e51b8152600401610a7390615209565b6127106001600160601b03821611156137c75760405162461bcd60e51b8152600401610a7390615337565b6001600160a01b0382166138195760405162461bcd60e51b815260206004820152601960248201527822a921991c9c189d1034b73b30b634b2103932b1b2b4bb32b960391b6044820152606401610a73565b604080518082019091526001600160a01b039092168083526001600160601b039091166020909201829052600160a01b90910217600055565b606061385d82612be7565b6000828152600c602052604081208054613876906154ed565b80601f01602080910402602001604051908101604052809291908181526020018280546138a2906154ed565b80156138ef5780601f106138c4576101008083540402835291602001916138ef565b820191906000526020600020905b8154815290600101906020018083116138d257829003601f168201915b505050505090506000613900613df8565b9050805160001415613913575092915050565b81511561394557808260405160200161392d929190615039565b60405160208183030381529060405292505050919050565b612ff684613e07565b601b5460009060609061399b5760405162461bcd60e51b8152602060048201526015602482015274746f6b656e20696e76656e746f727920656d70747960581b6044820152606401610a73565b601b5460006139a982613e6e565b90506000601b6139ba600184615493565b815481106139d857634e487b7160e01b600052603260045260246000fd5b9060005260206000200154905082821015613a5d57601b6139fa600185615493565b81548110613a1857634e487b7160e01b600052603260045260246000fd5b9060005260206000200154601b600184613a329190615493565b81548110613a5057634e487b7160e01b600052603260045260246000fd5b6000918252602090912001555b601b805480613a7c57634e487b7160e01b600052603160045260246000fd5b6001900381819060005260206000200160009055905580601c6000838152602001908152602001600020808054613ab2906154ed565b80601f0160208091040260200160405190810160405280929190818152602001828054613ade906154ed565b8015613b2b5780601f10613b0057610100808354040283529160200191613b2b565b820191906000526020600020905b815481529060010190602001808311613b0e57829003601f168201915b50505050509050945094505050509091565b600160116000828254613b509190615448565b90915550613b6090508383613ebb565b613b6a8282613422565b6040516001600160a01b0384169083907f3a5398bda6f1f57d6c96834fa9bf02b5517bdc847d14312015a917ba421c31c990600090a36001600160a01b0383166000908152601660205260408120805460019290613bc9908490615448565b9091555050505050565b60006001600160e01b03198216637965db0b60e01b1480610a1b5750610a1b82613ed5565b613c028282611e62565b61148957613c0f81613ee0565b613c1a836020613ef2565b604051602001613c2b929190615068565b60408051601f198184030181529082905262461bcd60e51b8252610a73916004016151a9565b600080805b8481101561169957613c67846140d3565b613c719083615448565b915080613c7d81615528565b915050613c56565b613c8d612ba1565b611d2b84848484614149565b600d5460ff166115995760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610a73565b611ddd81614282565b60006001600160a01b0384163b15613ded57604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290613d2f90339089908890889060040161510f565b602060405180830381600087803b158015613d4957600080fd5b505af1925050508015613d79575060408051601f3d908101601f19168201909252613d7691810190614ef2565b60015b613dd3573d808015613da7576040519150601f19603f3d011682016040523d82523d6000602084013e613dac565b606091505b508051613dcb5760405162461bcd60e51b8152600401610a7390615209565b805181602001fd5b6001600160e01b031916630a85bd0160e11b149050612ff6565b506001949350505050565b6060600f8054610bb0906154ed565b6060613e1282612be7565b6000613e1c613df8565b90506000815111613e3c5760405180602001604052806000815250613e67565b80613e46846142c2565b604051602001613e57929190615039565b6040516020818303038152906040525b9392505050565b600080613e7a836140d3565b90507fec6cdc8e735e4069f6e89062582f3e5532a8e71373e7ef2962fa916cf2af21f281604051613ead91815260200190565b60405180910390a192915050565b611489828260405180602001604052806000815250614364565b6000610a1b82614397565b6060610a1b6001600160a01b03831660145b60606000613f01836002615474565b613f0c906002615448565b6001600160401b03811115613f3157634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015613f5b576020820181803683370190505b509050600360fc1b81600081518110613f8457634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110613fc157634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a9053506000613fe5846002615474565b613ff0906001615448565b90505b6001811115614084576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061403257634e487b7160e01b600052603260045260246000fd5b1a60f81b82828151811061405657634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a90535060049490941c9361407d816154d6565b9050613ff3565b508315613e675760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610a73565b600080436140e2602a82615543565b336017546040805160208101959095528401929092526001600160601b0319606091821b1690830152607482015260940160408051601f19818403018152919052805160209091012060178190559050600061413e8483615543565b612ff6906001615448565b614155848484846143bc565b60018111156141c45760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e7365637574697665207472604482015274185b9cd9995c9cc81b9bdd081cdd5c1c1bdc9d1959605a1b6064820152608401610a73565b816001600160a01b0385166142205761421b81600a80546000838152600b60205260408120829055600182018355919091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80155565b614243565b836001600160a01b0316856001600160a01b031614614243576142438582614444565b6001600160a01b03841661425f5761425a816144e1565b612e22565b846001600160a01b0316846001600160a01b031614612e2257612e2284826145ba565b61428b816145fe565b6000818152600c6020526040902080546142a4906154ed565b159050610de5576000818152600c60205260408120610de5916149d6565b606060006142cf8361468f565b60010190506000816001600160401b038111156142fc57634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015614326576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a850494508461435f57611699565b614330565b61436e8383614765565b61437b6000848484613ceb565b610b9c5760405162461bcd60e51b8152600401610a7390615209565b60006001600160e01b0319821663780e9d6360e01b1480610a1b5750610a1b8261486e565b6001811115611d2b576001600160a01b03841615614402576001600160a01b038416600090815260056020526040812080548392906143fc908490615493565b90915550505b6001600160a01b03831615611d2b576001600160a01b03831660009081526005602052604081208054839290614439908490615448565b909155505050505050565b6000600161445184611b37565b61445b9190615493565b6000838152600960205260409020549091508082146144ae576001600160a01b03841660009081526008602090815260408083208584528252808320548484528184208190558352600990915290208190555b5060009182526009602090815260408084208490556001600160a01b039094168352600881528383209183525290812055565b600a546000906144f390600190615493565b6000838152600b6020526040812054600a805493945090928490811061452957634e487b7160e01b600052603260045260246000fd5b9060005260206000200154905080600a838154811061455857634e487b7160e01b600052603260045260246000fd5b6000918252602080832090910192909255828152600b9091526040808220849055858252812055600a80548061459e57634e487b7160e01b600052603160045260246000fd5b6001900381819060005260206000200160009055905550505050565b60006145c583611b37565b6001600160a01b039093166000908152600860209081526040808320868452825280832085905593825260099052919091209190915550565b600061460982611a60565b9050614619816000846001613c85565b61462282611a60565b600083815260066020908152604080832080546001600160a01b03199081169091556001600160a01b0385168085526005845282852080546000190190558785526004909352818420805490911690555192935084926000805160206155d3833981519152908390a45050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b83106146ce5772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6904ee2d6d415b85acef8160201b83106146f8576904ee2d6d415b85acef8160201b830492506020015b662386f26fc10000831061471657662386f26fc10000830492506010015b6305f5e100831061472e576305f5e100830492506008015b612710831061474257612710830492506004015b60648310614754576064830492506002015b600a8310610a1b5760010192915050565b6001600160a01b0382166147bb5760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610a73565b6147c481613321565b156147e15760405162461bcd60e51b8152600401610a73906152a0565b6147ef600083836001613c85565b6147f881613321565b156148155760405162461bcd60e51b8152600401610a73906152a0565b6001600160a01b038216600081815260056020908152604080832080546001019055848352600490915280822080546001600160a01b0319168417905551839291906000805160206155d3833981519152908290a45050565b60006001600160e01b031982166380ac58cd60e01b148061489f57506001600160e01b03198216635b5e139f60e01b145b80610a1b5750610a1b8260006001600160e01b0319821663152a902d60e11b1480610a1b57506301ffc9a760e01b6001600160e01b0319831614610a1b565b8280546148ea906154ed565b90600052602060002090601f01602090048101928261490c5760008555614952565b82601f106149255782800160ff19823516178555614952565b82800160010185558215614952579182015b82811115614952578235825591602001919060010190614937565b5061495e929150614a0c565b5090565b82805461496e906154ed565b90600052602060002090601f0160209004810192826149905760008555614952565b82601f106149a957805160ff1916838001178555614952565b82800160010185558215614952579182015b828111156149525782518255916020019190600101906149bb565b5080546149e2906154ed565b6000825580601f106149f2575050565b601f016020900490600052602060002090810190610de591905b5b8082111561495e5760008155600101614a0d565b60006001600160401b03831115614a3a57614a3a615583565b614a4d601f8401601f19166020016153f5565b9050828152838383011115614a6157600080fd5b828260208301376000602084830101529392505050565b60008083601f840112614a89578182fd5b5081356001600160401b03811115614a9f578182fd5b6020830191508360208260051b850101111561129357600080fd5b600082601f830112614aca578081fd5b613e6783833560208501614a21565b80356001600160601b0381168114614af057600080fd5b919050565b600060208284031215614b06578081fd5b8135613e6781615599565b600060208284031215614b22578081fd5b8151613e6781615599565b60008060408385031215614b3f578081fd5b8235614b4a81615599565b91506020830135614b5a81615599565b809150509250929050565b600080600060608486031215614b79578081fd5b8335614b8481615599565b92506020840135614b9481615599565b929592945050506040919091013590565b60008060008060808587031215614bba578081fd5b8435614bc581615599565b93506020850135614bd581615599565b92506040850135915060608501356001600160401b03811115614bf6578182fd5b8501601f81018713614c06578182fd5b614c1587823560208401614a21565b91505092959194509250565b60008060408385031215614c33578182fd5b8235614c3e81615599565b91506020830135614b5a816155ae565b60008060408385031215614c60578182fd5b8235614c6b81615599565b946020939093013593505050565b60008060408385031215614c8b578182fd5b8235614c9681615599565b9150614ca460208401614ad9565b90509250929050565b60008060008060408587031215614cc2578182fd5b84356001600160401b0380821115614cd8578384fd5b614ce488838901614a78565b90965094506020870135915080821115614cfc578384fd5b50614d0987828801614a78565b95989497509550505050565b60008060408385031215614d27578182fd5b82356001600160401b0380821115614d3d578384fd5b818501915085601f830112614d50578384fd5b81356020614d65614d6083615425565b6153f5565b8083825282820191508286018a848660051b8901011115614d84578889fd5b885b85811015614dbd57813587811115614d9c578a8bfd5b614daa8d87838c0101614aba565b8552509284019290840190600101614d86565b50909a9890920135985050505050505050565b60006020808385031215614de2578182fd5b82356001600160401b03811115614df7578283fd5b8301601f81018513614e07578283fd5b8035614e15614d6082615425565b80828252848201915084840188868560051b8701011115614e34578687fd5b8694505b83851015614e56578035835260019490940193918501918501614e38565b50979650505050505050565b600060208284031215614e73578081fd5b8135613e67816155ae565b600060208284031215614e8f578081fd5b8151613e67816155ae565b600060208284031215614eab578081fd5b5035919050565b60008060408385031215614ec4578182fd5b823591506020830135614b5a81615599565b600060208284031215614ee7578081fd5b8135613e67816155bc565b600060208284031215614f03578081fd5b8151613e67816155bc565b600060208284031215614f1f578081fd5b81356001600160401b03811115614f34578182fd5b612ff684828501614aba565b600060208284031215614f51578081fd5b5051919050565b600080600060608486031215614f6c578081fd5b833592506020840135614f7e81615599565b9150614f8c60408501614ad9565b90509250925092565b60008060408385031215614fa7578182fd5b50508035926020909101359150565b600080600060608486031215614fca578081fd5b505081359360208301359350604090920135919050565b60008151808452614ff98160208601602086016154aa565b601f01601f19169290920160200192915050565b8183823760009101908152919050565b6000825161502f8184602087016154aa565b9190910192915050565b6000835161504b8184602088016154aa565b83519083019061505f8183602088016154aa565b01949350505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835161509a8160178501602088016154aa565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516150cb8160288401602088016154aa565b01602801949350505050565b6001600160a01b0391909116815260200190565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b038581168252841660208201526040810183905260806060820181905260009061514290830184614fe1565b9695505050505050565b6001600160a01b03929092168252602082015260400190565b6020808252825182820181905260009190848201906040850190845b8181101561519d57835183529284019291840191600101615181565b50909695505050505050565b602081526000613e676020830184614fe1565b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b6020808252601c908201527b115490cdcc8c4e881d1bdad95b88185b1c9958591e481b5a5b9d195960221b604082015260600190565b602080825260189082015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b604082015260600190565b60208082526015908201527426bab9ba103132903a32b0b69037b91030b236b4b760591b604082015260600190565b6020808252602a908201527f455243323938313a20726f79616c7479206665652077696c6c206578636565646040820152692073616c65507269636560b01b606082015260800190565b968752602087019590955260408601939093526060850191909152608084015260a083015260c082015260e00190565b6000808335601e198436030181126153c7578283fd5b8301803591506001600160401b038211156153e0578283fd5b60200191503681900382131561129357600080fd5b604051601f8201601f191681016001600160401b038111828210171561541d5761541d615583565b604052919050565b60006001600160401b0382111561543e5761543e615583565b5060051b60200190565b6000821982111561545b5761545b615557565b500190565b60008261546f5761546f61556d565b500490565b600081600019048311821515161561548e5761548e615557565b500290565b6000828210156154a5576154a5615557565b500390565b60005b838110156154c55781810151838201526020016154ad565b83811115611d2b5750506000910152565b6000816154e5576154e5615557565b506000190190565b600181811c9082168061550157607f821691505b6020821081141561552257634e487b7160e01b600052602260045260246000fd5b50919050565b600060001982141561553c5761553c615557565b5060010190565b6000826155525761555261556d565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610de557600080fd5b8015158114610de557600080fd5b6001600160e01b031981168114610de557600080fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef5146a08baf902532d0ee2f909971144f12ca32651cd70cbee1117cddfb3b3b33a49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775a264697066735822122083b7af170e1c3b49ab02fc4ca973d20e9aa55b259f03eb45e291cf0c9424d22b64736f6c63430008040033