0x60c060405234801561001057600080fd5b506040516107e33803806107e383398101604081905261002f916100bb565b6100383361004f565b6001600160a01b039182166080521660a0526100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146100b657600080fd5b919050565b600080604083850312156100ce57600080fd5b6100d78361009f565b91506100e56020840161009f565b90509250929050565b60805160a0516106c261012160003960008181610133015261022301526000818161010c01526101f401526106c26000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063c58833eb1161005b578063c58833eb14610107578063d1af1ca91461012e578063f2fde38b14610155578063f7a647e11461016857600080fd5b80632944626e1461008d57806355db3c2b146100c5578063715018a6146100da5780638da5cb5b146100e2575b600080fd5b6100b061009b3660046104ac565b60016020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6100d86100d33660046104fd565b61017b565b005b6100d8610297565b6000546001600160a01b03165b6040516001600160a01b0390911681526020016100bc565b6100ef7f000000000000000000000000000000000000000000000000000000000000000081565b6100ef7f000000000000000000000000000000000000000000000000000000000000000081565b6100d86101633660046104ac565b6102ab565b6100d86101763660046105c6565b610340565b3360009081526001602052604090205460ff166101c4576040517fccc626ec00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517f5cffe9de0000000000000000000000000000000000000000000000000000000081526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690635cffe9de9061024f9033907f000000000000000000000000000000000000000000000000000000000000000090879087906004016105fd565b6020604051808303816000875af115801561026e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610292919061066f565b505050565b61029f6103ce565b6102a96000610428565b565b6102b36103ce565b6001600160a01b0381166103345760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b61033d81610428565b50565b6103486103ce565b6001600160a01b03821660009081526001602052604090205460ff161515811515146103ca576001600160a01b038216600081815260016020908152604091829020805460ff191685151590811790915591519182527fdd5e3f7b6a3050e541d3357c6c34331d3384b536b3dad09e668181ce93f15478910160405180910390a25b5050565b6000546001600160a01b031633146102a95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161032b565b600080546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80356001600160a01b03811681146104a757600080fd5b919050565b6000602082840312156104be57600080fd5b6104c782610490565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000806040838503121561051057600080fd5b82359150602083013567ffffffffffffffff8082111561052f57600080fd5b818501915085601f83011261054357600080fd5b813581811115610555576105556104ce565b604051601f8201601f19908116603f0116810190838211818310171561057d5761057d6104ce565b8160405282815288602084870101111561059657600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b801515811461033d57600080fd5b600080604083850312156105d957600080fd5b6105e283610490565b915060208301356105f2816105b8565b809150509250929050565b60006001600160a01b038087168352602081871681850152856040850152608060608501528451915081608085015260005b8281101561064b5785810182015185820160a00152810161062f565b5050600060a0828501015260a0601f19601f83011684010191505095945050505050565b60006020828403121561068157600080fd5b81516104c7816105b856fea264697066735822122027c1d4498778230643d1921ca3e2310af18970819739da69772f6107558af11f64736f6c63430008110033000000000000000000000000b639d208bcf0589d54fac24e655c79ec529762b800000000000000000000000040d16fc0246ad3160ccc09b8d0d3a2cd28ae6c2f