h-agent-swap 3.0.2 → 3.0.5
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": "0x6080604052600a805465ffffffffffff191662012c01179055600d805463ffffffff191661012c1790556305f5e100600e556301312d00600f55624c4b406010553480156200004d57600080fd5b50604051620040eb380380620040eb8339810160408190526200007091620004c5565b6200007b3362000223565b600180556200008a8162000273565b336000908152600460205260408120805460ff1916600117905580739eff3043cdbd7abe80f020b99b5627c344de59138046606103620000f857735f0a0fd7b6e0fa043386158c801f82e20cecca9393507397c4b486061a1a1fb9c8646728cc9a350506d23f92506200016f565b466201388103620001375773cf43b390dc89b36fd49267c646a73a0dfb7f3e4c93507397c4b486061a1a1fb9c8646728cc9a350506d23f92506200016f565b466089036200016f5773c2132d05d31c914a87c6611c10748aeb04b58e8f93507397c4b486061a1a1fb9c8646728cc9a350506d23f92505b620001c384846040518060a00160405280866001600160a01b031681526020016302faf080815260200160006001600160a01b0316815260200160008152602001600115158152506200037d60201b60201c565b6200021883856040518060a00160405280856001600160a01b03168152602001620f4240815260200160006001600160a01b03168152602001620f42408152602001600115158152506200037d60201b60201c565b50505050506200051e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038116620002da5760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084015b60405180910390fd5b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000334573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200035a9190620004c5565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b6000546001600160a01b03163314620003d95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620002d1565b600e5481606001518260200151620003f29190620004f7565b1115620004425760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d61786044820152606401620002d1565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b600060208284031215620004d857600080fd5b81516001600160a01b0381168114620004f057600080fd5b9392505050565b600082198211156200051957634e487b7160e01b600052601160045260246000fd5b500190565b613bbd806200052e6000396000f3fe6080604052600436106101ef5760003560e01c8063823e1c4e1161010c578063d96661ef1161009a578063f18798fd1161006c578063f18798fd146106a8578063f2fde38b146106c8578063f35cd4e2146106e8578063f620732614610720578063f9c95d461461074257005b8063d96661ef14610615578063ecce1fbd14610635578063ee924d8614610655578063f108f8761461067557005b80639b19251a116100de5780639b19251a1461054d578063aa5d448f1461057d578063aa7993c01461059d578063c04606f0146105d5578063cd27ca82146105f557005b8063823e1c4e146104e2578063868c9abc146104fc57806388697d661461051c5780638da5cb5b1461052f57005b80632d52aa4e116101895780633fc8cef31161015b5780633fc8cef31461041757806348c8cd6c1461044f57806359832f65146104655780635e5ce28114610478578063715018a6146104cd57005b80632d52aa4e146103745780633041949b146103a5578063340ce57f146103c557806339088d85146103e557005b80630d83b1e4116101c25780630d83b1e4146102815780631b153401146102975780632926e5de146102b75780632bd2c18d1461035457005b8062067411146101f8578063016eb8a81461022157806304c8c100146102415780630a99d30f1461026157005b366101f657005b005b34801561020457600080fd5b5061020e60105481565b6040519081526020015b60405180910390f35b34801561022d57600080fd5b5061020e61023c3660046133a0565b610762565b34801561024d57600080fd5b506101f661025c3660046133e5565b610783565b34801561026d57600080fd5b506101f661027c36600461341e565b6107e1565b34801561028d57600080fd5b5061020e600e5481565b3480156102a357600080fd5b506101f66102b236600461343b565b61081e565b3480156102c357600080fd5b5061031b6102d236600461347c565b6005602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401546001600160a01b03938416949293909116919060ff1685565b604080516001600160a01b039687168152602081019590955292909416918301919091526060820152901515608082015260a001610218565b34801561036057600080fd5b5061020e61036f3660046135b2565b61089d565b34801561038057600080fd5b50600a5461039590600160281b900460ff1681565b6040519015158152602001610218565b3480156103b157600080fd5b506101f66103c036600461347c565b6108f2565b3480156103d157600080fd5b506101f66103e036600461343b565b610991565b3480156103f157600080fd5b50600d546104029063ffffffff1681565b60405163ffffffff9091168152602001610218565b34801561042357600080fd5b50600254610437906001600160a01b031681565b6040516001600160a01b039091168152602001610218565b34801561045b57600080fd5b5061020e600f5481565b6101f6610473366004613609565b610a03565b34801561048457600080fd5b5061049861049336600461347c565b610e61565b60408051845163ffffffff1681526020808601519082015293810151908401526060830191909152608082015260a001610218565b3480156104d957600080fd5b506101f6610f7b565b3480156104ee57600080fd5b50600a546103959060ff1681565b34801561050857600080fd5b506101f661051736600461365d565b610fb1565b6101f661052a366004613676565b611035565b34801561053b57600080fd5b506000546001600160a01b0316610437565b34801561055957600080fd5b506103956105683660046136db565b60046020526000908152604090205460ff1681565b34801561058957600080fd5b506101f66105983660046136db565b6111c8565b3480156105a957600080fd5b5061020e6105b836600461347c565b600c60209081526000928352604080842090915290825290205481565b3480156105e157600080fd5b506101f66105f036600461365d565b6111fe565b34801561060157600080fd5b5061020e61061036600461347c565b611283565b34801561062157600080fd5b50600354610437906001600160a01b031681565b34801561064157600080fd5b506101f66106503660046136f8565b6112af565b34801561066157600080fd5b506101f661067036600461341e565b6113c1565b34801561068157600080fd5b5061040261069036600461365d565b60086020526000908152604090205463ffffffff1681565b3480156106b457600080fd5b506101f66106c33660046137ae565b61140b565b3480156106d457600080fd5b506101f66106e33660046136db565b6114a0565b3480156106f457600080fd5b5061020e61070336600461347c565b600b60209081526000928352604080842090915290825290205481565b34801561072c57600080fd5b50600a5461040290610100900463ffffffff1681565b34801561074e57600080fd5b506101f661075d3660046137ae565b611538565b600e5460009061077c9061077685856115d3565b906115df565b9392505050565b6000546001600160a01b031633146107b65760405162461bcd60e51b81526004016107ad906137cb565b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461080b5760405162461bcd60e51b81526004016107ad906137cb565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016107ad906137cb565b6108538383836115eb565b6108985760405162461bcd60e51b8152602060048201526016602482015275151bdad95b93585c9ad95d0e8e9cd95b990819985a5b60521b60448201526064016107ad565b505050565b600080808481036108ca576108b28787611622565b91506108c08483600061173f565b91508192506108e8565b6108d487876117dc565b90506108e28482600161173f565b90508092505b5050949350505050565b3360009081526004602052604090205460ff166109215760405162461bcd60e51b81526004016107ad90613800565b60006001600160a01b038316156109385782610945565b6002546001600160a01b03165b905060006001600160a01b0383161561095e578261096b565b6002546001600160a01b03165b905061098a8282600a60019054906101000a900463ffffffff166118de565b5050505050565b3360009081526004602052604090205460ff166109c05760405162461bcd60e51b81526004016107ad90613800565b6001600160a01b039283166000818152600b602090815260408083209590961680835294815285822093909355908152600c825283812092815291905220429055565b610a0b611b50565b333214610a5a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a496c6c6567616c2063616c6c6572000000000060448201526064016107ad565b333b15610ab55760405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a50726f686962697420636f6e74726163742063604482015263616c6c7360e01b60648201526084016107ad565b6003845110610b065760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a496e76616c69642070617468206c656e67746860448201526064016107ad565b60006040518060400160405280610b3687600081518110610b2957610b29613830565b6020026020010151611ba9565b815260200186600081518110610b4e57610b4e613830565b60200260200101516001600160a01b0316815250905060006040518060400160405280610b938860018a51610b83919061385c565b81518110610b2957610b29613830565b81526020018760018951610ba7919061385c565b81518110610bb757610bb7613830565b6020908102919091018101516001600160a01b03908116909252848101518216600090815260058252604080822085840151909416825292909152206004015490915060ff16610c495760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4d61726b65743a3a54726164652070616972206973206f6666000060448201526064016107ad565b8151600303610c6757610c628260200151333088611be7565b610c87565b84341015610c875760405162461bcd60e51b81526004016107ad90613873565b6000610c9c8360200151836020015188611d1d565b90506000610cb38460200151846020015189611e17565b9050610cc981610cc38985611f07565b90611f07565b9650610cde8460200151846020015189611f13565b6000610cea888a611622565b9050610cf88682600061173f565b90506000610d0d86868b858e60008e30611fd8565b905081811015610d5f5760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e4d61726b65743a3a42656c6f77206578706563746174696f6e730060448201526064016107ad565b610d73866020015186602001518b846122ec565b8115610dd457610d88856020015133846115eb565b610dd45760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a73656e6420746f6b656e206661696c0000000060448201526064016107ad565b60208681015186820151604080513381526001600160a01b0393841694810194909452911682820152606082018b90526080820184905260a0820183905260c0820186905260e08201859052517f3f89446e57c894c1c2b3e784015a8d12f0a6a5081790c6cbcaefe633642b4b6f918190036101000190a1505050505050610e5b60018055565b50505050565b610e8b6040518060600160405280600063ffffffff16815260200160008152602001600081525090565b600a546000908190600160281b900460ff16610ec757505060408051606081018252600080825260208201819052918101829052915080610f74565b60006001600160a01b03861615610ede5785610eeb565b6002546001600160a01b03165b905060006001600160a01b03861615610f045785610f11565b6002546001600160a01b03165b90506000610f1f8383612445565b60008181526009602090815260408083208151606081018352815463ffffffff168152600182015481850152600290910154818301529383526006825280832054600790925290912054919750955093505050505b9250925092565b6000546001600160a01b03163314610fa55760405162461bcd60e51b81526004016107ad906137cb565b610faf60006124d6565b565b6000546001600160a01b03163314610fdb5760405162461bcd60e51b81526004016107ad906137cb565b6002600e54610fea91906138b9565b8111156110305760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b601055565b3360009081526004602052604090205460ff166110645760405162461bcd60e51b81526004016107ad90613800565b61106c611b50565b826000036110935761107e8587611622565b935061108c8185600061173f565b93506110ae565b61109d84876117dc565b94506110ab8186600161173f565b94505b6000866000815181106110c3576110c3613830565b60200260200101519050600087600189516110de919061385c565b815181106110ee576110ee613830565b602002602001015190506000604051806040016040528061110e85611ba9565b8152602001846001600160a01b031681525090506000604051806040016040528061113885611ba9565b81526001600160a01b0385166020909101528251909150600303611167576111628433308c611be7565b6111a2565b883410156111875760405162461bcd60e51b81526004016107ad90613873565b883411156111a2576111a23361119d8b3461385c565b612526565b6111b282828b8b8e8c8c33611fd8565b50505050506111c060018055565b505050505050565b6000546001600160a01b031633146111f25760405162461bcd60e51b81526004016107ad906137cb565b6111fb8161263f565b50565b6000546001600160a01b031633146112285760405162461bcd60e51b81526004016107ad906137cb565b6002600e5461123791906138b9565b81111561127e5760405162461bcd60e51b81526020600482015260156024820152740a8ded6cadc9ac2e4d6cae87474a8dede40d0d2ced605b1b60448201526064016107ad565b600f55565b600a54600090600160281b900460ff1661129f575060006112a9565b61077c8383612445565b92915050565b6000546001600160a01b031633146112d95760405162461bcd60e51b81526004016107ad906137cb565b600e54816060015182602001516112f091906138db565b111561133e5760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d617860448201526064016107ad565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b6000546001600160a01b031633146113eb5760405162461bcd60e51b81526004016107ad906137cb565b600a8054911515600160281b0265ff000000000019909216919091179055565b6000546001600160a01b031633146114355760405162461bcd60e51b81526004016107ad906137cb565b60788163ffffffff1610156114845760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600d805463ffffffff191663ffffffff92909216919091179055565b6000546001600160a01b031633146114ca5760405162461bcd60e51b81526004016107ad906137cb565b6001600160a01b03811661152f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b6111fb816124d6565b6000546001600160a01b031633146115625760405162461bcd60e51b81526004016107ad906137cb565b60788163ffffffff1610156115b15760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600a805463ffffffff9092166101000264ffffffff0019909216919091179055565b600061077c82846138f3565b600061077c82846138b9565b60006001600160a01b03841661160d576116058383612526565b50600161077c565b611618848484612740565b5060019392505050565b60035460405163d06ca61f60e01b815260009182916001600160a01b039091169063d06ca61f906116599087908790600401613956565b600060405180830381865afa158015611676573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261169e919081019061396f565b9050806116b660018351611f0790919063ffffffff16565b815181106116c6576116c6613830565b60200260200101519150600082116117385760405162461bcd60e51b815260206004820152602f60248201527f546f6b656e4d61726b65743a3a6f7574416d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b60648201526084016107ad565b5092915050565b60006002600e5461175091906138b9565b8411156117965760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b600182156117b257600e546117ab908661286a565b90506117c2565b600e546117bf9086611f07565b90505b600e546117d39061077686846115d3565b95945050505050565b6003546040516307c0329d60e21b815260009182916001600160a01b0390911690631f00ca74906118139087908790600401613956565b600060405180830381865afa158015611830573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611858919081019061396f565b90508060008151811061186d5761186d613830565b60200260200101519150600082116117385760405162461bcd60e51b815260206004820152602e60248201527f546f6b656e4d61726b65743a3a696e416d6f756e742073686f756c642062652060448201526d067726561746572207468616e20360941b60648201526084016107ad565b6000806118eb8585612445565b60008181526009602052604081209192506119068787612876565b509050600080600061191784612a46565b8754929550909350915063ffffffff1660000361196057845463ffffffff191663ffffffff919091161784556001840191909155600290920191909155506000915061077c9050565b84546000906119759063ffffffff1683613a00565b90508863ffffffff168163ffffffff16101561199b57600097505050505050505061077c565b60008163ffffffff168760010154866119b4919061385c565b6119be91906138b9565b905060008263ffffffff168860020154866119d9919061385c565b6119e391906138b9565b90506119fc82670de0b6b3a7640000600160701b612c30565b60008a815260066020526040902055611a2281670de0b6b3a7640000600160701b612c30565b60008a815260076020908152604080832093909355600690522054611a985760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526530547761702960d01b60648201526084016107ad565b600089815260076020526040902054611b025760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526531547761702960d01b60648201526084016107ad565b505050600095865260086020526040909520805463ffffffff1990811663ffffffff909716968717909155845416909417835560018381019190915560029092019290925595945050505050565b600260015403611ba25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016107ad565b6002600155565b60006001600160a01b038216611bc157506001919050565b6002546001600160a01b0390811690831603611bdf57506002919050565b506003919050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b1790529151600092839290881691611c4b9190613a25565b6000604051808303816000865af19150503d8060008114611c88576040519150601f19603f3d011682016040523d82523d6000602084013e611c8d565b606091505b5091509150818015611cb7575080511580611cb7575080806020019051810190611cb79190613a60565b6111c05760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472604482015270185b9cd9995c919c9bdb4819985a5b1959607a1b60648201526084016107ad565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a0810185528154881681526001820154818701819052600283015490981694810194909452600381015460608501526004015460ff161515608084015284529091529091808303611d9e5760009250505061077c565b611da88482610762565b925082600003611db957505061077c565b60006040518060400160405280611dcf89611ba9565b81526001600160a01b0389166020909101528051909150600303611e0157611dfc87846000015186612740565b611e0d565b8251611e0d9085612c9f565b5050509392505050565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a08101855281548816815260018201548187015260028201549097169387019390935260038301546060870181905260049093015460ff16151560808701528452909152909190808303611e9b5760009250505061077c565b611ea58482610762565b925082600003611eb657505061077c565b60006040518060400160405280611ecc89611ba9565b81526001600160a01b0389166020909101528051909150600303611ef957611dfc87846040015186612740565b611e0d836040015185612c9f565b600061077c828461385c565b60006001600160a01b03841615611f2a5783611f37565b6002546001600160a01b03165b905060006001600160a01b03841615611f505783611f5d565b6002546001600160a01b03165b90506000611f6b8383612d79565b509050600e5460105482611f7f91906138f3565b611f8991906138b9565b8411156111c05760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a496e70757420746f6f206c617267650000000060448201526064016107ad565b875160009060030361200057602089015160035461200091906001600160a01b031689612f1d565b606060008a600001516001148061201857508a516002145b905060008a600001516001148061203057508a516002145b90508115801561203e575080155b1561210957866000036120d1576003546040516338ed173960e01b81526001600160a01b03909116906338ed173990612083908d908d908d908b908d90600401613a7d565b6000604051808303816000875af11580156120a2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120ca919081019061396f565b92506122b4565b600354604051634401edf760e11b81526001600160a01b0390911690638803dbee90612083908c908e908d908b908d90600401613a7d565b818015612114575080155b156121d857866000036121a057600354604051637ff36ab560e01b81526001600160a01b0390911690637ff36ab5908c90612159908d908d908b908d90600401613ab9565b60006040518083038185885af1158015612177573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f191682016040526120ca919081019061396f565b60035460405163fb3bdb4160e01b81526001600160a01b039091169063fb3bdb41908c90612159908d908d908b908d90600401613ab9565b811580156121e35750805b156122605786600003612228576003546040516318cbafe560e01b81526001600160a01b03909116906318cbafe590612083908d908d908d908b908d90600401613a7d565b600354604051632512eca560e11b81526001600160a01b0390911690634a25d94a90612083908c908e908d908b908d90600401613a7d565b60405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a4554483c2d3e455448206e6f7420737570706f6044820152631c9d195960e21b60648201526084016107ad565b82600184516122c3919061385c565b815181106122d3576122d3613830565b6020026020010151935050505098975050505050505050565b6000821180156122fc5750600081115b6123485760405162461bcd60e51b815260206004820152601860248201527f546f6b656e4d61726b65743a3a5a65726f20616d6f756e74000000000000000060448201526064016107ad565b6000806123558686613045565b9150915080612365575050610e5b565b60008461237a85670de0b6b3a76400006138f3565b61238491906138b9565b90506000600e54600f548561239991906138f3565b6123a391906138b9565b905060008185116123b55760006123bf565b6123bf828661385c565b905060006123cd83876138db565b90508184101580156123df5750808411155b6124395760405162461bcd60e51b815260206004820152602560248201527f546f6b656e4d61726b65743a3a507269636520646576696174696f6e20746f6f604482015264040d0d2ced60db1b60648201526084016107ad565b50505050505050505050565b6000816001600160a01b0316836001600160a01b031610156124a8576040516bffffffffffffffffffffffff19606085811b8216602084015284901b1660348201526048015b6040516020818303038152906040528051906020012090506112a9565b6040516bffffffffffffffffffffffff19606084811b8216602084015285901b16603482015260480161248b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b804710156125765760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ad565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146125c3576040519150601f19603f3d011682016040523d82523d6000602084013e6125c8565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ad565b6001600160a01b0381166126a05760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084016107ad565b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156126f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061271d9190613aee565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161279c9190613a25565b6000604051808303816000865af19150503d80600081146127d9576040519150601f19603f3d011682016040523d82523d6000602084013e6127de565b606091505b50915091508180156128085750805115806128085750808060200190518101906128089190613a60565b61098a5760405162461bcd60e51b815260206004820152602d60248201527f5472616e7366657248656c7065723a3a736166655472616e736665723a20747260448201526c185b9cd9995c8819985a5b1959609a1b60648201526084016107ad565b600061077c82846138db565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128f29190613aee565b60405163e6a4390560e01b81526001600160a01b038781166004830152868116602483015291925060009183169063e6a4390590604401602060405180830381865afa158015612946573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061296a9190613aee565b90506001600160a01b0381166129c25760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a50616972206e6f74206578697374000000000060448201526064016107ad565b809350836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a279190613aee565b6001600160a01b0316866001600160a01b031614925050509250929050565b6000806000836001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aad9190613b0b565b9250836001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa158015612aed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b119190613b0b565b91506000806000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612b56573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b7a9190613b40565b9250925092504293508363ffffffff168163ffffffff1614612c26576000612ba28286613a00565b905063ffffffff8116612bce6001600160701b038616600160701b600160e01b03607087901b166138b9565b612bd891906138f3565b612be290886138db565b965063ffffffff8116612c0e6001600160701b038516600160701b600160e01b03607088901b166138b9565b612c1891906138f3565b612c2290876138db565b9550505b5050509193909250565b600081600003612c825760405162461bcd60e51b815260206004820152601860248201527f6d756c4469763a206469766973696f6e206279207a65726f000000000000000060448201526064016107ad565b81612c8d84866138f3565b612c9791906138b9565b949350505050565b604080516000808252602082019092526001600160a01b038416908390604051612cc99190613a25565b60006040518083038185875af1925050503d8060008114612d06576040519150601f19603f3d011682016040523d82523d6000602084013e612d0b565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603460248201527f5472616e7366657248656c7065723a3a736166655472616e736665724554483a60448201527308115512081d1c985b9cd9995c8819985a5b195960621b60648201526084016107ad565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612dd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612df59190613aee565b60405163e6a4390560e01b81526001600160a01b0387811660048301528681166024830152919091169063e6a4390590604401602060405180830381865afa158015612e45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e699190613aee565b9050600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612eac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ed09190613b40565b506001600160701b031691506001600160701b03169150856001600160a01b0316876001600160a01b03161015612f0c57819450809350612f13565b8094508193505b5050509250929050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691612f799190613a25565b6000604051808303816000865af19150503d8060008114612fb6576040519150601f19603f3d011682016040523d82523d6000602084013e612fbb565b606091505b5091509150818015612fe5575080511580612fe5575080806020019051810190612fe59190613a60565b61098a5760405162461bcd60e51b815260206004820152602b60248201527f5472616e7366657248656c7065723a3a73616665417070726f76653a2061707060448201526a1c9bdd994819985a5b195960aa1b60648201526084016107ad565b600a54600090819060ff16156132125760006001600160a01b0385161561306c5784613079565b6002546001600160a01b03165b905060006001600160a01b03851615613092578461309f565b6002546001600160a01b03165b905060006130ad8383612445565b90506130cc8383600a60019054906101000a900463ffffffff166118de565b5060008181526008602052604090205463ffffffff168015806130fb5750600082815260066020526040902054155b806131125750600082815260076020526040902054155b1561317d576131218484613314565b600a5490965060009550600160281b900460ff16156131745760408051878152600060208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b5050505061330d565b60006131898585612876565b915050806131a5576000838152600760205260409020546131b5565b6000838152600660205260409020545b600a54909750600160281b900460ff16156132045760408051888152600160208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b60019550505050505061330d565b6001600160a01b038085166000818152600b6020908152604080832094881680845294825280832054938352600c82528083209483529390529190912054600d549193509042906132699063ffffffff16836138db565b10156132b75760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a5072696365206f75746461746564000000000060448201526064016107ad565b600083116133075760405162461bcd60e51b815260206004820152601a60248201527f546f6b656e4d61726b65743a3a4e6f207072696365206665656400000000000060448201526064016107ad565b60009150505b9250929050565b60008060006133238585612d79565b915091506000821180156133375750600081115b6133835760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a4e6f206c69717569646974790000000000000060448201526064016107ad565b8161339682670de0b6b3a76400006138f3565b6117d391906138b9565b600080604083850312156133b357600080fd5b50508035926020909101359150565b6001600160a01b03811681146111fb57600080fd5b80151581146111fb57600080fd5b600080604083850312156133f857600080fd5b8235613403816133c2565b91506020830135613413816133d7565b809150509250929050565b60006020828403121561343057600080fd5b813561077c816133d7565b60008060006060848603121561345057600080fd5b833561345b816133c2565b9250602084013561346b816133c2565b929592945050506040919091013590565b6000806040838503121561348f57600080fd5b823561349a816133c2565b91506020830135613413816133c2565b634e487b7160e01b600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156134e3576134e36134aa565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715613512576135126134aa565b604052919050565b600067ffffffffffffffff821115613534576135346134aa565b5060051b60200190565b600082601f83011261354f57600080fd5b8135602061356461355f8361351a565b6134e9565b82815260059290921b8401810191818101908684111561358357600080fd5b8286015b848110156135a757803561359a816133c2565b8352918301918301613587565b509695505050505050565b600080600080608085870312156135c857600080fd5b84359350602085013567ffffffffffffffff8111156135e657600080fd5b6135f28782880161353e565b949794965050505060408301359260600135919050565b6000806000806080858703121561361f57600080fd5b843567ffffffffffffffff81111561363657600080fd5b6136428782880161353e565b97602087013597506040870135966060013595509350505050565b60006020828403121561366f57600080fd5b5035919050565b60008060008060008060c0878903121561368f57600080fd5b863567ffffffffffffffff8111156136a657600080fd5b6136b289828a0161353e565b9960208901359950604089013598606081013598506080810135975060a0013595509350505050565b6000602082840312156136ed57600080fd5b813561077c816133c2565b600080600083850360e081121561370e57600080fd5b8435613719816133c2565b93506020850135613729816133c2565b925060a0603f198201121561373d57600080fd5b506137466134c0565b6040850135613754816133c2565b815260608501356020820152608085013561376e816133c2565b604082015260a0850135606082015260c085013561378b816133d7565b608082015292959194509192509050565b63ffffffff811681146111fb57600080fd5b6000602082840312156137c057600080fd5b813561077c8161379c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526016908201527514ddd85c149bdd5d195c8e881b1a5b5a5d0818d85b1b60521b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008282101561386e5761386e613846565b500390565b60208082526026908201527f546f6b656e4d61726b65743a3a696e70757420657468206973206e6f7420616360408201526563757261746560d01b606082015260800190565b6000826138d657634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156138ee576138ee613846565b500190565b600081600019048311821515161561390d5761390d613846565b500290565b600081518084526020808501945080840160005b8381101561394b5781516001600160a01b031687529582019590820190600101613926565b509495945050505050565b828152604060208201526000612c976040830184613912565b6000602080838503121561398257600080fd5b825167ffffffffffffffff81111561399957600080fd5b8301601f810185136139aa57600080fd5b80516139b861355f8261351a565b81815260059190911b820183019083810190878311156139d757600080fd5b928401925b828410156139f5578351825292840192908401906139dc565b979650505050505050565b600063ffffffff83811690831681811015613a1d57613a1d613846565b039392505050565b6000825160005b81811015613a465760208186018101518583015201613a2c565b81811115613a55576000828501525b509190910192915050565b600060208284031215613a7257600080fd5b815161077c816133d7565b85815284602082015260a060408201526000613a9c60a0830186613912565b6001600160a01b0394909416606083015250608001529392505050565b848152608060208201526000613ad26080830186613912565b6001600160a01b03949094166040830152506060015292915050565b600060208284031215613b0057600080fd5b815161077c816133c2565b600060208284031215613b1d57600080fd5b5051919050565b80516001600160701b0381168114613b3b57600080fd5b919050565b600080600060608486031215613b5557600080fd5b613b5e84613b24565b9250613b6c60208501613b24565b91506040840151613b7c8161379c565b80915050925092509256fea264697066735822122021432bd84126ed1ba35a6231085a4d08dc5800f9ce4172223ae12b9b187e949f64736f6c634300080e0033",
|
|
822
|
+
"deployedBytecode": "0x6080604052600436106101ef5760003560e01c8063823e1c4e1161010c578063d96661ef1161009a578063f18798fd1161006c578063f18798fd146106a8578063f2fde38b146106c8578063f35cd4e2146106e8578063f620732614610720578063f9c95d461461074257005b8063d96661ef14610615578063ecce1fbd14610635578063ee924d8614610655578063f108f8761461067557005b80639b19251a116100de5780639b19251a1461054d578063aa5d448f1461057d578063aa7993c01461059d578063c04606f0146105d5578063cd27ca82146105f557005b8063823e1c4e146104e2578063868c9abc146104fc57806388697d661461051c5780638da5cb5b1461052f57005b80632d52aa4e116101895780633fc8cef31161015b5780633fc8cef31461041757806348c8cd6c1461044f57806359832f65146104655780635e5ce28114610478578063715018a6146104cd57005b80632d52aa4e146103745780633041949b146103a5578063340ce57f146103c557806339088d85146103e557005b80630d83b1e4116101c25780630d83b1e4146102815780631b153401146102975780632926e5de146102b75780632bd2c18d1461035457005b8062067411146101f8578063016eb8a81461022157806304c8c100146102415780630a99d30f1461026157005b366101f657005b005b34801561020457600080fd5b5061020e60105481565b6040519081526020015b60405180910390f35b34801561022d57600080fd5b5061020e61023c3660046133a0565b610762565b34801561024d57600080fd5b506101f661025c3660046133e5565b610783565b34801561026d57600080fd5b506101f661027c36600461341e565b6107e1565b34801561028d57600080fd5b5061020e600e5481565b3480156102a357600080fd5b506101f66102b236600461343b565b61081e565b3480156102c357600080fd5b5061031b6102d236600461347c565b6005602090815260009283526040808420909152908252902080546001820154600283015460038401546004909401546001600160a01b03938416949293909116919060ff1685565b604080516001600160a01b039687168152602081019590955292909416918301919091526060820152901515608082015260a001610218565b34801561036057600080fd5b5061020e61036f3660046135b2565b61089d565b34801561038057600080fd5b50600a5461039590600160281b900460ff1681565b6040519015158152602001610218565b3480156103b157600080fd5b506101f66103c036600461347c565b6108f2565b3480156103d157600080fd5b506101f66103e036600461343b565b610991565b3480156103f157600080fd5b50600d546104029063ffffffff1681565b60405163ffffffff9091168152602001610218565b34801561042357600080fd5b50600254610437906001600160a01b031681565b6040516001600160a01b039091168152602001610218565b34801561045b57600080fd5b5061020e600f5481565b6101f6610473366004613609565b610a03565b34801561048457600080fd5b5061049861049336600461347c565b610e61565b60408051845163ffffffff1681526020808601519082015293810151908401526060830191909152608082015260a001610218565b3480156104d957600080fd5b506101f6610f7b565b3480156104ee57600080fd5b50600a546103959060ff1681565b34801561050857600080fd5b506101f661051736600461365d565b610fb1565b6101f661052a366004613676565b611035565b34801561053b57600080fd5b506000546001600160a01b0316610437565b34801561055957600080fd5b506103956105683660046136db565b60046020526000908152604090205460ff1681565b34801561058957600080fd5b506101f66105983660046136db565b6111c8565b3480156105a957600080fd5b5061020e6105b836600461347c565b600c60209081526000928352604080842090915290825290205481565b3480156105e157600080fd5b506101f66105f036600461365d565b6111fe565b34801561060157600080fd5b5061020e61061036600461347c565b611283565b34801561062157600080fd5b50600354610437906001600160a01b031681565b34801561064157600080fd5b506101f66106503660046136f8565b6112af565b34801561066157600080fd5b506101f661067036600461341e565b6113c1565b34801561068157600080fd5b5061040261069036600461365d565b60086020526000908152604090205463ffffffff1681565b3480156106b457600080fd5b506101f66106c33660046137ae565b61140b565b3480156106d457600080fd5b506101f66106e33660046136db565b6114a0565b3480156106f457600080fd5b5061020e61070336600461347c565b600b60209081526000928352604080842090915290825290205481565b34801561072c57600080fd5b50600a5461040290610100900463ffffffff1681565b34801561074e57600080fd5b506101f661075d3660046137ae565b611538565b600e5460009061077c9061077685856115d3565b906115df565b9392505050565b6000546001600160a01b031633146107b65760405162461bcd60e51b81526004016107ad906137cb565b60405180910390fd5b6001600160a01b03919091166000908152600460205260409020805460ff1916911515919091179055565b6000546001600160a01b0316331461080b5760405162461bcd60e51b81526004016107ad906137cb565b600a805460ff1916911515919091179055565b6000546001600160a01b031633146108485760405162461bcd60e51b81526004016107ad906137cb565b6108538383836115eb565b6108985760405162461bcd60e51b8152602060048201526016602482015275151bdad95b93585c9ad95d0e8e9cd95b990819985a5b60521b60448201526064016107ad565b505050565b600080808481036108ca576108b28787611622565b91506108c08483600061173f565b91508192506108e8565b6108d487876117dc565b90506108e28482600161173f565b90508092505b5050949350505050565b3360009081526004602052604090205460ff166109215760405162461bcd60e51b81526004016107ad90613800565b60006001600160a01b038316156109385782610945565b6002546001600160a01b03165b905060006001600160a01b0383161561095e578261096b565b6002546001600160a01b03165b905061098a8282600a60019054906101000a900463ffffffff166118de565b5050505050565b3360009081526004602052604090205460ff166109c05760405162461bcd60e51b81526004016107ad90613800565b6001600160a01b039283166000818152600b602090815260408083209590961680835294815285822093909355908152600c825283812092815291905220429055565b610a0b611b50565b333214610a5a5760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a496c6c6567616c2063616c6c6572000000000060448201526064016107ad565b333b15610ab55760405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a50726f686962697420636f6e74726163742063604482015263616c6c7360e01b60648201526084016107ad565b6003845110610b065760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a496e76616c69642070617468206c656e67746860448201526064016107ad565b60006040518060400160405280610b3687600081518110610b2957610b29613830565b6020026020010151611ba9565b815260200186600081518110610b4e57610b4e613830565b60200260200101516001600160a01b0316815250905060006040518060400160405280610b938860018a51610b83919061385c565b81518110610b2957610b29613830565b81526020018760018951610ba7919061385c565b81518110610bb757610bb7613830565b6020908102919091018101516001600160a01b03908116909252848101518216600090815260058252604080822085840151909416825292909152206004015490915060ff16610c495760405162461bcd60e51b815260206004820152601e60248201527f546f6b656e4d61726b65743a3a54726164652070616972206973206f6666000060448201526064016107ad565b8151600303610c6757610c628260200151333088611be7565b610c87565b84341015610c875760405162461bcd60e51b81526004016107ad90613873565b6000610c9c8360200151836020015188611d1d565b90506000610cb38460200151846020015189611e17565b9050610cc981610cc38985611f07565b90611f07565b9650610cde8460200151846020015189611f13565b6000610cea888a611622565b9050610cf88682600061173f565b90506000610d0d86868b858e60008e30611fd8565b905081811015610d5f5760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e4d61726b65743a3a42656c6f77206578706563746174696f6e730060448201526064016107ad565b610d73866020015186602001518b846122ec565b8115610dd457610d88856020015133846115eb565b610dd45760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a73656e6420746f6b656e206661696c0000000060448201526064016107ad565b60208681015186820151604080513381526001600160a01b0393841694810194909452911682820152606082018b90526080820184905260a0820183905260c0820186905260e08201859052517f3f89446e57c894c1c2b3e784015a8d12f0a6a5081790c6cbcaefe633642b4b6f918190036101000190a1505050505050610e5b60018055565b50505050565b610e8b6040518060600160405280600063ffffffff16815260200160008152602001600081525090565b600a546000908190600160281b900460ff16610ec757505060408051606081018252600080825260208201819052918101829052915080610f74565b60006001600160a01b03861615610ede5785610eeb565b6002546001600160a01b03165b905060006001600160a01b03861615610f045785610f11565b6002546001600160a01b03165b90506000610f1f8383612445565b60008181526009602090815260408083208151606081018352815463ffffffff168152600182015481850152600290910154818301529383526006825280832054600790925290912054919750955093505050505b9250925092565b6000546001600160a01b03163314610fa55760405162461bcd60e51b81526004016107ad906137cb565b610faf60006124d6565b565b6000546001600160a01b03163314610fdb5760405162461bcd60e51b81526004016107ad906137cb565b6002600e54610fea91906138b9565b8111156110305760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b601055565b3360009081526004602052604090205460ff166110645760405162461bcd60e51b81526004016107ad90613800565b61106c611b50565b826000036110935761107e8587611622565b935061108c8185600061173f565b93506110ae565b61109d84876117dc565b94506110ab8186600161173f565b94505b6000866000815181106110c3576110c3613830565b60200260200101519050600087600189516110de919061385c565b815181106110ee576110ee613830565b602002602001015190506000604051806040016040528061110e85611ba9565b8152602001846001600160a01b031681525090506000604051806040016040528061113885611ba9565b81526001600160a01b0385166020909101528251909150600303611167576111628433308c611be7565b6111a2565b883410156111875760405162461bcd60e51b81526004016107ad90613873565b883411156111a2576111a23361119d8b3461385c565b612526565b6111b282828b8b8e8c8c33611fd8565b50505050506111c060018055565b505050505050565b6000546001600160a01b031633146111f25760405162461bcd60e51b81526004016107ad906137cb565b6111fb8161263f565b50565b6000546001600160a01b031633146112285760405162461bcd60e51b81526004016107ad906137cb565b6002600e5461123791906138b9565b81111561127e5760405162461bcd60e51b81526020600482015260156024820152740a8ded6cadc9ac2e4d6cae87474a8dede40d0d2ced605b1b60448201526064016107ad565b600f55565b600a54600090600160281b900460ff1661129f575060006112a9565b61077c8383612445565b92915050565b6000546001600160a01b031633146112d95760405162461bcd60e51b81526004016107ad906137cb565b600e54816060015182602001516112f091906138db565b111561133e5760405162461bcd60e51b815260206004820181905260248201527f546f6b656e4d61726b65743a3a66656552617465203c3d20706f696e744d617860448201526064016107ad565b6001600160a01b039283166000908152600560209081526040808320948616835293815290839020825181549086166001600160a01b03199182161782559183015160018201559282015160028401805491909516911617909255606082015160038201556080909101516004909101805491151560ff19909216919091179055565b6000546001600160a01b031633146113eb5760405162461bcd60e51b81526004016107ad906137cb565b600a8054911515600160281b0265ff000000000019909216919091179055565b6000546001600160a01b031633146114355760405162461bcd60e51b81526004016107ad906137cb565b60788163ffffffff1610156114845760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600d805463ffffffff191663ffffffff92909216919091179055565b6000546001600160a01b031633146114ca5760405162461bcd60e51b81526004016107ad906137cb565b6001600160a01b03811661152f5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ad565b6111fb816124d6565b6000546001600160a01b031633146115625760405162461bcd60e51b81526004016107ad906137cb565b60788163ffffffff1610156115b15760405162461bcd60e51b8152602060048201526015602482015274546f6b656e4d61726b65743a3a4d696e203132307360581b60448201526064016107ad565b600a805463ffffffff9092166101000264ffffffff0019909216919091179055565b600061077c82846138f3565b600061077c82846138b9565b60006001600160a01b03841661160d576116058383612526565b50600161077c565b611618848484612740565b5060019392505050565b60035460405163d06ca61f60e01b815260009182916001600160a01b039091169063d06ca61f906116599087908790600401613956565b600060405180830381865afa158015611676573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261169e919081019061396f565b9050806116b660018351611f0790919063ffffffff16565b815181106116c6576116c6613830565b60200260200101519150600082116117385760405162461bcd60e51b815260206004820152602f60248201527f546f6b656e4d61726b65743a3a6f7574416d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b60648201526084016107ad565b5092915050565b60006002600e5461175091906138b9565b8411156117965760405162461bcd60e51b8152602060048201526014602482015273546f6b656e4d61726b65743a3a4d61782035302560601b60448201526064016107ad565b600182156117b257600e546117ab908661286a565b90506117c2565b600e546117bf9086611f07565b90505b600e546117d39061077686846115d3565b95945050505050565b6003546040516307c0329d60e21b815260009182916001600160a01b0390911690631f00ca74906118139087908790600401613956565b600060405180830381865afa158015611830573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611858919081019061396f565b90508060008151811061186d5761186d613830565b60200260200101519150600082116117385760405162461bcd60e51b815260206004820152602e60248201527f546f6b656e4d61726b65743a3a696e416d6f756e742073686f756c642062652060448201526d067726561746572207468616e20360941b60648201526084016107ad565b6000806118eb8585612445565b60008181526009602052604081209192506119068787612876565b509050600080600061191784612a46565b8754929550909350915063ffffffff1660000361196057845463ffffffff191663ffffffff919091161784556001840191909155600290920191909155506000915061077c9050565b84546000906119759063ffffffff1683613a00565b90508863ffffffff168163ffffffff16101561199b57600097505050505050505061077c565b60008163ffffffff168760010154866119b4919061385c565b6119be91906138b9565b905060008263ffffffff168860020154866119d9919061385c565b6119e391906138b9565b90506119fc82670de0b6b3a7640000600160701b612c30565b60008a815260066020526040902055611a2281670de0b6b3a7640000600160701b612c30565b60008a815260076020908152604080832093909355600690522054611a985760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526530547761702960d01b60648201526084016107ad565b600089815260076020526040902054611b025760405162461bcd60e51b815260206004820152602660248201527f546f6b656e4d61726b65743a3a496e76616c696420545741502028707269636560448201526531547761702960d01b60648201526084016107ad565b505050600095865260086020526040909520805463ffffffff1990811663ffffffff909716968717909155845416909417835560018381019190915560029092019290925595945050505050565b600260015403611ba25760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064016107ad565b6002600155565b60006001600160a01b038216611bc157506001919050565b6002546001600160a01b0390811690831603611bdf57506002919050565b506003919050565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b1790529151600092839290881691611c4b9190613a25565b6000604051808303816000865af19150503d8060008114611c88576040519150601f19603f3d011682016040523d82523d6000602084013e611c8d565b606091505b5091509150818015611cb7575080511580611cb7575080806020019051810190611cb79190613a60565b6111c05760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472604482015270185b9cd9995c919c9bdb4819985a5b1959607a1b60648201526084016107ad565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a0810185528154881681526001820154818701819052600283015490981694810194909452600381015460608501526004015460ff161515608084015284529091529091808303611d9e5760009250505061077c565b611da88482610762565b925082600003611db957505061077c565b60006040518060400160405280611dcf89611ba9565b81526001600160a01b0389166020909101528051909150600303611e0157611dfc87846000015186612740565b611e0d565b8251611e0d9085612c9f565b5050509392505050565b6001600160a01b038084166000908152600560209081526040808320868516808552818452828520835160a08101855281548816815260018201548187015260028201549097169387019390935260038301546060870181905260049093015460ff16151560808701528452909152909190808303611e9b5760009250505061077c565b611ea58482610762565b925082600003611eb657505061077c565b60006040518060400160405280611ecc89611ba9565b81526001600160a01b0389166020909101528051909150600303611ef957611dfc87846040015186612740565b611e0d836040015185612c9f565b600061077c828461385c565b60006001600160a01b03841615611f2a5783611f37565b6002546001600160a01b03165b905060006001600160a01b03841615611f505783611f5d565b6002546001600160a01b03165b90506000611f6b8383612d79565b509050600e5460105482611f7f91906138f3565b611f8991906138b9565b8411156111c05760405162461bcd60e51b815260206004820152601c60248201527f546f6b656e4d61726b65743a3a496e70757420746f6f206c617267650000000060448201526064016107ad565b875160009060030361200057602089015160035461200091906001600160a01b031689612f1d565b606060008a600001516001148061201857508a516002145b905060008a600001516001148061203057508a516002145b90508115801561203e575080155b1561210957866000036120d1576003546040516338ed173960e01b81526001600160a01b03909116906338ed173990612083908d908d908d908b908d90600401613a7d565b6000604051808303816000875af11580156120a2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526120ca919081019061396f565b92506122b4565b600354604051634401edf760e11b81526001600160a01b0390911690638803dbee90612083908c908e908d908b908d90600401613a7d565b818015612114575080155b156121d857866000036121a057600354604051637ff36ab560e01b81526001600160a01b0390911690637ff36ab5908c90612159908d908d908b908d90600401613ab9565b60006040518083038185885af1158015612177573d6000803e3d6000fd5b50505050506040513d6000823e601f3d908101601f191682016040526120ca919081019061396f565b60035460405163fb3bdb4160e01b81526001600160a01b039091169063fb3bdb41908c90612159908d908d908b908d90600401613ab9565b811580156121e35750805b156122605786600003612228576003546040516318cbafe560e01b81526001600160a01b03909116906318cbafe590612083908d908d908d908b908d90600401613a7d565b600354604051632512eca560e11b81526001600160a01b0390911690634a25d94a90612083908c908e908d908b908d90600401613a7d565b60405162461bcd60e51b8152602060048201526024808201527f546f6b656e4d61726b65743a3a4554483c2d3e455448206e6f7420737570706f6044820152631c9d195960e21b60648201526084016107ad565b82600184516122c3919061385c565b815181106122d3576122d3613830565b6020026020010151935050505098975050505050505050565b6000821180156122fc5750600081115b6123485760405162461bcd60e51b815260206004820152601860248201527f546f6b656e4d61726b65743a3a5a65726f20616d6f756e74000000000000000060448201526064016107ad565b6000806123558686613045565b9150915080612365575050610e5b565b60008461237a85670de0b6b3a76400006138f3565b61238491906138b9565b90506000600e54600f548561239991906138f3565b6123a391906138b9565b905060008185116123b55760006123bf565b6123bf828661385c565b905060006123cd83876138db565b90508184101580156123df5750808411155b6124395760405162461bcd60e51b815260206004820152602560248201527f546f6b656e4d61726b65743a3a507269636520646576696174696f6e20746f6f604482015264040d0d2ced60db1b60648201526084016107ad565b50505050505050505050565b6000816001600160a01b0316836001600160a01b031610156124a8576040516bffffffffffffffffffffffff19606085811b8216602084015284901b1660348201526048015b6040516020818303038152906040528051906020012090506112a9565b6040516bffffffffffffffffffffffff19606084811b8216602084015285901b16603482015260480161248b565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b804710156125765760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ad565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146125c3576040519150601f19603f3d011682016040523d82523d6000602084013e6125c8565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ad565b6001600160a01b0381166126a05760405162461bcd60e51b815260206004820152602260248201527f546f6b656e4d61726b65743a3a696e76616c696420726f757465206164647265604482015261737360f01b60648201526084016107ad565b600380546001600160a01b0319166001600160a01b038316908117909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156126f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061271d9190613aee565b600280546001600160a01b0319166001600160a01b039290921691909117905550565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b179052915160009283929087169161279c9190613a25565b6000604051808303816000865af19150503d80600081146127d9576040519150601f19603f3d011682016040523d82523d6000602084013e6127de565b606091505b50915091508180156128085750805115806128085750808060200190518101906128089190613a60565b61098a5760405162461bcd60e51b815260206004820152602d60248201527f5472616e7366657248656c7065723a3a736166655472616e736665723a20747260448201526c185b9cd9995c8819985a5b1959609a1b60648201526084016107ad565b600061077c82846138db565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128f29190613aee565b60405163e6a4390560e01b81526001600160a01b038781166004830152868116602483015291925060009183169063e6a4390590604401602060405180830381865afa158015612946573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061296a9190613aee565b90506001600160a01b0381166129c25760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a50616972206e6f74206578697374000000000060448201526064016107ad565b809350836001600160a01b0316630dfe16816040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a03573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a279190613aee565b6001600160a01b0316866001600160a01b031614925050509250929050565b6000806000836001600160a01b0316635909c0d56040518163ffffffff1660e01b8152600401602060405180830381865afa158015612a89573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612aad9190613b0b565b9250836001600160a01b0316635a3d54936040518163ffffffff1660e01b8152600401602060405180830381865afa158015612aed573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b119190613b0b565b91506000806000866001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612b56573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b7a9190613b40565b9250925092504293508363ffffffff168163ffffffff1614612c26576000612ba28286613a00565b905063ffffffff8116612bce6001600160701b038616600160701b600160e01b03607087901b166138b9565b612bd891906138f3565b612be290886138db565b965063ffffffff8116612c0e6001600160701b038516600160701b600160e01b03607088901b166138b9565b612c1891906138f3565b612c2290876138db565b9550505b5050509193909250565b600081600003612c825760405162461bcd60e51b815260206004820152601860248201527f6d756c4469763a206469766973696f6e206279207a65726f000000000000000060448201526064016107ad565b81612c8d84866138f3565b612c9791906138b9565b949350505050565b604080516000808252602082019092526001600160a01b038416908390604051612cc99190613a25565b60006040518083038185875af1925050503d8060008114612d06576040519150601f19603f3d011682016040523d82523d6000602084013e612d0b565b606091505b50509050806108985760405162461bcd60e51b815260206004820152603460248201527f5472616e7366657248656c7065723a3a736166655472616e736665724554483a60448201527308115512081d1c985b9cd9995c8819985a5b195960621b60648201526084016107ad565b6000806000600360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015612dd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612df59190613aee565b60405163e6a4390560e01b81526001600160a01b0387811660048301528681166024830152919091169063e6a4390590604401602060405180830381865afa158015612e45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e699190613aee565b9050600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa158015612eac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ed09190613b40565b506001600160701b031691506001600160701b03169150856001600160a01b0316876001600160a01b03161015612f0c57819450809350612f13565b8094508193505b5050509250929050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663095ea7b360e01b1790529151600092839290871691612f799190613a25565b6000604051808303816000865af19150503d8060008114612fb6576040519150601f19603f3d011682016040523d82523d6000602084013e612fbb565b606091505b5091509150818015612fe5575080511580612fe5575080806020019051810190612fe59190613a60565b61098a5760405162461bcd60e51b815260206004820152602b60248201527f5472616e7366657248656c7065723a3a73616665417070726f76653a2061707060448201526a1c9bdd994819985a5b195960aa1b60648201526084016107ad565b600a54600090819060ff16156132125760006001600160a01b0385161561306c5784613079565b6002546001600160a01b03165b905060006001600160a01b03851615613092578461309f565b6002546001600160a01b03165b905060006130ad8383612445565b90506130cc8383600a60019054906101000a900463ffffffff166118de565b5060008181526008602052604090205463ffffffff168015806130fb5750600082815260066020526040902054155b806131125750600082815260076020526040902054155b1561317d576131218484613314565b600a5490965060009550600160281b900460ff16156131745760408051878152600060208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b5050505061330d565b60006131898585612876565b915050806131a5576000838152600760205260409020546131b5565b6000838152600660205260409020545b600a54909750600160281b900460ff16156132045760408051888152600160208201527ffb3582a7ead56856e76f4dd65cb289a4eab99d7838c6ab0c08ea8dc71c51ae85910160405180910390a15b60019550505050505061330d565b6001600160a01b038085166000818152600b6020908152604080832094881680845294825280832054938352600c82528083209483529390529190912054600d549193509042906132699063ffffffff16836138db565b10156132b75760405162461bcd60e51b815260206004820152601b60248201527f546f6b656e4d61726b65743a3a5072696365206f75746461746564000000000060448201526064016107ad565b600083116133075760405162461bcd60e51b815260206004820152601a60248201527f546f6b656e4d61726b65743a3a4e6f207072696365206665656400000000000060448201526064016107ad565b60009150505b9250929050565b60008060006133238585612d79565b915091506000821180156133375750600081115b6133835760405162461bcd60e51b815260206004820152601960248201527f546f6b656e4d61726b65743a3a4e6f206c69717569646974790000000000000060448201526064016107ad565b8161339682670de0b6b3a76400006138f3565b6117d391906138b9565b600080604083850312156133b357600080fd5b50508035926020909101359150565b6001600160a01b03811681146111fb57600080fd5b80151581146111fb57600080fd5b600080604083850312156133f857600080fd5b8235613403816133c2565b91506020830135613413816133d7565b809150509250929050565b60006020828403121561343057600080fd5b813561077c816133d7565b60008060006060848603121561345057600080fd5b833561345b816133c2565b9250602084013561346b816133c2565b929592945050506040919091013590565b6000806040838503121561348f57600080fd5b823561349a816133c2565b91506020830135613413816133c2565b634e487b7160e01b600052604160045260246000fd5b60405160a0810167ffffffffffffffff811182821017156134e3576134e36134aa565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715613512576135126134aa565b604052919050565b600067ffffffffffffffff821115613534576135346134aa565b5060051b60200190565b600082601f83011261354f57600080fd5b8135602061356461355f8361351a565b6134e9565b82815260059290921b8401810191818101908684111561358357600080fd5b8286015b848110156135a757803561359a816133c2565b8352918301918301613587565b509695505050505050565b600080600080608085870312156135c857600080fd5b84359350602085013567ffffffffffffffff8111156135e657600080fd5b6135f28782880161353e565b949794965050505060408301359260600135919050565b6000806000806080858703121561361f57600080fd5b843567ffffffffffffffff81111561363657600080fd5b6136428782880161353e565b97602087013597506040870135966060013595509350505050565b60006020828403121561366f57600080fd5b5035919050565b60008060008060008060c0878903121561368f57600080fd5b863567ffffffffffffffff8111156136a657600080fd5b6136b289828a0161353e565b9960208901359950604089013598606081013598506080810135975060a0013595509350505050565b6000602082840312156136ed57600080fd5b813561077c816133c2565b600080600083850360e081121561370e57600080fd5b8435613719816133c2565b93506020850135613729816133c2565b925060a0603f198201121561373d57600080fd5b506137466134c0565b6040850135613754816133c2565b815260608501356020820152608085013561376e816133c2565b604082015260a0850135606082015260c085013561378b816133d7565b608082015292959194509192509050565b63ffffffff811681146111fb57600080fd5b6000602082840312156137c057600080fd5b813561077c8161379c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526016908201527514ddd85c149bdd5d195c8e881b1a5b5a5d0818d85b1b60521b604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60008282101561386e5761386e613846565b500390565b60208082526026908201527f546f6b656e4d61726b65743a3a696e70757420657468206973206e6f7420616360408201526563757261746560d01b606082015260800190565b6000826138d657634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156138ee576138ee613846565b500190565b600081600019048311821515161561390d5761390d613846565b500290565b600081518084526020808501945080840160005b8381101561394b5781516001600160a01b031687529582019590820190600101613926565b509495945050505050565b828152604060208201526000612c976040830184613912565b6000602080838503121561398257600080fd5b825167ffffffffffffffff81111561399957600080fd5b8301601f810185136139aa57600080fd5b80516139b861355f8261351a565b81815260059190911b820183019083810190878311156139d757600080fd5b928401925b828410156139f5578351825292840192908401906139dc565b979650505050505050565b600063ffffffff83811690831681811015613a1d57613a1d613846565b039392505050565b6000825160005b81811015613a465760208186018101518583015201613a2c565b81811115613a55576000828501525b509190910192915050565b600060208284031215613a7257600080fd5b815161077c816133d7565b85815284602082015260a060408201526000613a9c60a0830186613912565b6001600160a01b0394909416606083015250608001529392505050565b848152608060208201526000613ad26080830186613912565b6001600160a01b03949094166040830152506060015292915050565b600060208284031215613b0057600080fd5b815161077c816133c2565b600060208284031215613b1d57600080fd5b5051919050565b80516001600160701b0381168114613b3b57600080fd5b919050565b600080600060608486031215613b5557600080fd5b613b5e84613b24565b9250613b6c60208501613b24565b91506040840151613b7c8161379c565b80915050925092509256fea264697066735822122021432bd84126ed1ba35a6231085a4d08dc5800f9ce4172223ae12b9b187e949f64736f6c634300080e0033",
|
|
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)
|