0x60806040526002805460ff60a01b191690556a52b7d2dcc80cd2e400000060035534801561002c57600080fd5b506002805474010000000000000000000000000000000000000000336001600160a01b0319909216821760ff60a01b191617909155600354600091825260208290526040822055610d4290819061008390396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c8063a44b47f7116100ad578063e3d670d711610071578063e3d670d71461034d578063f2fde38b14610373578063f41e60c514610399578063f5074f41146103b8578063f851a440146103de57610121565b8063a44b47f7146102c5578063a53ba959146102cd578063a9059cbb146102d5578063c6ceb50b14610301578063dd62ed3e1461031f57610121565b80633045aaf3116100f45780633045aaf3146101e25780635c6581651461025f57806370a082311461028d5780638052474d146102b357806383197ef0146102bb57610121565b8063095ea7b31461012657806318160ddd146101665780631a88f3061461018057806323b872dd146101ac575b600080fd5b6101526004803603604081101561013c57600080fd5b506001600160a01b038135169060200135610402565b604080519115158252519081900360200190f35b61016e610474565b60408051918252519081900360200190f35b6101526004803603604081101561019657600080fd5b506001600160a01b03813516906020013561047a565b610152600480360360608110156101c257600080fd5b506001600160a01b038135811691602081013590911690604001356104d4565b6101ea610548565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561022457818101518382015260200161020c565b50505050905090810190601f1680156102515780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61016e6004803603604081101561027557600080fd5b506001600160a01b0381358116916020013516610567565b61016e600480360360208110156102a357600080fd5b50356001600160a01b0316610584565b6101ea61059f565b6102c36105c7565b005b61016e610622565b610152610628565b610152600480360360408110156102eb57600080fd5b506001600160a01b038135169060200135610638565b610309610699565b6040805160ff9092168252519081900360200190f35b61016e6004803603604081101561033557600080fd5b506001600160a01b038135811691602001351661069e565b61016e6004803603602081101561036357600080fd5b50356001600160a01b03166106c9565b6102c36004803603602081101561038957600080fd5b50356001600160a01b03166106db565b6102c3600480360360208110156103af57600080fd5b503515156107a5565b6102c3600480360360208110156103ce57600080fd5b50356001600160a01b0316610810565b6103e6610869565b604080516001600160a01b039092168252519081900360200190f35b600254600090600160a01b900460ff16610463576040805162461bcd60e51b815260206004820152601d60248201527f5472616e736665727320617265206e6f7420616c6c6f77656420796574000000604482015290519081900360640190fd5b61046d8383610878565b9392505050565b60035490565b6002546000906001600160a01b031633146104ca576040805162461bcd60e51b815260206004820152601a6024820152600080516020610cee833981519152604482015290519081900360640190fd5b61046d8383610934565b600254600090600160a01b900460ff16610535576040805162461bcd60e51b815260206004820152601d60248201527f5472616e736665727320617265206e6f7420616c6c6f77656420796574000000604482015290519081900360640190fd5b610540848484610a34565b949350505050565b6040518060400160405280600381526020016221a9a760e91b81525081565b600160209081526000928352604080842090915290825290205481565b6001600160a01b031660009081526020819052604090205490565b6040518060400160405280600c81526020016b436f696e7374616e74696e6560a01b81525081565b6002546001600160a01b03163314610614576040805162461bcd60e51b815260206004820152601a6024820152600080516020610cee833981519152604482015290519081900360640190fd5b6002546001600160a01b0316ff5b60035481565b600254600160a01b900460ff1681565b600254600090600160a01b900460ff166104ca576040805162461bcd60e51b815260206004820152601d60248201527f5472616e736665727320617265206e6f7420616c6c6f77656420796574000000604482015290519081900360640190fd5b601281565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60006020819052908152604090205481565b6002546001600160a01b03163314610728576040805162461bcd60e51b815260206004820152601a6024820152600080516020610cee833981519152604482015290519081900360640190fd5b6001600160a01b038116610783576040805162461bcd60e51b815260206004820152601760248201527f4e65772061646d696e2063616e2774206265206e756c6c000000000000000000604482015290519081900360640190fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6002546001600160a01b031633146107f2576040805162461bcd60e51b815260206004820152601a6024820152600080516020610cee833981519152604482015290519081900360640190fd5b60028054911515600160a01b0260ff60a01b19909216919091179055565b6002546001600160a01b0316331461085d576040805162461bcd60e51b815260206004820152601a6024820152600080516020610cee833981519152604482015290519081900360640190fd5b806001600160a01b0316ff5b6002546001600160a01b031681565b60006001600160a01b0383166108cd576040805162461bcd60e51b81526020600482015260156024820152741cdc195b99195c8818d85b89dd081899481b9d5b1b605a1b604482015290519081900360640190fd5b3360008181526001602090815260408083206001600160a01b03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a350600192915050565b60006001600160a01b038316610986576040805162461bcd60e51b815260206004820152601260248201527110d85b89dd081cd95b99081d1bc81b9d5b1b60721b604482015290519081900360640190fd5b336000908152602081905260409020546109a6908363ffffffff610cc016565b33600090815260208190526040808220929092556001600160a01b038516815220546109d8908363ffffffff610cd216565b6001600160a01b038416600081815260208181526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b60006001600160a01b038316610a86576040805162461bcd60e51b815260206004820152601260248201527110d85b89dd081cd95b99081d1bc81b9d5b1b60721b604482015290519081900360640190fd5b6001600160a01b038316301415610add576040805162461bcd60e51b815260206004820152601660248201527510d85b89dd081cd95b99081d1bc818dbdb9d1c9858dd60521b604482015290519081900360640190fd5b6001600160a01b03841660009081526001602090815260408083203384529091529020548083111580610b1857506001600160a01b03851633145b610b69576040805162461bcd60e51b815260206004820152601d60248201527f4e6f7420616c6c6f77656420746f2073656e642074686174206d756368000000604482015290519081900360640190fd5b6001600160a01b038416600090815260208190526040902054610b92908463ffffffff610cd216565b6001600160a01b038086166000908152602081905260408082209390935590871681522054610bc7908463ffffffff610cc016565b6001600160a01b03861660009081526020818152604080832093909355600181528282203383529052205460001914801590610c0c57506001600160a01b0385163314155b15610c6a576001600160a01b0385166000908152600160209081526040808320338452909152902054610c45908463ffffffff610cc016565b6001600160a01b03861660009081526001602090815260408083203384529091529020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3506001949350505050565b600082821115610ccc57fe5b50900390565b6000828201838110801590610ce75750828110155b61046d57fefe46756e6374696f6e20726573657276656420746f2061646d696e000000000000a265627a7a723058201c049d7ddf82c8d1f1ad4f6508cc2f67a44ec685ff9f72c7206dd0a9d93b108464736f6c634300050a0032