60806040526040516108e63803806108e683398101604081905261002291610493565b61002e82826000610035565b50506105c9565b61006b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914360001b6101bf60201b6100291760201c565b5460ff16156100825761007d836101c2565b505050565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156100dc575060408051601f3d908101601f191682019092526100d991810190610561565b60015b6101445760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b60648201526084015b60405180910390fd5b60008051602061089f83398151915281146101b35760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b606482015260840161013b565b5061007d83838361027d565b90565b6101d5816102b260201b61002c1760201c565b6102375760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b606482015260840161013b565b8061025c60008051602061089f83398151915260001b6101bf60201b6100291760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b610286836102c1565b6000825111806102935750805b1561007d576102ac838361030160201b61003b1760201c565b50505050565b6001600160a01b03163b151590565b6102ca816101c2565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061032683836040518060600160405280602781526020016108bf6027913961032d565b9392505050565b6060600080856001600160a01b03168560405161034a919061057a565b600060405180830381855af49150503d8060008114610385576040519150601f19603f3d011682016040523d82523d6000602084013e61038a565b606091505b50909250905061039c868383876103a6565b9695505050505050565b6060831561041557825160000361040e576001600160a01b0385163b61040e5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161013b565b508161041f565b61041f8383610427565b949350505050565b8151156104375781518083602001fd5b8060405162461bcd60e51b815260040161013b9190610596565b634e487b7160e01b600052604160045260246000fd5b60005b8381101561048257818101518382015260200161046a565b838111156102ac5750506000910152565b600080604083850312156104a657600080fd5b82516001600160a01b03811681146104bd57600080fd5b60208401519092506001600160401b03808211156104da57600080fd5b818501915085601f8301126104ee57600080fd5b81518181111561050057610500610451565b604051601f8201601f19908116603f0116810190838211818310171561052857610528610451565b8160405282815288602084870101111561054157600080fd5b610552836020830160208801610467565b80955050505050509250929050565b60006020828403121561057357600080fd5b5051919050565b6000825161058c818460208701610467565b9190910192915050565b60208152600082518060208401526105b5816040850160208701610467565b601f01601f19169190910160400192915050565b6102c7806105d86000396000f3fe60806040523661001357610011610017565b005b6100115b610027610022610067565b61009f565b565b90565b6001600160a01b03163b151590565b6060610060838360405180606001604052806027815260200161026b602791396100c3565b9392505050565b600061009a7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156100be573d6000f35b3d6000fd5b6060600080856001600160a01b0316856040516100e0919061021b565b600060405180830381855af49150503d806000811461011b576040519150601f19603f3d011682016040523d82523d6000602084013e610120565b606091505b50915091506101318683838761013b565b9695505050505050565b606083156101af5782516000036101a8576001600160a01b0385163b6101a85760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064015b60405180910390fd5b50816101b9565b6101b983836101c1565b949350505050565b8151156101d15781518083602001fd5b8060405162461bcd60e51b815260040161019f9190610237565b60005b838110156102065781810151838201526020016101ee565b83811115610215576000848401525b50505050565b6000825161022d8184602087016101eb565b9190910192915050565b60208152600082518060208401526102568160408501602087016101eb565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212209380386680b95112305bb30bbe4db9b2236e7f4cac0a3a67a0b0b935dc766c6a64736f6c634300080d0033360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000065438d0e454128db785464cbb7960ddef48151f400000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000024c4d66de800000000000000000000000070be4e3761188d0a8c525e54bb81c4ea97712de400000000000000000000000000000000000000000000000000000000