0x608060405234801561001057600080fd5b5060405161069438038061069483398101604081905261002f91610096565b61003833610046565b6001919091556002556100ba565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600080604083850312156100a957600080fd5b505080516020909101519092909150565b6105cb806100c96000396000f3fe608060405234801561001057600080fd5b50600436106100c95760003560e01c806334e7312211610081578063b20d550b1161005b578063b20d550b14610185578063b9ce896b146101ba578063f2fde38b146101c357600080fd5b806334e731221461012d578063715018a6146101555780638da5cb5b1461015d57600080fd5b806317299c04116100b257806317299c041461010957806326232a2e1461011c5780632fee8ba91461012557600080fd5b80630e8d2b18146100ce57806312e8e2c3146100f4575b600080fd5b6100e16100dc3660046104a5565b6101d6565b6040519081526020015b60405180910390f35b6101076101023660046104a5565b61020b565b005b6101076101173660046104a5565b610218565b6100e160015481565b610107610225565b61014061013b3660046104be565b61027a565b604080519283526020830191909152016100eb565b6101076102df565b60005460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016100eb565b6000546101aa9074010000000000000000000000000000000000000000900460ff1681565b60405190151581526020016100eb565b6100e160025481565b6101076101d13660046104e0565b6102f3565b6000806000600254116101ea576000610204565b6064600254846101fa9190610516565b610204919061055a565b9392505050565b6102136103af565b600155565b6102206103af565b600255565b61022d6103af565b600080547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff8116740100000000000000000000000000000000000000009182900460ff1615909102179055565b600080548190819074010000000000000000000000000000000000000000900460ff166102a9576001546102ab565b835b905060008082116102bd5760006102d3565b60646102c98388610516565b6102d3919061055a565b96919550909350505050565b6102e76103af565b6102f16000610430565b565b6102fb6103af565b73ffffffffffffffffffffffffffffffffffffffff81166103a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103ac81610430565b50565b60005473ffffffffffffffffffffffffffffffffffffffff1633146102f1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161039a565b6000805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156104b757600080fd5b5035919050565b600080604083850312156104d157600080fd5b50508035926020909101359150565b6000602082840312156104f257600080fd5b813573ffffffffffffffffffffffffffffffffffffffff8116811461020457600080fd5b8082028115828204841417610554577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b92915050565b600082610590577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b50049056fea2646970667358221220aed336966ed0bb54a97ec92cb54b0c1c5b0aa130c288a5376dd2529ef7d160d364736f6c6343000814003300000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000000000