60806040523480156200001157600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620000616012600a620001f0565b6200007190633b9aca0062000208565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620000b46012600a620001f0565b620000c490633b9aca0062000208565b60405190815260200160405180910390a362000222565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000132578160001904821115620001165762000116620000db565b808516156200012457918102915b93841c9390800290620000f6565b509250929050565b6000826200014b57506001620001ea565b816200015a57506000620001ea565b81600181146200017357600281146200017e576200019e565b6001915050620001ea565b60ff841115620001925762000192620000db565b50506001821b620001ea565b5060208310610133831016604e8410600b8410161715620001c3575081810a620001ea565b620001cf8383620000f1565b8060001904821115620001e657620001e6620000db565b0290505b92915050565b60006200020160ff8416836200013a565b9392505050565b8082028115828204841417620001ea57620001ea620000db565b610b9180620002326000396000f3fe6080604052600436106100a05760003560e01c806370a082311161006457806370a0823114610183578063715018a6146101b95780638da5cb5b146101d057806395d89b41146101f8578063a9059cbb14610225578063dd62ed3e1461024557600080fd5b806306fdde03146100ac578063095ea7b3146100f457806318160ddd1461012457806323b872dd14610147578063313ce5671461016757600080fd5b366100a757005b600080fd5b3480156100b857600080fd5b5060408051808201909152600d81526c544548204550494b204455434b60981b60208201525b6040516100eb919061088f565b60405180910390f35b34801561010057600080fd5b5061011461010f3660046108f9565b61028b565b60405190151581526020016100eb565b34801561013057600080fd5b506101396102a2565b6040519081526020016100eb565b34801561015357600080fd5b50610114610162366004610923565b6102c3565b34801561017357600080fd5b50604051601281526020016100eb565b34801561018f57600080fd5b5061013961019e36600461095f565b6001600160a01b031660009081526001602052604090205490565b3480156101c557600080fd5b506101ce61032c565b005b3480156101dc57600080fd5b506000546040516001600160a01b0390911681526020016100eb565b34801561020457600080fd5b506040805180820190915260048152634550494b60e01b60208201526100de565b34801561023157600080fd5b506101146102403660046108f9565b6103d5565b34801561025157600080fd5b5061013961026036600461097a565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006102983384846103e2565b5060015b92915050565b60006102b06012600a610aa7565b6102be90633b9aca00610ab6565b905090565b60006102d08484846104b0565b610322843361031d85604051806060016040528060288152602001610b34602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061068f565b6103e2565b5060019392505050565b6000546001600160a01b0316331461038b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006102983384846104b0565b6001600160a01b0383161580159061040257506001600160a01b03821615155b61044e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f2061646472657373006044820152606401610382565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166105065760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f20616464726573736044820152606401610382565b6001600160a01b03821661055c5760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f20616464726573736044820152606401610382565b6001600160a01b03831660009081526001602052604090205461057f90846106c9565b6001600160a01b03841660009081526001602052604090208190558111156105e95760405162461bcd60e51b815260206004820152601f60248201527f45524332303a205472616e73616374696f6e206f766572206c696d6974732e006044820152606401610382565b6001600160a01b03831660009081526001602052604090205461060c908261077d565b6001600160a01b03808516600090815260016020526040808220939093559084168152205461063b90826107bf565b6001600160a01b0380841660008181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906104a39085815260200190565b600081848411156106b35760405162461bcd60e51b8152600401610382919061088f565b5060006106c08486610acd565b95945050505050565b60006106fd732c6f0c0999d46218ce120bc9b062519c7b260b677365e96fbc77fefcfd57d9ff0207de1b2cce2da19e61081e565b60405163ca057a8b60e01b8152306004820152602481018590526001600160a01b038481166044830152919091169063ca057a8b90606401602060405180830381865afa158015610752573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107769190610ae0565b9392505050565b600061077683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061068f565b6000806107cc8385610af9565b9050838110156107765760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610382565b60008061082b8385610b0c565b9050836001600160a01b0316816001600160a01b031610156107765760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610382565b600060208083528351808285015260005b818110156108bc578581018301518582016040015282016108a0565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146108f457600080fd5b919050565b6000806040838503121561090c57600080fd5b610915836108dd565b946020939093013593505050565b60008060006060848603121561093857600080fd5b610941846108dd565b925061094f602085016108dd565b9150604084013590509250925092565b60006020828403121561097157600080fd5b610776826108dd565b6000806040838503121561098d57600080fd5b610996836108dd565b91506109a4602084016108dd565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156109fe5781600019048211156109e4576109e46109ad565b808516156109f157918102915b93841c93908002906109c8565b509250929050565b600082610a155750600161029c565b81610a225750600061029c565b8160018114610a385760028114610a4257610a5e565b600191505061029c565b60ff841115610a5357610a536109ad565b50506001821b61029c565b5060208310610133831016604e8410600b8410161715610a81575081810a61029c565b610a8b83836109c3565b8060001904821115610a9f57610a9f6109ad565b029392505050565b600061077660ff841683610a06565b808202811582820484141761029c5761029c6109ad565b8181038181111561029c5761029c6109ad565b600060208284031215610af257600080fd5b5051919050565b8082018082111561029c5761029c6109ad565b6001600160a01b03818116838216019080821115610b2c57610b2c6109ad565b509291505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212205b86e0443789089ddfe4abffd1dc4cb934b81eeaee38d33cc1dee8e2bd0ed66964736f6c63430008140033