0x6080604052600436106102345760003560e01c80637571336a1161012e578063c8125e45116100ab578063df778d261161006f578063df778d261461067c578063e2f4560514610691578063e884f260146106a7578063f2fde38b146106bc578063f8b45b05146106dc57600080fd5b8063c8125e45146105ec578063c876d0b91461060c578063c8c8ebe414610626578063d257b34f1461063c578063dd62ed3e1461065c57600080fd5b8063a457c2d7116100f2578063a457c2d71461054d578063a9059cbb1461056d578063bbc0c7421461058d578063c0246668146105ac578063c18bc195146105cc57600080fd5b80637571336a146104b05780638da5cb5b146104d057806395d89b41146104f857806396f73da31461050d5780639a7a23d61461052d57600080fd5b8063313ce567116101bc578063667185241161018057806366718524146104265780636db794371461044657806370a0823114610466578063715018a614610486578063751039fc1461049b57600080fd5b8063313ce5671461038457806339509351146103a05780633d18678e146103c05780634a62bb65146103d35780634fbee193146103ed57600080fd5b806312b77e8a1161020357806312b77e8a146102f657806313114a9d1461030b57806318160ddd1461032f578063203e727e1461034457806323b872dd1461036457600080fd5b806306fdde0314610240578063095ea7b31461026b5780630b559c6f1461029b5780630f3a325f146102bd57600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b506102556106f2565b604051610262919061233c565b60405180910390f35b34801561027757600080fd5b5061028b6102863660046123a6565b610784565b6040519015158152602001610262565b3480156102a757600080fd5b506102bb6102b6366004612419565b61079c565b005b3480156102c957600080fd5b5061028b6102d83660046124cb565b6001600160a01b031660009081526008602052604090205460ff1690565b34801561030257600080fd5b506102bb6108c2565b34801561031757600080fd5b5061032160145481565b604051908152602001610262565b34801561033b57600080fd5b50600254610321565b34801561035057600080fd5b506102bb61035f3660046124e8565b610944565b34801561037057600080fd5b5061028b61037f366004612501565b610a21565b34801561039057600080fd5b5060405160128152602001610262565b3480156103ac57600080fd5b5061028b6103bb3660046123a6565b610a45565b6102bb6103ce3660046124e8565b610a67565b3480156103df57600080fd5b5060105461028b9060ff1681565b3480156103f957600080fd5b5061028b6104083660046124cb565b6001600160a01b031660009081526019602052604090205460ff1690565b34801561043257600080fd5b506102bb6104413660046124cb565b610c06565b34801561045257600080fd5b506102bb610461366004612542565b610c8d565b34801561047257600080fd5b506103216104813660046124cb565b610d20565b34801561049257600080fd5b506102bb610d3b565b3480156104a757600080fd5b5061028b610d71565b3480156104bc57600080fd5b506102bb6104cb366004612564565b610dae565b3480156104dc57600080fd5b506005546040516001600160a01b039091168152602001610262565b34801561050457600080fd5b50610255610e03565b34801561051957600080fd5b506102bb6105283660046125a2565b610e12565b34801561053957600080fd5b506102bb610548366004612564565b610e3f565b34801561055957600080fd5b5061028b6105683660046123a6565b610ef7565b34801561057957600080fd5b5061028b6105883660046123a6565b610f72565b34801561059957600080fd5b5060105461028b90610100900460ff1681565b3480156105b857600080fd5b506102bb6105c7366004612564565b610f80565b3480156105d857600080fd5b506102bb6105e73660046124e8565b611009565b3480156105f857600080fd5b506102bb610607366004612419565b6110da565b34801561061857600080fd5b5060135461028b9060ff1681565b34801561063257600080fd5b50610321600d5481565b34801561064857600080fd5b5061028b6106573660046124e8565b61116c565b34801561066857600080fd5b50610321610677366004612637565b6112be565b34801561068857600080fd5b506102bb6112e9565b34801561069d57600080fd5b50610321600e5481565b3480156106b357600080fd5b5061028b611324565b3480156106c857600080fd5b506102bb6106d73660046124cb565b611361565b3480156106e857600080fd5b50610321600f5481565b60606003805461070190612665565b80601f016020809104026020016040519081016040528092919081815260200182805461072d90612665565b801561077a5780601f1061074f5761010080835404028352916020019161077a565b820191906000526020600020905b81548152906001019060200180831161075d57829003601f168201915b5050505050905090565b6000336107928185856113f9565b5060019392505050565b6005546001600160a01b031633146107cf5760405162461bcd60e51b81526004016107c69061269f565b60405180910390fd5b60005b81518110156108be5760075482516001600160a01b03909116908390839081106107fe576107fe6126d4565b60200260200101516001600160a01b03161415801561084f575060065482516001600160a01b039091169083908390811061083b5761083b6126d4565b60200260200101516001600160a01b031614155b156108ac5760006008600084848151811061086c5761086c6126d4565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055505b806108b681612700565b9150506107d2565b5050565b6005546001600160a01b031633146108ec5760405162461bcd60e51b81526004016107c69061269f565b600c546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610939576040519150601f19603f3d011682016040523d82523d6000602084013e61093e565b606091505b50505050565b6005546001600160a01b0316331461096e5760405162461bcd60e51b81526004016107c69061269f565b670de0b6b3a76400006103e861098360025490565b61098e906001612719565b6109989190612738565b6109a29190612738565b811015610a095760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b60648201526084016107c6565b610a1b81670de0b6b3a7640000612719565b600d5550565b600033610a2f85828561151d565b610a3a858585611591565b506001949350505050565b600033610792818585610a5883836112be565b610a62919061275a565b6113f9565b6005546001600160a01b03163314610a915760405162461bcd60e51b81526004016107c69061269f565b6064811115610adb5760405162461bcd60e51b81526020600482015260166024820152756d757374206265206265747765656e20302d3130302560501b60448201526064016107c6565b600a5415610b1e5760405162461bcd60e51b815260206004820152601060248201526f185b1c9958591e481b185d5b98da195960821b60448201526064016107c6565b801580610b2b5750600034115b610b775760405162461bcd60e51b815260206004820152601760248201527f6e6565642045544820666f7220696e697469616c204c5000000000000000000060448201526064016107c6565b60006011819055606482610b8a60025490565b610b949190612719565b610b9e9190612738565b9050600081610bac60025490565b610bb69190612772565b90508115610bc857610bc88234611d55565b8015610bea57610bea30610be46005546001600160a01b031690565b83611591565b50506010805461ff0019166101001790555042600a5543600b55565b6005546001600160a01b03163314610c305760405162461bcd60e51b81526004016107c69061269f565b600c546040516001600160a01b03918216918316907f5deb5ef622431f0df5a39b72dd556892f68ba42aa0f3aaf0800e166ce866492890600090a3600c80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610cb75760405162461bcd60e51b81526004016107c69061269f565b60158290556016819055610ccb818361275a565b6014819055600a10156108be5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016107c6565b6001600160a01b031660009081526020819052604090205490565b6005546001600160a01b03163314610d655760405162461bcd60e51b81526004016107c69061269f565b610d6f6000611e2a565b565b6005546000906001600160a01b03163314610d9e5760405162461bcd60e51b81526004016107c69061269f565b506010805460ff19169055600190565b6005546001600160a01b03163314610dd85760405162461bcd60e51b81526004016107c69061269f565b6001600160a01b03919091166000908152601a60205260409020805460ff1916911515919091179055565b60606004805461070190612665565b6005546001600160a01b03163314610e3c5760405162461bcd60e51b81526004016107c69061269f565b50565b6005546001600160a01b03163314610e695760405162461bcd60e51b81526004016107c69061269f565b6007546001600160a01b0390811690831603610eed5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b657250616972730000000000000060648201526084016107c6565b6108be8282611e7c565b60003381610f0582866112be565b905083811015610f655760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107c6565b610a3a82868684036113f9565b600033610792818585611591565b6005546001600160a01b03163314610faa5760405162461bcd60e51b81526004016107c69061269f565b6001600160a01b038216600081815260196020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b031633146110335760405162461bcd60e51b81526004016107c69061269f565b670de0b6b3a76400006103e861104860025490565b611053906005612719565b61105d9190612738565b6110679190612738565b8110156110c25760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b60648201526084016107c6565b6110d481670de0b6b3a7640000612719565b600f5550565b6005546001600160a01b031633146111045760405162461bcd60e51b81526004016107c69061269f565b60005b81518110156108be57600060086000848481518110611128576111286126d4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061116481612700565b915050611107565b6005546000906001600160a01b031633146111995760405162461bcd60e51b81526004016107c69061269f565b620186a06111a660025490565b6111b1906001612719565b6111bb9190612738565b8210156112285760405162461bcd60e51b815260206004820152603560248201527f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60448201527410181718181892903a37ba30b61039bab838363c9760591b60648201526084016107c6565b6103e861123460025490565b61123f906005612719565b6112499190612738565b8211156112b55760405162461bcd60e51b815260206004820152603460248201527f5377617020616d6f756e742063616e6e6f742062652068696768657220746861604482015273371018171a92903a37ba30b61039bab838363c9760611b60648201526084016107c6565b50600e55600190565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6005546001600160a01b031633146113135760405162461bcd60e51b81526004016107c69061269f565b6108ec61131f30610d20565b611ed0565b6005546000906001600160a01b031633146113515760405162461bcd60e51b81526004016107c69061269f565b506013805460ff19169055600190565b6005546001600160a01b0316331461138b5760405162461bcd60e51b81526004016107c69061269f565b6001600160a01b0381166113f05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107c6565b610e3c81611e2a565b6001600160a01b03831661145b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107c6565b6001600160a01b0382166114bc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107c6565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061152984846112be565b9050600019811461093e57818110156115845760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107c6565b61093e84848484036113f9565b6001600160a01b0383166115b75760405162461bcd60e51b81526004016107c690612789565b6001600160a01b0382166115dd5760405162461bcd60e51b81526004016107c6906127ce565b6001600160a01b03831660009081526008602052604090205460ff16156116825760405162461bcd60e51b815260206004820152604d60248201527f596f7572206164647265737320686173206265656e206d61726b65642061732060448201527f6120736e697065722c20796f752061726520756e61626c6520746f207472616e60648201526c39b332b91037b91039bbb0b81760991b608482015260a4016107c6565b8060000361169b576116968383600061202a565b505050565b601054610100900460ff16156116f457601154600b546116bb919061275a565b4310156116f45760405162461bcd60e51b81526020600482015260076024820152661393d5081093d560ca1b60448201526064016107c6565b60105460ff1615611b8f576005546001600160a01b0384811691161480159061172b57506005546001600160a01b03838116911614155b801561173f57506001600160a01b03821615155b801561175657506001600160a01b03821661dead14155b8015611765575060095460ff16155b15611b8f57601054610100900460ff166117fd576001600160a01b03831660009081526019602052604090205460ff16806117b857506001600160a01b03821660009081526019602052604090205460ff165b6117fd5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016107c6565b61180682610d20565b15801561182957506001600160a01b0382166000908152601b6020526040902054155b1561184a576001600160a01b0382166000908152601b602052604090204290555b60135460ff1615611949576005546001600160a01b0383811691161480159061188157506006546001600160a01b03838116911614155b801561189b57506007546001600160a01b03838116911614155b15611949573260009081526012602052604090205443116119365760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016107c6565b3260009081526012602052604090204390555b6001600160a01b0383166000908152601c602052604090205460ff16801561198a57506001600160a01b0382166000908152601a602052604090205460ff16155b15611a5e57600d548111156119ff5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b60648201526084016107c6565b600f54611a0b83610d20565b611a15908361275a565b1115611a595760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107c6565b611b8f565b6001600160a01b0382166000908152601c602052604090205460ff168015611a9f57506001600160a01b0383166000908152601a602052604090205460ff16155b15611b1557600d54811115611a595760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b60648201526084016107c6565b6001600160a01b0382166000908152601a602052604090205460ff16611b8f57600f54611b4183610d20565b611b4b908361275a565b1115611b8f5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107c6565b6000611b9a30610d20565b600e5490915081108015908190611bb4575060095460ff16155b8015611bd957506001600160a01b0385166000908152601c602052604090205460ff16155b8015611bfe57506001600160a01b03851660009081526019602052604090205460ff16155b8015611c2357506001600160a01b03841660009081526019602052604090205460ff16155b15611c48576009805460ff19166001179055611c3d61217e565b6009805460ff191690555b6009546001600160a01b03861660009081526019602052604090205460ff91821615911680611c8f57506001600160a01b03851660009081526019602052604090205460ff165b15611c98575060005b60008115611d4157611cc06064611cba6014548861231190919063ffffffff16565b90612324565b905060145460165482611cd39190612719565b611cdd9190612738565b60186000828254611cee919061275a565b9091555050601454601554611d039083612719565b611d0d9190612738565b60176000828254611d1e919061275a565b90915550508015611d3457611d3487308361202a565b611d3e8186612772565b94505b611d4c87878761202a565b50505050505050565b600654611d6d9030906001600160a01b0316846113f9565b6006546001600160a01b031663f305d719823085600080611d966005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015611dfe573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611e239190612811565b5050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166000818152601c6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611f0557611f056126d4565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611f5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f82919061283f565b81600181518110611f9557611f956126d4565b6001600160a01b039283166020918202929092010152600654611fbb91309116846113f9565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611ff490859060009086903090429060040161285c565b600060405180830381600087803b15801561200e57600080fd5b505af1158015612022573d6000803e3d6000fd5b505050505050565b6001600160a01b0383166120505760405162461bcd60e51b81526004016107c690612789565b6001600160a01b0382166120765760405162461bcd60e51b81526004016107c6906127ce565b6001600160a01b038316600090815260208190526040902054818110156120ee5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107c6565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061212590849061275a565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161217191815260200190565b60405180910390a361093e565b600061218930610d20565b9050600060175460185461219d919061275a565b90508115806121aa575080155b156121b3575050565b600e548211156121c357600e5491505b6000600282601854856121d69190612719565b6121e09190612738565b6121ea9190612738565b905060006121f88483612330565b90504761220482611ed0565b60006122104783612330565b9050600061222d86611cba6017548561231190919063ffffffff16565b9050600061223b8284612772565b600060188190556017819055600c5460405192935090916001600160a01b039091169084908381818185875af1925050503d8060008114612298576040519150601f19603f3d011682016040523d82523d6000602084013e61229d565b606091505b5060009250505086158015906122b35750600082115b15612306576122c28783611d55565b601854604080518881526020810185905280820192909252517f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619181900360600190a15b505050505050505050565b600061231d8284612719565b9392505050565b600061231d8284612738565b600061231d8284612772565b600060208083528351808285015260005b818110156123695785810183015185820160400152820161234d565b8181111561237b576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114610e3c57600080fd5b600080604083850312156123b957600080fd5b82356123c481612391565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612411576124116123d2565b604052919050565b6000602080838503121561242c57600080fd5b823567ffffffffffffffff8082111561244457600080fd5b818501915085601f83011261245857600080fd5b81358181111561246a5761246a6123d2565b8060051b915061247b8483016123e8565b818152918301840191848101908884111561249557600080fd5b938501935b838510156124bf57843592506124af83612391565b828252938501939085019061249a565b98975050505050505050565b6000602082840312156124dd57600080fd5b813561231d81612391565b6000602082840312156124fa57600080fd5b5035919050565b60008060006060848603121561251657600080fd5b833561252181612391565b9250602084013561253181612391565b929592945050506040919091013590565b6000806040838503121561255557600080fd5b50508035926020909101359150565b6000806040838503121561257757600080fd5b823561258281612391565b91506020830135801515811461259757600080fd5b809150509250929050565b600060208083850312156125b557600080fd5b823567ffffffffffffffff808211156125cd57600080fd5b818501915085601f8301126125e157600080fd5b8135818111156125f3576125f36123d2565b612605601f8201601f191685016123e8565b9150808252868482850101111561261b57600080fd5b8084840185840137600090820190930192909252509392505050565b6000806040838503121561264a57600080fd5b823561265581612391565b9150602083013561259781612391565b600181811c9082168061267957607f821691505b60208210810361269957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612712576127126126ea565b5060010190565b6000816000190483118215151615612733576127336126ea565b500290565b60008261275557634e487b7160e01b600052601260045260246000fd5b500490565b6000821982111561276d5761276d6126ea565b500190565b600082821015612784576127846126ea565b500390565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60008060006060848603121561282657600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561285157600080fd5b815161231d81612391565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156128ac5784516001600160a01b031683529383019391830191600101612887565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122081a8153fa69d8c78f802f00a2066c483635f7c88494214cd21a22b59e0f12cc664736f6c634300080f0033
0x60806040526010805461ffff19166001908117909155600a6011556013805460ff191690911790553480156200003457600080fd5b506040805180820182526005808252644641424c4560d81b6020808401829052845180860190955291845290830152906003620000728382620006ea565b506004620000818282620006ea565b5050506200009e620000986200038e60201b60201c565b62000392565b737a250d5630b4cf539739df2c5dacb4c659f2488d620000c0816001620003e4565b600680546001600160a01b0319166001600160a01b0383169081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200011a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001409190620007b6565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200018e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001b49190620007b6565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000202573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002289190620007b6565b600780546001600160a01b0319166001600160a01b0392909216918217905562000254906001620003e4565b6007546200026d906001600160a01b031660016200045e565b6003806b0ac544ca1016c3e47834000060646200028b8284620007fe565b62000297919062000820565b600d556064620002a9826003620007fe565b620002b5919062000820565b600f90815561271090620002cb908390620007fe565b620002d7919062000820565b600e5560158390556016829055620002f0828462000843565b601455600554600c80546001600160a01b0319166001600160a01b03909216918217905562000321906001620004b2565b6200032e306001620004b2565b6200033d61dead6001620004b2565b6200035c620003546005546001600160a01b031690565b6001620003e4565b62000369306001620003e4565b6200037861dead6001620003e4565b6200038430826200055c565b505050506200085e565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6005546001600160a01b03163314620004335760405162461bcd60e51b815260206004820181905260248201526000805160206200317183398151915260448201526064015b60405180910390fd5b6001600160a01b03919091166000908152601a60205260409020805460ff1916911515919091179055565b6001600160a01b0382166000818152601c6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6005546001600160a01b03163314620004fd5760405162461bcd60e51b815260206004820181905260248201526000805160206200317183398151915260448201526064016200042a565b6001600160a01b038216600081815260196020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6001600160a01b038216620005b45760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016200042a565b8060026000828254620005c8919062000843565b90915550506001600160a01b03821660009081526020819052604081208054839290620005f790849062000843565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200067157607f821691505b6020821081036200069257634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200064157600081815260208120601f850160051c81016020861015620006c15750805b601f850160051c820191505b81811015620006e257828155600101620006cd565b505050505050565b81516001600160401b0381111562000706576200070662000646565b6200071e816200071784546200065c565b8462000698565b602080601f8311600181146200075657600084156200073d5750858301515b600019600386901b1c1916600185901b178555620006e2565b600085815260208120601f198616915b82811015620007875788860151825594840194600190910190840162000766565b5085821015620007a65787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620007c957600080fd5b81516001600160a01b0381168114620007e157600080fd5b9392505050565b634e487b7160e01b600052601160045260246000fd5b60008160001904831182151516156200081b576200081b620007e8565b500290565b6000826200083e57634e487b7160e01b600052601260045260246000fd5b500490565b60008219821115620008595762000859620007e8565b500190565b612903806200086e6000396000f3fe6080604052600436106102345760003560e01c80637571336a1161012e578063c8125e45116100ab578063df778d261161006f578063df778d261461067c578063e2f4560514610691578063e884f260146106a7578063f2fde38b146106bc578063f8b45b05146106dc57600080fd5b8063c8125e45146105ec578063c876d0b91461060c578063c8c8ebe414610626578063d257b34f1461063c578063dd62ed3e1461065c57600080fd5b8063a457c2d7116100f2578063a457c2d71461054d578063a9059cbb1461056d578063bbc0c7421461058d578063c0246668146105ac578063c18bc195146105cc57600080fd5b80637571336a146104b05780638da5cb5b146104d057806395d89b41146104f857806396f73da31461050d5780639a7a23d61461052d57600080fd5b8063313ce567116101bc578063667185241161018057806366718524146104265780636db794371461044657806370a0823114610466578063715018a614610486578063751039fc1461049b57600080fd5b8063313ce5671461038457806339509351146103a05780633d18678e146103c05780634a62bb65146103d35780634fbee193146103ed57600080fd5b806312b77e8a1161020357806312b77e8a146102f657806313114a9d1461030b57806318160ddd1461032f578063203e727e1461034457806323b872dd1461036457600080fd5b806306fdde0314610240578063095ea7b31461026b5780630b559c6f1461029b5780630f3a325f146102bd57600080fd5b3661023b57005b600080fd5b34801561024c57600080fd5b506102556106f2565b604051610262919061233c565b60405180910390f35b34801561027757600080fd5b5061028b6102863660046123a6565b610784565b6040519015158152602001610262565b3480156102a757600080fd5b506102bb6102b6366004612419565b61079c565b005b3480156102c957600080fd5b5061028b6102d83660046124cb565b6001600160a01b031660009081526008602052604090205460ff1690565b34801561030257600080fd5b506102bb6108c2565b34801561031757600080fd5b5061032160145481565b604051908152602001610262565b34801561033b57600080fd5b50600254610321565b34801561035057600080fd5b506102bb61035f3660046124e8565b610944565b34801561037057600080fd5b5061028b61037f366004612501565b610a21565b34801561039057600080fd5b5060405160128152602001610262565b3480156103ac57600080fd5b5061028b6103bb3660046123a6565b610a45565b6102bb6103ce3660046124e8565b610a67565b3480156103df57600080fd5b5060105461028b9060ff1681565b3480156103f957600080fd5b5061028b6104083660046124cb565b6001600160a01b031660009081526019602052604090205460ff1690565b34801561043257600080fd5b506102bb6104413660046124cb565b610c06565b34801561045257600080fd5b506102bb610461366004612542565b610c8d565b34801561047257600080fd5b506103216104813660046124cb565b610d20565b34801561049257600080fd5b506102bb610d3b565b3480156104a757600080fd5b5061028b610d71565b3480156104bc57600080fd5b506102bb6104cb366004612564565b610dae565b3480156104dc57600080fd5b506005546040516001600160a01b039091168152602001610262565b34801561050457600080fd5b50610255610e03565b34801561051957600080fd5b506102bb6105283660046125a2565b610e12565b34801561053957600080fd5b506102bb610548366004612564565b610e3f565b34801561055957600080fd5b5061028b6105683660046123a6565b610ef7565b34801561057957600080fd5b5061028b6105883660046123a6565b610f72565b34801561059957600080fd5b5060105461028b90610100900460ff1681565b3480156105b857600080fd5b506102bb6105c7366004612564565b610f80565b3480156105d857600080fd5b506102bb6105e73660046124e8565b611009565b3480156105f857600080fd5b506102bb610607366004612419565b6110da565b34801561061857600080fd5b5060135461028b9060ff1681565b34801561063257600080fd5b50610321600d5481565b34801561064857600080fd5b5061028b6106573660046124e8565b61116c565b34801561066857600080fd5b50610321610677366004612637565b6112be565b34801561068857600080fd5b506102bb6112e9565b34801561069d57600080fd5b50610321600e5481565b3480156106b357600080fd5b5061028b611324565b3480156106c857600080fd5b506102bb6106d73660046124cb565b611361565b3480156106e857600080fd5b50610321600f5481565b60606003805461070190612665565b80601f016020809104026020016040519081016040528092919081815260200182805461072d90612665565b801561077a5780601f1061074f5761010080835404028352916020019161077a565b820191906000526020600020905b81548152906001019060200180831161075d57829003601f168201915b5050505050905090565b6000336107928185856113f9565b5060019392505050565b6005546001600160a01b031633146107cf5760405162461bcd60e51b81526004016107c69061269f565b60405180910390fd5b60005b81518110156108be5760075482516001600160a01b03909116908390839081106107fe576107fe6126d4565b60200260200101516001600160a01b03161415801561084f575060065482516001600160a01b039091169083908390811061083b5761083b6126d4565b60200260200101516001600160a01b031614155b156108ac5760006008600084848151811061086c5761086c6126d4565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055505b806108b681612700565b9150506107d2565b5050565b6005546001600160a01b031633146108ec5760405162461bcd60e51b81526004016107c69061269f565b600c546040516000916001600160a01b03169047908381818185875af1925050503d8060008114610939576040519150601f19603f3d011682016040523d82523d6000602084013e61093e565b606091505b50505050565b6005546001600160a01b0316331461096e5760405162461bcd60e51b81526004016107c69061269f565b670de0b6b3a76400006103e861098360025490565b61098e906001612719565b6109989190612738565b6109a29190612738565b811015610a095760405162461bcd60e51b815260206004820152602f60248201527f43616e6e6f7420736574206d61785472616e73616374696f6e416d6f756e742060448201526e6c6f776572207468616e20302e312560881b60648201526084016107c6565b610a1b81670de0b6b3a7640000612719565b600d5550565b600033610a2f85828561151d565b610a3a858585611591565b506001949350505050565b600033610792818585610a5883836112be565b610a62919061275a565b6113f9565b6005546001600160a01b03163314610a915760405162461bcd60e51b81526004016107c69061269f565b6064811115610adb5760405162461bcd60e51b81526020600482015260166024820152756d757374206265206265747765656e20302d3130302560501b60448201526064016107c6565b600a5415610b1e5760405162461bcd60e51b815260206004820152601060248201526f185b1c9958591e481b185d5b98da195960821b60448201526064016107c6565b801580610b2b5750600034115b610b775760405162461bcd60e51b815260206004820152601760248201527f6e6565642045544820666f7220696e697469616c204c5000000000000000000060448201526064016107c6565b60006011819055606482610b8a60025490565b610b949190612719565b610b9e9190612738565b9050600081610bac60025490565b610bb69190612772565b90508115610bc857610bc88234611d55565b8015610bea57610bea30610be46005546001600160a01b031690565b83611591565b50506010805461ff0019166101001790555042600a5543600b55565b6005546001600160a01b03163314610c305760405162461bcd60e51b81526004016107c69061269f565b600c546040516001600160a01b03918216918316907f5deb5ef622431f0df5a39b72dd556892f68ba42aa0f3aaf0800e166ce866492890600090a3600c80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610cb75760405162461bcd60e51b81526004016107c69061269f565b60158290556016819055610ccb818361275a565b6014819055600a10156108be5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016107c6565b6001600160a01b031660009081526020819052604090205490565b6005546001600160a01b03163314610d655760405162461bcd60e51b81526004016107c69061269f565b610d6f6000611e2a565b565b6005546000906001600160a01b03163314610d9e5760405162461bcd60e51b81526004016107c69061269f565b506010805460ff19169055600190565b6005546001600160a01b03163314610dd85760405162461bcd60e51b81526004016107c69061269f565b6001600160a01b03919091166000908152601a60205260409020805460ff1916911515919091179055565b60606004805461070190612665565b6005546001600160a01b03163314610e3c5760405162461bcd60e51b81526004016107c69061269f565b50565b6005546001600160a01b03163314610e695760405162461bcd60e51b81526004016107c69061269f565b6007546001600160a01b0390811690831603610eed5760405162461bcd60e51b815260206004820152603960248201527f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060448201527f6175746f6d617465644d61726b65744d616b657250616972730000000000000060648201526084016107c6565b6108be8282611e7c565b60003381610f0582866112be565b905083811015610f655760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107c6565b610a3a82868684036113f9565b600033610792818585611591565b6005546001600160a01b03163314610faa5760405162461bcd60e51b81526004016107c69061269f565b6001600160a01b038216600081815260196020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b6005546001600160a01b031633146110335760405162461bcd60e51b81526004016107c69061269f565b670de0b6b3a76400006103e861104860025490565b611053906005612719565b61105d9190612738565b6110679190612738565b8110156110c25760405162461bcd60e51b8152602060048201526024808201527f43616e6e6f7420736574206d617857616c6c6574206c6f776572207468616e20604482015263302e352560e01b60648201526084016107c6565b6110d481670de0b6b3a7640000612719565b600f5550565b6005546001600160a01b031633146111045760405162461bcd60e51b81526004016107c69061269f565b60005b81518110156108be57600060086000848481518110611128576111286126d4565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061116481612700565b915050611107565b6005546000906001600160a01b031633146111995760405162461bcd60e51b81526004016107c69061269f565b620186a06111a660025490565b6111b1906001612719565b6111bb9190612738565b8210156112285760405162461bcd60e51b815260206004820152603560248201527f5377617020616d6f756e742063616e6e6f74206265206c6f776572207468616e60448201527410181718181892903a37ba30b61039bab838363c9760591b60648201526084016107c6565b6103e861123460025490565b61123f906005612719565b6112499190612738565b8211156112b55760405162461bcd60e51b815260206004820152603460248201527f5377617020616d6f756e742063616e6e6f742062652068696768657220746861604482015273371018171a92903a37ba30b61039bab838363c9760611b60648201526084016107c6565b50600e55600190565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6005546001600160a01b031633146113135760405162461bcd60e51b81526004016107c69061269f565b6108ec61131f30610d20565b611ed0565b6005546000906001600160a01b031633146113515760405162461bcd60e51b81526004016107c69061269f565b506013805460ff19169055600190565b6005546001600160a01b0316331461138b5760405162461bcd60e51b81526004016107c69061269f565b6001600160a01b0381166113f05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107c6565b610e3c81611e2a565b6001600160a01b03831661145b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107c6565b6001600160a01b0382166114bc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107c6565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061152984846112be565b9050600019811461093e57818110156115845760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016107c6565b61093e84848484036113f9565b6001600160a01b0383166115b75760405162461bcd60e51b81526004016107c690612789565b6001600160a01b0382166115dd5760405162461bcd60e51b81526004016107c6906127ce565b6001600160a01b03831660009081526008602052604090205460ff16156116825760405162461bcd60e51b815260206004820152604d60248201527f596f7572206164647265737320686173206265656e206d61726b65642061732060448201527f6120736e697065722c20796f752061726520756e61626c6520746f207472616e60648201526c39b332b91037b91039bbb0b81760991b608482015260a4016107c6565b8060000361169b576116968383600061202a565b505050565b601054610100900460ff16156116f457601154600b546116bb919061275a565b4310156116f45760405162461bcd60e51b81526020600482015260076024820152661393d5081093d560ca1b60448201526064016107c6565b60105460ff1615611b8f576005546001600160a01b0384811691161480159061172b57506005546001600160a01b03838116911614155b801561173f57506001600160a01b03821615155b801561175657506001600160a01b03821661dead14155b8015611765575060095460ff16155b15611b8f57601054610100900460ff166117fd576001600160a01b03831660009081526019602052604090205460ff16806117b857506001600160a01b03821660009081526019602052604090205460ff165b6117fd5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b60448201526064016107c6565b61180682610d20565b15801561182957506001600160a01b0382166000908152601b6020526040902054155b1561184a576001600160a01b0382166000908152601b602052604090204290555b60135460ff1615611949576005546001600160a01b0383811691161480159061188157506006546001600160a01b03838116911614155b801561189b57506007546001600160a01b03838116911614155b15611949573260009081526012602052604090205443116119365760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016107c6565b3260009081526012602052604090204390555b6001600160a01b0383166000908152601c602052604090205460ff16801561198a57506001600160a01b0382166000908152601a602052604090205460ff16155b15611a5e57600d548111156119ff5760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b60648201526084016107c6565b600f54611a0b83610d20565b611a15908361275a565b1115611a595760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107c6565b611b8f565b6001600160a01b0382166000908152601c602052604090205460ff168015611a9f57506001600160a01b0383166000908152601a602052604090205460ff16155b15611b1557600d54811115611a595760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b60648201526084016107c6565b6001600160a01b0382166000908152601a602052604090205460ff16611b8f57600f54611b4183610d20565b611b4b908361275a565b1115611b8f5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b60448201526064016107c6565b6000611b9a30610d20565b600e5490915081108015908190611bb4575060095460ff16155b8015611bd957506001600160a01b0385166000908152601c602052604090205460ff16155b8015611bfe57506001600160a01b03851660009081526019602052604090205460ff16155b8015611c2357506001600160a01b03841660009081526019602052604090205460ff16155b15611c48576009805460ff19166001179055611c3d61217e565b6009805460ff191690555b6009546001600160a01b03861660009081526019602052604090205460ff91821615911680611c8f57506001600160a01b03851660009081526019602052604090205460ff165b15611c98575060005b60008115611d4157611cc06064611cba6014548861231190919063ffffffff16565b90612324565b905060145460165482611cd39190612719565b611cdd9190612738565b60186000828254611cee919061275a565b9091555050601454601554611d039083612719565b611d0d9190612738565b60176000828254611d1e919061275a565b90915550508015611d3457611d3487308361202a565b611d3e8186612772565b94505b611d4c87878761202a565b50505050505050565b600654611d6d9030906001600160a01b0316846113f9565b6006546001600160a01b031663f305d719823085600080611d966005546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015611dfe573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611e239190612811565b5050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b0382166000818152601c6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611f0557611f056126d4565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611f5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f82919061283f565b81600181518110611f9557611f956126d4565b6001600160a01b039283166020918202929092010152600654611fbb91309116846113f9565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611ff490859060009086903090429060040161285c565b600060405180830381600087803b15801561200e57600080fd5b505af1158015612022573d6000803e3d6000fd5b505050505050565b6001600160a01b0383166120505760405162461bcd60e51b81526004016107c690612789565b6001600160a01b0382166120765760405162461bcd60e51b81526004016107c6906127ce565b6001600160a01b038316600090815260208190526040902054818110156120ee5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107c6565b6001600160a01b0380851660009081526020819052604080822085850390559185168152908120805484929061212590849061275a565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161217191815260200190565b60405180910390a361093e565b600061218930610d20565b9050600060175460185461219d919061275a565b90508115806121aa575080155b156121b3575050565b600e548211156121c357600e5491505b6000600282601854856121d69190612719565b6121e09190612738565b6121ea9190612738565b905060006121f88483612330565b90504761220482611ed0565b60006122104783612330565b9050600061222d86611cba6017548561231190919063ffffffff16565b9050600061223b8284612772565b600060188190556017819055600c5460405192935090916001600160a01b039091169084908381818185875af1925050503d8060008114612298576040519150601f19603f3d011682016040523d82523d6000602084013e61229d565b606091505b5060009250505086158015906122b35750600082115b15612306576122c28783611d55565b601854604080518881526020810185905280820192909252517f17bbfb9a6069321b6ded73bd96327c9e6b7212a5cd51ff219cd61370acafb5619181900360600190a15b505050505050505050565b600061231d8284612719565b9392505050565b600061231d8284612738565b600061231d8284612772565b600060208083528351808285015260005b818110156123695785810183015185820160400152820161234d565b8181111561237b576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b0381168114610e3c57600080fd5b600080604083850312156123b957600080fd5b82356123c481612391565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612411576124116123d2565b604052919050565b6000602080838503121561242c57600080fd5b823567ffffffffffffffff8082111561244457600080fd5b818501915085601f83011261245857600080fd5b81358181111561246a5761246a6123d2565b8060051b915061247b8483016123e8565b818152918301840191848101908884111561249557600080fd5b938501935b838510156124bf57843592506124af83612391565b828252938501939085019061249a565b98975050505050505050565b6000602082840312156124dd57600080fd5b813561231d81612391565b6000602082840312156124fa57600080fd5b5035919050565b60008060006060848603121561251657600080fd5b833561252181612391565b9250602084013561253181612391565b929592945050506040919091013590565b6000806040838503121561255557600080fd5b50508035926020909101359150565b6000806040838503121561257757600080fd5b823561258281612391565b91506020830135801515811461259757600080fd5b809150509250929050565b600060208083850312156125b557600080fd5b823567ffffffffffffffff808211156125cd57600080fd5b818501915085601f8301126125e157600080fd5b8135818111156125f3576125f36123d2565b612605601f8201601f191685016123e8565b9150808252868482850101111561261b57600080fd5b8084840185840137600090820190930192909252509392505050565b6000806040838503121561264a57600080fd5b823561265581612391565b9150602083013561259781612391565b600181811c9082168061267957607f821691505b60208210810361269957634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600060018201612712576127126126ea565b5060010190565b6000816000190483118215151615612733576127336126ea565b500290565b60008261275557634e487b7160e01b600052601260045260246000fd5b500490565b6000821982111561276d5761276d6126ea565b500190565b600082821015612784576127846126ea565b500390565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b60008060006060848603121561282657600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561285157600080fd5b815161231d81612391565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156128ac5784516001600160a01b031683529383019391830191600101612887565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122081a8153fa69d8c78f802f00a2066c483635f7c88494214cd21a22b59e0f12cc664736f6c634300080f00334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572