h-agent-swap 3.0.2 → 3.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/abi/TokenMarket.json +14 -7
- package/src/agent-swap.js +1 -1
package/package.json
CHANGED
package/src/abi/TokenMarket.json
CHANGED
|
@@ -52,6 +52,18 @@
|
|
|
52
52
|
"internalType": "uint256",
|
|
53
53
|
"name": "actualOut",
|
|
54
54
|
"type": "uint256"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"indexed": false,
|
|
58
|
+
"internalType": "uint256",
|
|
59
|
+
"name": "feeAmount",
|
|
60
|
+
"type": "uint256"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"indexed": false,
|
|
64
|
+
"internalType": "uint256",
|
|
65
|
+
"name": "burnAmount",
|
|
66
|
+
"type": "uint256"
|
|
55
67
|
}
|
|
56
68
|
],
|
|
57
69
|
"name": "MarketSwap",
|
|
@@ -586,11 +598,6 @@
|
|
|
586
598
|
"name": "inAmount",
|
|
587
599
|
"type": "uint256"
|
|
588
600
|
},
|
|
589
|
-
{
|
|
590
|
-
"internalType": "uint256",
|
|
591
|
-
"name": "side",
|
|
592
|
-
"type": "uint256"
|
|
593
|
-
},
|
|
594
601
|
{
|
|
595
602
|
"internalType": "uint256",
|
|
596
603
|
"name": "deadline",
|
|
@@ -811,8 +818,8 @@
|
|
|
811
818
|
"type": "receive"
|
|
812
819
|
}
|
|
813
820
|
],
|
|
814
|
-
"bytecode": "0x6080604052600a805465ffffffffffff191662012c01179055600d805463ffffffff191661012c1790556305f5e100600e556301312d00600f55624c4b406010553480156200004d57600080fd5b50604051620040d7380380620040d78339810160408190526200007091620004c5565b6200007b3362000223565b600180556200008a8162000273565b336000908152600460205260408120805460ff1916600117905580739eff3043cdbd7abe80f020b99b5627c344de59138046606103620000f857735f0a0fd7b6e0fa043386158c801f82e20cecca9393507397c4b486061a1a1fb9c8646728cc9a350506d23f92506200016f565b466201388103620001375773cf43b390dc89b36fd49267c646a73a0dfb7f3e4c93507397c4b486061a1a1fb9c8646728cc9a350506d23f92506200016f565b466089036200016f5773c2132d05d31c914a87c6611c10748aeb04b58e8f93507397c4b486061a1a1fb9c8646728cc9a350506d23f92505b620001c384846040518060a00160405280866001600160a01b031681526020016302faf080815260200160006001600160a01b0316815260200160008152602001600115158152506200037d60201b60201c565b6200021883856040518060a00160405280856001600160a01b03168152602001620f4240815260200160006001600160a01b03168152602001620f42408152602001600115158152506200037d60201b60201c565b50505050506200051e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116620002da5760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084015b60405180910390fd5b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000334573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200035a9190620004c5565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b6000546001600160a01b03163314620003d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620002d1565b600e5481606001518260200151620003f29190620004f7565b1115620004425760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d61786044820152606401620002d1565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b600060208284031215620004d857600080fd5b81516001600160a01b0381168114620004f057600080fd5b9392505050565b600082198211156200051957634e487b7160e01b600052601160045260246000fd5b500190565b613ba9806200052e6000396000f3fe6080604052600436106101ef5760003560e01c8063823e1c4e1161010c578063d96661ef1161009a578063f18798fd1161006c578063f18798fd146106a8578063f2fde38b146106c8578063f35cd4e2146106e8578063f620732614610720578063f9c95d461461074257005b8063d96661ef14610615578063ecce1fbd14610635578063ee924d8614610655578063f108f8761461067557005b80639b19251a116100de5780639b19251a1461054d578063aa5d448f1461057d578063aa7993c01461059d578063c04606f0146105d5578063cd27ca82146105f557005b8063823e1c4e146104e2578063868c9abc146104fc57806388697d661461051c5780638da5cb5b1461052f57005b80632d52aa4e1161018957806339088d851161015b57806339088d85146103f85780633fc8cef31461042a57806348c8cd6c146104625780635e5ce28114610478578063715018a6146104cd57005b80632d52aa4e146103745780633041949b146103a5578063340ce57f146103c5578063382b06ff146103e557005b80630d83b1e4116101c25780630d83b1e4146102815780631b153401146102975780632926e5de146102b75780632bd2c18d1461035457005b8062067411146101f8578063016eb8a81461022157806304c8c100146102415780630a99d30f1461026157005b366101f657005b005b34801561020457600080fd5b5061020e60105481565b6040519081526020015b60405180910390f35b34801561022d57600080fd5b5061020e61023c366004613383565b610762565b34801561024d57600080fd5b506101f661025c3660046133c8565b610783565b34801561026d57600080fd5b506101f661027c366004613401565b6107e1565b34801561028d57600080fd5b5061020e600e5481565b3480156102a357600080fd5b506101f66102b236600461341e565b61081e565b3480156102c357600080fd5b5061031b6102d236600461345f565b6005602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401546001600160a01b03938416949293909116919060ff1685565b604080516001600160a01b039687168152602081019590955292909416918301919091526060820152901515608082015260a001610218565b34801561036057600080fd5b5061020e61036f366004613595565b61089d565b34801561038057600080fd5b50600a5461039590600160281b900460ff1681565b6040519015158152602001610218565b3480156103b157600080fd5b506101f66103c036600461345f565b6108f2565b3480156103d157600080fd5b506101f66103e036600461341e565b610991565b6101f66103f33660046135ec565b610a03565b34801561040457600080fd5b50600d546104159063ffffffff1681565b60405163ffffffff9091168152602001610218565b34801561043657600080fd5b5060025461044a906001600160a01b031681565b6040516001600160a01b039091168152602001610218565b34801561046e57600080fd5b5061020e600f5481565b34801561048457600080fd5b5061049861049336600461345f565b610e43565b60408051845163ffffffff1681526020808601519082015293810151908401526060830191909152608082015260a001610218565b3480156104d957600080fd5b506101f6610f5d565b3480156104ee57600080fd5b50600a546103959060ff1681565b34801561050857600080fd5b506101f6610517366004613649565b610f93565b6101f661052a366004613662565b611017565b34801561053b57600080fd5b506000546001600160a01b031661044a565b34801561055957600080fd5b506103956105683660046136c7565b60046020526000908152604090205460ff1681565b34801561058957600080fd5b506101f66105983660046136c7565b6111aa565b3480156105a957600080fd5b5061020e6105b836600461345f565b600c60209081526000928352604080842090915290825290205481565b3480156105e157600080fd5b506101f66105f0366004613649565b6111e0565b34801561060157600080fd5b5061020e61061036600461345f565b611265565b34801561062157600080fd5b5060035461044a906001600160a01b031681565b34801561064157600080fd5b506101f66106503660046136e4565b611291565b34801561066157600080fd5b506101f6610670366004613401565b6113a3565b34801561068157600080fd5b50610415610690366004613649565b60086020526000908152604090205463ffffffff1681565b3480156106b457600080fd5b506101f66106c336600461379a565b6113ed565b3480156106d457600080fd5b506101f66106e33660046136c7565b611482565b3480156106f457600080fd5b5061020e61070336600461345f565b600b60209081526000928352604080842090915290825290205481565b34801561072c57600080fd5b50600a5461041590610100900463ffffffff1681565b34801561074e57600080fd5b506101f661075d36600461379a565b61151a565b600e5460009061077c9061077685856115b5565b906115c1565b9392505050565b6000546001600160a01b031633146107b65760405162461bcd60e51b81526004016107ad906137b7565b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461080b5760405162461bcd60e51b81526004016107ad906137b7565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016107ad906137b7565b6108538383836115cd565b6108985760405162461bcd60e51b8152602060048201526016602482015275151bdad95b93585c9ad95d0e8e9cd95b990819985a5b60521b60448201526064016107ad565b505050565b600080808481036108ca576108b28787611604565b91506108c084836000611721565b91508192506108e8565b6108d487876117be565b90506108e284826001611721565b90508092505b5050949350505050565b3360009081526004602052604090205460ff166109215760405162461bcd60e51b81526004016107ad906137ec565b60006001600160a01b038316156109385782610945565b6002546001600160a01b03165b905060006001600160a01b0383161561095e578261096b565b6002546001600160a01b03165b905061098a8282600a60019054906101000a900463ffffffff166118c0565b5050505050565b3360009081526004602052604090205460ff166109c05760405162461bcd60e51b81526004016107ad906137ec565b6001600160a01b039283166000818152600b602090815260408083209590961680835294815285822093909355908152600c825283812092815291905220429055565b610a0b611b32565b333214610a5a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a496c6c6567616c2063616c6c6572000000000060448201526064016107ad565b333b15610ab55760405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a50726f686962697420636f6e74726163742063604482015263616c6c7360e01b60648201526084016107ad565b8215610b035760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a496e76616c696420736964650000000000000060448201526064016107ad565b6003855110610b545760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a496e76616c69642070617468206c656e67746860448201526064016107ad565b600085600081518110610b6957610b6961381c565b6020026020010151905060008660018851610b849190613848565b81518110610b9457610b9461381c565b6020908102919091018101516001600160a01b0380851660009081526005845260408082209284168252919093529091206004015490915060ff16610c1b5760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4d61726b65743a3a54726164652070616972206973206f6666000060448201526064016107ad565b60006040518060400160405280610c3185611b8b565b8152602001846001600160a01b0316815250905060006040518060400160405280610c5b85611b8b565b81526001600160a01b0385166020909101528251909150600303610c8a57610c858433308b611bc9565b610caa565b87341015610caa5760405162461bcd60e51b81526004016107ad9061385f565b610cd3610cb885858b611cff565b610ccd610cc687878d611dfe565b8b90611ee9565b90611ee9565b9750610ce084848a611ef5565b600087600003610d0557610cf4898b611604565b9050610d0286826000611721565b90505b6000610d1784848c858f8e8e30611fba565b905081811015610d695760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e4d61726b65743a3a42656c6f77206578706563746174696f6e730060448201526064016107ad565b610d7586868c846122ce565b8115610dd657610d8a836020015133846115cd565b610dd65760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a73656e6420746f6b656e206661696c0000000060448201526064016107ad565b604080513381526001600160a01b038881166020830152871681830152606081018c90526080810184905260a0810183905290517f96c33ff19b53193fda53bab8868675504d5ac0c24f257e854da2493e7e3151859181900360c00190a150505050505061098a60018055565b610e6d6040518060600160405280600063ffffffff16815260200160008152602001600081525090565b600a546000908190600160281b900460ff16610ea957505060408051606081018252600080825260208201819052918101829052915080610f56565b60006001600160a01b03861615610ec05785610ecd565b6002546001600160a01b03165b905060006001600160a01b03861615610ee65785610ef3565b6002546001600160a01b03165b90506000610f018383612428565b60008181526009602090815260408083208151606081018352815463ffffffff168152600182015481850152600290910154818301529383526006825280832054600790925290912054919750955093505050505b9250925092565b6000546001600160a01b03163314610f875760405162461bcd60e51b81526004016107ad906137b7565b610f9160006124b9565b565b6000546001600160a01b03163314610fbd5760405162461bcd60e51b81526004016107ad906137b7565b6002600e54610fcc91906138a5565b8111156110125760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b601055565b3360009081526004602052604090205460ff166110465760405162461bcd60e51b81526004016107ad906137ec565b61104e611b32565b82600003611075576110608587611604565b935061106e81856000611721565b9350611090565b61107f84876117be565b945061108d81866001611721565b94505b6000866000815181106110a5576110a561381c565b60200260200101519050600087600189516110c09190613848565b815181106110d0576110d061381c565b60200260200101519050600060405180604001604052806110f085611b8b565b8152602001846001600160a01b031681525090506000604051806040016040528061111a85611b8b565b81526001600160a01b0385166020909101528251909150600303611149576111448433308c611bc9565b611184565b883410156111695760405162461bcd60e51b81526004016107ad9061385f565b88341115611184576111843361117f8b34613848565b612509565b61119482828b8b8e8c8c33611fba565b50505050506111a260018055565b505050505050565b6000546001600160a01b031633146111d45760405162461bcd60e51b81526004016107ad906137b7565b6111dd81612622565b50565b6000546001600160a01b0316331461120a5760405162461bcd60e51b81526004016107ad906137b7565b6002600e5461121991906138a5565b8111156112605760405162461bcd60e51b81526020600482015260156024820152740a8ded6cadc9ac2e4d6cae87474a8dede40d0d2ced605b1b60448201526064016107ad565b600f55565b600a54600090600160281b900460ff166112815750600061128b565b61077c8383612428565b92915050565b6000546001600160a01b031633146112bb5760405162461bcd60e51b81526004016107ad906137b7565b600e54816060015182602001516112d291906138c7565b11156113205760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d617860448201526064016107ad565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b6000546001600160a01b031633146113cd5760405162461bcd60e51b81526004016107ad906137b7565b600a8054911515600160281b0265ff000000000019909216919091179055565b6000546001600160a01b031633146114175760405162461bcd60e51b81526004016107ad906137b7565b60788163ffffffff1610156114665760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600d805463ffffffff191663ffffffff92909216919091179055565b6000546001600160a01b031633146114ac5760405162461bcd60e51b81526004016107ad906137b7565b6001600160a01b0381166115115760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b6111dd816124b9565b6000546001600160a01b031633146115445760405162461bcd60e51b81526004016107ad906137b7565b60788163ffffffff1610156115935760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600a805463ffffffff9092166101000264ffffffff0019909216919091179055565b600061077c82846138df565b600061077c82846138a5565b60006001600160a01b0384166115ef576115e78383612509565b50600161077c565b6115fa848484612723565b5060019392505050565b60035460405163d06ca61f60e01b815260009182916001600160a01b039091169063d06ca61f9061163b9087908790600401613942565b600060405180830381865afa158015611658573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611680919081019061395b565b90508061169860018351611ee990919063ffffffff16565b815181106116a8576116a861381c565b602002602001015191506000821161171a5760405162461bcd60e51b815260206004820152602f60248201527f546f6b656e4d61726b65743a3a6f7574416d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b60648201526084016107ad565b5092915050565b60006002600e5461173291906138a5565b8411156117785760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b6001821561179457600e5461178d908661284d565b90506117a4565b600e546117a19086611ee9565b90505b600e546117b59061077686846115b5565b95945050505050565b6003546040516307c0329d60e21b815260009182916001600160a01b0390911690631f00ca74906117f59087908790600401613942565b600060405180830381865afa158015611812573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261183a919081019061395b565b90508060008151811061184f5761184f61381c565b602002602001015191506000821161171a5760405162461bcd60e51b815260206004820152602e60248201527f546f6b656e4d61726b65743a3a696e416d6f756e742073686f756c642062652060448201526d067726561746572207468616e20360941b60648201526084016107ad565b6000806118cd8585612428565b60008181526009602052604081209192506118e88787612859565b50905060008060006118f984612a29565b8754929550909350915063ffffffff1660000361194257845463ffffffff191663ffffffff919091161784556001840191909155600290920191909155506000915061077c9050565b84546000906119579063ffffffff16836139ec565b90508863ffffffff168163ffffffff16101561197d57600097505050505050505061077c565b60008163ffffffff168760010154866119969190613848565b6119a091906138a5565b905060008263ffffffff168860020154866119bb9190613848565b6119c591906138a5565b90506119de82670de0b6b3a7640000600160701b612c13565b60008a815260066020526040902055611a0481670de0b6b3a7640000600160701b612c13565b60008a815260076020908152604080832093909355600690522054611a7a5760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526530547761702960d01b60648201526084016107ad565b600089815260076020526040902054611ae45760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526531547761702960d01b60648201526084016107ad565b505050600095865260086020526040909520805463ffffffff1990811663ffffffff909716968717909155845416909417835560018381019190915560029092019290925595945050505050565b600260015403611b845760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016107ad565b6002600155565b60006001600160a01b038216611ba357506001919050565b6002546001600160a01b0390811690831603611bc157506002919050565b506003919050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b1790529151600092839290881691611c2d9190613a11565b6000604051808303816000865af19150503d8060008114611c6a576040519150601f19603f3d011682016040523d82523d6000602084013e611c6f565b606091505b5091509150818015611c99575080511580611c99575080806020019051810190611c999190613a4c565b6111a25760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472604482015270185b9cd9995c919c9bdb4819985a5b1959607a1b60648201526084016107ad565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a08101855281548816815260018201548187015260028201549097169387019390935260038301546060870181905260049093015460ff16151560808701528452909152909190808303611d835760009250505061077c565b611d8d8482610762565b925082600003611d9e57505061077c565b60006040518060400160405280611db489611b8b565b81526001600160a01b0389166020909101528051909150600303611de657611de187846040015186612723565b611df4565b611df4836040015185612c82565b5050509392505050565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a0810185528154881681526001820154818701819052600283015490981694810194909452600381015460608501526004015460ff161515608084015284529091529091808303611e7f5760009250505061077c565b611e898482610762565b925082600003611e9a57505061077c565b60006040518060400160405280611eb089611b8b565b81526001600160a01b0389166020909101528051909150600303611edd57611de187846000015186612723565b8251611df49085612c82565b600061077c8284613848565b60006001600160a01b03841615611f0c5783611f19565b6002546001600160a01b03165b905060006001600160a01b03841615611f325783611f3f565b6002546001600160a01b03165b90506000611f4d8383612d5c565b509050600e5460105482611f6191906138df565b611f6b91906138a5565b8411156111a25760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a496e70757420746f6f206c617267650000000060448201526064016107ad565b8751600090600303611fe2576020890151600354611fe291906001600160a01b031689612f00565b606060008a6000015160011480611ffa57508a516002145b905060008a600001516001148061201257508a516002145b905081158015612020575080155b156120eb57866000036120b3576003546040516338ed173960e01b81526001600160a01b03909116906338ed173990612065908d908d908d908b908d90600401613a69565b6000604051808303816000875af1158015612084573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120ac919081019061395b565b9250612296565b600354604051634401edf760e11b81526001600160a01b0390911690638803dbee90612065908c908e908d908b908d90600401613a69565b8180156120f6575080155b156121ba578660000361218257600354604051637ff36ab560e01b81526001600160a01b0390911690637ff36ab5908c9061213b908d908d908b908d90600401613aa5565b60006040518083038185885af1158015612159573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f191682016040526120ac919081019061395b565b60035460405163fb3bdb4160e01b81526001600160a01b039091169063fb3bdb41908c9061213b908d908d908b908d90600401613aa5565b811580156121c55750805b15612242578660000361220a576003546040516318cbafe560e01b81526001600160a01b03909116906318cbafe590612065908d908d908d908b908d90600401613a69565b600354604051632512eca560e11b81526001600160a01b0390911690634a25d94a90612065908c908e908d908b908d90600401613a69565b60405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a4554483c2d3e455448206e6f7420737570706f6044820152631c9d195960e21b60648201526084016107ad565b82600184516122a59190613848565b815181106122b5576122b561381c565b6020026020010151935050505098975050505050505050565b6000821180156122de5750600081115b61232a5760405162461bcd60e51b815260206004820152601860248201527f546f6b656e4d61726b65743a3a5a65726f20616d6f756e74000000000000000060448201526064016107ad565b6000806123378686613028565b9150915080612347575050612422565b60008461235c85670de0b6b3a76400006138df565b61236691906138a5565b90506000600e54600f548561237b91906138df565b61238591906138a5565b905060008185116123975760006123a1565b6123a18286613848565b905060006123af83876138c7565b90508184101580156123c15750808411155b61241b5760405162461bcd60e51b815260206004820152602560248201527f546f6b656e4d61726b65743a3a507269636520646576696174696f6e20746f6f604482015264040d0d2ced60db1b60648201526084016107ad565b5050505050505b50505050565b6000816001600160a01b0316836001600160a01b0316101561248b576040516bffffffffffffffffffffffff19606085811b8216602084015284901b1660348201526048015b60405160208183030381529060405280519060200120905061128b565b6040516bffffffffffffffffffffffff19606084811b8216602084015285901b16603482015260480161246e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b804710156125595760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ad565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146125a6576040519150601f19603f3d011682016040523d82523d6000602084013e6125ab565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ad565b6001600160a01b0381166126835760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084016107ad565b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156126dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127009190613ada565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161277f9190613a11565b6000604051808303816000865af19150503d80600081146127bc576040519150601f19603f3d011682016040523d82523d6000602084013e6127c1565b606091505b50915091508180156127eb5750805115806127eb5750808060200190518101906127eb9190613a4c565b61098a5760405162461bcd60e51b815260206004820152602d60248201527f5472616e7366657248656c7065723a3a736166655472616e736665723a20747260448201526c185b9cd9995c8819985a5b1959609a1b60648201526084016107ad565b600061077c82846138c7565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128d59190613ada565b60405163e6a4390560e01b81526001600160a01b038781166004830152868116602483015291925060009183169063e6a4390590604401602060405180830381865afa158015612929573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294d9190613ada565b90506001600160a01b0381166129a55760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a50616972206e6f74206578697374000000000060448201526064016107ad565b809350836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129e6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a0a9190613ada565b6001600160a01b0316866001600160a01b031614925050509250929050565b6000806000836001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a909190613af7565b9250836001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ad0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612af49190613af7565b91506000806000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612b39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b5d9190613b2c565b9250925092504293508363ffffffff168163ffffffff1614612c09576000612b8582866139ec565b905063ffffffff8116612bb16001600160701b038616600160701b600160e01b03607087901b166138a5565b612bbb91906138df565b612bc590886138c7565b965063ffffffff8116612bf16001600160701b038516600160701b600160e01b03607088901b166138a5565b612bfb91906138df565b612c0590876138c7565b9550505b5050509193909250565b600081600003612c655760405162461bcd60e51b815260206004820152601860248201527f6d756c4469763a206469766973696f6e206279207a65726f000000000000000060448201526064016107ad565b81612c7084866138df565b612c7a91906138a5565b949350505050565b604080516000808252602082019092526001600160a01b038416908390604051612cac9190613a11565b60006040518083038185875af1925050503d8060008114612ce9576040519150601f19603f3d011682016040523d82523d6000602084013e612cee565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603460248201527f5472616e7366657248656c7065723a3a736166655472616e736665724554483a60448201527308115512081d1c985b9cd9995c8819985a5b195960621b60648201526084016107ad565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612db4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dd89190613ada565b60405163e6a4390560e01b81526001600160a01b0387811660048301528681166024830152919091169063e6a4390590604401602060405180830381865afa158015612e28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e4c9190613ada565b9050600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612e8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eb39190613b2c565b506001600160701b031691506001600160701b03169150856001600160a01b0316876001600160a01b03161015612eef57819450809350612ef6565b8094508193505b5050509250929050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691612f5c9190613a11565b6000604051808303816000865af19150503d8060008114612f99576040519150601f19603f3d011682016040523d82523d6000602084013e612f9e565b606091505b5091509150818015612fc8575080511580612fc8575080806020019051810190612fc89190613a4c565b61098a5760405162461bcd60e51b815260206004820152602b60248201527f5472616e7366657248656c7065723a3a73616665417070726f76653a2061707060448201526a1c9bdd994819985a5b195960aa1b60648201526084016107ad565b600a54600090819060ff16156131f55760006001600160a01b0385161561304f578461305c565b6002546001600160a01b03165b905060006001600160a01b038516156130755784613082565b6002546001600160a01b03165b905060006130908383612428565b90506130af8383600a60019054906101000a900463ffffffff166118c0565b5060008181526008602052604090205463ffffffff168015806130de5750600082815260066020526040902054155b806130f55750600082815260076020526040902054155b156131605761310484846132f7565b600a5490965060009550600160281b900460ff16156131575760408051878152600060208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b505050506132f0565b600061316c8585612859565b9150508061318857600083815260076020526040902054613198565b6000838152600660205260409020545b600a54909750600160281b900460ff16156131e75760408051888152600160208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b6001955050505050506132f0565b6001600160a01b038085166000818152600b6020908152604080832094881680845294825280832054938352600c82528083209483529390529190912054600d5491935090429061324c9063ffffffff16836138c7565b101561329a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a5072696365206f75746461746564000000000060448201526064016107ad565b600083116132ea5760405162461bcd60e51b815260206004820152601a60248201527f546f6b656e4d61726b65743a3a4e6f207072696365206665656400000000000060448201526064016107ad565b60009150505b9250929050565b60008060006133068585612d5c565b9150915060008211801561331a5750600081115b6133665760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a4e6f206c69717569646974790000000000000060448201526064016107ad565b8161337982670de0b6b3a76400006138df565b6117b591906138a5565b6000806040838503121561339657600080fd5b50508035926020909101359150565b6001600160a01b03811681146111dd57600080fd5b80151581146111dd57600080fd5b600080604083850312156133db57600080fd5b82356133e6816133a5565b915060208301356133f6816133ba565b809150509250929050565b60006020828403121561341357600080fd5b813561077c816133ba565b60008060006060848603121561343357600080fd5b833561343e816133a5565b9250602084013561344e816133a5565b929592945050506040919091013590565b6000806040838503121561347257600080fd5b823561347d816133a5565b915060208301356133f6816133a5565b634e487b7160e01b600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156134c6576134c661348d565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156134f5576134f561348d565b604052919050565b600067ffffffffffffffff8211156135175761351761348d565b5060051b60200190565b600082601f83011261353257600080fd5b81356020613547613542836134fd565b6134cc565b82815260059290921b8401810191818101908684111561356657600080fd5b8286015b8481101561358a57803561357d816133a5565b835291830191830161356a565b509695505050505050565b600080600080608085870312156135ab57600080fd5b84359350602085013567ffffffffffffffff8111156135c957600080fd5b6135d587828801613521565b949794965050505060408301359260600135919050565b600080600080600060a0868803121561360457600080fd5b853567ffffffffffffffff81111561361b57600080fd5b61362788828901613521565b9860208801359850604088013597606081013597506080013595509350505050565b60006020828403121561365b57600080fd5b5035919050565b60008060008060008060c0878903121561367b57600080fd5b863567ffffffffffffffff81111561369257600080fd5b61369e89828a01613521565b9960208901359950604089013598606081013598506080810135975060a0013595509350505050565b6000602082840312156136d957600080fd5b813561077c816133a5565b600080600083850360e08112156136fa57600080fd5b8435613705816133a5565b93506020850135613715816133a5565b925060a0603f198201121561372957600080fd5b506137326134a3565b6040850135613740816133a5565b815260608501356020820152608085013561375a816133a5565b604082015260a0850135606082015260c0850135613777816133ba565b608082015292959194509192509050565b63ffffffff811681146111dd57600080fd5b6000602082840312156137ac57600080fd5b813561077c81613788565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526016908201527514ddd85c149bdd5d195c8e881b1a5b5a5d0818d85b1b60521b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008282101561385a5761385a613832565b500390565b60208082526026908201527f546f6b656e4d61726b65743a3a696e70757420657468206973206e6f7420616360408201526563757261746560d01b606082015260800190565b6000826138c257634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156138da576138da613832565b500190565b60008160001904831182151516156138f9576138f9613832565b500290565b600081518084526020808501945080840160005b838110156139375781516001600160a01b031687529582019590820190600101613912565b509495945050505050565b828152604060208201526000612c7a60408301846138fe565b6000602080838503121561396e57600080fd5b825167ffffffffffffffff81111561398557600080fd5b8301601f8101851361399657600080fd5b80516139a4613542826134fd565b81815260059190911b820183019083810190878311156139c357600080fd5b928401925b828410156139e1578351825292840192908401906139c8565b979650505050505050565b600063ffffffff83811690831681811015613a0957613a09613832565b039392505050565b6000825160005b81811015613a325760208186018101518583015201613a18565b81811115613a41576000828501525b509190910192915050565b600060208284031215613a5e57600080fd5b815161077c816133ba565b85815284602082015260a060408201526000613a8860a08301866138fe565b6001600160a01b0394909416606083015250608001529392505050565b848152608060208201526000613abe60808301866138fe565b6001600160a01b03949094166040830152506060015292915050565b600060208284031215613aec57600080fd5b815161077c816133a5565b600060208284031215613b0957600080fd5b5051919050565b80516001600160701b0381168114613b2757600080fd5b919050565b600080600060608486031215613b4157600080fd5b613b4a84613b10565b9250613b5860208501613b10565b91506040840151613b6881613788565b80915050925092509256fea26469706673582212201c5744e437e098e4d7e53fea8ae290cba451a5f9c0a15819b0f7423ff77f8a1764736f6c634300080e0033",
|
|
815
|
-
"deployedBytecode": "0x6080604052600436106101ef5760003560e01c8063823e1c4e1161010c578063d96661ef1161009a578063f18798fd1161006c578063f18798fd146106a8578063f2fde38b146106c8578063f35cd4e2146106e8578063f620732614610720578063f9c95d461461074257005b8063d96661ef14610615578063ecce1fbd14610635578063ee924d8614610655578063f108f8761461067557005b80639b19251a116100de5780639b19251a1461054d578063aa5d448f1461057d578063aa7993c01461059d578063c04606f0146105d5578063cd27ca82146105f557005b8063823e1c4e146104e2578063868c9abc146104fc57806388697d661461051c5780638da5cb5b1461052f57005b80632d52aa4e1161018957806339088d851161015b57806339088d85146103f85780633fc8cef31461042a57806348c8cd6c146104625780635e5ce28114610478578063715018a6146104cd57005b80632d52aa4e146103745780633041949b146103a5578063340ce57f146103c5578063382b06ff146103e557005b80630d83b1e4116101c25780630d83b1e4146102815780631b153401146102975780632926e5de146102b75780632bd2c18d1461035457005b8062067411146101f8578063016eb8a81461022157806304c8c100146102415780630a99d30f1461026157005b366101f657005b005b34801561020457600080fd5b5061020e60105481565b6040519081526020015b60405180910390f35b34801561022d57600080fd5b5061020e61023c366004613383565b610762565b34801561024d57600080fd5b506101f661025c3660046133c8565b610783565b34801561026d57600080fd5b506101f661027c366004613401565b6107e1565b34801561028d57600080fd5b5061020e600e5481565b3480156102a357600080fd5b506101f66102b236600461341e565b61081e565b3480156102c357600080fd5b5061031b6102d236600461345f565b6005602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401546001600160a01b03938416949293909116919060ff1685565b604080516001600160a01b039687168152602081019590955292909416918301919091526060820152901515608082015260a001610218565b34801561036057600080fd5b5061020e61036f366004613595565b61089d565b34801561038057600080fd5b50600a5461039590600160281b900460ff1681565b6040519015158152602001610218565b3480156103b157600080fd5b506101f66103c036600461345f565b6108f2565b3480156103d157600080fd5b506101f66103e036600461341e565b610991565b6101f66103f33660046135ec565b610a03565b34801561040457600080fd5b50600d546104159063ffffffff1681565b60405163ffffffff9091168152602001610218565b34801561043657600080fd5b5060025461044a906001600160a01b031681565b6040516001600160a01b039091168152602001610218565b34801561046e57600080fd5b5061020e600f5481565b34801561048457600080fd5b5061049861049336600461345f565b610e43565b60408051845163ffffffff1681526020808601519082015293810151908401526060830191909152608082015260a001610218565b3480156104d957600080fd5b506101f6610f5d565b3480156104ee57600080fd5b50600a546103959060ff1681565b34801561050857600080fd5b506101f6610517366004613649565b610f93565b6101f661052a366004613662565b611017565b34801561053b57600080fd5b506000546001600160a01b031661044a565b34801561055957600080fd5b506103956105683660046136c7565b60046020526000908152604090205460ff1681565b34801561058957600080fd5b506101f66105983660046136c7565b6111aa565b3480156105a957600080fd5b5061020e6105b836600461345f565b600c60209081526000928352604080842090915290825290205481565b3480156105e157600080fd5b506101f66105f0366004613649565b6111e0565b34801561060157600080fd5b5061020e61061036600461345f565b611265565b34801561062157600080fd5b5060035461044a906001600160a01b031681565b34801561064157600080fd5b506101f66106503660046136e4565b611291565b34801561066157600080fd5b506101f6610670366004613401565b6113a3565b34801561068157600080fd5b50610415610690366004613649565b60086020526000908152604090205463ffffffff1681565b3480156106b457600080fd5b506101f66106c336600461379a565b6113ed565b3480156106d457600080fd5b506101f66106e33660046136c7565b611482565b3480156106f457600080fd5b5061020e61070336600461345f565b600b60209081526000928352604080842090915290825290205481565b34801561072c57600080fd5b50600a5461041590610100900463ffffffff1681565b34801561074e57600080fd5b506101f661075d36600461379a565b61151a565b600e5460009061077c9061077685856115b5565b906115c1565b9392505050565b6000546001600160a01b031633146107b65760405162461bcd60e51b81526004016107ad906137b7565b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461080b5760405162461bcd60e51b81526004016107ad906137b7565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016107ad906137b7565b6108538383836115cd565b6108985760405162461bcd60e51b8152602060048201526016602482015275151bdad95b93585c9ad95d0e8e9cd95b990819985a5b60521b60448201526064016107ad565b505050565b600080808481036108ca576108b28787611604565b91506108c084836000611721565b91508192506108e8565b6108d487876117be565b90506108e284826001611721565b90508092505b5050949350505050565b3360009081526004602052604090205460ff166109215760405162461bcd60e51b81526004016107ad906137ec565b60006001600160a01b038316156109385782610945565b6002546001600160a01b03165b905060006001600160a01b0383161561095e578261096b565b6002546001600160a01b03165b905061098a8282600a60019054906101000a900463ffffffff166118c0565b5050505050565b3360009081526004602052604090205460ff166109c05760405162461bcd60e51b81526004016107ad906137ec565b6001600160a01b039283166000818152600b602090815260408083209590961680835294815285822093909355908152600c825283812092815291905220429055565b610a0b611b32565b333214610a5a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a496c6c6567616c2063616c6c6572000000000060448201526064016107ad565b333b15610ab55760405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a50726f686962697420636f6e74726163742063604482015263616c6c7360e01b60648201526084016107ad565b8215610b035760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a496e76616c696420736964650000000000000060448201526064016107ad565b6003855110610b545760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a496e76616c69642070617468206c656e67746860448201526064016107ad565b600085600081518110610b6957610b6961381c565b6020026020010151905060008660018851610b849190613848565b81518110610b9457610b9461381c565b6020908102919091018101516001600160a01b0380851660009081526005845260408082209284168252919093529091206004015490915060ff16610c1b5760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4d61726b65743a3a54726164652070616972206973206f6666000060448201526064016107ad565b60006040518060400160405280610c3185611b8b565b8152602001846001600160a01b0316815250905060006040518060400160405280610c5b85611b8b565b81526001600160a01b0385166020909101528251909150600303610c8a57610c858433308b611bc9565b610caa565b87341015610caa5760405162461bcd60e51b81526004016107ad9061385f565b610cd3610cb885858b611cff565b610ccd610cc687878d611dfe565b8b90611ee9565b90611ee9565b9750610ce084848a611ef5565b600087600003610d0557610cf4898b611604565b9050610d0286826000611721565b90505b6000610d1784848c858f8e8e30611fba565b905081811015610d695760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e4d61726b65743a3a42656c6f77206578706563746174696f6e730060448201526064016107ad565b610d7586868c846122ce565b8115610dd657610d8a836020015133846115cd565b610dd65760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a73656e6420746f6b656e206661696c0000000060448201526064016107ad565b604080513381526001600160a01b038881166020830152871681830152606081018c90526080810184905260a0810183905290517f96c33ff19b53193fda53bab8868675504d5ac0c24f257e854da2493e7e3151859181900360c00190a150505050505061098a60018055565b610e6d6040518060600160405280600063ffffffff16815260200160008152602001600081525090565b600a546000908190600160281b900460ff16610ea957505060408051606081018252600080825260208201819052918101829052915080610f56565b60006001600160a01b03861615610ec05785610ecd565b6002546001600160a01b03165b905060006001600160a01b03861615610ee65785610ef3565b6002546001600160a01b03165b90506000610f018383612428565b60008181526009602090815260408083208151606081018352815463ffffffff168152600182015481850152600290910154818301529383526006825280832054600790925290912054919750955093505050505b9250925092565b6000546001600160a01b03163314610f875760405162461bcd60e51b81526004016107ad906137b7565b610f9160006124b9565b565b6000546001600160a01b03163314610fbd5760405162461bcd60e51b81526004016107ad906137b7565b6002600e54610fcc91906138a5565b8111156110125760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b601055565b3360009081526004602052604090205460ff166110465760405162461bcd60e51b81526004016107ad906137ec565b61104e611b32565b82600003611075576110608587611604565b935061106e81856000611721565b9350611090565b61107f84876117be565b945061108d81866001611721565b94505b6000866000815181106110a5576110a561381c565b60200260200101519050600087600189516110c09190613848565b815181106110d0576110d061381c565b60200260200101519050600060405180604001604052806110f085611b8b565b8152602001846001600160a01b031681525090506000604051806040016040528061111a85611b8b565b81526001600160a01b0385166020909101528251909150600303611149576111448433308c611bc9565b611184565b883410156111695760405162461bcd60e51b81526004016107ad9061385f565b88341115611184576111843361117f8b34613848565b612509565b61119482828b8b8e8c8c33611fba565b50505050506111a260018055565b505050505050565b6000546001600160a01b031633146111d45760405162461bcd60e51b81526004016107ad906137b7565b6111dd81612622565b50565b6000546001600160a01b0316331461120a5760405162461bcd60e51b81526004016107ad906137b7565b6002600e5461121991906138a5565b8111156112605760405162461bcd60e51b81526020600482015260156024820152740a8ded6cadc9ac2e4d6cae87474a8dede40d0d2ced605b1b60448201526064016107ad565b600f55565b600a54600090600160281b900460ff166112815750600061128b565b61077c8383612428565b92915050565b6000546001600160a01b031633146112bb5760405162461bcd60e51b81526004016107ad906137b7565b600e54816060015182602001516112d291906138c7565b11156113205760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d617860448201526064016107ad565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b6000546001600160a01b031633146113cd5760405162461bcd60e51b81526004016107ad906137b7565b600a8054911515600160281b0265ff000000000019909216919091179055565b6000546001600160a01b031633146114175760405162461bcd60e51b81526004016107ad906137b7565b60788163ffffffff1610156114665760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600d805463ffffffff191663ffffffff92909216919091179055565b6000546001600160a01b031633146114ac5760405162461bcd60e51b81526004016107ad906137b7565b6001600160a01b0381166115115760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b6111dd816124b9565b6000546001600160a01b031633146115445760405162461bcd60e51b81526004016107ad906137b7565b60788163ffffffff1610156115935760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600a805463ffffffff9092166101000264ffffffff0019909216919091179055565b600061077c82846138df565b600061077c82846138a5565b60006001600160a01b0384166115ef576115e78383612509565b50600161077c565b6115fa848484612723565b5060019392505050565b60035460405163d06ca61f60e01b815260009182916001600160a01b039091169063d06ca61f9061163b9087908790600401613942565b600060405180830381865afa158015611658573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611680919081019061395b565b90508061169860018351611ee990919063ffffffff16565b815181106116a8576116a861381c565b602002602001015191506000821161171a5760405162461bcd60e51b815260206004820152602f60248201527f546f6b656e4d61726b65743a3a6f7574416d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b60648201526084016107ad565b5092915050565b60006002600e5461173291906138a5565b8411156117785760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b6001821561179457600e5461178d908661284d565b90506117a4565b600e546117a19086611ee9565b90505b600e546117b59061077686846115b5565b95945050505050565b6003546040516307c0329d60e21b815260009182916001600160a01b0390911690631f00ca74906117f59087908790600401613942565b600060405180830381865afa158015611812573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261183a919081019061395b565b90508060008151811061184f5761184f61381c565b602002602001015191506000821161171a5760405162461bcd60e51b815260206004820152602e60248201527f546f6b656e4d61726b65743a3a696e416d6f756e742073686f756c642062652060448201526d067726561746572207468616e20360941b60648201526084016107ad565b6000806118cd8585612428565b60008181526009602052604081209192506118e88787612859565b50905060008060006118f984612a29565b8754929550909350915063ffffffff1660000361194257845463ffffffff191663ffffffff919091161784556001840191909155600290920191909155506000915061077c9050565b84546000906119579063ffffffff16836139ec565b90508863ffffffff168163ffffffff16101561197d57600097505050505050505061077c565b60008163ffffffff168760010154866119969190613848565b6119a091906138a5565b905060008263ffffffff168860020154866119bb9190613848565b6119c591906138a5565b90506119de82670de0b6b3a7640000600160701b612c13565b60008a815260066020526040902055611a0481670de0b6b3a7640000600160701b612c13565b60008a815260076020908152604080832093909355600690522054611a7a5760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526530547761702960d01b60648201526084016107ad565b600089815260076020526040902054611ae45760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526531547761702960d01b60648201526084016107ad565b505050600095865260086020526040909520805463ffffffff1990811663ffffffff909716968717909155845416909417835560018381019190915560029092019290925595945050505050565b600260015403611b845760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016107ad565b6002600155565b60006001600160a01b038216611ba357506001919050565b6002546001600160a01b0390811690831603611bc157506002919050565b506003919050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b1790529151600092839290881691611c2d9190613a11565b6000604051808303816000865af19150503d8060008114611c6a576040519150601f19603f3d011682016040523d82523d6000602084013e611c6f565b606091505b5091509150818015611c99575080511580611c99575080806020019051810190611c999190613a4c565b6111a25760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472604482015270185b9cd9995c919c9bdb4819985a5b1959607a1b60648201526084016107ad565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a08101855281548816815260018201548187015260028201549097169387019390935260038301546060870181905260049093015460ff16151560808701528452909152909190808303611d835760009250505061077c565b611d8d8482610762565b925082600003611d9e57505061077c565b60006040518060400160405280611db489611b8b565b81526001600160a01b0389166020909101528051909150600303611de657611de187846040015186612723565b611df4565b611df4836040015185612c82565b5050509392505050565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a0810185528154881681526001820154818701819052600283015490981694810194909452600381015460608501526004015460ff161515608084015284529091529091808303611e7f5760009250505061077c565b611e898482610762565b925082600003611e9a57505061077c565b60006040518060400160405280611eb089611b8b565b81526001600160a01b0389166020909101528051909150600303611edd57611de187846000015186612723565b8251611df49085612c82565b600061077c8284613848565b60006001600160a01b03841615611f0c5783611f19565b6002546001600160a01b03165b905060006001600160a01b03841615611f325783611f3f565b6002546001600160a01b03165b90506000611f4d8383612d5c565b509050600e5460105482611f6191906138df565b611f6b91906138a5565b8411156111a25760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a496e70757420746f6f206c617267650000000060448201526064016107ad565b8751600090600303611fe2576020890151600354611fe291906001600160a01b031689612f00565b606060008a6000015160011480611ffa57508a516002145b905060008a600001516001148061201257508a516002145b905081158015612020575080155b156120eb57866000036120b3576003546040516338ed173960e01b81526001600160a01b03909116906338ed173990612065908d908d908d908b908d90600401613a69565b6000604051808303816000875af1158015612084573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120ac919081019061395b565b9250612296565b600354604051634401edf760e11b81526001600160a01b0390911690638803dbee90612065908c908e908d908b908d90600401613a69565b8180156120f6575080155b156121ba578660000361218257600354604051637ff36ab560e01b81526001600160a01b0390911690637ff36ab5908c9061213b908d908d908b908d90600401613aa5565b60006040518083038185885af1158015612159573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f191682016040526120ac919081019061395b565b60035460405163fb3bdb4160e01b81526001600160a01b039091169063fb3bdb41908c9061213b908d908d908b908d90600401613aa5565b811580156121c55750805b15612242578660000361220a576003546040516318cbafe560e01b81526001600160a01b03909116906318cbafe590612065908d908d908d908b908d90600401613a69565b600354604051632512eca560e11b81526001600160a01b0390911690634a25d94a90612065908c908e908d908b908d90600401613a69565b60405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a4554483c2d3e455448206e6f7420737570706f6044820152631c9d195960e21b60648201526084016107ad565b82600184516122a59190613848565b815181106122b5576122b561381c565b6020026020010151935050505098975050505050505050565b6000821180156122de5750600081115b61232a5760405162461bcd60e51b815260206004820152601860248201527f546f6b656e4d61726b65743a3a5a65726f20616d6f756e74000000000000000060448201526064016107ad565b6000806123378686613028565b9150915080612347575050612422565b60008461235c85670de0b6b3a76400006138df565b61236691906138a5565b90506000600e54600f548561237b91906138df565b61238591906138a5565b905060008185116123975760006123a1565b6123a18286613848565b905060006123af83876138c7565b90508184101580156123c15750808411155b61241b5760405162461bcd60e51b815260206004820152602560248201527f546f6b656e4d61726b65743a3a507269636520646576696174696f6e20746f6f604482015264040d0d2ced60db1b60648201526084016107ad565b5050505050505b50505050565b6000816001600160a01b0316836001600160a01b0316101561248b576040516bffffffffffffffffffffffff19606085811b8216602084015284901b1660348201526048015b60405160208183030381529060405280519060200120905061128b565b6040516bffffffffffffffffffffffff19606084811b8216602084015285901b16603482015260480161246e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b804710156125595760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ad565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146125a6576040519150601f19603f3d011682016040523d82523d6000602084013e6125ab565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ad565b6001600160a01b0381166126835760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084016107ad565b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156126dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127009190613ada565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161277f9190613a11565b6000604051808303816000865af19150503d80600081146127bc576040519150601f19603f3d011682016040523d82523d6000602084013e6127c1565b606091505b50915091508180156127eb5750805115806127eb5750808060200190518101906127eb9190613a4c565b61098a5760405162461bcd60e51b815260206004820152602d60248201527f5472616e7366657248656c7065723a3a736166655472616e736665723a20747260448201526c185b9cd9995c8819985a5b1959609a1b60648201526084016107ad565b600061077c82846138c7565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128d59190613ada565b60405163e6a4390560e01b81526001600160a01b038781166004830152868116602483015291925060009183169063e6a4390590604401602060405180830381865afa158015612929573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061294d9190613ada565b90506001600160a01b0381166129a55760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a50616972206e6f74206578697374000000000060448201526064016107ad565b809350836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129e6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a0a9190613ada565b6001600160a01b0316866001600160a01b031614925050509250929050565b6000806000836001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a909190613af7565b9250836001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ad0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612af49190613af7565b91506000806000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612b39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b5d9190613b2c565b9250925092504293508363ffffffff168163ffffffff1614612c09576000612b8582866139ec565b905063ffffffff8116612bb16001600160701b038616600160701b600160e01b03607087901b166138a5565b612bbb91906138df565b612bc590886138c7565b965063ffffffff8116612bf16001600160701b038516600160701b600160e01b03607088901b166138a5565b612bfb91906138df565b612c0590876138c7565b9550505b5050509193909250565b600081600003612c655760405162461bcd60e51b815260206004820152601860248201527f6d756c4469763a206469766973696f6e206279207a65726f000000000000000060448201526064016107ad565b81612c7084866138df565b612c7a91906138a5565b949350505050565b604080516000808252602082019092526001600160a01b038416908390604051612cac9190613a11565b60006040518083038185875af1925050503d8060008114612ce9576040519150601f19603f3d011682016040523d82523d6000602084013e612cee565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603460248201527f5472616e7366657248656c7065723a3a736166655472616e736665724554483a60448201527308115512081d1c985b9cd9995c8819985a5b195960621b60648201526084016107ad565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612db4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612dd89190613ada565b60405163e6a4390560e01b81526001600160a01b0387811660048301528681166024830152919091169063e6a4390590604401602060405180830381865afa158015612e28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e4c9190613ada565b9050600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612e8f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612eb39190613b2c565b506001600160701b031691506001600160701b03169150856001600160a01b0316876001600160a01b03161015612eef57819450809350612ef6565b8094508193505b5050509250929050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691612f5c9190613a11565b6000604051808303816000865af19150503d8060008114612f99576040519150601f19603f3d011682016040523d82523d6000602084013e612f9e565b606091505b5091509150818015612fc8575080511580612fc8575080806020019051810190612fc89190613a4c565b61098a5760405162461bcd60e51b815260206004820152602b60248201527f5472616e7366657248656c7065723a3a73616665417070726f76653a2061707060448201526a1c9bdd994819985a5b195960aa1b60648201526084016107ad565b600a54600090819060ff16156131f55760006001600160a01b0385161561304f578461305c565b6002546001600160a01b03165b905060006001600160a01b038516156130755784613082565b6002546001600160a01b03165b905060006130908383612428565b90506130af8383600a60019054906101000a900463ffffffff166118c0565b5060008181526008602052604090205463ffffffff168015806130de5750600082815260066020526040902054155b806130f55750600082815260076020526040902054155b156131605761310484846132f7565b600a5490965060009550600160281b900460ff16156131575760408051878152600060208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b505050506132f0565b600061316c8585612859565b9150508061318857600083815260076020526040902054613198565b6000838152600660205260409020545b600a54909750600160281b900460ff16156131e75760408051888152600160208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b6001955050505050506132f0565b6001600160a01b038085166000818152600b6020908152604080832094881680845294825280832054938352600c82528083209483529390529190912054600d5491935090429061324c9063ffffffff16836138c7565b101561329a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a5072696365206f75746461746564000000000060448201526064016107ad565b600083116132ea5760405162461bcd60e51b815260206004820152601a60248201527f546f6b656e4d61726b65743a3a4e6f207072696365206665656400000000000060448201526064016107ad565b60009150505b9250929050565b60008060006133068585612d5c565b9150915060008211801561331a5750600081115b6133665760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a4e6f206c69717569646974790000000000000060448201526064016107ad565b8161337982670de0b6b3a76400006138df565b6117b591906138a5565b6000806040838503121561339657600080fd5b50508035926020909101359150565b6001600160a01b03811681146111dd57600080fd5b80151581146111dd57600080fd5b600080604083850312156133db57600080fd5b82356133e6816133a5565b915060208301356133f6816133ba565b809150509250929050565b60006020828403121561341357600080fd5b813561077c816133ba565b60008060006060848603121561343357600080fd5b833561343e816133a5565b9250602084013561344e816133a5565b929592945050506040919091013590565b6000806040838503121561347257600080fd5b823561347d816133a5565b915060208301356133f6816133a5565b634e487b7160e01b600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156134c6576134c661348d565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156134f5576134f561348d565b604052919050565b600067ffffffffffffffff8211156135175761351761348d565b5060051b60200190565b600082601f83011261353257600080fd5b81356020613547613542836134fd565b6134cc565b82815260059290921b8401810191818101908684111561356657600080fd5b8286015b8481101561358a57803561357d816133a5565b835291830191830161356a565b509695505050505050565b600080600080608085870312156135ab57600080fd5b84359350602085013567ffffffffffffffff8111156135c957600080fd5b6135d587828801613521565b949794965050505060408301359260600135919050565b600080600080600060a0868803121561360457600080fd5b853567ffffffffffffffff81111561361b57600080fd5b61362788828901613521565b9860208801359850604088013597606081013597506080013595509350505050565b60006020828403121561365b57600080fd5b5035919050565b60008060008060008060c0878903121561367b57600080fd5b863567ffffffffffffffff81111561369257600080fd5b61369e89828a01613521565b9960208901359950604089013598606081013598506080810135975060a0013595509350505050565b6000602082840312156136d957600080fd5b813561077c816133a5565b600080600083850360e08112156136fa57600080fd5b8435613705816133a5565b93506020850135613715816133a5565b925060a0603f198201121561372957600080fd5b506137326134a3565b6040850135613740816133a5565b815260608501356020820152608085013561375a816133a5565b604082015260a0850135606082015260c0850135613777816133ba565b608082015292959194509192509050565b63ffffffff811681146111dd57600080fd5b6000602082840312156137ac57600080fd5b813561077c81613788565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526016908201527514ddd85c149bdd5d195c8e881b1a5b5a5d0818d85b1b60521b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008282101561385a5761385a613832565b500390565b60208082526026908201527f546f6b656e4d61726b65743a3a696e70757420657468206973206e6f7420616360408201526563757261746560d01b606082015260800190565b6000826138c257634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156138da576138da613832565b500190565b60008160001904831182151516156138f9576138f9613832565b500290565b600081518084526020808501945080840160005b838110156139375781516001600160a01b031687529582019590820190600101613912565b509495945050505050565b828152604060208201526000612c7a60408301846138fe565b6000602080838503121561396e57600080fd5b825167ffffffffffffffff81111561398557600080fd5b8301601f8101851361399657600080fd5b80516139a4613542826134fd565b81815260059190911b820183019083810190878311156139c357600080fd5b928401925b828410156139e1578351825292840192908401906139c8565b979650505050505050565b600063ffffffff83811690831681811015613a0957613a09613832565b039392505050565b6000825160005b81811015613a325760208186018101518583015201613a18565b81811115613a41576000828501525b509190910192915050565b600060208284031215613a5e57600080fd5b815161077c816133ba565b85815284602082015260a060408201526000613a8860a08301866138fe565b6001600160a01b0394909416606083015250608001529392505050565b848152608060208201526000613abe60808301866138fe565b6001600160a01b03949094166040830152506060015292915050565b600060208284031215613aec57600080fd5b815161077c816133a5565b600060208284031215613b0957600080fd5b5051919050565b80516001600160701b0381168114613b2757600080fd5b919050565b600080600060608486031215613b4157600080fd5b613b4a84613b10565b9250613b5860208501613b10565b91506040840151613b6881613788565b80915050925092509256fea26469706673582212201c5744e437e098e4d7e53fea8ae290cba451a5f9c0a15819b0f7423ff77f8a1764736f6c634300080e0033",
|
|
821
|
+
"bytecode": "0x6080604052600a805465ffffffffffff191662012c01179055600d805463ffffffff191661012c1790556305f5e100600e556301312d00600f55624c4b406010553480156200004d57600080fd5b50604051620040ad380380620040ad8339810160408190526200007091620004c5565b6200007b3362000223565b600180556200008a8162000273565b336000908152600460205260408120805460ff1916600117905580739eff3043cdbd7abe80f020b99b5627c344de59138046606103620000f857735f0a0fd7b6e0fa043386158c801f82e20cecca9393507397c4b486061a1a1fb9c8646728cc9a350506d23f92506200016f565b466201388103620001375773cf43b390dc89b36fd49267c646a73a0dfb7f3e4c93507397c4b486061a1a1fb9c8646728cc9a350506d23f92506200016f565b466089036200016f5773c2132d05d31c914a87c6611c10748aeb04b58e8f93507397c4b486061a1a1fb9c8646728cc9a350506d23f92505b620001c384846040518060a00160405280866001600160a01b031681526020016302faf080815260200160006001600160a01b0316815260200160008152602001600115158152506200037d60201b60201c565b6200021883856040518060a00160405280856001600160a01b03168152602001620f4240815260200160006001600160a01b03168152602001620f42408152602001600115158152506200037d60201b60201c565b50505050506200051e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116620002da5760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084015b60405180910390fd5b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000334573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200035a9190620004c5565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b6000546001600160a01b03163314620003d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620002d1565b600e5481606001518260200151620003f29190620004f7565b1115620004425760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d61786044820152606401620002d1565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b600060208284031215620004d857600080fd5b81516001600160a01b0381168114620004f057600080fd5b9392505050565b600082198211156200051957634e487b7160e01b600052601160045260246000fd5b500190565b613b7f806200052e6000396000f3fe6080604052600436106101ef5760003560e01c8063823e1c4e1161010c578063d96661ef1161009a578063f18798fd1161006c578063f18798fd146106a8578063f2fde38b146106c8578063f35cd4e2146106e8578063f620732614610720578063f9c95d461461074257005b8063d96661ef14610615578063ecce1fbd14610635578063ee924d8614610655578063f108f8761461067557005b80639b19251a116100de5780639b19251a1461054d578063aa5d448f1461057d578063aa7993c01461059d578063c04606f0146105d5578063cd27ca82146105f557005b8063823e1c4e146104e2578063868c9abc146104fc57806388697d661461051c5780638da5cb5b1461052f57005b80632d52aa4e116101895780633fc8cef31161015b5780633fc8cef31461041757806348c8cd6c1461044f57806359832f65146104655780635e5ce28114610478578063715018a6146104cd57005b80632d52aa4e146103745780633041949b146103a5578063340ce57f146103c557806339088d85146103e557005b80630d83b1e4116101c25780630d83b1e4146102815780631b153401146102975780632926e5de146102b75780632bd2c18d1461035457005b8062067411146101f8578063016eb8a81461022157806304c8c100146102415780630a99d30f1461026157005b366101f657005b005b34801561020457600080fd5b5061020e60105481565b6040519081526020015b60405180910390f35b34801561022d57600080fd5b5061020e61023c366004613362565b610762565b34801561024d57600080fd5b506101f661025c3660046133a7565b610783565b34801561026d57600080fd5b506101f661027c3660046133e0565b6107e1565b34801561028d57600080fd5b5061020e600e5481565b3480156102a357600080fd5b506101f66102b23660046133fd565b61081e565b3480156102c357600080fd5b5061031b6102d236600461343e565b6005602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401546001600160a01b03938416949293909116919060ff1685565b604080516001600160a01b039687168152602081019590955292909416918301919091526060820152901515608082015260a001610218565b34801561036057600080fd5b5061020e61036f366004613574565b61089d565b34801561038057600080fd5b50600a5461039590600160281b900460ff1681565b6040519015158152602001610218565b3480156103b157600080fd5b506101f66103c036600461343e565b6108f2565b3480156103d157600080fd5b506101f66103e03660046133fd565b610991565b3480156103f157600080fd5b50600d546104029063ffffffff1681565b60405163ffffffff9091168152602001610218565b34801561042357600080fd5b50600254610437906001600160a01b031681565b6040516001600160a01b039091168152602001610218565b34801561045b57600080fd5b5061020e600f5481565b6101f66104733660046135cb565b610a03565b34801561048457600080fd5b5061049861049336600461343e565b610e23565b60408051845163ffffffff1681526020808601519082015293810151908401526060830191909152608082015260a001610218565b3480156104d957600080fd5b506101f6610f3d565b3480156104ee57600080fd5b50600a546103959060ff1681565b34801561050857600080fd5b506101f661051736600461361f565b610f73565b6101f661052a366004613638565b610ff7565b34801561053b57600080fd5b506000546001600160a01b0316610437565b34801561055957600080fd5b5061039561056836600461369d565b60046020526000908152604090205460ff1681565b34801561058957600080fd5b506101f661059836600461369d565b61118a565b3480156105a957600080fd5b5061020e6105b836600461343e565b600c60209081526000928352604080842090915290825290205481565b3480156105e157600080fd5b506101f66105f036600461361f565b6111c0565b34801561060157600080fd5b5061020e61061036600461343e565b611245565b34801561062157600080fd5b50600354610437906001600160a01b031681565b34801561064157600080fd5b506101f66106503660046136ba565b611271565b34801561066157600080fd5b506101f66106703660046133e0565b611383565b34801561068157600080fd5b5061040261069036600461361f565b60086020526000908152604090205463ffffffff1681565b3480156106b457600080fd5b506101f66106c3366004613770565b6113cd565b3480156106d457600080fd5b506101f66106e336600461369d565b611462565b3480156106f457600080fd5b5061020e61070336600461343e565b600b60209081526000928352604080842090915290825290205481565b34801561072c57600080fd5b50600a5461040290610100900463ffffffff1681565b34801561074e57600080fd5b506101f661075d366004613770565b6114fa565b600e5460009061077c906107768585611595565b906115a1565b9392505050565b6000546001600160a01b031633146107b65760405162461bcd60e51b81526004016107ad9061378d565b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461080b5760405162461bcd60e51b81526004016107ad9061378d565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016107ad9061378d565b6108538383836115ad565b6108985760405162461bcd60e51b8152602060048201526016602482015275151bdad95b93585c9ad95d0e8e9cd95b990819985a5b60521b60448201526064016107ad565b505050565b600080808481036108ca576108b287876115e4565b91506108c084836000611701565b91508192506108e8565b6108d4878761179e565b90506108e284826001611701565b90508092505b5050949350505050565b3360009081526004602052604090205460ff166109215760405162461bcd60e51b81526004016107ad906137c2565b60006001600160a01b038316156109385782610945565b6002546001600160a01b03165b905060006001600160a01b0383161561095e578261096b565b6002546001600160a01b03165b905061098a8282600a60019054906101000a900463ffffffff166118a0565b5050505050565b3360009081526004602052604090205460ff166109c05760405162461bcd60e51b81526004016107ad906137c2565b6001600160a01b039283166000818152600b602090815260408083209590961680835294815285822093909355908152600c825283812092815291905220429055565b610a0b611b12565b333214610a5a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a496c6c6567616c2063616c6c6572000000000060448201526064016107ad565b333b15610ab55760405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a50726f686962697420636f6e74726163742063604482015263616c6c7360e01b60648201526084016107ad565b6003845110610b065760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a496e76616c69642070617468206c656e67746860448201526064016107ad565b600084600081518110610b1b57610b1b6137f2565b6020026020010151905060008560018751610b36919061381e565b81518110610b4657610b466137f2565b6020908102919091018101516001600160a01b0380851660009081526005845260408082209284168252919093529091206004015490915060ff16610bcd5760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4d61726b65743a3a54726164652070616972206973206f6666000060448201526064016107ad565b60006040518060400160405280610be385611b6b565b8152602001846001600160a01b0316815250905060006040518060400160405280610c0d85611b6b565b81526001600160a01b0385166020909101528251909150600303610c3c57610c378433308a611ba9565b610c5c565b86341015610c5c5760405162461bcd60e51b81526004016107ad90613835565b86610c86610c6b868684611cdf565b610c80610c7988888d611dde565b8b90611ec9565b90611ec9565b9750610c9385858a611ed5565b6000610c9f898b6115e4565b9050610cad87826000611701565b90506000610cc285858c858f60008f30611f9a565b905081811015610d145760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e4d61726b65743a3a42656c6f77206578706563746174696f6e730060448201526064016107ad565b610d2087878c846122ae565b8115610d8157610d35846020015133846115ad565b610d815760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a73656e6420746f6b656e206661696c0000000060448201526064016107ad565b7f3f89446e57c894c1c2b3e784015a8d12f0a6a5081790c6cbcaefe633642b4b6f3388888d8686610db38e8e8c611dde565b610dbe8f8f8d611cdf565b604080516001600160a01b03998a168152978916602089015295909716948601949094526060850192909252608084015260a083015260c082015260e08101919091526101000160405180910390a150505050505050610e1d60018055565b50505050565b610e4d6040518060600160405280600063ffffffff16815260200160008152602001600081525090565b600a546000908190600160281b900460ff16610e8957505060408051606081018252600080825260208201819052918101829052915080610f36565b60006001600160a01b03861615610ea05785610ead565b6002546001600160a01b03165b905060006001600160a01b03861615610ec65785610ed3565b6002546001600160a01b03165b90506000610ee18383612407565b60008181526009602090815260408083208151606081018352815463ffffffff168152600182015481850152600290910154818301529383526006825280832054600790925290912054919750955093505050505b9250925092565b6000546001600160a01b03163314610f675760405162461bcd60e51b81526004016107ad9061378d565b610f716000612498565b565b6000546001600160a01b03163314610f9d5760405162461bcd60e51b81526004016107ad9061378d565b6002600e54610fac919061387b565b811115610ff25760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b601055565b3360009081526004602052604090205460ff166110265760405162461bcd60e51b81526004016107ad906137c2565b61102e611b12565b826000036110555761104085876115e4565b935061104e81856000611701565b9350611070565b61105f848761179e565b945061106d81866001611701565b94505b600086600081518110611085576110856137f2565b60200260200101519050600087600189516110a0919061381e565b815181106110b0576110b06137f2565b60200260200101519050600060405180604001604052806110d085611b6b565b8152602001846001600160a01b03168152509050600060405180604001604052806110fa85611b6b565b81526001600160a01b0385166020909101528251909150600303611129576111248433308c611ba9565b611164565b883410156111495760405162461bcd60e51b81526004016107ad90613835565b88341115611164576111643361115f8b3461381e565b6124e8565b61117482828b8b8e8c8c33611f9a565b505050505061118260018055565b505050505050565b6000546001600160a01b031633146111b45760405162461bcd60e51b81526004016107ad9061378d565b6111bd81612601565b50565b6000546001600160a01b031633146111ea5760405162461bcd60e51b81526004016107ad9061378d565b6002600e546111f9919061387b565b8111156112405760405162461bcd60e51b81526020600482015260156024820152740a8ded6cadc9ac2e4d6cae87474a8dede40d0d2ced605b1b60448201526064016107ad565b600f55565b600a54600090600160281b900460ff166112615750600061126b565b61077c8383612407565b92915050565b6000546001600160a01b0316331461129b5760405162461bcd60e51b81526004016107ad9061378d565b600e54816060015182602001516112b2919061389d565b11156113005760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d617860448201526064016107ad565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b6000546001600160a01b031633146113ad5760405162461bcd60e51b81526004016107ad9061378d565b600a8054911515600160281b0265ff000000000019909216919091179055565b6000546001600160a01b031633146113f75760405162461bcd60e51b81526004016107ad9061378d565b60788163ffffffff1610156114465760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600d805463ffffffff191663ffffffff92909216919091179055565b6000546001600160a01b0316331461148c5760405162461bcd60e51b81526004016107ad9061378d565b6001600160a01b0381166114f15760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b6111bd81612498565b6000546001600160a01b031633146115245760405162461bcd60e51b81526004016107ad9061378d565b60788163ffffffff1610156115735760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600a805463ffffffff9092166101000264ffffffff0019909216919091179055565b600061077c82846138b5565b600061077c828461387b565b60006001600160a01b0384166115cf576115c783836124e8565b50600161077c565b6115da848484612702565b5060019392505050565b60035460405163d06ca61f60e01b815260009182916001600160a01b039091169063d06ca61f9061161b9087908790600401613918565b600060405180830381865afa158015611638573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116609190810190613931565b90508061167860018351611ec990919063ffffffff16565b81518110611688576116886137f2565b60200260200101519150600082116116fa5760405162461bcd60e51b815260206004820152602f60248201527f546f6b656e4d61726b65743a3a6f7574416d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b60648201526084016107ad565b5092915050565b60006002600e54611712919061387b565b8411156117585760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b6001821561177457600e5461176d908661282c565b9050611784565b600e546117819086611ec9565b90505b600e54611795906107768684611595565b95945050505050565b6003546040516307c0329d60e21b815260009182916001600160a01b0390911690631f00ca74906117d59087908790600401613918565b600060405180830381865afa1580156117f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261181a9190810190613931565b90508060008151811061182f5761182f6137f2565b60200260200101519150600082116116fa5760405162461bcd60e51b815260206004820152602e60248201527f546f6b656e4d61726b65743a3a696e416d6f756e742073686f756c642062652060448201526d067726561746572207468616e20360941b60648201526084016107ad565b6000806118ad8585612407565b60008181526009602052604081209192506118c88787612838565b50905060008060006118d984612a08565b8754929550909350915063ffffffff1660000361192257845463ffffffff191663ffffffff919091161784556001840191909155600290920191909155506000915061077c9050565b84546000906119379063ffffffff16836139c2565b90508863ffffffff168163ffffffff16101561195d57600097505050505050505061077c565b60008163ffffffff16876001015486611976919061381e565b611980919061387b565b905060008263ffffffff1688600201548661199b919061381e565b6119a5919061387b565b90506119be82670de0b6b3a7640000600160701b612bf2565b60008a8152600660205260409020556119e481670de0b6b3a7640000600160701b612bf2565b60008a815260076020908152604080832093909355600690522054611a5a5760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526530547761702960d01b60648201526084016107ad565b600089815260076020526040902054611ac45760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526531547761702960d01b60648201526084016107ad565b505050600095865260086020526040909520805463ffffffff1990811663ffffffff909716968717909155845416909417835560018381019190915560029092019290925595945050505050565b600260015403611b645760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016107ad565b6002600155565b60006001600160a01b038216611b8357506001919050565b6002546001600160a01b0390811690831603611ba157506002919050565b506003919050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b1790529151600092839290881691611c0d91906139e7565b6000604051808303816000865af19150503d8060008114611c4a576040519150601f19603f3d011682016040523d82523d6000602084013e611c4f565b606091505b5091509150818015611c79575080511580611c79575080806020019051810190611c799190613a22565b6111825760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472604482015270185b9cd9995c919c9bdb4819985a5b1959607a1b60648201526084016107ad565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a08101855281548816815260018201548187015260028201549097169387019390935260038301546060870181905260049093015460ff16151560808701528452909152909190808303611d635760009250505061077c565b611d6d8482610762565b925082600003611d7e57505061077c565b60006040518060400160405280611d9489611b6b565b81526001600160a01b0389166020909101528051909150600303611dc657611dc187846040015186612702565b611dd4565b611dd4836040015185612c61565b5050509392505050565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a0810185528154881681526001820154818701819052600283015490981694810194909452600381015460608501526004015460ff161515608084015284529091529091808303611e5f5760009250505061077c565b611e698482610762565b925082600003611e7a57505061077c565b60006040518060400160405280611e9089611b6b565b81526001600160a01b0389166020909101528051909150600303611ebd57611dc187846000015186612702565b8251611dd49085612c61565b600061077c828461381e565b60006001600160a01b03841615611eec5783611ef9565b6002546001600160a01b03165b905060006001600160a01b03841615611f125783611f1f565b6002546001600160a01b03165b90506000611f2d8383612d3b565b509050600e5460105482611f4191906138b5565b611f4b919061387b565b8411156111825760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a496e70757420746f6f206c617267650000000060448201526064016107ad565b8751600090600303611fc2576020890151600354611fc291906001600160a01b031689612edf565b606060008a6000015160011480611fda57508a516002145b905060008a6000015160011480611ff257508a516002145b905081158015612000575080155b156120cb5786600003612093576003546040516338ed173960e01b81526001600160a01b03909116906338ed173990612045908d908d908d908b908d90600401613a3f565b6000604051808303816000875af1158015612064573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261208c9190810190613931565b9250612276565b600354604051634401edf760e11b81526001600160a01b0390911690638803dbee90612045908c908e908d908b908d90600401613a3f565b8180156120d6575080155b1561219a578660000361216257600354604051637ff36ab560e01b81526001600160a01b0390911690637ff36ab5908c9061211b908d908d908b908d90600401613a7b565b60006040518083038185885af1158015612139573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f1916820160405261208c9190810190613931565b60035460405163fb3bdb4160e01b81526001600160a01b039091169063fb3bdb41908c9061211b908d908d908b908d90600401613a7b565b811580156121a55750805b1561222257866000036121ea576003546040516318cbafe560e01b81526001600160a01b03909116906318cbafe590612045908d908d908d908b908d90600401613a3f565b600354604051632512eca560e11b81526001600160a01b0390911690634a25d94a90612045908c908e908d908b908d90600401613a3f565b60405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a4554483c2d3e455448206e6f7420737570706f6044820152631c9d195960e21b60648201526084016107ad565b8260018451612285919061381e565b81518110612295576122956137f2565b6020026020010151935050505098975050505050505050565b6000821180156122be5750600081115b61230a5760405162461bcd60e51b815260206004820152601860248201527f546f6b656e4d61726b65743a3a5a65726f20616d6f756e74000000000000000060448201526064016107ad565b6000806123178686613007565b9150915080612327575050610e1d565b60008461233c85670de0b6b3a76400006138b5565b612346919061387b565b90506000600e54600f548561235b91906138b5565b612365919061387b565b90506000818511612377576000612381565b612381828661381e565b9050600061238f838761389d565b90508184101580156123a15750808411155b6123fb5760405162461bcd60e51b815260206004820152602560248201527f546f6b656e4d61726b65743a3a507269636520646576696174696f6e20746f6f604482015264040d0d2ced60db1b60648201526084016107ad565b50505050505050505050565b6000816001600160a01b0316836001600160a01b0316101561246a576040516bffffffffffffffffffffffff19606085811b8216602084015284901b1660348201526048015b60405160208183030381529060405280519060200120905061126b565b6040516bffffffffffffffffffffffff19606084811b8216602084015285901b16603482015260480161244d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b804710156125385760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ad565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612585576040519150601f19603f3d011682016040523d82523d6000602084013e61258a565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ad565b6001600160a01b0381166126625760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084016107ad565b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156126bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126df9190613ab0565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161275e91906139e7565b6000604051808303816000865af19150503d806000811461279b576040519150601f19603f3d011682016040523d82523d6000602084013e6127a0565b606091505b50915091508180156127ca5750805115806127ca5750808060200190518101906127ca9190613a22565b61098a5760405162461bcd60e51b815260206004820152602d60248201527f5472616e7366657248656c7065723a3a736166655472616e736665723a20747260448201526c185b9cd9995c8819985a5b1959609a1b60648201526084016107ad565b600061077c828461389d565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612890573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128b49190613ab0565b60405163e6a4390560e01b81526001600160a01b038781166004830152868116602483015291925060009183169063e6a4390590604401602060405180830381865afa158015612908573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061292c9190613ab0565b90506001600160a01b0381166129845760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a50616972206e6f74206578697374000000000060448201526064016107ad565b809350836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129e99190613ab0565b6001600160a01b0316866001600160a01b031614925050509250929050565b6000806000836001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a6f9190613acd565b9250836001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa158015612aaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad39190613acd565b91506000806000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b3c9190613b02565b9250925092504293508363ffffffff168163ffffffff1614612be8576000612b6482866139c2565b905063ffffffff8116612b906001600160701b038616600160701b600160e01b03607087901b1661387b565b612b9a91906138b5565b612ba4908861389d565b965063ffffffff8116612bd06001600160701b038516600160701b600160e01b03607088901b1661387b565b612bda91906138b5565b612be4908761389d565b9550505b5050509193909250565b600081600003612c445760405162461bcd60e51b815260206004820152601860248201527f6d756c4469763a206469766973696f6e206279207a65726f000000000000000060448201526064016107ad565b81612c4f84866138b5565b612c59919061387b565b949350505050565b604080516000808252602082019092526001600160a01b038416908390604051612c8b91906139e7565b60006040518083038185875af1925050503d8060008114612cc8576040519150601f19603f3d011682016040523d82523d6000602084013e612ccd565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603460248201527f5472616e7366657248656c7065723a3a736166655472616e736665724554483a60448201527308115512081d1c985b9cd9995c8819985a5b195960621b60648201526084016107ad565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612d93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612db79190613ab0565b60405163e6a4390560e01b81526001600160a01b0387811660048301528681166024830152919091169063e6a4390590604401602060405180830381865afa158015612e07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e2b9190613ab0565b9050600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612e6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e929190613b02565b506001600160701b031691506001600160701b03169150856001600160a01b0316876001600160a01b03161015612ece57819450809350612ed5565b8094508193505b5050509250929050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691612f3b91906139e7565b6000604051808303816000865af19150503d8060008114612f78576040519150601f19603f3d011682016040523d82523d6000602084013e612f7d565b606091505b5091509150818015612fa7575080511580612fa7575080806020019051810190612fa79190613a22565b61098a5760405162461bcd60e51b815260206004820152602b60248201527f5472616e7366657248656c7065723a3a73616665417070726f76653a2061707060448201526a1c9bdd994819985a5b195960aa1b60648201526084016107ad565b600a54600090819060ff16156131d45760006001600160a01b0385161561302e578461303b565b6002546001600160a01b03165b905060006001600160a01b038516156130545784613061565b6002546001600160a01b03165b9050600061306f8383612407565b905061308e8383600a60019054906101000a900463ffffffff166118a0565b5060008181526008602052604090205463ffffffff168015806130bd5750600082815260066020526040902054155b806130d45750600082815260076020526040902054155b1561313f576130e384846132d6565b600a5490965060009550600160281b900460ff16156131365760408051878152600060208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b505050506132cf565b600061314b8585612838565b9150508061316757600083815260076020526040902054613177565b6000838152600660205260409020545b600a54909750600160281b900460ff16156131c65760408051888152600160208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b6001955050505050506132cf565b6001600160a01b038085166000818152600b6020908152604080832094881680845294825280832054938352600c82528083209483529390529190912054600d5491935090429061322b9063ffffffff168361389d565b10156132795760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a5072696365206f75746461746564000000000060448201526064016107ad565b600083116132c95760405162461bcd60e51b815260206004820152601a60248201527f546f6b656e4d61726b65743a3a4e6f207072696365206665656400000000000060448201526064016107ad565b60009150505b9250929050565b60008060006132e58585612d3b565b915091506000821180156132f95750600081115b6133455760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a4e6f206c69717569646974790000000000000060448201526064016107ad565b8161335882670de0b6b3a76400006138b5565b611795919061387b565b6000806040838503121561337557600080fd5b50508035926020909101359150565b6001600160a01b03811681146111bd57600080fd5b80151581146111bd57600080fd5b600080604083850312156133ba57600080fd5b82356133c581613384565b915060208301356133d581613399565b809150509250929050565b6000602082840312156133f257600080fd5b813561077c81613399565b60008060006060848603121561341257600080fd5b833561341d81613384565b9250602084013561342d81613384565b929592945050506040919091013590565b6000806040838503121561345157600080fd5b823561345c81613384565b915060208301356133d581613384565b634e487b7160e01b600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156134a5576134a561346c565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156134d4576134d461346c565b604052919050565b600067ffffffffffffffff8211156134f6576134f661346c565b5060051b60200190565b600082601f83011261351157600080fd5b81356020613526613521836134dc565b6134ab565b82815260059290921b8401810191818101908684111561354557600080fd5b8286015b8481101561356957803561355c81613384565b8352918301918301613549565b509695505050505050565b6000806000806080858703121561358a57600080fd5b84359350602085013567ffffffffffffffff8111156135a857600080fd5b6135b487828801613500565b949794965050505060408301359260600135919050565b600080600080608085870312156135e157600080fd5b843567ffffffffffffffff8111156135f857600080fd5b61360487828801613500565b97602087013597506040870135966060013595509350505050565b60006020828403121561363157600080fd5b5035919050565b60008060008060008060c0878903121561365157600080fd5b863567ffffffffffffffff81111561366857600080fd5b61367489828a01613500565b9960208901359950604089013598606081013598506080810135975060a0013595509350505050565b6000602082840312156136af57600080fd5b813561077c81613384565b600080600083850360e08112156136d057600080fd5b84356136db81613384565b935060208501356136eb81613384565b925060a0603f19820112156136ff57600080fd5b50613708613482565b604085013561371681613384565b815260608501356020820152608085013561373081613384565b604082015260a0850135606082015260c085013561374d81613399565b608082015292959194509192509050565b63ffffffff811681146111bd57600080fd5b60006020828403121561378257600080fd5b813561077c8161375e565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526016908201527514ddd85c149bdd5d195c8e881b1a5b5a5d0818d85b1b60521b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008282101561383057613830613808565b500390565b60208082526026908201527f546f6b656e4d61726b65743a3a696e70757420657468206973206e6f7420616360408201526563757261746560d01b606082015260800190565b60008261389857634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156138b0576138b0613808565b500190565b60008160001904831182151516156138cf576138cf613808565b500290565b600081518084526020808501945080840160005b8381101561390d5781516001600160a01b0316875295820195908201906001016138e8565b509495945050505050565b828152604060208201526000612c5960408301846138d4565b6000602080838503121561394457600080fd5b825167ffffffffffffffff81111561395b57600080fd5b8301601f8101851361396c57600080fd5b805161397a613521826134dc565b81815260059190911b8201830190838101908783111561399957600080fd5b928401925b828410156139b75783518252928401929084019061399e565b979650505050505050565b600063ffffffff838116908316818110156139df576139df613808565b039392505050565b6000825160005b81811015613a0857602081860181015185830152016139ee565b81811115613a17576000828501525b509190910192915050565b600060208284031215613a3457600080fd5b815161077c81613399565b85815284602082015260a060408201526000613a5e60a08301866138d4565b6001600160a01b0394909416606083015250608001529392505050565b848152608060208201526000613a9460808301866138d4565b6001600160a01b03949094166040830152506060015292915050565b600060208284031215613ac257600080fd5b815161077c81613384565b600060208284031215613adf57600080fd5b5051919050565b80516001600160701b0381168114613afd57600080fd5b919050565b600080600060608486031215613b1757600080fd5b613b2084613ae6565b9250613b2e60208501613ae6565b91506040840151613b3e8161375e565b80915050925092509256fea2646970667358221220e73289b83a3c6617144d6a90afb148a47e5901dede79f68643c1d9c45b2361a764736f6c634300080e0033",
|
|
822
|
+
"deployedBytecode": "0x6080604052600436106101ef5760003560e01c8063823e1c4e1161010c578063d96661ef1161009a578063f18798fd1161006c578063f18798fd146106a8578063f2fde38b146106c8578063f35cd4e2146106e8578063f620732614610720578063f9c95d461461074257005b8063d96661ef14610615578063ecce1fbd14610635578063ee924d8614610655578063f108f8761461067557005b80639b19251a116100de5780639b19251a1461054d578063aa5d448f1461057d578063aa7993c01461059d578063c04606f0146105d5578063cd27ca82146105f557005b8063823e1c4e146104e2578063868c9abc146104fc57806388697d661461051c5780638da5cb5b1461052f57005b80632d52aa4e116101895780633fc8cef31161015b5780633fc8cef31461041757806348c8cd6c1461044f57806359832f65146104655780635e5ce28114610478578063715018a6146104cd57005b80632d52aa4e146103745780633041949b146103a5578063340ce57f146103c557806339088d85146103e557005b80630d83b1e4116101c25780630d83b1e4146102815780631b153401146102975780632926e5de146102b75780632bd2c18d1461035457005b8062067411146101f8578063016eb8a81461022157806304c8c100146102415780630a99d30f1461026157005b366101f657005b005b34801561020457600080fd5b5061020e60105481565b6040519081526020015b60405180910390f35b34801561022d57600080fd5b5061020e61023c366004613362565b610762565b34801561024d57600080fd5b506101f661025c3660046133a7565b610783565b34801561026d57600080fd5b506101f661027c3660046133e0565b6107e1565b34801561028d57600080fd5b5061020e600e5481565b3480156102a357600080fd5b506101f66102b23660046133fd565b61081e565b3480156102c357600080fd5b5061031b6102d236600461343e565b6005602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401546001600160a01b03938416949293909116919060ff1685565b604080516001600160a01b039687168152602081019590955292909416918301919091526060820152901515608082015260a001610218565b34801561036057600080fd5b5061020e61036f366004613574565b61089d565b34801561038057600080fd5b50600a5461039590600160281b900460ff1681565b6040519015158152602001610218565b3480156103b157600080fd5b506101f66103c036600461343e565b6108f2565b3480156103d157600080fd5b506101f66103e03660046133fd565b610991565b3480156103f157600080fd5b50600d546104029063ffffffff1681565b60405163ffffffff9091168152602001610218565b34801561042357600080fd5b50600254610437906001600160a01b031681565b6040516001600160a01b039091168152602001610218565b34801561045b57600080fd5b5061020e600f5481565b6101f66104733660046135cb565b610a03565b34801561048457600080fd5b5061049861049336600461343e565b610e23565b60408051845163ffffffff1681526020808601519082015293810151908401526060830191909152608082015260a001610218565b3480156104d957600080fd5b506101f6610f3d565b3480156104ee57600080fd5b50600a546103959060ff1681565b34801561050857600080fd5b506101f661051736600461361f565b610f73565b6101f661052a366004613638565b610ff7565b34801561053b57600080fd5b506000546001600160a01b0316610437565b34801561055957600080fd5b5061039561056836600461369d565b60046020526000908152604090205460ff1681565b34801561058957600080fd5b506101f661059836600461369d565b61118a565b3480156105a957600080fd5b5061020e6105b836600461343e565b600c60209081526000928352604080842090915290825290205481565b3480156105e157600080fd5b506101f66105f036600461361f565b6111c0565b34801561060157600080fd5b5061020e61061036600461343e565b611245565b34801561062157600080fd5b50600354610437906001600160a01b031681565b34801561064157600080fd5b506101f66106503660046136ba565b611271565b34801561066157600080fd5b506101f66106703660046133e0565b611383565b34801561068157600080fd5b5061040261069036600461361f565b60086020526000908152604090205463ffffffff1681565b3480156106b457600080fd5b506101f66106c3366004613770565b6113cd565b3480156106d457600080fd5b506101f66106e336600461369d565b611462565b3480156106f457600080fd5b5061020e61070336600461343e565b600b60209081526000928352604080842090915290825290205481565b34801561072c57600080fd5b50600a5461040290610100900463ffffffff1681565b34801561074e57600080fd5b506101f661075d366004613770565b6114fa565b600e5460009061077c906107768585611595565b906115a1565b9392505050565b6000546001600160a01b031633146107b65760405162461bcd60e51b81526004016107ad9061378d565b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461080b5760405162461bcd60e51b81526004016107ad9061378d565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016107ad9061378d565b6108538383836115ad565b6108985760405162461bcd60e51b8152602060048201526016602482015275151bdad95b93585c9ad95d0e8e9cd95b990819985a5b60521b60448201526064016107ad565b505050565b600080808481036108ca576108b287876115e4565b91506108c084836000611701565b91508192506108e8565b6108d4878761179e565b90506108e284826001611701565b90508092505b5050949350505050565b3360009081526004602052604090205460ff166109215760405162461bcd60e51b81526004016107ad906137c2565b60006001600160a01b038316156109385782610945565b6002546001600160a01b03165b905060006001600160a01b0383161561095e578261096b565b6002546001600160a01b03165b905061098a8282600a60019054906101000a900463ffffffff166118a0565b5050505050565b3360009081526004602052604090205460ff166109c05760405162461bcd60e51b81526004016107ad906137c2565b6001600160a01b039283166000818152600b602090815260408083209590961680835294815285822093909355908152600c825283812092815291905220429055565b610a0b611b12565b333214610a5a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a496c6c6567616c2063616c6c6572000000000060448201526064016107ad565b333b15610ab55760405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a50726f686962697420636f6e74726163742063604482015263616c6c7360e01b60648201526084016107ad565b6003845110610b065760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a496e76616c69642070617468206c656e67746860448201526064016107ad565b600084600081518110610b1b57610b1b6137f2565b6020026020010151905060008560018751610b36919061381e565b81518110610b4657610b466137f2565b6020908102919091018101516001600160a01b0380851660009081526005845260408082209284168252919093529091206004015490915060ff16610bcd5760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4d61726b65743a3a54726164652070616972206973206f6666000060448201526064016107ad565b60006040518060400160405280610be385611b6b565b8152602001846001600160a01b0316815250905060006040518060400160405280610c0d85611b6b565b81526001600160a01b0385166020909101528251909150600303610c3c57610c378433308a611ba9565b610c5c565b86341015610c5c5760405162461bcd60e51b81526004016107ad90613835565b86610c86610c6b868684611cdf565b610c80610c7988888d611dde565b8b90611ec9565b90611ec9565b9750610c9385858a611ed5565b6000610c9f898b6115e4565b9050610cad87826000611701565b90506000610cc285858c858f60008f30611f9a565b905081811015610d145760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e4d61726b65743a3a42656c6f77206578706563746174696f6e730060448201526064016107ad565b610d2087878c846122ae565b8115610d8157610d35846020015133846115ad565b610d815760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a73656e6420746f6b656e206661696c0000000060448201526064016107ad565b7f3f89446e57c894c1c2b3e784015a8d12f0a6a5081790c6cbcaefe633642b4b6f3388888d8686610db38e8e8c611dde565b610dbe8f8f8d611cdf565b604080516001600160a01b03998a168152978916602089015295909716948601949094526060850192909252608084015260a083015260c082015260e08101919091526101000160405180910390a150505050505050610e1d60018055565b50505050565b610e4d6040518060600160405280600063ffffffff16815260200160008152602001600081525090565b600a546000908190600160281b900460ff16610e8957505060408051606081018252600080825260208201819052918101829052915080610f36565b60006001600160a01b03861615610ea05785610ead565b6002546001600160a01b03165b905060006001600160a01b03861615610ec65785610ed3565b6002546001600160a01b03165b90506000610ee18383612407565b60008181526009602090815260408083208151606081018352815463ffffffff168152600182015481850152600290910154818301529383526006825280832054600790925290912054919750955093505050505b9250925092565b6000546001600160a01b03163314610f675760405162461bcd60e51b81526004016107ad9061378d565b610f716000612498565b565b6000546001600160a01b03163314610f9d5760405162461bcd60e51b81526004016107ad9061378d565b6002600e54610fac919061387b565b811115610ff25760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b601055565b3360009081526004602052604090205460ff166110265760405162461bcd60e51b81526004016107ad906137c2565b61102e611b12565b826000036110555761104085876115e4565b935061104e81856000611701565b9350611070565b61105f848761179e565b945061106d81866001611701565b94505b600086600081518110611085576110856137f2565b60200260200101519050600087600189516110a0919061381e565b815181106110b0576110b06137f2565b60200260200101519050600060405180604001604052806110d085611b6b565b8152602001846001600160a01b03168152509050600060405180604001604052806110fa85611b6b565b81526001600160a01b0385166020909101528251909150600303611129576111248433308c611ba9565b611164565b883410156111495760405162461bcd60e51b81526004016107ad90613835565b88341115611164576111643361115f8b3461381e565b6124e8565b61117482828b8b8e8c8c33611f9a565b505050505061118260018055565b505050505050565b6000546001600160a01b031633146111b45760405162461bcd60e51b81526004016107ad9061378d565b6111bd81612601565b50565b6000546001600160a01b031633146111ea5760405162461bcd60e51b81526004016107ad9061378d565b6002600e546111f9919061387b565b8111156112405760405162461bcd60e51b81526020600482015260156024820152740a8ded6cadc9ac2e4d6cae87474a8dede40d0d2ced605b1b60448201526064016107ad565b600f55565b600a54600090600160281b900460ff166112615750600061126b565b61077c8383612407565b92915050565b6000546001600160a01b0316331461129b5760405162461bcd60e51b81526004016107ad9061378d565b600e54816060015182602001516112b2919061389d565b11156113005760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d617860448201526064016107ad565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b6000546001600160a01b031633146113ad5760405162461bcd60e51b81526004016107ad9061378d565b600a8054911515600160281b0265ff000000000019909216919091179055565b6000546001600160a01b031633146113f75760405162461bcd60e51b81526004016107ad9061378d565b60788163ffffffff1610156114465760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600d805463ffffffff191663ffffffff92909216919091179055565b6000546001600160a01b0316331461148c5760405162461bcd60e51b81526004016107ad9061378d565b6001600160a01b0381166114f15760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b6111bd81612498565b6000546001600160a01b031633146115245760405162461bcd60e51b81526004016107ad9061378d565b60788163ffffffff1610156115735760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600a805463ffffffff9092166101000264ffffffff0019909216919091179055565b600061077c82846138b5565b600061077c828461387b565b60006001600160a01b0384166115cf576115c783836124e8565b50600161077c565b6115da848484612702565b5060019392505050565b60035460405163d06ca61f60e01b815260009182916001600160a01b039091169063d06ca61f9061161b9087908790600401613918565b600060405180830381865afa158015611638573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116609190810190613931565b90508061167860018351611ec990919063ffffffff16565b81518110611688576116886137f2565b60200260200101519150600082116116fa5760405162461bcd60e51b815260206004820152602f60248201527f546f6b656e4d61726b65743a3a6f7574416d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b60648201526084016107ad565b5092915050565b60006002600e54611712919061387b565b8411156117585760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b6001821561177457600e5461176d908661282c565b9050611784565b600e546117819086611ec9565b90505b600e54611795906107768684611595565b95945050505050565b6003546040516307c0329d60e21b815260009182916001600160a01b0390911690631f00ca74906117d59087908790600401613918565b600060405180830381865afa1580156117f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261181a9190810190613931565b90508060008151811061182f5761182f6137f2565b60200260200101519150600082116116fa5760405162461bcd60e51b815260206004820152602e60248201527f546f6b656e4d61726b65743a3a696e416d6f756e742073686f756c642062652060448201526d067726561746572207468616e20360941b60648201526084016107ad565b6000806118ad8585612407565b60008181526009602052604081209192506118c88787612838565b50905060008060006118d984612a08565b8754929550909350915063ffffffff1660000361192257845463ffffffff191663ffffffff919091161784556001840191909155600290920191909155506000915061077c9050565b84546000906119379063ffffffff16836139c2565b90508863ffffffff168163ffffffff16101561195d57600097505050505050505061077c565b60008163ffffffff16876001015486611976919061381e565b611980919061387b565b905060008263ffffffff1688600201548661199b919061381e565b6119a5919061387b565b90506119be82670de0b6b3a7640000600160701b612bf2565b60008a8152600660205260409020556119e481670de0b6b3a7640000600160701b612bf2565b60008a815260076020908152604080832093909355600690522054611a5a5760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526530547761702960d01b60648201526084016107ad565b600089815260076020526040902054611ac45760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526531547761702960d01b60648201526084016107ad565b505050600095865260086020526040909520805463ffffffff1990811663ffffffff909716968717909155845416909417835560018381019190915560029092019290925595945050505050565b600260015403611b645760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016107ad565b6002600155565b60006001600160a01b038216611b8357506001919050565b6002546001600160a01b0390811690831603611ba157506002919050565b506003919050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b1790529151600092839290881691611c0d91906139e7565b6000604051808303816000865af19150503d8060008114611c4a576040519150601f19603f3d011682016040523d82523d6000602084013e611c4f565b606091505b5091509150818015611c79575080511580611c79575080806020019051810190611c799190613a22565b6111825760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472604482015270185b9cd9995c919c9bdb4819985a5b1959607a1b60648201526084016107ad565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a08101855281548816815260018201548187015260028201549097169387019390935260038301546060870181905260049093015460ff16151560808701528452909152909190808303611d635760009250505061077c565b611d6d8482610762565b925082600003611d7e57505061077c565b60006040518060400160405280611d9489611b6b565b81526001600160a01b0389166020909101528051909150600303611dc657611dc187846040015186612702565b611dd4565b611dd4836040015185612c61565b5050509392505050565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a0810185528154881681526001820154818701819052600283015490981694810194909452600381015460608501526004015460ff161515608084015284529091529091808303611e5f5760009250505061077c565b611e698482610762565b925082600003611e7a57505061077c565b60006040518060400160405280611e9089611b6b565b81526001600160a01b0389166020909101528051909150600303611ebd57611dc187846000015186612702565b8251611dd49085612c61565b600061077c828461381e565b60006001600160a01b03841615611eec5783611ef9565b6002546001600160a01b03165b905060006001600160a01b03841615611f125783611f1f565b6002546001600160a01b03165b90506000611f2d8383612d3b565b509050600e5460105482611f4191906138b5565b611f4b919061387b565b8411156111825760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a496e70757420746f6f206c617267650000000060448201526064016107ad565b8751600090600303611fc2576020890151600354611fc291906001600160a01b031689612edf565b606060008a6000015160011480611fda57508a516002145b905060008a6000015160011480611ff257508a516002145b905081158015612000575080155b156120cb5786600003612093576003546040516338ed173960e01b81526001600160a01b03909116906338ed173990612045908d908d908d908b908d90600401613a3f565b6000604051808303816000875af1158015612064573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261208c9190810190613931565b9250612276565b600354604051634401edf760e11b81526001600160a01b0390911690638803dbee90612045908c908e908d908b908d90600401613a3f565b8180156120d6575080155b1561219a578660000361216257600354604051637ff36ab560e01b81526001600160a01b0390911690637ff36ab5908c9061211b908d908d908b908d90600401613a7b565b60006040518083038185885af1158015612139573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f1916820160405261208c9190810190613931565b60035460405163fb3bdb4160e01b81526001600160a01b039091169063fb3bdb41908c9061211b908d908d908b908d90600401613a7b565b811580156121a55750805b1561222257866000036121ea576003546040516318cbafe560e01b81526001600160a01b03909116906318cbafe590612045908d908d908d908b908d90600401613a3f565b600354604051632512eca560e11b81526001600160a01b0390911690634a25d94a90612045908c908e908d908b908d90600401613a3f565b60405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a4554483c2d3e455448206e6f7420737570706f6044820152631c9d195960e21b60648201526084016107ad565b8260018451612285919061381e565b81518110612295576122956137f2565b6020026020010151935050505098975050505050505050565b6000821180156122be5750600081115b61230a5760405162461bcd60e51b815260206004820152601860248201527f546f6b656e4d61726b65743a3a5a65726f20616d6f756e74000000000000000060448201526064016107ad565b6000806123178686613007565b9150915080612327575050610e1d565b60008461233c85670de0b6b3a76400006138b5565b612346919061387b565b90506000600e54600f548561235b91906138b5565b612365919061387b565b90506000818511612377576000612381565b612381828661381e565b9050600061238f838761389d565b90508184101580156123a15750808411155b6123fb5760405162461bcd60e51b815260206004820152602560248201527f546f6b656e4d61726b65743a3a507269636520646576696174696f6e20746f6f604482015264040d0d2ced60db1b60648201526084016107ad565b50505050505050505050565b6000816001600160a01b0316836001600160a01b0316101561246a576040516bffffffffffffffffffffffff19606085811b8216602084015284901b1660348201526048015b60405160208183030381529060405280519060200120905061126b565b6040516bffffffffffffffffffffffff19606084811b8216602084015285901b16603482015260480161244d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b804710156125385760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ad565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114612585576040519150601f19603f3d011682016040523d82523d6000602084013e61258a565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ad565b6001600160a01b0381166126625760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084016107ad565b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156126bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126df9190613ab0565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161275e91906139e7565b6000604051808303816000865af19150503d806000811461279b576040519150601f19603f3d011682016040523d82523d6000602084013e6127a0565b606091505b50915091508180156127ca5750805115806127ca5750808060200190518101906127ca9190613a22565b61098a5760405162461bcd60e51b815260206004820152602d60248201527f5472616e7366657248656c7065723a3a736166655472616e736665723a20747260448201526c185b9cd9995c8819985a5b1959609a1b60648201526084016107ad565b600061077c828461389d565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612890573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128b49190613ab0565b60405163e6a4390560e01b81526001600160a01b038781166004830152868116602483015291925060009183169063e6a4390590604401602060405180830381865afa158015612908573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061292c9190613ab0565b90506001600160a01b0381166129845760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a50616972206e6f74206578697374000000000060448201526064016107ad565b809350836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa1580156129c5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129e99190613ab0565b6001600160a01b0316866001600160a01b031614925050509250929050565b6000806000836001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a4b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a6f9190613acd565b9250836001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa158015612aaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad39190613acd565b91506000806000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612b18573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b3c9190613b02565b9250925092504293508363ffffffff168163ffffffff1614612be8576000612b6482866139c2565b905063ffffffff8116612b906001600160701b038616600160701b600160e01b03607087901b1661387b565b612b9a91906138b5565b612ba4908861389d565b965063ffffffff8116612bd06001600160701b038516600160701b600160e01b03607088901b1661387b565b612bda91906138b5565b612be4908761389d565b9550505b5050509193909250565b600081600003612c445760405162461bcd60e51b815260206004820152601860248201527f6d756c4469763a206469766973696f6e206279207a65726f000000000000000060448201526064016107ad565b81612c4f84866138b5565b612c59919061387b565b949350505050565b604080516000808252602082019092526001600160a01b038416908390604051612c8b91906139e7565b60006040518083038185875af1925050503d8060008114612cc8576040519150601f19603f3d011682016040523d82523d6000602084013e612ccd565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603460248201527f5472616e7366657248656c7065723a3a736166655472616e736665724554483a60448201527308115512081d1c985b9cd9995c8819985a5b195960621b60648201526084016107ad565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612d93573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612db79190613ab0565b60405163e6a4390560e01b81526001600160a01b0387811660048301528681166024830152919091169063e6a4390590604401602060405180830381865afa158015612e07573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e2b9190613ab0565b9050600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612e6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e929190613b02565b506001600160701b031691506001600160701b03169150856001600160a01b0316876001600160a01b03161015612ece57819450809350612ed5565b8094508193505b5050509250929050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691612f3b91906139e7565b6000604051808303816000865af19150503d8060008114612f78576040519150601f19603f3d011682016040523d82523d6000602084013e612f7d565b606091505b5091509150818015612fa7575080511580612fa7575080806020019051810190612fa79190613a22565b61098a5760405162461bcd60e51b815260206004820152602b60248201527f5472616e7366657248656c7065723a3a73616665417070726f76653a2061707060448201526a1c9bdd994819985a5b195960aa1b60648201526084016107ad565b600a54600090819060ff16156131d45760006001600160a01b0385161561302e578461303b565b6002546001600160a01b03165b905060006001600160a01b038516156130545784613061565b6002546001600160a01b03165b9050600061306f8383612407565b905061308e8383600a60019054906101000a900463ffffffff166118a0565b5060008181526008602052604090205463ffffffff168015806130bd5750600082815260066020526040902054155b806130d45750600082815260076020526040902054155b1561313f576130e384846132d6565b600a5490965060009550600160281b900460ff16156131365760408051878152600060208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b505050506132cf565b600061314b8585612838565b9150508061316757600083815260076020526040902054613177565b6000838152600660205260409020545b600a54909750600160281b900460ff16156131c65760408051888152600160208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b6001955050505050506132cf565b6001600160a01b038085166000818152600b6020908152604080832094881680845294825280832054938352600c82528083209483529390529190912054600d5491935090429061322b9063ffffffff168361389d565b10156132795760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a5072696365206f75746461746564000000000060448201526064016107ad565b600083116132c95760405162461bcd60e51b815260206004820152601a60248201527f546f6b656e4d61726b65743a3a4e6f207072696365206665656400000000000060448201526064016107ad565b60009150505b9250929050565b60008060006132e58585612d3b565b915091506000821180156132f95750600081115b6133455760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a4e6f206c69717569646974790000000000000060448201526064016107ad565b8161335882670de0b6b3a76400006138b5565b611795919061387b565b6000806040838503121561337557600080fd5b50508035926020909101359150565b6001600160a01b03811681146111bd57600080fd5b80151581146111bd57600080fd5b600080604083850312156133ba57600080fd5b82356133c581613384565b915060208301356133d581613399565b809150509250929050565b6000602082840312156133f257600080fd5b813561077c81613399565b60008060006060848603121561341257600080fd5b833561341d81613384565b9250602084013561342d81613384565b929592945050506040919091013590565b6000806040838503121561345157600080fd5b823561345c81613384565b915060208301356133d581613384565b634e487b7160e01b600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156134a5576134a561346c565b60405290565b604051601f8201601f1916810167ffffffffffffffff811182821017156134d4576134d461346c565b604052919050565b600067ffffffffffffffff8211156134f6576134f661346c565b5060051b60200190565b600082601f83011261351157600080fd5b81356020613526613521836134dc565b6134ab565b82815260059290921b8401810191818101908684111561354557600080fd5b8286015b8481101561356957803561355c81613384565b8352918301918301613549565b509695505050505050565b6000806000806080858703121561358a57600080fd5b84359350602085013567ffffffffffffffff8111156135a857600080fd5b6135b487828801613500565b949794965050505060408301359260600135919050565b600080600080608085870312156135e157600080fd5b843567ffffffffffffffff8111156135f857600080fd5b61360487828801613500565b97602087013597506040870135966060013595509350505050565b60006020828403121561363157600080fd5b5035919050565b60008060008060008060c0878903121561365157600080fd5b863567ffffffffffffffff81111561366857600080fd5b61367489828a01613500565b9960208901359950604089013598606081013598506080810135975060a0013595509350505050565b6000602082840312156136af57600080fd5b813561077c81613384565b600080600083850360e08112156136d057600080fd5b84356136db81613384565b935060208501356136eb81613384565b925060a0603f19820112156136ff57600080fd5b50613708613482565b604085013561371681613384565b815260608501356020820152608085013561373081613384565b604082015260a0850135606082015260c085013561374d81613399565b608082015292959194509192509050565b63ffffffff811681146111bd57600080fd5b60006020828403121561378257600080fd5b813561077c8161375e565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526016908201527514ddd85c149bdd5d195c8e881b1a5b5a5d0818d85b1b60521b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008282101561383057613830613808565b500390565b60208082526026908201527f546f6b656e4d61726b65743a3a696e70757420657468206973206e6f7420616360408201526563757261746560d01b606082015260800190565b60008261389857634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156138b0576138b0613808565b500190565b60008160001904831182151516156138cf576138cf613808565b500290565b600081518084526020808501945080840160005b8381101561390d5781516001600160a01b0316875295820195908201906001016138e8565b509495945050505050565b828152604060208201526000612c5960408301846138d4565b6000602080838503121561394457600080fd5b825167ffffffffffffffff81111561395b57600080fd5b8301601f8101851361396c57600080fd5b805161397a613521826134dc565b81815260059190911b8201830190838101908783111561399957600080fd5b928401925b828410156139b75783518252928401929084019061399e565b979650505050505050565b600063ffffffff838116908316818110156139df576139df613808565b039392505050565b6000825160005b81811015613a0857602081860181015185830152016139ee565b81811115613a17576000828501525b509190910192915050565b600060208284031215613a3457600080fd5b815161077c81613399565b85815284602082015260a060408201526000613a5e60a08301866138d4565b6001600160a01b0394909416606083015250608001529392505050565b848152608060208201526000613a9460808301866138d4565b6001600160a01b03949094166040830152506060015292915050565b600060208284031215613ac257600080fd5b815161077c81613384565b600060208284031215613adf57600080fd5b5051919050565b80516001600160701b0381168114613afd57600080fd5b919050565b600080600060608486031215613b1757600080fd5b613b2084613ae6565b9250613b2e60208501613ae6565b91506040840151613b3e8161375e565b80915050925092509256fea2646970667358221220e73289b83a3c6617144d6a90afb148a47e5901dede79f68643c1d9c45b2361a764736f6c634300080e0033",
|
|
816
823
|
"linkReferences": {},
|
|
817
824
|
"deployedLinkReferences": {}
|
|
818
825
|
}
|
package/src/agent-swap.js
CHANGED
|
@@ -684,7 +684,7 @@ ${JSON.stringify(data,null,2)}`)
|
|
|
684
684
|
deadline = deadline ? deadline : plus(multiplication(60, 30), now)
|
|
685
685
|
|
|
686
686
|
let parma_list = [
|
|
687
|
-
path,inAmount,
|
|
687
|
+
path,inAmount, deadline,point
|
|
688
688
|
]
|
|
689
689
|
console.log(parma_list)
|
|
690
690
|
let parmas = await this.buildTx("swapToken", parma_list, ethAmount)
|