0x6080604052600436106100fd575f3560e01c8063715018a61161009257806395d89b411161006257806395d89b41146102a6578063a11e9fe1146102d0578063a9059cbb146102e5578063dd62ed3e14610304578063f481d81014610348575f80fd5b8063715018a6146102435780637381a20914610257578063751039fc1461026c5780638da5cb5b14610280575f80fd5b8063313ce567116100cd578063313ce567146101bf578063388b5d88146101da5780634a9958d3146101f057806370a082311461020f575f80fd5b806306fdde0314610108578063095ea7b31461014f57806318160ddd1461017e57806323b872dd146101a0575f80fd5b3661010457005b5f80fd5b348015610113575f80fd5b5060408051808201909152600d81526c4469616d6f6e6420626c61636b60981b60208201525b6040516101469190611488565b60405180910390f35b34801561015a575f80fd5b5061016e6101693660046114e8565b61035c565b6040519015158152602001610146565b348015610189575f80fd5b50610192610372565b604051908152602001610146565b3480156101ab575f80fd5b5061016e6101ba366004611512565b610392565b3480156101ca575f80fd5b5060405160098152602001610146565b3480156101e5575f80fd5b506101ee610408565b005b3480156101fb575f80fd5b506101ee61020a366004611550565b6107b8565b34801561021a575f80fd5b50610192610229366004611550565b6001600160a01b03165f908152600d602052604090205490565b34801561024e575f80fd5b506101ee61080c565b348015610262575f80fd5b50610192600a5481565b348015610277575f80fd5b506101ee61087d565b34801561028b575f80fd5b505f546040516001600160a01b039091168152602001610146565b3480156102b1575f80fd5b50604080518082019091526002815261222160f11b6020820152610139565b3480156102db575f80fd5b50610192600b5481565b3480156102f0575f80fd5b5061016e6102ff3660046114e8565b6108a8565b34801561030f575f80fd5b5061019261031e36600461156b565b6001600160a01b039182165f908152600e6020908152604080832093909416825291909152205490565b348015610353575f80fd5b506101ee6108b4565b5f610368338484610911565b5060015b92915050565b5f61037f6009600a611696565b61038d90633b9aca006116a4565b905090565b5f61039e848484610a34565b6103a88484610cc2565b156103fe576103fe84336103f98560405180606001604052806028815260200161192a602891396001600160a01b038a165f908152600e602090815260408083203384529091529020549190610d24565b610911565b5060019392505050565b5f546001600160a01b0316331461043a5760405162461bcd60e51b8152600401610431906116bb565b60405180910390fd5b601154600160a01b900460ff16156104945760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610431565b600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811782556104dc913091906104ce90600a611696565b6103f990633b9aca006116a4565b60095f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561052c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061055091906116f0565b6001600160a01b031663c9c653963060095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d391906116f0565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561061d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064191906116f0565b601180546001600160a01b039283166001600160a01b03199091161790556009541663f305d7194730610688816001600160a01b03165f908152600d602052604090205490565b5f8061069b5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610701573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610726919061170b565b50506011805462ff00ff60a01b1981166201000160a01b1790915560095460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610791573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b59190611736565b50565b335f908152600f602052604090205460ff166107d2575f80fd5b600180546001600160a01b039092166001600160a01b0319909216821781555f918252600f6020526040909120805460ff19169091179055565b5f546001600160a01b031633146108355760405162461bcd60e51b8152600401610431906116bb565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108a65760405162461bcd60e51b8152600401610431906116bb565b565b5f610368338484610a34565b5f546001600160a01b031633146108dd5760405162461bcd60e51b8152600401610431906116bb565b5f47116108e8575f80fd5b60405133904780156108fc02915f818181858888f193505050501580156107b5573d5f803e3d5ffd5b6001600160a01b0383166109735760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610431565b6001600160a01b0382166109d45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610431565b6001600160a01b038381165f818152600e602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a985760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610431565b6001600160a01b038216610afa5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610431565b5f8111610b5b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610431565b5f610b67848484610d5c565b6001600160a01b0385165f908152600d6020526040902054909150610b8c9083610fcb565b6001600160a01b0385165f908152600d6020526040902055610bcf610bb18383610fcb565b6001600160a01b0385165f908152600d602052604090205490611013565b6001600160a01b0384165f908152600d60205260409020558015610c5f57305f908152600d6020526040902054610c069082611013565b305f818152600d6020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c569085815260200190565b60405180910390a35b6001600160a01b03831661dead14610cbc576001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610caa8585610fcb565b60405190815260200160405180910390a35b50505050565b335f908152600f602052604081205460ff1615610cf25750335f908152600f602052604090205460ff161561036c565b6011546001600160a01b0384811691161480610d1957506001600160a01b03821661dead14155b61036857505f61036c565b5f8184841115610d475760405162461bcd60e51b81526004016104319190611488565b505f610d538486611755565b95945050505050565b5f80610d6f5f546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610d9d57505f546001600160a01b03858116911614155b8015610db257506001600160a01b0385163014155b8015610dc757506001600160a01b0384163014155b15610fc357601154600160a81b900460ff16610e0c57610e096064610e0360065460085411610df857600454610dfc565b6005545b8690611071565b906110ef565b90505b6011546001600160a01b038681169116148015610e3757506009546001600160a01b03858116911614155b8015610e5b57506001600160a01b0384165f908152600f602052604090205460ff16155b8015610e7557506001546001600160a01b03858116911614155b15610e8f5760088054905f610e8983611768565b91905055505b305f908152600d602052604081205490546001600160a01b03878116911614801590610ec55750601154600160a81b900460ff16155b8015610ede57506011546001600160a01b038681169116145b8015610ef857506001546001600160a01b03878116911614155b8015610f0d5750601154600160b01b900460ff165b8015610f1c5750600754600854115b15610fc157601354431115610f30575f6012555b610f3984611130565b601254610f469190611780565b6012819055600b541015610f8d5760405162461bcd60e51b815260206004820152600e60248201526d13585e081cddd85c081b1a5b5a5d60921b6044820152606401610431565b600a54811115610fb157610fb184600a5411610fab57600a5461129f565b8461129f565b47610fbb47611421565b50436013555b505b949350505050565b5f61100c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d24565b9392505050565b5f8061101f8385611780565b90508381101561100c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610431565b5f825f0361108057505f61036c565b5f61108b83856116a4565b9050826110988583611793565b1461100c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610431565b5f61100c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061145c565b6040805160028082526060820183525f928392919060208301908036833701905050905030815f81518110611167576111676117c6565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111be573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111e291906116f0565b816001815181106111f5576111f56117c6565b6001600160a01b03928316602091820292909201015260095460405163d06ca61f60e01b81525f92919091169063d06ca61f90611238908790869060040161181d565b5f60405180830381865afa158015611252573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526112799190810190611835565b90508060018151811061128e5761128e6117c6565b602002602001015192505050919050565b6011805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112e5576112e56117c6565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561133c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061136091906116f0565b81600181518110611373576113736117c6565b6001600160a01b0392831660209182029290920101526009546113999130911684610911565b600954601080546001600160a01b0319166001600160a01b03909216918217905560405163791ac94760e01b815263791ac947906113e39085905f908690309042906004016118ee565b5f604051808303815f87803b1580156113fa575f80fd5b505af115801561140c573d5f803e3d5ffd5b50506011805460ff60a81b1916905550505050565b6001546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611458573d5f803e3d5ffd5b5050565b5f818361147c5760405162461bcd60e51b81526004016104319190611488565b505f610d538486611793565b5f602080835283518060208501525f5b818110156114b457858101830151858201604001528201611498565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107b5575f80fd5b5f80604083850312156114f9575f80fd5b8235611504816114d4565b946020939093013593505050565b5f805f60608486031215611524575f80fd5b833561152f816114d4565b9250602084013561153f816114d4565b929592945050506040919091013590565b5f60208284031215611560575f80fd5b813561100c816114d4565b5f806040838503121561157c575f80fd5b8235611587816114d4565b91506020830135611597816114d4565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156115f057815f19048211156115d6576115d66115a2565b808516156115e357918102915b93841c93908002906115bb565b509250929050565b5f826116065750600161036c565b8161161257505f61036c565b816001811461162857600281146116325761164e565b600191505061036c565b60ff841115611643576116436115a2565b50506001821b61036c565b5060208310610133831016604e8410600b8410161715611671575081810a61036c565b61167b83836115b6565b805f190482111561168e5761168e6115a2565b029392505050565b5f61100c60ff8416836115f8565b808202811582820484141761036c5761036c6115a2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611700575f80fd5b815161100c816114d4565b5f805f6060848603121561171d575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611746575f80fd5b8151801515811461100c575f80fd5b8181038181111561036c5761036c6115a2565b5f60018201611779576117796115a2565b5060010190565b8082018082111561036c5761036c6115a2565b5f826117ad57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156118125781516001600160a01b0316875295820195908201906001016117ed565b509495945050505050565b828152604060208201525f610fc360408301846117da565b5f6020808385031215611846575f80fd5b825167ffffffffffffffff8082111561185d575f80fd5b818501915085601f830112611870575f80fd5b815181811115611882576118826117b2565b8060051b604051601f19603f830116810181811085821117156118a7576118a76117b2565b6040529182528482019250838101850191888311156118c4575f80fd5b938501935b828510156118e2578451845293850193928501926118c9565b98975050505050505050565b85815284602082015260a060408201525f61190c60a08301866117da565b6001600160a01b039490941660608301525060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220285c2e427deca1d7f5ab69d4bc3281cfd390237b4d89b0d9ac06bc03b8b4a7db64736f6c63430008180033
0x6080604052600a600255600a60035560146004555f600555600260065560026007555f60085560646009600a62000037919062000371565b6200004790633b9aca0062000388565b620000539190620003a2565b600a90815567d02ab486cedc0000600b55600c556011805461ffff60a81b191690555f6012819055601381905580546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600180546001600160a01b031916331790556064620000e16009600a62000371565b620000f190633b9aca0062000388565b620000fe90600262000388565b6200010a9190620003a2565b335f908152600d60205260409020556064620001296009600a62000371565b6200013990633b9aca0062000388565b6200014690606262000388565b620001529190620003a2565b305f908152600d6020908152604080832093909355600f90528181208054600160ff19918216811790925581546001600160a01b031683529290912080549092161790556200019e3390565b6001600160a01b03165f5f8051602062001d578339815191526064620001c76009600a62000371565b620001d790633b9aca0062000388565b620001e490600262000388565b620001f09190620003a2565b60405190815260200160405180910390a3305f5f8051602062001d578339815191526064620002226009600a62000371565b6200023290633b9aca0062000388565b6200023f90606262000388565b6200024b9190620003a2565b60405190815260200160405180910390a3620003c2565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620002b657815f19048211156200029a576200029a62000262565b80851615620002a857918102915b93841c93908002906200027b565b509250929050565b5f82620002ce575060016200036b565b81620002dc57505f6200036b565b8160018114620002f55760028114620003005762000320565b60019150506200036b565b60ff84111562000314576200031462000262565b50506001821b6200036b565b5060208310610133831016604e8410600b841016171562000345575081810a6200036b565b62000351838362000276565b805f190482111562000367576200036762000262565b0290505b92915050565b5f6200038160ff841683620002be565b9392505050565b80820281158282048414176200036b576200036b62000262565b5f82620003bd57634e487b7160e01b5f52601260045260245ffd5b500490565b61198780620003d05f395ff3fe6080604052600436106100fd575f3560e01c8063715018a61161009257806395d89b411161006257806395d89b41146102a6578063a11e9fe1146102d0578063a9059cbb146102e5578063dd62ed3e14610304578063f481d81014610348575f80fd5b8063715018a6146102435780637381a20914610257578063751039fc1461026c5780638da5cb5b14610280575f80fd5b8063313ce567116100cd578063313ce567146101bf578063388b5d88146101da5780634a9958d3146101f057806370a082311461020f575f80fd5b806306fdde0314610108578063095ea7b31461014f57806318160ddd1461017e57806323b872dd146101a0575f80fd5b3661010457005b5f80fd5b348015610113575f80fd5b5060408051808201909152600d81526c4469616d6f6e6420626c61636b60981b60208201525b6040516101469190611488565b60405180910390f35b34801561015a575f80fd5b5061016e6101693660046114e8565b61035c565b6040519015158152602001610146565b348015610189575f80fd5b50610192610372565b604051908152602001610146565b3480156101ab575f80fd5b5061016e6101ba366004611512565b610392565b3480156101ca575f80fd5b5060405160098152602001610146565b3480156101e5575f80fd5b506101ee610408565b005b3480156101fb575f80fd5b506101ee61020a366004611550565b6107b8565b34801561021a575f80fd5b50610192610229366004611550565b6001600160a01b03165f908152600d602052604090205490565b34801561024e575f80fd5b506101ee61080c565b348015610262575f80fd5b50610192600a5481565b348015610277575f80fd5b506101ee61087d565b34801561028b575f80fd5b505f546040516001600160a01b039091168152602001610146565b3480156102b1575f80fd5b50604080518082019091526002815261222160f11b6020820152610139565b3480156102db575f80fd5b50610192600b5481565b3480156102f0575f80fd5b5061016e6102ff3660046114e8565b6108a8565b34801561030f575f80fd5b5061019261031e36600461156b565b6001600160a01b039182165f908152600e6020908152604080832093909416825291909152205490565b348015610353575f80fd5b506101ee6108b4565b5f610368338484610911565b5060015b92915050565b5f61037f6009600a611696565b61038d90633b9aca006116a4565b905090565b5f61039e848484610a34565b6103a88484610cc2565b156103fe576103fe84336103f98560405180606001604052806028815260200161192a602891396001600160a01b038a165f908152600e602090815260408083203384529091529020549190610d24565b610911565b5060019392505050565b5f546001600160a01b0316331461043a5760405162461bcd60e51b8152600401610431906116bb565b60405180910390fd5b601154600160a01b900460ff16156104945760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610431565b600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811782556104dc913091906104ce90600a611696565b6103f990633b9aca006116a4565b60095f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561052c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061055091906116f0565b6001600160a01b031663c9c653963060095f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105d391906116f0565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561061d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064191906116f0565b601180546001600160a01b039283166001600160a01b03199091161790556009541663f305d7194730610688816001600160a01b03165f908152600d602052604090205490565b5f8061069b5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610701573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610726919061170b565b50506011805462ff00ff60a01b1981166201000160a01b1790915560095460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610791573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b59190611736565b50565b335f908152600f602052604090205460ff166107d2575f80fd5b600180546001600160a01b039092166001600160a01b0319909216821781555f918252600f6020526040909120805460ff19169091179055565b5f546001600160a01b031633146108355760405162461bcd60e51b8152600401610431906116bb565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146108a65760405162461bcd60e51b8152600401610431906116bb565b565b5f610368338484610a34565b5f546001600160a01b031633146108dd5760405162461bcd60e51b8152600401610431906116bb565b5f47116108e8575f80fd5b60405133904780156108fc02915f818181858888f193505050501580156107b5573d5f803e3d5ffd5b6001600160a01b0383166109735760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610431565b6001600160a01b0382166109d45760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610431565b6001600160a01b038381165f818152600e602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a985760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610431565b6001600160a01b038216610afa5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610431565b5f8111610b5b5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610431565b5f610b67848484610d5c565b6001600160a01b0385165f908152600d6020526040902054909150610b8c9083610fcb565b6001600160a01b0385165f908152600d6020526040902055610bcf610bb18383610fcb565b6001600160a01b0385165f908152600d602052604090205490611013565b6001600160a01b0384165f908152600d60205260409020558015610c5f57305f908152600d6020526040902054610c069082611013565b305f818152600d6020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c569085815260200190565b60405180910390a35b6001600160a01b03831661dead14610cbc576001600160a01b038084169085167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610caa8585610fcb565b60405190815260200160405180910390a35b50505050565b335f908152600f602052604081205460ff1615610cf25750335f908152600f602052604090205460ff161561036c565b6011546001600160a01b0384811691161480610d1957506001600160a01b03821661dead14155b61036857505f61036c565b5f8184841115610d475760405162461bcd60e51b81526004016104319190611488565b505f610d538486611755565b95945050505050565b5f80610d6f5f546001600160a01b031690565b6001600160a01b0316856001600160a01b031614158015610d9d57505f546001600160a01b03858116911614155b8015610db257506001600160a01b0385163014155b8015610dc757506001600160a01b0384163014155b15610fc357601154600160a81b900460ff16610e0c57610e096064610e0360065460085411610df857600454610dfc565b6005545b8690611071565b906110ef565b90505b6011546001600160a01b038681169116148015610e3757506009546001600160a01b03858116911614155b8015610e5b57506001600160a01b0384165f908152600f602052604090205460ff16155b8015610e7557506001546001600160a01b03858116911614155b15610e8f5760088054905f610e8983611768565b91905055505b305f908152600d602052604081205490546001600160a01b03878116911614801590610ec55750601154600160a81b900460ff16155b8015610ede57506011546001600160a01b038681169116145b8015610ef857506001546001600160a01b03878116911614155b8015610f0d5750601154600160b01b900460ff165b8015610f1c5750600754600854115b15610fc157601354431115610f30575f6012555b610f3984611130565b601254610f469190611780565b6012819055600b541015610f8d5760405162461bcd60e51b815260206004820152600e60248201526d13585e081cddd85c081b1a5b5a5d60921b6044820152606401610431565b600a54811115610fb157610fb184600a5411610fab57600a5461129f565b8461129f565b47610fbb47611421565b50436013555b505b949350505050565b5f61100c83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d24565b9392505050565b5f8061101f8385611780565b90508381101561100c5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610431565b5f825f0361108057505f61036c565b5f61108b83856116a4565b9050826110988583611793565b1461100c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610431565b5f61100c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061145c565b6040805160028082526060820183525f928392919060208301908036833701905050905030815f81518110611167576111676117c6565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156111be573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111e291906116f0565b816001815181106111f5576111f56117c6565b6001600160a01b03928316602091820292909201015260095460405163d06ca61f60e01b81525f92919091169063d06ca61f90611238908790869060040161181d565b5f60405180830381865afa158015611252573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526112799190810190611835565b90508060018151811061128e5761128e6117c6565b602002602001015192505050919050565b6011805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112e5576112e56117c6565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561133c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061136091906116f0565b81600181518110611373576113736117c6565b6001600160a01b0392831660209182029290920101526009546113999130911684610911565b600954601080546001600160a01b0319166001600160a01b03909216918217905560405163791ac94760e01b815263791ac947906113e39085905f908690309042906004016118ee565b5f604051808303815f87803b1580156113fa575f80fd5b505af115801561140c573d5f803e3d5ffd5b50506011805460ff60a81b1916905550505050565b6001546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015611458573d5f803e3d5ffd5b5050565b5f818361147c5760405162461bcd60e51b81526004016104319190611488565b505f610d538486611793565b5f602080835283518060208501525f5b818110156114b457858101830151858201604001528201611498565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146107b5575f80fd5b5f80604083850312156114f9575f80fd5b8235611504816114d4565b946020939093013593505050565b5f805f60608486031215611524575f80fd5b833561152f816114d4565b9250602084013561153f816114d4565b929592945050506040919091013590565b5f60208284031215611560575f80fd5b813561100c816114d4565b5f806040838503121561157c575f80fd5b8235611587816114d4565b91506020830135611597816114d4565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156115f057815f19048211156115d6576115d66115a2565b808516156115e357918102915b93841c93908002906115bb565b509250929050565b5f826116065750600161036c565b8161161257505f61036c565b816001811461162857600281146116325761164e565b600191505061036c565b60ff841115611643576116436115a2565b50506001821b61036c565b5060208310610133831016604e8410600b8410161715611671575081810a61036c565b61167b83836115b6565b805f190482111561168e5761168e6115a2565b029392505050565b5f61100c60ff8416836115f8565b808202811582820484141761036c5761036c6115a2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611700575f80fd5b815161100c816114d4565b5f805f6060848603121561171d575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611746575f80fd5b8151801515811461100c575f80fd5b8181038181111561036c5761036c6115a2565b5f60018201611779576117796115a2565b5060010190565b8082018082111561036c5761036c6115a2565b5f826117ad57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b838110156118125781516001600160a01b0316875295820195908201906001016117ed565b509495945050505050565b828152604060208201525f610fc360408301846117da565b5f6020808385031215611846575f80fd5b825167ffffffffffffffff8082111561185d575f80fd5b818501915085601f830112611870575f80fd5b815181811115611882576118826117b2565b8060051b604051601f19603f830116810181811085821117156118a7576118a76117b2565b6040529182528482019250838101850191888311156118c4575f80fd5b938501935b828510156118e2578451845293850193928501926118c9565b98975050505050505050565b85815284602082015260a060408201525f61190c60a08301866117da565b6001600160a01b039490941660608301525060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220285c2e427deca1d7f5ab69d4bc3281cfd390237b4d89b0d9ac06bc03b8b4a7db64736f6c63430008180033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef