0x60806040526000805460ff60a01b19168155600181905560025534801561002557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506109c0806100766000396000f3fe6080604052600436106100ec5760003560e01c80637a141a211161008a578063f2fde38b11610059578063f2fde38b1461044a578063f60ca60d1461046a578063f80f5dd51461048a578063fe490de1146104aa57600080fd5b80637a141a21146103ce57806386310568146103e35780638a777d0f146103f85780638da5cb5b1461041857600080fd5b8063295a5212116100c6578063295a52121461036357806351cff8d914610379578063715018a61461039957806375f890ab146103ae57600080fd5b80630561d44c146102d95780630ab0df871461030f5780631e7be2101461033357600080fd5b366102d45760048054604080516304892d7360e01b815290516003936000936001600160a01b0316926304892d739281830192602092829003018186803b15801561013657600080fd5b505afa15801561014a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061016e91906108c0565b6001600160a01b0316815260208101919091526040016000205460ff166102795760025461027b57600154610227600460009054906101000a90046001600160a01b03166001600160a01b03166304892d736040518163ffffffff1660e01b815260040160206040518083038186803b1580156101ea57600080fd5b505afa1580156101fe573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061022291906108c0565b6104ca565b116102795760405162461bcd60e51b815260206004820152601e60248201527f5472616e7366657248656c7065723a20417070726f7665204572726f722e000060448201526064015b60405180910390fd5b005b600054600160a01b900460ff166102795760405162461bcd60e51b815260206004820152601e60248201527f5472616e7366657248656c7065723a20417070726f7665204572726f722e00006044820152606401610270565b600080fd5b3480156102e557600080fd5b506000546102fa90600160a01b900460ff1681565b60405190151581526020015b60405180910390f35b34801561031b57600080fd5b5061032560015481565b604051908152602001610306565b34801561033f57600080fd5b506102fa61034e3660046108e4565b60036020526000908152604090205460ff1681565b34801561036f57600080fd5b5061032560025481565b34801561038557600080fd5b506102fa6103943660046108e4565b610553565b3480156103a557600080fd5b506102796105d8565b3480156103ba57600080fd5b506102796103c93660046108e4565b61064c565b3480156103da57600080fd5b50610279610698565b3480156103ef57600080fd5b506102796106c9565b34801561040457600080fd5b50610279610413366004610901565b6106f9565b34801561042457600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610306565b34801561045657600080fd5b506102796104653660046108e4565b610728565b34801561047657600080fd5b50600454610432906001600160a01b031681565b34801561049657600080fd5b506102796104a53660046108e4565b610812565b3480156104b657600080fd5b506102796104c536600461091a565b610860565b60048054604051633a60ef2b60e11b81526001600160a01b0384811693820193909352600092909116906374c1de569060240160206040518083038186803b15801561051557600080fd5b505afa158015610529573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061054d919061093c565b92915050565b600080546001600160a01b0316331461057e5760405162461bcd60e51b815260040161027090610955565b60405147906001600160a01b038416908290600081818185875af1925050503d80600081146105c9576040519150601f19603f3d011682016040523d82523d6000602084013e6105ce565b606091505b5090949350505050565b6000546001600160a01b031633146106025760405162461bcd60e51b815260040161027090610955565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106765760405162461bcd60e51b815260040161027090610955565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146106c25760405162461bcd60e51b815260040161027090610955565b6000600155565b6000546001600160a01b031633146106f35760405162461bcd60e51b815260040161027090610955565b43600155565b6000546001600160a01b031633146107235760405162461bcd60e51b815260040161027090610955565b600255565b6000546001600160a01b031633146107525760405162461bcd60e51b815260040161027090610955565b6001600160a01b0381166107b75760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610270565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b0316331461083c5760405162461bcd60e51b815260040161027090610955565b6001600160a01b03166000908152600360205260409020805460ff19166001179055565b6000546001600160a01b0316331461088a5760405162461bcd60e51b815260040161027090610955565b60008054911515600160a01b0260ff60a01b19909216919091179055565b6001600160a01b03811681146108bd57600080fd5b50565b6000602082840312156108d257600080fd5b81516108dd816108a8565b9392505050565b6000602082840312156108f657600080fd5b81356108dd816108a8565b60006020828403121561091357600080fd5b5035919050565b60006020828403121561092c57600080fd5b813580151581146108dd57600080fd5b60006020828403121561094e57600080fd5b5051919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260408201526060019056fea2646970667358221220065e13b984f40d3ed9858a43f711918655f583706bc6ac10421f4979418d87df64736f6c63430008090033