0x6000600f556011805462ffffff19166001179055600860a090815267456c646f7261646f60c01b60c052610120604052600360e08181526211531160ea1b61010052906200004e838262000da3565b5060046200005d828262000da3565b5050506000620000726200072660201b60201c565b600580546001600160a01b0319166001600160a01b0383169081179091556040519192509060009060008051602062006501833981519152908290a350600046600103620000d65750737a250d5630b4cf539739df2c5dacb4c659f2488d62000148565b46603803620000fb57507310ed43c718714eb63d5aa57b78b54704e256024e62000148565b60405162461bcd60e51b815260206004820152601460248201527f436861696e206e6f7420636f6e6669677572656400000000000000000000000060448201526064015b60405180910390fd5b604051620001569062000cf0565b604051809103906000f08015801562000173573d6000803e3d6000fd5b50600980546001600160a01b0319166001600160a01b039283161790558116608052336b033b2e3c9fd0803ce80000006064620001b282600262000e85565b620001be919062000ea5565b6006556064620001d082600262000e85565b620001dc919062000ea5565b6007556064620001ee82600262000e85565b620001fa919062000ea5565b600855620186a06200020e82601962000e85565b6200021a919062000ea5565b600d556103206014819055600060138190556101f460158190559162000241919062000ec8565b6200024d919062000ec8565b601255610dac6017819055600060188190556101f460198190559162000274919062000ec8565b62000280919062000ec8565b601655600e80546001600160a01b031916331790556080516040805163c45a015560e01b815290516001600160a01b03929092169163c45a0155916004808201926020929091908290030181865afa158015620002e1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000307919062000ede565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000357573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200037d919062000ede565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620003cb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003f1919062000ede565b600a80546001600160a01b0319166001600160a01b039290921691821790556200041d9060016200072a565b600a5462000436906001600160a01b031660016200078d565b620004438260016200072a565b620004503060016200072a565b608051620004609060016200072a565b6200046f61dead60016200072a565b600e5462000488906001600160a01b031660016200072a565b60095460405163031e79db60e41b81526001600160a01b0390911660048201819052906331e79db090602401600060405180830381600087803b158015620004cf57600080fd5b505af1158015620004e4573d6000803e3d6000fd5b505060095460405163031e79db60e41b81523060048201526001600160a01b0390911692506331e79db09150602401600060405180830381600087803b1580156200052e57600080fd5b505af115801562000543573d6000803e3d6000fd5b505060095460805160405163031e79db60e41b81526001600160a01b039182166004820152911692506331e79db09150602401600060405180830381600087803b1580156200059157600080fd5b505af1158015620005a6573d6000803e3d6000fd5b505060095460405163031e79db60e41b81526001600160a01b03868116600483015290911692506331e79db09150602401600060405180830381600087803b158015620005f257600080fd5b505af115801562000607573d6000803e3d6000fd5b505060095460405163031e79db60e41b815261dead60048201526001600160a01b0390911692506331e79db09150602401600060405180830381600087803b1580156200065357600080fd5b505af115801562000668573d6000803e3d6000fd5b505050506200067f8260016200093c60201b60201c565b6200068c3060016200093c565b6080516200069c9060016200093c565b620006ab61dead60016200093c565b600e54620006c4906001600160a01b031660016200093c565b620006cf82620009e6565b620006e63060805160001962000ae360201b60201c565b6200071d306200070b846001600160a01b031660009081526020819052604090205490565b62000717908462000f10565b62000c0b565b50505062000f26565b3390565b6001600160a01b0382166000818152601e6020908152604091829020805460ff19168515159081179091558251938452908301527f6b4f1be9103e6cbcd38ca4a922334f2c3109b260130a6676a987f94088fd6746910160405180910390a15050565b6005546001600160a01b03163314620007d85760405162461bcd60e51b81526020600482018190526024820152600080516020620064e183398151915260448201526064016200013f565b600a546001600160a01b038381169116141580620007f35750805b620008675760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b657250616972730000000000000060648201526084016200013f565b6001600160a01b0382166000908152601f60205260409020805460ff19168215151790556200089782826200072a565b8015620009005760095460405163031e79db60e41b81526001600160a01b038481166004830152909116906331e79db090602401600060405180830381600087803b158015620008e657600080fd5b505af1158015620008fb573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6005546001600160a01b03163314620009875760405162461bcd60e51b81526020600482018190526024820152600080516020620064e183398151915260448201526064016200013f565b6001600160a01b0382166000818152601d6020908152604091829020805460ff191685151590811790915591519182527f7e9c88b87a525bea9b5a9169ddf4660ad19e19b88ea5057a584ee4d31cceec9c910160405180910390a25050565b6005546001600160a01b0316331462000a315760405162461bcd60e51b81526020600482018190526024820152600080516020620064e183398151915260448201526064016200013f565b6001600160a01b03811662000a985760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016200013f565b6005546040516001600160a01b038084169216906000805160206200650183398151915290600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831662000b475760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016200013f565b6001600160a01b03821662000baa5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016200013f565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03821662000c635760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016200013f565b806002600082825462000c77919062000ec8565b90915550506001600160a01b0382166000908152602081905260408120805483929062000ca690849062000ec8565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b61181a8062004cc783390190565b634e487b7160e01b600052604160045260246000fd5b600181811c9082168062000d2957607f821691505b60208210810362000d4a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000d9e57600081815260208120601f850160051c8101602086101562000d795750805b601f850160051c820191505b8181101562000d9a5782815560010162000d85565b5050505b505050565b81516001600160401b0381111562000dbf5762000dbf62000cfe565b62000dd78162000dd0845462000d14565b8462000d50565b602080601f83116001811462000e0f576000841562000df65750858301515b600019600386901b1c1916600185901b17855562000d9a565b600085815260208120601f198616915b8281101562000e405788860151825594840194600190910190840162000e1f565b508582101562000e5f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000e9f5762000e9f62000e6f565b92915050565b60008262000ec357634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000e9f5762000e9f62000e6f565b60006020828403121562000ef157600080fd5b81516001600160a01b038116811462000f0957600080fd5b9392505050565b8181038181111562000e9f5762000e9f62000e6f565b608051613d7762000f50600039600081816104b30152818161333801526133f00152613d776000f3fe6080604052600436106104145760003560e01c806382aa7c681161021e578063ac1b129d11610123578063dd62ed3e116100ab578063e96db1ef1161007a578063e96db1ef14610c0a578063e98030c714610c20578063f1cb24f814610c40578063f27fd25414610c56578063f2fde38b14610c7657600080fd5b8063dd62ed3e14610b79578063e27a55fe14610bbf578063e634e70a14610bd5578063e7841ec014610bf557600080fd5b8063c0f306ef116100f2578063c0f306ef14610ade578063c6a3064714610afe578063c78d0fa014610b1e578063dae6a98214610b34578063dc07b61714610b6457600080fd5b8063ac1b129d14610a1d578063ad56c13c14610a33578063b62496f514610a98578063bb81150814610ac857600080fd5b80639e93ad8e116101a6578063a2cbba2811610175578063a2cbba2814610987578063a457c2d71461099d578063a5ece941146109bd578063a8b9d240146109dd578063a9059cbb146109fd57600080fd5b80639e93ad8e14610926578063a002959c1461093c578063a0a485ca14610952578063a26579ad1461097257600080fd5b80638da5cb5b116101ed5780638da5cb5b1461089d578063906e9dd0146108bb57806395d89b41146108db5780639a7a23d6146108f05780639cf551831461091057600080fd5b806382aa7c681461081d5780638366e79a1461083d57806384d5a0f11461085d578063894dc39b1461087d57600080fd5b806333cdacd91161032457806364b0f653116102ac57806370a082311161027b57806370a082311461079e578063715018a6146107be57806371778e7d146107d3578063751039fc146107e85780637571336a146107fd57600080fd5b806364b0f653146107335780636843cd84146107485780636ab91206146107685780636ddd17131461077e57600080fd5b80634e71d92d116102f35780634e71d92d146106bc57806351f205e4146106d157806358a6d531146106e65780635df6e68e146106fd578063607b4ef31461071357600080fd5b806333cdacd9146106505780633950935114610666578063452ed4f1146106865780634a75e73c146106a657600080fd5b80631cce34ee116103a75780632c1f5216116103765780632c1f5216146105c957806330bb4cff146105e9578063313ce567146105fe57806331e79db01461061a578063330124111461063a57600080fd5b80631cce34ee146105595780631f3fed8f146105735780632307b4411461058957806323b872dd146105a957600080fd5b8063095ea7b3116103e3578063095ea7b3146104d557806311704f521461050557806318160ddd146105245780631a8145bb1461054357600080fd5b8063032c32fc1461042057806305f936501461045d57806306fdde031461047f5780630758d924146104a157600080fd5b3661041b57005b600080fd5b34801561042c57600080fd5b50600b54610440906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561046957600080fd5b5061047d6104783660046136c8565b610c96565b005b34801561048b57600080fd5b50610494610d83565b6040516104549190613718565b3480156104ad57600080fd5b506104407f000000000000000000000000000000000000000000000000000000000000000081565b3480156104e157600080fd5b506104f56104f0366004613760565b610e15565b6040519015158152602001610454565b34801561051157600080fd5b506011546104f590610100900460ff1681565b34801561053057600080fd5b506002545b604051908152602001610454565b34801561054f57600080fd5b50610535601b5481565b34801561056557600080fd5b506011546104f59060ff1681565b34801561057f57600080fd5b50610535601a5481565b34801561059557600080fd5b5061047d6105a4366004613862565b610e2c565b3480156105b557600080fd5b506104f56105c4366004613924565b61102a565b3480156105d557600080fd5b50600954610440906001600160a01b031681565b3480156105f557600080fd5b506105356110d1565b34801561060a57600080fd5b5060405160128152602001610454565b34801561062657600080fd5b5061047d610635366004613965565b611144565b34801561064657600080fd5b5061053560145481565b34801561065c57600080fd5b5061053560075481565b34801561067257600080fd5b506104f5610681366004613760565b6111d1565b34801561069257600080fd5b50600a54610440906001600160a01b031681565b3480156106b257600080fd5b5061053560155481565b3480156106c857600080fd5b5061047d61120d565b3480156106dd57600080fd5b5061047d611285565b3480156106f257600080fd5b5060105443106104f5565b34801561070957600080fd5b5061053560125481565b34801561071f57600080fd5b50600c54610440906001600160a01b031681565b34801561073f57600080fd5b5061053561138d565b34801561075457600080fd5b50610535610763366004613965565b6113d7565b34801561077457600080fd5b5061053560185481565b34801561078a57600080fd5b506011546104f59062010000900460ff1681565b3480156107aa57600080fd5b506105356107b9366004613965565b611447565b3480156107ca57600080fd5b5061047d611462565b3480156107df57600080fd5b506105356114d6565b3480156107f457600080fd5b5061047d611520565b34801561080957600080fd5b5061047d610818366004613997565b61157f565b34801561082957600080fd5b5061047d6108383660046139d0565b611647565b34801561084957600080fd5b5061047d6108583660046139e9565b611705565b34801561086957600080fd5b5061047d6108783660046139d0565b6118a8565b34801561088957600080fd5b5061047d6108983660046139d0565b611972565b3480156108a957600080fd5b506005546001600160a01b0316610440565b3480156108c757600080fd5b5061047d6108d6366004613965565b611ab8565b3480156108e757600080fd5b50610494611b78565b3480156108fc57600080fd5b5061047d61090b366004613997565b611b87565b34801561091c57600080fd5b50610535600f5481565b34801561093257600080fd5b5061053561271081565b34801561094857600080fd5b50610535601c5481565b34801561095e57600080fd5b5061047d61096d3660046136c8565b611d0d565b34801561097e57600080fd5b50610535611de4565b34801561099357600080fd5b5061053560135481565b3480156109a957600080fd5b506104f56109b8366004613760565b611e2e565b3480156109c957600080fd5b50600e54610440906001600160a01b031681565b3480156109e957600080fd5b506105356109f8366004613965565b611ec7565b348015610a0957600080fd5b506104f5610a18366004613760565b611efa565b348015610a2957600080fd5b5061053560065481565b348015610a3f57600080fd5b50610a53610a4e366004613965565b611f07565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e082015261010001610454565b348015610aa457600080fd5b506104f5610ab3366004613965565b601f6020526000908152604090205460ff1681565b348015610ad457600080fd5b5061053560085481565b348015610aea57600080fd5b5061047d610af9366004613965565b611fa2565b348015610b0a57600080fd5b5061047d610b19366004613997565b611ffe565b348015610b2a57600080fd5b50610535600d5481565b348015610b4057600080fd5b506104f5610b4f366004613965565b601e6020526000908152604090205460ff1681565b348015610b7057600080fd5b5061047d612087565b348015610b8557600080fd5b50610535610b943660046139e9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b348015610bcb57600080fd5b5061053560165481565b348015610be157600080fd5b5061047d610bf03660046139d0565b6120e9565b348015610c0157600080fd5b506105356121ac565b348015610c1657600080fd5b5061053560175481565b348015610c2c57600080fd5b5061047d610c3b3660046139d0565b6121f6565b348015610c4c57600080fd5b5061053560195481565b348015610c6257600080fd5b50610a53610c713660046139d0565b612251565b348015610c8257600080fd5b5061047d610c91366004613965565b612293565b6005546001600160a01b03163314610cc95760405162461bcd60e51b8152600401610cc090613a17565b60405180910390fd5b60178390556018829055601981905580610ce38385613a62565b610ced9190613a62565b60168190556113881015610d435760405162461bcd60e51b815260206004820152601c60248201527f4d757374206b6565702074617820617420353025206f72206c657373000000006044820152606401610cc0565b7fa02824f65350567bc405e202b741e7ca6274004a9feeb44149df72b8bd599c97601654604051610d7691815260200190565b60405180910390a1505050565b606060038054610d9290613a75565b80601f0160208091040260200160405190810160405280929190818152602001828054610dbe90613a75565b8015610e0b5780601f10610de057610100808354040283529160200191610e0b565b820191906000526020600020905b815481529060010190602001808311610dee57829003601f168201915b5050505050905090565b6000610e2233848461237e565b5060015b92915050565b6005546001600160a01b03163314610e565760405162461bcd60e51b8152600401610cc090613a17565b8051825114610ea75760405162461bcd60e51b815260206004820152601e60248201527f617272617973206d757374206265207468652073616d65206c656e67746800006044820152606401610cc0565b610258825110610f185760405162461bcd60e51b815260206004820152603660248201527f43616e206f6e6c792061697264726f70203630302077616c6c657473207065726044820152752074786e2064756520746f20676173206c696d69747360501b6064820152608401610cc0565b60005b825181101561102557610f6133848381518110610f3a57610f3a613aaf565b6020026020010151848481518110610f5457610f54613aaf565b60200260200101516124a2565b60095483516001600160a01b039091169063e30443bc90859084908110610f8a57610f8a613aaf565b6020026020010151610fb4868581518110610fa757610fa7613aaf565b6020026020010151611447565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b158015610ffa57600080fd5b505af115801561100e573d6000803e3d6000fd5b50505050808061101d90613ac5565b915050610f1b565b505050565b60006110378484846125f4565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156110b95760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e7366657220616d74206578636565647320616c6c6f60448201526477616e636560d81b6064820152608401610cc0565b6110c6853385840361237e565b506001949350505050565b600954604080516342d359d760e11b815290516000926001600160a01b0316916385a6b3ae9160048083019260209291908290030181865afa15801561111b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061113f9190613ade565b905090565b6005546001600160a01b0316331461116e5760405162461bcd60e51b8152600401610cc090613a17565b60095460405163031e79db60e41b81526001600160a01b038381166004830152909116906331e79db0906024015b600060405180830381600087803b1580156111b657600080fd5b505af11580156111ca573d6000803e3d6000fd5b5050505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610e22918590611208908690613a62565b61237e565b60095460405163bc4c4b3760e01b8152336004820152600060248201526001600160a01b039091169063bc4c4b37906044016020604051808303816000875af115801561125e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112829190613af7565b50565b6005546001600160a01b031633146112af5760405162461bcd60e51b8152600401610cc090613a17565b600d546112bb30611447565b101561132f5760405162461bcd60e51b815260206004820152603d60248201527f43616e206f6e6c792073776170207768656e20746f6b656e20616d742069732060448201527f6174206f7220686967686572207468616e207265737472696374696f6e0000006064820152608401610cc0565b600c805460ff60a01b1916600160a01b17905561134a613003565b600c805460ff60a01b191690556040514281527f1b56c383f4f48fc992e45667ea4eabae777b9cca68b516a9562d8cda78f1bb32906020015b60405180910390a1565b600954604080516304ddf6ef60e11b815290516000926001600160a01b0316916309bbedde9160048083019260209291908290030181865afa15801561111b573d6000803e3d6000fd5b60095460405163156dbbf560e31b81526001600160a01b038381166004830152600092169063ab6ddfa8906024015b602060405180830381865afa158015611423573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e269190613ade565b6001600160a01b031660009081526020819052604090205490565b6005546001600160a01b0316331461148c5760405162461bcd60e51b8152600401610cc090613a17565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6009546040805163ad7a672f60e01b815290516000926001600160a01b03169163ad7a672f9160048083019260209291908290030181865afa15801561111b573d6000803e3d6000fd5b6005546001600160a01b0316331461154a5760405162461bcd60e51b8152600401610cc090613a17565b6011805460ff191690556040517fa4ffae85e880608d5d4365c2b682786545d136145537788e7e0940dff9f0b98c90600090a1565b6005546001600160a01b031633146115a95760405162461bcd60e51b8152600401610cc090613a17565b8061161c57600a546001600160a01b039081169083160361161c5760405162461bcd60e51b815260206004820152602760248201527f43616e6e6f742072656d6f766520756e697377617020706169722066726f6d2060448201526636b0bc103a3c3760c91b6064820152608401610cc0565b6001600160a01b03919091166000908152601e60205260409020805460ff1916911515919091179055565b6005546001600160a01b031633146116715760405162461bcd60e51b8152600401610cc090613a17565b601154610100900460ff16156116dd5760405162461bcd60e51b815260206004820152602b60248201527f54726164696e6720697320616c7265616479206163746976652c2063616e6e6f60448201526a3a103932b630bab731b41760a91b6064820152608401610cc0565b6011805462ffff0019166201010017905543600f8190556116ff908290613a62565b60105550565b6005546001600160a01b0316331461172f5760405162461bcd60e51b8152600401610cc090613a17565b6001600160a01b0382166117855760405162461bcd60e51b815260206004820152601a60248201527f5f746f6b656e20616464726573732063616e6e6f7420626520300000000000006044820152606401610cc0565b6001600160a01b038216301415806117a55750601154610100900460ff16155b6117f15760405162461bcd60e51b815260206004820152601c60248201527f43616e2774207769746864726177206e617469766520746f6b656e73000000006044820152606401610cc0565b6040516370a0823160e01b81523060048201526000906001600160a01b038416906370a0823190602401602060405180830381865afa158015611838573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061185c9190613ade565b905061186983838361322c565b604080516001600160a01b0385168152602081018390527fdeda980967fcead7b61e78ac46a4da14274af29e894d4d61e8b81ec38ab3e4389101610d76565b6005546001600160a01b031633146118d25760405162461bcd60e51b8152600401610cc090613a17565b670de0b6b3a764000060646118e660025490565b6118f1906001613b14565b6118fb9190613b2b565b6119059190613b2b565b8110156119245760405162461bcd60e51b8152600401610cc090613b4d565b61193681670de0b6b3a7640000613b14565b60068190556040519081527fbd0f1740caf821f78178ca26f0481f035268c600b91408a9a82dfb3a80b79a29906020015b60405180910390a150565b6005546001600160a01b0316331461199c5760405162461bcd60e51b8152600401610cc090613a17565b620f42406119a960025490565b6119b4906001613b14565b6119be9190613b2b565b811015611a295760405162461bcd60e51b815260206004820152603360248201527f5377617020616d742063616e6e6f74206265206c6f776572207468616e20302e6044820152721818181892903a37ba30b61039bab838363c9760691b6064820152608401610cc0565b6103e8611a3560025490565b611a40906001613b14565b611a4a9190613b2b565b811115611ab35760405162461bcd60e51b815260206004820152603160248201527f5377617020616d742063616e6e6f7420626520686967686572207468616e2030604482015270171892903a37ba30b61039bab838363c9760791b6064820152608401610cc0565b600d55565b6005546001600160a01b03163314611ae25760405162461bcd60e51b8152600401610cc090613a17565b6001600160a01b038116611b2e5760405162461bcd60e51b81526020600482015260136024820152720616464726573732063616e6e6f74206265203606c1b6044820152606401610cc0565b600e80546001600160a01b0319166001600160a01b0383169081179091556040517fd1e7d6a3390dd5008bd1c57798817b9f806e4c417264e7d3d67e42e784dc24a990600090a250565b606060048054610d9290613a75565b6005546001600160a01b03163314611bb15760405162461bcd60e51b8152600401610cc090613a17565b600a546001600160a01b038381169116141580611bcb5750805b611c3d5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b65725061697273000000000000006064820152608401610cc0565b6001600160a01b0382166000908152601f60205260409020805460ff1916821515179055611c6b828261327e565b8015611cd15760095460405163031e79db60e41b81526001600160a01b038481166004830152909116906331e79db090602401600060405180830381600087803b158015611cb857600080fd5b505af1158015611ccc573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6005546001600160a01b03163314611d375760405162461bcd60e51b8152600401610cc090613a17565b60148390556013829055601581905580611d518385613a62565b611d5b9190613a62565b60128190556113881015611db15760405162461bcd60e51b815260206004820152601c60248201527f4d757374206b6565702074617820617420353025206f72206c657373000000006044820152606401610cc0565b7f5380a61520019ce8270d583f62f1b2b9f4f4372e1acaaf708f4865cecece0508601254604051610d7691815260200190565b60095460408051631bc9e27b60e21b815290516000926001600160a01b031691636f2789ec9160048083019260209291908290030181865afa15801561111b573d6000803e3d6000fd5b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015611eb05760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152608401610cc0565b611ebd338585840361237e565b5060019392505050565b6009546040516302a2e74960e61b81526001600160a01b038381166004830152600092169063a8b9d24090602401611406565b6000610e223384846125f4565b60095460405163fbcbc0f160e01b81526001600160a01b038381166004830152600092839283928392839283928392839291169063fbcbc0f1906024015b61010060405180830381865afa158015611f63573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f879190613b92565b97509750975097509750975097509750919395975091939597565b6005546001600160a01b03163314611fcc5760405162461bcd60e51b8152600401610cc090613a17565b60095460405163c0f306ef60e01b81526001600160a01b0383811660048301529091169063c0f306ef9060240161119c565b6005546001600160a01b031633146120285760405162461bcd60e51b8152600401610cc090613a17565b6001600160a01b0382166000818152601d6020908152604091829020805460ff191685151590811790915591519182527f7e9c88b87a525bea9b5a9169ddf4660ad19e19b88ea5057a584ee4d31cceec9c910160405180910390a25050565b6005546001600160a01b031633146120b15760405162461bcd60e51b8152600401610cc090613a17565b60025460088190556040519081527f5c2c6bbd255d68d22e47fbc0e1cbb9e5c5c2892d91144941f6b7f61d3b1c8a5590602001611383565b6005546001600160a01b031633146121135760405162461bcd60e51b8152600401610cc090613a17565b670de0b6b3a7640000606461212760025490565b612132906001613b14565b61213c9190613b2b565b6121469190613b2b565b8110156121655760405162461bcd60e51b8152600401610cc090613b4d565b61217781670de0b6b3a7640000613b14565b60078190556040519081527fda3f4fd2455d333278e3d4e42bf292b30da257f729437c6264f483617cbf73f790602001611967565b6009546040805163039e107b60e61b815290516000926001600160a01b03169163e7841ec09160048083019260209291908290030181865afa15801561111b573d6000803e3d6000fd5b6005546001600160a01b031633146122205760405162461bcd60e51b8152600401610cc090613a17565b60095460405163e98030c760e01b8152600481018390526001600160a01b039091169063e98030c79060240161119c565b600954604051635183d6fd60e01b81526004810183905260009182918291829182918291829182916001600160a01b0390911690635183d6fd90602401611f45565b6005546001600160a01b031633146122bd5760405162461bcd60e51b8152600401610cc090613a17565b6001600160a01b0381166123225760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610cc0565b6005546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600580546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166123e05760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610cc0565b6001600160a01b0382166124415760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610cc0565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166124c85760405162461bcd60e51b8152600401610cc090613bfc565b6001600160a01b0382166124ee5760405162461bcd60e51b8152600401610cc090613c41565b6001600160a01b038316600090815260208190526040902054818110156125635760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220616d7420657863656564732062616c616044820152626e636560e81b6064820152608401610cc0565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061259a908490613a62565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516125e691815260200190565b60405180910390a350505050565b6001600160a01b03831661261a5760405162461bcd60e51b8152600401610cc090613bfc565b6001600160a01b0382166126405760405162461bcd60e51b8152600401610cc090613c41565b8060000361265457611025838360006124a2565b601154610100900460ff166126e7576001600160a01b0383166000908152601d602052604090205460ff16806126a257506001600160a01b0382166000908152601d602052604090205460ff165b6126e75760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610cc0565b6001600160a01b0383166000908152601d602052604090205460ff168061272657506001600160a01b0382166000908152601d602052604090205460ff165b8061273a5750600c54600160a01b900460ff165b156128435761274a8383836124a2565b6009546001600160a01b031663e30443bc8461276581611447565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b1580156127ab57600080fd5b505af11580156127bf573d6000803e3d6000fd5b50506009546001600160a01b0316915063e30443bc9050836127e081611447565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561282657600080fd5b505af115801561283a573d6000803e3d6000fd5b50505050505050565b60115460ff1615612b25576005546001600160a01b0384811691161480159061287a57506005546001600160a01b03838116911614155b801561288e57506001600160a01b03821615155b80156128a557506001600160a01b03821661dead14155b80156128ca57506001600160a01b0383166000908152601d602052604090205460ff16155b80156128ef57506001600160a01b0382166000908152601d602052604090205460ff16155b15612b25576001600160a01b0383166000908152601f602052604090205460ff16801561293557506001600160a01b0382166000908152601e602052604090205460ff16155b156129fe5760065481111561299a5760405162461bcd60e51b815260206004820152602560248201527f427579207472616e7366657220616d74206578636565647320746865206d617860448201526410313abc9760d91b6064820152608401610cc0565b6008546129a683611447565b6129b09083613a62565b11156129f95760405162461bcd60e51b815260206004820152601860248201527710d85b9b9bdd08115e18d95959081b585e081dd85b1b195d60421b6044820152606401610cc0565b612b25565b6001600160a01b0382166000908152601f602052604090205460ff168015612a3f57506001600160a01b0383166000908152601e602052604090205460ff16155b15612aa6576007548111156129f95760405162461bcd60e51b815260206004820152602760248201527f53656c6c207472616e7366657220616d74206578636565647320746865206d616044820152663c1039b2b6361760c91b6064820152608401610cc0565b6001600160a01b0382166000908152601e602052604090205460ff16612b2557600854612ad283611447565b612adc9083613a62565b1115612b255760405162461bcd60e51b815260206004820152601860248201527710d85b9b9bdd08115e18d95959081b585e081dd85b1b195d60421b6044820152606401610cc0565b6000612b3030611447565b600d5490915081108015908190612b4f575060115462010000900460ff165b8015612b655750600c54600160a01b900460ff16155b8015612b8957506001600160a01b0384166000908152601f602052604090205460ff165b15612bb757600c805460ff60a01b1916600160a01b179055612ba9613003565b600c805460ff60a01b191690555b6001600160a01b0385166000908152601d602052604090205460019060ff1680612bf957506001600160a01b0385166000908152601d602052604090205460ff165b15612c02575060005b60008115612efb5760105443108015612c3357506001600160a01b0387166000908152601f602052604090205460ff165b8015612c5857506001600160a01b0386166000908152601f602052604090205460ff16155b8015612c7d57506001600160a01b0386166000908152601d602052604090205460ff16155b8015612c8b57506000601254115b15612d4257612710612c9f866126ac613b14565b612ca99190613b2b565b905060125460135482612cbc9190613b14565b612cc69190613b2b565b601b6000828254612cd79190613a62565b9091555050601254601454612cec9083613b14565b612cf69190613b2b565b601a6000828254612d079190613a62565b9091555050601254601554612d1c9083613b14565b612d269190613b2b565b601c6000828254612d379190613a62565b90915550612edd9050565b6001600160a01b0386166000908152601f602052604090205460ff168015612d6c57506000601654115b15612dff5761271060165486612d829190613b14565b612d8c9190613b2b565b905060165460185482612d9f9190613b14565b612da99190613b2b565b601b6000828254612dba9190613a62565b9091555050601654601754612dcf9083613b14565b612dd99190613b2b565b601a6000828254612dea9190613a62565b9091555050601654601954612d1c9083613b14565b6001600160a01b0387166000908152601f602052604090205460ff168015612e2957506000601254115b15612edd5761271060125486612e3f9190613b14565b612e499190613b2b565b905060125460145482612e5c9190613b14565b612e669190613b2b565b601a6000828254612e779190613a62565b9091555050601254601354612e8c9083613b14565b612e969190613b2b565b601b6000828254612ea79190613a62565b9091555050601254601554612ebc9083613b14565b612ec69190613b2b565b601c6000828254612ed79190613a62565b90915550505b8015612eee57612eee8730836124a2565b612ef88186613c84565b94505b612f068787876124a2565b6009546001600160a01b031663e30443bc88612f2181611447565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b158015612f6757600080fd5b505af1158015612f7b573d6000803e3d6000fd5b50506009546001600160a01b0316915063e30443bc905087612f9c81611447565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b158015612fe257600080fd5b505af1158015612ff6573d6000803e3d6000fd5b5050505050505050505050565b600061300e30611447565b90506000601c54601a54601b546130259190613a62565b61302f9190613a62565b905081158061303c575080155b15613045575050565b600d54613053906028613b14565b82111561306b57600d54613068906028613b14565b91505b601b541561312e57600081601b54846130849190613b14565b61308e9190613b2b565b600a549091506130a99030906001600160a01b0316836124a2565b600a60009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156130f957600080fd5b505af192505050801561310a575060015b506131158184613c84565b9250601b54826131259190613c84565b6000601b559150505b811561322857600061313f836132e1565b601c54156131bc5760008247601c546131589190613b14565b6131629190613b2b565b6009546040519192506001600160a01b0316908290600081818185875af1925050503d80600081146131b0576040519150601f19603f3d011682016040523d82523d6000602084013e6131b5565b606091505b5090925050505b601a541561321c57600e546040516001600160a01b03909116904790600081818185875af1925050503d8060008114613211576040519150601f19603f3d011682016040523d82523d6000602084013e613216565b606091505b50909150505b506000601a819055601c555b5050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052611025908490613466565b6001600160a01b0382166000818152601e6020908152604091829020805460ff19168515159081179091558251938452908301527f6b4f1be9103e6cbcd38ca4a922334f2c3109b260130a6676a987f94088fd6746910160405180910390a15050565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061331657613316613aaf565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015613394573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133b89190613c97565b816001815181106133cb576133cb613aaf565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f00000000000000000000000000000000000000000000000000000000000000009091169063791ac94790613430908590600090869030904290600401613cb4565b600060405180830381600087803b15801561344a57600080fd5b505af115801561345e573d6000803e3d6000fd5b505050505050565b60006134bb826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166135389092919063ffffffff16565b80519091501561102557808060200190518101906134d99190613af7565b6110255760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401610cc0565b6060613547848460008561354f565b949350505050565b6060824710156135b05760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401610cc0565b600080866001600160a01b031685876040516135cc9190613d25565b60006040518083038185875af1925050503d8060008114613609576040519150601f19603f3d011682016040523d82523d6000602084013e61360e565b606091505b509150915061361f8783838761362a565b979650505050505050565b60608315613699578251600003613692576001600160a01b0385163b6136925760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610cc0565b5081613547565b61354783838151156136ae5781518083602001fd5b8060405162461bcd60e51b8152600401610cc09190613718565b6000806000606084860312156136dd57600080fd5b505081359360208301359350604090920135919050565b60005b8381101561370f5781810151838201526020016136f7565b50506000910152565b60208152600082518060208401526137378160408501602087016136f4565b601f01601f19169190910160400192915050565b6001600160a01b038116811461128257600080fd5b6000806040838503121561377357600080fd5b823561377e8161374b565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156137cb576137cb61378c565b604052919050565b600067ffffffffffffffff8211156137ed576137ed61378c565b5060051b60200190565b600082601f83011261380857600080fd5b8135602061381d613818836137d3565b6137a2565b82815260059290921b8401810191818101908684111561383c57600080fd5b8286015b848110156138575780358352918301918301613840565b509695505050505050565b6000806040838503121561387557600080fd5b823567ffffffffffffffff8082111561388d57600080fd5b818501915085601f8301126138a157600080fd5b813560206138b1613818836137d3565b82815260059290921b840181019181810190898411156138d057600080fd5b948201945b838610156138f75785356138e88161374b565b825294820194908201906138d5565b9650508601359250508082111561390d57600080fd5b5061391a858286016137f7565b9150509250929050565b60008060006060848603121561393957600080fd5b83356139448161374b565b925060208401356139548161374b565b929592945050506040919091013590565b60006020828403121561397757600080fd5b81356139828161374b565b9392505050565b801515811461128257600080fd5b600080604083850312156139aa57600080fd5b82356139b58161374b565b915060208301356139c581613989565b809150509250929050565b6000602082840312156139e257600080fd5b5035919050565b600080604083850312156139fc57600080fd5b8235613a078161374b565b915060208301356139c58161374b565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b80820180821115610e2657610e26613a4c565b600181811c90821680613a8957607f821691505b602082108103613aa957634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b600060018201613ad757613ad7613a4c565b5060010190565b600060208284031215613af057600080fd5b5051919050565b600060208284031215613b0957600080fd5b815161398281613989565b8082028115828204841417610e2657610e26613a4c565b600082613b4857634e487b7160e01b600052601260045260246000fd5b500490565b60208082526025908201527f43616e6e6f7420736574206d61782073656c6c20616d74206c6f776572207468604082015264616e20312560d81b606082015260800190565b600080600080600080600080610100898b031215613baf57600080fd5b8851613bba8161374b565b809850506020890151965060408901519550606089015194506080890151935060a0890151925060c0890151915060e089015190509295985092959890939650565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b81810381811115610e2657610e26613a4c565b600060208284031215613ca957600080fd5b81516139828161374b565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015613d045784516001600160a01b031683529383019391830191600101613cdf565b50506001600160a01b03969096166060850152505050608001529392505050565b60008251613d378184602087016136f4565b919091019291505056fea2646970667358221220ac6c5e47e44cabae33b287d0aa0b708a36a05d7e2471f5b6d0fb20696da6e58164736f6c6343000813003360a060405234801561001057600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506001600e81905560805260805161179c61007e6000396000818161047101526109b8015261179c6000f3fe6080604052600436106101a05760003560e01c806391b89fba116100ec578063c0f306ef1161008a578063e98030c711610064578063e98030c7146104e8578063f2fde38b14610508578063fbcbc0f114610528578063ffb2c4791461054857600080fd5b8063c0f306ef14610493578063e30443bc146104b3578063e7841ec0146104d357600080fd5b8063ab6ddfa8116100c6578063ab6ddfa8146103fc578063ad7a672f14610429578063bc4c4b371461043f578063be10b6141461045f57600080fd5b806391b89fba14610386578063a8b9d240146103a6578063aafd847a146103c657600080fd5b80634e7b827f116101595780636f2789ec116101335780636f2789ec1461031d578063715018a61461033357806385a6b3ae146103485780638da5cb5b1461035e57600080fd5b80634e7b827f146102635780635183d6fd146102a35780636a4740021461030857600080fd5b806303c83302146101b457806309bbedde146101bc578063226cfa3d146101e057806327ce01471461020d5780633009a6091461022d57806331e79db01461024357600080fd5b366101af576101ad610583565b005b600080fd5b6101ad610583565b3480156101c857600080fd5b506007545b6040519081526020015b60405180910390f35b3480156101ec57600080fd5b506101cd6101fb36600461153a565b600d6020526000908152604090205481565b34801561021957600080fd5b506101cd61022836600461153a565b610607565b34801561023957600080fd5b506101cd600b5481565b34801561024f57600080fd5b506101ad61025e36600461153a565b61066a565b34801561026f57600080fd5b5061029361027e36600461153a565b600c6020526000908152604090205460ff1681565b60405190151581526020016101d7565b3480156102af57600080fd5b506102c36102be366004611557565b61070b565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e0820152610100016101d7565b34801561031457600080fd5b506101ad610778565b34801561032957600080fd5b506101cd600e5481565b34801561033f57600080fd5b506101ad610781565b34801561035457600080fd5b506101cd60065481565b34801561036a57600080fd5b506000546040516001600160a01b0390911681526020016101d7565b34801561039257600080fd5b506101cd6103a136600461153a565b6107f5565b3480156103b257600080fd5b506101cd6103c136600461153a565b6107fc565b3480156103d257600080fd5b506101cd6103e136600461153a565b6001600160a01b031660009081526003602052604090205490565b34801561040857600080fd5b506101cd61041736600461153a565b60046020526000908152604090205481565b34801561043557600080fd5b506101cd60055481565b34801561044b57600080fd5b5061029361045a366004611570565b610828565b34801561046b57600080fd5b506101cd7f000000000000000000000000000000000000000000000000000000000000000081565b34801561049f57600080fd5b506101ad6104ae36600461153a565b6108d4565b3480156104bf57600080fd5b506101ad6104ce3660046115ae565b61096c565b3480156104df57600080fd5b50600b546101cd565b3480156104f457600080fd5b506101ad610503366004611557565b610a1b565b34801561051457600080fd5b506101ad61052336600461153a565b610b84565b34801561053457600080fd5b506102c361054336600461153a565b610c6e565b34801561055457600080fd5b50610568610563366004611557565b610d55565b604080519384526020840192909252908201526060016101d7565b6005541561060557348015610603576005546105ba906105a783600160801b610e72565b6105b191906115f0565b60015490610efb565b60015560405181815233907fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d784541165119060200160405180910390a26006546105ff9082610efb565b6006555b505b565b6001600160a01b0381166000908152600260209081526040808320546004909252822054600154600160801b9261065a926106559261064f9161064a9190610e72565b610f5a565b90610f6a565b610fa8565b61066491906115f0565b92915050565b6000546001600160a01b0316331461069d5760405162461bcd60e51b815260040161069490611612565b60405180910390fd5b6001600160a01b0381166000908152600c60205260408120805460ff191660011790556106cb908290610fbb565b6106d481611054565b6040516001600160a01b038216907fa878b31040b2e6d0a9a3d3361209db3908ba62014b0dca52adbaee451d128b2590600090a250565b60008060008060008060008061072060075490565b891061074557506000965060001995508594508693508392508291508190508061076d565b60006107508a611187565b905061075b81610c6e565b98509850985098509850985098509850505b919395975091939597565b610603336111ba565b6000546001600160a01b031633146107ab5760405162461bcd60e51b815260040161069490611612565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610664825b6001600160a01b0381166000908152600360205260408120546106649061082284610607565b906112ae565b600080546001600160a01b031633146108535760405162461bcd60e51b815260040161069490611612565b600061085e846111ba565b905080156108ca576001600160a01b0384166000818152600d6020526040908190204290555184151591907fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf092906108b89085815260200190565b60405180910390a36001915050610664565b5060009392505050565b6000546001600160a01b031633146108fe5760405162461bcd60e51b815260040161069490611612565b6001600160a01b0381166000908152600c602052604090205460ff1661092357600080fd5b6001600160a01b0381166000818152600c6020526040808220805460ff19169055517f40a78dcf8526b72f2eaf598af1c7e49c8d5fc577f6c8f1bed887f3e4dfa289329190a250565b6000546001600160a01b031633146109965760405162461bcd60e51b815260040161069490611612565b6001600160a01b0382166000908152600c602052604090205460ff16610a17577f000000000000000000000000000000000000000000000000000000000000000081106109f6576109e78282610fbb565b6109f182826112f0565b610a0a565b610a01826000610fbb565b610a0a82611054565b610a15826001610828565b505b5050565b6000546001600160a01b03163314610a455760405162461bcd60e51b815260040161069490611612565b6104b08110158015610a5a5750620151808111155b610ada5760405162461bcd60e51b815260206004820152604560248201527f4469766964656e645f547261636b65723a20636c61696d57616974206d75737460448201527f206265207570646174656420746f206265747765656e203120616e6420323420606482015264686f75727360d81b608482015260a401610694565b600e548103610b515760405162461bcd60e51b815260206004820152603760248201527f4469766964656e645f547261636b65723a2043616e6e6f74207570646174652060448201527f636c61696d5761697420746f2073616d652076616c75650000000000000000006064820152608401610694565b600e5460405182907f474ea64804364a1e29a4487ddb63c3342a2dd826ccd8acf48825e680a0e6f20f90600090a3600e55565b6000546001600160a01b03163314610bae5760405162461bcd60e51b815260040161069490611612565b6001600160a01b038116610c135760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610694565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b806000808080808080610c80886113ae565b9650600019955060008712610ce257600b54871115610cae57600b54610ca79088906113f3565b9550610ce2565b600b5460075460009110610cc3576000610cd2565b600b54600754610cd2916112ae565b9050610cde8882610f6a565b9650505b610ceb886107fc565b9450610cf688610607565b6001600160a01b0389166000908152600d6020526040902054909450925082610d20576000610d2e565b600e54610d2e908490610efb565b9150428211610d3e576000610d48565b610d4882426112ae565b9050919395975091939597565b60075460009081908190808203610d77575050600b5460009250829150610e6b565b600b546000805a90506000805b8984108015610d9257508582105b15610e5a5784610da181611647565b60075490965086109050610db457600094505b600060076000018681548110610dcc57610dcc611660565b60009182526020808320909101546001600160a01b0316808352600d909152604090912054909150610dfd90611430565b15610e2057610e0d816001610828565b15610e205781610e1c81611647565b9250505b82610e2a81611647565b93505060005a905080851115610e5157610e4e610e4786836112ae565b8790610efb565b95505b9350610d849050565b600b85905590975095509193505050505b9193909250565b600082600003610e8457506000610664565b6000610e908385611676565b905082610e9d85836115f0565b14610ef45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610694565b9392505050565b600080610f08838561168d565b905083811015610ef45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610694565b6000818181121561066457600080fd5b600080610f7783856116a0565b905060008312158015610f8a5750838112155b80610f9f5750600083128015610f9f57508381125b610ef457600080fd5b600080821215610fb757600080fd5b5090565b6001600160a01b038216600090815260046020526040902080549082905580821115611017576000610fed83836112ae565b9050610ff98482611457565b806005600082825461100b919061168d565b90915550610a15915050565b80821015610a1557600061102b82846112ae565b905061103784826114b1565b806005600082825461104991906116c8565b909155505050505050565b6001600160a01b0381166000908152600a602052604090205460ff166110775750565b6001600160a01b0381166000908152600a60209081526040808320805460ff191690556008825280832083905560099091528120546007549091906110be906001906116c8565b90506000600760000182815481106110d8576110d8611660565b60009182526020808320909101546001600160a01b039081168084526009909252604080842087905590871683528220919091556007805491925082918590811061112557611125611660565b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055600780548061115f5761115f6116db565b600082815260209020810160001990810180546001600160a01b031916905501905550505050565b60006007600001828154811061119f5761119f611660565b6000918252602090912001546001600160a01b031692915050565b6000806111c6836107fc565b905080156112a5576001600160a01b0383166000908152600360205260409020546111f19082610efb565b6001600160a01b038416600081815260036020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906112409084815260200190565b60405180910390a26000836001600160a01b03168260405160006040518083038185875af1925050503d8060008114611295576040519150601f19603f3d011682016040523d82523d6000602084013e61129a565b606091505b509295945050505050565b50600092915050565b6000610ef483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114eb565b6001600160a01b0382166000908152600a602052604090205460ff161561132e576001600160a01b0391909116600090815260086020526040902055565b6001600160a01b0382166000818152600a60209081526040808320805460ff1916600190811790915560088352818420869055600780546009909452918420839055820181559091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b03191690911790555050565b6001600160a01b0381166000908152600a602052604081205460ff166113d75750600019919050565b506001600160a01b031660009081526009602052604090205490565b60008061140083856116f1565b9050600083121580156114135750838113155b80610f9f5750600083128015610f9f5750838113610ef457600080fd5b60004282111561144257506000919050565b600e5461144f42846112ae565b101592915050565b61149161147261064a83600154610e7290919063ffffffff16565b6001600160a01b038416600090815260026020526040902054906113f3565b6001600160a01b0390921660009081526002602052604090209190915550565b6114916114cc61064a83600154610e7290919063ffffffff16565b6001600160a01b03841660009081526002602052604090205490610f6a565b6000818484111561150f5760405162461bcd60e51b81526004016106949190611718565b50600061151c84866116c8565b95945050505050565b6001600160a01b038116811461060357600080fd5b60006020828403121561154c57600080fd5b8135610ef481611525565b60006020828403121561156957600080fd5b5035919050565b6000806040838503121561158357600080fd5b823561158e81611525565b9150602083013580151581146115a357600080fd5b809150509250929050565b600080604083850312156115c157600080fd5b82356115cc81611525565b946020939093013593505050565b634e487b7160e01b600052601160045260246000fd5b60008261160d57634e487b7160e01b600052601260045260246000fd5b500490565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060018201611659576116596115da565b5060010190565b634e487b7160e01b600052603260045260246000fd5b8082028115828204841417610664576106646115da565b80820180821115610664576106646115da565b80820182811260008312801582168215821617156116c0576116c06115da565b505092915050565b81810381811115610664576106646115da565b634e487b7160e01b600052603160045260246000fd5b8181036000831280158383131683831282161715611711576117116115da565b5092915050565b600060208083528351808285015260005b8181101561174557858101830151858201604001528201611729565b506000604082860101526040601f19601f830116850101925050509291505056fea26469706673582212207047e53a364c77fd1d74a4f7c3b165b979cb25fed0e63b54dec268237c4bd6d164736f6c634300081300334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65728be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0