0x608060405234801561001057600080fd5b5061001961001e565b6100bf565b60005460ff16156100605760405162461bcd60e51b815260040180806020018281038252602e815260200180610bdd602e913960400191505060405180910390fd5b610068610077565b6000805460ff19166001179055565b60008054610100600160a81b0319163361010081029190911782556040519091907f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b2364908290a3565b610b0f806100ce6000396000f3fe60806040526004361061008a5760003560e01c80638da5cb5b116100595780638da5cb5b14610176578063b3596f07146101a7578063e30c3978146101ec578063f7453b2c14610201578063fc4d33f91461021657610094565b80630a2b53bf146100995780632dcec770146100e55780636e96dfd71461012c5780638129fc1c1461016157610094565b3661009457600080fd5b600080fd5b3480156100a557600080fd5b506100cc600480360360208110156100bc57600080fd5b50356001600160a01b031661022b565b6040805192835290151560208301528051918290030190f35b3480156100f157600080fd5b506101186004803603602081101561010857600080fd5b50356001600160a01b0316610241565b604080519115158252519081900360200190f35b34801561013857600080fd5b5061015f6004803603602081101561014f57600080fd5b50356001600160a01b0316610253565b005b34801561016d57600080fd5b5061015f610354565b34801561018257600080fd5b5061018b6103ad565b604080516001600160a01b039092168252519081900360200190f35b3480156101b357600080fd5b506101da600480360360208110156101ca57600080fd5b50356001600160a01b03166103c1565b60408051918252519081900360200190f35b3480156101f857600080fd5b5061018b6103d3565b34801561020d57600080fd5b506101186103e2565b34801561022257600080fd5b5061015f6103e7565b600080610237836104de565b915091505b915091565b600061024c826104de565b9392505050565b60005461010090046001600160a01b031633146102a15760405162461bcd60e51b8152600401808060200182810382526022815260200180610a936022913960400191505060405180910390fd5b6001600160a01b038116158015906102c757506001546001600160a01b03828116911614155b6103025760405162461bcd60e51b815260040180806020018281038252604b8152602001806109f9604b913960600191505060405180910390fd5b600180546001600160a01b038381166001600160a01b0319831681179093556040519116919082907fb3d55174552271a4f1aaf36b72f50381e892171636b3fb5447fe00e995e7a37b90600090a35050565b60005460ff16156103965760405162461bcd60e51b815260040180806020018281038252602e815260200180610a44602e913960400191505060405180910390fd5b61039e61085f565b6000805460ff19166001179055565b60005461010090046001600160a01b031681565b60006103cc826104de565b5092915050565b6001546001600160a01b031681565b600181565b6001546001600160a01b031633146104305760405162461bcd60e51b8152600401808060200182810382526025815260200180610ab56025913960400191505060405180910390fd5b60008054600180546001600160a01b03818116610100818102610100600160a81b03198716178088556001600160a01b031990941690945560405194849004821695909493909204169184917f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b236491a36001546040516001600160a01b03918216918316907fb3d55174552271a4f1aaf36b72f50381e892171636b3fb5447fe00e995e7a37b90600090a35050565b6000806000836001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561051c57600080fd5b505afa158015610530573d6000803e3d6000fd5b505050506040513d602081101561054657600080fd5b505190508061055c57600080925092505061023c565b6000846001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561059757600080fd5b505afa1580156105ab573d6000803e3d6000fd5b505050506040513d60208110156105c157600080fd5b50516040805163d21220a760e01b815290519192506000916001600160a01b0388169163d21220a7916004808301926020929190829003018186803b15801561060957600080fd5b505afa15801561061d573d6000803e3d6000fd5b505050506040513d602081101561063357600080fd5b505160408051630240bc6b60e21b8152905191925060009182916001600160a01b038a1691630902f1ac91600480820192606092909190829003018186803b15801561067e57600080fd5b505afa158015610692573d6000803e3d6000fd5b505050506040513d60608110156106a857600080fd5b5080516020909101516dffffffffffffffffffffffffffff918216935016905060006106e6866106e06106db86866108a7565b610909565b9061095b565b9050600080600060019054906101000a90046001600160a01b03166001600160a01b031663ed5cf2dc886040518263ffffffff1660e01b815260040180826001600160a01b031681526020019150506040805180830381600087803b15801561074e57600080fd5b505af1158015610762573d6000803e3d6000fd5b505050506040513d604081101561077857600080fd5b5080516020909101516000805460408051633b573cb760e21b81526001600160a01b038c811660048301528251969850949650929485946101009093049092169263ed5cf2dc926024808301939282900301818787803b1580156107db57600080fd5b505af11580156107ef573d6000803e3d6000fd5b505050506040513d604081101561080557600080fd5b508051602090910151909250905061084261081f83610909565b61083c61082b87610909565b6108368960026108a7565b906108a7565b90610979565b83801561084c5750815b9b509b5050505050505050505050915091565b60008054610100600160a81b0319163361010081029190911782556040519091907f70aea8d848e8a90fb7661b227dc522eb6395c3dac71b63cb59edd5c9899b2364908290a3565b6000826108b657506000610903565b828202828482816108c357fe5b04146109005760405162461bcd60e51b8152600401808060200182810382526021815260200180610a726021913960400191505060405180910390fd5b90505b92915050565b6000600382111561094c575080600160028204015b818110156109465780915060028182858161093557fe5b04018161093e57fe5b04905061091e565b50610956565b8115610956575060015b919050565b600061024c8261097385670de0b6b3a76400006108a7565b90610991565b600061024c670de0b6b3a764000061097385856108a7565b60008082116109e7576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b8183816109f057fe5b04939250505056fe5f73657450656e64696e674f776e65723a204e6577206f77656e722063616e206e6f74206265207a65726f206164647265737320616e64206f776e657220686173206265656e2073657421496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f776f6e6c794f776e65723a2063616c6c6572206973206e6f7420746865206f776e65725f6163636570744f776e65723a204f6e6c7920666f722070656e64696e67206f776e657221a2646970667358221220da068131dcbb453faf37208dd5214d0db38752bed73b1a190da944e3b8bb861164736f6c634300060c0033496e697469616c697a61626c653a20636f6e747261637420697320616c726561647920696e697469616c697a6564