0x60806040526002805460ff60a01b191690556000600381905560048190556005819055600681905560078190556008819055600981905580546001600160a01b031916331790556109ee806100556000396000f3fe6080604052600436106100c25760003560e01c80639e0cea051161007f578063d4e9329211610059578063d4e93292146101ff578063f2fde38b14610214578063f7adf75b14610247578063fc0c546a1461025c576100c2565b80639e0cea05146101cd578063a6f2ae3a146101e2578063af468682146101ea576100c2565b8063158ef93e146100cd5780634042b66f146100f6578063439f5ac21461011d578063518ab2a81461013257806386489ba9146101475780638da5cb5b1461019c575b6100cb33610271565b005b3480156100d957600080fd5b506100e261042c565b604080519115158252519081900360200190f35b34801561010257600080fd5b5061010b61043c565b60408051918252519081900360200190f35b34801561012957600080fd5b5061010b610442565b34801561013e57600080fd5b5061010b6104a4565b34801561015357600080fd5b506100e2600480360360c081101561016a57600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060808101359060a001356104aa565b3480156101a857600080fd5b506101b1610669565b604080516001600160a01b039092168252519081900360200190f35b3480156101d957600080fd5b5061010b610678565b6100e261067e565b3480156101f657600080fd5b5061010b61068f565b34801561020b57600080fd5b506100e2610695565b34801561022057600080fd5b506100e26004803603602081101561023757600080fd5b50356001600160a01b03166106d6565b34801561025357600080fd5b506100e2610713565b34801561026857600080fd5b506101b1610870565b600061027b610442565b116102b8576040805162461bcd60e51b8152602060048201526008602482015267151a5b594813dd5d60c21b604482015290519081900360640190fd5b6006546102e26007546102d66005543461087f90919063ffffffff16565b9063ffffffff6108e116565b10610326576040805162461bcd60e51b815260206004820152600f60248201526e12185c9910d85c081c995858da1959608a1b604482015290519081900360640190fd5b600061033d6005543461087f90919063ffffffff16565b60098054600101905560078054820190556008805434908101909155604080516001600160a01b03861681526020810192909252818101839052519192507f1cbc5ab135991bd2b6a4b034a04aa2aa086dac1371cb9b16b8b5e2ed6b036bed919081900360600190a16001546040805163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b1580156103fc57600080fd5b505af1158015610410573d6000803e3d6000fd5b505050506040513d602081101561042657600080fd5b50505050565b600254600160a01b900460ff1681565b60085481565b60004261045c6004546003546108e190919063ffffffff16565b11801561046a575042600354105b1561049d576104964261048a6004546003546108e190919063ffffffff16565b9063ffffffff61093b16565b90506104a1565b5060005b90565b60075481565b600254600090600160a01b900460ff1615610502576040805162461bcd60e51b8152602060048201526013602482015272185b1c9958591e481a5b9a5d1a585b1a5e9959606a1b604482015290519081900360640190fd5b6002805460ff60a01b1916600160a01b179055600385905560048481556005849055600180546001600160a01b03808b166001600160a01b031990921691909117918290556040805163313ce56760e01b815290516105c194939092169263313ce567928282019260209290829003018186803b15801561058257600080fd5b505afa158015610596573d6000803e3d6000fd5b505050506040513d60208110156105ac57600080fd5b5051839060ff16600a0a63ffffffff61087f16565b6006819055600280546001600160a01b0319166001600160a01b0389811691909117909155600154604080516340c10f1960e01b81523060048201526024810194909452519116916340c10f199160448083019260209291908290030181600087803b15801561063057600080fd5b505af1158015610644573d6000803e3d6000fd5b505050506040513d602081101561065a57600080fd5b50600198975050505050505050565b6000546001600160a01b031681565b60095481565b600061068933610271565b50600190565b60035481565b6002546040516000916001600160a01b0316904780156108fc029184818181858888f193505050501580156106ce573d6000803e3d6000fd5b506001905090565b600080546001600160a01b031633146106ee57600080fd5b50600080546001600160a01b0383166001600160a01b03199091161790556001919050565b60004261072d6004546003546108e190919063ffffffff16565b1061077f576040805162461bcd60e51b815260206004820152601760248201527f50726553616c65206973206e6f7420656e64207965742e000000000000000000604482015290519081900360640190fd5b600154604080516370a0823160e01b815230600482015290516001600160a01b03909216916342966c689183916370a0823191602480820192602092909190829003018186803b1580156107d257600080fd5b505afa1580156107e6573d6000803e3d6000fd5b505050506040513d60208110156107fc57600080fd5b5051604080516001600160e01b031960e085901b16815260048101929092525160248083019260209291908290030181600087803b15801561083d57600080fd5b505af1158015610851573d6000803e3d6000fd5b505050506040513d602081101561086757600080fd5b50600191505090565b6001546001600160a01b031681565b60008261088e575060006108db565b8282028284828161089b57fe5b04146108d85760405162461bcd60e51b81526004018080602001828103825260218152602001806109996021913960400191505060405180910390fd5b90505b92915050565b6000828201838110156108d8576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b600082821115610992576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b5090039056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a72315820023154410a65d53631dd4c70eb81f482ec4d7d726d610c834c15fb0fef06209364736f6c63430005110032