0x6080604052600436106101f25760003560e01c80635881f3ef1161010d578063a457c2d7116100a0578063ca9ec1991161006f578063ca9ec199146105aa578063dd62ed3e146105c0578063f1d5f51714610606578063f2fde38b14610626578063f872858a1461064657600080fd5b8063a457c2d714610535578063a9059cbb14610555578063c816841b14610575578063c9567bf91461059557600080fd5b80638da5cb5b116100dc5780638da5cb5b146104cd578063914eb66a146104eb57806395d89b4114610500578063a3ca847d1461051557600080fd5b80635881f3ef1461044157806370a0823114610461578063807c2d9c14610497578063844d591c146104ad57600080fd5b8063313ce5671161018557806342a110951161015457806342a11095146103c85780635342acb4146103de5780635453184e1461040e578063557ed1ba1461042e57600080fd5b8063313ce5671461034057806339509351146103625780633eaaf86b146103825780633ecad2711461039857600080fd5b806323b872dd116101c157806323b872dd146102b55780632563ae83146102d557806327c8f835146102f75780632b112e491461032b57600080fd5b806306fdde03146101fe578063095ea7b3146102295780631694505e1461025957806318160ddd1461029657600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610667565b6040516102209190611677565b60405180910390f35b34801561023557600080fd5b506102496102443660046116dd565b6106f9565b6040519015158152602001610220565b34801561026557600080fd5b50600e5461027e9061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610220565b3480156102a257600080fd5b50600c545b604051908152602001610220565b3480156102c157600080fd5b506102496102d0366004611709565b610710565b3480156102e157600080fd5b506102f56102f036600461175f565b61077a565b005b34801561030357600080fd5b5061027e7f000000000000000000000000000000000000000000000000000000000000dead81565b34801561033757600080fd5b506102a76107cb565b34801561034c57600080fd5b5060055460405160ff9091168152602001610220565b34801561036e57600080fd5b5061024961037d3660046116dd565b610815565b34801561038e57600080fd5b506102a7600c5481565b3480156103a457600080fd5b506102496103b336600461177a565b60096020526000908152604090205460ff1681565b3480156103d457600080fd5b506102a7600a5481565b3480156103ea57600080fd5b506102496103f936600461177a565b60086020526000908152604090205460ff1681565b34801561041a57600080fd5b506102f5610429366004611797565b61084b565b34801561043a57600080fd5b50426102a7565b34801561044d57600080fd5b5061027e61045c36600461177a565b61087a565b34801561046d57600080fd5b506102a761047c36600461177a565b6001600160a01b031660009081526006602052604090205490565b3480156104a357600080fd5b506102a7600d5481565b3480156104b957600080fd5b506102f56104c83660046117b0565b610ba0565b3480156104d957600080fd5b506000546001600160a01b031661027e565b3480156104f757600080fd5b506102f5610bf5565b34801561050c57600080fd5b50610213610c6f565b34801561052157600080fd5b506102f5610530366004611797565b610c7e565b34801561054157600080fd5b506102496105503660046116dd565b610cad565b34801561056157600080fd5b506102496105703660046116dd565b610cfc565b34801561058157600080fd5b50600f5461027e906001600160a01b031681565b3480156105a157600080fd5b506102f5610d09565b3480156105b657600080fd5b506102a7600b5481565b3480156105cc57600080fd5b506102a76105db3660046117e5565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b34801561061257600080fd5b506102f5610621366004611797565b610d42565b34801561063257600080fd5b506102f561064136600461177a565b610dc4565b34801561065257600080fd5b50600f5461024990600160a01b900460ff1681565b6060600380546106769061181e565b80601f01602080910402602001604051908101604052809291908181526020018280546106a29061181e565b80156106ef5780601f106106c4576101008083540402835291602001916106ef565b820191906000526020600020905b8154815290600101906020018083116106d257829003601f168201915b5050505050905090565b6000610706338484610eae565b5060015b92915050565b600061071d848484610fd2565b50610770843361076b85604051806060016040528060288152602001611920602891396001600160a01b038a16600090815260076020908152604080832033845290915290205491906112f0565b610eae565b5060019392505050565b6000546001600160a01b031633146107ad5760405162461bcd60e51b81526004016107a490611858565b60405180910390fd5b600f8054911515600160a01b0260ff60a01b19909216919091179055565b7f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b0316600090815260066020526040812054600c546108109161132a565b905090565b3360008181526007602090815260408083206001600160a01b0387168452909152812054909161070691859061076b9086611373565b6000546001600160a01b031633146108755760405162461bcd60e51b81526004016107a490611858565b600b55565b600080546001600160a01b031633146108a55760405162461bcd60e51b81526004016107a490611858565b6000829050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090c919061188d565b6001600160a01b031663e6a4390530836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610959573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097d919061188d565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec919061188d565b91506001600160a01b038216610b4357806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5e919061188d565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610aab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acf919061188d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610b1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b40919061188d565b91505b600f80546001600160a01b038085166001600160a01b03199092168217909255600e80549390921661010002610100600160a81b03199093169290921790556000908152600960205260409020805460ff19166001179055919050565b6000546001600160a01b03163314610bca5760405162461bcd60e51b81526004016107a490611858565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610c1f5760405162461bcd60e51b81526004016107a490611858565b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b6060600480546106769061181e565b6000546001600160a01b03163314610ca85760405162461bcd60e51b81526004016107a490611858565b600a55565b6000610706338461076b85604051806060016040528060258152602001611948602591393360009081526007602090815260408083206001600160a01b038d16845290915290205491906112f0565b6000610770338484610fd2565b6000546001600160a01b03163314610d335760405162461bcd60e51b81526004016107a490611858565b600e805460ff19166001179055565b6000546001600160a01b03163314610d6c5760405162461bcd60e51b81526004016107a490611858565b62e4e1c0811015610dbf5760405162461bcd60e51b815260206004820152601860248201527f4d61782057616c6c6574206d696e2031353030303030302e000000000000000060448201526064016107a4565b600d55565b6000546001600160a01b03163314610dee5760405162461bcd60e51b81526004016107a490611858565b6001600160a01b038116610e535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a4565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610f105760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107a4565b6001600160a01b038216610f715760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107a4565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b0384166110385760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107a4565b6001600160a01b03831661109a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107a4565b6001600160a01b03831660009081526009602052604090205460ff161580156110d157506000546001600160a01b03858116911614155b1561112657600e5460ff1615156000036111265760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016107a4565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600690915291909120546111789184906112f0565b6001600160a01b038516600090815260066020908152604080832093909355600890529081205460ff16806111c557506001600160a01b03841660009081526008602052604090205460ff165b6111d9576111d48585856113d2565b6111db565b825b600f54909150600160a01b900460ff16801561121057506001600160a01b03841660009081526009602052604090205460ff16155b801561122a57506000546001600160a01b03858116911614155b1561126657600d5461125b82611255876001600160a01b031660009081526006602052604090205490565b90611373565b111561126657600080fd5b6001600160a01b0384166000908152600660205260409020546112899082611373565b6001600160a01b0380861660008181526006602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112dd9085815260200190565b60405180910390a3506001949350505050565b600081848411156113145760405162461bcd60e51b81526004016107a49190611677565b50600061132184866118c0565b95945050505050565b600061136c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112f0565b9392505050565b60008061138083856118d3565b90508381101561136c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107a4565b6001600160a01b038316600090815260096020526040812054819060ff161561141c57611415606461140f600a548661158a90919063ffffffff16565b9061160c565b905061145a565b6001600160a01b03841660009081526009602052604090205460ff161561145a57611457606461140f600b548661158a90919063ffffffff16565b90505b8015611580576001600160a01b037f000000000000000000000000000000000000000000000000000000000000dead166000908152600660205260409020546114a39082611373565b7f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b031660009081526006602090815260409182902092909255518281527f57062e7b32439d519dac7dc305789d854ff08a3b14878d3f76614e40e994826c910160405180910390a17f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161157791815260200190565b60405180910390a35b611321838261132a565b60008260000361159c5750600061070a565b60006115a883856118e6565b9050826115b585836118fd565b1461136c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107a4565b600061136c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361166a5760405162461bcd60e51b81526004016107a49190611677565b50600061132184866118fd565b600060208083528351808285015260005b818110156116a457858101830151858201604001528201611688565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146116da57600080fd5b50565b600080604083850312156116f057600080fd5b82356116fb816116c5565b946020939093013593505050565b60008060006060848603121561171e57600080fd5b8335611729816116c5565b92506020840135611739816116c5565b929592945050506040919091013590565b8035801515811461175a57600080fd5b919050565b60006020828403121561177157600080fd5b61136c8261174a565b60006020828403121561178c57600080fd5b813561136c816116c5565b6000602082840312156117a957600080fd5b5035919050565b600080604083850312156117c357600080fd5b82356117ce816116c5565b91506117dc6020840161174a565b90509250929050565b600080604083850312156117f857600080fd5b8235611803816116c5565b91506020830135611813816116c5565b809150509250929050565b600181811c9082168061183257607f821691505b60208210810361185257634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561189f57600080fd5b815161136c816116c5565b634e487b7160e01b600052601160045260246000fd5b8181038181111561070a5761070a6118aa565b8082018082111561070a5761070a6118aa565b808202811582820484141761070a5761070a6118aa565b60008261191a57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220652d51a0c4d42afcb78e4aa873fdd91d7f98c7767282d4fcb7dcaf0ad8bc4a7064736f6c63430008110033
0x60e0604052600860a09081526744c49b6e6764616960c01b60c0526003906200002990826200048d565b50604080518082019091526006815265e7ad89e5be8560d01b60208201526004906200005690826200048d565b506005805460ff1916600990811790915561dead6080526001600a9081556063600b556200008591906200066e565b6200009490620f424062000686565b600c55600554620000aa9060ff16600a6200066e565b620000b89061753062000686565b600d55600e805460ff19169055600f805460ff60a01b1916600160a01b179055348015620000e557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200017f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a59190620006a0565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002199190620006a0565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000267573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028d9190620006a0565b600f80546001600160a01b0319166001600160a01b03928316179055600e8054610100600160a81b03191661010084841681029190911791829055600c5430600090815260076020908152604080832094909504909516815291909352908120919091556001906008906200030a6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260088452828120805486166001908117909155600f5490921681526009909352908220805490931617909155600c5490600690620003763390565b6001600160a01b03168152602081019190915260400160002055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600c54604051620003d991815260200190565b60405180910390a350620006cb565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200041357607f821691505b6020821081036200043457634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200048857600081815260208120601f850160051c81016020861015620004635750805b601f850160051c820191505b8181101562000484578281556001016200046f565b5050505b505050565b81516001600160401b03811115620004a957620004a9620003e8565b620004c181620004ba8454620003fe565b846200043a565b602080601f831160018114620004f95760008415620004e05750858301515b600019600386901b1c1916600185901b17855562000484565b600085815260208120601f198616915b828110156200052a5788860151825594840194600190910190840162000509565b5085821015620005495787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620005b057816000190482111562000594576200059462000559565b80851615620005a257918102915b93841c939080029062000574565b509250929050565b600082620005c95750600162000668565b81620005d85750600062000668565b8160018114620005f15760028114620005fc576200061c565b600191505062000668565b60ff84111562000610576200061062000559565b50506001821b62000668565b5060208310610133831016604e8410600b841016171562000641575081810a62000668565b6200064d83836200056f565b806000190482111562000664576200066462000559565b0290505b92915050565b60006200067f60ff841683620005b8565b9392505050565b808202811582820484141762000668576200066862000559565b600060208284031215620006b357600080fd5b81516001600160a01b03811681146200067f57600080fd5b6080516119a26200070360003960008181610309015281816107cd0152818161146a015281816114a5015261151401526119a26000f3fe6080604052600436106101f25760003560e01c80635881f3ef1161010d578063a457c2d7116100a0578063ca9ec1991161006f578063ca9ec199146105aa578063dd62ed3e146105c0578063f1d5f51714610606578063f2fde38b14610626578063f872858a1461064657600080fd5b8063a457c2d714610535578063a9059cbb14610555578063c816841b14610575578063c9567bf91461059557600080fd5b80638da5cb5b116100dc5780638da5cb5b146104cd578063914eb66a146104eb57806395d89b4114610500578063a3ca847d1461051557600080fd5b80635881f3ef1461044157806370a0823114610461578063807c2d9c14610497578063844d591c146104ad57600080fd5b8063313ce5671161018557806342a110951161015457806342a11095146103c85780635342acb4146103de5780635453184e1461040e578063557ed1ba1461042e57600080fd5b8063313ce5671461034057806339509351146103625780633eaaf86b146103825780633ecad2711461039857600080fd5b806323b872dd116101c157806323b872dd146102b55780632563ae83146102d557806327c8f835146102f75780632b112e491461032b57600080fd5b806306fdde03146101fe578063095ea7b3146102295780631694505e1461025957806318160ddd1461029657600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610667565b6040516102209190611677565b60405180910390f35b34801561023557600080fd5b506102496102443660046116dd565b6106f9565b6040519015158152602001610220565b34801561026557600080fd5b50600e5461027e9061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610220565b3480156102a257600080fd5b50600c545b604051908152602001610220565b3480156102c157600080fd5b506102496102d0366004611709565b610710565b3480156102e157600080fd5b506102f56102f036600461175f565b61077a565b005b34801561030357600080fd5b5061027e7f000000000000000000000000000000000000000000000000000000000000000081565b34801561033757600080fd5b506102a76107cb565b34801561034c57600080fd5b5060055460405160ff9091168152602001610220565b34801561036e57600080fd5b5061024961037d3660046116dd565b610815565b34801561038e57600080fd5b506102a7600c5481565b3480156103a457600080fd5b506102496103b336600461177a565b60096020526000908152604090205460ff1681565b3480156103d457600080fd5b506102a7600a5481565b3480156103ea57600080fd5b506102496103f936600461177a565b60086020526000908152604090205460ff1681565b34801561041a57600080fd5b506102f5610429366004611797565b61084b565b34801561043a57600080fd5b50426102a7565b34801561044d57600080fd5b5061027e61045c36600461177a565b61087a565b34801561046d57600080fd5b506102a761047c36600461177a565b6001600160a01b031660009081526006602052604090205490565b3480156104a357600080fd5b506102a7600d5481565b3480156104b957600080fd5b506102f56104c83660046117b0565b610ba0565b3480156104d957600080fd5b506000546001600160a01b031661027e565b3480156104f757600080fd5b506102f5610bf5565b34801561050c57600080fd5b50610213610c6f565b34801561052157600080fd5b506102f5610530366004611797565b610c7e565b34801561054157600080fd5b506102496105503660046116dd565b610cad565b34801561056157600080fd5b506102496105703660046116dd565b610cfc565b34801561058157600080fd5b50600f5461027e906001600160a01b031681565b3480156105a157600080fd5b506102f5610d09565b3480156105b657600080fd5b506102a7600b5481565b3480156105cc57600080fd5b506102a76105db3660046117e5565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b34801561061257600080fd5b506102f5610621366004611797565b610d42565b34801561063257600080fd5b506102f561064136600461177a565b610dc4565b34801561065257600080fd5b50600f5461024990600160a01b900460ff1681565b6060600380546106769061181e565b80601f01602080910402602001604051908101604052809291908181526020018280546106a29061181e565b80156106ef5780601f106106c4576101008083540402835291602001916106ef565b820191906000526020600020905b8154815290600101906020018083116106d257829003601f168201915b5050505050905090565b6000610706338484610eae565b5060015b92915050565b600061071d848484610fd2565b50610770843361076b85604051806060016040528060288152602001611920602891396001600160a01b038a16600090815260076020908152604080832033845290915290205491906112f0565b610eae565b5060019392505050565b6000546001600160a01b031633146107ad5760405162461bcd60e51b81526004016107a490611858565b60405180910390fd5b600f8054911515600160a01b0260ff60a01b19909216919091179055565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316600090815260066020526040812054600c546108109161132a565b905090565b3360008181526007602090815260408083206001600160a01b0387168452909152812054909161070691859061076b9086611373565b6000546001600160a01b031633146108755760405162461bcd60e51b81526004016107a490611858565b600b55565b600080546001600160a01b031633146108a55760405162461bcd60e51b81526004016107a490611858565b6000829050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108e8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090c919061188d565b6001600160a01b031663e6a4390530836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610959573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061097d919061188d565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa1580156109c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ec919061188d565b91506001600160a01b038216610b4357806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5e919061188d565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610aab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610acf919061188d565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610b1c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b40919061188d565b91505b600f80546001600160a01b038085166001600160a01b03199092168217909255600e80549390921661010002610100600160a81b03199093169290921790556000908152600960205260409020805460ff19166001179055919050565b6000546001600160a01b03163314610bca5760405162461bcd60e51b81526004016107a490611858565b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6000546001600160a01b03163314610c1f5760405162461bcd60e51b81526004016107a490611858565b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b6060600480546106769061181e565b6000546001600160a01b03163314610ca85760405162461bcd60e51b81526004016107a490611858565b600a55565b6000610706338461076b85604051806060016040528060258152602001611948602591393360009081526007602090815260408083206001600160a01b038d16845290915290205491906112f0565b6000610770338484610fd2565b6000546001600160a01b03163314610d335760405162461bcd60e51b81526004016107a490611858565b600e805460ff19166001179055565b6000546001600160a01b03163314610d6c5760405162461bcd60e51b81526004016107a490611858565b62e4e1c0811015610dbf5760405162461bcd60e51b815260206004820152601860248201527f4d61782057616c6c6574206d696e2031353030303030302e000000000000000060448201526064016107a4565b600d55565b6000546001600160a01b03163314610dee5760405162461bcd60e51b81526004016107a490611858565b6001600160a01b038116610e535760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107a4565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610f105760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107a4565b6001600160a01b038216610f715760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107a4565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60006001600160a01b0384166110385760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107a4565b6001600160a01b03831661109a5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107a4565b6001600160a01b03831660009081526009602052604090205460ff161580156110d157506000546001600160a01b03858116911614155b1561112657600e5460ff1615156000036111265760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016107a4565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600690915291909120546111789184906112f0565b6001600160a01b038516600090815260066020908152604080832093909355600890529081205460ff16806111c557506001600160a01b03841660009081526008602052604090205460ff165b6111d9576111d48585856113d2565b6111db565b825b600f54909150600160a01b900460ff16801561121057506001600160a01b03841660009081526009602052604090205460ff16155b801561122a57506000546001600160a01b03858116911614155b1561126657600d5461125b82611255876001600160a01b031660009081526006602052604090205490565b90611373565b111561126657600080fd5b6001600160a01b0384166000908152600660205260409020546112899082611373565b6001600160a01b0380861660008181526006602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112dd9085815260200190565b60405180910390a3506001949350505050565b600081848411156113145760405162461bcd60e51b81526004016107a49190611677565b50600061132184866118c0565b95945050505050565b600061136c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112f0565b9392505050565b60008061138083856118d3565b90508381101561136c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107a4565b6001600160a01b038316600090815260096020526040812054819060ff161561141c57611415606461140f600a548661158a90919063ffffffff16565b9061160c565b905061145a565b6001600160a01b03841660009081526009602052604090205460ff161561145a57611457606461140f600b548661158a90919063ffffffff16565b90505b8015611580576001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000166000908152600660205260409020546114a39082611373565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031660009081526006602090815260409182902092909255518281527f57062e7b32439d519dac7dc305789d854ff08a3b14878d3f76614e40e994826c910160405180910390a17f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161157791815260200190565b60405180910390a35b611321838261132a565b60008260000361159c5750600061070a565b60006115a883856118e6565b9050826115b585836118fd565b1461136c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107a4565b600061136c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361166a5760405162461bcd60e51b81526004016107a49190611677565b50600061132184866118fd565b600060208083528351808285015260005b818110156116a457858101830151858201604001528201611688565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146116da57600080fd5b50565b600080604083850312156116f057600080fd5b82356116fb816116c5565b946020939093013593505050565b60008060006060848603121561171e57600080fd5b8335611729816116c5565b92506020840135611739816116c5565b929592945050506040919091013590565b8035801515811461175a57600080fd5b919050565b60006020828403121561177157600080fd5b61136c8261174a565b60006020828403121561178c57600080fd5b813561136c816116c5565b6000602082840312156117a957600080fd5b5035919050565b600080604083850312156117c357600080fd5b82356117ce816116c5565b91506117dc6020840161174a565b90509250929050565b600080604083850312156117f857600080fd5b8235611803816116c5565b91506020830135611813816116c5565b809150509250929050565b600181811c9082168061183257607f821691505b60208210810361185257634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561189f57600080fd5b815161136c816116c5565b634e487b7160e01b600052601160045260246000fd5b8181038181111561070a5761070a6118aa565b8082018082111561070a5761070a6118aa565b808202811582820484141761070a5761070a6118aa565b60008261191a57634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220652d51a0c4d42afcb78e4aa873fdd91d7f98c7767282d4fcb7dcaf0ad8bc4a7064736f6c63430008110033