60806040523480156200001157600080fd5b5033604051620000219062000487565b6001600160a01b039091168152602001604051809103906000f0801580156200004e573d6000803e3d6000fd5b506040518060200160405280600081525062000073828260006200007b60201b60201c565b505062000542565b620000868362000160565b6040516001600160a01b038416907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a2600082511180620000c85750805b156200015b5762000159836001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200010c57600080fd5b505afa15801562000121573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000147919062000495565b836200032260201b6200009f1760201c565b505b505050565b62000176816200035160201b620000cb1760201c565b620001d65760405162461bcd60e51b815260206004820152602560248201527f455243313936373a206e657720626561636f6e206973206e6f74206120636f6e6044820152641d1c9858dd60da1b60648201526084015b60405180910390fd5b62000260816001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200021457600080fd5b505afa15801562000229573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200024f919062000495565b6200035160201b620000cb1760201c565b620002c75760405162461bcd60e51b815260206004820152603060248201527f455243313936373a20626561636f6e20696d706c656d656e746174696f6e206960448201526f1cc81b9bdd08184818dbdb9d1c9858dd60821b6064820152608401620001cd565b80620003017fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5060001b6200036060201b620000da1760201c565b80546001600160a01b0319166001600160a01b039290921691909117905550565b60606200034a83836040518060600160405280602781526020016200113f6027913962000363565b9392505050565b6001600160a01b03163b151590565b90565b60606001600160a01b0384163b620003cd5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401620001cd565b600080856001600160a01b031685604051620003ea9190620004ef565b600060405180830381855af49150503d806000811462000427576040519150601f19603f3d011682016040523d82523d6000602084013e6200042c565b606091505b5090925090506200043f82828662000449565b9695505050505050565b606083156200045a5750816200034a565b8251156200046b5782518084602001fd5b8160405162461bcd60e51b8152600401620001cd91906200050d565b6104e28062000c5d83390190565b600060208284031215620004a857600080fd5b81516001600160a01b03811681146200034a57600080fd5b60005b83811015620004dd578181015183820152602001620004c3565b83811115620001595750506000910152565b6000825162000503818460208701620004c0565b9190910192915050565b60208152600082518060208401526200052e816040850160208701620004c0565b601f01601f19169190910160400192915050565b61070b80620005526000396000f3fe6080604052600436106100225760003560e01c8063099af0e91461003957610031565b366100315761002f610059565b005b61002f610059565b34801561004557600080fd5b5061002f610054366004610552565b61006b565b6100696100646100dd565b610185565b565b6001600160a01b0382166100915760405162bcafd560e71b815260040160405180910390fd5b61009b82826101ae565b5050565b60606100c483836040518060600160405280602781526020016106af602791396101ba565b9392505050565b6001600160a01b03163b151590565b90565b60006101107fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d50546001600160a01b031690565b6001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561014857600080fd5b505afa15801561015c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101809190610616565b905090565b3660008037600080366000845af43d6000803e8080156101a4573d6000f35b3d6000fd5b505050565b61009b8282600061029a565b60606101c5846100cb565b6102255760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b60648201526084015b60405180910390fd5b600080856001600160a01b031685604051610240919061065f565b600060405180830381855af49150503d806000811461027b576040519150601f19603f3d011682016040523d82523d6000602084013e610280565b606091505b5091509150610290828286610369565b9695505050505050565b6102a3836103a2565b6040516001600160a01b038416907f1cf3b03a6cf19fa2baba4df148e9dcabedea7f8a5c07840e207e5c089be95d3e90600090a26000825111806102e45750805b156101a957610363836001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561032557600080fd5b505afa158015610339573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061035d9190610616565b8361009f565b50505050565b606083156103785750816100c4565b8251156103885782518084602001fd5b8160405162461bcd60e51b815260040161021c919061067b565b6103ab816100cb565b6104055760405162461bcd60e51b815260206004820152602560248201527f455243313936373a206e657720626561636f6e206973206e6f74206120636f6e6044820152641d1c9858dd60da1b606482015260840161021c565b61047e816001600160a01b0316635c60da1b6040518163ffffffff1660e01b815260040160206040518083038186803b15801561044157600080fd5b505afa158015610455573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104799190610616565b6100cb565b6104e35760405162461bcd60e51b815260206004820152603060248201527f455243313936373a20626561636f6e20696d706c656d656e746174696f6e206960448201526f1cc81b9bdd08184818dbdb9d1c9858dd60821b606482015260840161021c565b7fa3f0ad74e5423aebfd80d3ef4346578335a9a72aeaee59ff6cb3582b35133d5080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038116811461053957600080fd5b50565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561056557600080fd5b823561057081610524565b9150602083013567ffffffffffffffff8082111561058d57600080fd5b818501915085601f8301126105a157600080fd5b8135818111156105b3576105b361053c565b604051601f8201601f19908116603f011681019083821181831017156105db576105db61053c565b816040528281528860208487010111156105f457600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60006020828403121561062857600080fd5b81516100c481610524565b60005b8381101561064e578181015183820152602001610636565b838111156103635750506000910152565b60008251610671818460208701610633565b9190910192915050565b602081526000825180602084015261069a816040850160208701610633565b601f01601f1916919091016040019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220a406bc94357b7d3579bb02dca0b8253f7618a38ab131dc39fcb6c59eb9f326b364736f6c63430008090033608060405234801561001057600080fd5b506040516104e23803806104e283398101604081905261002f91610151565b61003833610047565b61004181610097565b50610181565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6100aa8161014260201b6101a01760201c565b6101205760405162461bcd60e51b815260206004820152603360248201527f5570677261646561626c65426561636f6e3a20696d706c656d656e746174696f60448201527f6e206973206e6f74206120636f6e747261637400000000000000000000000000606482015260840160405180910390fd5b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03163b151590565b60006020828403121561016357600080fd5b81516001600160a01b038116811461017a57600080fd5b9392505050565b610352806101906000396000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80633659cfe61461005c5780635c60da1b14610071578063715018a61461009a5780638da5cb5b146100a2578063f2fde38b146100b3575b600080fd5b61006f61006a3660046102ec565b6100c6565b005b6001546001600160a01b03165b6040516001600160a01b03909116815260200160405180910390f35b61006f61010e565b6000546001600160a01b031661007e565b61006f6100c13660046102ec565b610122565b6100ce6101af565b6100d781610209565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6101166101af565b610120600061029c565b565b61012a6101af565b6001600160a01b0381166101945760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61019d8161029c565b50565b6001600160a01b03163b151590565b6000546001600160a01b031633146101205760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161018b565b610212816101a0565b61027a5760405162461bcd60e51b815260206004820152603360248201527f5570677261646561626c65426561636f6e3a20696d706c656d656e746174696f6044820152721b881a5cc81b9bdd08184818dbdb9d1c9858dd606a1b606482015260840161018b565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156102fe57600080fd5b81356001600160a01b038116811461031557600080fd5b939250505056fea264697066735822122039d1b010d090dec4dacb6aa3f7691c327ed1f8dd151783a2db92c0f1c8af80a664736f6c63430008090033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564