60806040523480156200001157600080fd5b5033604051620000219062000487565b6001600160a01b039091168152602001604051809103906000f0801580156200004e573d6000803e3d6000fd5b506040518060200160405280600081525062000073828260006200007b60201b60201c565b505062000542565b620000868362000160565b6040516001600160a01b038416907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a2600082511180620000c85750805b156200015b5762000159836001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200010c57600080fd5b505afa15801562000121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000147919062000495565b836200032260201b6200009f1760201c565b505b505050565b62000176816200035160201b620000cb1760201c565b620001d65760405162461bcd60e51b815260206004820152602560248201527f455243313936373a206e657720626561636f6e206973206e6f74206120636f6e6044820152641d1c9858dd60da1b60648201526084015b60405180910390fd5b62000260816001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200021457600080fd5b505afa15801562000229573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200024f919062000495565b6200035160201b620000cb1760201c565b620002c75760405162461bcd60e51b815260206004820152603060248201527f455243313936373a20626561636f6e20696d706c656d656e746174696f6e206960448201526f1cc81b9bdd08184818dbdb9d1c9858dd60821b6064820152608401620001cd565b80620003017fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5060001b6200036060201b620000da1760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b60606200034a83836040518060600160405280602781526020016200117e6027913962000363565b9392505050565b6001600160a01b03163b151590565b90565b60606001600160a01b0384163b620003cd5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401620001cd565b600080856001600160a01b031685604051620003ea9190620004ef565b600060405180830381855af49150503d806000811462000427576040519150601f19603f3d011682016040523d82523d6000602084013e6200042c565b606091505b5090925090506200043f82828662000449565b9695505050505050565b606083156200045a5750816200034a565b8251156200046b5782518084602001fd5b8160405162461bcd60e51b8152600401620001cd91906200050d565b6105088062000c7683390190565b600060208284031215620004a857600080fd5b81516001600160a01b03811681146200034a57600080fd5b60005b83811015620004dd578181015183820152602001620004c3565b83811115620001595750506000910152565b6000825162000503818460208701620004c0565b9190910192915050565b60208152600082518060208401526200052e816040850160208701620004c0565b601f01601f19169190910160400192915050565b61072480620005526000396000f3fe6080604052600436106100225760003560e01c8063099af0e91461003957610031565b366100315761002f610059565b005b61002f610059565b34801561004557600080fd5b5061002f61005436600461056b565b61006b565b6100696100646100dd565b610185565b565b6001600160a01b0382166100915760405162bcafd560e71b815260040160405180910390fd5b61009b82826101ae565b5050565b60606100c483836040518060600160405280602781526020016106c8602791396101ba565b9392505050565b6001600160a01b03163b151590565b90565b60006101107fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50546001600160a01b031690565b6001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561014857600080fd5b505afa15801561015c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610180919061062f565b905090565b3660008037600080366000845af43d6000803e8080156101a4573d6000f35b3d6000fd5b505050565b61009b8282600061029c565b60606001600160a01b0384163b6102275760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084015b60405180910390fd5b600080856001600160a01b0316856040516102429190610678565b600060405180830381855af49150503d806000811461027d576040519150601f19603f3d011682016040523d82523d6000602084013e610282565b606091505b509150915061029282828661036b565b9695505050505050565b6102a5836103a4565b6040516001600160a01b038416907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a26000825111806102e65750805b156101a957610365836001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561032757600080fd5b505afa15801561033b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061035f919061062f565b8361009f565b50505050565b6060831561037a5750816100c4565b82511561038a5782518084602001fd5b8160405162461bcd60e51b815260040161021e9190610694565b6001600160a01b0381163b6104095760405162461bcd60e51b815260206004820152602560248201527f455243313936373a206e657720626561636f6e206973206e6f74206120636f6e6044820152641d1c9858dd60da1b606482015260840161021e565b61047d816001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561044557600080fd5b505afa158015610459573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906100cb919061062f565b6104ef5760405162461bcd60e51b815260206004820152603060248201527f455243313936373a20626561636f6e20696d706c656d656e746174696f6e206960448201527f73206e6f74206120636f6e747261637400000000000000000000000000000000606482015260840161021e565b7fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6001600160a01b038116811461055257600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561057e57600080fd5b82356105898161053d565b9150602083013567ffffffffffffffff808211156105a657600080fd5b818501915085601f8301126105ba57600080fd5b8135818111156105cc576105cc610555565b604051601f8201601f19908116603f011681019083821181831017156105f4576105f4610555565b8160405282815288602084870101111561060d57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561064157600080fd5b81516100c48161053d565b60005b8381101561066757818101518382015260200161064f565b838111156103655750506000910152565b6000825161068a81846020870161064c565b9190910192915050565b60208152600082518060208401526106b381604085016020870161064c565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122039f2b9088a26d600f2937c9b6027b401a3a612bcde2266daa61f5e9ac2f3213d64736f6c63430008090033608060405234801561001057600080fd5b5060405161050838038061050883398101604081905261002f91610151565b61003833610047565b61004181610097565b50610181565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6100aa8161014260201b6101a01760201c565b6101205760405162461bcd60e51b815260206004820152603360248201527f5570677261646561626c65426561636f6e3a20696d706c656d656e746174696f60448201527f6e206973206e6f74206120636f6e747261637400000000000000000000000000606482015260840160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03163b151590565b60006020828403121561016357600080fd5b81516001600160a01b038116811461017a57600080fd5b9392505050565b610378806101906000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80633659cfe61461005c5780635c60da1b14610071578063715018a61461009a5780638da5cb5b146100a2578063f2fde38b146100b3575b600080fd5b61006f61006a366004610312565b6100c6565b005b6001546001600160a01b03165b6040516001600160a01b03909116815260200160405180910390f35b61006f61010e565b6000546001600160a01b031661007e565b61006f6100c1366004610312565b610122565b6100ce6101af565b6100d781610209565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6101166101af565b61012060006102b5565b565b61012a6101af565b6001600160a01b0381166101945760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61019d816102b5565b50565b6001600160a01b03163b151590565b6000546001600160a01b031633146101205760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161018b565b6001600160a01b0381163b6102865760405162461bcd60e51b815260206004820152603360248201527f5570677261646561626c65426561636f6e3a20696d706c656d656e746174696f60448201527f6e206973206e6f74206120636f6e747261637400000000000000000000000000606482015260840161018b565b6001805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b600080546001600160a01b0383811673ffffffffffffffffffffffffffffffffffffffff19831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60006020828403121561032457600080fd5b81356001600160a01b038116811461033b57600080fd5b939250505056fea264697066735822122043a40f71f28de3c9daa999ba276e0e06a6589a45ad507b035e6331ef949f3a0e64736f6c63430008090033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564