0x608060405234801561001057600080fd5b50600436106102265760003560e01c80636c43a2ca11610130578063b84c8246116100b8578063dd62ed3e1161007c578063dd62ed3e14610759578063e1f21c6714610787578063ec556889146107bd578063ec949758146107c5578063f2fde38b146107cd57610226565b8063b84c8246146105e7578063beabacc814610657578063c47f00271461068d578063ce5494bb146106fd578063d73b1dc91461072357610226565b806395d89b41116100ff57806395d89b41146105535780639dc29fac1461055b578063a457c2d714610587578063a9059cbb146105b3578063b51fa167146105df57610226565b80636c43a2ca146104cf57806370a08231146105055780637a1395aa1461052b5780638da5cb5b1461054b57610226565b806323b872dd116101b35780633f4ba83a116101825780633f4ba83a1461045d57806340c10f19146104655780634bc597b91461049157806354f1f02a146104995780636455d1a3146104a157610226565b806323b872dd146103d55780632a709b141461040b578063313ce56714610413578063395093511461043157610226565b8063136439dd116101fa578063136439dd1461033457806313af40351461035157806315dacbea1461037757806318160ddd146103b357806321825e67146103cd57610226565b8062f55d9d1461022b57806306fdde031461025357806307546172146102d0578063095ea7b3146102f4575b600080fd5b6102516004803603602081101561024157600080fd5b50356001600160a01b03166107f3565b005b61025b610851565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561029557818101518382015260200161027d565b50505050905090810190601f1680156102c25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102d8610988565b604080516001600160a01b039092168252519081900360200190f35b6103206004803603604081101561030a57600080fd5b506001600160a01b0381351690602001356109fe565b604080519115158252519081900360200190f35b6102516004803603602081101561034a57600080fd5b5035610a54565b6102516004803603602081101561036757600080fd5b50356001600160a01b0316610b4b565b6103206004803603608081101561038d57600080fd5b506001600160a01b03813581169160208101358216916040820135169060600135610d10565b6103bb610e8d565b60408051918252519081900360200190f35b6102d8610ed2565b610320600480360360608110156103eb57600080fd5b506001600160a01b03813581169160208101359091169060400135610ee1565b6102d8611003565b61041b611048565b6040805160ff9092168252519081900360200190f35b6103206004803603604081101561044757600080fd5b506001600160a01b03813516906020013561108d565b61025161117a565b6102516004803603604081101561047b57600080fd5b506001600160a01b038135169060200135611218565b6102d86114bf565b6102d86114ce565b610251600480360360408110156104b757600080fd5b506001600160a01b03813581169160200135166114dd565b610320600480360360608110156104e557600080fd5b506001600160a01b03813581169160208101359091169060400135611709565b6103bb6004803603602081101561051b57600080fd5b50356001600160a01b031661182a565b6102516004803603602081101561054157600080fd5b503560ff166118ad565b6102d8611ae4565b61025b611af3565b6102516004803603604081101561057157600080fd5b506001600160a01b038135169060200135611b38565b6103206004803603604081101561059d57600080fd5b506001600160a01b038135169060200135611ddb565b610320600480360360408110156105c957600080fd5b506001600160a01b038135169060200135611e4e565b6103bb611ea4565b610251600480360360208110156105fd57600080fd5b81019060208101813564010000000081111561061857600080fd5b82018360208201111561062a57600080fd5b8035906020019184600183028401116401000000008311171561064c57600080fd5b509092509050611eaa565b6103206004803603606081101561066d57600080fd5b506001600160a01b03813581169160208101359091169060400135612109565b610251600480360360208110156106a357600080fd5b8101906020810181356401000000008111156106be57600080fd5b8201836020820111156106d057600080fd5b803590602001918460018302840111640100000000831117156106f257600080fd5b5090925090506121ca565b6102516004803603602081101561071357600080fd5b50356001600160a01b0316612429565b6103206004803603606081101561073957600080fd5b506001600160a01b0381358116916020810135909116906040013561247e565b6103bb6004803603604081101561076f57600080fd5b506001600160a01b038135811691602001351661259e565b6103206004803603606081101561079d57600080fd5b506001600160a01b0381358116916020810135909116906040013561262a565b6102d86126e1565b6102d86126f0565b610251600480360360208110156107e357600080fd5b50356001600160a01b03166126ff565b6000546001600160a01b0316331461083c5760405162461bcd60e51b815260040180806020018281038252602381526020018061333d6023913960400191505060405180910390fd5b610845816127f4565b806001600160a01b0316ff5b600554604080516305f5f79f60e21b815290516060926001600160a01b0316916317d7de7c916004808301926000929190829003018186803b15801561089657600080fd5b505afa1580156108aa573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260208110156108d357600080fd5b81019080805160405193929190846401000000008211156108f357600080fd5b90830190602082018581111561090857600080fd5b825164010000000081118282018810171561092257600080fd5b82525081516020918201929091019080838360005b8381101561094f578181015183820152602001610937565b50505050905090810190601f16801561097c5780820380516001836020036101000a031916815260200191505b50604052505050905090565b600554604080516301ea063d60e31b815290516000926001600160a01b031691630f5031e8916004808301926020929190829003018186803b1580156109cd57600080fd5b505afa1580156109e1573d6000803e3d6000fd5b505050506040513d60208110156109f757600080fd5b5051919050565b6000610a0b33848461284b565b6040805183815290516001600160a01b0385169133917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259181900360200190a350600192915050565b6001546001600160a01b03163314610aa8576040805162461bcd60e51b815260206004820152601260248201527127bbb730b136329d102737ba1037bbb732b960711b604482015290519081900360640190fd5b60008111610ae75760405162461bcd60e51b815260040180806020018281038252604b815260200180613386604b913960600191505060405180910390fd5b610af7438263ffffffff61299016565b6002557fab40a374bc51de372200a8bc981af8c9ecdc08dfdaef0bb6e09f88f3c616ef3d610b236129f1565b600254604080516001600160a01b03909316835260208301919091528051918290030190a150565b600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b158015610b9957600080fd5b505afa158015610bad573d6000803e3d6000fd5b505050506040513d6020811015610bc357600080fd5b50516001600160a01b0316610bd66129f5565b6001600160a01b03161480610c6c5750600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b158015610c3457600080fd5b505afa158015610c48573d6000803e3d6000fd5b505050506040513d6020811015610c5e57600080fd5b50516001600160a01b031633145b610ca75760405162461bcd60e51b81526004018080602001828103825260238152602001806132f86023913960400191505060405180910390fd5b6005546040805163dc1085ff60e01b81526001600160a01b0384811660048301529151919092169163dc1085ff91602480830192600092919082900301818387803b158015610cf557600080fd5b505af1158015610d09573d6000803e3d6000fd5b5050505050565b6004546000906001600160a01b0316610d276129f1565b6001600160a01b031614610d6c5760405162461bcd60e51b815260040180806020018281038252602381526020018061333d6023913960400191505060405180910390fd5b6001600160a01b0385163214610dbc576040805162461bcd60e51b815260206004820152601060248201526f22a92199181d102327a92124a22222a760811b604482015290519081900360640190fd5b610dc78484846129f9565b6000610e74836040518060600160405280602881526020016134306028913960035460408051630af4187d60e01b81526001600160a01b038b811660048301528c8116602483015291519190921691630af4187d916044808301926020929190829003018186803b158015610e3b57600080fd5b505afa158015610e4f573d6000803e3d6000fd5b505050506040513d6020811015610e6557600080fd5b5051919063ffffffff612c5a16565b9050610e8185878361284b565b50600195945050505050565b600354604080516362720d9160e11b815290516000926001600160a01b03169163c4e41b22916004808301926020929190829003018186803b1580156109cd57600080fd5b6004546001600160a01b031681565b6000610eee8484846129f9565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36000610fab836040518060600160405280602881526020016134306028913960035460408051630af4187d60e01b81526001600160a01b038b8116600483015233602483015291519190921691630af4187d916044808301926020929190829003018186803b158015610e3b57600080fd5b9050610fb885338361284b565b60408051828152905133916001600160a01b038816917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259181900360200190a3506001949350505050565b6006546040805163c03c2a0760e01b815290516000926001600160a01b03169163c03c2a07916004808301926020929190829003018186803b1580156109cd57600080fd5b60055460408051633c05076160e21b815290516000926001600160a01b03169163f0141d84916004808301926020929190829003018186803b1580156109cd57600080fd5b60035460408051630af4187d60e01b81523360048201526001600160a01b038581166024830152915160009384936111239387939190921691630af4187d916044808301926020929190829003018186803b1580156110eb57600080fd5b505afa1580156110ff573d6000803e3d6000fd5b505050506040513d602081101561111557600080fd5b50519063ffffffff61299016565b905061113033858361284b565b6040805182815290516001600160a01b0386169133917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259181900360200190a35060019392505050565b6001546001600160a01b031633146111ce576040805162461bcd60e51b815260206004820152601260248201527127bbb730b136329d102737ba1037bbb732b960711b604482015290519081900360640190fd5b436002557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6111fb6129f1565b604080516001600160a01b039092168252519081900360200190a1565b6001546001600160a01b031661122c6129f5565b6001600160a01b031614806112d25750600560009054906101000a90046001600160a01b03166001600160a01b0316630f5031e86040518163ffffffff1660e01b815260040160206040518083038186803b15801561128a57600080fd5b505afa15801561129e573d6000803e3d6000fd5b505050506040513d60208110156112b457600080fd5b50516001600160a01b03166112c76129f5565b6001600160a01b0316145b8061135e5750600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b15801561132657600080fd5b505afa15801561133a573d6000803e3d6000fd5b505050506040513d602081101561135057600080fd5b50516001600160a01b031633145b806113ea5750600560009054906101000a90046001600160a01b03166001600160a01b0316630f5031e86040518163ffffffff1660e01b815260040160206040518083038186803b1580156113b257600080fd5b505afa1580156113c6573d6000803e3d6000fd5b505050506040513d60208110156113dc57600080fd5b50516001600160a01b031633145b806114765750600660009054906101000a90046001600160a01b03166001600160a01b031663c03c2a076040518163ffffffff1660e01b815260040160206040518083038186803b15801561143e57600080fd5b505afa158015611452573d6000803e3d6000fd5b505050506040513d602081101561146857600080fd5b50516001600160a01b031633145b6114b15760405162461bcd60e51b815260040180806020018281038252603e8152602001806133f2603e913960400191505060405180910390fd5b6114bb8282612cf1565b5050565b6003546001600160a01b031681565b6006546001600160a01b031681565b600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b15801561152b57600080fd5b505afa15801561153f573d6000803e3d6000fd5b505050506040513d602081101561155557600080fd5b50516001600160a01b03166115686129f5565b6001600160a01b031614806115fe5750600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b1580156115c657600080fd5b505afa1580156115da573d6000803e3d6000fd5b505050506040513d60208110156115f057600080fd5b50516001600160a01b031633145b6116395760405162461bcd60e51b81526004018080602001828103825260238152602001806132f86023913960400191505060405180910390fd5b60065460408051632c2912a760e21b81526001600160a01b0385811660048301529151919092169163b0a44a9c91602480830192600092919082900301818387803b15801561168757600080fd5b505af115801561169b573d6000803e3d6000fd5b50506005546040805163c2bd4b5f60e01b81526001600160a01b038681166004830152915191909216935063c2bd4b5f9250602480830192600092919082900301818387803b1580156116ed57600080fd5b505af1158015611701573d6000803e3d6000fd5b505050505050565b6004546000906001600160a01b03166117206129f1565b6001600160a01b0316146117655760405162461bcd60e51b815260040180806020018281038252602381526020018061333d6023913960400191505060405180910390fd5b6001600160a01b03841632146117b5576040805162461bcd60e51b815260206004820152601060248201526f22a92199181d102327a92124a22222a760811b604482015290519081900360640190fd5b60035460408051630af4187d60e01b81526001600160a01b03878116600483015286811660248301529151600093611812938793911691630af4187d91604480820192602092909190829003018186803b1580156110eb57600080fd5b905061181f85858361284b565b506001949350505050565b6003546040805163f8b2cb4f60e01b81526001600160a01b0384811660048301529151600093929092169163f8b2cb4f91602480820192602092909190829003018186803b15801561187b57600080fd5b505afa15801561188f573d6000803e3d6000fd5b505050506040513d60208110156118a557600080fd5b505192915050565b600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b1580156118fb57600080fd5b505afa15801561190f573d6000803e3d6000fd5b505050506040513d602081101561192557600080fd5b50516001600160a01b03166119386129f5565b6001600160a01b031614806119ce5750600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b15801561199657600080fd5b505afa1580156119aa573d6000803e3d6000fd5b505050506040513d60208110156119c057600080fd5b50516001600160a01b031633145b80611a5a5750600660009054906101000a90046001600160a01b03166001600160a01b031663c03c2a076040518163ffffffff1660e01b815260040160206040518083038186803b158015611a2257600080fd5b505afa158015611a36573d6000803e3d6000fd5b505050506040513d6020811015611a4c57600080fd5b50516001600160a01b031633145b611a955760405162461bcd60e51b81526004018080602001828103825260238152602001806132f86023913960400191505060405180910390fd5b60055460408051633d09cad560e11b815260ff8416600482015290516001600160a01b0390921691637a1395aa9160248082019260009290919082900301818387803b158015610cf557600080fd5b6001546001600160a01b031681565b60055460408051631507040160e01b815290516060926001600160a01b0316916315070401916004808301926000929190829003018186803b15801561089657600080fd5b6001546001600160a01b0316611b4c6129f5565b6001600160a01b03161480611bf25750600560009054906101000a90046001600160a01b03166001600160a01b0316630f5031e86040518163ffffffff1660e01b815260040160206040518083038186803b158015611baa57600080fd5b505afa158015611bbe573d6000803e3d6000fd5b505050506040513d6020811015611bd457600080fd5b50516001600160a01b0316611be76129f5565b6001600160a01b0316145b80611c7e5750600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b158015611c4657600080fd5b505afa158015611c5a573d6000803e3d6000fd5b505050506040513d6020811015611c7057600080fd5b50516001600160a01b031633145b80611d0a5750600560009054906101000a90046001600160a01b03166001600160a01b0316630f5031e86040518163ffffffff1660e01b815260040160206040518083038186803b158015611cd257600080fd5b505afa158015611ce6573d6000803e3d6000fd5b505050506040513d6020811015611cfc57600080fd5b50516001600160a01b031633145b80611d965750600660009054906101000a90046001600160a01b03166001600160a01b031663c03c2a076040518163ffffffff1660e01b815260040160206040518083038186803b158015611d5e57600080fd5b505afa158015611d72573d6000803e3d6000fd5b505050506040513d6020811015611d8857600080fd5b50516001600160a01b031633145b611dd15760405162461bcd60e51b815260040180806020018281038252603e8152602001806133f2603e913960400191505060405180910390fd5b6114bb8282612edb565b600080611123836040518060600160405280602581526020016134f36025913960035460408051630af4187d60e01b81523360048201526001600160a01b038a8116602483015291519190921691630af4187d916044808301926020929190829003018186803b158015610e3b57600080fd5b6000611e5b3384846129f9565b6040805183815290516001600160a01b0385169133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600192915050565b60025481565b600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b158015611ef857600080fd5b505afa158015611f0c573d6000803e3d6000fd5b505050506040513d6020811015611f2257600080fd5b50516001600160a01b0316611f356129f5565b6001600160a01b03161480611fcb5750600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b158015611f9357600080fd5b505afa158015611fa7573d6000803e3d6000fd5b505050506040513d6020811015611fbd57600080fd5b50516001600160a01b031633145b806120575750600660009054906101000a90046001600160a01b03166001600160a01b031663c03c2a076040518163ffffffff1660e01b815260040160206040518083038186803b15801561201f57600080fd5b505afa158015612033573d6000803e3d6000fd5b505050506040513d602081101561204957600080fd5b50516001600160a01b031633145b6120925760405162461bcd60e51b81526004018080602001828103825260238152602001806132f86023913960400191505060405180910390fd5b600554604051635c26412360e11b8152602060048201908152602482018490526001600160a01b039092169163b84c824691859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156116ed57600080fd5b6004546000906001600160a01b03166121206129f1565b6001600160a01b0316146121655760405162461bcd60e51b815260040180806020018281038252602381526020018061333d6023913960400191505060405180910390fd5b6001600160a01b03841632146121b5576040805162461bcd60e51b815260206004820152601060248201526f22a92199181d102327a92124a22222a760811b604482015290519081900360640190fd5b6121c08484846129f9565b5060019392505050565b600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b15801561221857600080fd5b505afa15801561222c573d6000803e3d6000fd5b505050506040513d602081101561224257600080fd5b50516001600160a01b03166122556129f5565b6001600160a01b031614806122eb5750600560009054906101000a90046001600160a01b03166001600160a01b031663fc8a8cc16040518163ffffffff1660e01b815260040160206040518083038186803b1580156122b357600080fd5b505afa1580156122c7573d6000803e3d6000fd5b505050506040513d60208110156122dd57600080fd5b50516001600160a01b031633145b806123775750600660009054906101000a90046001600160a01b03166001600160a01b031663c03c2a076040518163ffffffff1660e01b815260040160206040518083038186803b15801561233f57600080fd5b505afa158015612353573d6000803e3d6000fd5b505050506040513d602081101561236957600080fd5b50516001600160a01b031633145b6123b25760405162461bcd60e51b81526004018080602001828103825260238152602001806132f86023913960400191505060405180910390fd5b60055460405163c47f002760e01b8152602060048201908152602482018490526001600160a01b039092169163c47f002791859185918190604401848480828437600081840152601f19601f8201169050808301925050509350505050600060405180830381600087803b1580156116ed57600080fd5b6000546001600160a01b031633146124725760405162461bcd60e51b815260040180806020018281038252602381526020018061333d6023913960400191505060405180910390fd5b61247b8161310b565b50565b6004546000906001600160a01b03166124956129f1565b6001600160a01b0316146124da5760405162461bcd60e51b815260040180806020018281038252602381526020018061333d6023913960400191505060405180910390fd5b6001600160a01b038416321461252a576040805162461bcd60e51b815260206004820152601060248201526f22a92199181d102327a92124a22222a760811b604482015290519081900360640190fd5b6000611812836040518060600160405280602581526020016134f36025913960035460408051630af4187d60e01b81526001600160a01b038b811660048301528a8116602483015291519190921691630af4187d916044808301926020929190829003018186803b158015610e3b57600080fd5b60035460408051630af4187d60e01b81526001600160a01b038581166004830152848116602483015291516000939290921691630af4187d91604480820192602092909190829003018186803b1580156125f757600080fd5b505afa15801561260b573d6000803e3d6000fd5b505050506040513d602081101561262157600080fd5b50519392505050565b6004546000906001600160a01b03166126416129f1565b6001600160a01b0316146126865760405162461bcd60e51b815260040180806020018281038252602381526020018061333d6023913960400191505060405180910390fd5b6001600160a01b03841632146126d6576040805162461bcd60e51b815260206004820152601060248201526f22a92199181d102327a92124a22222a760811b604482015290519081900360640190fd5b6121c084848461284b565b6000546001600160a01b031681565b6005546001600160a01b031681565b6001546001600160a01b03163314612753576040805162461bcd60e51b815260206004820152601260248201527127bbb730b136329d102737ba1037bbb732b960711b604482015290519081900360640190fd5b6001600160a01b0381166127985760405162461bcd60e51b81526004018080602001828103825260218152602001806133d16021913960400191505060405180910390fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b6127fd8161319b565b600554604080516313af403560e01b81526001600160a01b038481166004830152915191909216916313af403591602480830192600092919082900301818387803b158015610cf557600080fd5b60025443101561288c5760405162461bcd60e51b81526004018080602001828103825260318152602001806134586031913960400191505060405180910390fd5b6001600160a01b0383166128d15760405162461bcd60e51b81526004018080602001828103825260248152602001806134cf6024913960400191505060405180910390fd5b6001600160a01b0382166129165760405162461bcd60e51b815260040180806020018281038252602281526020018061331b6022913960400191505060405180910390fd5b60035460408051633691826360e21b81526001600160a01b0386811660048301528581166024830152604482018590529151919092169163da46098c91606480830192600092919082900301818387803b15801561297357600080fd5b505af1158015612987573d6000803e3d6000fd5b50505050505050565b6000828201838110156129ea576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b3390565b3290565b600254431015612a3a5760405162461bcd60e51b81526004018080602001828103825260318152602001806134586031913960400191505060405180910390fd5b6001600160a01b038316612a7f5760405162461bcd60e51b81526004018080602001828103825260258152602001806134aa6025913960400191505060405180910390fd5b6001600160a01b038216612ac45760405162461bcd60e51b81526004018080602001828103825260238152602001806132b36023913960400191505060405180910390fd5b600354604080516060810190915260268082526001600160a01b039092169163e30443bc918691612b4691869161336060208301396003546040805163f8b2cb4f60e01b81526001600160a01b038c811660048301529151919092169163f8b2cb4f916024808301926020929190829003018186803b158015610e3b57600080fd5b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b158015612b9557600080fd5b505af1158015612ba9573d6000803e3d6000fd5b50506003546040805163f8b2cb4f60e01b81526001600160a01b038781166004830152915191909216935063e30443bc92508591612c0b918691869163f8b2cb4f91602480820192602092909190829003018186803b1580156110eb57600080fd5b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561297357600080fd5b60008184841115612ce95760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612cae578181015183820152602001612c96565b50505050905090810190601f168015612cdb5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600254431015612d325760405162461bcd60e51b81526004018080602001828103825260318152602001806134586031913960400191505060405180910390fd5b6001600160a01b038216612d8d576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600354604080516362720d9160e11b815290516001600160a01b039092169163f7ea7a3d91612de0918591859163c4e41b2291600480820192602092909190829003018186803b1580156110eb57600080fd5b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612e1657600080fd5b505af1158015612e2a573d6000803e3d6000fd5b50506003546040805163f8b2cb4f60e01b81526001600160a01b038781166004830152915191909216935063e30443bc92508591612e8c918691869163f8b2cb4f91602480820192602092909190829003018186803b1580156110eb57600080fd5b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156116ed57600080fd5b600254431015612f1c5760405162461bcd60e51b81526004018080602001828103825260318152602001806134586031913960400191505060405180910390fd5b6001600160a01b038216612f615760405162461bcd60e51b81526004018080602001828103825260218152602001806134896021913960400191505060405180910390fd5b600354604080516060810190915260228082526001600160a01b039092169163e30443bc918591612fe39186916132d660208301396003546040805163f8b2cb4f60e01b81526001600160a01b038b811660048301529151919092169163f8b2cb4f916024808301926020929190829003018186803b158015610e3b57600080fd5b6040518363ffffffff1660e01b815260040180836001600160a01b03166001600160a01b0316815260200182815260200192505050600060405180830381600087803b15801561303257600080fd5b505af1158015613046573d6000803e3d6000fd5b5050600354604080516362720d9160e11b815290516001600160a01b03909216935063f7ea7a3d92506130d5918591859163c4e41b2291600480820192602092909190829003018186803b15801561309d57600080fd5b505afa1580156130b1573d6000803e3d6000fd5b505050506040513d60208110156130c757600080fd5b50519063ffffffff6131e916565b6040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b1580156116ed57600080fd5b6131148161322b565b806001600160a01b031663ec9497586040518163ffffffff1660e01b815260040160206040518083038186803b15801561314d57600080fd5b505afa158015613161573d6000803e3d6000fd5b505050506040513d602081101561317757600080fd5b5051600580546001600160a01b0319166001600160a01b0390921691909117905550565b600354604080516313af403560e01b81526001600160a01b038481166004830152915191909216916313af403591602480830192600092919082900301818387803b158015610cf557600080fd5b60006129ea83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612c5a565b806001600160a01b0316634bc597b96040518163ffffffff1660e01b815260040160206040518083038186803b15801561326457600080fd5b505afa158015613278573d6000803e3d6000fd5b505050506040513d602081101561328e57600080fd5b5051600380546001600160a01b0319166001600160a01b039092169190911790555056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e6365454173736574546f6b656e3a20464f5242494444454e202d204e6f74206f776e65722145524332303a20617070726f766520746f20746865207a65726f2061646472657373454173736574546f6b656e3a20464f5242494444454e202d204e6f742070726f78792145524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63655061757361626c653a20526576657274202d20506175736520646964206e6f742061637469766174652e20506c6561736520656e746572206120706f73697469766520696e74656765722e4f776e61626c653a205a65726f2061646472657373206e6f7420616c6c6f776564454173736574546f6b656e3a20464f5242494444454e202d204e6f74206f776e6572206f72206d696e746572206f7220746f6b656e206d616e616765722145524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63655061757361626c653a20526576657274202d20436f646520657865637574696f6e206973207374696c6c2070617573656445524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a72315820f35ec43f560519ef2ad81288877947f67ad78d8ab6e795b33828d4fc06b5c19364736f6c63430005100032