wemix-logo
WEMIX3.0 Testnet Explorer

Contract

0x5920a42f1e0f00b0e3fa954ea868fdb6ca0498d2
Contract Name
N/A
Optimization Enabled
No
Compiler Version
N/A
EVM Version
N/A
License
N/A
Audited
No
Contract Security Audit
No contract security audit has been submitted
Submit Audit
Contract Creation Code
0x608060405234801561001057600080fd5b50600436106102d65760003560e01c8063715018a611610182578063c31c9c07116100e9578063e5975bdc116100a2578063f72b221b1161007c578063f72b221b146106af578063fae0b990146106c5578063fe35b9be146106d8578063fe87cb89146106eb57600080fd5b8063e5975bdc14610666578063f2fde38b14610679578063f62b5a711461068c57600080fd5b8063c31c9c07146105f1578063cb658f4b14610604578063d23d876c14610624578063d3088a851461062d578063d3d8257814610640578063d9caed121461065357600080fd5b80639d22ae8c1161013b5780639d22ae8c146105745780639e6ea26c14610587578063a07481541461059a578063abf73d4b146105ad578063ad49e1d2146105b6578063c2c8f2b4146105de57600080fd5b8063715018a6146105305780638225ea05146105385780638456cb591461054b57806385e3c1d4146105535780638da5cb5b1461055b57806393d857271461056c57600080fd5b80633f4ba83a11610241578063555014da116101fa5780635f5817e3116101d45780635f5817e3146104ca57806361ef5535146104df5780636526b04a1461050a5780636a6343041461051d57600080fd5b8063555014da1461049957806359ff52b2146104ac5780635c975abb146104bf57600080fd5b80633f4ba83a14610432578063411097091461043a578063412736571461044d578063417c53e21461046057806347968529146104735780635476bd721461048657600080fd5b8063123d224511610293578063123d22451461036f57806318728d74146103825780631f69565f14610395578063213416b7146103d95780632d55feaf146103fc5780633357a4391461040f57600080fd5b806303e8837c146102db57806303f52ac91461030157806305fdbd29146103165780630708c116146103295780631001bc201461033c5780631089caf61461034f575b600080fd5b6102ee6102e93660046151be565b6106f3565b6040519081526020015b60405180910390f35b61031461030f3660046151db565b61070e565b005b61031461032436600461522a565b61094f565b6103146103373660046151be565b610c01565b61031461034a36600461526c565b610d72565b61036261035d366004615285565b610dea565b6040516102f891906152f5565b61031461037d366004615285565b610f90565b610314610390366004615476565b6112e3565b6103a86103a33660046151be565b611397565b6040516102f8949392919093845260208401929092526001600160a01b031660408301521515606082015260800190565b6103ec6103e7366004615285565b61142a565b60405190151581526020016102f8565b61031461040a3660046151be565b61147e565b6103ec61041d36600461526c565b60136020526000908152604090205460ff1681565b6103146114a7565b6103146104483660046154ab565b6114d6565b61031461045b3660046151be565b61158c565b61031461046e3660046154fd565b611622565b6102ee61048136600461526c565b6118b1565b6103146104943660046154fd565b6118fc565b6103146104a736600461552b565b611bd5565b6103ec6104ba3660046151be565b612130565b60025460ff166103ec565b6104d261216c565b6040516102f89190615575565b6004546104f2906001600160a01b031681565b6040516001600160a01b0390911681526020016102f8565b6103146105183660046151be565b6122d1565b600a546104f2906001600160a01b031681565b610314612307565b6103146105463660046151be565b612319565b6103146123af565b6104d26123dc565b6000546001600160a01b03166104f2565b6102ee612518565b6103146105823660046154fd565b61252f565b61031461059536600461552b565b6125c0565b6103ec6105a83660046151be565b612b10565b6102ee600c5481565b6105c96105c4366004615588565b612b4b565b604080519283526020830191909152016102f8565b6009546104f2906001600160a01b031681565b6008546104f2906001600160a01b031681565b6102ee6106123660046151be565b600d6020526000908152604090205481565b6102ee600b5481565b61031461063b366004615285565b612b97565b6005546104f2906001600160a01b031681565b6103146106613660046151db565b6130d2565b6103146106743660046151be565b613159565b6103146106873660046151be565b613188565b6103ec61069a36600461526c565b60126020526000908152604090205460ff1681565b6106b76131fe565b6040516102f89291906155aa565b6103146106d3366004615285565b6133db565b6103146106e6366004615601565b613528565b6102ee61388e565b60006106fd613946565b610706826139a0565b90505b919050565b61071733612b10565b61073c5760405162461bcd60e51b81526004016107339061563c565b60405180910390fd5b6001600160a01b0383166107625760405162461bcd60e51b815260040161073390615681565b600081116107825760405162461bcd60e51b8152600401610733906156a5565b61078b82612130565b6107a75760405162461bcd60e51b8152600401610733906156cb565b6107b0826139be565b604001516107f25760405162461bcd60e51b815260206004820152600f60248201526e14958e881b9bdd081c995b5bdd9959608a1b6044820152606401610733565b6001600160a01b0382166000908152600d602052604090205481111561084a5760405162461bcd60e51b815260206004820152600d60248201526c14958e88139148185b5bdd5b9d609a1b6044820152606401610733565b6001600160a01b0382166000908152600d602052604090205461086e908290615709565b6001600160a01b0383166000818152600d6020526040902091909155610895908483613a78565b6001600160a01b0382166000908152601160205260408120546010805490919081106108c3576108c3615720565b60009182526020918290206040805160608101825260029390930290910180548084526001909101546001600160a01b0380821685870152600160a01b90910460ff161515848401529151908152919350858116928592918816917f71472e3700e64bacc943f6618d80213b5ace1d916013794357e49a625b9c8af5910160405180910390a450505050565b610957613adb565b6009546001600160a01b031633146109815760405162461bcd60e51b815260040161073390615736565b6001600160a01b0383166109a75760405162461bcd60e51b815260040161073390615681565b600082116109c75760405162461bcd60e51b8152600401610733906156a5565b60006109d284613b21565b60008181526013602052604090205490915060ff1615610a045760405162461bcd60e51b81526004016107339061575d565b600a546040516370a0823160e01b81526001600160a01b038681166004830152859216906370a0823190602401602060405180830381865afa158015610a4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a729190615787565b1015610aad5760405162461bcd60e51b815260206004820152600a60248201526914958e881391481c999d60b21b6044820152606401610733565b600a54604051636eb1769f60e11b815284916001600160a01b03169063dd62ed3e90610adf90889030906004016157a0565b602060405180830381865afa158015610afc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b209190615787565b1015610b3e5760405162461bcd60e51b8152600401610733906157ba565b600a54610b56906001600160a01b0316853086613b7e565b6000610b6061388e565b9050600080610b6f8684612b4b565b9092509050846000610b8b89878a848989898380808c81613bb6565b60008781526013602052604090819020805460ff1916600117905551909150889087906001600160a01b038c16907f5d083641cbe6d8b6afee2c0ecd68c3324f258cb46c1660f939cabb7e7087f55490610bee90899089908c908f908a906157e4565b60405180910390a4505050505050505050565b610c09613d29565b610c1233612b10565b610c2e5760405162461bcd60e51b81526004016107339061563c565b6001600160a01b0381163b610c555760405162461bcd60e51b815260040161073390615811565b610c5e81612130565b610c7a5760405162461bcd60e51b8152600401610733906156cb565b610c83816139be565b6040015115610cc85760405162461bcd60e51b815260206004820152601160248201527014958e881d1bdad95b881c995b5bdd9959607a1b6044820152606401610733565b6001600160a01b03811660009081526011602052604090205460108054600192908110610cf757610cf7615720565b906000526020600020906002020160010160146101000a81548160ff021916908315150217905550600c546001610d2e9190615835565b600c819055610d3b612518565b6040516001600160a01b038416907f2dafb6b3ca68e39aab31f658c709ef92b41f45b1992e3521fe0d776da97a292a90600090a450565b610d7b33612b10565b610d975760405162461bcd60e51b81526004016107339061563c565b60008111610db75760405162461bcd60e51b8152600401610733906156a5565b600b81905560405181907ffd4a947c9db766c8aa0642a728103d415c2d53264158c8c2a4c12bb9ea4af16c90600090a250565b610e4b6040518061016001604052806000815260200160608152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000151581526020016000151581525090565b6001600160a01b0383166000908152600f6020908152604080832085845290915290205460ff16610e8e5760405162461bcd60e51b8152600401610733906156cb565b6001600160a01b0383166000908152600e602090815260408083208584528252918290208251610160810184528154815260018201805485518186028101860190965280865291949293858101939290830182828015610f1757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610ef9575b505050918352505060028201546020820152600382015460408201526004820154606082015260058201546080820152600682015460a0820152600782015460c0820152600882015460e082015260099091015460ff808216151561010080850191909152909104161515610120909101529392505050565b6009546001600160a01b03163314610fba5760405162461bcd60e51b815260040161073390615736565b60008181526012602052604090205460ff1615610fe95760405162461bcd60e51b81526004016107339061575d565b6001600160a01b0382166000908152600f6020908152604080832084845290915290205460ff1661102c5760405162461bcd60e51b81526004016107339061584d565b6001600160a01b0382166000908152600e6020908152604080832084845282528083208151610160810183528154815260018201805484518187028101870190955280855291949293858401939092908301828280156110b557602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611097575b505050918352505060028201546020820152600382015460408201526004820154606082015260058201546080820152600682015460a0820152600782015460c0820152600882015460e082015260099091015460ff8082161515610100808501919091529091041615156101209091015261014081015190915061116f5760405162461bcd60e51b815260206004820152601060248201526f292b1d103a3cb832903334b9b9b4b7b760811b6044820152606401610733565b60005b8160200151518110156111d0576111be8483604001518460200151848151811061119e5761119e615720565b60200260200101516001600160a01b0316613a789092919063ffffffff16565b806111c88161587a565b915050611172565b506001600160a01b0383166000908152600e602090815260408083208584529091528120818155906112056001830182615111565b506000600282018190556003820181905560048201819055600582018190556006820181905560078201819055600882018190556009909101805461ffff191690556001600160a01b0384168152600f602090815260408083208584528252808320805460ff1990811690915560129092529091208054909116600117905561128d83613d72565b806000015182846001600160a01b03167fb5d1d8ce92c74f30abd19155b085bb40493d774208feb3f24b3bc23baf0bceee846040015185602001516040516112d6929190615895565b60405180910390a4505050565b6112eb613d29565b6112f433612b10565b6113105760405162461bcd60e51b81526004016107339061563c565b60008151116113535760405162461bcd60e51b815260206004820152600f60248201526e052563a20746f6b656e206c656e203608c1b6044820152606401610733565b60005b81518110156113935761138182828151811061137457611374615720565b6020026020010151610c01565b8061138b8161587a565b915050611356565b5050565b60008080806001600160a01b0385166113c25760405162461bcd60e51b815260040161073390615681565b6113cb85612130565b6113e75760405162461bcd60e51b8152600401610733906156cb565b60006113f2866139be565b80516001600160a01b039097166000908152600d60209081526040918290205490830151919092015197989197909650945092505050565b60006001600160a01b0383166114525760405162461bcd60e51b815260040161073390615681565b506001600160a01b03919091166000908152600f60209081526040808320938352929052205460ff1690565b611486613946565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6114b033612b10565b6114cc5760405162461bcd60e51b81526004016107339061563c565b6114d4613d92565b565b6114de613d29565b6114e733612b10565b6115035760405162461bcd60e51b81526004016107339061563c565b60008251116115465760405162461bcd60e51b815260206004820152600f60248201526e052563a20746f6b656e206c656e203608c1b6044820152606401610733565b60005b82518110156115875761157583828151811061156757611567615720565b6020026020010151836118fc565b8061157f8161587a565b915050611549565b505050565b61159533612b10565b6115b15760405162461bcd60e51b81526004016107339061563c565b6001600160a01b0381163b6115d85760405162461bcd60e51b815260040161073390615811565b600880546001600160a01b0319166001600160a01b0383169081179091556040517f4b051c4d6c1e587b5fe4228a821a942af1de3df779e4005ab5c7478b05d1108a90600090a250565b61162a613d29565b61163333612b10565b61164f5760405162461bcd60e51b81526004016107339061563c565b6001600160a01b0382161580159061166f57506001600160a01b03811615155b61168b5760405162461bcd60e51b815260040161073390615681565b61169482612130565b6116b05760405162461bcd60e51b8152600401610733906156cb565b6001600160a01b0382166000908152601160205260408120546010805490919081106116de576116de615720565b906000526020600020906002020190508060010160149054906101000a900460ff1661173e5760405162461bcd60e51b815260206004820152600f60248201526e14958e881b9bdd081c995b5bdd9959608a1b6044820152606401610733565b6001600160a01b0383166000908152600d6020526040902054600b541115611844576001600160a01b0383166000908152600d6020526040812054600b546117869190615709565b600b546001600160a01b0386166000818152600d602052604090819020929092559051636eb1769f60e11b8152919250829163dd62ed3e906117ce90879030906004016157a0565b602060405180830381865afa1580156117eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061180f9190615787565b101561182d5760405162461bcd60e51b8152600401610733906157ba565b6118426001600160a01b038516843084613b7e565b505b6001808201805460ff60a01b19169055600c546118619190615709565b600c5561186c612518565b826001600160a01b0316846001600160a01b03167f7156d0b8d9ed8d1117b97d76a15a304bad2749fc23251c2c7ed65a069895285060405160405180910390a4505050565b60008082116118d25760405162461bcd60e51b8152600401610733906156a5565b60006118dc61388e565b90506127106118eb84836158ae565b6118f591906158cd565b9392505050565b611904613d29565b61190d33612b10565b6119295760405162461bcd60e51b81526004016107339061563c565b6001600160a01b0382163b6119505760405162461bcd60e51b815260040161073390615811565b6001600160a01b0381166119975760405162461bcd60e51b815260206004820152600e60248201526d052563a20747265617375727920360941b6044820152606401610733565b6119a082612130565b156119da5760405162461bcd60e51b815260206004820152600a60248201526952563a2065786973747360b01b6044820152606401610733565b60006040518060600160405280611a55856001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381865afa158015611a28573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611a50919081019061591b565b613de4565b81526001600160a01b0380861660208084018290526000604094850181905260108054938252601183528582208490556001840181559052845160029092027f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae6728101929092558401517f1b6847dc741a1b0cd08d278845f9d819d87b734759afb55fe2de5cb82a9ae6739091018054938501511515600160a01b026001600160a81b03199094169190921617919091179055600b5490915015611bcd57600b546001600160a01b0384166000818152600d60205260409081902083905551636eb1769f60e11b815263dd62ed3e90611b5390869030906004016157a0565b602060405180830381865afa158015611b70573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b949190615787565b1015611bb25760405162461bcd60e51b8152600401610733906157ba565b600b54611bcd906001600160a01b0385169084903090613b7e565b61186c612518565b6009546001600160a01b03163314611bff5760405162461bcd60e51b815260040161073390615736565b60008381526012602052604090205460ff1615611c2e5760405162461bcd60e51b81526004016107339061575d565b6001600160a01b0384166000908152600f6020908152604080832086845290915290205460ff16611c715760405162461bcd60e51b81526004016107339061584d565b6001600160a01b0384166000908152600e602090815260408083208684528252808320815161016081018352815481526001820180548451818702810187019095528085529194929385840193909290830182828015611cfa57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611cdc575b505050918352505060028201546020820152600382015460408201526004820154606082015260058201546080820152600682015460a0820152600782015460c0820152600882015460e082015260099091015460ff808216151561010080850191909152909104161515610120909101528051909150611da95760405162461bcd60e51b8152602060048201526009602482015268052563a2072667420360bc1b6044820152606401610733565b80610140015115611dee5760405162461bcd60e51b815260206004820152600f60248201526e292b1d103a3cb83290333ab9b4b7b760891b6044820152606401610733565b6000848152601260209081526040808320805460ff191660019081179091556001600160a01b0389168452600e835281842088855290925282208281559190611e3990830182615111565b506000600282018190556003820181905560048201819055600582018190556006820181905560078201819055600882018190556009909101805461ffff191690556001600160a01b0386168152600f602090815260408083208784529091529020805460ff1916905581156120af578215611ec657600654611ec6906001600160a01b03168685613a78565b60005b816020015151811015611fe1576000826080015111611f185760405162461bcd60e51b815260206004820152600b60248201526a052563a20636c61696d20360ac1b6044820152606401610733565b8160800151600d600084602001518481518110611f3757611f37615720565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002054611f6a9190615709565b600d600084602001518481518110611f8457611f84615720565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002081905550611fcf8683608001518460200151848151811061119e5761119e615720565b80611fd98161587a565b915050611ec9565b508060800151600b54611ff49190615709565b600b55600a548151604051630852cd8d60e31b81526001600160a01b03909216916342966c689161202b9160040190815260200190565b6020604051808303816000875af115801561204a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206e91906159af565b6120aa5760405162461bcd60e51b815260206004820152600d60248201526c292b1d103330b4b610313ab93760991b6044820152606401610733565b6120cb565b8051600a546120cb916001600160a01b03909116908790613a78565b6120d485613d72565b806000015184866001600160a01b03167f253a498ec04a5b7e5f5be39b3683e03132208a648a9a4c4da248fa939aa92f6284608001518787876020015160405161212194939291906159cc565b60405180910390a45050505050565b60006001600160a01b038216158015906107065750816001600160a01b0316612158836139be565b602001516001600160a01b03161492915050565b6060612176612518565b67ffffffffffffffff81111561218e5761218e615397565b6040519080825280602002602001820160405280156121b7578160200160208202803683370190505b5090506000806010805480602002602001604051908101604052809291908181526020016000905b8282101561223b5760008481526020908190206040805160608101825260028602909201805483526001908101546001600160a01b03811684860152600160a01b900460ff1615159183019190915290835290920191016121df565b50505050905060005b6010548110156122cb57600082828151811061226257612262615720565b6020026020010151905080604001516122b857602081015185856122858161587a565b96508151811061229757612297615720565b60200260200101906001600160a01b031690816001600160a01b0316815250505b50806122c38161587a565b915050612244565b50505090565b6009546001600160a01b031633146122fb5760405162461bcd60e51b815260040161073390615736565b61230481613d72565b50565b61230f613946565b6114d46000613e01565b61232233612b10565b61233e5760405162461bcd60e51b81526004016107339061563c565b6001600160a01b0381163b6123655760405162461bcd60e51b815260040161073390615811565b600980546001600160a01b0319166001600160a01b0383169081179091556040517f86ae5700fd934df5ac5cc56673b3500042b0d3507601032f265a708622649da890600090a250565b6123b833612b10565b6123d45760405162461bcd60e51b81526004016107339061563c565b6114d4613e51565b606060006010805480602002602001604051908101604052809291908181526020016000905b8282101561245e5760008481526020908190206040805160608101825260028602909201805483526001908101546001600160a01b03811684860152600160a01b900460ff161515918301919091529083529092019101612402565b505082519293508291505067ffffffffffffffff81111561248157612481615397565b6040519080825280602002602001820160405280156124aa578160200160208202803683370190505b50925060005b818110156122cb5760008382815181106124cc576124cc615720565b6020026020010151905080602001518583815181106124ed576124ed615720565b6001600160a01b039092166020928302919091019091015250806125108161587a565b9150506124b0565b600c5460105460009161252a91615709565b905090565b61253833612b10565b6125545760405162461bcd60e51b81526004016107339061563c565b6001600160a01b0382163b1515801561257657506001600160a01b0381163b15155b6125925760405162461bcd60e51b815260040161073390615811565b600480546001600160a01b039384166001600160a01b03199182161790915560058054929093169116179055565b6009546001600160a01b031633146125ea5760405162461bcd60e51b815260040161073390615736565b60008381526012602052604090205460ff16156126195760405162461bcd60e51b81526004016107339061575d565b6001600160a01b03841661263f5760405162461bcd60e51b815260040161073390615681565b6001600160a01b0384166000908152600f6020908152604080832086845290915290205460ff166126825760405162461bcd60e51b81526004016107339061584d565b6001600160a01b0384166000908152600e60209081526040808320868452825280832081516101608101835281548152600182018054845181870281018701909552808552919492938584019390929083018282801561270b57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116126ed575b505050918352505060028201546020820152600382015460408201526004820154606082015260058201546080820152600682015460a0820152600782015460c0820152600882015460e082015260099091015460ff80821615156101008085019190915290910416151561012090910152610140810151909150156127c55760405162461bcd60e51b815260206004820152600f60248201526e292b1d103a3cb83290333ab9b4b7b760891b6044820152606401610733565b6000806000841561280f576127dd8460800151613e8e565b935090506127eb8682615835565b9150811561280a5760065461280a906001600160a01b03168984613a78565b61292c565b60005b84602001515181101561292a5760008560800151116128615760405162461bcd60e51b815260206004820152600b60248201526a052563a20636c61696d20360ac1b6044820152606401610733565b8460800151600d60008760200151848151811061288057612880615720565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020546128b39190615709565b600d6000876020015184815181106128cd576128cd615720565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055506129188986608001518760200151848151811061119e5761119e615720565b806129228161587a565b915050612812565b505b8360800151600b5461293e9190615709565b600b556001600160a01b0388166000908152600e602090815260408083208a84529091528120818155906129756001830182615111565b50600060028201819055600382018190556004808301829055600583018290556006830182905560078301829055600883018290556009909201805461ffff191690556001600160a01b038a81168252600f602090815260408084208c855290915291829020805460ff19169055600a5487519251630852cd8d60e31b81529384019290925216906342966c68906024016020604051808303816000875af1158015612a25573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a4991906159af565b612a855760405162461bcd60e51b815260206004820152600d60248201526c292b1d103330b4b610313ab93760991b6044820152606401610733565b6000878152601260205260409020805460ff19166001179055612aa788613d72565b836000015187896001600160a01b03167fbecd6cc773558078e76874ff7d7ff3ecef942110649a9676d905ce86c3061c088487878a608001518b60a001518d8d60200151604051612afe97969594939291906159f3565b60405180910390a45050505050505050565b6001600160a01b038116600090815260016020819052604082205460ff16151514806107065750506000546001600160a01b03163314919050565b60008080612b5984866158ae565b9050612710612b6a826101f46158ae565b612b7491906158cd565b9150612710612b838383615709565b612b8d91906158cd565b9250509250929050565b6009546001600160a01b03163314612bc15760405162461bcd60e51b815260040161073390615736565b81816001600160a01b038216612c085760405162461bcd60e51b815260206004820152600c60248201526b763a2075736572207a65726f60a01b6044820152606401610733565b80612c445760405162461bcd60e51b815260206004820152600c60248201526b763a2068617368207a65726f60a01b6044820152606401610733565b612c4d82613b21565b8114612c8c5760405162461bcd60e51b815260206004820152600e60248201526d763a206661696c2076657269667960901b6044820152606401610733565b60008381526012602052604090205460ff1615612cbb5760405162461bcd60e51b81526004016107339061575d565b6001600160a01b0384166000908152600f6020908152604080832086845290915290205460ff16612cfe5760405162461bcd60e51b81526004016107339061584d565b6001600160a01b0384166000908152600e602090815260408083208684528252808320815161016081018352815481526001820180548451818702810187019095528085529194929385840193909290830182828015612d8757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612d69575b505050918352505060028201546020820152600382015460408201526004820154606082015260058201546080820152600682015460a0820152600782015460c0820152600882015460e082015260099091015460ff80821615156101008085019190915290910416151561012090910152610140810151909150612e415760405162461bcd60e51b815260206004820152601060248201526f292b1d103a3cb832903334b9b9b4b7b760811b6044820152606401610733565b60005b816020015151811015612efc578160400151600d600084602001518481518110612e7057612e70615720565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002054612ea39190615835565b600d600084602001518481518110612ebd57612ebd615720565b60200260200101516001600160a01b03166001600160a01b03168152602001908152602001600020819055508080612ef49061587a565b915050612e44565b508060400151600b54612f0f9190615835565b600b55600a5481516040516340c10f1960e01b81526001600160a01b03888116600483015260248201929092529116906340c10f19906044016020604051808303816000875af1158015612f67573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f8b91906159af565b612fc75760405162461bcd60e51b815260206004820152600d60248201526c14958e8819985a5b081b5a5b9d609a1b6044820152606401610733565b6001600160a01b0385166000908152600e60209081526040808320878452909152812081815590612ffb6001830182615111565b506000600282018190556003820181905560048201819055600582018190556006820181905560078201819055600882018190556009909101805461ffff191690556001600160a01b0386168152600f602090815260408083208784528252808320805460ff1990811690915560129092529091208054909116600117905561308385613d72565b806000015184866001600160a01b03167f5c1540c756a62768fe47016d71be31619c522c3b8cc557d37a94979c8eadc22084604001518560600151866020015160405161212193929190615a39565b6130da613946565b6001600160a01b0383166131005760405162461bcd60e51b815260040161073390615681565b600081116131205760405162461bcd60e51b8152600401610733906156a5565b61312982612130565b6131455760405162461bcd60e51b8152600401610733906156cb565b6115876001600160a01b0383168483613a78565b613161613946565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b613190613946565b6001600160a01b0381166131f55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610733565b61230481613e01565b606080600061320b612518565b90508067ffffffffffffffff81111561322657613226615397565b60405190808252806020026020018201604052801561324f578160200160208202803683370190505b5092508067ffffffffffffffff81111561326b5761326b615397565b604051908082528060200260200182016040528015613294578160200160208202803683370190505b5091506000806010805480602002602001604051908101604052809291908181526020016000905b828210156133185760008481526020908190206040805160608101825260028602909201805483526001908101546001600160a01b03811684860152600160a01b900460ff1615159183019190915290835290920191016132bc565b50505050905060005b81518110156133d357600082828151811061333e5761333e615720565b60200260200101519050806040015115156000151514156133c057806000015187858151811061337057613370615720565b602002602001018181525050806020015186858061338d9061587a565b96508151811061339f5761339f615720565b60200260200101906001600160a01b031690816001600160a01b0316815250505b50806133cb8161587a565b915050613321565b505050509091565b6133e433612b10565b6134005760405162461bcd60e51b81526004016107339061563c565b6001600160a01b0382166134265760405162461bcd60e51b815260040161073390615681565b600081116134465760405162461bcd60e51b8152600401610733906156a5565b60006010805480602002602001604051908101604052809291908181526020016000905b828210156134c65760008481526020908190206040805160608101825260028602909201805483526001908101546001600160a01b03811684860152600160a01b900460ff16151591830191909152908352909201910161346a565b50505050905060005b81518110156135225760008282815181106134ec576134ec615720565b6020026020010151905080604001511561350f5761350f8582602001518661070e565b508061351a8161587a565b9150506134cf565b50505050565b613530613adb565b6009546001600160a01b0316331461355a5760405162461bcd60e51b815260040161073390615736565b6001600160a01b0384166135805760405162461bcd60e51b815260040161073390615681565b600081116135bc5760405162461bcd60e51b8152602060048201526009602482015268052563a2072667420360bc1b6044820152606401610733565b60006135c785613b21565b60008181526013602052604090205490915060ff16156135f95760405162461bcd60e51b81526004016107339061575d565b6000818152601360205260408120805460ff1916600117905561361c8486615835565b6006546040516370a0823160e01b81526001600160a01b0389811660048301529293508392909116906370a0823190602401602060405180830381865afa15801561366b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061368f9190615787565b10156136d35760405162461bcd60e51b8152602060048201526013602482015272292b1d102722903a37ba30b6103237b63630b960691b6044820152606401610733565b80156137b257600654604051636eb1769f60e11b815282916001600160a01b03169063dd62ed3e9061370b908a9030906004016157a0565b602060405180830381865afa158015613728573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061374c9190615787565b101561379a5760405162461bcd60e51b815260206004820152601760248201527f52563a204e4520446f6c6c617220616c6c6f77616e63650000000000000000006044820152606401610733565b6006546137b2906001600160a01b0316873084613b7e565b846000808080806137c48c8a88614378565b939850919650945092509050898560006137f28f8c8e8a6137e361388e565b6000808a8a8e60006001613bb6565b90508e821561381257600654613812906001600160a01b03168285613a78565b8315613822576138228185614b1a565b8c8c826001600160a01b03167f1501e4defba1d4f999529eb56f06251195fd64489ff34d7a21c63fcc5d2409c98b8e8961385a61388e565b8a8f8f8f8d60405161387499989796959493929190615a61565b60405180910390a450505050505050505050505050505050565b600080600a60009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156138e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139089190615787565b90508015806139175750600b54155b156139255761271091505090565b80600b5461271061393691906158ae565b61394091906158cd565b91505090565b6000546001600160a01b031633146114d45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610733565b6001600160a01b038116600090815260036020526040812054610706565b60408051606081018252600080825260208083018290528284018290526001600160a01b03851682526011905291909120546010541115610709576001600160a01b038216600090815260116020526040902054601080549091908110613a2757613a27615720565b60009182526020918290206040805160608101825260029390930290910180548352600101546001600160a01b03811693830193909352600160a01b90920460ff1615159181019190915292915050565b6040516001600160a01b03831660248201526044810182905261158790849063a9059cbb60e01b906064015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152614ea2565b60025460ff16156114d45760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610733565b6001600160a01b038116600090815260036020526040812054829060405160609290921b6bffffffffffffffffffffffff191660208301526034820152605401604051602081830303815290604052805190602001209050919050565b6040516001600160a01b03808516602483015283166044820152606481018290526135229085906323b872dd60e01b90608401613aa4565b6060613bc061216c565b90506040518061016001604052808c81526020018281526020018b81526020018a81526020018981526020018881526020018781526020018681526020018581526020018415158152602001831515815250600e60008f6001600160a01b03166001600160a01b0316815260200190815260200160002060008e8152602001908152602001600020600082015181600001556020820151816001019080519060200190613c6e92919061512f565b506040828101516002830155606083015160038301556080830151600483015560a0830151600583015560c0830151600683015560e08301516007830155610100808401516008840155610120840151600990930180546101409095015161ffff1990951693151561ff00191693909317931515029290921790556001600160a01b039d909d166000908152600f60209081528e82209d82529c909c529b909a20805460ff1916600117905550989998505050505050505050565b60025460ff166114d45760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610733565b6001600160a01b0316600090815260036020526040902080546001019055565b613d9a613d29565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b80516000908290613df85750600092915050565b50506020015190565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b613e59613adb565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258613dc73390565b604080516002808252606082018352600092839283929091602083019080368337505060065482519293506001600160a01b0316918391506001908110613ed757613ed7615720565b60200260200101906001600160a01b031690816001600160a01b03168152505060006010805480602002602001604051908101604052809291908181526020016000905b82821015613f775760008481526020908190206040805160608101825260028602909201805483526001908101546001600160a01b03811684860152600160a01b900460ff161515918301919091529083529092019101613f1b565b50505050905060005b8151811015614356576000828281518110613f9d57613f9d615720565b6020026020010151905080604001516143435760208101516040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015613ffb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061401f9190615787565b9050878110156140685760405162461bcd60e51b815260206004820152601460248201527352563a204e45207661756c742062616c616e636560601b6044820152606401610733565b81602001518560008151811061408057614080615720565b6001600160a01b03928316602091820292909201015260085460405163d06ca61f60e01b8152600092919091169063d06ca61f906140c4908c908a90600401615895565b600060405180830381865afa1580156140e1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526141099190810190615af1565b60018151811061411b5761411b615720565b6020026020010151905080886141319190615835565b600754600654602086015160405163e6a4390560e01b8152939b506000936001600160a01b039384169363e6a4390593614170939116916004016157a0565b602060405180830381865afa15801561418d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906141b19190615b77565b90506001600160a01b0381166141ff5760405162461bcd60e51b815260206004820152601360248201527252563a2070616972206e6f742065786973747360681b6044820152606401610733565b602084015160085460405163095ea7b360e01b81526001600160a01b039182166004820152602481018d905291169063095ea7b3906044016020604051808303816000875af1158015614256573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061427a91906159af565b6142b95760405162461bcd60e51b815260206004820152601060248201526f52563a206661696c20617070726f766560801b6044820152606401610733565b6008546001600160a01b03166338ed17398b60018a306142d7614f74565b6040518663ffffffff1660e01b81526004016142f7959493929190615b94565b6000604051808303816000875af1158015614316573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261433e9190810190615af1565b505050505b508061434e8161587a565b915050613f80565b506126f76143658560196158ae565b61436f91906158cd565b92505050915091565b60008060008060606127108761438c61388e565b61439691906158ae565b6143a091906158cd565b93506143aa612518565b67ffffffffffffffff8111156143c2576143c2615397565b6040519080825280602002602001820160405280156143eb578160200160208202803683370190505b506040805160028082526060820183528998509293506000928b9284929190602083019080368337505060065482519293506001600160a01b03169183915060009061443957614439615720565b60200260200101906001600160a01b031690816001600160a01b03168152505060006010805480602002602001604051908101604052809291908181526020016000905b828210156144d95760008481526020908190206040805160608101825260028602909201805483526001908101546001600160a01b03811684860152600160a01b900460ff16151591830191909152908352909201910161447d565b50505050905060005b8151811015614af05760008282815181106144ff576144ff615720565b602002602001015190508060400151156145195750614ade565b60208101516040516370a0823160e01b81526001600160a01b03878116600483015260009216906370a0823190602401602060405180830381865afa158015614566573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061458a9190615787565b9050808b1115614a055760008c116145d35760405162461bcd60e51b815260206004820152600c60248201526b052563a20646f6c6c617220360a41b6044820152606401610733565b60006145df828d615709565b90508260200151866001815181106145f9576145f9615720565b6001600160a01b0392831660209182029290920101526008546040516307c0329d60e21b81526000929190911690631f00ca749061463d9085908b90600401615895565b600060405180830381865afa15801561465a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526146829190810190615af1565b60008151811061469457614694615720565b60200260200101519050808e10156146de5760405162461bcd60e51b815260206004820152600d60248201526c292b1d102722903237b63630b960991b6044820152606401610733565b6146e8818d615835565b9b50828a8a6146f68161587a565b9b508151811061470857614708615720565b602090810291909101015261471d818f615709565b9d506000600760009054906101000a90046001600160a01b03166001600160a01b031663e6a43905600660009054906101000a90046001600160a01b031687602001516040518363ffffffff1660e01b815260040161477d9291906157a0565b602060405180830381865afa15801561479a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906147be9190615b77565b90506001600160a01b03811661480c5760405162461bcd60e51b815260206004820152601360248201527252563a2070616972206e6f742065786973747360681b6044820152606401610733565b60065460085460405163095ea7b360e01b81526001600160a01b0391821660048201526024810185905291169063095ea7b3906044016020604051808303816000875af1158015614861573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061488591906159af565b6148c45760405162461bcd60e51b815260206004820152601060248201526f52563a206661696c20617070726f766560801b6044820152606401610733565b6008546001600160a01b03166338ed17398360018b306148e2614f74565b6040518663ffffffff1660e01b8152600401614902959493929190615b94565b6000604051808303816000875af1158015614921573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526149499190810190615af1565b5083156149fd576020850151604051636eb1769f60e11b815285916001600160a01b03169063dd62ed3e90614984908d9030906004016157a0565b602060405180830381865afa1580156149a1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906149c59190615787565b10156149e35760405162461bcd60e51b8152600401610733906157ba565b60208501516149fd906001600160a01b03168a3087613b7e565b505050614adb565b8a8888614a118161587a565b995081518110614a2357614a23615720565b6020026020010181815250508a82602001516001600160a01b031663dd62ed3e88306040518363ffffffff1660e01b8152600401614a629291906157a0565b602060405180830381865afa158015614a7f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614aa39190615787565b1015614ac15760405162461bcd60e51b8152600401610733906157ba565b6020820151614adb906001600160a01b031687308e613b7e565b50505b80614ae88161587a565b9150506144e2565b50612710614aff8860196158ae565b614b0991906158cd565b955050505050939792965093509350565b600654604080516001600160a01b039283166024820152640eecadad2f60db1b60448083019190915282518083039091018152606490910182526020810180516001600160e01b0316635f908aad60e11b179052600554915190926000928392911690614b88908590615bd0565b600060405180830381855afa9150503d8060008114614bc3576040519150601f19603f3d011682016040523d82523d6000602084013e614bc8565b606091505b509150915081614c265760405162461bcd60e51b815260206004820152602360248201527f52563a206661696c206272696467652063616c6c20676574546f6b656e42794160448201526232323960e91b6064820152608401610733565b60008082806020019051810190614c3d9190615bec565b60065460055460405163e15afb1560e01b8152600481018690529497509195506001600160a01b039081169450169163e15afb159150602401602060405180830381865afa158015614c93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614cb79190615b77565b6001600160a01b031614614d0d5760405162461bcd60e51b815260206004820152601860248201527f52563a20696e636f727265637420746f6b656e4f626a496400000000000000006044820152606401610733565b6006546004805460405163095ea7b360e01b81526001600160a01b0391821692810192909252602482018990529091169063095ea7b3906044016020604051808303816000875af1158015614d66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614d8a91906159af565b614dd65760405162461bcd60e51b815260206004820152601760248201527f52563a206661696c2062726964676520617070726f76650000000000000000006044820152606401610733565b6000614de28288615709565b60048054600654604051637f44c10560e01b81526001600160a01b03918216938101939093523060248401528b811660448401526064830187905269506c617942726964676560b01b6084840152640eecadad2f60db1b60a484015260c4830184905260e4830186905260006101048401529293509190911690637f44c1059061012401600060405180830381600087803b158015614e8057600080fd5b505af1158015614e94573d6000803e3d6000fd5b505050505050505050505050565b6000614ef7826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316614f849092919063ffffffff16565b8051909150156115875780806020019051810190614f1591906159af565b6115875760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610733565b6000620151806139408142615835565b6060614f938484600085614f9b565b949350505050565b606082471015614ffc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610733565b600080866001600160a01b031685876040516150189190615bd0565b60006040518083038185875af1925050503d8060008114615055576040519150601f19603f3d011682016040523d82523d6000602084013e61505a565b606091505b509150915061506b87838387615076565b979650505050505050565b606083156150e25782516150db576001600160a01b0385163b6150db5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610733565b5081614f93565b614f9383838151156150f75781518083602001fd5b8060405162461bcd60e51b81526004016107339190615c2b565b50805460008255906000526020600020908101906123049190615194565b828054828255906000526020600020908101928215615184579160200282015b8281111561518457825182546001600160a01b0319166001600160a01b0390911617825560209092019160019091019061514f565b50615190929150615194565b5090565b5b808211156151905760008155600101615195565b6001600160a01b038116811461230457600080fd5b6000602082840312156151d057600080fd5b81356118f5816151a9565b6000806000606084860312156151f057600080fd5b83356151fb816151a9565b9250602084013561520b816151a9565b929592945050506040919091013590565b801515811461230457600080fd5b60008060006060848603121561523f57600080fd5b833561524a816151a9565b92506020840135915060408401356152618161521c565b809150509250925092565b60006020828403121561527e57600080fd5b5035919050565b6000806040838503121561529857600080fd5b82356152a3816151a9565b946020939093013593505050565b600081518084526020808501945080840160005b838110156152ea5781516001600160a01b0316875295820195908201906001016152c5565b509495945050505050565b60208152815160208201526000602083015161016080604085015261531e6101808501836152b1565b91506040850151606085015260608501516080850152608085015160a085015260a085015160c085015260c085015160e085015260e08501516101008181870152808701519150506101208181870152808701519150506101406153858187018315159052565b90950151151593019290925250919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156153d6576153d6615397565b604052919050565b600067ffffffffffffffff8211156153f8576153f8615397565b5060051b60200190565b600082601f83011261541357600080fd5b81356020615428615423836153de565b6153ad565b82815260059290921b8401810191818101908684111561544757600080fd5b8286015b8481101561546b57803561545e816151a9565b835291830191830161544b565b509695505050505050565b60006020828403121561548857600080fd5b813567ffffffffffffffff81111561549f57600080fd5b614f9384828501615402565b600080604083850312156154be57600080fd5b823567ffffffffffffffff8111156154d557600080fd5b6154e185828601615402565b92505060208301356154f2816151a9565b809150509250929050565b6000806040838503121561551057600080fd5b823561551b816151a9565b915060208301356154f2816151a9565b6000806000806080858703121561554157600080fd5b843561554c816151a9565b93506020850135925060408501359150606085013561556a8161521c565b939692955090935050565b6020815260006118f560208301846152b1565b6000806040838503121561559b57600080fd5b50508035926020909101359150565b604080825283519082018190526000906020906060840190828701845b828110156155e3578151845292840192908401906001016155c7565b505050838103828501526155f781866152b1565b9695505050505050565b6000806000806080858703121561561757600080fd5b8435615622816151a9565b966020860135965060408601359560600135945092505050565b60208082526025908201527f456469746f72526f6c65203a206d73672073656e646572206973206e6f7420656040820152643234ba37b960d91b606082015260800190565b6020808252600a9082015269052563a206164647220360b41b604082015260600190565b6020808252600c908201526b052563a20616d6f756e7420360a41b604082015260600190565b6020808252600e908201526d52563a206e6f742065786973747360901b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008282101561571b5761571b6156f3565b500390565b634e487b7160e01b600052603260045260246000fd5b6020808252600d908201526c292b1d3737ba103937baba32b960991b604082015260600190565b60208082526010908201526f0a4ac7440c6dedae0d8cae8cac840e8f60831b604082015260600190565b60006020828403121561579957600080fd5b5051919050565b6001600160a01b0392831681529116602082015260400190565b60208082526010908201526f52563a204e4520616c6c6f77616e636560801b604082015260600190565b858152846020820152836040820152821515606082015260a06080820152600061506b60a08301846152b1565b6020808252600a908201526952563a206e6f7420434160b01b604082015260600190565b60008219821115615848576158486156f3565b500190565b602080825260139082015272052563a206e6f74206578697374732074656d7606c1b604082015260600190565b600060001982141561588e5761588e6156f3565b5060010190565b828152604060208201526000614f9360408301846152b1565b60008160001904831182151516156158c8576158c86156f3565b500290565b6000826158ea57634e487b7160e01b600052601260045260246000fd5b500490565b60005b8381101561590a5781810151838201526020016158f2565b838111156135225750506000910152565b60006020828403121561592d57600080fd5b815167ffffffffffffffff8082111561594557600080fd5b818401915084601f83011261595957600080fd5b81518181111561596b5761596b615397565b61597e601f8201601f19166020016153ad565b915080825285602082850101111561599557600080fd5b6159a68160208401602086016158ef565b50949350505050565b6000602082840312156159c157600080fd5b81516118f58161521c565b84815283602082015282151560408201526080606082015260006155f760808301846152b1565b87815286602082015285604082015284606082015283608082015282151560a082015260e060c08201526000615a2c60e08301846152b1565b9998505050505050505050565b838152826020820152606060408201526000615a5860608301846152b1565b95945050505050565b60006101208083018c845260208c818601528b60408601528a60608601528960808601528860a08601528760c08601528260e0860152819250865180835261014086019350818801925060005b81811015615aca57835185529382019392820192600101615aae565b50505050828103610100840152615ae181856152b1565b9c9b505050505050505050505050565b60006020808385031215615b0457600080fd5b825167ffffffffffffffff811115615b1b57600080fd5b8301601f81018513615b2c57600080fd5b8051615b3a615423826153de565b81815260059190911b82018301908381019087831115615b5957600080fd5b928401925b8284101561506b57835182529284019290840190615b5e565b600060208284031215615b8957600080fd5b81516118f5816151a9565b85815284602082015260a060408201526000615bb360a08301866152b1565b6001600160a01b0394909416606083015250608001529392505050565b60008251615be28184602087016158ef565b9190910192915050565b60008060008060808587031215615c0257600080fd5b8451615c0d816151a9565b60208601516040870151606090970151919890975090945092505050565b6020815260008251806020840152615c4a8160408501602087016158ef565b601f01601f1916919091016040019291505056fea2646970667358221220a6226d75c812779185e76e21322a8120f5125ee1b1cfe3cb406f7d2e19205de664736f6c634300080a0033