wemix-logo
WEMIX3.0 Explorer

Contract

0x0d8636058b3db00f2eb4d1c5f80d5fe8d70eee66
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
0x608060405234801561001057600080fd5b50600436106102325760003560e01c806352c8ca2711610130578063a22cb465116100b8578063bff6c5601161007c578063bff6c56014610507578063c87b56dd1461051a578063d33ad2031461052d578063e985e9c514610540578063f983c4861461057c57600080fd5b8063a22cb465146104b1578063aba03325146104c4578063b45a3c0e146104cc578063b88d4fde146104df578063b8b1fe8c146104f257600080fd5b80635c60da1b116100ff5780635c60da1b146104685780636352211e1461047057806370a08231146104835780638cbab7e41461049657806395d89b41146104a957600080fd5b806352c8ca271461040c5780635312fdc21461041f57806358acecbe1461043f57806359659e901461046057600080fd5b806329c21d5f116101be5780634162169f116101825780634162169f1461039f57806341de6830146103b057806342842e0e146103bf57806344be646e146103d25780634f6ccce7146103f957600080fd5b806329c21d5f146103405780632b63c477146103535780632f745c59146103665780633a21f75a146103795780633db1cca81461038c57600080fd5b806314fdb9b31161020557806314fdb9b3146102b457806318160ddd146102e95780631cfa56ed146102f157806322f3e2d41461031857806323b872dd1461032d57600080fd5b806301ffc9a71461023757806306fdde031461025f578063081812fc14610274578063095ea7b31461029f575b600080fd5b61024a610245366004613822565b6105ab565b60405190151581526020015b60405180910390f35b6102676105e5565b604051610256919061388f565b6102876102823660046138a2565b610677565b6040516001600160a01b039091168152602001610256565b6102b26102ad3660046138e0565b61069e565b005b6102db7ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc981565b604051908152602001610256565b60fd546102db565b6102db7ff206625bad3d9112d5609b8d356e6fbd514cd1f69980d4ce2b3e6e68e1789ace81565b6101665461024a90600160a01b900460ff1681565b6102b261033b36600461390c565b6107b8565b6102b261034e36600461398e565b6107e9565b6102b2610361366004613a2d565b610a50565b6102db6103743660046138e0565b610c31565b6102b261038736600461398e565b610cc7565b6102b261039a366004613ac6565b610f3c565b6065546001600160a01b0316610287565b60036040516102569190613ba7565b6102b26103cd36600461390c565b61162f565b6102db7f9667e80708b6eeeb0053fa0cca44e028ff548e2a9f029edfeac87c118b08b7c881565b6102db6104073660046138a2565b61164a565b6102b261041a3660046138a2565b6116dd565b61043261042d3660046138a2565b6117cd565b6040516102569190613bd5565b6102db61044d366004613be3565b6101626020526000908152604090205481565b61028761180b565b610287611843565b61028761047e3660046138a2565b6118d7565b6102db610491366004613be3565b611937565b6102db6104a4366004613be3565b6119bd565b610267611a19565b6102b26104bf366004613c0e565b611a28565b6102b2611a37565b61024a6104da3660046138a2565b611ae8565b6102b26104ed366004613ce9565b611b26565b6102db60008051602061476483398151915281565b6102b2610515366004613d63565b611b5e565b6102676105283660046138a2565b611d9c565b6102b261053b366004613dd3565b611e10565b61024a61054e366004613e81565b6001600160a01b03918216600090815260ce6020908152604080832093909416825291909152205460ff1690565b61024a61058a366004613eaf565b80516020818301810180516101638252928201919093012091525460ff1681565b60006001600160e01b03198216635a2d1e0760e11b14806105d057506105d082611f39565b806105df57506105df82611f5e565b92915050565b606060c980546105f490613ee3565b80601f016020809104026020016040519081016040528092919081815260200182805461062090613ee3565b801561066d5780601f106106425761010080835404028352916020019161066d565b820191906000526020600020905b81548152906001019060200180831161065057829003601f168201915b5050505050905090565b600061068282611f83565b50600090815260cd60205260409020546001600160a01b031690565b60006106a9826118d7565b9050806001600160a01b0316836001600160a01b03160361071b5760405162461bcd60e51b815260206004820152602160248201527f4552433732313a20617070726f76616c20746f2063757272656e74206f776e656044820152603960f91b60648201526084015b60405180910390fd5b336001600160a01b03821614806107375750610737813361054e565b6107a95760405162461bcd60e51b815260206004820152603d60248201527f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60448201527f6b656e206f776e6572206f7220617070726f76656420666f7220616c6c0000006064820152608401610712565b6107b38383611fd6565b505050565b6107c23382612044565b6107de5760405162461bcd60e51b815260040161071290613f17565b6107b38383836120c3565b61016654600160a01b900460ff166108135760405162461bcd60e51b815260040161071290613f64565b81818080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604051610163925061085b91508390613f9b565b9081526040519081900360200190205460ff161561088b5760405162461bcd60e51b815260040161071290613fb7565b6001600160a01b03841630146108b35760405162461bcd60e51b815260040161071290614001565b60405167554e464f4c4c4f5760c01b60208201526001600160601b031933606090811b82166028840152603c830188905286901b16605c82015260009060700160408051601f19818403018152919052610165548151602083012091925061094b916001600160a01b0390911690819087877f9667e80708b6eeeb0053fa0cca44e028ff548e2a9f029edfeac87c118b08b7c861223c565b6109675760405162461bcd60e51b815260040161071290614049565b33600090815261016260209081526040808320548084526101619092529091205460ff16600481600481111561099f5761099f613b91565b10610a0a5760405162461bcd60e51b815260206004820152603560248201527f4d656d62657273686970546f6b656e3a206368616e6e656c4f776e65722063616044820152741b9b9bdd081d5b999bdb1b1bddc818da185b9b995b605a1b6064820152608401610712565b610a13826122d8565b505050600161016382604051610a299190613f9b565b908152604051908190036020019020805491151560ff199092169190911790555050505050565b610165547ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc990610a8f906001600160a01b031680335b8460003661235a565b8584148015610a9d57508582145b610afb5760405162461bcd60e51b815260206004820152602960248201527f4d656d62657273686970546f6b656e3a20696e76616c6964206c656e677468206044820152686f662061727261797360b81b6064820152608401610712565b60005b86811015610bd3576000888883818110610b1a57610b1a61408b565b9050602002016020810190610b2f9190613be3565b90506000878784818110610b4557610b4561408b565b9050602002013590506000868685818110610b6257610b6261408b565b9050602002016020810190610b7791906140a1565b90506000816004811115610b8d57610b8d613b91565b03610ba057610b9b826122d8565b610bbd565b610bab838284612416565b61015f54821115610bbd5761015f8290555b5050508080610bcb906140d2565b915050610afe565b507f905e687a8c2ab4ce87c54ea7bebdc9c2d07557e4f532fab8f710819f95a2bc4a610c076065546001600160a01b031690565b888888888888604051610c209796959493929190614130565b60405180910390a150505050505050565b6000610c3c83611937565b8210610c9e5760405162461bcd60e51b815260206004820152602b60248201527f455243373231456e756d657261626c653a206f776e657220696e646578206f7560448201526a74206f6620626f756e647360a81b6064820152608401610712565b506001600160a01b0391909116600090815260fb60209081526040808320938352929052205490565b61016654600160a01b900460ff16610cf15760405162461bcd60e51b815260040161071290613f64565b81818080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516101639250610d3991508390613f9b565b9081526040519081900360200190205460ff1615610d695760405162461bcd60e51b815260040161071290613fb7565b6001600160a01b0384163014610d915760405162461bcd60e51b815260040161071290614001565b6040516001600160601b031933606090811b821660208401526034830188905286901b1660548201526c10d313d4d157d0d21053939153609a1b606882015260009060750160408051601f198184030181529190526101655481516020830120919250610e1c916001600160a01b03909116908190878760008051602061476483398151915261223c565b610e385760405162461bcd60e51b815260040161071290614049565b6000610e4261257c565b61016454610166549192506001600160a01b0390811691639049532e9116610e726065546001600160a01b031690565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401600060405180830381600087803b158015610eba57600080fd5b505af1158015610ece573d6000803e3d6000fd5b5050610166805460ff60a01b1916905550506065547f3a4b3403497e976ae4bc1c2ca00d8080e0433c92d9cec31159026c2b2f07cdd0906001600160a01b03164283604051610f1f93929190614206565b60405180910390a15050600161016382604051610a299190613f9b565b61016654600160a01b900460ff16610f665760405162461bcd60e51b815260040161071290613f64565b81818080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516101639250610fae91508390613f9b565b9081526040519081900360200190205460ff1615610fde5760405162461bcd60e51b815260040161071290613fb7565b856110405760405162461bcd60e51b815260206004820152602c60248201527f4d656d62657273686970546f6b656e3a20726f6c654368616e6765732063616e60448201526b6e6f7420626520656d70747960a01b6064820152608401610712565b6001600160a01b03841630146110685760405162461bcd60e51b815260040161071290614001565b6040516001600160601b031960608a811b8216602084015233811b821660348401526048830188905286901b166068820152600090607c01604051602081830303815290604052905060005b8781101561113957818989838181106110cf576110cf61408b565b905060400201600001358a8a848181106110eb576110eb61408b565b905060400201602001602081019061110391906140a1565b60405160200161111593929190614244565b60405160208183030381529060405291508080611131906140d2565b9150506110b4565b50610165548151602083012061117d916001600160a01b031690819087877ff206625bad3d9112d5609b8d356e6fbd514cd1f69980d4ce2b3e6e68e1789ace61223c565b6111995760405162461bcd60e51b815260040161071290614049565b6001600160a01b038916600090815261016260209081526040808320548084526101619092529091205460ff1660038160048111156111da576111da613b91565b101561124e5760405162461bcd60e51b815260206004820152603f60248201527f4d656d62657273686970546f6b656e3a206368616e67657220646f6573206e6f60448201527f742068617665207065726d697373696f6e20746f206368616e6765526f6c65006064820152608401610712565b60005b898110156115a05760008b8b8381811061126d5761126d61408b565b9050604002016000013590506112828161259a565b61129e5760405162461bcd60e51b815260040161071290614274565b838103611315576040805162461bcd60e51b81526020600482015260248101919091527f4d656d62657273686970546f6b656e3a206368616e6765722063616e6e6f742060448201527f6368616e67652074686520726f6c65206f6620697473206f776e20746f6b656e6064820152608401610712565b60008c8c848181106113295761132961408b565b905060400201602001602081019061134191906140a1565b9050600081600481111561135757611357613b91565b1180156113755750600481600481111561137357611373613b91565b105b6113c15760405162461bcd60e51b815260206004820152601d60248201527f4d656d62657273686970546f6b656e3a20696e76616c696420726f6c650000006044820152606401610712565b8060048111156113d3576113d3613b91565b6000838152610161602052604090205460ff1660048111156113f7576113f7613b91565b036114145760405162461bcd60e51b8152600401610712906142b9565b6000828152610161602052604081205460ff169081600481111561143a5761143a613b91565b1180156114595750600481600481111561145657611456613b91565b14155b6114cb5760405162461bcd60e51b815260206004820152603b60248201527f4d656d62657273686970546f6b656e3a20746f6b656e206f776e65722073686f60448201527f756c64206265206120666f6c6c6f776572206f722061207374657000000000006064820152608401610712565b8060048111156114dd576114dd613b91565b8560048111156114ef576114ef613b91565b10156115805760405162461bcd60e51b815260206004820152605460248201527f4d656d62657273686970546f6b656e3a206368616e67657220646f6573206e6f60448201527f742068617665207065726d697373696f6e20746f207365742074686520726f6c606482015273329037b3103a3432903a37b5b2b71037bbb732b960611b608482015260a401610712565b61158a83836125b7565b5050508080611598906140d2565b915050611251565b507fd73ab26b060d5051eb6fd05e556508fb565701c344380d7841016d7ba49b40e06115d46065546001600160a01b031690565b8c8c8c6040516115e79493929190614304565b60405180910390a15050506001610163826040516116059190613f9b565b908152604051908190036020019020805491151560ff199092169190911790555050505050505050565b6107b383838360405180602001604052806000815250611b26565b600061165560fd5490565b82106116b85760405162461bcd60e51b815260206004820152602c60248201527f455243373231456e756d657261626c653a20676c6f62616c20696e646578206f60448201526b7574206f6620626f756e647360a01b6064820152608401610712565b60fd82815481106116cb576116cb61408b565b90600052602060002001549050919050565b6101655460008051602061476483398151915290611705906001600160a01b03168033610a86565b61016654600160a01b900460ff16156117715760405162461bcd60e51b815260206004820152602860248201527f4d656d62657273686970546f6b656e3a206368616e6e656c206973207374696c6044820152676c2061637469766560c01b6064820152608401610712565b600061177c83612687565b90507f0ce69e386b731ca999da815088da00cfe7585ee9110977ce177bbb7b5ca5b8d76117b16065546001600160a01b031690565b826040516117c092919061437a565b60405180910390a1505050565b60006117d88261259a565b6117f45760405162461bcd60e51b815260040161071290614274565b506000908152610161602052604090205460ff1690565b600061183e7fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50546001600160a01b031690565b905090565b60006118767fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50546001600160a01b031690565b6001600160a01b0316635c60da1b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118b3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061183e919061439e565b600081815260cb60205260408120546001600160a01b0316806105df5760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610712565b60006001600160a01b0382166119a15760405162461bcd60e51b815260206004820152602960248201527f4552433732313a2061646472657373207a65726f206973206e6f7420612076616044820152683634b21037bbb732b960b91b6064820152608401610712565b506001600160a01b0316600090815260cc602052604090205490565b6001600160a01b038116600090815261016260205260408120546119e09061259a565b6119fc5760405162461bcd60e51b815260040161071290614274565b506001600160a01b03166000908152610162602052604090205490565b606060ca80546105f490613ee3565b611a3333838361275c565b5050565b61016654600160a01b900460ff16611a615760405162461bcd60e51b815260040161071290613f64565b6101655460008051602061476483398151915290611a89906001600160a01b03168033610a86565b610166805460ff60a01b191690557fba72a0c961b6710b9127e9edd5fce9172e384e3b60443506241b2b584a1ee3dc611aca6065546001600160a01b031690565b6040516001600160a01b03909116815260200160405180910390a150565b6000611af38261259a565b611b0f5760405162461bcd60e51b815260040161071290614274565b506000908152610160602052604090205460ff1690565b611b303383612044565b611b4c5760405162461bcd60e51b815260040161071290613f17565b611b588484848461282a565b50505050565b61016654600160a01b900460ff16611b885760405162461bcd60e51b815260040161071290613f64565b81818080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250506040516101639250611bd091508390613f9b565b9081526040519081900360200190205460ff1615611c005760405162461bcd60e51b815260040161071290613fb7565b6004866004811115611c1457611c14613b91565b10611c875760405162461bcd60e51b815260206004820152603760248201527f4d656d62657273686970546f6b656e3a2063616e6e6f7420666f6c6c6f77206360448201527f68616e6e656c206173206368616e6e656c206f776e65720000000000000000006064820152608401610712565b6001600160a01b0384163014611caf5760405162461bcd60e51b815260040161071290614001565b600033878787604051602001611cc894939291906143bb565b60408051601f198184030181529190526101655481516020830120919250611d20916001600160a01b0390911690819087877ff0887ba65ee2024ea881d91b74c2450ef19e1557f03bed3ea9f16b037cbe2dc961223c565b611d3c5760405162461bcd60e51b815260040161071290614049565b61015f8054906000611d4d836140d2565b9190505550611d60338861015f54612416565b50600161016382604051611d749190613f9b565b908152604051908190036020019020805491151560ff19909216919091179055505050505050565b6060611da782611f83565b6000611dbe60408051602081019091526000815290565b90506000815111611dde5760405180602001604052806000815250611e09565b80611de88461285d565b604051602001611df9929190614417565b6040516020818303038152906040525b9392505050565b600054610100900460ff1615808015611e305750600054600160ff909116105b80611e4a5750303b158015611e4a575060005460ff166001145b611ead5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610712565b6000805460ff191660011790558015611ed0576000805461ff0019166101001790555b611eda87876128ef565b611ee385612920565b611eee848484612950565b8015611f30576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890602001610c20565b50505050505050565b60006001600160e01b0319821663780e9d6360e01b14806105df57506105df82612b4b565b60006001600160e01b0319821663041de68360e41b14806105df57506105df82611f39565b611f8c8161259a565b611fd35760405162461bcd60e51b8152602060048201526018602482015277115490cdcc8c4e881a5b9d985b1a59081d1bdad95b88125160421b6044820152606401610712565b50565b600081815260cd6020526040902080546001600160a01b0319166001600160a01b038416908117909155819061200b826118d7565b6001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600080612050836118d7565b9050806001600160a01b0316846001600160a01b0316148061209757506001600160a01b03808216600090815260ce602090815260408083209388168352929052205460ff165b806120bb5750836001600160a01b03166120b084610677565b6001600160a01b0316145b949350505050565b826001600160a01b03166120d6826118d7565b6001600160a01b0316146120fc5760405162461bcd60e51b815260040161071290614446565b6001600160a01b03821661215e5760405162461bcd60e51b8152602060048201526024808201527f4552433732313a207472616e7366657220746f20746865207a65726f206164646044820152637265737360e01b6064820152608401610712565b61216b8383836001612b9b565b826001600160a01b031661217e826118d7565b6001600160a01b0316146121a45760405162461bcd60e51b815260040161071290614446565b600081815260cd6020908152604080832080546001600160a01b03199081169091556001600160a01b0387811680865260cc855283862080546000190190559087168086528386208054600101905586865260cb90945282852080549092168417909155905184937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a46107b38383836001612c07565b6000866001600160a01b031663fdef910687612259888888612c31565b604080516020810182526000815290516001600160e01b031960e086901b16815261228a939291889160040161448b565b602060405180830381865afa1580156122a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122cb91906144be565b90505b9695505050505050565b60006122e3826118d7565b90506122f0826000612cd8565b6122f982612d5c565b7f8f78f341a9ddbe756664036aa50aceae22e08cbbdd7cde9ec557a13d20ecd7d461232c6065546001600160a01b031690565b604080516001600160a01b039283168152918416602083015281018490526060015b60405180910390a15050565b604051637ef7c88360e11b81526001600160a01b0387169063fdef91069061238e90889088908890889088906004016144db565b602060405180830381865afa1580156123ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123cf91906144be565b61240e57604051630cb6f8ed60e21b81526001600160a01b03808816600483015280871660248301528516604482015260648101849052608401610712565b505050505050565b61241f83611937565b156124925760405162461bcd60e51b815260206004820152603860248201527f4d656d62657273686970546f6b656e3a2054686973207573657220616c72656160448201527f647920666f6c6c6f77656420746865206368616e6e656c2e00000000000000006064820152608401610712565b60008260048111156124a6576124a6613b91565b116124f35760405162461bcd60e51b815260206004820152601d60248201527f4d656d62657273686970546f6b656e3a20696e76616c696420726f6c650000006044820152606401610712565b6124fd8382612e09565b61250781836125b7565b6001600160a01b0383166000908152610162602052604090208190557f38b92150b3147193b2cfb42690cbde54d24d5ad57ad71335db15dd4d7577327a6125566065546001600160a01b031690565b604080516001600160a01b039283168152918616602083015281018390526060016117c0565b6060600061258960fd5490565b905061259481612687565b91505090565b600090815260cb60205260409020546001600160a01b0316151590565b8060048111156125c9576125c9613b91565b6000838152610161602052604090205460ff1660048111156125ed576125ed613b91565b0361260a5760405162461bcd60e51b8152600401610712906142b9565b600082815261016160205260409020805460ff811691839160ff1916600183600481111561263a5761263a613b91565b02179055507f6b8b46b6588ea23226c808e45f9501091febd2497ee405788a1f7d6e5d0cf5d46126726065546001600160a01b031690565b338584866040516117c095949392919061452f565b6060816001600160401b038111156126a1576126a1613c47565b6040519080825280602002602001820160405280156126ca578160200160208202803683370190505b50905060005b828110156127165760006126e38261164a565b9050808383815181106126f8576126f861408b565b6020908102919091010152508061270e816140d2565b9150506126d0565b5060005b82811015612756576127448282815181106127375761273761408b565b60200260200101516122d8565b8061274e816140d2565b91505061271a565b50919050565b816001600160a01b0316836001600160a01b0316036127bd5760405162461bcd60e51b815260206004820152601960248201527f4552433732313a20617070726f766520746f2063616c6c6572000000000000006044820152606401610712565b6001600160a01b03838116600081815260ce6020908152604080832094871680845294825291829020805460ff191686151590811790915591519182527f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31910160405180910390a3505050565b6128358484846120c3565b61284184848484612e23565b611b585760405162461bcd60e51b815260040161071290614568565b6060600061286a83612f24565b60010190506000816001600160401b0381111561288957612889613c47565b6040519080825280601f01601f1916602001820160405280156128b3576020820181803683370190505b5090508181016020015b600019016f181899199a1a9b1b9c1cb0b131b232b360811b600a86061a8153600a85049450846128bd57509392505050565b600054610100900460ff166129165760405162461bcd60e51b8152600401610712906145ba565b611a338282612ffc565b600054610100900460ff166129475760405162461bcd60e51b8152600401610712906145ba565b611fd38161303c565b600054610100900460ff166129775760405162461bcd60e51b8152600401610712906145ba565b6001600160a01b0383166129eb5760405162461bcd60e51b815260206004820152603560248201527f4d656d62657273686970546f6b656e3a206368616e6e656c206f776e65722063604482015274616e6e6f74206265207a65726f206164647265737360581b6064820152608401610712565b6001600160a01b0383163b15612a5f5760405162461bcd60e51b815260206004820152603360248201527f4d656d62657273686970546f6b656e3a206368616e6e656c206f776e65722063604482015272185b9b9bdd08189948184818dbdb9d1c9858dd606a1b6064820152608401610712565b6001600160a01b038216612acd5760405162461bcd60e51b815260206004820152602f60248201527f4d656d62657273686970546f6b656e3a2073746174696f6e2063616e6e6f742060448201526e6265207a65726f206164647265737360881b6064820152608401610712565b61016480546001600160a01b038085166001600160a01b031992831617909255610165805492841692909116919091179055610166805460ff60a01b1916600160a01b179055612b208360046001612416565b505061016680546001600160a01b0319166001600160a01b0392909216919091179055600161015f55565b60006001600160e01b031982166380ac58cd60e01b1480612b7c57506001600160e01b03198216635b5e139f60e01b145b806105df57506301ffc9a760e01b6001600160e01b03198316146105df565b6000828152610160602052604090205460ff1615612bfb5760405162461bcd60e51b815260206004820181905260248201527f4d656d62657273686970546f6b656e3a20746f6b656e206973206c6f636b65646044820152606401610712565b611b5884848484613085565b6001600160a01b03831615612c2657612c21826001612cd8565b611b58565b611b58826000612cd8565b600080612c8b856040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b9050612ccf84848080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525085939250506131c59050565b95945050505050565b600082815261016060205260409020805460ff19168215801591909117909155612d2c576040518281527f032bc66be43dbccb7487781d168eb7bda224628a3b2c3388bdf69b532a3a16119060200161234e565b6040518281527ff27b6ce5b2f5e68ddb2fd95a8a909d4ecf1daaac270935fff052feacb24f18429060200161234e565b6000612d67826118d7565b9050612d77816000846001612b9b565b612d80826118d7565b600083815260cd6020908152604080832080546001600160a01b03199081169091556001600160a01b03851680855260cc8452828520805460001901905587855260cb909352818420805490911690555192935084927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908390a4611a33816000846001612c07565b611a338282604051806020016040528060008152506131e9565b60006001600160a01b0384163b15612f1957604051630a85bd0160e11b81526001600160a01b0385169063150b7a0290612e6790339089908890889060040161448b565b6020604051808303816000875af1925050508015612ea2575060408051601f3d908101601f19168201909252612e9f91810190614605565b60015b612eff573d808015612ed0576040519150601f19603f3d011682016040523d82523d6000602084013e612ed5565b606091505b508051600003612ef75760405162461bcd60e51b815260040161071290614568565b805181602001fd5b6001600160e01b031916630a85bd0160e11b1490506120bb565b506001949350505050565b60008072184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b8310612f635772184f03e93ff9f4daa797ed6e38ed64bf6a1f0160401b830492506040015b6d04ee2d6d415b85acef81000000008310612f8f576d04ee2d6d415b85acef8100000000830492506020015b662386f26fc100008310612fad57662386f26fc10000830492506010015b6305f5e1008310612fc5576305f5e100830492506008015b6127108310612fd957612710830492506004015b60648310612feb576064830492506002015b600a83106105df5760010192915050565b600054610100900460ff166130235760405162461bcd60e51b8152600401610712906145ba565b60c961302f8382614668565b5060ca6107b38282614668565b600054610100900460ff166130635760405162461bcd60e51b8152600401610712906145ba565b606580546001600160a01b0319166001600160a01b0392909216919091179055565b6130918484848461321c565b60018111156131005760405162461bcd60e51b815260206004820152603560248201527f455243373231456e756d657261626c653a20636f6e7365637574697665207472604482015274185b9cd9995c9cc81b9bdd081cdd5c1c1bdc9d1959605a1b6064820152608401610712565b816001600160a01b03851661315c576131578160fd8054600083815260fe60205260408120829055600182018355919091527f9346ac6dd7de6b96975fec380d4d994c4c12e6a8897544f22915316cc6cca2800155565b61317f565b836001600160a01b0316856001600160a01b03161461317f5761317f85826132a4565b6001600160a01b03841661319b5761319681613341565b6131be565b846001600160a01b0316846001600160a01b0316146131be576131be84826133f0565b5050505050565b60008060006131d48585613434565b915091506131e181613479565b509392505050565b6131f383836135c3565b6132006000848484612e23565b6107b35760405162461bcd60e51b815260040161071290614568565b6001811115611b58576001600160a01b03841615613262576001600160a01b038416600090815260cc60205260408120805483929061325c908490614727565b90915550505b6001600160a01b03831615611b58576001600160a01b038316600090815260cc60205260408120805483929061329990849061473a565b909155505050505050565b600060016132b184611937565b6132bb9190614727565b600083815260fc602052604090205490915080821461330e576001600160a01b038416600090815260fb60209081526040808320858452825280832054848452818420819055835260fc90915290208190555b50600091825260fc602090815260408084208490556001600160a01b03909416835260fb81528383209183525290812055565b60fd5460009061335390600190614727565b600083815260fe602052604081205460fd805493945090928490811061337b5761337b61408b565b906000526020600020015490508060fd838154811061339c5761339c61408b565b600091825260208083209091019290925582815260fe909152604080822084905585825281205560fd8054806133d4576133d461474d565b6001900381819060005260206000200160009055905550505050565b60006133fb83611937565b6001600160a01b03909316600090815260fb60209081526040808320868452825280832085905593825260fc9052919091209190915550565b600080825160410361346a5760208301516040840151606085015160001a61345e87828585613748565b94509450505050613472565b506000905060025b9250929050565b600081600481111561348d5761348d613b91565b036134955750565b60018160048111156134a9576134a9613b91565b036134f65760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610712565b600281600481111561350a5761350a613b91565b036135575760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610712565b600381600481111561356b5761356b613b91565b03611fd35760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610712565b6001600160a01b0382166136195760405162461bcd60e51b815260206004820181905260248201527f4552433732313a206d696e7420746f20746865207a65726f20616464726573736044820152606401610712565b6136228161259a565b1561366f5760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610712565b61367d600083836001612b9b565b6136868161259a565b156136d35760405162461bcd60e51b815260206004820152601c60248201527f4552433732313a20746f6b656e20616c7265616479206d696e746564000000006044820152606401610712565b6001600160a01b038216600081815260cc602090815260408083208054600101905584835260cb90915280822080546001600160a01b0319168417905551839291907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a4611a33600083836001612c07565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a083111561377f5750600090506003613803565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa1580156137d3573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166137fc57600060019250925050613803565b9150600090505b94509492505050565b6001600160e01b031981168114611fd357600080fd5b60006020828403121561383457600080fd5b8135611e098161380c565b60005b8381101561385a578181015183820152602001613842565b50506000910152565b6000815180845261387b81602086016020860161383f565b601f01601f19169290920160200192915050565b602081526000611e096020830184613863565b6000602082840312156138b457600080fd5b5035919050565b6001600160a01b0381168114611fd357600080fd5b80356138db816138bb565b919050565b600080604083850312156138f357600080fd5b82356138fe816138bb565b946020939093013593505050565b60008060006060848603121561392157600080fd5b833561392c816138bb565b9250602084013561393c816138bb565b929592945050506040919091013590565b60008083601f84011261395f57600080fd5b5081356001600160401b0381111561397657600080fd5b60208301915083602082850101111561347257600080fd5b600080600080606085870312156139a457600080fd5b8435935060208501356139b6816138bb565b925060408501356001600160401b038111156139d157600080fd5b6139dd8782880161394d565b95989497509550505050565b60008083601f8401126139fb57600080fd5b5081356001600160401b03811115613a1257600080fd5b6020830191508360208260051b850101111561347257600080fd5b60008060008060008060608789031215613a4657600080fd5b86356001600160401b0380821115613a5d57600080fd5b613a698a838b016139e9565b90985096506020890135915080821115613a8257600080fd5b613a8e8a838b016139e9565b90965094506040890135915080821115613aa757600080fd5b50613ab489828a016139e9565b979a9699509497509295939492505050565b600080600080600080600060a0888a031215613ae157600080fd5b8735613aec816138bb565b965060208801356001600160401b0380821115613b0857600080fd5b818a0191508a601f830112613b1c57600080fd5b813581811115613b2b57600080fd5b8b60208260061b8501011115613b4057600080fd5b602083019850965060408a01359550613b5b60608b016138d0565b945060808a0135915080821115613b7157600080fd5b50613b7e8a828b0161394d565b989b979a50959850939692959293505050565b634e487b7160e01b600052602160045260246000fd5b6020810160048310613bbb57613bbb613b91565b91905290565b60058110613bd157613bd1613b91565b9052565b602081016105df8284613bc1565b600060208284031215613bf557600080fd5b8135611e09816138bb565b8015158114611fd357600080fd5b60008060408385031215613c2157600080fd5b8235613c2c816138bb565b91506020830135613c3c81613c00565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112613c6e57600080fd5b81356001600160401b0380821115613c8857613c88613c47565b604051601f8301601f19908116603f01168101908282118183101715613cb057613cb0613c47565b81604052838152866020858801011115613cc957600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060008060808587031215613cff57600080fd5b8435613d0a816138bb565b93506020850135613d1a816138bb565b92506040850135915060608501356001600160401b03811115613d3c57600080fd5b613d4887828801613c5d565b91505092959194509250565b8035600581106138db57600080fd5b600080600080600060808688031215613d7b57600080fd5b613d8486613d54565b9450602086013593506040860135613d9b816138bb565b925060608601356001600160401b03811115613db657600080fd5b613dc28882890161394d565b969995985093965092949392505050565b60008060008060008060c08789031215613dec57600080fd5b86356001600160401b0380821115613e0357600080fd5b613e0f8a838b01613c5d565b97506020890135915080821115613e2557600080fd5b50613e3289828a01613c5d565b9550506040870135613e43816138bb565b93506060870135613e53816138bb565b92506080870135613e63816138bb565b915060a0870135613e73816138bb565b809150509295509295509295565b60008060408385031215613e9457600080fd5b8235613e9f816138bb565b91506020830135613c3c816138bb565b600060208284031215613ec157600080fd5b81356001600160401b03811115613ed757600080fd5b6120bb84828501613c5d565b600181811c90821680613ef757607f821691505b60208210810361275657634e487b7160e01b600052602260045260246000fd5b6020808252602d908201527f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560408201526c1c881bdc88185c1c1c9bdd9959609a1b606082015260800190565b60208082526017908201527f54686973206368616e6e656c20697320636c6f7365642e000000000000000000604082015260600190565b60008251613fad81846020870161383f565b9190910192915050565b6020808252602a908201527f4d656d62657273686970546f6b656e3a207369676e617475726520697320616c6040820152691c9958591e481d5cd95960b21b606082015260800190565b60208082526028908201527f4d656d62657273686970546f6b656e3a20696e76616c6964206d656d626572736040820152673434b82a37b5b2b760c11b606082015260800190565b60208082526022908201527f4d656d62657273686970546f6b656e3a20696e76616c6964207369676e617475604082015261726560f01b606082015260800190565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156140b357600080fd5b611e0982613d54565b634e487b7160e01b600052601160045260246000fd5b6000600182016140e4576140e46140bc565b5060010190565b8183526000602080850194508260005b85811015614125576141158761411084613d54565b613bc1565b95820195908201906001016140fb565b509495945050505050565b6001600160a01b03888116825260806020808401829052908301889052600091899160a08501845b8b81101561417f57843561416b816138bb565b841682529382019390820190600101614158565b5085810360408701528881526001600160fb1b0389111561419f57600080fd5b8860051b9350838a8383013790920184810383016060860152916141c681840187896140eb565b9c9b505050505050505050505050565b600081518084526020808501945080840160005b83811015614125578151875295820195908201906001016141ea565b60018060a01b0384168152826020820152606060408201526000612ccf60608301846141d6565b6005811061423d5761423d613b91565b60f81b9052565b6000845161425681846020890161383f565b8201848152614268602082018561422d565b60210195945050505050565b60208082526025908201527f4d656d62657273686970546f6b656e3a20746f6b656e20646f6573206e6f7420604082015264195e1a5cdd60da1b606082015260800190565b6020808252602b908201527f4d656d62657273686970546f6b656e3a20746f6b656e20616c7265616479206860408201526a61732074686520726f6c6560a81b606082015260800190565b6001600160a01b03858116825284166020808301919091526060604080840182905290830184905260009185919060808501845b8781101561436c578435825261434f838601613d54565b61435b84840182613bc1565b509383019390830190600101614338565b509998505050505050505050565b6001600160a01b03831681526040602082018190526000906120bb908301846141d6565b6000602082840312156143b057600080fd5b8151611e09816138bb565b60006bffffffffffffffffffffffff19808760601b1683526143e0601484018761422d565b60158301949094525060609190911b90911660358201526d1193d31313d5d7d0d2105393915360921b604982015260570192915050565b6000835161442981846020880161383f565b83519083019061443d81836020880161383f565b01949350505050565b60208082526025908201527f4552433732313a207472616e736665722066726f6d20696e636f72726563742060408201526437bbb732b960d91b606082015260800190565b6001600160a01b03858116825284166020820152604081018390526080606082018190526000906122ce90830184613863565b6000602082840312156144d057600080fd5b8151611e0981613c00565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6001600160a01b038681168252851660208201526040810184905260a0810161455b6060830185613bc1565b6122ce6080830184613bc1565b60208082526032908201527f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560408201527131b2b4bb32b91034b6b83632b6b2b73a32b960711b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60006020828403121561461757600080fd5b8151611e098161380c565b601f8211156107b357600081815260208120601f850160051c810160208610156146495750805b601f850160051c820191505b8181101561240e57828155600101614655565b81516001600160401b0381111561468157614681613c47565b6146958161468f8454613ee3565b84614622565b602080601f8311600181146146ca57600084156146b25750858301515b600019600386901b1c1916600185901b17855561240e565b600085815260208120601f198616915b828110156146f9578886015182559484019460019091019084016146da565b50858210156147175787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b818103818111156105df576105df6140bc565b808201808211156105df576105df6140bc565b634e487b7160e01b600052603160045260246000fdfe5c5f56b579dda63292d73e4803b1a2642fef5054a3d0751cda431344df65e8e9a2646970667358221220b09c3a7089d869705eb9896e77fd8df30329d016ff0c3aad4c5a6f6ac3b2309664736f6c63430008110033