0x608060405234801561001057600080fd5b50600436106101da5760003560e01c806370a0823111610104578063a9059cbb116100a2578063dd62ed3e11610071578063dd62ed3e14610563578063e7a1e3ec14610591578063e86f1b5c146105ae578063ec33001a146105b6576101da565b8063a9059cbb146104e5578063bd15b66914610511578063d3681b9514610519578063d650694c1461053d576101da565b806382e4eda4116100de57806382e4eda41461044057806395d89b41146104a9578063a457c2d7146104b1578063a4e2d634146104dd576101da565b806370a08231146103ec5780637f700d2114610412578063817b1cd214610438576101da565b80633149432c1161017c5780633e8310cc1161014b5780633e8310cc1461039357806357e3aec41461039b57806365759af2146103b85780637048dca6146103e4576101da565b80633149432c1461033157806338a058711461035757806339267f091461035f5780633950935114610367576101da565b806318160ddd116101b857806318160ddd146102a657806321a358f1146102c057806323b872dd146102dd578063313ce56714610313576101da565b806306fdde03146101df578063095ea7b31461025c5780630d6aef041461029c575b600080fd5b6101e76105dc565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610221578181015183820152602001610209565b50505050905090810190601f16801561024e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102886004803603604081101561027257600080fd5b506001600160a01b038135169060200135610603565b604080519115158252519081900360200190f35b6102a461061a565b005b6102ae61067c565b60408051918252519081900360200190f35b6102a4600480360360208110156102d657600080fd5b5035610682565b610288600480360360608110156102f357600080fd5b506001600160a01b03813581169160208101359091169060400135610732565b61031b6107a1565b6040805160ff9092168252519081900360200190f35b6102ae6004803603602081101561034757600080fd5b50356001600160a01b03166107a6565b6102a461087b565b6102a4610949565b6102886004803603604081101561037d57600080fd5b506001600160a01b038135169060200135610a0a565b6102ae610a46565b6102a4600480360360208110156103b157600080fd5b5035610a4c565b6102a4600480360360408110156103ce57600080fd5b50803590602001356001600160a01b0316610afc565b6102ae610d44565b6102ae6004803603602081101561040257600080fd5b50356001600160a01b0316610d54565b6102a46004803603602081101561042857600080fd5b50356001600160a01b0316610d6f565b6102ae610e3c565b6104666004803603602081101561045657600080fd5b50356001600160a01b0316610e42565b60408051978852602088019690965286860194909452606086019290925260808501526001600160a01b031660a0840152151560c0830152519081900360e00190f35b6101e7610e8c565b610288600480360360408110156104c757600080fd5b506001600160a01b038135169060200135610eac565b610288610f01565b610288600480360360408110156104fb57600080fd5b506001600160a01b038135169060200135610f0a565b6102ae610f17565b610521610f1d565b604080516001600160a01b039092168252519081900360200190f35b6102ae6004803603602081101561055357600080fd5b50356001600160a01b0316610f2c565b6102ae6004803603604081101561057957600080fd5b506001600160a01b0381358116916020013516610fa3565b6102a4600480360360208110156105a757600080fd5b5035610fce565b6102a46113b0565b610288600480360360208110156105cc57600080fd5b50356001600160a01b031661152b565b6040518060400160405280600b81526020016a10dc98588813585c9ad95d60aa1b81525081565b600061061033848461159c565b5060015b92915050565b3360009081526008602052604090205460ff1661066d576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b6007805460ff19166001179055565b60065490565b3360009081526008602052604090205460ff166106d5576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b60075460ff161561072d576040805162461bcd60e51b815260206004820152601c60248201527f63616e6e6f74206368616e676520706f6f6c206275726e207261746500000000604482015290519081900360640190fd5b600455565b600061073f848484611688565b610797843361079285604051806060016040528060288152602001611ea4602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919063ffffffff6117e416565b61159c565b5060019392505050565b601281565b6001600160a01b0381166000908152600960205260408120600381015490546127108215610841576107ef6107e283600a63ffffffff61187b16565b839063ffffffff6118c416565b83106107fe57506103e8610841565b60008261081285606463ffffffff61190616565b8161081957fe5b04905060648282020461082c83826118c4565b92506103e883101561083e576103e892505b50505b6108706104e3610864836108646108578a610f2c565b879063ffffffff61190616565b9063ffffffff61187b16565b93505050505b919050565b600754610100900460ff16156108c4576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff00191661010017905533600090815260096020526040902054610934576040805162461bcd60e51b815260206004820152601a60248201527f796f752068617665206e6f207374616b65642062616c616e6365000000000000604482015290519081900360640190fd5b61093c61195f565b6007805461ff0019169055565b600754610100900460ff1615610992576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff00191661010017905533600090815260096020526040902054610a02576040805162461bcd60e51b815260206004820152601a60248201527f796f752068617665206e6f207374616b65642062616c616e6365000000000000604482015290519081900360640190fd5b61093c611a61565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610610918590610792908663ffffffff611b2616565b60035481565b3360009081526008602052604090205460ff16610a9f576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b60075460ff1615610af7576040805162461bcd60e51b815260206004820152601760248201527f63616e6e6f74206368616e6765206275726e2072617465000000000000000000604482015290519081900360640190fd5b600355565b600754610100900460ff1615610b45576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff00191661010017905581610b93576040805162461bcd60e51b815260206004820152600a6024820152691e995c9bc81a5b9c1d5d60b21b604482015290519081900360640190fd5b81610b9c610d44565b1015610bef576040805162461bcd60e51b815260206004820152601b60248201527f4572726f723a20696e73756666696369656e742062616c616e63650000000000604482015290519081900360640190fd5b6001600160a01b03811615801590610c1057506001600160a01b0381163314155b15610c91576001600160a01b038116600090815260096020526040902060050154600160a01b900460ff168015610c605750336000908152600960205260409020600501546001600160a01b0316155b15610c915733600090815260096020526040902060050180546001600160a01b0319166001600160a01b0383161790555b610c9961195f565b33600090815260096020526040902060058101805460ff60a01b1916600160a01b17905554610cce908363ffffffff611b2616565b33600090815260096020526040902055600554610cf1908363ffffffff611b2616565b600555610cff333084611688565b60408051838152905133917facf5378a9125b9a91e37c0cad37a66b4b63bc3494776388fc87056260e031576919081900360200190a250506007805461ff0019169055565b6000610d4f33610d54565b905090565b6001600160a01b031660009081526020819052604090205490565b3360009081526008602052604090205460ff16610dc2576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b60075460ff1615610e1a576040805162461bcd60e51b815260206004820152601960248201527f63616e6e6f74206368616e6765206e617469766520706f6f6c00000000000000604482015290519081900360640190fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b60055481565b60096020526000908152604090208054600182015460028301546003840154600485015460059095015493949293919290916001600160a01b03811690600160a01b900460ff1687565b6040518060400160405280600481526020016321a920a160e11b81525081565b6000610610338461079285604051806060016040528060258152602001611f9a602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919063ffffffff6117e416565b60075460ff1681565b6000610610338484611688565b60045481565b6002546001600160a01b031681565b6001600160a01b038116600090815260096020526040812060010154610f5457506000610876565b6001600160a01b038216600090815260096020526040812060010154610f8890603c9061086490429063ffffffff6118c416565b905060018110610f99579050610876565b6000915050610876565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600754610100900460ff1615611017576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff0019166101001790556003543360009081526009602052604090206002015461104b9163ffffffff61190616565b3360009081526009602052604090206003015461106e908363ffffffff611b2616565b11156110ab5760405162461bcd60e51b8152600401808060200182810382526036815260200180611f646036913960400191505060405180910390fd5b60008111611100576040805162461bcd60e51b815260206004820152601c60248201527f76616c7565206d7573742062652067726561746572207468616e203000000000604482015290519081900360640190fd5b8061110a33610d54565b101561114f576040805162461bcd60e51b815260206004820152600f60248201526e62616c616e636520746f6f206c6f7760881b604482015290519081900360640190fd5b6111593382611b80565b3360009081526009602090815260408083206003018054850190556004546002546001600160a01b031684529183905282205461119b9163ffffffff61187b16565b905081811115611256576111ea82604051806060016040528060228152602001611df7602291396002546001600160a01b0316600090815260208190526040902054919063ffffffff6117e416565b6002546001600160a01b0316600090815260208190526040902055600654611218908363ffffffff6118c416565b60065560408051838152905133917fab85194d35c4ea153d0b51f3a304d1d22cb8023e499a6503fb6c28c5864ae90e919081900360200190a2611303565b61129b81604051806060016040528060228152602001611df7602291396002546001600160a01b0316600090815260208190526040902054919063ffffffff6117e416565b6002546001600160a01b03166000908152602081905260409020556006546112c9908263ffffffff6118c416565b60065560408051828152905133917fab85194d35c4ea153d0b51f3a304d1d22cb8023e499a6503fb6c28c5864ae90e919081900360200190a25b600260009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561135357600080fd5b505af1158015611367573d6000803e3d6000fd5b50506040805185815290513393507fab85194d35c4ea153d0b51f3a304d1d22cb8023e499a6503fb6c28c5864ae90e92509081900360200190a250506007805461ff0019169055565b600754610100900460ff16156113f9576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff001916610100179055336000908152600960205260409020546114535760405162461bcd60e51b8152600401808060200182810382526022815260200180611e616022913960400191505060405180910390fd5b61145c3361152b565b6114975760405162461bcd60e51b815260040180806020018281038252602e815260200180611f36602e913960400191505060405180910390fd5b336000908152600960205260409020546114af61195f565b33600090815260096020526040812060018101829055556005546114d9908263ffffffff6118c416565b6005556114e7303383611688565b60408051828152905133917f43a932fdc9d096891853e1e003cefbdaa5f14e174721aa1f9668616323afa334919081900360200190a2506007805461ff0019169055565b6001600160a01b03811660009081526009602052604081206001015461155357506000610876565b4261159361156b62015180600763ffffffff61190616565b6001600160a01b0385166000908152600960205260409020600101549063ffffffff611b2616565b11159050610876565b6001600160a01b0383166115e15760405162461bcd60e51b8152600401808060200182810382526024815260200180611f126024913960400191505060405180910390fd5b6001600160a01b0382166116265760405162461bcd60e51b8152600401808060200182810382526022815260200180611e196022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166116cd5760405162461bcd60e51b8152600401808060200182810382526025815260200180611eed6025913960400191505060405180910390fd5b6001600160a01b0382166117125760405162461bcd60e51b8152600401808060200182810382526023815260200180611dd46023913960400191505060405180910390fd5b61175581604051806060016040528060268152602001611e3b602691396001600160a01b038616600090815260208190526040902054919063ffffffff6117e416565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461178a908263ffffffff611b2616565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156118735760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611838578181015183820152602001611820565b50505050905090810190601f1680156118655780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60006118bd83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c7c565b9392505050565b60006118bd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506117e4565b60008261191557506000610614565b8282028284828161192257fe5b04146118bd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e836021913960400191505060405180910390fd5b600061196a336107a6565b3360009081526009602052604090204260019091015590508015611a5e576119923382611ce1565b33600090815260096020526040902060028101805483019055600501546001600160a01b031615611a3057336000908152600960205260409020600501546119f3906001600160a01b03166119ee83601463ffffffff61187b16565b611ce1565b611a0481601463ffffffff61187b16565b33600090815260096020526040808220600501546001600160a01b031682529020600401805490910190555b611a5e73670628750f15c42c9924880c69f54f1b168e89236119ee606461086485600363ffffffff61190616565b50565b6000611a6c336107a6565b90508015611a5e57611a7e3082611ce1565b33600090815260096020526040902054611a9e908263ffffffff611b2616565b33600090815260096020526040902055600554611ac1908263ffffffff611b2616565b60059081553360009081526009602052604090206002810180548401905542600182015501546001600160a01b031615611a3057336000908152600960205260409020600501546119f3906001600160a01b03166119ee83601463ffffffff61187b16565b6000828201838110156118bd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038216611bc55760405162461bcd60e51b8152600401808060200182810382526021815260200180611ecc6021913960400191505060405180910390fd5b611c0881604051806060016040528060228152602001611df7602291396001600160a01b038516600090815260208190526040902054919063ffffffff6117e416565b6001600160a01b038316600090815260208190526040902055600654611c34908263ffffffff6118c416565b6006556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b60008183611ccb5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611838578181015183820152602001611820565b506000838581611cd757fe5b0495945050505050565b806001600160a01b038316611d3d576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600654611d50908263ffffffff611b2616565b6006556001600160a01b038316600090815260208190526040902054611d7c908263ffffffff611b2616565b6001600160a01b0384166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63654572726f723a20756e73756666696369656e742066726f7a656e2062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373746f6b656e732063616e6e6f7420626520756e7374616b6564207965742e206d696e203720646179207374616b6563616e206f6e6c79206275726e206571756976616c656e74206f662078313020746f74616c207374616b696e6720696e74657265737445524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220fada843a4ecfab2c6b4c3a8d8f3c5842fd216c58c5f0e5ca3d61f000a9f0c5a364736f6c63430006040033
0x6080604052600a60035560646004556007805460ff191690553480156200002557600080fd5b50604051620022a1380380620022a1833981810160405260208110156200004b57600080fd5b505160086020527f7e6cf1c7de18c23d9aad9d8d2f2fa953fcd48af6aabcb348628fed550b95fe9f8054600160ff1991821681179092553360009081526040902080549091169091179055620000a181620000a8565b506200029d565b600754610100900460ff1615620000f2576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff0019166101001790556200012a73670628750f15c42c9924880c69f54f1b168e8923826001600160e01b036200013816565b506007805461ff0019169055565b806001600160a01b03831662000195576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b620001b1816006546200023b60201b62001b261790919060201c565b6006556001600160a01b03831660009081526020818152604090912054620001e491839062001b266200023b821b17901c565b6001600160a01b0384166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3505050565b60008282018381101562000296576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b611ff480620002ad6000396000f3fe608060405234801561001057600080fd5b50600436106101da5760003560e01c806370a0823111610104578063a9059cbb116100a2578063dd62ed3e11610071578063dd62ed3e14610563578063e7a1e3ec14610591578063e86f1b5c146105ae578063ec33001a146105b6576101da565b8063a9059cbb146104e5578063bd15b66914610511578063d3681b9514610519578063d650694c1461053d576101da565b806382e4eda4116100de57806382e4eda41461044057806395d89b41146104a9578063a457c2d7146104b1578063a4e2d634146104dd576101da565b806370a08231146103ec5780637f700d2114610412578063817b1cd214610438576101da565b80633149432c1161017c5780633e8310cc1161014b5780633e8310cc1461039357806357e3aec41461039b57806365759af2146103b85780637048dca6146103e4576101da565b80633149432c1461033157806338a058711461035757806339267f091461035f5780633950935114610367576101da565b806318160ddd116101b857806318160ddd146102a657806321a358f1146102c057806323b872dd146102dd578063313ce56714610313576101da565b806306fdde03146101df578063095ea7b31461025c5780630d6aef041461029c575b600080fd5b6101e76105dc565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610221578181015183820152602001610209565b50505050905090810190601f16801561024e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102886004803603604081101561027257600080fd5b506001600160a01b038135169060200135610603565b604080519115158252519081900360200190f35b6102a461061a565b005b6102ae61067c565b60408051918252519081900360200190f35b6102a4600480360360208110156102d657600080fd5b5035610682565b610288600480360360608110156102f357600080fd5b506001600160a01b03813581169160208101359091169060400135610732565b61031b6107a1565b6040805160ff9092168252519081900360200190f35b6102ae6004803603602081101561034757600080fd5b50356001600160a01b03166107a6565b6102a461087b565b6102a4610949565b6102886004803603604081101561037d57600080fd5b506001600160a01b038135169060200135610a0a565b6102ae610a46565b6102a4600480360360208110156103b157600080fd5b5035610a4c565b6102a4600480360360408110156103ce57600080fd5b50803590602001356001600160a01b0316610afc565b6102ae610d44565b6102ae6004803603602081101561040257600080fd5b50356001600160a01b0316610d54565b6102a46004803603602081101561042857600080fd5b50356001600160a01b0316610d6f565b6102ae610e3c565b6104666004803603602081101561045657600080fd5b50356001600160a01b0316610e42565b60408051978852602088019690965286860194909452606086019290925260808501526001600160a01b031660a0840152151560c0830152519081900360e00190f35b6101e7610e8c565b610288600480360360408110156104c757600080fd5b506001600160a01b038135169060200135610eac565b610288610f01565b610288600480360360408110156104fb57600080fd5b506001600160a01b038135169060200135610f0a565b6102ae610f17565b610521610f1d565b604080516001600160a01b039092168252519081900360200190f35b6102ae6004803603602081101561055357600080fd5b50356001600160a01b0316610f2c565b6102ae6004803603604081101561057957600080fd5b506001600160a01b0381358116916020013516610fa3565b6102a4600480360360208110156105a757600080fd5b5035610fce565b6102a46113b0565b610288600480360360208110156105cc57600080fd5b50356001600160a01b031661152b565b6040518060400160405280600b81526020016a10dc98588813585c9ad95d60aa1b81525081565b600061061033848461159c565b5060015b92915050565b3360009081526008602052604090205460ff1661066d576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b6007805460ff19166001179055565b60065490565b3360009081526008602052604090205460ff166106d5576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b60075460ff161561072d576040805162461bcd60e51b815260206004820152601c60248201527f63616e6e6f74206368616e676520706f6f6c206275726e207261746500000000604482015290519081900360640190fd5b600455565b600061073f848484611688565b610797843361079285604051806060016040528060288152602001611ea4602891396001600160a01b038a166000908152600160209081526040808320338452909152902054919063ffffffff6117e416565b61159c565b5060019392505050565b601281565b6001600160a01b0381166000908152600960205260408120600381015490546127108215610841576107ef6107e283600a63ffffffff61187b16565b839063ffffffff6118c416565b83106107fe57506103e8610841565b60008261081285606463ffffffff61190616565b8161081957fe5b04905060648282020461082c83826118c4565b92506103e883101561083e576103e892505b50505b6108706104e3610864836108646108578a610f2c565b879063ffffffff61190616565b9063ffffffff61187b16565b93505050505b919050565b600754610100900460ff16156108c4576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff00191661010017905533600090815260096020526040902054610934576040805162461bcd60e51b815260206004820152601a60248201527f796f752068617665206e6f207374616b65642062616c616e6365000000000000604482015290519081900360640190fd5b61093c61195f565b6007805461ff0019169055565b600754610100900460ff1615610992576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff00191661010017905533600090815260096020526040902054610a02576040805162461bcd60e51b815260206004820152601a60248201527f796f752068617665206e6f207374616b65642062616c616e6365000000000000604482015290519081900360640190fd5b61093c611a61565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610610918590610792908663ffffffff611b2616565b60035481565b3360009081526008602052604090205460ff16610a9f576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b60075460ff1615610af7576040805162461bcd60e51b815260206004820152601760248201527f63616e6e6f74206368616e6765206275726e2072617465000000000000000000604482015290519081900360640190fd5b600355565b600754610100900460ff1615610b45576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff00191661010017905581610b93576040805162461bcd60e51b815260206004820152600a6024820152691e995c9bc81a5b9c1d5d60b21b604482015290519081900360640190fd5b81610b9c610d44565b1015610bef576040805162461bcd60e51b815260206004820152601b60248201527f4572726f723a20696e73756666696369656e742062616c616e63650000000000604482015290519081900360640190fd5b6001600160a01b03811615801590610c1057506001600160a01b0381163314155b15610c91576001600160a01b038116600090815260096020526040902060050154600160a01b900460ff168015610c605750336000908152600960205260409020600501546001600160a01b0316155b15610c915733600090815260096020526040902060050180546001600160a01b0319166001600160a01b0383161790555b610c9961195f565b33600090815260096020526040902060058101805460ff60a01b1916600160a01b17905554610cce908363ffffffff611b2616565b33600090815260096020526040902055600554610cf1908363ffffffff611b2616565b600555610cff333084611688565b60408051838152905133917facf5378a9125b9a91e37c0cad37a66b4b63bc3494776388fc87056260e031576919081900360200190a250506007805461ff0019169055565b6000610d4f33610d54565b905090565b6001600160a01b031660009081526020819052604090205490565b3360009081526008602052604090205460ff16610dc2576040805162461bcd60e51b815260206004820152600c60248201526b3737ba1030b71030b236b4b760a11b604482015290519081900360640190fd5b60075460ff1615610e1a576040805162461bcd60e51b815260206004820152601960248201527f63616e6e6f74206368616e6765206e617469766520706f6f6c00000000000000604482015290519081900360640190fd5b600280546001600160a01b0319166001600160a01b0392909216919091179055565b60055481565b60096020526000908152604090208054600182015460028301546003840154600485015460059095015493949293919290916001600160a01b03811690600160a01b900460ff1687565b6040518060400160405280600481526020016321a920a160e11b81525081565b6000610610338461079285604051806060016040528060258152602001611f9a602591393360009081526001602090815260408083206001600160a01b038d168452909152902054919063ffffffff6117e416565b60075460ff1681565b6000610610338484611688565b60045481565b6002546001600160a01b031681565b6001600160a01b038116600090815260096020526040812060010154610f5457506000610876565b6001600160a01b038216600090815260096020526040812060010154610f8890603c9061086490429063ffffffff6118c416565b905060018110610f99579050610876565b6000915050610876565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600754610100900460ff1615611017576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff0019166101001790556003543360009081526009602052604090206002015461104b9163ffffffff61190616565b3360009081526009602052604090206003015461106e908363ffffffff611b2616565b11156110ab5760405162461bcd60e51b8152600401808060200182810382526036815260200180611f646036913960400191505060405180910390fd5b60008111611100576040805162461bcd60e51b815260206004820152601c60248201527f76616c7565206d7573742062652067726561746572207468616e203000000000604482015290519081900360640190fd5b8061110a33610d54565b101561114f576040805162461bcd60e51b815260206004820152600f60248201526e62616c616e636520746f6f206c6f7760881b604482015290519081900360640190fd5b6111593382611b80565b3360009081526009602090815260408083206003018054850190556004546002546001600160a01b031684529183905282205461119b9163ffffffff61187b16565b905081811115611256576111ea82604051806060016040528060228152602001611df7602291396002546001600160a01b0316600090815260208190526040902054919063ffffffff6117e416565b6002546001600160a01b0316600090815260208190526040902055600654611218908363ffffffff6118c416565b60065560408051838152905133917fab85194d35c4ea153d0b51f3a304d1d22cb8023e499a6503fb6c28c5864ae90e919081900360200190a2611303565b61129b81604051806060016040528060228152602001611df7602291396002546001600160a01b0316600090815260208190526040902054919063ffffffff6117e416565b6002546001600160a01b03166000908152602081905260409020556006546112c9908263ffffffff6118c416565b60065560408051828152905133917fab85194d35c4ea153d0b51f3a304d1d22cb8023e499a6503fb6c28c5864ae90e919081900360200190a25b600260009054906101000a90046001600160a01b03166001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561135357600080fd5b505af1158015611367573d6000803e3d6000fd5b50506040805185815290513393507fab85194d35c4ea153d0b51f3a304d1d22cb8023e499a6503fb6c28c5864ae90e92509081900360200190a250506007805461ff0019169055565b600754610100900460ff16156113f9576040805162461bcd60e51b815260206004820152600960248201526853796e63206c6f636b60b81b604482015290519081900360640190fd5b6007805461ff001916610100179055336000908152600960205260409020546114535760405162461bcd60e51b8152600401808060200182810382526022815260200180611e616022913960400191505060405180910390fd5b61145c3361152b565b6114975760405162461bcd60e51b815260040180806020018281038252602e815260200180611f36602e913960400191505060405180910390fd5b336000908152600960205260409020546114af61195f565b33600090815260096020526040812060018101829055556005546114d9908263ffffffff6118c416565b6005556114e7303383611688565b60408051828152905133917f43a932fdc9d096891853e1e003cefbdaa5f14e174721aa1f9668616323afa334919081900360200190a2506007805461ff0019169055565b6001600160a01b03811660009081526009602052604081206001015461155357506000610876565b4261159361156b62015180600763ffffffff61190616565b6001600160a01b0385166000908152600960205260409020600101549063ffffffff611b2616565b11159050610876565b6001600160a01b0383166115e15760405162461bcd60e51b8152600401808060200182810382526024815260200180611f126024913960400191505060405180910390fd5b6001600160a01b0382166116265760405162461bcd60e51b8152600401808060200182810382526022815260200180611e196022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166116cd5760405162461bcd60e51b8152600401808060200182810382526025815260200180611eed6025913960400191505060405180910390fd5b6001600160a01b0382166117125760405162461bcd60e51b8152600401808060200182810382526023815260200180611dd46023913960400191505060405180910390fd5b61175581604051806060016040528060268152602001611e3b602691396001600160a01b038616600090815260208190526040902054919063ffffffff6117e416565b6001600160a01b03808516600090815260208190526040808220939093559084168152205461178a908263ffffffff611b2616565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b600081848411156118735760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611838578181015183820152602001611820565b50505050905090810190601f1680156118655780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60006118bd83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c7c565b9392505050565b60006118bd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506117e4565b60008261191557506000610614565b8282028284828161192257fe5b04146118bd5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e836021913960400191505060405180910390fd5b600061196a336107a6565b3360009081526009602052604090204260019091015590508015611a5e576119923382611ce1565b33600090815260096020526040902060028101805483019055600501546001600160a01b031615611a3057336000908152600960205260409020600501546119f3906001600160a01b03166119ee83601463ffffffff61187b16565b611ce1565b611a0481601463ffffffff61187b16565b33600090815260096020526040808220600501546001600160a01b031682529020600401805490910190555b611a5e73670628750f15c42c9924880c69f54f1b168e89236119ee606461086485600363ffffffff61190616565b50565b6000611a6c336107a6565b90508015611a5e57611a7e3082611ce1565b33600090815260096020526040902054611a9e908263ffffffff611b2616565b33600090815260096020526040902055600554611ac1908263ffffffff611b2616565b60059081553360009081526009602052604090206002810180548401905542600182015501546001600160a01b031615611a3057336000908152600960205260409020600501546119f3906001600160a01b03166119ee83601463ffffffff61187b16565b6000828201838110156118bd576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b038216611bc55760405162461bcd60e51b8152600401808060200182810382526021815260200180611ecc6021913960400191505060405180910390fd5b611c0881604051806060016040528060228152602001611df7602291396001600160a01b038516600090815260208190526040902054919063ffffffff6117e416565b6001600160a01b038316600090815260208190526040902055600654611c34908263ffffffff6118c416565b6006556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b60008183611ccb5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611838578181015183820152602001611820565b506000838581611cd757fe5b0495945050505050565b806001600160a01b038316611d3d576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600654611d50908263ffffffff611b2616565b6006556001600160a01b038316600090815260208190526040902054611d7c908263ffffffff611b2616565b6001600160a01b0384166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63654572726f723a20756e73756666696369656e742066726f7a656e2062616c616e6365536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373746f6b656e732063616e6e6f7420626520756e7374616b6564207965742e206d696e203720646179207374616b6563616e206f6e6c79206275726e206571756976616c656e74206f662078313020746f74616c207374616b696e6720696e74657265737445524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220fada843a4ecfab2c6b4c3a8d8f3c5842fd216c58c5f0e5ca3d61f000a9f0c5a364736f6c634300060400330000000000000000000000000000000000000000015bc37ca2d50d3c02900000