0x60806040526004361061016c5760003560e01c806303c83302146101805780630483f7a01461018857806306fdde03146101c3578063095ea7b31461024d57806309bbedde1461029a5780630c8b234e146102c157806318160ddd146102f45780631fa71a3b14610309578063226cfa3d1461033357806323b872dd1461036657806327ce0147146103a9578063313ce567146103dc57806339509351146104075780634e7b827f146104405780636a474002146104735780636f2789ec1461048857806370a082311461049d57806385a6b3ae146104d057806391b89fba146104e557806395d89b4114610518578063a457c2d71461052d578063a8b9d24014610566578063a9059cbb14610599578063aafd847a146105d2578063adf4849014610605578063bc4c4b3714610640578063be10b6141461067b578063dd62ed3e14610690578063e30443bc146106cb578063e98030c714610704578063fbcbc0f11461072e5761017b565b3661017b5761017961079e565b005b600080fd5b61017961079e565b34801561019457600080fd5b50610179600480360360408110156101ab57600080fd5b506001600160a01b038135169060200135151561082f565b3480156101cf57600080fd5b506101d86109bf565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102125781810151838201526020016101fa565b50505050905090810190601f16801561023f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561025957600080fd5b506102866004803603604081101561027057600080fd5b506001600160a01b038135169060200135610a55565b604080519115158252519081900360200190f35b3480156102a657600080fd5b506102af610a73565b60408051918252519081900360200190f35b3480156102cd57600080fd5b50610286600480360360208110156102e457600080fd5b50356001600160a01b0316610a79565b34801561030057600080fd5b506102af610a9b565b34801561031557600080fd5b506101796004803603602081101561032c57600080fd5b5035610aa1565b34801561033f57600080fd5b506102af6004803603602081101561035657600080fd5b50356001600160a01b0316610b8f565b34801561037257600080fd5b506102866004803603606081101561038957600080fd5b506001600160a01b03813581169160208101359091169060400135610ba1565b3480156103b557600080fd5b506102af600480360360208110156103cc57600080fd5b50356001600160a01b0316610c28565b3480156103e857600080fd5b506103f1610c85565b6040805160ff9092168252519081900360200190f35b34801561041357600080fd5b506102866004803603604081101561042a57600080fd5b506001600160a01b038135169060200135610c8a565b34801561044c57600080fd5b506102866004803603602081101561046357600080fd5b50356001600160a01b0316610cd8565b34801561047f57600080fd5b50610179610ced565b34801561049457600080fd5b506102af610d24565b3480156104a957600080fd5b506102af600480360360208110156104c057600080fd5b50356001600160a01b0316610d2a565b3480156104dc57600080fd5b506102af610d45565b3480156104f157600080fd5b506102af6004803603602081101561050857600080fd5b50356001600160a01b0316610d4b565b34801561052457600080fd5b506101d8610d56565b34801561053957600080fd5b506102866004803603604081101561055057600080fd5b506001600160a01b038135169060200135610db7565b34801561057257600080fd5b506102af6004803603602081101561058957600080fd5b50356001600160a01b0316610e1f565b3480156105a557600080fd5b50610286600480360360408110156105bc57600080fd5b506001600160a01b038135169060200135610e4b565b3480156105de57600080fd5b506102af600480360360208110156105f557600080fd5b50356001600160a01b0316610e5f565b34801561061157600080fd5b506101796004803603604081101561062857600080fd5b506001600160a01b0381351690602001351515610e7a565b34801561064c57600080fd5b506102866004803603604081101561066357600080fd5b506001600160a01b0381351690602001351515610f94565b34801561068757600080fd5b506102af6110d4565b34801561069c57600080fd5b506102af600480360360408110156106b357600080fd5b506001600160a01b03813581169160200135166110da565b3480156106d757600080fd5b50610179600480360360408110156106ee57600080fd5b506001600160a01b038135169060200135611105565b34801561071057600080fd5b506101796004803603602081101561072757600080fd5b5035611263565b34801561073a57600080fd5b506107616004803603602081101561075157600080fd5b50356001600160a01b031661138f565b604080516001600160a01b0390971687526020870195909552858501939093526060850191909152608084015260a0830152519081900360c00190f35b60006107a8610a9b565b116107b257600080fd5b341561082d576107e36107c3610a9b565b6107d134600160801b611406565b816107d857fe5b600554919004611466565b60055560408051348152905133917fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d78454116511919081900360200190a26008546108299034611466565b6008555b565b600c600061083b6114be565b6001600160a01b0316815260208101919091526040016000205460ff16610897576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152600a602052604090205460ff1615610900576040805162461bcd60e51b81526020600482015260186024820152771058d8dbdd5b9d08185b1c9958591e48195e18db1d59195960421b604482015290519081900360640190fd5b6001600160a01b0382166000908152600a60205260408120805460ff1916600117905561092e9083906114c2565b8015610987576001600160a01b03821660009081526009602052604090205460ff1615610987576001600160a01b0382166000908152600960205260409020805460ff19169055600e5461098390600161151c565b600e555b6040516001600160a01b038316907fa878b31040b2e6d0a9a3d3361209db3908ba62014b0dca52adbaee451d128b2590600090a25050565b60038054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a4b5780601f10610a2057610100808354040283529160200191610a4b565b820191906000526020600020905b815481529060010190602001808311610a2e57829003601f168201915b5050505050905090565b6000610a69610a626114be565b848461155e565b5060015b92915050565b600e5490565b6001600160a01b0381166000908152600c602052604090205460ff165b919050565b60025490565b600c6000610aad6114be565b6001600160a01b0316815260208101919091526040016000205460ff16610b09576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001811015610b495760405162461bcd60e51b8152600401808060200182810382526034815260200180611aa56034913960400191505060405180910390fd5b600f5460405182907f9c9571fb23d65fec0768248b245e0bee0cd9e9036a4a9f9e8e417eb15188678590600090a3610b8981670de0b6b3a7640000611406565b600f5550565b600b6020526000908152604090205481565b6000610bae848484611595565b610c1e84610bba6114be565b610c1985604051806060016040528060288152602001611bb9602891396001600160a01b038a16600090815260016020526040812090610bf86114be565b6001600160a01b0316815260208101919091526040016000205491906115cc565b61155e565b5060019392505050565b6001600160a01b038116600090815260066020526040812054600160801b90610c7790610c7290610c6c610c67610c5e88610d2a565b60055490611406565b611663565b90611673565b6116a6565b81610c7e57fe5b0492915050565b601290565b6000610a69610c976114be565b84610c198560016000610ca86114be565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611466565b600a6020526000908152604090205460ff1681565b60405162461bcd60e51b8152600401808060200182810382526067815260200180611ad96067913960800191505060405180910390fd5b600d5481565b6001600160a01b031660009081526020819052604090205490565b60085481565b6000610a6d82610e1f565b60048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a4b5780601f10610a2057610100808354040283529160200191610a4b565b6000610a69610dc46114be565b84610c1985604051806060016040528060258152602001611d446025913960016000610dee6114be565b6001600160a01b03908116825260208083019390935260409182016000908120918d168152925290205491906115cc565b6001600160a01b038116600090815260076020526040812054610a6d90610e4584610c28565b9061151c565b6000610a69610e586114be565b8484611595565b6001600160a01b031660009081526007602052604090205490565b600c6000610e866114be565b6001600160a01b0316815260208101919091526040016000205460ff16610ee2576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152600c602052604090205460ff1615158115151415610f405760405162461bcd60e51b815260040180806020018281038252602c815260200180611b40602c913960400191505060405180910390fd5b6001600160a01b0382166000818152600c6020526040808220805460ff191685151590811790915590519092917f8ae3029208fd6692a475f09e97b7a86f7993f1eb5e1edb563554aebc2883860291a35050565b6000600c6000610fa26114be565b6001600160a01b0316815260208101919091526040016000205460ff16610ffe576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0383166000908152600b6020526040902054600d54429101106110595760405162461bcd60e51b8152600401808060200182810382526035815260200180611d0f6035913960400191505060405180910390fd5b6000611064846116b9565b905080156110ca576001600160a01b0384166000818152600b60209081526040918290204290558151848152915186151593927fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf09292908290030190a36001915050610a6d565b5060009392505050565b600f5481565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600c60006111116114be565b6001600160a01b0316815260208101919091526040016000205460ff1661116d576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152600a602052604090205460ff16156111935761125f565b600f548110611201576111a682826114c2565b6001600160a01b03821660009081526009602052604090205460ff166111fc576001600160a01b0382166000908152600960205260409020805460ff19166001908117909155600e546111f891611466565b600e555b61125f565b61120c8260006114c2565b6001600160a01b03821660009081526009602052604090205460ff161561125f576001600160a01b0382166000908152600960205260409020805460ff19169055600e5461125b90600161151c565b600e555b5050565b600c600061126f6114be565b6001600160a01b0316815260208101919091526040016000205460ff166112cb576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b610e1081101580156112e05750620151808111155b61131b5760405162461bcd60e51b815260040180806020018281038252604b815260200180611c01604b913960600191505060405180910390fd5b600d5481141561135c5760405162461bcd60e51b815260040180806020018281038252603d815260200180611c8d603d913960400191505060405180910390fd5b600d5460405182907f474ea64804364a1e29a4487ddb63c3342a2dd826ccd8acf48825e680a0e6f20f90600090a3600d55565b8060008080808061139f86610e1f565b94506113aa86610c28565b6001600160a01b0387166000908152600b60205260409020549094509250826113d357426113e1565b600d546113e1908490611466565b91504282116113f15760006113fb565b6113fb824261151c565b905091939550919395565b60008261141557506000610a6d565b8282028284828161142257fe5b041461145f5760405162461bcd60e51b8152600401808060200182810382526021815260200180611b6c6021913960400191505060405180910390fd5b9392505050565b60008282018381101561145f576040805162461bcd60e51b815260206004820152601b60248201527a536166654d6174683a206164646974696f6e206f766572666c6f7760281b604482015290519081900360640190fd5b3390565b60006114cd83610d2a565b9050808211156114f55760006114e3838361151c565b90506114ef84826117f8565b50611517565b80821015611517576000611509828461151c565b9050611515848261185c565b505b505050565b600061145f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115cc565b60405162461bcd60e51b8152600401808060200182810382526045815260200180611cca6045913960600191505060405180910390fd5b60405162461bcd60e51b815260040180806020018281038252602c815260200180611b8d602c913960400191505060405180910390fd5b6000818484111561165b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611620578181015183820152602001611608565b50505050905090810190601f16801561164d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008181811215610a6d57600080fd5b60008282018183128015906116885750838112155b8061169d575060008312801561169d57508381125b61145f57600080fd5b6000808212156116b557600080fd5b5090565b6000806116c583610e1f565b905080156117ef576040805182815290516001600160a01b038516917fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d919081900360200190a26001600160a01b03831660009081526007602052604090205461172f9082611466565b6001600160a01b038416600081815260076020526040808220939093559151610bb890849084818181858888f193505050503d806000811461178d576040519150601f19603f3d011682016040523d82523d6000602084013e611792565b606091505b50509050806117dc576001600160a01b0384166000908152600760205260409020546117be908361151c565b6001600160a01b0385166000908152600760205260409020556117e7565b600092505050610a96565b509050610a96565b50600092915050565b61180282826118a0565b61183c61181d610c678360055461140690919063ffffffff16565b6001600160a01b03841660009081526006602052604090205490611972565b6001600160a01b0390921660009081526006602052604090209190915550565b61186682826119a4565b61183c611881610c678360055461140690919063ffffffff16565b6001600160a01b03841660009081526006602052604090205490611673565b6001600160a01b0382166118fb576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6002546119089082611466565b6002556001600160a01b03821660009081526020819052604090205461192e9082611466565b6001600160a01b038316600081815260208181526040808320949094558351858152935192939192600080516020611c4c8339815191529281900390910190a35050565b60008183038183128015906119875750838113155b8061169d575060008312801561169d575083811361145f57600080fd5b6001600160a01b0382166119e95760405162461bcd60e51b8152600401808060200182810382526021815260200180611c6c6021913960400191505060405180910390fd5b611a2681604051806060016040528060228152602001611a83602291396001600160a01b03851660009081526020819052604090205491906115cc565b6001600160a01b038316600090815260208190526040902055600254611a4c908261151c565b6002556040805182815290516000916001600160a01b03851691600080516020611c4c8339815191529181900360200190a3505056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365566972616c5f4469766964656e645f547261636b65723a206e65774d696e696d756d546f6b656e206d6f7265203120746f6b656e566972616c5f4469766964656e645f547261636b65723a2077697468647261774469766964656e642064697361626c65642e20557365207468652027636c61696d272066756e6374696f6e206f6e20746865206d61696e20564952414c20636f6e74726163742e4f776e6572736869703a20726f6c6520697320616c72656164792073657420746f20746869732076616c7565536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77566972616c5f4469766964656e645f547261636b65723a204e6f207472616e736665727320616c6c6f77656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572566972616c5f4469766964656e645f547261636b65723a20636c61696d57616974206d757374206265207570646174656420746f206265747765656e203120616e6420323420686f757273ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a206275726e2066726f6d20746865207a65726f2061646472657373566972616c5f4469766964656e645f547261636b65723a2043616e6e6f742075706461746520636c61696d5761697420746f2073616d652076616c7565566972616c5f4469766964656e645f547261636b65723a20546f6b656e206973206e6f74207472616e7366657261626c652c206e6f206e65656420746f20617070726f7665566972616c5f4469766964656e645f547261636b65723a20706c65617365207761697420666f7220616e6f7468657220636c61696d45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220cc6ae6e3160f34a884cb460546af28fe4bde6b5e2c8f5a9472fcdbc93abcb5d364736f6c63430007060033
0x60806040523480156200001157600080fd5b5060408051808201825260138082527f56435f4469766964656e645f547261636b657200000000000000000000000000602080840182815285518087019096529285528401528151919291839183916200006e916003916200014c565b508051620000849060049060208401906200014c565b50505050506001600c60006200009f6200014860201b60201c565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff19958616179055328152600c909252902080549091166001908117909155620000ec62000148565b6001600160a01b031660008051602062001fa683398151915260405160405180910390a3604051600190329060008051602062001fa683398151915290600090a3610e10600d556a0c685fa11e01ec6f000000600f55620001f8565b3390565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282620001845760008555620001cf565b82601f106200019f57805160ff1916838001178555620001cf565b82800160010185558215620001cf579182015b82811115620001cf578251825591602001919060010190620001b2565b50620001dd929150620001e1565b5090565b5b80821115620001dd5760008155600101620001e2565b611d9e80620002086000396000f3fe60806040526004361061016c5760003560e01c806303c83302146101805780630483f7a01461018857806306fdde03146101c3578063095ea7b31461024d57806309bbedde1461029a5780630c8b234e146102c157806318160ddd146102f45780631fa71a3b14610309578063226cfa3d1461033357806323b872dd1461036657806327ce0147146103a9578063313ce567146103dc57806339509351146104075780634e7b827f146104405780636a474002146104735780636f2789ec1461048857806370a082311461049d57806385a6b3ae146104d057806391b89fba146104e557806395d89b4114610518578063a457c2d71461052d578063a8b9d24014610566578063a9059cbb14610599578063aafd847a146105d2578063adf4849014610605578063bc4c4b3714610640578063be10b6141461067b578063dd62ed3e14610690578063e30443bc146106cb578063e98030c714610704578063fbcbc0f11461072e5761017b565b3661017b5761017961079e565b005b600080fd5b61017961079e565b34801561019457600080fd5b50610179600480360360408110156101ab57600080fd5b506001600160a01b038135169060200135151561082f565b3480156101cf57600080fd5b506101d86109bf565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102125781810151838201526020016101fa565b50505050905090810190601f16801561023f5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561025957600080fd5b506102866004803603604081101561027057600080fd5b506001600160a01b038135169060200135610a55565b604080519115158252519081900360200190f35b3480156102a657600080fd5b506102af610a73565b60408051918252519081900360200190f35b3480156102cd57600080fd5b50610286600480360360208110156102e457600080fd5b50356001600160a01b0316610a79565b34801561030057600080fd5b506102af610a9b565b34801561031557600080fd5b506101796004803603602081101561032c57600080fd5b5035610aa1565b34801561033f57600080fd5b506102af6004803603602081101561035657600080fd5b50356001600160a01b0316610b8f565b34801561037257600080fd5b506102866004803603606081101561038957600080fd5b506001600160a01b03813581169160208101359091169060400135610ba1565b3480156103b557600080fd5b506102af600480360360208110156103cc57600080fd5b50356001600160a01b0316610c28565b3480156103e857600080fd5b506103f1610c85565b6040805160ff9092168252519081900360200190f35b34801561041357600080fd5b506102866004803603604081101561042a57600080fd5b506001600160a01b038135169060200135610c8a565b34801561044c57600080fd5b506102866004803603602081101561046357600080fd5b50356001600160a01b0316610cd8565b34801561047f57600080fd5b50610179610ced565b34801561049457600080fd5b506102af610d24565b3480156104a957600080fd5b506102af600480360360208110156104c057600080fd5b50356001600160a01b0316610d2a565b3480156104dc57600080fd5b506102af610d45565b3480156104f157600080fd5b506102af6004803603602081101561050857600080fd5b50356001600160a01b0316610d4b565b34801561052457600080fd5b506101d8610d56565b34801561053957600080fd5b506102866004803603604081101561055057600080fd5b506001600160a01b038135169060200135610db7565b34801561057257600080fd5b506102af6004803603602081101561058957600080fd5b50356001600160a01b0316610e1f565b3480156105a557600080fd5b50610286600480360360408110156105bc57600080fd5b506001600160a01b038135169060200135610e4b565b3480156105de57600080fd5b506102af600480360360208110156105f557600080fd5b50356001600160a01b0316610e5f565b34801561061157600080fd5b506101796004803603604081101561062857600080fd5b506001600160a01b0381351690602001351515610e7a565b34801561064c57600080fd5b506102866004803603604081101561066357600080fd5b506001600160a01b0381351690602001351515610f94565b34801561068757600080fd5b506102af6110d4565b34801561069c57600080fd5b506102af600480360360408110156106b357600080fd5b506001600160a01b03813581169160200135166110da565b3480156106d757600080fd5b50610179600480360360408110156106ee57600080fd5b506001600160a01b038135169060200135611105565b34801561071057600080fd5b506101796004803603602081101561072757600080fd5b5035611263565b34801561073a57600080fd5b506107616004803603602081101561075157600080fd5b50356001600160a01b031661138f565b604080516001600160a01b0390971687526020870195909552858501939093526060850191909152608084015260a0830152519081900360c00190f35b60006107a8610a9b565b116107b257600080fd5b341561082d576107e36107c3610a9b565b6107d134600160801b611406565b816107d857fe5b600554919004611466565b60055560408051348152905133917fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d78454116511919081900360200190a26008546108299034611466565b6008555b565b600c600061083b6114be565b6001600160a01b0316815260208101919091526040016000205460ff16610897576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152600a602052604090205460ff1615610900576040805162461bcd60e51b81526020600482015260186024820152771058d8dbdd5b9d08185b1c9958591e48195e18db1d59195960421b604482015290519081900360640190fd5b6001600160a01b0382166000908152600a60205260408120805460ff1916600117905561092e9083906114c2565b8015610987576001600160a01b03821660009081526009602052604090205460ff1615610987576001600160a01b0382166000908152600960205260409020805460ff19169055600e5461098390600161151c565b600e555b6040516001600160a01b038316907fa878b31040b2e6d0a9a3d3361209db3908ba62014b0dca52adbaee451d128b2590600090a25050565b60038054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a4b5780601f10610a2057610100808354040283529160200191610a4b565b820191906000526020600020905b815481529060010190602001808311610a2e57829003601f168201915b5050505050905090565b6000610a69610a626114be565b848461155e565b5060015b92915050565b600e5490565b6001600160a01b0381166000908152600c602052604090205460ff165b919050565b60025490565b600c6000610aad6114be565b6001600160a01b0316815260208101919091526040016000205460ff16610b09576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001811015610b495760405162461bcd60e51b8152600401808060200182810382526034815260200180611aa56034913960400191505060405180910390fd5b600f5460405182907f9c9571fb23d65fec0768248b245e0bee0cd9e9036a4a9f9e8e417eb15188678590600090a3610b8981670de0b6b3a7640000611406565b600f5550565b600b6020526000908152604090205481565b6000610bae848484611595565b610c1e84610bba6114be565b610c1985604051806060016040528060288152602001611bb9602891396001600160a01b038a16600090815260016020526040812090610bf86114be565b6001600160a01b0316815260208101919091526040016000205491906115cc565b61155e565b5060019392505050565b6001600160a01b038116600090815260066020526040812054600160801b90610c7790610c7290610c6c610c67610c5e88610d2a565b60055490611406565b611663565b90611673565b6116a6565b81610c7e57fe5b0492915050565b601290565b6000610a69610c976114be565b84610c198560016000610ca86114be565b6001600160a01b03908116825260208083019390935260409182016000908120918c168152925290205490611466565b600a6020526000908152604090205460ff1681565b60405162461bcd60e51b8152600401808060200182810382526067815260200180611ad96067913960800191505060405180910390fd5b600d5481565b6001600160a01b031660009081526020819052604090205490565b60085481565b6000610a6d82610e1f565b60048054604080516020601f6002600019610100600188161502019095169490940493840181900481028201810190925282815260609390929091830182828015610a4b5780601f10610a2057610100808354040283529160200191610a4b565b6000610a69610dc46114be565b84610c1985604051806060016040528060258152602001611d446025913960016000610dee6114be565b6001600160a01b03908116825260208083019390935260409182016000908120918d168152925290205491906115cc565b6001600160a01b038116600090815260076020526040812054610a6d90610e4584610c28565b9061151c565b6000610a69610e586114be565b8484611595565b6001600160a01b031660009081526007602052604090205490565b600c6000610e866114be565b6001600160a01b0316815260208101919091526040016000205460ff16610ee2576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152600c602052604090205460ff1615158115151415610f405760405162461bcd60e51b815260040180806020018281038252602c815260200180611b40602c913960400191505060405180910390fd5b6001600160a01b0382166000818152600c6020526040808220805460ff191685151590811790915590519092917f8ae3029208fd6692a475f09e97b7a86f7993f1eb5e1edb563554aebc2883860291a35050565b6000600c6000610fa26114be565b6001600160a01b0316815260208101919091526040016000205460ff16610ffe576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0383166000908152600b6020526040902054600d54429101106110595760405162461bcd60e51b8152600401808060200182810382526035815260200180611d0f6035913960400191505060405180910390fd5b6000611064846116b9565b905080156110ca576001600160a01b0384166000818152600b60209081526040918290204290558151848152915186151593927fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf09292908290030190a36001915050610a6d565b5060009392505050565b600f5481565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600c60006111116114be565b6001600160a01b0316815260208101919091526040016000205460ff1661116d576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152600a602052604090205460ff16156111935761125f565b600f548110611201576111a682826114c2565b6001600160a01b03821660009081526009602052604090205460ff166111fc576001600160a01b0382166000908152600960205260409020805460ff19166001908117909155600e546111f891611466565b600e555b61125f565b61120c8260006114c2565b6001600160a01b03821660009081526009602052604090205460ff161561125f576001600160a01b0382166000908152600960205260409020805460ff19169055600e5461125b90600161151c565b600e555b5050565b600c600061126f6114be565b6001600160a01b0316815260208101919091526040016000205460ff166112cb576040805162461bcd60e51b81526020600482018190526024820152600080516020611be1833981519152604482015290519081900360640190fd5b610e1081101580156112e05750620151808111155b61131b5760405162461bcd60e51b815260040180806020018281038252604b815260200180611c01604b913960600191505060405180910390fd5b600d5481141561135c5760405162461bcd60e51b815260040180806020018281038252603d815260200180611c8d603d913960400191505060405180910390fd5b600d5460405182907f474ea64804364a1e29a4487ddb63c3342a2dd826ccd8acf48825e680a0e6f20f90600090a3600d55565b8060008080808061139f86610e1f565b94506113aa86610c28565b6001600160a01b0387166000908152600b60205260409020549094509250826113d357426113e1565b600d546113e1908490611466565b91504282116113f15760006113fb565b6113fb824261151c565b905091939550919395565b60008261141557506000610a6d565b8282028284828161142257fe5b041461145f5760405162461bcd60e51b8152600401808060200182810382526021815260200180611b6c6021913960400191505060405180910390fd5b9392505050565b60008282018381101561145f576040805162461bcd60e51b815260206004820152601b60248201527a536166654d6174683a206164646974696f6e206f766572666c6f7760281b604482015290519081900360640190fd5b3390565b60006114cd83610d2a565b9050808211156114f55760006114e3838361151c565b90506114ef84826117f8565b50611517565b80821015611517576000611509828461151c565b9050611515848261185c565b505b505050565b600061145f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115cc565b60405162461bcd60e51b8152600401808060200182810382526045815260200180611cca6045913960600191505060405180910390fd5b60405162461bcd60e51b815260040180806020018281038252602c815260200180611b8d602c913960400191505060405180910390fd5b6000818484111561165b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611620578181015183820152602001611608565b50505050905090810190601f16801561164d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008181811215610a6d57600080fd5b60008282018183128015906116885750838112155b8061169d575060008312801561169d57508381125b61145f57600080fd5b6000808212156116b557600080fd5b5090565b6000806116c583610e1f565b905080156117ef576040805182815290516001600160a01b038516917fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d919081900360200190a26001600160a01b03831660009081526007602052604090205461172f9082611466565b6001600160a01b038416600081815260076020526040808220939093559151610bb890849084818181858888f193505050503d806000811461178d576040519150601f19603f3d011682016040523d82523d6000602084013e611792565b606091505b50509050806117dc576001600160a01b0384166000908152600760205260409020546117be908361151c565b6001600160a01b0385166000908152600760205260409020556117e7565b600092505050610a96565b509050610a96565b50600092915050565b61180282826118a0565b61183c61181d610c678360055461140690919063ffffffff16565b6001600160a01b03841660009081526006602052604090205490611972565b6001600160a01b0390921660009081526006602052604090209190915550565b61186682826119a4565b61183c611881610c678360055461140690919063ffffffff16565b6001600160a01b03841660009081526006602052604090205490611673565b6001600160a01b0382166118fb576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6002546119089082611466565b6002556001600160a01b03821660009081526020819052604090205461192e9082611466565b6001600160a01b038316600081815260208181526040808320949094558351858152935192939192600080516020611c4c8339815191529281900390910190a35050565b60008183038183128015906119875750838113155b8061169d575060008312801561169d575083811361145f57600080fd5b6001600160a01b0382166119e95760405162461bcd60e51b8152600401808060200182810382526021815260200180611c6c6021913960400191505060405180910390fd5b611a2681604051806060016040528060228152602001611a83602291396001600160a01b03851660009081526020819052604090205491906115cc565b6001600160a01b038316600090815260208190526040902055600254611a4c908261151c565b6002556040805182815290516000916001600160a01b03851691600080516020611c4c8339815191529181900360200190a3505056fe45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365566972616c5f4469766964656e645f547261636b65723a206e65774d696e696d756d546f6b656e206d6f7265203120746f6b656e566972616c5f4469766964656e645f547261636b65723a2077697468647261774469766964656e642064697361626c65642e20557365207468652027636c61696d272066756e6374696f6e206f6e20746865206d61696e20564952414c20636f6e74726163742e4f776e6572736869703a20726f6c6520697320616c72656164792073657420746f20746869732076616c7565536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77566972616c5f4469766964656e645f547261636b65723a204e6f207472616e736665727320616c6c6f77656445524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572566972616c5f4469766964656e645f547261636b65723a20636c61696d57616974206d757374206265207570646174656420746f206265747765656e203120616e6420323420686f757273ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a206275726e2066726f6d20746865207a65726f2061646472657373566972616c5f4469766964656e645f547261636b65723a2043616e6e6f742075706461746520636c61696d5761697420746f2073616d652076616c7565566972616c5f4469766964656e645f547261636b65723a20546f6b656e206973206e6f74207472616e7366657261626c652c206e6f206e65656420746f20617070726f7665566972616c5f4469766964656e645f547261636b65723a20706c65617365207761697420666f7220616e6f7468657220636c61696d45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220cc6ae6e3160f34a884cb460546af28fe4bde6b5e2c8f5a9472fcdbc93abcb5d364736f6c634300070600338ae3029208fd6692a475f09e97b7a86f7993f1eb5e1edb563554aebc28838602