0x60806040523480156200001157600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620000616009600a620001f0565b6200007190633b9aca0062000208565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620000b46009600a620001f0565b620000c490633b9aca0062000208565b60405190815260200160405180910390a362000222565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000132578160001904821115620001165762000116620000db565b808516156200012457918102915b93841c9390800290620000f6565b509250929050565b6000826200014b57506001620001ea565b816200015a57506000620001ea565b81600181146200017357600281146200017e576200019e565b6001915050620001ea565b60ff841115620001925762000192620000db565b50506001821b620001ea565b5060208310610133831016604e8410600b8410161715620001c3575081810a620001ea565b620001cf8383620000f1565b8060001904821115620001e657620001e6620000db565b0290505b92915050565b60006200020160ff8416836200013a565b9392505050565b8082028115828204841417620001ea57620001ea620000db565b6109b180620002326000396000f3fe608060405234801561001057600080fd5b50600436106100a95760003560e01c806370a082311161007157806370a0823114610140578063715018a6146101695780638da5cb5b1461017357806395d89b411461018e578063a9059cbb146101ae578063dd62ed3e146101c157600080fd5b806306fdde03146100ae578063095ea7b3146100e557806318160ddd1461010857806323b872dd1461011e578063313ce56714610131575b600080fd5b604080518082019091526009815268426173652042616e6b60b81b60208201525b6040516100dc91906106ee565b60405180910390f35b6100f86100f3366004610759565b6101fa565b60405190151581526020016100dc565b610110610211565b6040519081526020016100dc565b6100f861012c366004610783565b610232565b604051600981526020016100dc565b61011061014e3660046107bf565b6001600160a01b031660009081526001602052604090205490565b61017161029b565b005b6000546040516001600160a01b0390911681526020016100dc565b60408051808201909152600481526342414e4b60e01b60208201526100cf565b6100f86101bc366004610759565b610344565b6101106101cf3660046107da565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000610207338484610351565b5060015b92915050565b600061021f6009600a610907565b61022d90633b9aca00610916565b905090565b600061023f848484610475565b610291843361028c85604051806060016040528060288152602001610954602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061064e565b610351565b5060019392505050565b6000546001600160a01b031633146102fa5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610207338484610475565b6001600160a01b0383166103b35760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016102f1565b6001600160a01b0382166104145760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016102f1565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166104d95760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016102f1565b6001600160a01b03821661053b5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016102f1565b6001600160a01b038316600090815260016020526040902054818110156105b35760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102f1565b6105bd828261092d565b6001600160a01b0380861660009081526001602052604080822093909355908516815220546105ec9083610688565b6001600160a01b0380851660008181526001602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906106409086815260200190565b60405180910390a350505050565b600081848411156106725760405162461bcd60e51b81526004016102f191906106ee565b50600061067f848661092d565b95945050505050565b6000806106958385610940565b9050838110156106e75760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016102f1565b9392505050565b60006020808352835180602085015260005b8181101561071c57858101830151858201604001528201610700565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461075457600080fd5b919050565b6000806040838503121561076c57600080fd5b6107758361073d565b946020939093013593505050565b60008060006060848603121561079857600080fd5b6107a18461073d565b92506107af6020850161073d565b9150604084013590509250925092565b6000602082840312156107d157600080fd5b6106e78261073d565b600080604083850312156107ed57600080fd5b6107f68361073d565b91506108046020840161073d565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561085e5781600019048211156108445761084461080d565b8085161561085157918102915b93841c9390800290610828565b509250929050565b6000826108755750600161020b565b816108825750600061020b565b816001811461089857600281146108a2576108be565b600191505061020b565b60ff8411156108b3576108b361080d565b50506001821b61020b565b5060208310610133831016604e8410600b84101617156108e1575081810a61020b565b6108eb8383610823565b80600019048211156108ff576108ff61080d565b029392505050565b60006106e760ff841683610866565b808202811582820484141761020b5761020b61080d565b8181038181111561020b5761020b61080d565b8082018082111561020b5761020b61080d56fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202368ba9ab181cefdfa76e05c9ded9b547942974642b2a3e790947cd7c36498f964736f6c63430008180033