0x60a06040819052601f80546001600160a01b03191661dead179055620493e0602555620094053881900390819083398101604081905262000040916200161e565b80516020820151600362000055838262001819565b50600462000064828262001819565b505050620000816200007b62000eff60201b60201c565b62000f03565b8061018001516020015180620000b05750610180808201516101a0810151910151620000ae9190620018fb565b155b620001025760405162461bcd60e51b815260206004820152601c60248201527f5374616b696e6720466565206973206e6f7420617661696c61626c650000000060448201526064015b60405180910390fd5b61018081015151806200014e5750610180810151610160810151610140909101516200012f9190620018fb565b1580156200014e575061018081015161028001516001600160a01b0316155b6200019c5760405162461bcd60e51b815260206004820152601a60248201527f53616c617279204665652069736e277420617661696c61626c650000000000006044820152606401620000f9565b6101808082015190810151610140820151610100830151608084015160c0850151604090950151601995620001d191620018fb565b620001dd9190620018fb565b620001e99190620018fb565b620001f59190620018fb565b620002019190620018fb565b111580156200027457506101808101516101a081015161016082015161012083015160a084015160e08501516060909501516019956200024191620018fb565b6200024d9190620018fb565b620002599190620018fb565b620002659190620018fb565b620002719190620018fb565b11155b620002c25760405162461bcd60e51b815260206004820152601a60248201527f46656573206d757374206265206c657373207468616e203235250000000000006044820152606401620000f9565b60648160400151620002d5919062001916565b8161016001511015620003515760405162461bcd60e51b815260206004820152603d60248201527f4d61782077616c6c6574206c696d69742072617465206d75737420626520677260448201527f6561746572207468616e203125206f6620746f74616c20737570706c790000006064820152608401620000f9565b6103e8816040015162000365919062001916565b816101000151101580156200039257506103e8816040015162000389919062001916565b81610120015110155b620004065760405162461bcd60e51b815260206004820152603f60248201527f4d6178207472616e73616374696f6e207261746573206d75737420626520677260448201527f6561746572207468616e20302e3125206f6620746f74616c20737570706c79006064820152608401620000f9565b80610180015161024001516001600160a01b031673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26001600160a01b03161415801562000477575080610180015161026001516001600160a01b031673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26001600160a01b031614155b8015620004b4575080610180015161028001516001600160a01b031673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26001600160a01b031614155b620005285760405162461bcd60e51b815260206004820152603760248201527f4d61726b6574696e672c206275796261636b20616e642073616c61727920637560448201527f7272656e636965732063616e6e6f7420626520574554480000000000000000006064820152608401620000f9565b60808101516001600160a01b0316158015906200056f575080608001516001600160a01b031673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc26001600160a01b031614155b620005bd5760405162461bcd60e51b815260206004820152601a60248201527f52657761726420746f6b656e2063616e6e6f74206265204554480000000000006044820152606401620000f9565b610180808201518051600e805491151560ff19928316179055602082015160118054911515919092161790556040810151600681905560608201516007556080820151600881905560a083015160095560c0830151600a81905560e0840151600b55610100840151600c819055610120850151600d55610140850151600f8190556101608601516010559585015160128190556101a090950151601355939493926200066a9190620018fb565b620006769190620018fb565b620006829190620018fb565b6200068e9190620018fb565b6200069a9190620018fb565b601455601354601054600d54600954600b54600754620006bb9190620018fb565b620006c79190620018fb565b620006d39190620018fb565b620006df9190620018fb565b620006eb9190620018fb565b6015556101808101516101c0810151601680546001600160a01b03199081166001600160a01b03938416179091556101e0830151601780548316918416919091179055610200830151601880548316918416919091179055610220830151601980548316918416919091179055610240830151601a80548316918416919091179055610260830151601b805490921690831617905561028090910151601c805460c0850151929093166001600160a81b031990931692909217600160a01b9115159190910217905560e0810151602a805461ffff191661ff001992151592831617610100909202919091179055620007e1601290565b620007ee90600a62001a36565b81610100015162000800919062001a4e565b602b55620008116012600a62001a36565b81610120015162000823919062001a4e565b602c556101408101516027805461ffff191661ff00199215159283161761010090920291909117905562000855601290565b6200086290600a62001a36565b81610160015162000874919062001a4e565b60285560a081015160808201516040516200088f906200135c565b9182526001600160a01b03166020820152604001604051809103906000f080158015620008c0573d6000803e3d6000fd5b50602480546001600160a01b0319166001600160a01b039283161790556080828101518216905260608201516040805163c45a015560e01b8152905191926000929084169163c45a01559160048083019260209291908290030181865afa15801562000930573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000956919062001a70565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620009a4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620009ca919062001a70565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000a18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a3e919062001a70565b601d80546001600160a01b038086166001600160a01b03199283168117909355601e80549185169190921617905590915062000a7f90309060001962000f55565b62000a8c8160016200107d565b6024805460405163031e79db60e41b81526001600160a01b0390911660048201819052916331e79db09101600060405180830381600087803b15801562000ad257600080fd5b505af115801562000ae7573d6000803e3d6000fd5b50506024805460405163031e79db60e41b81523060048201526001600160a01b0390911693506331e79db0925001600060405180830381600087803b15801562000b3057600080fd5b505af115801562000b45573d6000803e3d6000fd5b505060248054601f5460405163031e79db60e41b81526001600160a01b039182166004820152911693506331e79db0925001600060405180830381600087803b15801562000b9257600080fd5b505af115801562000ba7573d6000803e3d6000fd5b50506024805460195460405163031e79db60e41b81526001600160a01b039182166004820152911693506331e79db0925001600060405180830381600087803b15801562000bf457600080fd5b505af115801562000c09573d6000803e3d6000fd5b50506024805460405163031e79db60e41b81526001600160a01b03878116600483015290911693506331e79db0925001600060405180830381600087803b15801562000c5457600080fd5b505af115801562000c69573d6000803e3d6000fd5b5050505060016029600062000c83620011e060201b60201c565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905560299093527fbc72c27881d499e9ea29f42d0975d4e269d866b929e1b555435cbfe829a9d2008054851660019081179091553084528284208054861682179055601f5482168452828420805486168217905560195490911683529082208054909316811790925560269062000d2e6005546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff1996871617905560269093527f673668fde1539921a3231470503848f53fc614c057a2345bc3a2f36758a6d3ac8054851660019081179091553084528284208054861682179055601f5482168452828420805486168217905560195490911683529082208054909316811790925560229062000dd96005546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526022909352818320805485166001908117909155601f548216845282842080548616821790556019549091168352918190208054841683179055602180549093169091179091558301516113889062000e6c90670de0b6b3a764000062001a4e565b62000e78919062001916565b60205562000eb162000e926005546001600160a01b031690565b604085015162000eab90670de0b6b3a764000062001a4e565b620011ef565b826101c001516001600160a01b03166108fc846101a001519081150290604051600060405180830381858888f1935050505015801562000ef5573d6000803e3d6000fd5b5050505062001a8e565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03831662000fb95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401620000f9565b6001600160a01b0382166200101c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620000f9565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03821660009081526023602052604090205481151560ff909116151503620011155760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c756500000000000000006064820152608401620000f9565b6001600160a01b0382166000908152602360205260409020805460ff19168215801591909117909155620011a4576024805460405163031e79db60e41b81526001600160a01b038581166004830152909116916331e79db09101600060405180830381600087803b1580156200118a57600080fd5b505af11580156200119f573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6005546001600160a01b031690565b6001600160a01b038216620012475760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f2061646472657373006044820152606401620000f9565b6200126381600254620012f060201b620036d41790919060201c565b6002556001600160a01b0382166000908152602081815260409091205462001296918390620036d4620012f0821b17901c565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b600080620012ff8385620018fb565b905083811015620013535760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401620000f9565b90505b92915050565b61232380620070e283390190565b634e487b7160e01b600052604160045260246000fd5b6040516102a081016001600160401b0381118282101715620013a657620013a66200136a565b60405290565b6040516101e081016001600160401b0381118282101715620013a657620013a66200136a565b604051601f8201601f191681016001600160401b0381118282101715620013fd57620013fd6200136a565b604052919050565b600082601f8301126200141757600080fd5b81516001600160401b038111156200143357620014336200136a565b602062001449601f8301601f19168201620013d2565b82815285828487010111156200145e57600080fd5b60005b838110156200147e57858101830151828201840152820162001461565b83811115620014905760008385840101525b5095945050505050565b80516001600160a01b0381168114620014b257600080fd5b919050565b80518015158114620014b257600080fd5b60006102a08284031215620014dc57600080fd5b620014e662001380565b9050620014f382620014b7565b81526200150360208301620014b7565b602082015260408201516040820152606082015160608201526080820151608082015260a082015160a082015260c082015160c082015260e082015160e08201526101008083015181830152506101208083015181830152506101408083015181830152506101608083015181830152506101808083015181830152506101a08083015181830152506101c06200159c8184016200149a565b908201526101e0620015b08382016200149a565b90820152610200620015c48382016200149a565b90820152610220620015d88382016200149a565b90820152610240620015ec8382016200149a565b90820152610260620016008382016200149a565b90820152610280620016148382016200149a565b9082015292915050565b6000602082840312156200163157600080fd5b81516001600160401b03808211156200164957600080fd5b9083019061046082860312156200165f57600080fd5b62001669620013ac565b8251828111156200167957600080fd5b620016878782860162001405565b8252506020830151828111156200169d57600080fd5b620016ab8782860162001405565b60208301525060408301516040820152620016c9606084016200149a565b6060820152620016dc608084016200149a565b608082015260a083015160a0820152620016f960c08401620014b7565b60c08201526200170c60e08401620014b7565b60e082015261010083810151908201526101208084015190820152610140915062001739828401620014b7565b828201526101609150818301518282015261018091506200175d86838501620014c8565b828201526104208301516101a08201526200177c61044084016200149a565b6101c082015295945050505050565b600181811c90821680620017a057607f821691505b602082108103620017c157634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620012eb57600081815260208120601f850160051c81016020861015620017f05750805b601f850160051c820191505b818110156200181157828155600101620017fc565b505050505050565b81516001600160401b038111156200183557620018356200136a565b6200184d816200184684546200178b565b84620017c7565b602080601f8311600181146200188557600084156200186c5750858301515b600019600386901b1c1916600185901b17855562001811565b600085815260208120601f198616915b82811015620018b65788860151825594840194600190910190840162001895565b5085821015620018d55787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b60008219821115620019115762001911620018e5565b500190565b6000826200193457634e487b7160e01b600052601260045260246000fd5b500490565b600181815b808511156200197a5781600019048211156200195e576200195e620018e5565b808516156200196c57918102915b93841c93908002906200193e565b509250929050565b600082620019935750600162001356565b81620019a25750600062001356565b8160018114620019bb5760028114620019c657620019e6565b600191505062001356565b60ff841115620019da57620019da620018e5565b50506001821b62001356565b5060208310610133831016604e8410600b841016171562001a0b575081810a62001356565b62001a17838362001939565b806000190482111562001a2e5762001a2e620018e5565b029392505050565b600062001a4760ff84168362001982565b9392505050565b600081600019048311821515161562001a6b5762001a6b620018e5565b500290565b60006020828403121562001a8357600080fd5b62001a47826200149a565b60805161562362001abf6000396000818161107701528181614bb301528181614c730152614d1701526156236000f3fe6080604052600436106105065760003560e01c806375f0a87411610297578063b62496f511610165578063e01af92c116100cc578063ea61629c11610085578063ea61629c14610feb578063f27fd25414611005578063f2fde38b14611025578063f7228f6914611045578063f7c618c114611065578063f9d0831a1461109957600080fd5b8063e01af92c14610f40578063e2f4560514610f60578063e4f24cb014610f76578063e7841ec014610f96578063e98030c714610fab578063ea57baee14610fcb57600080fd5b8063d8144bcd1161011e578063d8144bcd14610e6e578063dc24dd5714610e8e578063dc2f218014610eae578063dc4c7dbc14610ec4578063dd62ed3e14610eda578063deab8aea14610f2057600080fd5b8063b62496f514610db2578063b6f7f68114610de2578063b805a22214610e02578063b9b71a0914610e18578063bb85c6d114610e2e578063c024666814610e4e57600080fd5b8063988be11811610209578063a8b9d240116101c2578063a8b9d24014610cc1578063a9059cbb14610ce1578063aa4bde2814610d01578063ad56c13c14610d17578063afa4f3b214610d7c578063b288ace314610d9c57600080fd5b8063988be11814610bfd5780639a7a23d614610c1d5780639c1b8af514610c3d578063a26579ad14610c53578063a457c2d714610c68578063a8a69b9d14610c8857600080fd5b8063871c128d1161025b578063871c128d14610b4a57806388bdd9be14610b6a5780638da5cb5b14610b8a578063929f136014610ba857806395d89b4114610bc85780639710545b14610bdd57600080fd5b806375f0a87414610abe578063768b2a7314610ade578063784b8e8214610af457806379e02b4414610b145780637b3c83b114610b3457600080fd5b806331e79db0116103d457806356a6cabf116103465780636843cd84116102ff5780636843cd84146109ff5780636a3725f714610a1f5780636ddd171314610a39578063700bb19114610a5357806370a0823114610a73578063715018a614610aa957600080fd5b806356a6cabf146109645780635898ac1c1461098457806359136fa51461099e5780635fc2e596146109b457806364b0f653146109ca57806365b8dbc0146109df57600080fd5b8063488eb37f11610398578063488eb37f146108a157806349bd5a5e146108c05780634e71d92d146108e05780634f844527146108f55780634fbee1931461090b5780635654d0b31461094457600080fd5b806331e79db014610801578063384c05bd1461082157806339509351146108415780633b364da8146108615780633f249df01461088157600080fd5b806318d9ceae116104785780632a6c7dba116104315780632a6c7dba1461075b5780632ba86bf21461077b5780632c1f52161461079a5780632ce86fbf146107ba57806330bb4cff146107d0578063313ce567146107e557600080fd5b806318d9ceae1461068357806321a9d82a146106bc57806322d3e2aa146106db57806323b872dd146106fb57806327a14fc21461071b578063286b3aa01461073b57600080fd5b8063095ea7b3116104ca578063095ea7b3146105d557806314e7ed23146105f5578063150c880c1461060b5780631529fbbf1461062d5780631694505e1461064e57806318160ddd1461066e57600080fd5b80630105d0fd1461051257806303c401461461053b57806305452b871461056557806306ee6ad81461057b57806306fdde03146105b357600080fd5b3661050d57005b600080fd5b34801561051e57600080fd5b50610528602b5481565b6040519081526020015b60405180910390f35b34801561054757600080fd5b50600e546105559060ff1681565b6040519015158152602001610532565b34801561057157600080fd5b5061052860095481565b34801561058757600080fd5b5060195461059b906001600160a01b031681565b6040516001600160a01b039091168152602001610532565b3480156105bf57600080fd5b506105c86110b9565b6040516105329190614e28565b3480156105e157600080fd5b506105556105f0366004614e92565b61114b565b34801561060157600080fd5b50610528600c5481565b34801561061757600080fd5b5061062b610626366004614ecc565b611162565b005b34801561063957600080fd5b50601c5461055590600160a01b900460ff1681565b34801561065a57600080fd5b50601d5461059b906001600160a01b031681565b34801561067a57600080fd5b50600254610528565b34801561068f57600080fd5b5061055561069e366004614f05565b6001600160a01b031660009081526029602052604090205460ff1690565b3480156106c857600080fd5b5060275461055590610100900460ff1681565b3480156106e757600080fd5b5061062b6106f6366004614f22565b611257565b34801561070757600080fd5b50610555610716366004614f65565b6113bd565b34801561072757600080fd5b5061062b610736366004614fa6565b611426565b34801561074757600080fd5b5061062b610756366004614fa6565b611538565b34801561076757600080fd5b5061062b610776366004614fbf565b6115c3565b34801561078757600080fd5b50602a5461055590610100900460ff1681565b3480156107a657600080fd5b5060245461059b906001600160a01b031681565b3480156107c657600080fd5b5061052860075481565b3480156107dc57600080fd5b506105286116d3565b3480156107f157600080fd5b5060405160128152602001610532565b34801561080d57600080fd5b5061062b61081c366004614f05565b611746565b34801561082d57600080fd5b5061062b61083c366004614f05565b6117a1565b34801561084d57600080fd5b5061055561085c366004614e92565b6118d8565b34801561086d57600080fd5b5061062b61087c366004614fa6565b61190e565b34801561088d57600080fd5b5061062b61089c366004614f05565b611968565b3480156108ad57600080fd5b5060215461055590610100900460ff1681565b3480156108cc57600080fd5b50601e5461059b906001600160a01b031681565b3480156108ec57600080fd5b5061062b611a0f565b34801561090157600080fd5b5061052860125481565b34801561091757600080fd5b50610555610926366004614f05565b6001600160a01b031660009081526022602052604090205460ff1690565b34801561095057600080fd5b5061062b61095f366004614fbf565b611a88565b34801561097057600080fd5b5061062b61097f366004614fbf565b611b63565b34801561099057600080fd5b506011546105559060ff1681565b3480156109aa57600080fd5b50610528602c5481565b3480156109c057600080fd5b50610528600a5481565b3480156109d657600080fd5b50610528611c78565b3480156109eb57600080fd5b5061062b6109fa366004614f05565b611cc2565b348015610a0b57600080fd5b50610528610a1a366004614f05565b611f2c565b348015610a2b57600080fd5b506027546105559060ff1681565b348015610a4557600080fd5b506021546105559060ff1681565b348015610a5f57600080fd5b5061062b610a6e366004614fa6565b611f9c565b348015610a7f57600080fd5b50610528610a8e366004614f05565b6001600160a01b031660009081526020819052604090205490565b348015610ab557600080fd5b5061062b61206f565b348015610aca57600080fd5b5060165461059b906001600160a01b031681565b348015610aea57600080fd5b5061052860085481565b348015610b0057600080fd5b5061062b610b0f366004614f05565b6120a5565b348015610b2057600080fd5b5061062b610b2f366004614f22565b61226e565b348015610b4057600080fd5b5061052860065481565b348015610b5657600080fd5b5061062b610b65366004614fa6565b6123c8565b348015610b7657600080fd5b5061062b610b85366004614f05565b61250a565b348015610b9657600080fd5b506005546001600160a01b031661059b565b348015610bb457600080fd5b5061062b610bc3366004614ecc565b6128c4565b348015610bd457600080fd5b506105c86129a8565b348015610be957600080fd5b50601b5461059b906001600160a01b031681565b348015610c0957600080fd5b5061062b610c18366004614fbf565b6129b7565b348015610c2957600080fd5b5061062b610c38366004614ecc565b612a72565b348015610c4957600080fd5b5061052860255481565b348015610c5f57600080fd5b50610528612b38565b348015610c7457600080fd5b50610555610c83366004614e92565b612b82565b348015610c9457600080fd5b50610555610ca3366004614f05565b6001600160a01b031660009081526026602052604090205460ff1690565b348015610ccd57600080fd5b50610528610cdc366004614f05565b612bd1565b348015610ced57600080fd5b50610555610cfc366004614e92565b612c04565b348015610d0d57600080fd5b5061052860285481565b348015610d2357600080fd5b50610d37610d32366004614f05565b612c11565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e082015261010001610532565b348015610d8857600080fd5b5061062b610d97366004614fa6565b612cac565b348015610da857600080fd5b50610528600d5481565b348015610dbe57600080fd5b50610555610dcd366004614f05565b60236020526000908152604090205460ff1681565b348015610dee57600080fd5b5061062b610dfd366004614fdc565b612d5a565b348015610e0e57600080fd5b5061052860135481565b348015610e2457600080fd5b5061052860105481565b348015610e3a57600080fd5b5061062b610e49366004614f05565b612eeb565b348015610e5a57600080fd5b5061062b610e69366004614ecc565b613065565b348015610e7a57600080fd5b50601c5461059b906001600160a01b031681565b348015610e9a57600080fd5b5061062b610ea9366004614f05565b61316a565b348015610eba57600080fd5b50610528600f5481565b348015610ed057600080fd5b50610528600b5481565b348015610ee657600080fd5b50610528610ef5366004614ffe565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b348015610f2c57600080fd5b5060175461059b906001600160a01b031681565b348015610f4c57600080fd5b5061062b610f5b366004614fbf565b6132e2565b348015610f6c57600080fd5b5061052860205481565b348015610f8257600080fd5b50610528610f91366004614f05565b613383565b348015610fa257600080fd5b506105286133b6565b348015610fb757600080fd5b5061062b610fc6366004614fa6565b613400565b348015610fd757600080fd5b5060185461059b906001600160a01b031681565b348015610ff757600080fd5b50602a546105559060ff1681565b34801561101157600080fd5b50610d37611020366004614fa6565b61345a565b34801561103157600080fd5b5061062b611040366004614f05565b613499565b34801561105157600080fd5b50601a5461059b906001600160a01b031681565b34801561107157600080fd5b5061059b7f000000000000000000000000000000000000000000000000000000000000000081565b3480156110a557600080fd5b5061062b6110b4366004614f05565b613531565b6060600380546110c89061502c565b80601f01602080910402602001604051908101604052809291908181526020018280546110f49061502c565b80156111415780601f1061111657610100808354040283529160200191611141565b820191906000526020600020905b81548152906001019060200180831161112457829003601f168201915b5050505050905090565b600061115833848461373a565b5060015b92915050565b6005546001600160a01b031633146111955760405162461bcd60e51b815260040161118c90615066565b60405180910390fd5b602a5460ff166111b75760405162461bcd60e51b815260040161118c9061509b565b6001600160a01b03821660009081526029602052604090205481151560ff9091161515036111f75760405162461bcd60e51b815260040161118c906150e1565b6001600160a01b038216600081815260296020908152604091829020805460ff191685151590811790915591519182527f8727c4afe988887760e8db0bbad9f9fcceee6428545956832f67c8fdbd589c1091015b60405180910390a25050565b6005546001600160a01b031633146112815760405162461bcd60e51b815260040161118c90615066565b6019818385876112918a8c61513b565b61129b919061513b565b6112a5919061513b565b6112af919061513b565b6112b9919061513b565b11156113075760405162461bcd60e51b815260206004820152601a60248201527f46656573206d757374206265206c657373207468616e20323525000000000000604482015260640161118c565b60078690556009849055600b859055600d8390556010829055601381905580828486611333898b61513b565b61133d919061513b565b611347919061513b565b611351919061513b565b61135b919061513b565b6015556040805187815260208101879052908101859052606081018490526080810183905260a081018290527f98ffcf24c99d860cbce53a40a00f892b91e84b61b9c1106ec062f7b2c17b1dad9060c0015b60405180910390a1505050505050565b60006113ca84848461385f565b61141c8433611417856040518060600160405280602881526020016155a1602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919061434e565b61373a565b5060019392505050565b6005546001600160a01b031633146114505760405162461bcd60e51b815260040161118c90615066565b60275460ff166114725760405162461bcd60e51b815260040161118c90615153565b60646114806012600a615278565b60025461148d9190615287565b6114979190615287565b8110156114fc5760405162461bcd60e51b815260206004820152602d60248201527f4d61782077616c6c65742070657263656e746167652063616e6e6f742062652060448201526c6c6f776572207468616e20312560981b606482015260840161118c565b60288190556040518181527ffbede00c52e68e7972265f0deb49773af2ec3e07ebaf22d74be3c4f0c6d56867906020015b60405180910390a150565b6005546001600160a01b031633146115625760405162461bcd60e51b815260040161118c90615066565b6024805460405163014359d560e51b8152600481018490526001600160a01b039091169163286b3aa091015b600060405180830381600087803b1580156115a857600080fd5b505af11580156115bc573d6000803e3d6000fd5b5050505050565b6005546001600160a01b031633146115ed5760405162461bcd60e51b815260040161118c90615066565b60275460ff1661160f5760405162461bcd60e51b815260040161118c90615153565b602754610100900460ff161515811515036116825760405162461bcd60e51b815260206004820152602d60248201527f4d61782077616c6c6574206c696d697420697320616c7265616479207365742060448201526c746f207468617420737461746560981b606482015260840161118c565b6027805461ff0019166101008315158102919091179182905560405160ff9190920416151581527f670f884265aba2d05e7c26efbc42f8365effc4cb3fcfcefddba0c0b71a6231f19060200161152d565b602454604080516342d359d760e11b815290516000926001600160a01b0316916385a6b3ae9160048083019260209291908290030181865afa15801561171d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061174191906152a9565b905090565b6005546001600160a01b031633146117705760405162461bcd60e51b815260040161118c90615066565b6024805460405163031e79db60e41b81526001600160a01b038481166004830152909116916331e79db0910161158e565b6005546001600160a01b031633146117cb5760405162461bcd60e51b815260040161118c90615066565b60115460ff1661181d5760405162461bcd60e51b815260206004820152601b60248201527f5374616b696e67206665652069736e277420617661696c61626c650000000000604482015260640161118c565b6019546001600160a01b039081169082160361188a5760405162461bcd60e51b815260206004820152602660248201527f5374616b696e672077616c6c657420697320616c72656164792074686174206160448201526564647265737360d01b606482015260840161118c565b601980546001600160a01b0319166001600160a01b0383169081179091556040519081527feff29f22320650eef14587b44577ea92058e98f8ac4973c413f74b979a1949af9060200161152d565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161115891859061141790866136d4565b6005546001600160a01b031633146119385760405162461bcd60e51b815260040161118c90615066565b60248054604051630dcb2e8960e01b8152600481018490526001600160a01b0390911691630dcb2e89910161158e565b6005546001600160a01b031633146119925760405162461bcd60e51b815260040161118c90615066565b6024805460405163bc4c4b3760e01b81526001600160a01b03848116600483015260009382019390935291169063bc4c4b37906044016020604051808303816000875af11580156119e7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a0b91906152c2565b5050565b6024805460405163bc4c4b3760e01b81523360048201526000928101929092526001600160a01b03169063bc4c4b37906044016020604051808303816000875af1158015611a61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a8591906152c2565b50565b6005546001600160a01b03163314611ab25760405162461bcd60e51b815260040161118c90615066565b801515601c60149054906101000a900460ff16151503611b455760405162461bcd60e51b815260206004820152604260248201527f57616c6c657420746f2077616c6c6574207472616e7366657220776974686f7560448201527f742066656520697320616c72656164792073657420746f20746861742076616c606482015261756560f01b608482015260a40161118c565b601c8054911515600160a01b0260ff60a01b19909216919091179055565b6005546001600160a01b03163314611b8d5760405162461bcd60e51b815260040161118c90615066565b602a5460ff16611baf5760405162461bcd60e51b815260040161118c9061509b565b602a54610100900460ff16151581151503611c275760405162461bcd60e51b815260206004820152603260248201527f4d6178207472616e73616374696f6e206c696d697420697320616c72656164796044820152712073657420746f207468617420737461746560701b606482015260840161118c565b602a805461ff0019166101008315158102919091179182905560405160ff9190920416151581527fe81be35e61864c26afd7a4655e99f321378d0aaae1e5af8ee67b658a7460f3cf9060200161152d565b602454604080516304ddf6ef60e11b815290516000926001600160a01b0316916309bbedde9160048083019260209291908290030181865afa15801561171d573d6000803e3d6000fd5b6005546001600160a01b03163314611cec5760405162461bcd60e51b815260040161118c90615066565b601d546001600160a01b0390811690821603611d565760405162461bcd60e51b815260206004820152602360248201527f54686520726f7574657220616c7265616479206861732074686174206164647260448201526265737360e81b606482015260840161118c565b601d546040516001600160a01b03918216918316907f8fc842bbd331dfa973645f4ed48b11683d501ebf1352708d77a5da2ab49a576e90600090a3601d80546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b815290516000929163c45a01559160048083019260209291908290030181865afa158015611ded573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e1191906152df565b6001600160a01b031663c9c6539630601d60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e9791906152df565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015611ee4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f0891906152df565b601e80546001600160a01b0319166001600160a01b03929092169190911790555050565b602480546040516370a0823160e01b81526001600160a01b0384811660048301526000939216916370a0823191015b602060405180830381865afa158015611f78573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115c91906152a9565b602480546040516001624d3b8760e01b0319815260048101849052600092839283926001600160a01b039091169163ffb2c47991016060604051808303816000875af1158015611ff0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061201491906152fc565b604080518481526020810184905290810182905260608101889052929550909350915032906000907fc864333d6121033635ab41b29ae52f10a22cf4438c3e4f1c4c68518feb2f8a989060800160405180910390a350505050565b6005546001600160a01b031633146120995760405162461bcd60e51b815260040161118c90615066565b6120a36000614388565b565b6005546001600160a01b031633146120cf5760405162461bcd60e51b815260040161118c90615066565b600e5460ff166121215760405162461bcd60e51b815260206004820152601a60248201527f53616c617279206665652069736e277420617661696c61626c65000000000000604482015260640161118c565b6018546001600160a01b039081169082160361218d5760405162461bcd60e51b815260206004820152602560248201527f53616c6172792077616c6c657420697320616c72656164792074686174206164604482015264647265737360d81b606482015260840161118c565b6001600160a01b0381163b15806121ae5750601c546001600160a01b031615155b6122205760405162461bcd60e51b815260206004820152603760248201527f53616c6172792077616c6c65742063616e6e6f74206265206120636f6e74726160448201527f6374207768656e2063757272656e637920697320424e42000000000000000000606482015260840161118c565b601880546001600160a01b0319166001600160a01b0383169081179091556040519081527fb0be59d7981f6c55cd9b4097b9762fdaede2984a14e27dceb0d9cb5afc0aa4e69060200161152d565b6005546001600160a01b031633146122985760405162461bcd60e51b815260040161118c90615066565b6019818385876122a88a8c61513b565b6122b2919061513b565b6122bc919061513b565b6122c6919061513b565b6122d0919061513b565b111561231e5760405162461bcd60e51b815260206004820152601a60248201527f46656573206d757374206265206c657373207468616e20323525000000000000604482015260640161118c565b60068690556008849055600a859055600c839055600f82905560128190558082848661234a898b61513b565b612354919061513b565b61235e919061513b565b612368919061513b565b612372919061513b565b6014556040805187815260208101879052908101859052606081018490526080810183905260a081018290527fa3d33def0313a6d92d1f19612c9bca9d7f98bdcbc654a32f87b449b5787cc8099060c0016113ad565b6005546001600160a01b031633146123f25760405162461bcd60e51b815260040161118c90615066565b62030d40811015801561240857506207a1208111155b6124715760405162461bcd60e51b815260206004820152603460248201527f676173466f7250726f63657373696e67206d757374206265206265747765656e6044820152730203230302c30303020616e64203530302c3030360641b606482015260840161118c565b60255481036124d75760405162461bcd60e51b815260206004820152602c60248201527f43616e6e6f742075706461746520676173466f7250726f63657373696e67207460448201526b6f2073616d652076616c756560a01b606482015260840161118c565b60255460405182907f40d7e40e79af4e8e5a9b3c57030d8ea93f13d669c06d448c4d631d4ae7d23db790600090a3602555565b6005546001600160a01b031633146125345760405162461bcd60e51b815260040161118c90615066565b6024546001600160a01b03908116908216036125a85760405162461bcd60e51b815260206004820152602d60248201527f546865206469766964656e6420747261636b657220616c72656164792068617360448201526c2074686174206164647265737360981b606482015260840161118c565b6000819050306001600160a01b0316816001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156125f5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061261991906152df565b6001600160a01b0316146126955760405162461bcd60e51b815260206004820152603c60248201527f546865206e6577206469766964656e6420747261636b6572206d75737420626560448201527f206f776e65642062792074686520746f6b656e20636f6e747261637400000000606482015260840161118c565b60405163031e79db60e41b81526001600160a01b03821660048201819052906331e79db090602401600060405180830381600087803b1580156126d757600080fd5b505af11580156126eb573d6000803e3d6000fd5b505060405163031e79db60e41b81523060048201526001600160a01b03841692506331e79db09150602401600060405180830381600087803b15801561273057600080fd5b505af1158015612744573d6000803e3d6000fd5b5050601f5460405163031e79db60e41b81526001600160a01b03918216600482015290841692506331e79db09150602401600060405180830381600087803b15801561278f57600080fd5b505af11580156127a3573d6000803e3d6000fd5b5050601d5460405163031e79db60e41b81526001600160a01b03918216600482015290841692506331e79db09150602401600060405180830381600087803b1580156127ee57600080fd5b505af1158015612802573d6000803e3d6000fd5b5050601e5460405163031e79db60e41b81526001600160a01b03918216600482015290841692506331e79db09150602401600060405180830381600087803b15801561284d57600080fd5b505af1158015612861573d6000803e3d6000fd5b50506024546040516001600160a01b03918216935090851691507f90c7d74461c613da5efa97d90740869367d74ab3aa5837aa4ae9a975f954b7a890600090a3602480546001600160a01b0319166001600160a01b039290921691909117905550565b6005546001600160a01b031633146128ee5760405162461bcd60e51b815260040161118c90615066565b60275460ff166129105760405162461bcd60e51b815260040161118c90615153565b6001600160a01b03821660009081526026602052604090205481151560ff9091161515036129505760405162461bcd60e51b815260040161118c906150e1565b6001600160a01b038216600081815260266020908152604091829020805460ff191685151590811790915591519182527f1d9a11e204b58ad56c619c61600e42167624659d218f0143f1f64956b0daae6c910161124b565b6060600480546110c89061502c565b6005546001600160a01b031633146129e15760405162461bcd60e51b815260040161118c90615066565b801515602160019054906101000a900460ff16151503612a585760405162461bcd60e51b815260206004820152602c60248201527f537761702077697468206c696d697420697320616c726561647920736574207460448201526b6f207468617420737461746560a01b606482015260840161118c565b602180549115156101000261ff0019909216919091179055565b6005546001600160a01b03163314612a9c5760405162461bcd60e51b815260040161118c90615066565b601e546001600160a01b0390811690831603612b2e5760405162461bcd60e51b815260206004820152604560248201527f5468652050616e63616b655377617020706169722063616e6e6f74206265207260448201527f656d6f7665642066726f6d206175746f6d617465644d61726b65744d616b6572606482015264506169727360d81b608482015260a40161118c565b611a0b82826143da565b60245460408051631bc9e27b60e21b815290516000926001600160a01b031691636f2789ec9160048083019260209291908290030181865afa15801561171d573d6000803e3d6000fd5b60006111583384611417856040518060600160405280602581526020016155c9602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919061434e565b602480546040516302a2e74960e61b81526001600160a01b03848116600483015260009392169163a8b9d2409101611f5b565b600061115833848461385f565b6024805460405163fbcbc0f160e01b81526001600160a01b03848116600483015260009384938493849384938493849384939091169163fbcbc0f191015b61010060405180830381865afa158015612c6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c91919061532a565b97509750975097509750975097509750919395975091939597565b6005546001600160a01b03163314612cd65760405162461bcd60e51b815260040161118c90615066565b620f4240612ce360025490565b612ced9190615287565b8111612d555760405162461bcd60e51b815260206004820152603160248201527f4e657720416d6f756e74206d757374206d6f7265207468616e20302e3030303160448201527025206f6620746f74616c20737570706c7960781b606482015260840161118c565b602055565b6005546001600160a01b03163314612d845760405162461bcd60e51b815260040161118c90615066565b602a5460ff16612da65760405162461bcd60e51b815260040161118c9061509b565b6103e8612db56012600a615278565b600254612dc29190615287565b612dcc9190615287565b8210158015612e0057506103e8612de56012600a615278565b600254612df29190615287565b612dfc9190615287565b8110155b612e725760405162461bcd60e51b815260206004820152603f60248201527f4d6178205472616e73616374696f6e206c696d69732063616e6e6f742062652060448201527f6c6f776572207468616e20302e3125206f6620746f74616c20737570706c7900606482015260840161118c565b612e7e6012600a615278565b612e889083615394565b602b55612e976012600a615278565b612ea19082615394565b602c819055602b546040517f2a88f79986e057b8152c19cea35cd214cf53364efbf95d5b22b37797c05be55f92612edf928252602082015260400190565b60405180910390a15050565b6005546001600160a01b03163314612f155760405162461bcd60e51b815260040161118c90615066565b6016546001600160a01b0390811690821603612f845760405162461bcd60e51b815260206004820152602860248201527f4d61726b6574696e672077616c6c657420697320616c72656164792074686174604482015267206164647265737360c01b606482015260840161118c565b6001600160a01b0381163b1580612fa55750601a546001600160a01b031615155b6130175760405162461bcd60e51b815260206004820152603a60248201527f4d61726b6574696e672077616c6c65742063616e6e6f74206265206120636f6e60448201527f7472616374207768656e2063757272656e637920697320424e42000000000000606482015260840161118c565b601680546001600160a01b0319166001600160a01b0383169081179091556040519081527fa964ba5c52d7e7bfcae4fb1ae4db9f211756d0e618e85fac5283b882a39e7a0b9060200161152d565b6005546001600160a01b0316331461308f5760405162461bcd60e51b815260040161118c90615066565b6001600160a01b03821660009081526022602052604090205481151560ff9091161515036131125760405162461bcd60e51b815260206004820152602a60248201527f4163636f756e7420697320616c7265616479207468652076616c7565206f6620604482015269276578636c756465642760b01b606482015260840161118c565b6001600160a01b038216600081815260226020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910161124b565b6005546001600160a01b031633146131945760405162461bcd60e51b815260040161118c90615066565b6017546001600160a01b03908116908216036132015760405162461bcd60e51b815260206004820152602660248201527f4275796261636b2077616c6c657420697320616c72656164792074686174206160448201526564647265737360d01b606482015260840161118c565b6001600160a01b0381163b15806132225750601b546001600160a01b031615155b6132945760405162461bcd60e51b815260206004820152603860248201527f4275796261636b2077616c6c65742063616e6e6f74206265206120636f6e747260448201527f616374207768656e2063757272656e637920697320424e420000000000000000606482015260840161118c565b601780546001600160a01b0319166001600160a01b0383169081179091556040519081527f3e00e5c2cd3f171acb433b785fca1f688d3fe2389451a73c271318e33c5ec02e9060200161152d565b6005546001600160a01b0316331461330c5760405162461bcd60e51b815260040161118c90615066565b60215481151560ff9091161515036133705760405162461bcd60e51b815260206004820152602160248201527f5377617020697320616c72656164792073657420746f207468617420737461746044820152606560f81b606482015260840161118c565b6021805460ff1916911515919091179055565b602480546040516327ce014760e01b81526001600160a01b0384811660048301526000939216916327ce01479101611f5b565b6024546040805163039e107b60e61b815290516000926001600160a01b03169163e7841ec09160048083019260209291908290030181865afa15801561171d573d6000803e3d6000fd5b6005546001600160a01b0316331461342a5760405162461bcd60e51b815260040161118c90615066565b6024805460405163e98030c760e01b8152600481018490526001600160a01b039091169163e98030c7910161158e565b60248054604051635183d6fd60e01b81526004810184905260009283928392839283928392839283926001600160a01b031691635183d6fd9101612c4f565b6005546001600160a01b031633146134c35760405162461bcd60e51b815260040161118c90615066565b6001600160a01b0381166135285760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161118c565b611a8581614388565b6005546001600160a01b0316331461355b5760405162461bcd60e51b815260040161118c90615066565b306001600160a01b038216036135b35760405162461bcd60e51b815260206004820181905260248201527f4f776e65722063616e6e6f7420636c61696d206e617469766520746f6b656e73604482015260640161118c565b6001600160a01b0381166135ed5760405133904780156108fc02916000818181858888f19350505050158015611a0b573d6000803e3d6000fd5b6040516370a0823160e01b815230600482015281906000906001600160a01b038316906370a0823190602401602060405180830381865afa158015613636573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061365a91906152a9565b60405163a9059cbb60e01b8152336004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303816000875af11580156136aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136ce91906152c2565b50505050565b6000806136e1838561513b565b9050838110156137335760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161118c565b9392505050565b6001600160a01b03831661379c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161118c565b6001600160a01b0382166137fd5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161118c565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383166138855760405162461bcd60e51b815260040161118c906153b3565b6001600160a01b0382166138ab5760405162461bcd60e51b815260040161118c906153f8565b806000036138c4576138bf83836000614538565b505050565b602a54610100900460ff16156139ab57601e546001600160a01b03848116911614806138fd5750601e546001600160a01b038381169116145b801561392257506001600160a01b03831660009081526029602052604090205460ff16155b801561394757506001600160a01b03821660009081526029602052604090205460ff16155b156139ab57601e546001600160a01b039081169084160361398957602b548111156139845760405162461bcd60e51b815260040161118c9061543b565b6139ab565b602c548111156139ab5760405162461bcd60e51b815260040161118c9061543b565b30600090815260208181526040909120549054602154908210159060ff1680156139d25750805b80156139e7575060215462010000900460ff16155b8015613a0c57506001600160a01b03851660009081526023602052604090205460ff16155b8015613a2757506000601554601454613a25919061513b565b115b15613f54576021805462ff00001916620100001790819055610100900460ff1615613a525760205491505b6000601554601454613a64919061513b565b90506000600754600654613a78919061513b565b90506000600b54600a54613a8c919061513b565b90506000600954600854613aa0919061513b565b90506000600d54600c54613ab4919061513b565b90506000601054600f54613ac8919061513b565b90506000601354601254613adc919061513b565b90506000808715613b075788613af2898d615394565b613afc9190615287565b9150613b0782614641565b8215613b715788613b18848d615394565b613b229190615287565b601954909150613b3d9030906001600160a01b031683614538565b6040518181527fafba1489df28e27c673e6daf26f6cf0e47e78cc4916ed43bedfd0ceef78620a69060200160405180910390a15b613b7b818361513b565b613b85908c615498565b9a5060008486613b95898b61513b565b613b9f919061513b565b613ba9919061513b565b905060008c118015613bbb5750600081115b15613f3d57604080516002808252606082018352479260009291906020830190803683370190505090503081600081518110613bf957613bf96154af565b6001600160a01b03928316602091820292909201810191909152601d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015613c52573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c7691906152df565b81600181518110613c8957613c896154af565b60200260200101906001600160a01b031690816001600160a01b031681525050601d60009054906101000a90046001600160a01b03166001600160a01b031663791ac9478f60008430426040518663ffffffff1660e01b8152600401613cf3959493929190615509565b600060405180830381600087803b158015613d0d57600080fd5b505af1158015613d21573d6000803e3d6000fd5b5050505060008247613d339190615498565b90508a15613dd357600084613d488d84615394565b613d529190615287565b601a549091506001600160a01b0316613d8057601654613d7b906001600160a01b031682614884565b613d9e565b601654601a54613d9e9183916001600160a01b03918216911661499d565b6040518181527fddce3d5e4f18a9c2902704a38b56baadd81a9af59b8ded8a3220b6a6c1696b6b9060200160405180910390a1505b8815613e7157600084613de68b84615394565b613df09190615287565b601b549091506001600160a01b0316613e1e57601754613e19906001600160a01b031682614884565b613e3c565b601754601b54613e3c9183916001600160a01b03918216911661499d565b6040518181527f3ec58ee176e1acbbe315f4a07c9123500e770af8180c2acfa7f0842ea138cf099060200160405180910390a1505b8715613f0f57600084613e848a84615394565b613e8e9190615287565b601c549091506001600160a01b0316613ebc57601854613eb7906001600160a01b031682614884565b613eda565b601854601c54613eda9183916001600160a01b03918216911661499d565b6040518181527f1fd3398f0606700b7acf5d8f9c3b9200797a376b69f3066787a82055688092a89060200160405180910390a1505b8915613f3957600084613f228c84615394565b613f2c9190615287565b9050613f3781614af0565b505b5050505b50506021805462ff00001916905550505050505050505b6021546001600160a01b03861660009081526022602052604090205460ff62010000909204821615911680613fa157506001600160a01b03851660009081526022602052604090205460ff165b15613faa575060005b601c54600160a01b900460ff168015613fd15750601e546001600160a01b03878116911614155b8015613feb5750601e546001600160a01b03868116911614155b15613ff4575060005b801561405557601e546000906001600160a01b039081169088160361401c5750601454614021565b506015545b6000606461402f8388615394565b6140399190615287565b90506140458187615498565b9550614052883083614538565b50505b602754610100900460ff1615614155576001600160a01b03861660009081526026602052604090205460ff161580156140a757506001600160a01b03851660009081526026602052604090205460ff16155b80156140c15750601e546001600160a01b03868116911614155b15614155576001600160a01b0385166000908152602081905260409020546028546140ec868361513b565b11156141535760405162461bcd60e51b815260206004820152603060248201527f4d617857616c6c65743a20526563697069656e7420657863656564732074686560448201526f081b585e15d85b1b195d105b5bdd5b9d60821b606482015260840161118c565b505b614160868686614538565b6024546001600160a01b031663e30443bc87614191816001600160a01b031660009081526020819052604090205490565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b1580156141d757600080fd5b505af19250505080156141e8575060015b506024546001600160a01b031663e30443bc8661421a816001600160a01b031660009081526020819052604090205490565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b15801561426057600080fd5b505af1925050508015614271575060015b5060215462010000900460ff1661434657602554602480546040516001624d3b8760e01b03198152600481018490526001600160a01b039091169163ffb2c47991016060604051808303816000875af19250505080156142ee575060408051601f3d908101601f191682019092526142eb918101906152fc565b60015b156143445760408051848152602081018490529081018290526060810185905232906001907fc864333d6121033635ab41b29ae52f10a22cf4438c3e4f1c4c68518feb2f8a989060800160405180910390a35050505b505b505050505050565b600081848411156143725760405162461bcd60e51b815260040161118c9190614e28565b50600061437f8486615498565b95945050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b03821660009081526023602052604090205481151560ff9091161515036144705760405162461bcd60e51b815260206004820152603860248201527f4175746f6d61746564206d61726b6574206d616b65722070616972206973206160448201527f6c72656164792073657420746f20746861742076616c75650000000000000000606482015260840161118c565b6001600160a01b0382166000908152602360205260409020805460ff191682158015919091179091556144fc576024805460405163031e79db60e41b81526001600160a01b038581166004830152909116916331e79db09101600060405180830381600087803b1580156144e357600080fd5b505af11580156144f7573d6000803e3d6000fd5b505050505b604051811515906001600160a01b038416907fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab90600090a35050565b6001600160a01b03831661455e5760405162461bcd60e51b815260040161118c906153b3565b6001600160a01b0382166145845760405162461bcd60e51b815260040161118c906153f8565b6145c18160405180606001604052806026815260200161557b602691396001600160a01b038616600090815260208190526040902054919061434e565b6001600160a01b0380851660009081526020819052604080822093909355908416815220546145f090826136d4565b6001600160a01b038381166000818152602081815260409182902094909455518481529092918616917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9101613852565b600061464e600283615287565b9050600061465c8284615498565b60408051600280825260608201835292935047926000926020830190803683370190505090503081600081518110614696576146966154af565b6001600160a01b03928316602091820292909201810191909152601d54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa1580156146ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061471391906152df565b81600181518110614726576147266154af565b6001600160a01b039283166020918202929092010152601d5460405163791ac94760e01b815291169063791ac9479061476c908790600090869030904290600401615509565b600060405180830381600087803b15801561478657600080fd5b505af115801561479a573d6000803e3d6000fd5b50505050600082476147ac9190615498565b601d54601f5460405163f305d71960e01b81523060048201526024810188905260006044820181905260648201526001600160a01b0391821660848201524260a4820152929350169063f305d71990839060c40160606040518083038185885af115801561481e573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061484391906152fc565b505060408051878152602081018490529081018690527f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb56191506060016113ad565b804710156148d45760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e6365000000604482015260640161118c565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114614921576040519150601f19603f3d011682016040523d82523d6000602084013e614926565b606091505b50509050806138bf5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d61792068617665207265766572746564000000000000606482015260840161118c565b6040805160028082526060820183526000926020830190803683375050601d54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015614a07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614a2b91906152df565b81600081518110614a3e57614a3e6154af565b60200260200101906001600160a01b031690816001600160a01b0316815250508181600181518110614a7257614a726154af565b6001600160a01b039283166020918202929092010152601d5460405163b6f9de9560e01b815291169063b6f9de95908690614ab890600090869089904290600401615545565b6000604051808303818588803b158015614ad157600080fd5b505af1158015614ae5573d6000803e3d6000fd5b505050505050505050565b6040805160028082526060820183526000926020830190803683375050601d54604080516315ab88c960e31b815290519394506001600160a01b039091169263ad5c4648925060048083019260209291908290030181865afa158015614b5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614b7e91906152df565b81600081518110614b9157614b916154af565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110614be557614be56154af565b6001600160a01b039283166020918202929092010152601d5460405163b6f9de9560e01b815291169063b6f9de95908490614c2b90600090869030904290600401615545565b6000604051808303818588803b158015614c4457600080fd5b505af1158015614c58573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820152600093507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031692506370a082319150602401602060405180830381865afa158015614cc4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614ce891906152a9565b6024805460405163a9059cbb60e01b81526001600160a01b0391821660048201529182018390529192506000917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015614d60573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614d8491906152c2565b905080156136ce5760248054604051633243c79160e01b8152600481018590526001600160a01b0390911691633243c7919101600060405180830381600087803b158015614dd157600080fd5b505af1158015614de5573d6000803e3d6000fd5b505050507fb0cc2628d6d644cf6be9d8110e142297ac910d6d8026d795a99f272fd9ad60b182604051614e1a91815260200190565b60405180910390a150505050565b600060208083528351808285015260005b81811015614e5557858101830151858201604001528201614e39565b81811115614e67576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114611a8557600080fd5b60008060408385031215614ea557600080fd5b8235614eb081614e7d565b946020939093013593505050565b8015158114611a8557600080fd5b60008060408385031215614edf57600080fd5b8235614eea81614e7d565b91506020830135614efa81614ebe565b809150509250929050565b600060208284031215614f1757600080fd5b813561373381614e7d565b60008060008060008060c08789031215614f3b57600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b600080600060608486031215614f7a57600080fd5b8335614f8581614e7d565b92506020840135614f9581614e7d565b929592945050506040919091013590565b600060208284031215614fb857600080fd5b5035919050565b600060208284031215614fd157600080fd5b813561373381614ebe565b60008060408385031215614fef57600080fd5b50508035926020909101359150565b6000806040838503121561501157600080fd5b823561501c81614e7d565b91506020830135614efa81614e7d565b600181811c9082168061504057607f821691505b60208210810361506057634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526026908201527f4d6178207472616e73616374696f6e206c696d6974206973206e6f7420617661604082015265696c61626c6560d01b606082015260800190565b60208082526024908201527f4163636f756e7420697320616c72656164792073657420746f207468617420736040820152637461746560e01b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561514e5761514e615125565b500190565b60208082526021908201527f4d61782077616c6c6574206c696d6974206973206e6f7420617661696c61626c6040820152606560f81b606082015260800190565b600181815b808511156151cf5781600019048211156151b5576151b5615125565b808516156151c257918102915b93841c9390800290615199565b509250929050565b6000826151e65750600161115c565b816151f35750600061115c565b816001811461520957600281146152135761522f565b600191505061115c565b60ff84111561522457615224615125565b50506001821b61115c565b5060208310610133831016604e8410600b8410161715615252575081810a61115c565b61525c8383615194565b806000190482111561527057615270615125565b029392505050565b600061373360ff8416836151d7565b6000826152a457634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156152bb57600080fd5b5051919050565b6000602082840312156152d457600080fd5b815161373381614ebe565b6000602082840312156152f157600080fd5b815161373381614e7d565b60008060006060848603121561531157600080fd5b8351925060208401519150604084015190509250925092565b600080600080600080600080610100898b03121561534757600080fd5b885161535281614e7d565b809850506020890151965060408901519550606089015194506080890151935060a0890151925060c0890151915060e089015190509295985092959890939650565b60008160001904831182151516156153ae576153ae615125565b500290565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6020808252603b908201527f416e74695768616c653a205472616e7366657220616d6f756e7420657863656560408201527f647320746865206d61785472616e73616374696f6e416d6f756e740000000000606082015260800190565b6000828210156154aa576154aa615125565b500390565b634e487b7160e01b600052603260045260246000fd5b600081518084526020808501945080840160005b838110156154fe5781516001600160a01b0316875295820195908201906001016154d9565b509495945050505050565b85815284602082015260a06040820152600061552860a08301866154c5565b6001600160a01b0394909416606083015250608001529392505050565b84815260806020820152600061555e60808301866154c5565b6001600160a01b0394909416604083015250606001529291505056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220e208f93b07dcd3815c65806fee7e609cb07b8ec9785da3ddbd1fb283b5dcd3ee64736f6c634300080f003360a06040523480156200001157600080fd5b50604051620023233803806200232383398101604081905262000034916200014d565b6040518060400160405280600e81526020016d2932bbb0b932102a3930b1b5b2b960911b8152506040518060400160405280600f81526020016e2234bb34b232b7322a3930b1b5b2b960891b815250828282816003908162000097919062000231565b506004620000a6828262000231565b505050620000c3620000bd620000f760201b60201c565b620000fb565b6001600160a01b03166080525050610e10601155620000eb82670de0b6b3a7640000620002fd565b601255506200032b9050565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080604083850312156200016157600080fd5b825160208401519092506001600160a01b03811681146200018157600080fd5b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620001b757607f821691505b602082108103620001d857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200022c57600081815260208120601f850160051c81016020861015620002075750805b601f850160051c820191505b81811015620002285782815560010162000213565b5050505b505050565b81516001600160401b038111156200024d576200024d6200018c565b62000265816200025e8454620001a2565b84620001de565b602080601f8311600181146200029d5760008415620002845750858301515b600019600386901b1c1916600185901b17855562000228565b600085815260208120601f198616915b82811015620002ce57888601518255948401946001909101908401620002ad565b5085821015620002ed5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60008160001904831182151516156200032657634e487b7160e01b600052601160045260246000fd5b500290565b608051611fd56200034e6000396000818161055401526117e20152611fd56000f3fe608060405234801561001057600080fd5b50600436106102325760003560e01c8063715018a611610130578063bc4c4b37116100b8578063e98030c71161007c578063e98030c714610529578063f2fde38b1461053c578063f7c618c11461054f578063fbcbc0f114610576578063ffb2c4791461058957600080fd5b8063bc4c4b37146104b9578063be10b614146104cc578063dd62ed3e146104d5578063e30443bc1461050e578063e7841ec01461052157600080fd5b806395d89b41116100ff57806395d89b411461044f578063a457c2d714610457578063a8b9d2401461046a578063a9059cbb1461047d578063aafd847a1461049057600080fd5b8063715018a61461040657806385a6b3ae1461040e5780638da5cb5b1461041757806391b89fba1461043c57600080fd5b80633009a609116101be5780634e7b827f116101825780634e7b827f146103515780635183d6fd146103745780636a474002146103cc5780636f2789ec146103d457806370a08231146103dd57600080fd5b80633009a60914610300578063313ce5671461030957806331e79db0146103185780633243c7911461032b578063395093511461033e57600080fd5b806318160ddd1161020557806318160ddd1461029f578063226cfa3d146102a757806323b872dd146102c757806327ce0147146102da578063286b3aa0146102ed57600080fd5b806306fdde0314610237578063095ea7b31461025557806309bbedde146102785780630dcb2e891461028a575b600080fd5b61023f6105b7565b60405161024c9190611bb7565b60405180910390f35b610268610263366004611c21565b610649565b604051901515815260200161024c565b600a545b60405190815260200161024c565b61029d610298366004611c4d565b610660565b005b60025461027c565b61027c6102b5366004611c66565b60106020526000908152604090205481565b6102686102d5366004611c83565b610722565b61027c6102e8366004611c66565b61078b565b61029d6102fb366004611c4d565b6107e7565b61027c600e5481565b6040516012815260200161024c565b61029d610326366004611c66565b610816565b61029d610339366004611c4d565b61093d565b61026861034c366004611c21565b6109fb565b61026861035f366004611c66565b600f6020526000908152604090205460ff1681565b610387610382366004611c4d565b610a31565b604080516001600160a01b0390991689526020890197909752958701949094526060860192909252608085015260a084015260c083015260e08201526101000161024c565b61029d610b85565b61027c60115481565b61027c6103eb366004611c66565b6001600160a01b031660009081526020819052604090205490565b61029d610c07565b61027c60075481565b6005546001600160a01b03165b6040516001600160a01b03909116815260200161024c565b61027c61044a366004611c66565b610c3b565b61023f610c46565b610268610465366004611c21565b610c55565b61027c610478366004611c66565b610ca4565b61026861048b366004611c21565b610cd0565b61027c61049e366004611c66565b6001600160a01b031660009081526009602052604090205490565b6102686104c7366004611cd2565b610cdd565b61027c60125481565b61027c6104e3366004611d0b565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61029d61051c366004611c21565b610d8b565b600e5461027c565b61029d610537366004611c4d565b610ef5565b61029d61054a366004611c66565b61102e565b6104247f000000000000000000000000000000000000000000000000000000000000000081565b610387610584366004611c66565b6110c6565b61059c610597366004611c4d565b61122f565b6040805193845260208401929092529082015260600161024c565b6060600380546105c690611d39565b80601f01602080910402602001604051908101604052809291908181526020018280546105f290611d39565b801561063f5780601f106106145761010080835404028352916020019161063f565b820191906000526020600020905b81548152906001019060200180831161062257829003601f168201915b5050505050905090565b600061065633848461134c565b5060015b92915050565b6005546001600160a01b031633146106935760405162461bcd60e51b815260040161068a90611d73565b60405180910390fd5b601254810361071d5760405162461bcd60e51b815260206004820152604a60248201527f4e6577206d696d696d756d2062616c616e636520666f72206469766964656e6460448201527f2063616e6e6f742062652073616d652061732063757272656e74206d696e696d606482015269756d2062616c616e636560b01b608482015260a40161068a565b601255565b600061072f848484611470565b610781843361077c85604051806060016040528060288152602001611f53602891396001600160a01b038a16600090815260016020908152604080832033845290915290205491906114af565b61134c565b5060019392505050565b6001600160a01b03811660009081526008602090815260408083205491839052822054600654600160801b926107dd926107d8926107d2916107cd91906114e9565b611572565b90611582565b6115c0565b61065a9190611dbe565b6005546001600160a01b031633146108115760405162461bcd60e51b815260040161068a90611d73565b600e55565b6005546001600160a01b031633146108405760405162461bcd60e51b815260040161068a90611d73565b6001600160a01b0381166000908152600f602052604090205460ff161561086657600080fd5b6001600160a01b0381166000908152600f60205260408120805460ff191660011790556108949082906115d3565b60405163131836e760e21b8152600a60048201526001600160a01b03821660248201527376ea031c6a8d39cbcac1b56db44ae5b5dbb5a58990634c60db9c9060440160006040518083038186803b1580156108ee57600080fd5b505af4158015610902573d6000803e3d6000fd5b50506040516001600160a01b03841692507fa878b31040b2e6d0a9a3d3361209db3908ba62014b0dca52adbaee451d128b259150600090a250565b6005546001600160a01b031633146109675760405162461bcd60e51b815260040161068a90611d73565b600061097260025490565b1161097c57600080fd5b80156109f8576109af61098e60025490565b61099c83600160801b6114e9565b6109a69190611dbe565b60065490611638565b60065560405181815233907fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d784541165119060200160405180910390a26007546109f49082611638565b6007555b50565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161065691859061077c9086611638565b600080600080600080600080600a7376ea031c6a8d39cbcac1b56db44ae5b5dbb5a58963deb3d89690916040518263ffffffff1660e01b8152600401610a7991815260200190565b602060405180830381865af4158015610a96573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aba9190611de0565b8910610adf575060009650600019955085945086935083925082915081905080610b7a565b6040516368d54f3f60e11b8152600a6004820152602481018a90526000907376ea031c6a8d39cbcac1b56db44ae5b5dbb5a5899063d1aa9e7e90604401602060405180830381865af4158015610b39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5d9190611df9565b9050610b68816110c6565b98509850985098509850985098509850505b919395975091939597565b60405162461bcd60e51b815260206004820152604960248201527f77697468647261774469766964656e642064697361626c65642e20557365207460448201527f68652027636c61696d272066756e6374696f6e206f6e20746865206d61696e2060648201526831b7b73a3930b1ba1760b91b608482015260a40161068a565b565b6005546001600160a01b03163314610c315760405162461bcd60e51b815260040161068a90611d73565b610c056000611697565b600061065a82610ca4565b6060600480546105c690611d39565b6000610656338461077c85604051806060016040528060258152602001611f7b602591393360009081526001602090815260408083206001600160a01b038d16845290915290205491906114af565b6001600160a01b03811660009081526009602052604081205461065a90610cca8461078b565b906116e9565b6000610656338484611470565b6005546000906001600160a01b03163314610d0a5760405162461bcd60e51b815260040161068a90611d73565b6000610d158461172b565b90508015610d81576001600160a01b038416600081815260106020526040908190204290555184151591907fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf09290610d6f9085815260200190565b60405180910390a3600191505061065a565b5060009392505050565b6005546001600160a01b03163314610db55760405162461bcd60e51b815260040161068a90611d73565b6001600160a01b0382166000908152600f602052604090205460ff16610ef1576012548110610e6657610de882826115d3565b604051632f0ad01760e21b8152600a60048201526001600160a01b0383166024820152604481018290527376ea031c6a8d39cbcac1b56db44ae5b5dbb5a5899063bc2b405c9060640160006040518083038186803b158015610e4957600080fd5b505af4158015610e5d573d6000803e3d6000fd5b50505050610ee4565b610e718260006115d3565b60405163131836e760e21b8152600a60048201526001600160a01b03831660248201527376ea031c6a8d39cbcac1b56db44ae5b5dbb5a58990634c60db9c9060440160006040518083038186803b158015610ecb57600080fd5b505af4158015610edf573d6000803e3d6000fd5b505050505b610eef826001610cdd565b505b5050565b6005546001600160a01b03163314610f1f5760405162461bcd60e51b815260040161068a90611d73565b610e108110158015610f345750620151808111155b610f9c5760405162461bcd60e51b815260206004820152603360248201527f636c61696d57616974206d757374206265207570646174656420746f206265746044820152727765656e203120616e6420323420686f75727360681b606482015260840161068a565b6011548103610ffb5760405162461bcd60e51b815260206004820152602560248201527f43616e6e6f742075706461746520636c61696d5761697420746f2073616d652060448201526476616c756560d81b606482015260840161068a565b60115460405182907f474ea64804364a1e29a4487ddb63c3342a2dd826ccd8acf48825e680a0e6f20f90600090a3601155565b6005546001600160a01b031633146110585760405162461bcd60e51b815260040161068a90611d73565b6001600160a01b0381166110bd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161068a565b6109f881611697565b6040516317e142d160e01b8152600a60048201526001600160a01b038216602482015281906000908190819081908190819081907376ea031c6a8d39cbcac1b56db44ae5b5dbb5a589906317e142d190604401602060405180830381865af4158015611136573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061115a9190611de0565b96506000199550600087126111bc57600e5487111561118857600e546111819088906118b0565b95506111bc565b600e54600a546000911061119d5760006111ac565b600e54600a546111ac916116e9565b90506111b88882611582565b9650505b6111c588610ca4565b94506111d08861078b565b6001600160a01b0389166000908152601060205260409020549094509250826111fa576000611208565b601154611208908490611638565b9150428211611218576000611222565b61122282426116e9565b9050919395975091939597565b600a5460009081908190808203611251575050600e5460009250829150611345565b600e546000805a90506000805b898410801561126c57508582105b15611334578461127b81611e16565b600a549096508610905061128e57600094505b6000600a60000186815481106112a6576112a6611e2f565b60009182526020808320909101546001600160a01b031680835260109091526040909120549091506112d7906118ed565b156112fa576112e7816001610cdd565b156112fa57816112f681611e16565b9250505b8261130481611e16565b93505060005a90508085111561132b5761132861132186836116e9565b8790611638565b95505b935061125e9050565b600e85905590975095509193505050505b9193909250565b6001600160a01b0383166113ae5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161068a565b6001600160a01b03821661140f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161068a565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60405162461bcd60e51b8152602060048201526014602482015273139bc81d1c985b9cd9995c9cc8185b1b1bddd95960621b604482015260640161068a565b600081848411156114d35760405162461bcd60e51b815260040161068a9190611bb7565b5060006114e08486611e45565b95945050505050565b6000826000036114fb5750600061065a565b60006115078385611e5c565b9050826115148583611dbe565b1461156b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161068a565b9392505050565b6000818181121561065a57600080fd5b60008061158f8385611e7b565b9050600083121580156115a25750838112155b806115b757506000831280156115b757508381125b61156b57600080fd5b6000808212156115cf57600080fd5b5090565b6001600160a01b0382166000908152602081905260409020548082111561161257600061160083836116e9565b905061160c8482611914565b50610eef565b80821015610eef57600061162682846116e9565b90506116328482611978565b50505050565b6000806116458385611ebc565b90508381101561156b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161068a565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600061156b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114af565b60008061173783610ca4565b905080156118a7576001600160a01b0383166000908152600960205260409020546117629082611638565b6001600160a01b038416600081815260096020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906117b19084815260200190565b60405180910390a260405163a9059cbb60e01b81526001600160a01b038481166004830152602482018390526000917f00000000000000000000000000000000000000000000000000000000000000009091169063a9059cbb906044016020604051808303816000875af115801561182d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118519190611ed4565b9050806118a0576001600160a01b03841660009081526009602052604090205461187b90836116e9565b6001600160a01b03909416600090815260096020526040812094909455509192915050565b5092915050565b50600092915050565b6000806118bd8385611ef1565b9050600083121580156118d05750838113155b806115b757506000831280156115b7575083811361156b57600080fd5b6000428211156118ff57506000919050565b60115461190c42846116e9565b101592915050565b61191e82826119bc565b6119586119396107cd836006546114e990919063ffffffff16565b6001600160a01b038416600090815260086020526040902054906118b0565b6001600160a01b0390921660009081526008602052604090209190915550565b6119828282611aa7565b61195861199d6107cd836006546114e990919063ffffffff16565b6001600160a01b03841660009081526008602052604090205490611582565b6001600160a01b038216611a125760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161068a565b611a1e60008383610eef565b600254611a2b9082611638565b6002556001600160a01b038216600090815260208190526040902054611a519082611638565b6001600160a01b038316600081815260208181526040808320949094559251848152919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b6001600160a01b038216611b075760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161068a565b611b1382600083610eef565b611b5081604051806060016040528060228152602001611f31602291396001600160a01b03851660009081526020819052604090205491906114af565b6001600160a01b038316600090815260208190526040902055600254611b7690826116e9565b6002556040518181526000906001600160a01b038416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90602001611a9b565b600060208083528351808285015260005b81811015611be457858101830151858201604001528201611bc8565b81811115611bf6576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b03811681146109f857600080fd5b60008060408385031215611c3457600080fd5b8235611c3f81611c0c565b946020939093013593505050565b600060208284031215611c5f57600080fd5b5035919050565b600060208284031215611c7857600080fd5b813561156b81611c0c565b600080600060608486031215611c9857600080fd5b8335611ca381611c0c565b92506020840135611cb381611c0c565b929592945050506040919091013590565b80151581146109f857600080fd5b60008060408385031215611ce557600080fd5b8235611cf081611c0c565b91506020830135611d0081611cc4565b809150509250929050565b60008060408385031215611d1e57600080fd5b8235611d2981611c0c565b91506020830135611d0081611c0c565b600181811c90821680611d4d57607f821691505b602082108103611d6d57634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600082611ddb57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215611df257600080fd5b5051919050565b600060208284031215611e0b57600080fd5b815161156b81611c0c565b600060018201611e2857611e28611da8565b5060010190565b634e487b7160e01b600052603260045260246000fd5b600082821015611e5757611e57611da8565b500390565b6000816000190483118215151615611e7657611e76611da8565b500290565b600080821280156001600160ff1b0384900385131615611e9d57611e9d611da8565b600160ff1b8390038412811615611eb657611eb6611da8565b50500190565b60008219821115611ecf57611ecf611da8565b500190565b600060208284031215611ee657600080fd5b815161156b81611cc4565b60008083128015600160ff1b850184121615611f0f57611f0f611da8565b6001600160ff1b0384018313811615611f2a57611f2a611da8565b5050039056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220760bfd84e4f092075adb341ff2f1def533ddfbd5a96f6ee3d9bde507d416289864736f6c634300080f00330000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000046000000000000000000000000000000000000000000000000000000000000004a000000000000000000000000000000000000000000000000000000000000f42400000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000021e19e0c9bab240000000000000000000000000000000000000000000000000021e19e0c9bab2400000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000152d02c7e14af6800000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000d77b20ddc9316588d9db868afe4b074d181a26f0000000000000000000000000d77b20ddc9316588d9db868afe4b074d181a26f0000000000000000000000000d77b20ddc9316588d9db868afe4b074d181a26f0000000000000000000000000d77b20ddc9316588d9db868afe4b074d181a26f000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d77b20ddc9316588d9db868afe4b074d181a26f000000000000000000000000000000000000000000000000000000000000000a46756c6c7942616b65640000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024642000000000000000000000000000000000000000000000000000000000000