608060405234801561000f575f80fd5b5060405161062538038061062583398101604081905261002e91610411565b828161003b82825f610064565b5061005c90506001600160a01b03831615610056578261008f565b3361008f565b505050610528565b61006d836100fc565b5f825111806100795750805b1561008a57610088838361013b565b505b505050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6100ce5f805160206105de833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a16100f981610167565b50565b61010581610202565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a250565b606061016083836040518060600160405280602781526020016105fe60279139610294565b9392505050565b6001600160a01b0381166101d15760405162461bcd60e51b815260206004820152602660248201527f455243313936373a206e65772061646d696e20697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b805f805160206105de8339815191525b80546001600160a01b0319166001600160a01b039290921691909117905550565b61020b81610309565b61026d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084016101c8565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc6101e1565b60605f80856001600160a01b0316856040516102b091906104db565b5f60405180830381855af49150503d805f81146102e8576040519150601f19603f3d011682016040523d82523d5f602084013e6102ed565b606091505b5090925090506102ff86838387610318565b9695505050505050565b6001600160a01b03163b151590565b606083156103845782515f0361037d5761033185610309565b61037d5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016101c8565b508161038e565b61038e8383610396565b949350505050565b8151156103a65781518083602001fd5b8060405162461bcd60e51b81526004016101c891906104f6565b80516001600160a01b03811681146103d6575f80fd5b919050565b634e487b7160e01b5f52604160045260245ffd5b5f5b838110156104095781810151838201526020016103f1565b50505f910152565b5f805f60608486031215610423575f80fd5b61042c846103c0565b925061043a602085016103c0565b60408501519092506001600160401b0380821115610456575f80fd5b818601915086601f830112610469575f80fd5b81518181111561047b5761047b6103db565b604051601f8201601f19908116603f011681019083821181831017156104a3576104a36103db565b816040528281528960208487010111156104bb575f80fd5b6104cc8360208301602088016103ef565b80955050505050509250925092565b5f82516104ec8184602087016103ef565b9190910192915050565b602081525f82518060208401526105148160408501602087016103ef565b601f01601f19169190910160400192915050565b60aa806105345f395ff3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6057565b565b5f60527f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b365f80375f80365f845af43d5f803e8080156070573d5ff35b3d5ffdfea26469706673582212207a7068d3fca9f02bd9a74e0d1cd33cae05e192a7a42a43326a58afa6e96b30d264736f6c63430008150033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656400000000000000000000000007e5bd197335c0d452e74c67733402b741a74bd1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000000