0x6080604052600436106101445760003560e01c8063715018a6116100b657806395d89b411161006f57806395d89b411461035e578063a9059cbb1461038a578063a9f721b0146103aa578063bf474bed146103bf578063c876d0b9146103d5578063dd62ed3e146103ef57600080fd5b8063715018a6146102ca57806374e4867e146102df5780637d1db4a5146102f45780638bcea9391461030a5780638da5cb5b1461032a5780638f9a55c01461034857600080fd5b806323b872dd1161010857806323b872dd14610224578063313ce567146102445780634087582f1461026057806346a3fc281461026a57806358fa63ca1461027f57806370a082311461029457600080fd5b806303fd2a451461015057806306fdde0314610183578063095ea7b3146101bb5780630faee56f146101eb57806318160ddd1461020f57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5061016661dead81565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561018f57600080fd5b506040805180820190915260068152654372616e676560d01b60208201525b60405161017a919061164e565b3480156101c757600080fd5b506101db6101d63660046116b1565b610435565b604051901515815260200161017a565b3480156101f757600080fd5b5061020160115481565b60405190815260200161017a565b34801561021b57600080fd5b5061020161044c565b34801561023057600080fd5b506101db61023f3660046116dd565b61046c565b34801561025057600080fd5b506040516012815260200161017a565b6102686104d5565b005b34801561027657600080fd5b50610268610827565b34801561028b57600080fd5b50610166600081565b3480156102a057600080fd5b506102016102af36600461171e565b6001600160a01b031660009081526001602052604090205490565b3480156102d657600080fd5b506102686108e0565b3480156102eb57600080fd5b50610268610954565b34801561030057600080fd5b50610201600e5481565b34801561031657600080fd5b50601354610166906001600160a01b031681565b34801561033657600080fd5b506000546001600160a01b0316610166565b34801561035457600080fd5b50610201600f5481565b34801561036a57600080fd5b5060408051808201909152600381526243524760e81b60208201526101ae565b34801561039657600080fd5b506101db6103a53660046116b1565b6109ac565b3480156103b657600080fd5b506102686109b9565b3480156103cb57600080fd5b5061020160105481565b3480156103e157600080fd5b506005546101db9060ff1681565b3480156103fb57600080fd5b5061020161040a36600461173b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000610442338484610a56565b5060015b92915050565b600061045a6012600a61186e565b610467906298968061187d565b905090565b6000610479848484610b7a565b6104cb84336104c685604051806060016040528060288152602001611a1f602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061126d565b610a56565b5060019392505050565b6000546001600160a01b031633146105085760405162461bcd60e51b81526004016104ff90611894565b60405180910390fd5b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117825561054f9130919061054290600a61186e565b6104c6906298968061187d565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906118c9565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610628573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061064c91906118c9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610699573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106bd91906118c9565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7194730610705816001600160a01b031660009081526001602052604090205490565b60008061071a6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610782573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107a791906118e6565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610800573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108249190611914565b50565b6000546001600160a01b031633146108515760405162461bcd60e51b81526004016104ff90611894565b61085d6012600a61186e565b61086a906298968061187d565b600e556108796012600a61186e565b610886906298968061187d565b600f556005805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108c06012600a61186e565b6108cd906298968061187d565b60405190815260200160405180910390a1565b6000546001600160a01b0316331461090a5760405162461bcd60e51b81526004016104ff90611894565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60055461010090046001600160a01b0316336001600160a01b03161461097957600080fd5b30600090815260016020526040902054801561099857610998816112a7565b4780156109a8576109a881611421565b5050565b6000610442338484610b7a565b6000546001600160a01b031633146109e35760405162461bcd60e51b81526004016104ff90611894565b601354600160a01b900460ff1615610a3d5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104ff565b6013805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610ab85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104ff565b6001600160a01b038216610b195760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104ff565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bde5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104ff565b6001600160a01b038216610c405760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104ff565b60008111610ca25760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104ff565b6001600160a01b03831660009081526003602052604090205460ff16158015610ce457506001600160a01b03821660009081526003602052604090205460ff16155b15610d3857601354600160a01b900460ff16610d385760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b60448201526064016104ff565b600080610d4d6000546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610d7c57506000546001600160a01b03858116911614155b15611120576001600160a01b0385163014610dc057610dbd6064610db7600a54600d5411610dac57600654610db0565b6008545b869061149f565b90611528565b91505b60055460ff1615610ea5576012546001600160a01b03858116911614801590610df757506013546001600160a01b03858116911614155b15610ea557326000908152600460205260409020544311610e925760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016104ff565b3260009081526004602052604090204390555b6013546001600160a01b038681169116148015610ed057506012546001600160a01b03858116911614155b8015610ef557506001600160a01b03841660009081526003602052604090205460ff16155b15610fdd57600e54831115610f4c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104ff565b600f5483610f6f866001600160a01b031660009081526001602052604090205490565b610f799190611936565b1115610fc75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104ff565b600d8054906000610fd783611949565b91905055505b6013546001600160a01b03858116911614801561100357506001600160a01b0385163014155b15611054576001600160a01b03851660009081526003602052604090205460ff161561102c5750815b6110516064610db7600b54600d541161104757600754610db0565b600954869061149f565b91505b30600090815260016020526040902054601354600160a81b900460ff1615801561108b57506013546001600160a01b038681169116145b80156110a05750601354600160b01b900460ff165b80156110ad575060105481115b80156110bc5750600c54600d54115b80156110e157506001600160a01b03861660009081526003602052604090205460ff16155b1561111e576111036110fe856110f98460115461156a565b61156a565b6112a7565b47662386f26fc1000081111561111c5761111c47611421565b505b505b811561119a5730600090815260016020526040902054611140908361157f565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111919086815260200190565b60405180910390a35b6111c66111a78285611962565b6001600160a01b038716600090815260016020526040902054906115de565b6001600160a01b03861660009081526001602052604090205561120b6111ec84846115de565b6001600160a01b0386166000908152600160205260409020549061157f565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61125586866115de565b60405190815260200160405180910390a35050505050565b600081848411156112915760405162461bcd60e51b81526004016104ff919061164e565b50600061129e8486611962565b95945050505050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106112ef576112ef611975565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611348573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061136c91906118c9565b8160018151811061137f5761137f611975565b6001600160a01b0392831660209182029290920101526012546113a59130911684610a56565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906113de90859060009086903090429060040161198b565b600060405180830381600087803b1580156113f857600080fd5b505af115801561140c573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b61dead600090815260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d5461145a9083611936565b60055460405191925061010090046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561149a573d6000803e3d6000fd5b505050565b6000826000036114b157506000610446565b60006114bd838561187d565b9050826114ca85836119fc565b146115215760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104ff565b9392505050565b600061152183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611620565b60008183116115795782611521565b50919050565b60008061158c8385611936565b9050838110156115215760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104ff565b600061152183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061126d565b600081836116415760405162461bcd60e51b81526004016104ff919061164e565b50600061129e84866119fc565b600060208083528351808285015260005b8181101561167b5785810183015185820160400152820161165f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461082457600080fd5b600080604083850312156116c457600080fd5b82356116cf8161169c565b946020939093013593505050565b6000806000606084860312156116f257600080fd5b83356116fd8161169c565b9250602084013561170d8161169c565b929592945050506040919091013590565b60006020828403121561173057600080fd5b81356115218161169c565b6000806040838503121561174e57600080fd5b82356117598161169c565b915060208301356117698161169c565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117c55781600019048211156117ab576117ab611774565b808516156117b857918102915b93841c939080029061178f565b509250929050565b6000826117dc57506001610446565b816117e957506000610446565b81600181146117ff576002811461180957611825565b6001915050610446565b60ff84111561181a5761181a611774565b50506001821b610446565b5060208310610133831016604e8410600b8410161715611848575081810a610446565b611852838361178a565b806000190482111561186657611866611774565b029392505050565b600061152160ff8416836117cd565b808202811582820484141761044657610446611774565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118db57600080fd5b81516115218161169c565b6000806000606084860312156118fb57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561192657600080fd5b8151801515811461152157600080fd5b8082018082111561044657610446611774565b60006001820161195b5761195b611774565b5060010190565b8181038181111561044657610446611774565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119db5784516001600160a01b0316835293830193918301916001016119b6565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611a1957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201b1ff54ebd45212e8a0aab14fea52053ab4f55dfc159c89f206eb56be867137264736f6c63430008130033
0x608060405260056006556005600755600060085560006009556014600a556014600b556005600c556000600d5560646012600a6200003e919062000398565b6200004d9062989680620003b0565b6200005a906002620003b0565b620000669190620003ca565b600e556064620000796012600a62000398565b620000889062989680620003b0565b62000095906002620003b0565b620000a19190620003ca565b600f55612710620000b56012600a62000398565b620000c49062989680620003b0565b620000d1906005620003b0565b620000dd9190620003ca565b6010819055620000ef90600c620003b0565b6011556013805461ffff60a81b191690553480156200010d57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060058054610100600160a81b03191674b283dc1fb24d1c09a366bf267a7a0ff69045aad600179055620001856012600a62000398565b620001949062989680620003b0565b336000908152600160208190526040822092909255600390620001bf6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905530815260039093528183208054851660019081179091556005546101009004909116835291208054909216179055620002233390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200025d6012600a62000398565b6200026c9062989680620003b0565b60405190815260200160405180910390a3620003ed565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002da578160001904821115620002be57620002be62000283565b80851615620002cc57918102915b93841c93908002906200029e565b509250929050565b600082620002f35750600162000392565b81620003025750600062000392565b81600181146200031b5760028114620003265762000346565b600191505062000392565b60ff8411156200033a576200033a62000283565b50506001821b62000392565b5060208310610133831016604e8410600b84101617156200036b575081810a62000392565b62000377838362000299565b80600019048211156200038e576200038e62000283565b0290505b92915050565b6000620003a960ff841683620002e2565b9392505050565b808202811582820484141762000392576200039262000283565b600082620003e857634e487b7160e01b600052601260045260246000fd5b500490565b611a7c80620003fd6000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100b657806395d89b411161006f57806395d89b411461035e578063a9059cbb1461038a578063a9f721b0146103aa578063bf474bed146103bf578063c876d0b9146103d5578063dd62ed3e146103ef57600080fd5b8063715018a6146102ca57806374e4867e146102df5780637d1db4a5146102f45780638bcea9391461030a5780638da5cb5b1461032a5780638f9a55c01461034857600080fd5b806323b872dd1161010857806323b872dd14610224578063313ce567146102445780634087582f1461026057806346a3fc281461026a57806358fa63ca1461027f57806370a082311461029457600080fd5b806303fd2a451461015057806306fdde0314610183578063095ea7b3146101bb5780630faee56f146101eb57806318160ddd1461020f57600080fd5b3661014b57005b600080fd5b34801561015c57600080fd5b5061016661dead81565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561018f57600080fd5b506040805180820190915260068152654372616e676560d01b60208201525b60405161017a919061164e565b3480156101c757600080fd5b506101db6101d63660046116b1565b610435565b604051901515815260200161017a565b3480156101f757600080fd5b5061020160115481565b60405190815260200161017a565b34801561021b57600080fd5b5061020161044c565b34801561023057600080fd5b506101db61023f3660046116dd565b61046c565b34801561025057600080fd5b506040516012815260200161017a565b6102686104d5565b005b34801561027657600080fd5b50610268610827565b34801561028b57600080fd5b50610166600081565b3480156102a057600080fd5b506102016102af36600461171e565b6001600160a01b031660009081526001602052604090205490565b3480156102d657600080fd5b506102686108e0565b3480156102eb57600080fd5b50610268610954565b34801561030057600080fd5b50610201600e5481565b34801561031657600080fd5b50601354610166906001600160a01b031681565b34801561033657600080fd5b506000546001600160a01b0316610166565b34801561035457600080fd5b50610201600f5481565b34801561036a57600080fd5b5060408051808201909152600381526243524760e81b60208201526101ae565b34801561039657600080fd5b506101db6103a53660046116b1565b6109ac565b3480156103b657600080fd5b506102686109b9565b3480156103cb57600080fd5b5061020160105481565b3480156103e157600080fd5b506005546101db9060ff1681565b3480156103fb57600080fd5b5061020161040a36600461173b565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000610442338484610a56565b5060015b92915050565b600061045a6012600a61186e565b610467906298968061187d565b905090565b6000610479848484610b7a565b6104cb84336104c685604051806060016040528060288152602001611a1f602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061126d565b610a56565b5060019392505050565b6000546001600160a01b031633146105085760405162461bcd60e51b81526004016104ff90611894565b60405180910390fd5b601280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117825561054f9130919061054290600a61186e565b6104c6906298968061187d565b601260009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c691906118c9565b6001600160a01b031663c9c6539630601260009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610628573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061064c91906118c9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015610699573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106bd91906118c9565b601380546001600160a01b039283166001600160a01b03199091161790556012541663f305d7194730610705816001600160a01b031660009081526001602052604090205490565b60008061071a6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610782573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906107a791906118e6565b505060135460125460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610800573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108249190611914565b50565b6000546001600160a01b031633146108515760405162461bcd60e51b81526004016104ff90611894565b61085d6012600a61186e565b61086a906298968061187d565b600e556108796012600a61186e565b610886906298968061187d565b600f556005805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6108c06012600a61186e565b6108cd906298968061187d565b60405190815260200160405180910390a1565b6000546001600160a01b0316331461090a5760405162461bcd60e51b81526004016104ff90611894565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60055461010090046001600160a01b0316336001600160a01b03161461097957600080fd5b30600090815260016020526040902054801561099857610998816112a7565b4780156109a8576109a881611421565b5050565b6000610442338484610b7a565b6000546001600160a01b031633146109e35760405162461bcd60e51b81526004016104ff90611894565b601354600160a01b900460ff1615610a3d5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104ff565b6013805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610ab85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104ff565b6001600160a01b038216610b195760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104ff565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bde5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104ff565b6001600160a01b038216610c405760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104ff565b60008111610ca25760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104ff565b6001600160a01b03831660009081526003602052604090205460ff16158015610ce457506001600160a01b03821660009081526003602052604090205460ff16155b15610d3857601354600160a01b900460ff16610d385760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b60448201526064016104ff565b600080610d4d6000546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610d7c57506000546001600160a01b03858116911614155b15611120576001600160a01b0385163014610dc057610dbd6064610db7600a54600d5411610dac57600654610db0565b6008545b869061149f565b90611528565b91505b60055460ff1615610ea5576012546001600160a01b03858116911614801590610df757506013546001600160a01b03858116911614155b15610ea557326000908152600460205260409020544311610e925760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016104ff565b3260009081526004602052604090204390555b6013546001600160a01b038681169116148015610ed057506012546001600160a01b03858116911614155b8015610ef557506001600160a01b03841660009081526003602052604090205460ff16155b15610fdd57600e54831115610f4c5760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016104ff565b600f5483610f6f866001600160a01b031660009081526001602052604090205490565b610f799190611936565b1115610fc75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104ff565b600d8054906000610fd783611949565b91905055505b6013546001600160a01b03858116911614801561100357506001600160a01b0385163014155b15611054576001600160a01b03851660009081526003602052604090205460ff161561102c5750815b6110516064610db7600b54600d541161104757600754610db0565b600954869061149f565b91505b30600090815260016020526040902054601354600160a81b900460ff1615801561108b57506013546001600160a01b038681169116145b80156110a05750601354600160b01b900460ff165b80156110ad575060105481115b80156110bc5750600c54600d54115b80156110e157506001600160a01b03861660009081526003602052604090205460ff16155b1561111e576111036110fe856110f98460115461156a565b61156a565b6112a7565b47662386f26fc1000081111561111c5761111c47611421565b505b505b811561119a5730600090815260016020526040902054611140908361157f565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111919086815260200190565b60405180910390a35b6111c66111a78285611962565b6001600160a01b038716600090815260016020526040902054906115de565b6001600160a01b03861660009081526001602052604090205561120b6111ec84846115de565b6001600160a01b0386166000908152600160205260409020549061157f565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61125586866115de565b60405190815260200160405180910390a35050505050565b600081848411156112915760405162461bcd60e51b81526004016104ff919061164e565b50600061129e8486611962565b95945050505050565b6013805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106112ef576112ef611975565b6001600160a01b03928316602091820292909201810191909152601254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611348573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061136c91906118c9565b8160018151811061137f5761137f611975565b6001600160a01b0392831660209182029290920101526012546113a59130911684610a56565b60125460405163791ac94760e01b81526001600160a01b039091169063791ac947906113de90859060009086903090429060040161198b565b600060405180830381600087803b1580156113f857600080fd5b505af115801561140c573d6000803e3d6000fd5b50506013805460ff60a81b1916905550505050565b61dead600090815260016020527fb34209a263f6c38fe55f099e9e70f9d67e93982480ff3234a5e0108028ad164d5461145a9083611936565b60055460405191925061010090046001600160a01b0316906108fc8315029083906000818181858888f1935050505015801561149a573d6000803e3d6000fd5b505050565b6000826000036114b157506000610446565b60006114bd838561187d565b9050826114ca85836119fc565b146115215760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104ff565b9392505050565b600061152183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611620565b60008183116115795782611521565b50919050565b60008061158c8385611936565b9050838110156115215760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104ff565b600061152183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061126d565b600081836116415760405162461bcd60e51b81526004016104ff919061164e565b50600061129e84866119fc565b600060208083528351808285015260005b8181101561167b5785810183015185820160400152820161165f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461082457600080fd5b600080604083850312156116c457600080fd5b82356116cf8161169c565b946020939093013593505050565b6000806000606084860312156116f257600080fd5b83356116fd8161169c565b9250602084013561170d8161169c565b929592945050506040919091013590565b60006020828403121561173057600080fd5b81356115218161169c565b6000806040838503121561174e57600080fd5b82356117598161169c565b915060208301356117698161169c565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156117c55781600019048211156117ab576117ab611774565b808516156117b857918102915b93841c939080029061178f565b509250929050565b6000826117dc57506001610446565b816117e957506000610446565b81600181146117ff576002811461180957611825565b6001915050610446565b60ff84111561181a5761181a611774565b50506001821b610446565b5060208310610133831016604e8410600b8410161715611848575081810a610446565b611852838361178a565b806000190482111561186657611866611774565b029392505050565b600061152160ff8416836117cd565b808202811582820484141761044657610446611774565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118db57600080fd5b81516115218161169c565b6000806000606084860312156118fb57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561192657600080fd5b8151801515811461152157600080fd5b8082018082111561044657610446611774565b60006001820161195b5761195b611774565b5060010190565b8181038181111561044657610446611774565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119db5784516001600160a01b0316835293830193918301916001016119b6565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611a1957634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212201b1ff54ebd45212e8a0aab14fea52053ab4f55dfc159c89f206eb56be867137264736f6c63430008130033