0x6080604052600436106101d15760003560e01c80638da5cb5b116100f7578063c024666811610095578063dd62ed3e11610064578063dd62ed3e14610568578063e0bf7fd1146105ae578063f2fde38b146105de578063f8b45b05146105fe57600080fd5b8063c0246668146104f8578063c18bc19514610518578063c876d0b914610538578063c8c8ebe41461055257600080fd5b8063a457c2d7116100d1578063a457c2d71461046e578063a9059cbb1461048e578063b62496f5146104ae578063bbc0c742146104de57600080fd5b80638da5cb5b1461041b57806395d89b41146104395780639a7a23d61461044e57600080fd5b806327c8f8351161016f57806370a082311161013e57806370a082311461039b578063715018a6146103d15780637571336a146103e65780638a8c523c1461040657600080fd5b806327c8f83514610315578063313ce5671461032b578063395093511461034757806349bd5a5e1461036757600080fd5b80631694505e116101ab5780631694505e1461026857806318160ddd146102b4578063203e727e146102d357806323b872dd146102f557600080fd5b806306fdde03146101dd578063095ea7b31461020857806310d5de531461023857600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f2610614565b6040516101ff91906114b4565b60405180910390f35b34801561021457600080fd5b50610228610223366004611525565b6106a6565b60405190151581526020016101ff565b34801561024457600080fd5b5061022861025336600461154f565b600b6020526000908152604090205460ff1681565b34801561027457600080fd5b5061029c7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b0390911681526020016101ff565b3480156102c057600080fd5b506002545b6040519081526020016101ff565b3480156102df57600080fd5b506102f36102ee36600461156a565b6106bc565b005b34801561030157600080fd5b50610228610310366004611583565b6107a2565b34801561032157600080fd5b5061029c61dead81565b34801561033757600080fd5b50604051601281526020016101ff565b34801561035357600080fd5b50610228610362366004611525565b61080b565b34801561037357600080fd5b5061029c7f000000000000000000000000bb99378d176d2dfe38e786aca5b256c1d09970f481565b3480156103a757600080fd5b506102c56103b636600461154f565b6001600160a01b031660009081526020819052604090205490565b3480156103dd57600080fd5b506102f3610841565b3480156103f257600080fd5b506102f36104013660046115bf565b6108b5565b34801561041257600080fd5b506102f361090a565b34801561042757600080fd5b506005546001600160a01b031661029c565b34801561044557600080fd5b506101f2610943565b34801561045a57600080fd5b506102f36104693660046115bf565b610952565b34801561047a57600080fd5b50610228610489366004611525565b610a4c565b34801561049a57600080fd5b506102286104a9366004611525565b610a9b565b3480156104ba57600080fd5b506102286104c936600461154f565b600d6020526000908152604090205460ff1681565b3480156104ea57600080fd5b506008546102289060ff1681565b34801561050457600080fd5b506102f36105133660046115bf565b610aa8565b34801561052457600080fd5b506102f361053336600461156a565b610b31565b34801561054457600080fd5b50600a546102289060ff1681565b34801561055e57600080fd5b506102c560065481565b34801561057457600080fd5b506102c56105833660046115fb565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156105ba57600080fd5b506102286105c936600461154f565b600c6020526000908152604090205460ff1681565b3480156105ea57600080fd5b506102f36105f936600461154f565b610c02565b34801561060a57600080fd5b506102c560075481565b6060600380546106239061162e565b80601f016020809104026020016040519081016040528092919081815260200182805461064f9061162e565b801561069c5780601f106106715761010080835404028352916020019161069c565b820191906000526020600020905b81548152906001019060200180831161067f57829003601f168201915b5050505050905090565b60006106b3338484610d53565b50600192915050565b6005546001600160a01b031633146106ef5760405162461bcd60e51b81526004016106e690611669565b60405180910390fd5b670de0b6b3a76400006103e861070460025490565b61070f9060016116b4565b61071991906116d3565b61072391906116d3565b81101561078a5760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b60648201526084016106e6565b61079c81670de0b6b3a76400006116b4565b60065550565b60006107af848484610e78565b61080184336107fc856040518060600160405280602881526020016117d3602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190611371565b610d53565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916106b39185906107fc9086610ced565b6005546001600160a01b0316331461086b5760405162461bcd60e51b81526004016106e690611669565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b031633146108df5760405162461bcd60e51b81526004016106e690611669565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6005546001600160a01b031633146109345760405162461bcd60e51b81526004016106e690611669565b6008805460ff19166001179055565b6060600480546106239061162e565b6005546001600160a01b0316331461097c5760405162461bcd60e51b81526004016106e690611669565b7f000000000000000000000000bb99378d176d2dfe38e786aca5b256c1d09970f46001600160a01b0316826001600160a01b03161415610a245760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b657250616972730000000000000060648201526084016106e6565b6001600160a01b0382166000908152600d60205260409020805460ff19168215151790555050565b60006106b333846107fc856040518060600160405280602581526020016117fb602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190611371565b60006106b3338484610e78565b6005546001600160a01b03163314610ad25760405162461bcd60e51b81526004016106e690611669565b6001600160a01b0382166000818152600c6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610b5b5760405162461bcd60e51b81526004016106e690611669565b670de0b6b3a76400006103e8610b7060025490565b610b7b9060056116b4565b610b8591906116d3565b610b8f91906116d3565b811015610bea5760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b60648201526084016106e6565b610bfc81670de0b6b3a76400006116b4565b60075550565b6005546001600160a01b03163314610c2c5760405162461bcd60e51b81526004016106e690611669565b6001600160a01b038116610c915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e6565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b600080610cfa83856116f5565b905083811015610d4c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e6565b9392505050565b6001600160a01b038316610db55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106e6565b6001600160a01b038216610e165760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106e6565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610e9e5760405162461bcd60e51b81526004016106e69061170d565b6001600160a01b038216610ec45760405162461bcd60e51b81526004016106e690611752565b80610eda57610ed5838360006113ab565b505050565b6005546001600160a01b03848116911614801590610f0657506005546001600160a01b03838116911614155b8015610f1a57506001600160a01b03821615155b8015610f3157506001600160a01b03821661dead14155b156113665760085460ff16610fc4576001600160a01b0383166000908152600c602052604090205460ff1680610f7f57506001600160a01b0382166000908152600c602052604090205460ff165b610fc45760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016106e6565b6005546001600160a01b0383811691161480159061101457507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0316826001600160a01b031614155b801561105257507f000000000000000000000000bb99378d176d2dfe38e786aca5b256c1d09970f46001600160a01b0316826001600160a01b031614155b15611100573260009081526009602052604090205443116110ed5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016106e6565b3260009081526009602052604090204390555b6001600160a01b0383166000908152600d602052604090205460ff16801561114157506001600160a01b0382166000908152600b602052604090205460ff16155b15611225576006548111156111b65760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b60648201526084016106e6565b6007546001600160a01b0383166000908152602081905260409020546111dc90836116f5565b11156112205760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016106e6565b611366565b6001600160a01b0382166000908152600d602052604090205460ff16801561126657506001600160a01b0383166000908152600b602052604090205460ff16155b156112dc576006548111156112205760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b60648201526084016106e6565b6001600160a01b0382166000908152600b602052604090205460ff16611366576007546001600160a01b03831660009081526020819052604090205461132290836116f5565b11156113665760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016106e6565b610ed58383836113ab565b600081848411156113955760405162461bcd60e51b81526004016106e691906114b4565b5060006113a28486611795565b95945050505050565b6001600160a01b0383166113d15760405162461bcd60e51b81526004016106e69061170d565b6001600160a01b0382166113f75760405162461bcd60e51b81526004016106e690611752565b611434816040518060600160405280602681526020016117ad602691396001600160a01b0386166000908152602081905260409020549190611371565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546114639082610ced565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610e6b565b600060208083528351808285015260005b818110156114e1578581018301518582016040015282016114c5565b818111156114f3576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461152057600080fd5b919050565b6000806040838503121561153857600080fd5b61154183611509565b946020939093013593505050565b60006020828403121561156157600080fd5b610d4c82611509565b60006020828403121561157c57600080fd5b5035919050565b60008060006060848603121561159857600080fd5b6115a184611509565b92506115af60208501611509565b9150604084013590509250925092565b600080604083850312156115d257600080fd5b6115db83611509565b9150602083013580151581146115f057600080fd5b809150509250929050565b6000806040838503121561160e57600080fd5b61161783611509565b915061162560208401611509565b90509250929050565b600181811c9082168061164257607f821691505b6020821081141561166357634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156116ce576116ce61169e565b500290565b6000826116f057634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156117085761170861169e565b500190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6000828210156117a7576117a761169e565b50039056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220aba3408cb81486c26e3ffb2dadb6fdb4c3e449ddbfa92cb1c411e33fc9ee44fb64736f6c63430008090033
0x60c060405260088054600160ff199182168117909255600a805490911690911790553480156200002e57600080fd5b50604080518082018252600b81526a54726173682050616e646160a81b60208083019182528351808501909452600a845269545241534850414e444160b01b908401528151919291620000849160039162000614565b5080516200009a90600490602084019062000614565b5050506000620000af6200038660201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350737a250d5630b4cf539739df2c5dacb4c659f2488d6200011f8160016200038a565b6200013e620001366005546001600160a01b031690565b60016200038a565b6200015d620001556005546001600160a01b031690565b600162000404565b6001600160a01b03811660808190526040805163c45a015560e01b8152905163c45a015591600480820192602092909190829003018186803b158015620001a357600080fd5b505afa158015620001b8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001de9190620006ba565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200022757600080fd5b505afa1580156200023c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002629190620006ba565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b158015620002ab57600080fd5b505af1158015620002c0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002e69190620006ba565b6001600160a01b031660a0819052620003019060016200038a565b60a0516001600160a01b03166000908152600d60205260409020805460ff191660011790556c01431e0fae6d7217caa00000006103e86200034482601e620006fb565b6200035091906200071d565b6006556103e86200036382601e620006fb565b6200036f91906200071d565b6007556200037e3382620004ae565b505062000798565b3390565b6005546001600160a01b03163314620003d95760405162461bcd60e51b815260206004820181905260248201526000805160206200202883398151915260448201526064015b60405180910390fd5b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6005546001600160a01b031633146200044f5760405162461bcd60e51b81526020600482018190526024820152600080516020620020288339815191526044820152606401620003d0565b6001600160a01b0382166000818152600c6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620005065760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620003d0565b6200052281600254620005aa60201b62000ced1790919060201c565b6002556001600160a01b038216600090815260208181526040909120546200055591839062000ced620005aa821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b600080620005b9838562000740565b9050838110156200060d5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401620003d0565b9392505050565b82805462000622906200075b565b90600052602060002090601f01602090048101928262000646576000855562000691565b82601f106200066157805160ff191683800117855562000691565b8280016001018555821562000691579182015b828111156200069157825182559160200191906001019062000674565b506200069f929150620006a3565b5090565b5b808211156200069f5760008155600101620006a4565b600060208284031215620006cd57600080fd5b81516001600160a01b03811681146200060d57600080fd5b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615620007185762000718620006e5565b500290565b6000826200073b57634e487b7160e01b600052601260045260246000fd5b500490565b60008219821115620007565762000756620006e5565b500190565b600181811c908216806200077057607f821691505b602082108114156200079257634e487b7160e01b600052602260045260246000fd5b50919050565b60805160a051611855620007d3600039600081816103790152818161097e015261101d01526000818161027a0152610fdf01526118556000f3fe6080604052600436106101d15760003560e01c80638da5cb5b116100f7578063c024666811610095578063dd62ed3e11610064578063dd62ed3e14610568578063e0bf7fd1146105ae578063f2fde38b146105de578063f8b45b05146105fe57600080fd5b8063c0246668146104f8578063c18bc19514610518578063c876d0b914610538578063c8c8ebe41461055257600080fd5b8063a457c2d7116100d1578063a457c2d71461046e578063a9059cbb1461048e578063b62496f5146104ae578063bbc0c742146104de57600080fd5b80638da5cb5b1461041b57806395d89b41146104395780639a7a23d61461044e57600080fd5b806327c8f8351161016f57806370a082311161013e57806370a082311461039b578063715018a6146103d15780637571336a146103e65780638a8c523c1461040657600080fd5b806327c8f83514610315578063313ce5671461032b578063395093511461034757806349bd5a5e1461036757600080fd5b80631694505e116101ab5780631694505e1461026857806318160ddd146102b4578063203e727e146102d357806323b872dd146102f557600080fd5b806306fdde03146101dd578063095ea7b31461020857806310d5de531461023857600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101f2610614565b6040516101ff91906114b4565b60405180910390f35b34801561021457600080fd5b50610228610223366004611525565b6106a6565b60405190151581526020016101ff565b34801561024457600080fd5b5061022861025336600461154f565b600b6020526000908152604090205460ff1681565b34801561027457600080fd5b5061029c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101ff565b3480156102c057600080fd5b506002545b6040519081526020016101ff565b3480156102df57600080fd5b506102f36102ee36600461156a565b6106bc565b005b34801561030157600080fd5b50610228610310366004611583565b6107a2565b34801561032157600080fd5b5061029c61dead81565b34801561033757600080fd5b50604051601281526020016101ff565b34801561035357600080fd5b50610228610362366004611525565b61080b565b34801561037357600080fd5b5061029c7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103a757600080fd5b506102c56103b636600461154f565b6001600160a01b031660009081526020819052604090205490565b3480156103dd57600080fd5b506102f3610841565b3480156103f257600080fd5b506102f36104013660046115bf565b6108b5565b34801561041257600080fd5b506102f361090a565b34801561042757600080fd5b506005546001600160a01b031661029c565b34801561044557600080fd5b506101f2610943565b34801561045a57600080fd5b506102f36104693660046115bf565b610952565b34801561047a57600080fd5b50610228610489366004611525565b610a4c565b34801561049a57600080fd5b506102286104a9366004611525565b610a9b565b3480156104ba57600080fd5b506102286104c936600461154f565b600d6020526000908152604090205460ff1681565b3480156104ea57600080fd5b506008546102289060ff1681565b34801561050457600080fd5b506102f36105133660046115bf565b610aa8565b34801561052457600080fd5b506102f361053336600461156a565b610b31565b34801561054457600080fd5b50600a546102289060ff1681565b34801561055e57600080fd5b506102c560065481565b34801561057457600080fd5b506102c56105833660046115fb565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b3480156105ba57600080fd5b506102286105c936600461154f565b600c6020526000908152604090205460ff1681565b3480156105ea57600080fd5b506102f36105f936600461154f565b610c02565b34801561060a57600080fd5b506102c560075481565b6060600380546106239061162e565b80601f016020809104026020016040519081016040528092919081815260200182805461064f9061162e565b801561069c5780601f106106715761010080835404028352916020019161069c565b820191906000526020600020905b81548152906001019060200180831161067f57829003601f168201915b5050505050905090565b60006106b3338484610d53565b50600192915050565b6005546001600160a01b031633146106ef5760405162461bcd60e51b81526004016106e690611669565b60405180910390fd5b670de0b6b3a76400006103e861070460025490565b61070f9060016116b4565b61071991906116d3565b61072391906116d3565b81101561078a5760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b60648201526084016106e6565b61079c81670de0b6b3a76400006116b4565b60065550565b60006107af848484610e78565b61080184336107fc856040518060600160405280602881526020016117d3602891396001600160a01b038a1660009081526001602090815260408083203384529091529020549190611371565b610d53565b5060019392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916106b39185906107fc9086610ced565b6005546001600160a01b0316331461086b5760405162461bcd60e51b81526004016106e690611669565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b031633146108df5760405162461bcd60e51b81526004016106e690611669565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6005546001600160a01b031633146109345760405162461bcd60e51b81526004016106e690611669565b6008805460ff19166001179055565b6060600480546106239061162e565b6005546001600160a01b0316331461097c5760405162461bcd60e51b81526004016106e690611669565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161415610a245760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b657250616972730000000000000060648201526084016106e6565b6001600160a01b0382166000908152600d60205260409020805460ff19168215151790555050565b60006106b333846107fc856040518060600160405280602581526020016117fb602591393360009081526001602090815260408083206001600160a01b038d1684529091529020549190611371565b60006106b3338484610e78565b6005546001600160a01b03163314610ad25760405162461bcd60e51b81526004016106e690611669565b6001600160a01b0382166000818152600c6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b03163314610b5b5760405162461bcd60e51b81526004016106e690611669565b670de0b6b3a76400006103e8610b7060025490565b610b7b9060056116b4565b610b8591906116d3565b610b8f91906116d3565b811015610bea5760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b60648201526084016106e6565b610bfc81670de0b6b3a76400006116b4565b60075550565b6005546001600160a01b03163314610c2c5760405162461bcd60e51b81526004016106e690611669565b6001600160a01b038116610c915760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016106e6565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b600080610cfa83856116f5565b905083811015610d4c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e6565b9392505050565b6001600160a01b038316610db55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106e6565b6001600160a01b038216610e165760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106e6565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610e9e5760405162461bcd60e51b81526004016106e69061170d565b6001600160a01b038216610ec45760405162461bcd60e51b81526004016106e690611752565b80610eda57610ed5838360006113ab565b505050565b6005546001600160a01b03848116911614801590610f0657506005546001600160a01b03838116911614155b8015610f1a57506001600160a01b03821615155b8015610f3157506001600160a01b03821661dead14155b156113665760085460ff16610fc4576001600160a01b0383166000908152600c602052604090205460ff1680610f7f57506001600160a01b0382166000908152600c602052604090205460ff165b610fc45760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016106e6565b6005546001600160a01b0383811691161480159061101457507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614155b801561105257507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614155b15611100573260009081526009602052604090205443116110ed5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016106e6565b3260009081526009602052604090204390555b6001600160a01b0383166000908152600d602052604090205460ff16801561114157506001600160a01b0382166000908152600b602052604090205460ff16155b15611225576006548111156111b65760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b60648201526084016106e6565b6007546001600160a01b0383166000908152602081905260409020546111dc90836116f5565b11156112205760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016106e6565b611366565b6001600160a01b0382166000908152600d602052604090205460ff16801561126657506001600160a01b0383166000908152600b602052604090205460ff16155b156112dc576006548111156112205760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b60648201526084016106e6565b6001600160a01b0382166000908152600b602052604090205460ff16611366576007546001600160a01b03831660009081526020819052604090205461132290836116f5565b11156113665760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016106e6565b610ed58383836113ab565b600081848411156113955760405162461bcd60e51b81526004016106e691906114b4565b5060006113a28486611795565b95945050505050565b6001600160a01b0383166113d15760405162461bcd60e51b81526004016106e69061170d565b6001600160a01b0382166113f75760405162461bcd60e51b81526004016106e690611752565b611434816040518060600160405280602681526020016117ad602691396001600160a01b0386166000908152602081905260409020549190611371565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546114639082610ced565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101610e6b565b600060208083528351808285015260005b818110156114e1578581018301518582016040015282016114c5565b818111156114f3576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461152057600080fd5b919050565b6000806040838503121561153857600080fd5b61154183611509565b946020939093013593505050565b60006020828403121561156157600080fd5b610d4c82611509565b60006020828403121561157c57600080fd5b5035919050565b60008060006060848603121561159857600080fd5b6115a184611509565b92506115af60208501611509565b9150604084013590509250925092565b600080604083850312156115d257600080fd5b6115db83611509565b9150602083013580151581146115f057600080fd5b809150509250929050565b6000806040838503121561160e57600080fd5b61161783611509565b915061162560208401611509565b90509250929050565b600181811c9082168061164257607f821691505b6020821081141561166357634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156116ce576116ce61169e565b500290565b6000826116f057634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156117085761170861169e565b500190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6000828210156117a7576117a761169e565b50039056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220aba3408cb81486c26e3ffb2dadb6fdb4c3e449ddbfa92cb1c411e33fc9ee44fb64736f6c634300080900334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572