0x6080604052620000126012600a620001f4565b62000023906402540be4006200020c565b6004553480156200003357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506004543360009081526002602052604081208054909190620000999084906200022e565b909155505060045460405190815233906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a362000249565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620001365781600019048211156200011a576200011a620000df565b808516156200012857918102915b93841c9390800290620000fa565b509250929050565b6000826200014f57506001620001ee565b816200015e57506000620001ee565b81600181146200017757600281146200018257620001a2565b6001915050620001ee565b60ff841115620001965762000196620000df565b50506001821b620001ee565b5060208310610133831016604e8410600b8410161715620001c7575081810a620001ee565b620001d38383620000f5565b8060001904821115620001ea57620001ea620000df565b0290505b92915050565b60006200020560ff8416836200013e565b9392505050565b6000816000190483118215151615620002295762000229620000df565b500290565b60008219821115620002445762000244620000df565b500190565b6109c880620002596000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c806370a082311161008c57806395d89b411161006657806395d89b41146100d4578063a9059cbb146101c0578063dd62ed3e146101d3578063f2fde38b1461020c57600080fd5b806370a0823114610174578063715018a61461019d5780638da5cb5b146101a557600080fd5b806306fdde03146100d4578063095ea7b31461010857806318160ddd1461012b57806323b872dd1461013d578063313ce56714610150578063649dab391461015f575b600080fd5b604080518082018252600981526850657065576f6a616b60b81b602082015290516100ff9190610821565b60405180910390f35b61011b610116366004610892565b61021f565b60405190151581526020016100ff565b6004545b6040519081526020016100ff565b61011b61014b3660046108bc565b610235565b604051601281526020016100ff565b61017261016d366004610892565b610287565b005b61012f6101823660046108f8565b6001600160a01b031660009081526002602052604090205490565b6101726102da565b6000546040516001600160a01b0390911681526020016100ff565b61011b6101ce366004610892565b61037e565b61012f6101e136600461091a565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b61017261021a3660046108f8565b61038b565b600061022c3384846104a5565b50600192915050565b60006102428484846105c9565b6001600160a01b03841660009081526003602090815260408083203380855292529091205461027d918691610278908690610963565b6104a5565b5060019392505050565b6000546001600160a01b031633146102cc5760405162461bcd60e51b8152602060048201526003602482015262454e4160e81b60448201526064015b60405180910390fd5b6102d68282610798565b5050565b6000546001600160a01b031633146103345760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600061022c3384846105c9565b6000546001600160a01b031633146103e55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064016102c3565b6001600160a01b03811661044a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016102c3565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166105075760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016102c3565b6001600160a01b0382166105685760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016102c3565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661062d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016102c3565b6001600160a01b03821661068f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016102c3565b6001600160a01b038316600090815260026020526040902054818110156107075760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102c3565b6001600160a01b0380851660009081526002602052604080822085850390559185168152908120805484929061073e90849061097a565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161078a91815260200190565b60405180910390a350505050565b80600460008282546107aa919061097a565b90915550506001600160a01b038216600090815260026020526040812080548392906107d790849061097a565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b600060208083528351808285015260005b8181101561084e57858101830151858201604001528201610832565b81811115610860576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461088d57600080fd5b919050565b600080604083850312156108a557600080fd5b6108ae83610876565b946020939093013593505050565b6000806000606084860312156108d157600080fd5b6108da84610876565b92506108e860208501610876565b9150604084013590509250925092565b60006020828403121561090a57600080fd5b61091382610876565b9392505050565b6000806040838503121561092d57600080fd5b61093683610876565b915061094460208401610876565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000828210156109755761097561094d565b500390565b6000821982111561098d5761098d61094d565b50019056fea2646970667358221220a02f69b56da9aaccbc8d2dcc8e3480366476172dcfebf59cf893580372838c3564736f6c634300080a0033