Contract Address Details
contract
token

0x896Db81eB822eEF4841Eae33012FbAcCe2efB823

Overview

PXP Balance

0 Wei

PXP Value

$0.00

Token Holdings

Fetching tokens...

More Info

Last Balance Update

Blocks Validated

Contract Creation Code

Verify & Publish
0x608060405234801561001057600080fd5b50614b7f806100206000396000f3fe608060405234801561001057600080fd5b50600436106101b85760003560e01c80636b20c454116100f9578063a22cb46511610097578063e985e9c511610071578063e985e9c514610397578063f242432a146103aa578063f2fde38b146103bd578063f5298aca146103d0576101b8565b8063a22cb46514610369578063bb3bafd61461037c578063e8a3d4851461038f576101b8565b8063891be974116100d3578063891be974146103195780638da5cb5b1461033957806395d89b411461034e57806398d0b4fb14610356576101b8565b80636b20c454146102f65780636c0360eb14610309578063715018a614610311576101b8565b8063162094c4116101665780634e1273f4116101405780634e1273f41461028f57806355f804b3146102af5780635ee1cec5146102c25780636308f1cd146102d5576101b8565b8063162094c41461025657806318054c37146102695780632eb2c2d61461027c576101b8565b80630e89341c116101975780630e89341c1461021b5780630eaead671461022e57806310c0bc0714610243576101b8565b8062fdd58e146101bd57806301ffc9a7146101e657806306fdde0314610206575b600080fd5b6101d06101cb366004614047565b6103e3565b6040516101dd919061474e565b60405180910390f35b6101f96101f4366004614166565b610452565b6040516101dd91906145c0565b61020e61048d565b6040516101dd91906145cb565b61020e610229366004614314565b61051c565b61024161023c3660046142bc565b61052d565b005b61020e610251366004614289565b6106fc565b61024161026436600461432c565b610727565b610241610277366004614016565b6107a9565b61024161028a366004613e92565b610827565b6102a261029d3660046140a6565b610b25565b6040516101dd919061457c565b6102416102bd3660046141a6565b610c11565b6102416102d03660046141e1565b610c91565b6102e86102e3366004614367565b610da2565b6040516101dd929190614443565b610241610304366004613fa3565b610e02565b61020e610e7b565b610241610f13565b61032c610327366004614314565b610fe9565b6040516101dd9190614569565b61034161108f565b6040516101dd919061442f565b61020e61109e565b6102e8610364366004614367565b6110fa565b610241610377366004614016565b611117565b61032c61038a366004614314565b611206565b61020e611297565b6101f96103a5366004613e5a565b6112f3565b6102416103b8366004613f3c565b611306565b6102416103cb366004613e3e565b6114d1565b6102416103de366004614072565b6115fe565b60006001600160a01b03831661042a5760405162461bcd60e51b815260040180806020018281038252602b8152602001806148fb602b913960400191505060405180910390fd5b5060009081526097602090815260408083206001600160a01b03949094168352929052205490565b7fffffffff00000000000000000000000000000000000000000000000000000000811660009081526065602052604090205460ff165b919050565b610262805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105145780601f106104e957610100808354040283529160200191610514565b820191906000526020600020905b8154815290600101906020018083116104f757829003601f168201915b505050505081565b606061052782611672565b92915050565b825160601c600061053c6118af565b9050846060015160008151811061054f57fe5b6020026020010151600001516001600160a01b0316826001600160a01b0316146105945760405162461bcd60e51b815260040161058b90614615565b60405180910390fd5b8460a0015151856060015151146105aa57600080fd5b806001600160a01b0316826001600160a01b031614806105cf57506105cf82826112f3565b6105eb5760405162461bcd60e51b815260040161058b90614683565b600085604001511161060f5760405162461bcd60e51b815260040161058b906145de565b6000831161062f5760405162461bcd60e51b815260040161058b9061464c565b6000856020015151116106545760405162461bcd60e51b815260040161058b90614717565b845160009081526101fc60205260409020546106d65760005b85606001515181101561068d576106858287836118b3565b60010161066d565b506106a085600001518660400151611937565b6106b2856000015186608001516119a1565b6106c485600001518660600151611b4f565b6106d685600001518660200151611c40565b6106f58486600001518560405180602001604052806000815250611d04565b5050505050565b6060308260405160200161071192919061446a565b6040516020818303038152906040529050919050565b61072f6118af565b6001600160a01b031661074061108f565b6001600160a01b03161461079b576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6107a58282611c40565b5050565b6107b16118af565b6001600160a01b03166107c261108f565b6001600160a01b03161461081d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6107a58282611d10565b81518351146108675760405162461bcd60e51b8152600401808060200182810382526028815260200180614b016028913960400191505060405180910390fd5b6001600160a01b0384166108ac5760405162461bcd60e51b81526004018080602001828103825260258152602001806149bb6025913960400191505060405180910390fd5b6108b46118af565b6001600160a01b0316856001600160a01b031614806108da57506108da856103a56118af565b6109155760405162461bcd60e51b81526004018080602001828103825260328152602001806149e06032913960400191505060405180910390fd5b600061091f6118af565b905061092f818787878787610b1d565b60005b8451811015610a3557600085828151811061094957fe5b60200260200101519050600085838151811061096157fe5b602002602001015190506109ce816040518060600160405280602a8152602001614a85602a91396097600086815260200190815260200160002060008d6001600160a01b03166001600160a01b0316815260200190815260200160002054611d709092919063ffffffff16565b60008381526097602090815260408083206001600160a01b038e811685529252808320939093558a1681522054610a059082611e07565b60009283526097602090815260408085206001600160a01b038c1686529091529092209190915550600101610932565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610abb578181015183820152602001610aa3565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610afa578181015183820152602001610ae2565b5050505090500194505050505060405180910390a4610b1d818787878787611e61565b505050505050565b60608151835114610b675760405162461bcd60e51b8152600401808060200182810382526029815260200180614ad86029913960400191505060405180910390fd5b6000835167ffffffffffffffff81118015610b8157600080fd5b50604051908082528060200260200182016040528015610bab578160200160208202803683370190505b50905060005b8451811015610c0957610bea858281518110610bc957fe5b6020026020010151858381518110610bdd57fe5b60200260200101516103e3565b828281518110610bf657fe5b6020908102919091010152600101610bb1565b509392505050565b610c196118af565b6001600160a01b0316610c2a61108f565b6001600160a01b031614610c85576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b610c8e81612111565b50565b600054610100900460ff1680610caa5750610caa612125565b80610cb8575060005460ff16155b610cf35760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff16158015610d1e576000805460ff1961ff0019909116610100171660011790555b610d26612136565b610d2e612247565b610d36612311565b610d3e6123c7565b610d46612467565b610d5e60405180602001604052806000815250612568565b610d6782612665565b610d6f6123c7565b610d77612730565b610d8185856127e6565b610d8a83612111565b80156106f5576000805461ff00191690555050505050565b6101fa6020528160005260406000208181548110610dbf57600080fd5b6000918252602090912001546001600160a01b03811692507401000000000000000000000000000000000000000090046bffffffffffffffffffffffff16905082565b610e0a6118af565b6001600160a01b0316836001600160a01b03161480610e305750610e30836103a56118af565b610e6b5760405162461bcd60e51b81526004018080602001828103825260298152602001806149706029913960400191505060405180910390fd5b610e768383836128b3565b505050565b61012f8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610f085780601f10610edd57610100808354040283529160200191610f08565b820191906000526020600020905b815481529060010190602001808311610eeb57829003601f168201915b505050505090505b90565b610f1b6118af565b6001600160a01b0316610f2c61108f565b6001600160a01b031614610f87576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b60606101fb6000838152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561108457600084815260209081902060408051808201909152908401546001600160a01b03811682527401000000000000000000000000000000000000000090046bffffffffffffffffffffffff168183015282526001909201910161101f565b505050509050919050565b6033546001600160a01b031690565b610263805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105145780601f106104e957610100808354040283529160200191610514565b6101fb6020528160005260406000208181548110610dbf57600080fd5b816001600160a01b03166111296118af565b6001600160a01b0316141561116f5760405162461bcd60e51b8152600401808060200182810382526029815260200180614aaf6029913960400191505060405180910390fd5b806098600061117c6118af565b6001600160a01b03908116825260208083019390935260409182016000908120918716808252919093529120805460ff1916921515929092179091556111c06118af565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b60008181526101fa6020908152604080832080548251818502810185019093528083526060949293919290918401821561108457600084815260209081902060408051808201909152908401546001600160a01b03811682527401000000000000000000000000000000000000000090046bffffffffffffffffffffffff168183015282526001909201910161101f565b610230805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105145780601f106104e957610100808354040283529160200191610514565b60006112ff8383612b21565b9392505050565b6001600160a01b03841661134b5760405162461bcd60e51b81526004018080602001828103825260258152602001806149bb6025913960400191505060405180910390fd5b6113536118af565b6001600160a01b0316856001600160a01b031614806113795750611379856103a56118af565b6113b45760405162461bcd60e51b81526004018080602001828103825260298152602001806149706029913960400191505060405180910390fd5b60006113be6118af565b90506113de8187876113cf88612b4d565b6113d888612b4d565b87610b1d565b611425836040518060600160405280602a8152602001614a85602a913960008781526097602090815260408083206001600160a01b038d1684529091529020549190611d70565b60008581526097602090815260408083206001600160a01b038b8116855292528083209390935587168152205461145c9084611e07565b60008581526097602090815260408083206001600160a01b03808b168086529184529382902094909455805188815291820187905280518a8416938616927fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6292908290030190a4610b1d818787878787612b92565b6114d96118af565b6001600160a01b03166114ea61108f565b6001600160a01b031614611545576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661158a5760405162461bcd60e51b81526004018080602001828103825260268152602001806149266026913960400191505060405180910390fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6116066118af565b6001600160a01b0316836001600160a01b0316148061162c575061162c836103a56118af565b6116675760405162461bcd60e51b81526004018080602001828103825260298152602001806149706029913960400191505060405180910390fd5b610e76838383612d34565b600081815261012e6020908152604080832080548251601f60026000196101006001861615020190931692909204918201859004850281018501909352808352606094938301828280156117075780601f106116dc57610100808354040283529160200191611707565b820191906000526020600020905b8154815290600101906020018083116116ea57829003601f168201915b505050505090506000611718610e7b565b905080516000141561172c57509050610488565b8151156117ed5780826040516020018083805190602001908083835b602083106117675780518252601f199092019160209182019101611748565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b602083106117af5780518252601f199092019160209182019101611790565b6001836020036101000a0380198251168184511680821785525050505050509050019250505060405160208183030381529060405292505050610488565b806117f785612e67565b6040516020018083805190602001908083835b602083106118295780518252601f19909201916020918201910161180a565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b602083106118715780518252601f199092019160209182019101611852565b6001836020036101000a0380198251168184511680821785525050505050509050019250505060405160208183030381529060405292505050919050565b3390565b6000826060015182815181106118c557fe5b6020026020010151600001519050806001600160a01b0316846001600160a01b03161461193157611931836060015183815181106118ff57fe5b60200260200101516000015161191485612f76565b8560a00151858151811061192457fe5b60200260200101516131cb565b50505050565b60008281526101fc60205260409020541561195157600080fd5b60008281526101fc602052604090819020829055517f5e2aa66efd74cce82b21852e317e5490d9ecc9e6bb953ae24d90851258cc2f5c906119959084908490614770565b60405180910390a15050565b60005b8151811015610e765760006001600160a01b03168282815181106119c457fe5b6020026020010151600001516001600160a01b03161415611a2c576040805162461bcd60e51b815260206004820152601b60248201527f526563697069656e742073686f756c642062652070726573656e740000000000604482015290519081900360640190fd5b818181518110611a3857fe5b6020026020010151602001516bffffffffffffffffffffffff1660001415611aa7576040805162461bcd60e51b815260206004820152601c60248201527f4665652076616c75652073686f756c6420626520706f73697469766500000000604482015290519081900360640190fd5b60008381526101fa602052604090208251839083908110611ac457fe5b60209081029190910181015182546001818101855560009485529383902082519101805492909301516bffffffffffffffffffffffff1674010000000000000000000000000000000000000000026001600160a01b039182167fffffffffffffffffffffffff00000000000000000000000000000000000000009093169290921716179055016119a4565b60008281526101fb60205260408120905b8251811015611c015781838281518110611b7657fe5b60209081029190910181015182546001818101855560009485529383902082519101805492909301516bffffffffffffffffffffffff1674010000000000000000000000000000000000000000026001600160a01b039182167fffffffffffffffffffffffff0000000000000000000000000000000000000000909316929092171617905501611b60565b507f841ffb90d4cabdd1f16034f3fa831d79060febbb8167bdd54a49269365bdf78f8383604051611c33929190614757565b60405180910390a1505050565b600082815261012e602090815260409091208251611c6092840190613ae8565b50817f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b611c8c84611672565b6040805160208082528351818301528351919283929083019185019080838360005b83811015611cc6578181015183820152602001611cae565b50505050905090810190601f168015611cf35780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b61193184848484613434565b6001600160a01b038216600081815260c96020908152604091829020805460ff1916851515908117909155825190815291517f270dbb8ba4292910ae92862466486be25c355c837270a3d8824b36a8bc7c653b9281900390910190a25050565b60008184841115611dff5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611dc4578181015183820152602001611dac565b50505050905090810190601f168015611df15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156112ff576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b611e73846001600160a01b031661349f565b15610b1d57836001600160a01b031663bc197c8187878686866040518663ffffffff1660e01b815260040180866001600160a01b03168152602001856001600160a01b03168152602001806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b83811015611f01578181015183820152602001611ee9565b50505050905001848103835286818151815260200191508051906020019060200280838360005b83811015611f40578181015183820152602001611f28565b50505050905001848103825285818151815260200191508051906020019080838360005b83811015611f7c578181015183820152602001611f64565b50505050905090810190601f168015611fa95780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b158015611fce57600080fd5b505af1925050508015611ff357506040513d6020811015611fee57600080fd5b505160015b61208857611fff6147c6565b8061200a5750612051565b60405162461bcd60e51b8152602060048201818152835160248401528351849391928392604401919085019080838360008315611dc4578181015183820152602001611dac565b60405162461bcd60e51b815260040180806020018281038252603481526020018061489f6034913960400191505060405180910390fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146121085760405162461bcd60e51b81526004018080602001828103825260288152602001806148d36028913960400191505060405180910390fd5b50505050505050565b80516107a59061012f906020840190613ae8565b60006121303061349f565b15905090565b600054610100900460ff168061214f575061214f612125565b8061215d575060005460ff16155b6121985760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156121c3576000805460ff1961ff0019909116610100171660011790555b60006121cd6118af565b603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610c8e576000805461ff001916905550565b600054610100900460ff16806122605750612260612125565b8061226e575060005460ff16155b6122a95760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156122d4576000805460ff1961ff0019909116610100171660011790555b6122fd7f6db15a0f000000000000000000000000000000000000000000000000000000006134a5565b8015610c8e576000805461ff001916905550565b600054610100900460ff168061232a575061232a612125565b80612338575060005460ff16155b6123735760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff1615801561239e576000805460ff1961ff0019909116610100171660011790555b6122fd7f01ffc9a7000000000000000000000000000000000000000000000000000000006134a5565b600054610100900460ff16806123e057506123e0612125565b806123ee575060005460ff16155b6124295760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156122fd576000805460ff1961ff0019909116610100171660011790558015610c8e576000805461ff001916905550565b600054610100900460ff16806124805750612480612125565b8061248e575060005460ff16155b6124c95760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156124f4576000805460ff1961ff0019909116610100171660011790555b6122fd6040518060400160405280600881526020017f4d696e74313135350000000000000000000000000000000000000000000000008152506040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250613559565b600054610100900460ff16806125815750612581612125565b8061258f575060005460ff16155b6125ca5760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156125f5576000805460ff1961ff0019909116610100171660011790555b6125fe8261361b565b6126277fd9b67a26000000000000000000000000000000000000000000000000000000006134a5565b6126507f0e89341c000000000000000000000000000000000000000000000000000000006134a5565b80156107a5576000805461ff00191690555050565b600054610100900460ff168061267e575061267e612125565b8061268c575060005460ff16155b6126c75760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156126f2576000805460ff1961ff0019909116610100171660011790555b815161270690610230906020850190613ae8565b506126507fe8a3d485000000000000000000000000000000000000000000000000000000006134a5565b600054610100900460ff16806127495750612749612125565b80612757575060005460ff16155b6127925760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156127bd576000805460ff1961ff0019909116610100171660011790555b6122fd7f44c74bcc000000000000000000000000000000000000000000000000000000006134a5565b600054610100900460ff16806127ff57506127ff612125565b8061280d575060005460ff16155b6128485760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff16158015612873576000805460ff1961ff0019909116610100171660011790555b825161288790610262906020860190613ae8565b50815161289c90610263906020850190613ae8565b508015610e76576000805461ff0019169055505050565b6001600160a01b0383166128f85760405162461bcd60e51b8152600401808060200182810382526023815260200180614a626023913960400191505060405180910390fd5b80518251146129385760405162461bcd60e51b8152600401808060200182810382526028815260200180614b016028913960400191505060405180910390fd5b60006129426118af565b905061296281856000868660405180602001604052806000815250610b1d565b60005b8351811015612a40576129f783828151811061297d57fe5b602002602001015160405180606001604052806024815260200161494c60249139609760008886815181106129ae57fe5b602002602001015181526020019081526020016000206000896001600160a01b03166001600160a01b0316815260200190815260200160002054611d709092919063ffffffff16565b60976000868481518110612a0757fe5b602090810291909101810151825281810192909252604090810160009081206001600160a01b038a168252909252902055600101612965565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015612ac7578181015183820152602001612aaf565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015612b06578181015183820152602001612aee565b5050505090500194505050505060405180910390a450505050565b6001600160a01b038116600090815260c9602052604081205460ff16806112ff57506112ff838361362e565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612b8157fe5b602090810291909101015292915050565b612ba4846001600160a01b031661349f565b15610b1d57836001600160a01b031663f23a6e6187878686866040518663ffffffff1660e01b815260040180866001600160a01b03168152602001856001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612c33578181015183820152602001612c1b565b50505050905090810190601f168015612c605780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b158015612c8357600080fd5b505af1925050508015612ca857506040513d6020811015612ca357600080fd5b505160015b612cb457611fff6147c6565b7fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146121085760405162461bcd60e51b81526004018080602001828103825260288152602001806148d36028913960400191505060405180910390fd5b6001600160a01b038316612d795760405162461bcd60e51b8152600401808060200182810382526023815260200180614a626023913960400191505060405180910390fd5b6000612d836118af565b9050612db381856000612d9587612b4d565b612d9e87612b4d565b60405180602001604052806000815250610b1d565b612dfa8260405180606001604052806024815260200161494c6024913960008681526097602090815260408083206001600160a01b038b1684529091529020549190611d70565b60008481526097602090815260408083206001600160a01b03808a16808652918452828520959095558151888152928301879052815193949093908616927fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6292908290030190a450505050565b606081612ea8575060408051808201909152600181527f30000000000000000000000000000000000000000000000000000000000000006020820152610488565b8160005b8115612ec057600101600a82049150612eac565b60008167ffffffffffffffff81118015612ed957600080fd5b506040519080825280601f01601f191660200182016040528015612f04576020820181803683370190505b50859350905060001982015b8315612f6d57600a840660300160f81b82828060019003935081518110612f3357fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a84049350612f10565b50949350505050565b60008082608001515167ffffffffffffffff81118015612f9557600080fd5b50604051908082528060200260200182016040528015612fbf578160200160208202803683370190505b50905060005b83608001515181101561301157612ff284608001518281518110612fe557fe5b602002602001015161365c565b828281518110612ffe57fe5b6020908102919091010152600101612fc5565b50600083606001515167ffffffffffffffff8111801561303057600080fd5b5060405190808252806020026020018201604052801561305a578160200160208202803683370190505b50905060005b84606001515181101561309f5761308085606001518281518110612fe557fe5b82828151811061308c57fe5b6020908102919091010152600101613060565b507ffb988707ebb338694f318760b0fd5cfe756d00a2ade251fda110b80c336a3c7f846000015185604001518660200151805190602001208460405160200180828051906020019060200280838360005b838110156131085781810151838201526020016130f0565b50505050905001915050604051602081830303815290604052805190602001208660405160200180828051906020019060200280838360005b83811015613159578181015183820152602001613141565b50505050905001915050604051602081830303815290604052805190602001206040516020018087815260200186815260200185815260200184815260200183815260200182815260200196505050505050506040516020818303038152906040528051906020012092505050919050565b60006131d6836136ce565b90506131ea846001600160a01b031661349f565b1561339457604080517f1626ba7e00000000000000000000000000000000000000000000000000000000808252600482018481526024830193845285516044840152855191936001600160a01b03891693631626ba7e938793899390929091606490910190602085019080838360005b8381101561327257818101518382015260200161325a565b50505050905090810190601f16801561329f5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b1580156132bd57600080fd5b505afa1580156132d1573d6000803e3d6000fd5b505050506040513d60208110156132e757600080fd5b505160408051808201909152601c81527f7369676e617475726520766572696669636174696f6e206572726f72000000006020820152917fffffffff000000000000000000000000000000000000000000000000000000009091161461338e5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611dc4578181015183820152602001611dac565b50611931565b6001600160a01b0384166133a88284613735565b6001600160a01b0316146040518060400160405280601c81526020017f7369676e617475726520766572696669636174696f6e206572726f7200000000815250906106f55760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611dc4578181015183820152602001611dac565b60008381526101fd602052604081205461344f908490611e07565b60008581526101fc60205260409020549091508111156134815760405162461bcd60e51b815260040161058b906146e0565b60008481526101fd602052604090208190556106f5858585856137b5565b3b151590565b7fffffffff00000000000000000000000000000000000000000000000000000000808216141561351c576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152606560205260409020805460ff19166001179055565b600054610100900460ff16806135725750613572612125565b80613580575060005460ff16155b6135bb5760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156135e6576000805460ff1961ff0019909116610100171660011790555b825160208085019190912083519184019190912061016291909155610163558015610e76576000805461ff0019169055505050565b80516107a5906099906020840190613ae8565b6001600160a01b03918216600090815260986020908152604080832093909416825291909152205460ff1690565b8051602091820151604080517f397e04204c1e1a60ee8724b71f8244e10ab5f2e9009854d80f602bda21b59ebb818601526001600160a01b03909316838201526bffffffffffffffffffffffff9091166060808401919091528151808403909101815260809092019052805191012090565b60006136d86138b6565b8260405160200180807f190100000000000000000000000000000000000000000000000000000000000081525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b6000815160411461378d576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a6137ab868285856138f6565b9695505050505050565b6001600160a01b0384166137fa5760405162461bcd60e51b8152600401808060200182810382526021815260200180614b296021913960400191505060405180910390fd5b60006138046118af565b9050613816816000876113cf88612b4d565b60008481526097602090815260408083206001600160a01b03891684529091529020546138439084611e07565b60008581526097602090815260408083206001600160a01b03808b16808652918452828520959095558151898152928301889052815190948616927fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6292908290030190a46106f581600087878787612b92565b60006138f17f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6138e4613a74565b6138ec613a7b565b613a82565b905090565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08211156139575760405162461bcd60e51b81526004018080602001828103825260228152602001806149996022913960400191505060405180910390fd5b8360ff16601b148061396c57508360ff16601c145b6139a75760405162461bcd60e51b8152600401808060200182810382526022815260200180614a406022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015613a03573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613a6b576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6101625490565b6101635490565b6000838383613a8f613ae4565b3060405160200180868152602001858152602001848152602001838152602001826001600160a01b03168152602001955050505050506040516020818303038152906040528051906020012090509392505050565b4690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282613b1e5760008555613b64565b82601f10613b3757805160ff1916838001178555613b64565b82800160010185558215613b64579182015b82811115613b64578251825591602001919060010190613b49565b50613b70929150613b74565b5090565b5b80821115613b705760008155600101613b75565b600082601f830112613b99578081fd5b81356020613bae613ba9836147a2565b61477e565b82815281810190858301855b85811015613be357613bd1898684358b0101613d0b565b84529284019290840190600101613bba565b5090979650505050505050565b600082601f830112613c00578081fd5b81356020613c10613ba9836147a2565b82815281810190858301604080860288018501891015613c2e578687fd5b865b86811015613ca35781838b031215613c46578788fd5b815182810181811067ffffffffffffffff82111715613c6157fe5b83528335613c6e81614889565b8152838701356bffffffffffffffffffffffff81168114613c8d57898afd5b8188015285529385019391810191600101613c30565b509198975050505050505050565b600082601f830112613cc1578081fd5b81356020613cd1613ba9836147a2565b8281528181019085830183850287018401881015613ced578586fd5b855b85811015613be357813584529284019290840190600101613cef565b600082601f830112613d1b578081fd5b813567ffffffffffffffff811115613d2f57fe5b613d426020601f19601f8401160161477e565b818152846020838601011115613d56578283fd5b816020850160208301379081016020019190915292915050565b600060c08284031215613d81578081fd5b613d8b60c061477e565b905081358152602082013567ffffffffffffffff80821115613dac57600080fd5b613db885838601613d0b565b6020840152604084013560408401526060840135915080821115613ddb57600080fd5b613de785838601613bf0565b60608401526080840135915080821115613e0057600080fd5b613e0c85838601613bf0565b608084015260a0840135915080821115613e2557600080fd5b50613e3284828501613b89565b60a08301525092915050565b600060208284031215613e4f578081fd5b81356112ff81614889565b60008060408385031215613e6c578081fd5b8235613e7781614889565b91506020830135613e8781614889565b809150509250929050565b600080600080600060a08688031215613ea9578081fd5b8535613eb481614889565b94506020860135613ec481614889565b9350604086013567ffffffffffffffff80821115613ee0578283fd5b613eec89838a01613cb1565b94506060880135915080821115613f01578283fd5b613f0d89838a01613cb1565b93506080880135915080821115613f22578283fd5b50613f2f88828901613d0b565b9150509295509295909350565b600080600080600060a08688031215613f53578283fd5b8535613f5e81614889565b94506020860135613f6e81614889565b93506040860135925060608601359150608086013567ffffffffffffffff811115613f97578182fd5b613f2f88828901613d0b565b600080600060608486031215613fb7578081fd5b8335613fc281614889565b9250602084013567ffffffffffffffff80821115613fde578283fd5b613fea87838801613cb1565b93506040860135915080821115613fff578283fd5b5061400c86828701613cb1565b9150509250925092565b60008060408385031215614028578182fd5b823561403381614889565b915060208301358015158114613e87578182fd5b60008060408385031215614059578182fd5b823561406481614889565b946020939093013593505050565b600080600060608486031215614086578081fd5b833561409181614889565b95602085013595506040909401359392505050565b600080604083850312156140b8578182fd5b823567ffffffffffffffff808211156140cf578384fd5b818501915085601f8301126140e2578384fd5b813560206140f2613ba9836147a2565b82815281810190858301838502870184018b101561410e578889fd5b8896505b8487101561413957803561412581614889565b835260019690960195918301918301614112565b509650508601359250508082111561414f578283fd5b5061415c85828601613cb1565b9150509250929050565b600060208284031215614177578081fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146112ff578182fd5b6000602082840312156141b7578081fd5b813567ffffffffffffffff8111156141cd578182fd5b6141d984828501613d0b565b949350505050565b600080600080608085870312156141f6578182fd5b843567ffffffffffffffff8082111561420d578384fd5b61421988838901613d0b565b9550602087013591508082111561422e578384fd5b61423a88838901613d0b565b9450604087013591508082111561424f578384fd5b61425b88838901613d0b565b93506060870135915080821115614270578283fd5b5061427d87828801613d0b565b91505092959194509250565b60006020828403121561429a578081fd5b813567ffffffffffffffff8111156142b0578182fd5b6141d984828501613d70565b6000806000606084860312156142d0578081fd5b833567ffffffffffffffff8111156142e6578182fd5b6142f286828701613d70565b935050602084013561430381614889565b929592945050506040919091013590565b600060208284031215614325578081fd5b5035919050565b6000806040838503121561433e578182fd5b82359150602083013567ffffffffffffffff81111561435b578182fd5b61415c85828601613d0b565b60008060408385031215614379578182fd5b50508035926020909101359150565b6000815180845260208085019450808401835b838110156143d957815180516001600160a01b031688528301516bffffffffffffffffffffffff16838801526040909601959082019060010161439b565b509495945050505050565b60008151808452815b81811015614409576020818501810151868301820152016143ed565b8181111561441a5782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b039290921682526bffffffffffffffffffffffff16602082015260400190565b60006001600160a01b03841682526020604081840152835160408401528084015160c060608501526144a06101008501826143e4565b90506040850151608085015260608501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0808684030160a08701526144e68383614388565b925060808701519150808684030160c08701526145038383614388565b60a088015187820390920160e0880152815180825290935090840191508383019084810284018501865b8281101561455b57601f198683030184526145498286516143e4565b9487019493870193915060010161452d565b509998505050505050505050565b6000602082526112ff6020830184614388565b6020808252825182820181905260009190848201906040850190845b818110156145b457835183529284019291840191600101614598565b50909695505050505050565b901515815260200190565b6000602082526112ff60208301846143e4565b60208082526010908201527f737570706c7920696e636f727265637400000000000000000000000000000000604082015260600190565b60208082526011908201527f746f6b656e496420696e636f7272656374000000000000000000000000000000604082015260600190565b60208082526010908201527f616d6f756e7420696e636f727265637400000000000000000000000000000000604082015260600190565b60208082526028908201527f455243313135353a207472616e736665722063616c6c6572206973206e6f742060408201527f617070726f766564000000000000000000000000000000000000000000000000606082015260800190565b60208082526010908201527f6d6f7265207468616e20737570706c7900000000000000000000000000000000604082015260600190565b60208082526011908201527f7572692073686f756c6420626520736574000000000000000000000000000000604082015260600190565b90815260200190565b6000838252604060208301526141d96040830184614388565b918252602082015260400190565b60405181810167ffffffffffffffff8111828210171561479a57fe5b604052919050565b600067ffffffffffffffff8211156147b657fe5b5060209081020190565b60e01c90565b600060443d10156147d657610f10565b600481823e6308c379a06147ea82516147c0565b146147f457610f10565b6040517ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3d016004823e80513d67ffffffffffffffff81602484011181841117156148425750505050610f10565b8284019250825191508082111561485c5750505050610f10565b503d8301602082840101111561487457505050610f10565b601f01601f1916810160200160405291505090565b6001600160a01b0381168114610c8e57600080fdfe455243313135353a207472616e7366657220746f206e6f6e2045524331313535526563656976657220696d706c656d656e746572455243313135353a204552433131353552656365697665722072656a656374656420746f6b656e73455243313135353a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373455243313135353a206275726e20616d6f756e7420657863656564732062616c616e6365455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656445434453413a20696e76616c6964207369676e6174757265202773272076616c7565455243313135353a207472616e7366657220746f20746865207a65726f2061646472657373455243313135353a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c7565455243313135353a206275726e2066726f6d20746865207a65726f2061646472657373455243313135353a20696e73756666696369656e742062616c616e636520666f72207472616e73666572455243313135353a2073657474696e6720617070726f76616c2073746174757320666f722073656c66455243313135353a206163636f756e747320616e6420696473206c656e677468206d69736d61746368455243313135353a2069647320616e6420616d6f756e7473206c656e677468206d69736d61746368455243313135353a206d696e7420746f20746865207a65726f2061646472657373a2646970667358221220361db8a317b0d7002256002edcf3cbc3ac33bcb853f79c07856557d431aed57d64736f6c63430007060033

Deployed ByteCode

0x608060405234801561001057600080fd5b50600436106101b85760003560e01c80636b20c454116100f9578063a22cb46511610097578063e985e9c511610071578063e985e9c514610397578063f242432a146103aa578063f2fde38b146103bd578063f5298aca146103d0576101b8565b8063a22cb46514610369578063bb3bafd61461037c578063e8a3d4851461038f576101b8565b8063891be974116100d3578063891be974146103195780638da5cb5b1461033957806395d89b411461034e57806398d0b4fb14610356576101b8565b80636b20c454146102f65780636c0360eb14610309578063715018a614610311576101b8565b8063162094c4116101665780634e1273f4116101405780634e1273f41461028f57806355f804b3146102af5780635ee1cec5146102c25780636308f1cd146102d5576101b8565b8063162094c41461025657806318054c37146102695780632eb2c2d61461027c576101b8565b80630e89341c116101975780630e89341c1461021b5780630eaead671461022e57806310c0bc0714610243576101b8565b8062fdd58e146101bd57806301ffc9a7146101e657806306fdde0314610206575b600080fd5b6101d06101cb366004614047565b6103e3565b6040516101dd919061474e565b60405180910390f35b6101f96101f4366004614166565b610452565b6040516101dd91906145c0565b61020e61048d565b6040516101dd91906145cb565b61020e610229366004614314565b61051c565b61024161023c3660046142bc565b61052d565b005b61020e610251366004614289565b6106fc565b61024161026436600461432c565b610727565b610241610277366004614016565b6107a9565b61024161028a366004613e92565b610827565b6102a261029d3660046140a6565b610b25565b6040516101dd919061457c565b6102416102bd3660046141a6565b610c11565b6102416102d03660046141e1565b610c91565b6102e86102e3366004614367565b610da2565b6040516101dd929190614443565b610241610304366004613fa3565b610e02565b61020e610e7b565b610241610f13565b61032c610327366004614314565b610fe9565b6040516101dd9190614569565b61034161108f565b6040516101dd919061442f565b61020e61109e565b6102e8610364366004614367565b6110fa565b610241610377366004614016565b611117565b61032c61038a366004614314565b611206565b61020e611297565b6101f96103a5366004613e5a565b6112f3565b6102416103b8366004613f3c565b611306565b6102416103cb366004613e3e565b6114d1565b6102416103de366004614072565b6115fe565b60006001600160a01b03831661042a5760405162461bcd60e51b815260040180806020018281038252602b8152602001806148fb602b913960400191505060405180910390fd5b5060009081526097602090815260408083206001600160a01b03949094168352929052205490565b7fffffffff00000000000000000000000000000000000000000000000000000000811660009081526065602052604090205460ff165b919050565b610262805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105145780601f106104e957610100808354040283529160200191610514565b820191906000526020600020905b8154815290600101906020018083116104f757829003601f168201915b505050505081565b606061052782611672565b92915050565b825160601c600061053c6118af565b9050846060015160008151811061054f57fe5b6020026020010151600001516001600160a01b0316826001600160a01b0316146105945760405162461bcd60e51b815260040161058b90614615565b60405180910390fd5b8460a0015151856060015151146105aa57600080fd5b806001600160a01b0316826001600160a01b031614806105cf57506105cf82826112f3565b6105eb5760405162461bcd60e51b815260040161058b90614683565b600085604001511161060f5760405162461bcd60e51b815260040161058b906145de565b6000831161062f5760405162461bcd60e51b815260040161058b9061464c565b6000856020015151116106545760405162461bcd60e51b815260040161058b90614717565b845160009081526101fc60205260409020546106d65760005b85606001515181101561068d576106858287836118b3565b60010161066d565b506106a085600001518660400151611937565b6106b2856000015186608001516119a1565b6106c485600001518660600151611b4f565b6106d685600001518660200151611c40565b6106f58486600001518560405180602001604052806000815250611d04565b5050505050565b6060308260405160200161071192919061446a565b6040516020818303038152906040529050919050565b61072f6118af565b6001600160a01b031661074061108f565b6001600160a01b03161461079b576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6107a58282611c40565b5050565b6107b16118af565b6001600160a01b03166107c261108f565b6001600160a01b03161461081d576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6107a58282611d10565b81518351146108675760405162461bcd60e51b8152600401808060200182810382526028815260200180614b016028913960400191505060405180910390fd5b6001600160a01b0384166108ac5760405162461bcd60e51b81526004018080602001828103825260258152602001806149bb6025913960400191505060405180910390fd5b6108b46118af565b6001600160a01b0316856001600160a01b031614806108da57506108da856103a56118af565b6109155760405162461bcd60e51b81526004018080602001828103825260328152602001806149e06032913960400191505060405180910390fd5b600061091f6118af565b905061092f818787878787610b1d565b60005b8451811015610a3557600085828151811061094957fe5b60200260200101519050600085838151811061096157fe5b602002602001015190506109ce816040518060600160405280602a8152602001614a85602a91396097600086815260200190815260200160002060008d6001600160a01b03166001600160a01b0316815260200190815260200160002054611d709092919063ffffffff16565b60008381526097602090815260408083206001600160a01b038e811685529252808320939093558a1681522054610a059082611e07565b60009283526097602090815260408085206001600160a01b038c1686529091529092209190915550600101610932565b50846001600160a01b0316866001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8787604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015610abb578181015183820152602001610aa3565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015610afa578181015183820152602001610ae2565b5050505090500194505050505060405180910390a4610b1d818787878787611e61565b505050505050565b60608151835114610b675760405162461bcd60e51b8152600401808060200182810382526029815260200180614ad86029913960400191505060405180910390fd5b6000835167ffffffffffffffff81118015610b8157600080fd5b50604051908082528060200260200182016040528015610bab578160200160208202803683370190505b50905060005b8451811015610c0957610bea858281518110610bc957fe5b6020026020010151858381518110610bdd57fe5b60200260200101516103e3565b828281518110610bf657fe5b6020908102919091010152600101610bb1565b509392505050565b610c196118af565b6001600160a01b0316610c2a61108f565b6001600160a01b031614610c85576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b610c8e81612111565b50565b600054610100900460ff1680610caa5750610caa612125565b80610cb8575060005460ff16155b610cf35760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff16158015610d1e576000805460ff1961ff0019909116610100171660011790555b610d26612136565b610d2e612247565b610d36612311565b610d3e6123c7565b610d46612467565b610d5e60405180602001604052806000815250612568565b610d6782612665565b610d6f6123c7565b610d77612730565b610d8185856127e6565b610d8a83612111565b80156106f5576000805461ff00191690555050505050565b6101fa6020528160005260406000208181548110610dbf57600080fd5b6000918252602090912001546001600160a01b03811692507401000000000000000000000000000000000000000090046bffffffffffffffffffffffff16905082565b610e0a6118af565b6001600160a01b0316836001600160a01b03161480610e305750610e30836103a56118af565b610e6b5760405162461bcd60e51b81526004018080602001828103825260298152602001806149706029913960400191505060405180910390fd5b610e768383836128b3565b505050565b61012f8054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610f085780601f10610edd57610100808354040283529160200191610f08565b820191906000526020600020905b815481529060010190602001808311610eeb57829003601f168201915b505050505090505b90565b610f1b6118af565b6001600160a01b0316610f2c61108f565b6001600160a01b031614610f87576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6033546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055565b60606101fb6000838152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561108457600084815260209081902060408051808201909152908401546001600160a01b03811682527401000000000000000000000000000000000000000090046bffffffffffffffffffffffff168183015282526001909201910161101f565b505050509050919050565b6033546001600160a01b031690565b610263805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105145780601f106104e957610100808354040283529160200191610514565b6101fb6020528160005260406000208181548110610dbf57600080fd5b816001600160a01b03166111296118af565b6001600160a01b0316141561116f5760405162461bcd60e51b8152600401808060200182810382526029815260200180614aaf6029913960400191505060405180910390fd5b806098600061117c6118af565b6001600160a01b03908116825260208083019390935260409182016000908120918716808252919093529120805460ff1916921515929092179091556111c06118af565b6001600160a01b03167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c318360405180821515815260200191505060405180910390a35050565b60008181526101fa6020908152604080832080548251818502810185019093528083526060949293919290918401821561108457600084815260209081902060408051808201909152908401546001600160a01b03811682527401000000000000000000000000000000000000000090046bffffffffffffffffffffffff168183015282526001909201910161101f565b610230805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105145780601f106104e957610100808354040283529160200191610514565b60006112ff8383612b21565b9392505050565b6001600160a01b03841661134b5760405162461bcd60e51b81526004018080602001828103825260258152602001806149bb6025913960400191505060405180910390fd5b6113536118af565b6001600160a01b0316856001600160a01b031614806113795750611379856103a56118af565b6113b45760405162461bcd60e51b81526004018080602001828103825260298152602001806149706029913960400191505060405180910390fd5b60006113be6118af565b90506113de8187876113cf88612b4d565b6113d888612b4d565b87610b1d565b611425836040518060600160405280602a8152602001614a85602a913960008781526097602090815260408083206001600160a01b038d1684529091529020549190611d70565b60008581526097602090815260408083206001600160a01b038b8116855292528083209390935587168152205461145c9084611e07565b60008581526097602090815260408083206001600160a01b03808b168086529184529382902094909455805188815291820187905280518a8416938616927fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6292908290030190a4610b1d818787878787612b92565b6114d96118af565b6001600160a01b03166114ea61108f565b6001600160a01b031614611545576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03811661158a5760405162461bcd60e51b81526004018080602001828103825260268152602001806149266026913960400191505060405180910390fd5b6033546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b0392909216919091179055565b6116066118af565b6001600160a01b0316836001600160a01b0316148061162c575061162c836103a56118af565b6116675760405162461bcd60e51b81526004018080602001828103825260298152602001806149706029913960400191505060405180910390fd5b610e76838383612d34565b600081815261012e6020908152604080832080548251601f60026000196101006001861615020190931692909204918201859004850281018501909352808352606094938301828280156117075780601f106116dc57610100808354040283529160200191611707565b820191906000526020600020905b8154815290600101906020018083116116ea57829003601f168201915b505050505090506000611718610e7b565b905080516000141561172c57509050610488565b8151156117ed5780826040516020018083805190602001908083835b602083106117675780518252601f199092019160209182019101611748565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b602083106117af5780518252601f199092019160209182019101611790565b6001836020036101000a0380198251168184511680821785525050505050509050019250505060405160208183030381529060405292505050610488565b806117f785612e67565b6040516020018083805190602001908083835b602083106118295780518252601f19909201916020918201910161180a565b51815160209384036101000a600019018019909216911617905285519190930192850191508083835b602083106118715780518252601f199092019160209182019101611852565b6001836020036101000a0380198251168184511680821785525050505050509050019250505060405160208183030381529060405292505050919050565b3390565b6000826060015182815181106118c557fe5b6020026020010151600001519050806001600160a01b0316846001600160a01b03161461193157611931836060015183815181106118ff57fe5b60200260200101516000015161191485612f76565b8560a00151858151811061192457fe5b60200260200101516131cb565b50505050565b60008281526101fc60205260409020541561195157600080fd5b60008281526101fc602052604090819020829055517f5e2aa66efd74cce82b21852e317e5490d9ecc9e6bb953ae24d90851258cc2f5c906119959084908490614770565b60405180910390a15050565b60005b8151811015610e765760006001600160a01b03168282815181106119c457fe5b6020026020010151600001516001600160a01b03161415611a2c576040805162461bcd60e51b815260206004820152601b60248201527f526563697069656e742073686f756c642062652070726573656e740000000000604482015290519081900360640190fd5b818181518110611a3857fe5b6020026020010151602001516bffffffffffffffffffffffff1660001415611aa7576040805162461bcd60e51b815260206004820152601c60248201527f4665652076616c75652073686f756c6420626520706f73697469766500000000604482015290519081900360640190fd5b60008381526101fa602052604090208251839083908110611ac457fe5b60209081029190910181015182546001818101855560009485529383902082519101805492909301516bffffffffffffffffffffffff1674010000000000000000000000000000000000000000026001600160a01b039182167fffffffffffffffffffffffff00000000000000000000000000000000000000009093169290921716179055016119a4565b60008281526101fb60205260408120905b8251811015611c015781838281518110611b7657fe5b60209081029190910181015182546001818101855560009485529383902082519101805492909301516bffffffffffffffffffffffff1674010000000000000000000000000000000000000000026001600160a01b039182167fffffffffffffffffffffffff0000000000000000000000000000000000000000909316929092171617905501611b60565b507f841ffb90d4cabdd1f16034f3fa831d79060febbb8167bdd54a49269365bdf78f8383604051611c33929190614757565b60405180910390a1505050565b600082815261012e602090815260409091208251611c6092840190613ae8565b50817f6bb7ff708619ba0610cba295a58592e0451dee2622938c8755667688daf3529b611c8c84611672565b6040805160208082528351818301528351919283929083019185019080838360005b83811015611cc6578181015183820152602001611cae565b50505050905090810190601f168015611cf35780820380516001836020036101000a031916815260200191505b509250505060405180910390a25050565b61193184848484613434565b6001600160a01b038216600081815260c96020908152604091829020805460ff1916851515908117909155825190815291517f270dbb8ba4292910ae92862466486be25c355c837270a3d8824b36a8bc7c653b9281900390910190a25050565b60008184841115611dff5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611dc4578181015183820152602001611dac565b50505050905090810190601f168015611df15780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000828201838110156112ff576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b611e73846001600160a01b031661349f565b15610b1d57836001600160a01b031663bc197c8187878686866040518663ffffffff1660e01b815260040180866001600160a01b03168152602001856001600160a01b03168152602001806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b83811015611f01578181015183820152602001611ee9565b50505050905001848103835286818151815260200191508051906020019060200280838360005b83811015611f40578181015183820152602001611f28565b50505050905001848103825285818151815260200191508051906020019080838360005b83811015611f7c578181015183820152602001611f64565b50505050905090810190601f168015611fa95780820380516001836020036101000a031916815260200191505b5098505050505050505050602060405180830381600087803b158015611fce57600080fd5b505af1925050508015611ff357506040513d6020811015611fee57600080fd5b505160015b61208857611fff6147c6565b8061200a5750612051565b60405162461bcd60e51b8152602060048201818152835160248401528351849391928392604401919085019080838360008315611dc4578181015183820152602001611dac565b60405162461bcd60e51b815260040180806020018281038252603481526020018061489f6034913960400191505060405180910390fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167fbc197c8100000000000000000000000000000000000000000000000000000000146121085760405162461bcd60e51b81526004018080602001828103825260288152602001806148d36028913960400191505060405180910390fd5b50505050505050565b80516107a59061012f906020840190613ae8565b60006121303061349f565b15905090565b600054610100900460ff168061214f575061214f612125565b8061215d575060005460ff16155b6121985760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156121c3576000805460ff1961ff0019909116610100171660011790555b60006121cd6118af565b603380547fffffffffffffffffffffffff0000000000000000000000000000000000000000166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3508015610c8e576000805461ff001916905550565b600054610100900460ff16806122605750612260612125565b8061226e575060005460ff16155b6122a95760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156122d4576000805460ff1961ff0019909116610100171660011790555b6122fd7f6db15a0f000000000000000000000000000000000000000000000000000000006134a5565b8015610c8e576000805461ff001916905550565b600054610100900460ff168061232a575061232a612125565b80612338575060005460ff16155b6123735760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff1615801561239e576000805460ff1961ff0019909116610100171660011790555b6122fd7f01ffc9a7000000000000000000000000000000000000000000000000000000006134a5565b600054610100900460ff16806123e057506123e0612125565b806123ee575060005460ff16155b6124295760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156122fd576000805460ff1961ff0019909116610100171660011790558015610c8e576000805461ff001916905550565b600054610100900460ff16806124805750612480612125565b8061248e575060005460ff16155b6124c95760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156124f4576000805460ff1961ff0019909116610100171660011790555b6122fd6040518060400160405280600881526020017f4d696e74313135350000000000000000000000000000000000000000000000008152506040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250613559565b600054610100900460ff16806125815750612581612125565b8061258f575060005460ff16155b6125ca5760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156125f5576000805460ff1961ff0019909116610100171660011790555b6125fe8261361b565b6126277fd9b67a26000000000000000000000000000000000000000000000000000000006134a5565b6126507f0e89341c000000000000000000000000000000000000000000000000000000006134a5565b80156107a5576000805461ff00191690555050565b600054610100900460ff168061267e575061267e612125565b8061268c575060005460ff16155b6126c75760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156126f2576000805460ff1961ff0019909116610100171660011790555b815161270690610230906020850190613ae8565b506126507fe8a3d485000000000000000000000000000000000000000000000000000000006134a5565b600054610100900460ff16806127495750612749612125565b80612757575060005460ff16155b6127925760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156127bd576000805460ff1961ff0019909116610100171660011790555b6122fd7f44c74bcc000000000000000000000000000000000000000000000000000000006134a5565b600054610100900460ff16806127ff57506127ff612125565b8061280d575060005460ff16155b6128485760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff16158015612873576000805460ff1961ff0019909116610100171660011790555b825161288790610262906020860190613ae8565b50815161289c90610263906020850190613ae8565b508015610e76576000805461ff0019169055505050565b6001600160a01b0383166128f85760405162461bcd60e51b8152600401808060200182810382526023815260200180614a626023913960400191505060405180910390fd5b80518251146129385760405162461bcd60e51b8152600401808060200182810382526028815260200180614b016028913960400191505060405180910390fd5b60006129426118af565b905061296281856000868660405180602001604052806000815250610b1d565b60005b8351811015612a40576129f783828151811061297d57fe5b602002602001015160405180606001604052806024815260200161494c60249139609760008886815181106129ae57fe5b602002602001015181526020019081526020016000206000896001600160a01b03166001600160a01b0316815260200190815260200160002054611d709092919063ffffffff16565b60976000868481518110612a0757fe5b602090810291909101810151825281810192909252604090810160009081206001600160a01b038a168252909252902055600101612965565b5060006001600160a01b0316846001600160a01b0316826001600160a01b03167f4a39dc06d4c0dbc64b70af90fd698a233a518aa5d07e595d983b8c0526c8f7fb8686604051808060200180602001838103835285818151815260200191508051906020019060200280838360005b83811015612ac7578181015183820152602001612aaf565b50505050905001838103825284818151815260200191508051906020019060200280838360005b83811015612b06578181015183820152602001612aee565b5050505090500194505050505060405180910390a450505050565b6001600160a01b038116600090815260c9602052604081205460ff16806112ff57506112ff838361362e565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110612b8157fe5b602090810291909101015292915050565b612ba4846001600160a01b031661349f565b15610b1d57836001600160a01b031663f23a6e6187878686866040518663ffffffff1660e01b815260040180866001600160a01b03168152602001856001600160a01b0316815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015612c33578181015183820152602001612c1b565b50505050905090810190601f168015612c605780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b158015612c8357600080fd5b505af1925050508015612ca857506040513d6020811015612ca357600080fd5b505160015b612cb457611fff6147c6565b7fffffffff0000000000000000000000000000000000000000000000000000000081167ff23a6e6100000000000000000000000000000000000000000000000000000000146121085760405162461bcd60e51b81526004018080602001828103825260288152602001806148d36028913960400191505060405180910390fd5b6001600160a01b038316612d795760405162461bcd60e51b8152600401808060200182810382526023815260200180614a626023913960400191505060405180910390fd5b6000612d836118af565b9050612db381856000612d9587612b4d565b612d9e87612b4d565b60405180602001604052806000815250610b1d565b612dfa8260405180606001604052806024815260200161494c6024913960008681526097602090815260408083206001600160a01b038b1684529091529020549190611d70565b60008481526097602090815260408083206001600160a01b03808a16808652918452828520959095558151888152928301879052815193949093908616927fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6292908290030190a450505050565b606081612ea8575060408051808201909152600181527f30000000000000000000000000000000000000000000000000000000000000006020820152610488565b8160005b8115612ec057600101600a82049150612eac565b60008167ffffffffffffffff81118015612ed957600080fd5b506040519080825280601f01601f191660200182016040528015612f04576020820181803683370190505b50859350905060001982015b8315612f6d57600a840660300160f81b82828060019003935081518110612f3357fe5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a84049350612f10565b50949350505050565b60008082608001515167ffffffffffffffff81118015612f9557600080fd5b50604051908082528060200260200182016040528015612fbf578160200160208202803683370190505b50905060005b83608001515181101561301157612ff284608001518281518110612fe557fe5b602002602001015161365c565b828281518110612ffe57fe5b6020908102919091010152600101612fc5565b50600083606001515167ffffffffffffffff8111801561303057600080fd5b5060405190808252806020026020018201604052801561305a578160200160208202803683370190505b50905060005b84606001515181101561309f5761308085606001518281518110612fe557fe5b82828151811061308c57fe5b6020908102919091010152600101613060565b507ffb988707ebb338694f318760b0fd5cfe756d00a2ade251fda110b80c336a3c7f846000015185604001518660200151805190602001208460405160200180828051906020019060200280838360005b838110156131085781810151838201526020016130f0565b50505050905001915050604051602081830303815290604052805190602001208660405160200180828051906020019060200280838360005b83811015613159578181015183820152602001613141565b50505050905001915050604051602081830303815290604052805190602001206040516020018087815260200186815260200185815260200184815260200183815260200182815260200196505050505050506040516020818303038152906040528051906020012092505050919050565b60006131d6836136ce565b90506131ea846001600160a01b031661349f565b1561339457604080517f1626ba7e00000000000000000000000000000000000000000000000000000000808252600482018481526024830193845285516044840152855191936001600160a01b03891693631626ba7e938793899390929091606490910190602085019080838360005b8381101561327257818101518382015260200161325a565b50505050905090810190601f16801561329f5780820380516001836020036101000a031916815260200191505b50935050505060206040518083038186803b1580156132bd57600080fd5b505afa1580156132d1573d6000803e3d6000fd5b505050506040513d60208110156132e757600080fd5b505160408051808201909152601c81527f7369676e617475726520766572696669636174696f6e206572726f72000000006020820152917fffffffff000000000000000000000000000000000000000000000000000000009091161461338e5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611dc4578181015183820152602001611dac565b50611931565b6001600160a01b0384166133a88284613735565b6001600160a01b0316146040518060400160405280601c81526020017f7369676e617475726520766572696669636174696f6e206572726f7200000000815250906106f55760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611dc4578181015183820152602001611dac565b60008381526101fd602052604081205461344f908490611e07565b60008581526101fc60205260409020549091508111156134815760405162461bcd60e51b815260040161058b906146e0565b60008481526101fd602052604090208190556106f5858585856137b5565b3b151590565b7fffffffff00000000000000000000000000000000000000000000000000000000808216141561351c576040805162461bcd60e51b815260206004820152601c60248201527f4552433136353a20696e76616c696420696e7465726661636520696400000000604482015290519081900360640190fd5b7fffffffff00000000000000000000000000000000000000000000000000000000166000908152606560205260409020805460ff19166001179055565b600054610100900460ff16806135725750613572612125565b80613580575060005460ff16155b6135bb5760405162461bcd60e51b815260040180806020018281038252602e815260200180614a12602e913960400191505060405180910390fd5b600054610100900460ff161580156135e6576000805460ff1961ff0019909116610100171660011790555b825160208085019190912083519184019190912061016291909155610163558015610e76576000805461ff0019169055505050565b80516107a5906099906020840190613ae8565b6001600160a01b03918216600090815260986020908152604080832093909416825291909152205460ff1690565b8051602091820151604080517f397e04204c1e1a60ee8724b71f8244e10ab5f2e9009854d80f602bda21b59ebb818601526001600160a01b03909316838201526bffffffffffffffffffffffff9091166060808401919091528151808403909101815260809092019052805191012090565b60006136d86138b6565b8260405160200180807f190100000000000000000000000000000000000000000000000000000000000081525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b6000815160411461378d576040805162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015290519081900360640190fd5b60208201516040830151606084015160001a6137ab868285856138f6565b9695505050505050565b6001600160a01b0384166137fa5760405162461bcd60e51b8152600401808060200182810382526021815260200180614b296021913960400191505060405180910390fd5b60006138046118af565b9050613816816000876113cf88612b4d565b60008481526097602090815260408083206001600160a01b03891684529091529020546138439084611e07565b60008581526097602090815260408083206001600160a01b03808b16808652918452828520959095558151898152928301889052815190948616927fc3d58168c5ae7397731d063d5bbf3d657854427343f4c083240f7aacaa2d0f6292908290030190a46106f581600087878787612b92565b60006138f17f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6138e4613a74565b6138ec613a7b565b613a82565b905090565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08211156139575760405162461bcd60e51b81526004018080602001828103825260228152602001806149996022913960400191505060405180910390fd5b8360ff16601b148061396c57508360ff16601c145b6139a75760405162461bcd60e51b8152600401808060200182810382526022815260200180614a406022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015613a03573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116613a6b576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b6101625490565b6101635490565b6000838383613a8f613ae4565b3060405160200180868152602001858152602001848152602001838152602001826001600160a01b03168152602001955050505050506040516020818303038152906040528051906020012090509392505050565b4690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282613b1e5760008555613b64565b82601f10613b3757805160ff1916838001178555613b64565b82800160010185558215613b64579182015b82811115613b64578251825591602001919060010190613b49565b50613b70929150613b74565b5090565b5b80821115613b705760008155600101613b75565b600082601f830112613b99578081fd5b81356020613bae613ba9836147a2565b61477e565b82815281810190858301855b85811015613be357613bd1898684358b0101613d0b565b84529284019290840190600101613bba565b5090979650505050505050565b600082601f830112613c00578081fd5b81356020613c10613ba9836147a2565b82815281810190858301604080860288018501891015613c2e578687fd5b865b86811015613ca35781838b031215613c46578788fd5b815182810181811067ffffffffffffffff82111715613c6157fe5b83528335613c6e81614889565b8152838701356bffffffffffffffffffffffff81168114613c8d57898afd5b8188015285529385019391810191600101613c30565b509198975050505050505050565b600082601f830112613cc1578081fd5b81356020613cd1613ba9836147a2565b8281528181019085830183850287018401881015613ced578586fd5b855b85811015613be357813584529284019290840190600101613cef565b600082601f830112613d1b578081fd5b813567ffffffffffffffff811115613d2f57fe5b613d426020601f19601f8401160161477e565b818152846020838601011115613d56578283fd5b816020850160208301379081016020019190915292915050565b600060c08284031215613d81578081fd5b613d8b60c061477e565b905081358152602082013567ffffffffffffffff80821115613dac57600080fd5b613db885838601613d0b565b6020840152604084013560408401526060840135915080821115613ddb57600080fd5b613de785838601613bf0565b60608401526080840135915080821115613e0057600080fd5b613e0c85838601613bf0565b608084015260a0840135915080821115613e2557600080fd5b50613e3284828501613b89565b60a08301525092915050565b600060208284031215613e4f578081fd5b81356112ff81614889565b60008060408385031215613e6c578081fd5b8235613e7781614889565b91506020830135613e8781614889565b809150509250929050565b600080600080600060a08688031215613ea9578081fd5b8535613eb481614889565b94506020860135613ec481614889565b9350604086013567ffffffffffffffff80821115613ee0578283fd5b613eec89838a01613cb1565b94506060880135915080821115613f01578283fd5b613f0d89838a01613cb1565b93506080880135915080821115613f22578283fd5b50613f2f88828901613d0b565b9150509295509295909350565b600080600080600060a08688031215613f53578283fd5b8535613f5e81614889565b94506020860135613f6e81614889565b93506040860135925060608601359150608086013567ffffffffffffffff811115613f97578182fd5b613f2f88828901613d0b565b600080600060608486031215613fb7578081fd5b8335613fc281614889565b9250602084013567ffffffffffffffff80821115613fde578283fd5b613fea87838801613cb1565b93506040860135915080821115613fff578283fd5b5061400c86828701613cb1565b9150509250925092565b60008060408385031215614028578182fd5b823561403381614889565b915060208301358015158114613e87578182fd5b60008060408385031215614059578182fd5b823561406481614889565b946020939093013593505050565b600080600060608486031215614086578081fd5b833561409181614889565b95602085013595506040909401359392505050565b600080604083850312156140b8578182fd5b823567ffffffffffffffff808211156140cf578384fd5b818501915085601f8301126140e2578384fd5b813560206140f2613ba9836147a2565b82815281810190858301838502870184018b101561410e578889fd5b8896505b8487101561413957803561412581614889565b835260019690960195918301918301614112565b509650508601359250508082111561414f578283fd5b5061415c85828601613cb1565b9150509250929050565b600060208284031215614177578081fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146112ff578182fd5b6000602082840312156141b7578081fd5b813567ffffffffffffffff8111156141cd578182fd5b6141d984828501613d0b565b949350505050565b600080600080608085870312156141f6578182fd5b843567ffffffffffffffff8082111561420d578384fd5b61421988838901613d0b565b9550602087013591508082111561422e578384fd5b61423a88838901613d0b565b9450604087013591508082111561424f578384fd5b61425b88838901613d0b565b93506060870135915080821115614270578283fd5b5061427d87828801613d0b565b91505092959194509250565b60006020828403121561429a578081fd5b813567ffffffffffffffff8111156142b0578182fd5b6141d984828501613d70565b6000806000606084860312156142d0578081fd5b833567ffffffffffffffff8111156142e6578182fd5b6142f286828701613d70565b935050602084013561430381614889565b929592945050506040919091013590565b600060208284031215614325578081fd5b5035919050565b6000806040838503121561433e578182fd5b82359150602083013567ffffffffffffffff81111561435b578182fd5b61415c85828601613d0b565b60008060408385031215614379578182fd5b50508035926020909101359150565b6000815180845260208085019450808401835b838110156143d957815180516001600160a01b031688528301516bffffffffffffffffffffffff16838801526040909601959082019060010161439b565b509495945050505050565b60008151808452815b81811015614409576020818501810151868301820152016143ed565b8181111561441a5782602083870101525b50601f01601f19169290920160200192915050565b6001600160a01b0391909116815260200190565b6001600160a01b039290921682526bffffffffffffffffffffffff16602082015260400190565b60006001600160a01b03841682526020604081840152835160408401528084015160c060608501526144a06101008501826143e4565b90506040850151608085015260608501517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc0808684030160a08701526144e68383614388565b925060808701519150808684030160c08701526145038383614388565b60a088015187820390920160e0880152815180825290935090840191508383019084810284018501865b8281101561455b57601f198683030184526145498286516143e4565b9487019493870193915060010161452d565b509998505050505050505050565b6000602082526112ff6020830184614388565b6020808252825182820181905260009190848201906040850190845b818110156145b457835183529284019291840191600101614598565b50909695505050505050565b901515815260200190565b6000602082526112ff60208301846143e4565b60208082526010908201527f737570706c7920696e636f727265637400000000000000000000000000000000604082015260600190565b60208082526011908201527f746f6b656e496420696e636f7272656374000000000000000000000000000000604082015260600190565b60208082526010908201527f616d6f756e7420696e636f727265637400000000000000000000000000000000604082015260600190565b60208082526028908201527f455243313135353a207472616e736665722063616c6c6572206973206e6f742060408201527f617070726f766564000000000000000000000000000000000000000000000000606082015260800190565b60208082526010908201527f6d6f7265207468616e20737570706c7900000000000000000000000000000000604082015260600190565b60208082526011908201527f7572692073686f756c6420626520736574000000000000000000000000000000604082015260600190565b90815260200190565b6000838252604060208301526141d96040830184614388565b918252602082015260400190565b60405181810167ffffffffffffffff8111828210171561479a57fe5b604052919050565b600067ffffffffffffffff8211156147b657fe5b5060209081020190565b60e01c90565b600060443d10156147d657610f10565b600481823e6308c379a06147ea82516147c0565b146147f457610f10565b6040517ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3d016004823e80513d67ffffffffffffffff81602484011181841117156148425750505050610f10565b8284019250825191508082111561485c5750505050610f10565b503d8301602082840101111561487457505050610f10565b601f01601f1916810160200160405291505090565b6001600160a01b0381168114610c8e57600080fdfe455243313135353a207472616e7366657220746f206e6f6e2045524331313535526563656976657220696d706c656d656e746572455243313135353a204552433131353552656365697665722072656a656374656420746f6b656e73455243313135353a2062616c616e636520717565727920666f7220746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373455243313135353a206275726e20616d6f756e7420657863656564732062616c616e6365455243313135353a2063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f76656445434453413a20696e76616c6964207369676e6174757265202773272076616c7565455243313135353a207472616e7366657220746f20746865207a65726f2061646472657373455243313135353a207472616e736665722063616c6c6572206973206e6f74206f776e6572206e6f7220617070726f766564496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a656445434453413a20696e76616c6964207369676e6174757265202776272076616c7565455243313135353a206275726e2066726f6d20746865207a65726f2061646472657373455243313135353a20696e73756666696369656e742062616c616e636520666f72207472616e73666572455243313135353a2073657474696e6720617070726f76616c2073746174757320666f722073656c66455243313135353a206163636f756e747320616e6420696473206c656e677468206d69736d61746368455243313135353a2069647320616e6420616d6f756e7473206c656e677468206d69736d61746368455243313135353a206d696e7420746f20746865207a65726f2061646472657373a2646970667358221220361db8a317b0d7002256002edcf3cbc3ac33bcb853f79c07856557d431aed57d64736f6c63430007060033