@orbs-network/twap 1.5.9-0 → 1.5.11-0
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/dist/artifacts/contracts/TWAP.sol/TWAP.json +6 -2
- package/dist/artifacts/contracts/periphery/Lens.sol/Lens.json +3 -3
- package/dist/src/configs.d.ts +5 -2
- package/dist/src/configs.js +3 -7
- package/dist/src/lib.d.ts +5 -4
- package/dist/src/lib.js +13 -7
- package/dist/src/paraswap.d.ts +4 -4
- package/dist/src/paraswap.js +11 -5
- package/dist/typechain-hardhat/contracts/periphery/Taker.d.ts +2 -14
- package/package.json +1 -1
|
@@ -864,10 +864,14 @@
|
|
|
864
864
|
],
|
|
865
865
|
"stateMutability": "view",
|
|
866
866
|
"type": "function"
|
|
867
|
+
},
|
|
868
|
+
{
|
|
869
|
+
"stateMutability": "payable",
|
|
870
|
+
"type": "receive"
|
|
867
871
|
}
|
|
868
872
|
],
|
|
869
|
-
"bytecode": "0x60a06040523480156200001157600080fd5b506040516200338f3803806200338f83398101604081905262000034916200004b565b60016000556001600160a01b03166080526200007d565b6000602082840312156200005e57600080fd5b81516001600160a01b03811681146200007657600080fd5b9392505050565b6080516132e1620000ae6000396000818161027201528181610ca501528181611cb8015261268d01526132e16000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806356f65bee116100ad578063a0b94e0b11610071578063a0b94e0b14610243578063a3d890b614610263578063c11a463d1461026d578063f58e65b8146102ac578063ffa1ad74146102bf57600080fd5b806356f65bee146102035780636352c2621461020b578063724f27ee1461021e578063805d835d1461022657806385e471d51461023057600080fd5b80633ab22f01116100f45780633ab22f01146101ad57806342d21ef7146101c0578063454b1580146101d35780634c125e79146101db57806352e8b288146101f057600080fd5b80630392c34a146101265780631116fd041461014f578063112017a7146101745780631f7b6d3214610191575b600080fd5b610139610134366004612a9b565b6102d9565b6040516101469190612ab6565b60405180910390f35b61016261015d366004612b03565b610377565b60405161014696959493929190612ca7565b61017c600a81565b60405163ffffffff9091168152602001610146565b6001545b6040516001600160401b039091168152602001610146565b6101956101bb366004612cf3565b610552565b61017c6101ce366004612b03565b61059e565b61017c600581565b6101ee6101e9366004612d34565b6105d8565b005b6101ee6101fe366004612d34565b6108fc565b61017c600181565b610195610219366004612d63565b610c68565b61017c600281565b61017c620186a081565b6101ee61023e366004612d34565b611289565b610256610251366004612d34565b611465565b6040516101469190612df6565b61017c62018a8881565b6102947f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610146565b6101ee6102ba366004612e63565b6116c2565b6102c7600381565b60405160ff9091168152602001610146565b6001600160a01b03811660009081526003602090815260409182902080548351818402810184019094528084526060939283018282801561036b57602002820191906000526020600020906000905b82829054906101000a90046001600160401b03166001600160401b0316815260200190600801906020826007010492830192600103820291508084116103285790505b50505050509050919050565b6001818154811061038757600080fd5b6000918252602091829020600f90910201805460018201546040805161016081018252600285015463ffffffff81811683526401000000008083048216848a0152600160401b808404831685870152600160601b93849004831660608087019190915260038a01546001600160a01b0390811660808089019190915260048c0154821660a0808a019190915260058d0154831660c0808b019190915260068e0154841660e08b015260078e01546101008b015260088e01546101208b015260098e01546101408b01528a519081018b52600a8e018054808a1683529790970484169e81019e909e52600b8d0154909216988d0198909852600c8b0154918c0191909152600d8a0154968b0196909652600e890180546001600160401b038a169c5091890484169a94909804909216979596939594929390928401916104cb90612f0f565b80601f01602080910402602001604051908101604052809291908181526020018280546104f790612f0f565b80156105445780601f1061051957610100808354040283529160200191610544565b820191906000526020600020905b81548152906001019060200180831161052757829003601f168201915b505050505081525050905086565b6003602052816000526040600020818154811061056e57600080fd5b9060005260206000209060049182820401919006600802915091509054906101000a90046001600160401b031681565b600281815481106105ae57600080fd5b9060005260206000209060089182820401919006600402915054906101000a900463ffffffff1681565b6105e06119f0565b60006105eb82611465565b90508060800151608001516001600160a01b0316336001600160a01b0316146106435760405162461bcd60e51b815260206004820152600560248201526436b0b5b2b960d91b60448201526064015b60405180910390fd5b60016002836001600160401b03168154811061066157610661612f49565b90600052602060002090600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055506001816020019063ffffffff16908163ffffffff1681525050806001836001600160401b0316815481106106ca576106ca612f49565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e8401906108969082612fbb565b505050608080840151015183516040513381526001600160a01b0390921693506001600160401b031691507f84433a3c591ac98de0b89e7fc7a3d5d6705a3cbec760e7d529439c65d6feb3099060200160405180910390a3506108f96001600055565b50565b6109046119f0565b600061090f82611465565b905060008060008061092085611a49565b929650909450925090506109348584611e1c565b60808581015181015160608088015160408051338152602081018990528082018890529283018690529382015291516001600160a01b03878116939216916001600160401b038a16917fc7529bc0224b03ba593d84e2064baeac956a4221ca93d37af0f1810ad17df7a99181900360a00190a46109b085611e74565b600003610a6a57600280876001600160401b0316815481106109d4576109d4612f49565b60009182526020918290206008820401805460079092166004026101000a63ffffffff81810219909316949092169190910292909217909155600286820152608080870151015186516040513381526001600160a01b03888116949316926001600160401b03909216917fd08d3326dcd14f1021feb19d05834c4f6d0b7ff1fecac35981f24fd5f73873c5910160405180910390a45b846001876001600160401b031681548110610a8757610a87612f49565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190610c539082612fbb565b50505090505050505050506108f96001600055565b6000610c726119f0565b6001600160a01b03891615801590610c9c5750876001600160a01b0316896001600160a01b031614155b8015610cec57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b0316141580610cec57506001600160a01b03881615155b8015610cf85750600087115b8015610d045750600086115b8015610d105750868611155b8015610d1c5750600085115b8015610d2d5750428463ffffffff16115b8015610d405750600a63ffffffff841610155b610d755760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161063a565b6000610d91610d8360015490565b8686868f8f8f8f8f8f611ea7565b9050610d9c81612096565b60018054808201825560009190915281517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600f90920291820180546020808601516040808801516001600160401b039096166001600160601b031990941693909317600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b97841688021786556060808a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf78a01556080808b015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf88c018054838a0151848c015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a1690980290961695909517908716909a0299909917909255878201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf98a0180546001600160a01b03199081166001600160a01b039384161790915560a0808b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfa8d018054841691851691909117905560c08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfb8d018054841691851691909117905560e08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfc8d01805484169185169190911790556101008b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfd8d01556101208b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfe8d0155610140909a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cff8c0155898c015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d008d01805499830151919098166001600160c01b031990991698909817978316909502969096178555958301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d018a018054909616961695909517909355928301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d02870155908201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d03860155928101518594929391927fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d0401906111449082612fbb565b505050505060028590806001815401808255809150506001900390600052602060002090600891828204019190066004029091909190916101000a81548163ffffffff021916908363ffffffff16021790555060036000336001600160a01b03166001600160a01b03168152602001908152602001600020816000015190806001815401808255809150506001900390600052602060002090600491828204019190066008029091909190916101000a8154816001600160401b0302191690836001600160401b031602179055508a6001600160a01b0316336001600160a01b031682600001516001600160401b03167f831701c9313a778469897164a19ddd1867959a91eada7cc21adf0936761c83708460800151604051611267919061307a565b60405180910390a451905061127c6001600055565b9998505050505050505050565b6112916119f0565b600061129c82611465565b9050806020015163ffffffff1642106112c75760405162461bcd60e51b815260040161063a90613089565b80608001516060015181604001516112df91906130bf565b63ffffffff1642116113205760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161063a565b61132981611e74565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa158015611383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a791906130e3565b108061143157506113b781611e74565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801561140b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142f91906130e3565b105b6106435760405162461bcd60e51b81526020600482015260056024820152641d985b1a5960da1b604482015260640161063a565b61146d6129a3565b6001546001600160401b0316826001600160401b0316106114bd5760405162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b604482015260640161063a565b6001826001600160401b0316815481106114d9576114d9612f49565b60009182526020918290206040805160c08082018352600f90940290920180546001600160401b038116845263ffffffff600160401b808304821686890152600160601b928390048216868601526001840154606080880191909152855161016081018752600286015480851682526401000000008082048616838d01529381048516828901529490940483168482015260038501546001600160a01b039081166080868101919091526004870154821660a08088019190915260058801548316878c01526006880154831660e0880152600788015461010088015260088801546101208801526009880154610140880152818a01969096528751998a018852600a870180549586168b5293909404811699890199909952600b85015490981694870194909452600c83015496860196909652600d82015495850195909552600e8101805493959194828701949093928401919061163690612f0f565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612f0f565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050509190925250505090525092915050565b6116ca6119f0565b6001600160a01b038516158015906116ea5750620186a063ffffffff8416105b61171f5760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161063a565b600061172a87611465565b9050600061173c82888888888861221c565b905061178687828887878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525089969594939250506124bb9050565b816001896001600160401b0316815481106117a3576117a3612f49565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e84019061196f9082612fbb565b505050905050866001600160a01b03168260800151608001516001600160a01b031683600001516001600160401b03167fc6c7dd24446d66051e106d8289c1e1e3657b16ae283f4824b89417b1ec39664f888660a001516040516119d49291906130fc565b60405180910390a450506119e86001600055565b505050505050565b600260005403611a425760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161063a565b6002600055565b6000806000808460a00151602001516001600160a01b0316336001600160a01b031614611aa05760405162461bcd60e51b81526020600482015260056024820152643a30b5b2b960d91b604482015260640161063a565b846020015163ffffffff164210611ac95760405162461bcd60e51b815260040161063a90613089565b60808501516040015160a086015151611ae291906130bf565b63ffffffff164211611b225760405162461bcd60e51b81526020600482015260096024820152686269642064656c617960b81b604482015260640161063a565b5060a08401516040810151608090910151909350611b3f85611e74565b92506000611b4c86612524565b6080808801519081015160c090910151919250611b74916001600160a01b0316903087612540565b608086015160c001516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611bc2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611be691906130e3565b608087015160c00151909450611c06906001600160a01b031686866125b1565b846001600160a01b0316632506c018876080015160c00151611c2789612663565b87611c32878761311b565b8b60a0015160a001516040518663ffffffff1660e01b8152600401611c5b95949392919061312e565b600060405180830381600087803b158015611c7557600080fd5b505af1158015611c89573d6000803e3d6000fd5b50505050608086015160e001516001600160a01b0316611d1d57604051632e1a7d4d60e01b81524760048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d90602401600060405180830381600087803b158015611d0457600080fd5b505af1158015611d18573d6000803e3d6000fd5b505050505b611d2686612663565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015611d6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d9091906130e3565b9250611d9c8284613168565b925080831015611dd85760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161063a565b611dfe8660a001516020015183611dee89612663565b6001600160a01b031691906126b2565b611e1486608001516080015184611dee89612663565b509193509193565b63ffffffff4210611e3f5760405162461bcd60e51b815260040161063a9061317b565b8160a001611e4b612a31565b905263ffffffff42166040830152606082018051829190611e6d90839061311b565b9052505050565b6000611ea182608001516101200151836060015184608001516101000151611e9c9190613168565b6126e7565b92915050565b611eaf6129a3565b63ffffffff4210611ed25760405162461bcd60e51b815260040161063a9061317b565b63ffffffff8a8116108015611eec575063ffffffff898116105b8015611efd575063ffffffff888116105b611f325760405162461bcd60e51b81526020600482015260066024820152653ab4b73a199960d11b604482015260640161063a565b6040518060c001604052808c6001600160401b031681526020018b63ffffffff168152602001600063ffffffff168152602001600081526020016040518061016001604052804263ffffffff1681526020018d63ffffffff1681526020018c63ffffffff1681526020018b63ffffffff168152602001336001600160a01b031681526020018a6001600160a01b03168152602001896001600160a01b03168152602001886001600160a01b031681526020018781526020018681526020018581525081526020016040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160006001600160401b0381111561205857612058612f5f565b6040519080825280601f01601f191660200182016040528015612082576020820181803683370190505b50905290529b9a5050505050505050505050565b61209f81611e74565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa1580156120f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061211d91906130e3565b101561215d5760405162461bcd60e51b815260206004820152600f60248201526e6d616b657220616c6c6f77616e636560881b604482015260640161063a565b61216681611e74565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156121ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121de91906130e3565b10156108f95760405162461bcd60e51b815260206004820152600d60248201526c6d616b65722062616c616e636560981b604482015260640161063a565b6000866020015163ffffffff1642106122475760405162461bcd60e51b815260040161063a90613089565b866080015160600151876040015161225f91906130bf565b63ffffffff1642116122a05760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161063a565b608087015160a001516001600160a01b031615806122d75750856001600160a01b0316876080015160a001516001600160a01b0316145b61230e5760405162461bcd60e51b815260206004820152600860248201526765786368616e676560c01b604482015260640161063a565b856001600160a01b031663650967b5886080015160c0015161232f8a612663565b6123388b611e74565b87876040518663ffffffff1660e01b815260040161235a959493929190613199565b602060405180830381865afa158015612377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061239b91906130e3565b9050620186a06123b163ffffffff8616836131ed565b6123bb919061320c565b6123c59082613168565b90506123d18582613168565b60a088015160600151909150620186a0906123f09062018a88906131ed565b6123fa919061320c565b81118061243057506005876080015160400151612417919061322e565b60a08801515161242791906130bf565b63ffffffff1642115b6124665760405162461bcd60e51b81526020600482015260076024820152661b1bddc8189a5960ca1b604482015260640161063a565b61246f876126ff565b8110156124a85760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161063a565b6124b187612096565b9695505050505050565b63ffffffff42106124de5760405162461bcd60e51b815260040161063a9061317b565b6040805160c08101825263ffffffff421681523360208201526001600160a01b0395909516908501526060840192909252608083015260a0808301919091529190910152565b6000611ea18260a001516060015161253b846126ff565b612732565b6040516001600160a01b03808516602483015283166044820152606481018290526125ab9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612741565b50505050565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa158015612602573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061262691906130e3565b612630919061311b565b6040516001600160a01b0385166024820152604481018290529091506125ab90859063095ea7b360e01b90606401612574565b608081015160e001516000906001600160a01b03161561268b57816080015160e00151611ea1565b7f000000000000000000000000000000000000000000000000000000000000000092915050565b6040516001600160a01b0383166024820152604481018290526126e290849063a9059cbb60e01b90606401612574565b505050565b60008183106126f657816126f8565b825b9392505050565b60008160800151610120015161271483611e74565b8360800151610140015161272891906131ed565b611ea1919061320c565b60008183116126f657816126f8565b6000612796826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166128139092919063ffffffff16565b8051909150156126e257808060200190518101906127b4919061325a565b6126e25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161063a565b6060612822848460008561282a565b949350505050565b60608247101561288b5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161063a565b600080866001600160a01b031685876040516128a7919061327c565b60006040518083038185875af1925050503d80600081146128e4576040519150601f19603f3d011682016040523d82523d6000602084013e6128e9565b606091505b50915091506128fa87838387612905565b979650505050505050565b6060831561297457825160000361296d576001600160a01b0385163b61296d5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161063a565b5081612822565b61282283838151156129895781518083602001fd5b8060405162461bcd60e51b815260040161063a9190613298565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001612a2c612a31565b905290565b6040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b80356001600160a01b0381168114612a9657600080fd5b919050565b600060208284031215612aad57600080fd5b6126f882612a7f565b6020808252825182820181905260009190848201906040850190845b81811015612af75783516001600160401b031683529284019291840191600101612ad2565b50909695505050505050565b600060208284031215612b1557600080fd5b5035919050565b805163ffffffff1682526020810151612b3d602084018263ffffffff169052565b506040810151612b55604084018263ffffffff169052565b506060810151612b6d606084018263ffffffff169052565b506080810151612b8860808401826001600160a01b03169052565b5060a0810151612ba360a08401826001600160a01b03169052565b5060c0810151612bbe60c08401826001600160a01b03169052565b5060e0810151612bd960e08401826001600160a01b03169052565b506101008181015190830152610120808201519083015261014090810151910152565b60005b83811015612c17578181015183820152602001612bff565b50506000910152565b60008151808452612c38816020860160208601612bfc565b601f01601f19169290920160200192915050565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a085015261282260c0850182612c20565b6001600160401b038716815263ffffffff868116602083015285166040820152606081018490526000610200612ce06080840186612b1c565b806101e084015261127c81840185612c4c565b60008060408385031215612d0657600080fd5b612d0f83612a7f565b946020939093013593505050565b80356001600160401b0381168114612a9657600080fd5b600060208284031215612d4657600080fd5b6126f882612d1d565b803563ffffffff81168114612a9657600080fd5b60008060008060008060008060006101208a8c031215612d8257600080fd5b612d8b8a612a7f565b9850612d9960208b01612a7f565b9750612da760408b01612a7f565b965060608a0135955060808a0135945060a08a01359350612dca60c08b01612d4f565b9250612dd860e08b01612d4f565b9150612de76101008b01612d4f565b90509295985092959850929598565b602081526001600160401b0382511660208201526000602083015163ffffffff80821660408501528060408601511660608501525050606083015160808301526080830151612e4860a0840182612b1c565b5060a083015161020083810152612822610220840182612c4c565b60008060008060008060a08789031215612e7c57600080fd5b612e8587612d1d565b9550612e9360208801612a7f565b945060408701359350612ea860608801612d4f565b925060808701356001600160401b0380821115612ec457600080fd5b818901915089601f830112612ed857600080fd5b813581811115612ee757600080fd5b8a6020828501011115612ef957600080fd5b6020830194508093505050509295509295509295565b600181811c90821680612f2357607f821691505b602082108103612f4357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b601f8211156126e257600081815260208120601f850160051c81016020861015612f9c5750805b601f850160051c820191505b818110156119e857828155600101612fa8565b81516001600160401b03811115612fd457612fd4612f5f565b612fe881612fe28454612f0f565b84612f75565b602080601f83116001811461301d57600084156130055750858301515b600019600386901b1c1916600185901b1785556119e8565b600085815260208120601f198616915b8281101561304c5788860151825594840194600190910190840161302d565b508582101561306a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6101608101611ea18284612b1c565b60208082526006908201526573746174757360d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b63ffffffff8181168382160190808211156130dc576130dc6130a9565b5092915050565b6000602082840312156130f557600080fd5b5051919050565b63ffffffff831681526040602082015260006128226040830184612c4c565b80820180821115611ea157611ea16130a9565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906128fa90830184612c20565b81810381811115611ea157611ea16130a9565b60208082526004908201526374696d6560e01b604082015260600190565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6000816000190483118215151615613207576132076130a9565b500290565b60008261322957634e487b7160e01b600052601260045260246000fd5b500490565b600063ffffffff80831681851681830481118215151615613251576132516130a9565b02949350505050565b60006020828403121561326c57600080fd5b815180151581146126f857600080fd5b6000825161328e818460208701612bfc565b9190910192915050565b6020815260006126f86020830184612c2056fea26469706673582212202cdd791d76f3d8cb9b7a157acbbd5c319efe6ab58db79cff02b79f12a6ca4bfb64736f6c63430008100033",
|
|
870
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101215760003560e01c806356f65bee116100ad578063a0b94e0b11610071578063a0b94e0b14610243578063a3d890b614610263578063c11a463d1461026d578063f58e65b8146102ac578063ffa1ad74146102bf57600080fd5b806356f65bee146102035780636352c2621461020b578063724f27ee1461021e578063805d835d1461022657806385e471d51461023057600080fd5b80633ab22f01116100f45780633ab22f01146101ad57806342d21ef7146101c0578063454b1580146101d35780634c125e79146101db57806352e8b288146101f057600080fd5b80630392c34a146101265780631116fd041461014f578063112017a7146101745780631f7b6d3214610191575b600080fd5b610139610134366004612a9b565b6102d9565b6040516101469190612ab6565b60405180910390f35b61016261015d366004612b03565b610377565b60405161014696959493929190612ca7565b61017c600a81565b60405163ffffffff9091168152602001610146565b6001545b6040516001600160401b039091168152602001610146565b6101956101bb366004612cf3565b610552565b61017c6101ce366004612b03565b61059e565b61017c600581565b6101ee6101e9366004612d34565b6105d8565b005b6101ee6101fe366004612d34565b6108fc565b61017c600181565b610195610219366004612d63565b610c68565b61017c600281565b61017c620186a081565b6101ee61023e366004612d34565b611289565b610256610251366004612d34565b611465565b6040516101469190612df6565b61017c62018a8881565b6102947f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610146565b6101ee6102ba366004612e63565b6116c2565b6102c7600381565b60405160ff9091168152602001610146565b6001600160a01b03811660009081526003602090815260409182902080548351818402810184019094528084526060939283018282801561036b57602002820191906000526020600020906000905b82829054906101000a90046001600160401b03166001600160401b0316815260200190600801906020826007010492830192600103820291508084116103285790505b50505050509050919050565b6001818154811061038757600080fd5b6000918252602091829020600f90910201805460018201546040805161016081018252600285015463ffffffff81811683526401000000008083048216848a0152600160401b808404831685870152600160601b93849004831660608087019190915260038a01546001600160a01b0390811660808089019190915260048c0154821660a0808a019190915260058d0154831660c0808b019190915260068e0154841660e08b015260078e01546101008b015260088e01546101208b015260098e01546101408b01528a519081018b52600a8e018054808a1683529790970484169e81019e909e52600b8d0154909216988d0198909852600c8b0154918c0191909152600d8a0154968b0196909652600e890180546001600160401b038a169c5091890484169a94909804909216979596939594929390928401916104cb90612f0f565b80601f01602080910402602001604051908101604052809291908181526020018280546104f790612f0f565b80156105445780601f1061051957610100808354040283529160200191610544565b820191906000526020600020905b81548152906001019060200180831161052757829003601f168201915b505050505081525050905086565b6003602052816000526040600020818154811061056e57600080fd5b9060005260206000209060049182820401919006600802915091509054906101000a90046001600160401b031681565b600281815481106105ae57600080fd5b9060005260206000209060089182820401919006600402915054906101000a900463ffffffff1681565b6105e06119f0565b60006105eb82611465565b90508060800151608001516001600160a01b0316336001600160a01b0316146106435760405162461bcd60e51b815260206004820152600560248201526436b0b5b2b960d91b60448201526064015b60405180910390fd5b60016002836001600160401b03168154811061066157610661612f49565b90600052602060002090600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055506001816020019063ffffffff16908163ffffffff1681525050806001836001600160401b0316815481106106ca576106ca612f49565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e8401906108969082612fbb565b505050608080840151015183516040513381526001600160a01b0390921693506001600160401b031691507f84433a3c591ac98de0b89e7fc7a3d5d6705a3cbec760e7d529439c65d6feb3099060200160405180910390a3506108f96001600055565b50565b6109046119f0565b600061090f82611465565b905060008060008061092085611a49565b929650909450925090506109348584611e1c565b60808581015181015160608088015160408051338152602081018990528082018890529283018690529382015291516001600160a01b03878116939216916001600160401b038a16917fc7529bc0224b03ba593d84e2064baeac956a4221ca93d37af0f1810ad17df7a99181900360a00190a46109b085611e74565b600003610a6a57600280876001600160401b0316815481106109d4576109d4612f49565b60009182526020918290206008820401805460079092166004026101000a63ffffffff81810219909316949092169190910292909217909155600286820152608080870151015186516040513381526001600160a01b03888116949316926001600160401b03909216917fd08d3326dcd14f1021feb19d05834c4f6d0b7ff1fecac35981f24fd5f73873c5910160405180910390a45b846001876001600160401b031681548110610a8757610a87612f49565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190610c539082612fbb565b50505090505050505050506108f96001600055565b6000610c726119f0565b6001600160a01b03891615801590610c9c5750876001600160a01b0316896001600160a01b031614155b8015610cec57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b0316141580610cec57506001600160a01b03881615155b8015610cf85750600087115b8015610d045750600086115b8015610d105750868611155b8015610d1c5750600085115b8015610d2d5750428463ffffffff16115b8015610d405750600a63ffffffff841610155b610d755760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161063a565b6000610d91610d8360015490565b8686868f8f8f8f8f8f611ea7565b9050610d9c81612096565b60018054808201825560009190915281517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600f90920291820180546020808601516040808801516001600160401b039096166001600160601b031990941693909317600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b97841688021786556060808a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf78a01556080808b015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf88c018054838a0151848c015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a1690980290961695909517908716909a0299909917909255878201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf98a0180546001600160a01b03199081166001600160a01b039384161790915560a0808b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfa8d018054841691851691909117905560c08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfb8d018054841691851691909117905560e08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfc8d01805484169185169190911790556101008b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfd8d01556101208b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfe8d0155610140909a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cff8c0155898c015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d008d01805499830151919098166001600160c01b031990991698909817978316909502969096178555958301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d018a018054909616961695909517909355928301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d02870155908201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d03860155928101518594929391927fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d0401906111449082612fbb565b505050505060028590806001815401808255809150506001900390600052602060002090600891828204019190066004029091909190916101000a81548163ffffffff021916908363ffffffff16021790555060036000336001600160a01b03166001600160a01b03168152602001908152602001600020816000015190806001815401808255809150506001900390600052602060002090600491828204019190066008029091909190916101000a8154816001600160401b0302191690836001600160401b031602179055508a6001600160a01b0316336001600160a01b031682600001516001600160401b03167f831701c9313a778469897164a19ddd1867959a91eada7cc21adf0936761c83708460800151604051611267919061307a565b60405180910390a451905061127c6001600055565b9998505050505050505050565b6112916119f0565b600061129c82611465565b9050806020015163ffffffff1642106112c75760405162461bcd60e51b815260040161063a90613089565b80608001516060015181604001516112df91906130bf565b63ffffffff1642116113205760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161063a565b61132981611e74565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa158015611383573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a791906130e3565b108061143157506113b781611e74565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801561140b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061142f91906130e3565b105b6106435760405162461bcd60e51b81526020600482015260056024820152641d985b1a5960da1b604482015260640161063a565b61146d6129a3565b6001546001600160401b0316826001600160401b0316106114bd5760405162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b604482015260640161063a565b6001826001600160401b0316815481106114d9576114d9612f49565b60009182526020918290206040805160c08082018352600f90940290920180546001600160401b038116845263ffffffff600160401b808304821686890152600160601b928390048216868601526001840154606080880191909152855161016081018752600286015480851682526401000000008082048616838d01529381048516828901529490940483168482015260038501546001600160a01b039081166080868101919091526004870154821660a08088019190915260058801548316878c01526006880154831660e0880152600788015461010088015260088801546101208801526009880154610140880152818a01969096528751998a018852600a870180549586168b5293909404811699890199909952600b85015490981694870194909452600c83015496860196909652600d82015495850195909552600e8101805493959194828701949093928401919061163690612f0f565b80601f016020809104026020016040519081016040528092919081815260200182805461166290612f0f565b80156116af5780601f10611684576101008083540402835291602001916116af565b820191906000526020600020905b81548152906001019060200180831161169257829003601f168201915b5050509190925250505090525092915050565b6116ca6119f0565b6001600160a01b038516158015906116ea5750620186a063ffffffff8416105b61171f5760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161063a565b600061172a87611465565b9050600061173c82888888888861221c565b905061178687828887878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525089969594939250506124bb9050565b816001896001600160401b0316815481106117a3576117a3612f49565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e84019061196f9082612fbb565b505050905050866001600160a01b03168260800151608001516001600160a01b031683600001516001600160401b03167fc6c7dd24446d66051e106d8289c1e1e3657b16ae283f4824b89417b1ec39664f888660a001516040516119d49291906130fc565b60405180910390a450506119e86001600055565b505050505050565b600260005403611a425760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161063a565b6002600055565b6000806000808460a00151602001516001600160a01b0316336001600160a01b031614611aa05760405162461bcd60e51b81526020600482015260056024820152643a30b5b2b960d91b604482015260640161063a565b846020015163ffffffff164210611ac95760405162461bcd60e51b815260040161063a90613089565b60808501516040015160a086015151611ae291906130bf565b63ffffffff164211611b225760405162461bcd60e51b81526020600482015260096024820152686269642064656c617960b81b604482015260640161063a565b5060a08401516040810151608090910151909350611b3f85611e74565b92506000611b4c86612524565b6080808801519081015160c090910151919250611b74916001600160a01b0316903087612540565b608086015160c001516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611bc2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611be691906130e3565b608087015160c00151909450611c06906001600160a01b031686866125b1565b846001600160a01b0316632506c018876080015160c00151611c2789612663565b87611c32878761311b565b8b60a0015160a001516040518663ffffffff1660e01b8152600401611c5b95949392919061312e565b600060405180830381600087803b158015611c7557600080fd5b505af1158015611c89573d6000803e3d6000fd5b50505050608086015160e001516001600160a01b0316611d1d57604051632e1a7d4d60e01b81524760048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d90602401600060405180830381600087803b158015611d0457600080fd5b505af1158015611d18573d6000803e3d6000fd5b505050505b611d2686612663565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015611d6c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d9091906130e3565b9250611d9c8284613168565b925080831015611dd85760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161063a565b611dfe8660a001516020015183611dee89612663565b6001600160a01b031691906126b2565b611e1486608001516080015184611dee89612663565b509193509193565b63ffffffff4210611e3f5760405162461bcd60e51b815260040161063a9061317b565b8160a001611e4b612a31565b905263ffffffff42166040830152606082018051829190611e6d90839061311b565b9052505050565b6000611ea182608001516101200151836060015184608001516101000151611e9c9190613168565b6126e7565b92915050565b611eaf6129a3565b63ffffffff4210611ed25760405162461bcd60e51b815260040161063a9061317b565b63ffffffff8a8116108015611eec575063ffffffff898116105b8015611efd575063ffffffff888116105b611f325760405162461bcd60e51b81526020600482015260066024820152653ab4b73a199960d11b604482015260640161063a565b6040518060c001604052808c6001600160401b031681526020018b63ffffffff168152602001600063ffffffff168152602001600081526020016040518061016001604052804263ffffffff1681526020018d63ffffffff1681526020018c63ffffffff1681526020018b63ffffffff168152602001336001600160a01b031681526020018a6001600160a01b03168152602001896001600160a01b03168152602001886001600160a01b031681526020018781526020018681526020018581525081526020016040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160006001600160401b0381111561205857612058612f5f565b6040519080825280601f01601f191660200182016040528015612082576020820181803683370190505b50905290529b9a5050505050505050505050565b61209f81611e74565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa1580156120f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061211d91906130e3565b101561215d5760405162461bcd60e51b815260206004820152600f60248201526e6d616b657220616c6c6f77616e636560881b604482015260640161063a565b61216681611e74565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa1580156121ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121de91906130e3565b10156108f95760405162461bcd60e51b815260206004820152600d60248201526c6d616b65722062616c616e636560981b604482015260640161063a565b6000866020015163ffffffff1642106122475760405162461bcd60e51b815260040161063a90613089565b866080015160600151876040015161225f91906130bf565b63ffffffff1642116122a05760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161063a565b608087015160a001516001600160a01b031615806122d75750856001600160a01b0316876080015160a001516001600160a01b0316145b61230e5760405162461bcd60e51b815260206004820152600860248201526765786368616e676560c01b604482015260640161063a565b856001600160a01b031663650967b5886080015160c0015161232f8a612663565b6123388b611e74565b87876040518663ffffffff1660e01b815260040161235a959493929190613199565b602060405180830381865afa158015612377573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061239b91906130e3565b9050620186a06123b163ffffffff8616836131ed565b6123bb919061320c565b6123c59082613168565b90506123d18582613168565b60a088015160600151909150620186a0906123f09062018a88906131ed565b6123fa919061320c565b81118061243057506005876080015160400151612417919061322e565b60a08801515161242791906130bf565b63ffffffff1642115b6124665760405162461bcd60e51b81526020600482015260076024820152661b1bddc8189a5960ca1b604482015260640161063a565b61246f876126ff565b8110156124a85760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161063a565b6124b187612096565b9695505050505050565b63ffffffff42106124de5760405162461bcd60e51b815260040161063a9061317b565b6040805160c08101825263ffffffff421681523360208201526001600160a01b0395909516908501526060840192909252608083015260a0808301919091529190910152565b6000611ea18260a001516060015161253b846126ff565b612732565b6040516001600160a01b03808516602483015283166044820152606481018290526125ab9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152612741565b50505050565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa158015612602573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061262691906130e3565b612630919061311b565b6040516001600160a01b0385166024820152604481018290529091506125ab90859063095ea7b360e01b90606401612574565b608081015160e001516000906001600160a01b03161561268b57816080015160e00151611ea1565b7f000000000000000000000000000000000000000000000000000000000000000092915050565b6040516001600160a01b0383166024820152604481018290526126e290849063a9059cbb60e01b90606401612574565b505050565b60008183106126f657816126f8565b825b9392505050565b60008160800151610120015161271483611e74565b8360800151610140015161272891906131ed565b611ea1919061320c565b60008183116126f657816126f8565b6000612796826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166128139092919063ffffffff16565b8051909150156126e257808060200190518101906127b4919061325a565b6126e25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161063a565b6060612822848460008561282a565b949350505050565b60608247101561288b5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161063a565b600080866001600160a01b031685876040516128a7919061327c565b60006040518083038185875af1925050503d80600081146128e4576040519150601f19603f3d011682016040523d82523d6000602084013e6128e9565b606091505b50915091506128fa87838387612905565b979650505050505050565b6060831561297457825160000361296d576001600160a01b0385163b61296d5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161063a565b5081612822565b61282283838151156129895781518083602001fd5b8060405162461bcd60e51b815260040161063a9190613298565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001612a2c612a31565b905290565b6040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b80356001600160a01b0381168114612a9657600080fd5b919050565b600060208284031215612aad57600080fd5b6126f882612a7f565b6020808252825182820181905260009190848201906040850190845b81811015612af75783516001600160401b031683529284019291840191600101612ad2565b50909695505050505050565b600060208284031215612b1557600080fd5b5035919050565b805163ffffffff1682526020810151612b3d602084018263ffffffff169052565b506040810151612b55604084018263ffffffff169052565b506060810151612b6d606084018263ffffffff169052565b506080810151612b8860808401826001600160a01b03169052565b5060a0810151612ba360a08401826001600160a01b03169052565b5060c0810151612bbe60c08401826001600160a01b03169052565b5060e0810151612bd960e08401826001600160a01b03169052565b506101008181015190830152610120808201519083015261014090810151910152565b60005b83811015612c17578181015183820152602001612bff565b50506000910152565b60008151808452612c38816020860160208601612bfc565b601f01601f19169290920160200192915050565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a085015261282260c0850182612c20565b6001600160401b038716815263ffffffff868116602083015285166040820152606081018490526000610200612ce06080840186612b1c565b806101e084015261127c81840185612c4c565b60008060408385031215612d0657600080fd5b612d0f83612a7f565b946020939093013593505050565b80356001600160401b0381168114612a9657600080fd5b600060208284031215612d4657600080fd5b6126f882612d1d565b803563ffffffff81168114612a9657600080fd5b60008060008060008060008060006101208a8c031215612d8257600080fd5b612d8b8a612a7f565b9850612d9960208b01612a7f565b9750612da760408b01612a7f565b965060608a0135955060808a0135945060a08a01359350612dca60c08b01612d4f565b9250612dd860e08b01612d4f565b9150612de76101008b01612d4f565b90509295985092959850929598565b602081526001600160401b0382511660208201526000602083015163ffffffff80821660408501528060408601511660608501525050606083015160808301526080830151612e4860a0840182612b1c565b5060a083015161020083810152612822610220840182612c4c565b60008060008060008060a08789031215612e7c57600080fd5b612e8587612d1d565b9550612e9360208801612a7f565b945060408701359350612ea860608801612d4f565b925060808701356001600160401b0380821115612ec457600080fd5b818901915089601f830112612ed857600080fd5b813581811115612ee757600080fd5b8a6020828501011115612ef957600080fd5b6020830194508093505050509295509295509295565b600181811c90821680612f2357607f821691505b602082108103612f4357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b601f8211156126e257600081815260208120601f850160051c81016020861015612f9c5750805b601f850160051c820191505b818110156119e857828155600101612fa8565b81516001600160401b03811115612fd457612fd4612f5f565b612fe881612fe28454612f0f565b84612f75565b602080601f83116001811461301d57600084156130055750858301515b600019600386901b1c1916600185901b1785556119e8565b600085815260208120601f198616915b8281101561304c5788860151825594840194600190910190840161302d565b508582101561306a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6101608101611ea18284612b1c565b60208082526006908201526573746174757360d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b63ffffffff8181168382160190808211156130dc576130dc6130a9565b5092915050565b6000602082840312156130f557600080fd5b5051919050565b63ffffffff831681526040602082015260006128226040830184612c4c565b80820180821115611ea157611ea16130a9565b6001600160a01b03868116825285166020820152604081018490526060810183905260a0608082018190526000906128fa90830184612c20565b81810381811115611ea157611ea16130a9565b60208082526004908201526374696d6560e01b604082015260600190565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b6000816000190483118215151615613207576132076130a9565b500290565b60008261322957634e487b7160e01b600052601260045260246000fd5b500490565b600063ffffffff80831681851681830481118215151615613251576132516130a9565b02949350505050565b60006020828403121561326c57600080fd5b815180151581146126f857600080fd5b6000825161328e818460208701612bfc565b9190910192915050565b6020815260006126f86020830184612c2056fea26469706673582212202cdd791d76f3d8cb9b7a157acbbd5c319efe6ab58db79cff02b79f12a6ca4bfb64736f6c63430008100033",
|
|
873
|
+
"bytecode": "0x60a06040523480156200001157600080fd5b506040516200362c3803806200362c83398101604081905262000034916200004b565b60016000556001600160a01b03166080526200007d565b6000602082840312156200005e57600080fd5b81516001600160a01b03811681146200007657600080fd5b9392505050565b60805161357e620000ae6000396000818161034d01528181610d9a01528181611e680152612811015261357e6000f3fe6080604052600436106101185760003560e01c806356f65bee116100a0578063a0b94e0b11610064578063a0b94e0b146102f7578063a3d890b614610324578063c11a463d1461033b578063f58e65b814610387578063ffa1ad74146103a757600080fd5b806356f65bee146102765780636352c2621461028b578063724f27ee146102ab578063805d835d146102c057806385e471d5146102d757600080fd5b80633ab22f01116100e75780633ab22f01146101df57806342d21ef7146101ff578063454b15801461021f5780634c125e791461023457806352e8b2881461025657600080fd5b80630392c34a146101245780631116fd041461015a578063112017a71461018c5780631f7b6d32146101b657600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5061014461013f366004612d38565b6103ce565b6040516101519190612d53565b60405180910390f35b34801561016657600080fd5b5061017a610175366004612da0565b61046c565b60405161015196959493929190612f44565b34801561019857600080fd5b506101a1600a81565b60405163ffffffff9091168152602001610151565b3480156101c257600080fd5b506001545b6040516001600160401b039091168152602001610151565b3480156101eb57600080fd5b506101c76101fa366004612f90565b610647565b34801561020b57600080fd5b506101a161021a366004612da0565b610693565b34801561022b57600080fd5b506101a1600581565b34801561024057600080fd5b5061025461024f366004612fd1565b6106cd565b005b34801561026257600080fd5b50610254610271366004612fd1565b6109f1565b34801561028257600080fd5b506101a1600181565b34801561029757600080fd5b506101c76102a6366004613000565b610d5d565b3480156102b757600080fd5b506101a1600281565b3480156102cc57600080fd5b506101a1620186a081565b3480156102e357600080fd5b506102546102f2366004612fd1565b61137e565b34801561030357600080fd5b50610317610312366004612fd1565b61155a565b6040516101519190613093565b34801561033057600080fd5b506101a162018a8881565b34801561034757600080fd5b5061036f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610151565b34801561039357600080fd5b506102546103a2366004613100565b6117b7565b3480156103b357600080fd5b506103bc600381565b60405160ff9091168152602001610151565b6001600160a01b03811660009081526003602090815260409182902080548351818402810184019094528084526060939283018282801561046057602002820191906000526020600020906000905b82829054906101000a90046001600160401b03166001600160401b03168152602001906008019060208260070104928301926001038202915080841161041d5790505b50505050509050919050565b6001818154811061047c57600080fd5b6000918252602091829020600f90910201805460018201546040805161016081018252600285015463ffffffff81811683526401000000008083048216848a0152600160401b808404831685870152600160601b93849004831660608087019190915260038a01546001600160a01b0390811660808089019190915260048c0154821660a0808a019190915260058d0154831660c0808b019190915260068e0154841660e08b015260078e01546101008b015260088e01546101208b015260098e01546101408b01528a519081018b52600a8e018054808a1683529790970484169e81019e909e52600b8d0154909216988d0198909852600c8b0154918c0191909152600d8a0154968b0196909652600e890180546001600160401b038a169c5091890484169a94909804909216979596939594929390928401916105c0906131ac565b80601f01602080910402602001604051908101604052809291908181526020018280546105ec906131ac565b80156106395780601f1061060e57610100808354040283529160200191610639565b820191906000526020600020905b81548152906001019060200180831161061c57829003601f168201915b505050505081525050905086565b6003602052816000526040600020818154811061066357600080fd5b9060005260206000209060049182820401919006600802915091509054906101000a90046001600160401b031681565b600281815481106106a357600080fd5b9060005260206000209060089182820401919006600402915054906101000a900463ffffffff1681565b6106d5611ae5565b60006106e08261155a565b90508060800151608001516001600160a01b0316336001600160a01b0316146107385760405162461bcd60e51b815260206004820152600560248201526436b0b5b2b960d91b60448201526064015b60405180910390fd5b60016002836001600160401b031681548110610756576107566131e6565b90600052602060002090600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055506001816020019063ffffffff16908163ffffffff1681525050806001836001600160401b0316815481106107bf576107bf6131e6565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e84019061098b9082613258565b505050608080840151015183516040513381526001600160a01b0390921693506001600160401b031691507f84433a3c591ac98de0b89e7fc7a3d5d6705a3cbec760e7d529439c65d6feb3099060200160405180910390a3506109ee6001600055565b50565b6109f9611ae5565b6000610a048261155a565b9050600080600080610a1585611b3e565b92965090945092509050610a298584611fa0565b60808581015181015160608088015160408051338152602081018990528082018890529283018690529382015291516001600160a01b03878116939216916001600160401b038a16917fc7529bc0224b03ba593d84e2064baeac956a4221ca93d37af0f1810ad17df7a99181900360a00190a4610aa585611ff8565b600003610b5f57600280876001600160401b031681548110610ac957610ac96131e6565b60009182526020918290206008820401805460079092166004026101000a63ffffffff81810219909316949092169190910292909217909155600286820152608080870151015186516040513381526001600160a01b03888116949316926001600160401b03909216917fd08d3326dcd14f1021feb19d05834c4f6d0b7ff1fecac35981f24fd5f73873c5910160405180910390a45b846001876001600160401b031681548110610b7c57610b7c6131e6565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190610d489082613258565b50505090505050505050506109ee6001600055565b6000610d67611ae5565b6001600160a01b03891615801590610d915750876001600160a01b0316896001600160a01b031614155b8015610de157507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b0316141580610de157506001600160a01b03881615155b8015610ded5750600087115b8015610df95750600086115b8015610e055750868611155b8015610e115750600085115b8015610e225750428463ffffffff16115b8015610e355750600a63ffffffff841610155b610e6a5760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161072f565b6000610e86610e7860015490565b8686868f8f8f8f8f8f61202b565b9050610e918161221a565b60018054808201825560009190915281517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600f90920291820180546020808601516040808801516001600160401b039096166001600160601b031990941693909317600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b97841688021786556060808a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf78a01556080808b015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf88c018054838a0151848c015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a1690980290961695909517908716909a0299909917909255878201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf98a0180546001600160a01b03199081166001600160a01b039384161790915560a0808b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfa8d018054841691851691909117905560c08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfb8d018054841691851691909117905560e08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfc8d01805484169185169190911790556101008b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfd8d01556101208b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfe8d0155610140909a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cff8c0155898c015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d008d01805499830151919098166001600160c01b031990991698909817978316909502969096178555958301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d018a018054909616961695909517909355928301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d02870155908201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d03860155928101518594929391927fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d0401906112399082613258565b505050505060028590806001815401808255809150506001900390600052602060002090600891828204019190066004029091909190916101000a81548163ffffffff021916908363ffffffff16021790555060036000336001600160a01b03166001600160a01b03168152602001908152602001600020816000015190806001815401808255809150506001900390600052602060002090600491828204019190066008029091909190916101000a8154816001600160401b0302191690836001600160401b031602179055508a6001600160a01b0316336001600160a01b031682600001516001600160401b03167f831701c9313a778469897164a19ddd1867959a91eada7cc21adf0936761c8370846080015160405161135c9190613317565b60405180910390a45190506113716001600055565b9998505050505050505050565b611386611ae5565b60006113918261155a565b9050806020015163ffffffff1642106113bc5760405162461bcd60e51b815260040161072f90613326565b80608001516060015181604001516113d4919061335c565b63ffffffff1642116114155760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161072f565b61141e81611ff8565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa158015611478573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061149c9190613380565b108061152657506114ac81611ff8565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015611500573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115249190613380565b105b6107385760405162461bcd60e51b81526020600482015260056024820152641d985b1a5960da1b604482015260640161072f565b611562612c40565b6001546001600160401b0316826001600160401b0316106115b25760405162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b604482015260640161072f565b6001826001600160401b0316815481106115ce576115ce6131e6565b60009182526020918290206040805160c08082018352600f90940290920180546001600160401b038116845263ffffffff600160401b808304821686890152600160601b928390048216868601526001840154606080880191909152855161016081018752600286015480851682526401000000008082048616838d01529381048516828901529490940483168482015260038501546001600160a01b039081166080868101919091526004870154821660a08088019190915260058801548316878c01526006880154831660e0880152600788015461010088015260088801546101208801526009880154610140880152818a01969096528751998a018852600a870180549586168b5293909404811699890199909952600b85015490981694870194909452600c83015496860196909652600d82015495850195909552600e8101805493959194828701949093928401919061172b906131ac565b80601f0160208091040260200160405190810160405280929190818152602001828054611757906131ac565b80156117a45780601f10611779576101008083540402835291602001916117a4565b820191906000526020600020905b81548152906001019060200180831161178757829003601f168201915b5050509190925250505090525092915050565b6117bf611ae5565b6001600160a01b038516158015906117df5750620186a063ffffffff8416105b6118145760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161072f565b600061181f8761155a565b905060006118318288888888886123a0565b905061187b87828887878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250899695949392505061263f9050565b816001896001600160401b031681548110611898576118986131e6565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190611a649082613258565b505050905050866001600160a01b03168260800151608001516001600160a01b031683600001516001600160401b03167fc6c7dd24446d66051e106d8289c1e1e3657b16ae283f4824b89417b1ec39664f888660a00151604051611ac9929190613399565b60405180910390a45050611add6001600055565b505050505050565b600260005403611b375760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161072f565b6002600055565b6000806000808460a00151602001516001600160a01b0316336001600160a01b031614611b955760405162461bcd60e51b81526020600482015260056024820152643a30b5b2b960d91b604482015260640161072f565b846020015163ffffffff164210611bbe5760405162461bcd60e51b815260040161072f90613326565b60808501516040015160a086015151611bd7919061335c565b63ffffffff164211611c175760405162461bcd60e51b81526020600482015260096024820152686269642064656c617960b81b604482015260640161072f565b5060a08401516040810151608090910151909350611c3485611ff8565b92506000611c41866126a8565b6080808801519081015160c090910151919250611c69916001600160a01b03169030876126c4565b608086015160c001516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611cb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cdb9190613380565b608087015160c00151909450611cfb906001600160a01b03168686612735565b846001600160a01b0316632506c018876080015160c00151611d1c896127e7565b87611d2787876133b8565b8b60a0015160a001516040518663ffffffff1660e01b8152600401611d509594939291906133cb565b600060405180830381600087803b158015611d6a57600080fd5b505af1158015611d7e573d6000803e3d6000fd5b50505050611d8b866127e7565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015611dd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df59190613380565b9250611e018284613405565b925080831015611e3d5760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161072f565b608086015160e001516001600160a01b0316611f5c576040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d9082906370a0823190602401602060405180830381865afa158015611ebf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ee39190613380565b6040518263ffffffff1660e01b8152600401611f0191815260200190565b600060405180830381600087803b158015611f1b57600080fd5b505af1158015611f2f573d6000803e3d6000fd5b50505050611f458660a001516020015183612836565b611f5786608001516080015184612836565b611f98565b611f828660a001516020015183611f72896127e7565b6001600160a01b03169190612954565b611f9886608001516080015184611f72896127e7565b509193509193565b63ffffffff4210611fc35760405162461bcd60e51b815260040161072f90613418565b8160a001611fcf612cce565b905263ffffffff42166040830152606082018051829190611ff19083906133b8565b9052505050565b6000612025826080015161012001518360600151846080015161010001516120209190613405565b612984565b92915050565b612033612c40565b63ffffffff42106120565760405162461bcd60e51b815260040161072f90613418565b63ffffffff8a8116108015612070575063ffffffff898116105b8015612081575063ffffffff888116105b6120b65760405162461bcd60e51b81526020600482015260066024820152653ab4b73a199960d11b604482015260640161072f565b6040518060c001604052808c6001600160401b031681526020018b63ffffffff168152602001600063ffffffff168152602001600081526020016040518061016001604052804263ffffffff1681526020018d63ffffffff1681526020018c63ffffffff1681526020018b63ffffffff168152602001336001600160a01b031681526020018a6001600160a01b03168152602001896001600160a01b03168152602001886001600160a01b031681526020018781526020018681526020018581525081526020016040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160006001600160401b038111156121dc576121dc6131fc565b6040519080825280601f01601f191660200182016040528015612206576020820181803683370190505b50905290529b9a5050505050505050505050565b61222381611ff8565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa15801561227d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122a19190613380565b10156122e15760405162461bcd60e51b815260206004820152600f60248201526e6d616b657220616c6c6f77616e636560881b604482015260640161072f565b6122ea81611ff8565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801561233e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123629190613380565b10156109ee5760405162461bcd60e51b815260206004820152600d60248201526c6d616b65722062616c616e636560981b604482015260640161072f565b6000866020015163ffffffff1642106123cb5760405162461bcd60e51b815260040161072f90613326565b86608001516060015187604001516123e3919061335c565b63ffffffff1642116124245760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161072f565b608087015160a001516001600160a01b0316158061245b5750856001600160a01b0316876080015160a001516001600160a01b0316145b6124925760405162461bcd60e51b815260206004820152600860248201526765786368616e676560c01b604482015260640161072f565b856001600160a01b031663650967b5886080015160c001516124b38a6127e7565b6124bc8b611ff8565b87876040518663ffffffff1660e01b81526004016124de959493929190613436565b602060405180830381865afa1580156124fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061251f9190613380565b9050620186a061253563ffffffff86168361348a565b61253f91906134a9565b6125499082613405565b90506125558582613405565b60a088015160600151909150620186a0906125749062018a889061348a565b61257e91906134a9565b8111806125b45750600587608001516040015161259b91906134cb565b60a0880151516125ab919061335c565b63ffffffff1642115b6125ea5760405162461bcd60e51b81526020600482015260076024820152661b1bddc8189a5960ca1b604482015260640161072f565b6125f38761299c565b81101561262c5760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161072f565b6126358761221a565b9695505050505050565b63ffffffff42106126625760405162461bcd60e51b815260040161072f90613418565b6040805160c08101825263ffffffff421681523360208201526001600160a01b0395909516908501526060840192909252608083015260a0808301919091529190910152565b60006120258260a00151606001516126bf8461299c565b6129cf565b6040516001600160a01b038085166024830152831660448201526064810182905261272f9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526129de565b50505050565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa158015612786573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127aa9190613380565b6127b491906133b8565b6040516001600160a01b03851660248201526044810182905290915061272f90859063095ea7b360e01b906064016126f8565b608081015160e001516000906001600160a01b03161561280f57816080015160e00151612025565b7f000000000000000000000000000000000000000000000000000000000000000092915050565b804710156128865760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e6365000000604482015260640161072f565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146128d3576040519150601f19603f3d011682016040523d82523d6000602084013e6128d8565b606091505b505090508061294f5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d61792068617665207265766572746564000000000000606482015260840161072f565b505050565b6040516001600160a01b03831660248201526044810182905261294f90849063a9059cbb60e01b906064016126f8565b60008183106129935781612995565b825b9392505050565b6000816080015161012001516129b183611ff8565b836080015161014001516129c5919061348a565b61202591906134a9565b60008183116129935781612995565b6000612a33826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316612ab09092919063ffffffff16565b80519091501561294f5780806020019051810190612a5191906134f7565b61294f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161072f565b6060612abf8484600085612ac7565b949350505050565b606082471015612b285760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161072f565b600080866001600160a01b03168587604051612b449190613519565b60006040518083038185875af1925050503d8060008114612b81576040519150601f19603f3d011682016040523d82523d6000602084013e612b86565b606091505b5091509150612b9787838387612ba2565b979650505050505050565b60608315612c11578251600003612c0a576001600160a01b0385163b612c0a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161072f565b5081612abf565b612abf8383815115612c265781518083602001fd5b8060405162461bcd60e51b815260040161072f9190613535565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001612cc9612cce565b905290565b6040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b80356001600160a01b0381168114612d3357600080fd5b919050565b600060208284031215612d4a57600080fd5b61299582612d1c565b6020808252825182820181905260009190848201906040850190845b81811015612d945783516001600160401b031683529284019291840191600101612d6f565b50909695505050505050565b600060208284031215612db257600080fd5b5035919050565b805163ffffffff1682526020810151612dda602084018263ffffffff169052565b506040810151612df2604084018263ffffffff169052565b506060810151612e0a606084018263ffffffff169052565b506080810151612e2560808401826001600160a01b03169052565b5060a0810151612e4060a08401826001600160a01b03169052565b5060c0810151612e5b60c08401826001600160a01b03169052565b5060e0810151612e7660e08401826001600160a01b03169052565b506101008181015190830152610120808201519083015261014090810151910152565b60005b83811015612eb4578181015183820152602001612e9c565b50506000910152565b60008151808452612ed5816020860160208601612e99565b601f01601f19169290920160200192915050565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a0850152612abf60c0850182612ebd565b6001600160401b038716815263ffffffff868116602083015285166040820152606081018490526000610200612f7d6080840186612db9565b806101e084015261137181840185612ee9565b60008060408385031215612fa357600080fd5b612fac83612d1c565b946020939093013593505050565b80356001600160401b0381168114612d3357600080fd5b600060208284031215612fe357600080fd5b61299582612fba565b803563ffffffff81168114612d3357600080fd5b60008060008060008060008060006101208a8c03121561301f57600080fd5b6130288a612d1c565b985061303660208b01612d1c565b975061304460408b01612d1c565b965060608a0135955060808a0135945060a08a0135935061306760c08b01612fec565b925061307560e08b01612fec565b91506130846101008b01612fec565b90509295985092959850929598565b602081526001600160401b0382511660208201526000602083015163ffffffff808216604085015280604086015116606085015250506060830151608083015260808301516130e560a0840182612db9565b5060a083015161020083810152612abf610220840182612ee9565b60008060008060008060a0878903121561311957600080fd5b61312287612fba565b955061313060208801612d1c565b94506040870135935061314560608801612fec565b925060808701356001600160401b038082111561316157600080fd5b818901915089601f83011261317557600080fd5b81358181111561318457600080fd5b8a602082850101111561319657600080fd5b6020830194508093505050509295509295509295565b600181811c908216806131c057607f821691505b6020821081036131e057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b601f82111561294f57600081815260208120601f850160051c810160208610156132395750805b601f850160051c820191505b81811015611add57828155600101613245565b81516001600160401b03811115613271576132716131fc565b6132858161327f84546131ac565b84613212565b602080601f8311600181146132ba57600084156132a25750858301515b600019600386901b1c1916600185901b178555611add565b600085815260208120601f198616915b828110156132e9578886015182559484019460019091019084016132ca565b50858210156133075787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61016081016120258284612db9565b60208082526006908201526573746174757360d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b63ffffffff81811683821601908082111561337957613379613346565b5092915050565b60006020828403121561339257600080fd5b5051919050565b63ffffffff83168152604060208201526000612abf6040830184612ee9565b8082018082111561202557612025613346565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b9790830184612ebd565b8181038181111561202557612025613346565b60208082526004908201526374696d6560e01b604082015260600190565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b60008160001904831182151516156134a4576134a4613346565b500290565b6000826134c657634e487b7160e01b600052601260045260246000fd5b500490565b600063ffffffff808316818516818304811182151516156134ee576134ee613346565b02949350505050565b60006020828403121561350957600080fd5b8151801515811461299557600080fd5b6000825161352b818460208701612e99565b9190910192915050565b6020815260006129956020830184612ebd56fea264697066735822122051705f399fba389f1becb163def7eb7b9f77feffbcc39c05a62422fbd9ffcae064736f6c63430008100033",
|
|
874
|
+
"deployedBytecode": "0x6080604052600436106101185760003560e01c806356f65bee116100a0578063a0b94e0b11610064578063a0b94e0b146102f7578063a3d890b614610324578063c11a463d1461033b578063f58e65b814610387578063ffa1ad74146103a757600080fd5b806356f65bee146102765780636352c2621461028b578063724f27ee146102ab578063805d835d146102c057806385e471d5146102d757600080fd5b80633ab22f01116100e75780633ab22f01146101df57806342d21ef7146101ff578063454b15801461021f5780634c125e791461023457806352e8b2881461025657600080fd5b80630392c34a146101245780631116fd041461015a578063112017a71461018c5780631f7b6d32146101b657600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b5061014461013f366004612d38565b6103ce565b6040516101519190612d53565b60405180910390f35b34801561016657600080fd5b5061017a610175366004612da0565b61046c565b60405161015196959493929190612f44565b34801561019857600080fd5b506101a1600a81565b60405163ffffffff9091168152602001610151565b3480156101c257600080fd5b506001545b6040516001600160401b039091168152602001610151565b3480156101eb57600080fd5b506101c76101fa366004612f90565b610647565b34801561020b57600080fd5b506101a161021a366004612da0565b610693565b34801561022b57600080fd5b506101a1600581565b34801561024057600080fd5b5061025461024f366004612fd1565b6106cd565b005b34801561026257600080fd5b50610254610271366004612fd1565b6109f1565b34801561028257600080fd5b506101a1600181565b34801561029757600080fd5b506101c76102a6366004613000565b610d5d565b3480156102b757600080fd5b506101a1600281565b3480156102cc57600080fd5b506101a1620186a081565b3480156102e357600080fd5b506102546102f2366004612fd1565b61137e565b34801561030357600080fd5b50610317610312366004612fd1565b61155a565b6040516101519190613093565b34801561033057600080fd5b506101a162018a8881565b34801561034757600080fd5b5061036f7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610151565b34801561039357600080fd5b506102546103a2366004613100565b6117b7565b3480156103b357600080fd5b506103bc600381565b60405160ff9091168152602001610151565b6001600160a01b03811660009081526003602090815260409182902080548351818402810184019094528084526060939283018282801561046057602002820191906000526020600020906000905b82829054906101000a90046001600160401b03166001600160401b03168152602001906008019060208260070104928301926001038202915080841161041d5790505b50505050509050919050565b6001818154811061047c57600080fd5b6000918252602091829020600f90910201805460018201546040805161016081018252600285015463ffffffff81811683526401000000008083048216848a0152600160401b808404831685870152600160601b93849004831660608087019190915260038a01546001600160a01b0390811660808089019190915260048c0154821660a0808a019190915260058d0154831660c0808b019190915260068e0154841660e08b015260078e01546101008b015260088e01546101208b015260098e01546101408b01528a519081018b52600a8e018054808a1683529790970484169e81019e909e52600b8d0154909216988d0198909852600c8b0154918c0191909152600d8a0154968b0196909652600e890180546001600160401b038a169c5091890484169a94909804909216979596939594929390928401916105c0906131ac565b80601f01602080910402602001604051908101604052809291908181526020018280546105ec906131ac565b80156106395780601f1061060e57610100808354040283529160200191610639565b820191906000526020600020905b81548152906001019060200180831161061c57829003601f168201915b505050505081525050905086565b6003602052816000526040600020818154811061066357600080fd5b9060005260206000209060049182820401919006600802915091509054906101000a90046001600160401b031681565b600281815481106106a357600080fd5b9060005260206000209060089182820401919006600402915054906101000a900463ffffffff1681565b6106d5611ae5565b60006106e08261155a565b90508060800151608001516001600160a01b0316336001600160a01b0316146107385760405162461bcd60e51b815260206004820152600560248201526436b0b5b2b960d91b60448201526064015b60405180910390fd5b60016002836001600160401b031681548110610756576107566131e6565b90600052602060002090600891828204019190066004026101000a81548163ffffffff021916908363ffffffff1602179055506001816020019063ffffffff16908163ffffffff1681525050806001836001600160401b0316815481106107bf576107bf6131e6565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e84019061098b9082613258565b505050608080840151015183516040513381526001600160a01b0390921693506001600160401b031691507f84433a3c591ac98de0b89e7fc7a3d5d6705a3cbec760e7d529439c65d6feb3099060200160405180910390a3506109ee6001600055565b50565b6109f9611ae5565b6000610a048261155a565b9050600080600080610a1585611b3e565b92965090945092509050610a298584611fa0565b60808581015181015160608088015160408051338152602081018990528082018890529283018690529382015291516001600160a01b03878116939216916001600160401b038a16917fc7529bc0224b03ba593d84e2064baeac956a4221ca93d37af0f1810ad17df7a99181900360a00190a4610aa585611ff8565b600003610b5f57600280876001600160401b031681548110610ac957610ac96131e6565b60009182526020918290206008820401805460079092166004026101000a63ffffffff81810219909316949092169190910292909217909155600286820152608080870151015186516040513381526001600160a01b03888116949316926001600160401b03909216917fd08d3326dcd14f1021feb19d05834c4f6d0b7ff1fecac35981f24fd5f73873c5910160405180910390a45b846001876001600160401b031681548110610b7c57610b7c6131e6565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190610d489082613258565b50505090505050505050506109ee6001600055565b6000610d67611ae5565b6001600160a01b03891615801590610d915750876001600160a01b0316896001600160a01b031614155b8015610de157507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316896001600160a01b0316141580610de157506001600160a01b03881615155b8015610ded5750600087115b8015610df95750600086115b8015610e055750868611155b8015610e115750600085115b8015610e225750428463ffffffff16115b8015610e355750600a63ffffffff841610155b610e6a5760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161072f565b6000610e86610e7860015490565b8686868f8f8f8f8f8f61202b565b9050610e918161221a565b60018054808201825560009190915281517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6600f90920291820180546020808601516040808801516001600160401b039096166001600160601b031990941693909317600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b97841688021786556060808a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf78a01556080808b015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf88c018054838a0151848c015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a1690980290961695909517908716909a0299909917909255878201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf98a0180546001600160a01b03199081166001600160a01b039384161790915560a0808b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfa8d018054841691851691909117905560c08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfb8d018054841691851691909117905560e08b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfc8d01805484169185169190911790556101008b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfd8d01556101208b01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cfe8d0155610140909a01517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cff8c0155898c015180517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d008d01805499830151919098166001600160c01b031990991698909817978316909502969096178555958301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d018a018054909616961695909517909355928301517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d02870155908201517fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d03860155928101518594929391927fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0d0401906112399082613258565b505050505060028590806001815401808255809150506001900390600052602060002090600891828204019190066004029091909190916101000a81548163ffffffff021916908363ffffffff16021790555060036000336001600160a01b03166001600160a01b03168152602001908152602001600020816000015190806001815401808255809150506001900390600052602060002090600491828204019190066008029091909190916101000a8154816001600160401b0302191690836001600160401b031602179055508a6001600160a01b0316336001600160a01b031682600001516001600160401b03167f831701c9313a778469897164a19ddd1867959a91eada7cc21adf0936761c8370846080015160405161135c9190613317565b60405180910390a45190506113716001600055565b9998505050505050505050565b611386611ae5565b60006113918261155a565b9050806020015163ffffffff1642106113bc5760405162461bcd60e51b815260040161072f90613326565b80608001516060015181604001516113d4919061335c565b63ffffffff1642116114155760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161072f565b61141e81611ff8565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa158015611478573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061149c9190613380565b108061152657506114ac81611ff8565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015611500573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115249190613380565b105b6107385760405162461bcd60e51b81526020600482015260056024820152641d985b1a5960da1b604482015260640161072f565b611562612c40565b6001546001600160401b0316826001600160401b0316106115b25760405162461bcd60e51b815260206004820152600a6024820152691a5b9d985b1a59081a5960b21b604482015260640161072f565b6001826001600160401b0316815481106115ce576115ce6131e6565b60009182526020918290206040805160c08082018352600f90940290920180546001600160401b038116845263ffffffff600160401b808304821686890152600160601b928390048216868601526001840154606080880191909152855161016081018752600286015480851682526401000000008082048616838d01529381048516828901529490940483168482015260038501546001600160a01b039081166080868101919091526004870154821660a08088019190915260058801548316878c01526006880154831660e0880152600788015461010088015260088801546101208801526009880154610140880152818a01969096528751998a018852600a870180549586168b5293909404811699890199909952600b85015490981694870194909452600c83015496860196909652600d82015495850195909552600e8101805493959194828701949093928401919061172b906131ac565b80601f0160208091040260200160405190810160405280929190818152602001828054611757906131ac565b80156117a45780601f10611779576101008083540402835291602001916117a4565b820191906000526020600020905b81548152906001019060200180831161178757829003601f168201915b5050509190925250505090525092915050565b6117bf611ae5565b6001600160a01b038516158015906117df5750620186a063ffffffff8416105b6118145760405162461bcd60e51b8152602060048201526006602482015265706172616d7360d01b604482015260640161072f565b600061181f8761155a565b905060006118318288888888886123a0565b905061187b87828887878080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250899695949392505061263f9050565b816001896001600160401b031681548110611898576118986131e6565b60009182526020918290208351600f92909202018054848401516040808701516001600160401b039095166001600160601b031990931692909217600160401b63ffffffff92831681029190911763ffffffff60601b19908116600160601b968416870217855560608089015160018701556080808a01518051600289018054838d0151848b015185880151948b1667ffffffffffffffff1990931692909217640100000000918b1682021767ffffffffffffffff60401b1916918a169098029096169590951790871690990298909817909255868201516003870180546001600160a01b03199081166001600160a01b039384161790915560a0808a015160048a018054841691851691909117905560c08a015160058a018054841691851691909117905560e08a015160068a01805484169185169190911790556101008a015160078a01556101208a015160088a0155610140909901516009890155888b01518051600a8a0180549c830151919098166001600160c01b0319909c169b909b179a831690950299909917855594830151600b8701805490991695169490941790965591820151600c84015593810151600d83015591820151909290600e840190611a649082613258565b505050905050866001600160a01b03168260800151608001516001600160a01b031683600001516001600160401b03167fc6c7dd24446d66051e106d8289c1e1e3657b16ae283f4824b89417b1ec39664f888660a00151604051611ac9929190613399565b60405180910390a45050611add6001600055565b505050505050565b600260005403611b375760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604482015260640161072f565b6002600055565b6000806000808460a00151602001516001600160a01b0316336001600160a01b031614611b955760405162461bcd60e51b81526020600482015260056024820152643a30b5b2b960d91b604482015260640161072f565b846020015163ffffffff164210611bbe5760405162461bcd60e51b815260040161072f90613326565b60808501516040015160a086015151611bd7919061335c565b63ffffffff164211611c175760405162461bcd60e51b81526020600482015260096024820152686269642064656c617960b81b604482015260640161072f565b5060a08401516040810151608090910151909350611c3485611ff8565b92506000611c41866126a8565b6080808801519081015160c090910151919250611c69916001600160a01b03169030876126c4565b608086015160c001516040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611cb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cdb9190613380565b608087015160c00151909450611cfb906001600160a01b03168686612735565b846001600160a01b0316632506c018876080015160c00151611d1c896127e7565b87611d2787876133b8565b8b60a0015160a001516040518663ffffffff1660e01b8152600401611d509594939291906133cb565b600060405180830381600087803b158015611d6a57600080fd5b505af1158015611d7e573d6000803e3d6000fd5b50505050611d8b866127e7565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a0823190602401602060405180830381865afa158015611dd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df59190613380565b9250611e018284613405565b925080831015611e3d5760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161072f565b608086015160e001516001600160a01b0316611f5c576040516370a0823160e01b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690632e1a7d4d9082906370a0823190602401602060405180830381865afa158015611ebf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ee39190613380565b6040518263ffffffff1660e01b8152600401611f0191815260200190565b600060405180830381600087803b158015611f1b57600080fd5b505af1158015611f2f573d6000803e3d6000fd5b50505050611f458660a001516020015183612836565b611f5786608001516080015184612836565b611f98565b611f828660a001516020015183611f72896127e7565b6001600160a01b03169190612954565b611f9886608001516080015184611f72896127e7565b509193509193565b63ffffffff4210611fc35760405162461bcd60e51b815260040161072f90613418565b8160a001611fcf612cce565b905263ffffffff42166040830152606082018051829190611ff19083906133b8565b9052505050565b6000612025826080015161012001518360600151846080015161010001516120209190613405565b612984565b92915050565b612033612c40565b63ffffffff42106120565760405162461bcd60e51b815260040161072f90613418565b63ffffffff8a8116108015612070575063ffffffff898116105b8015612081575063ffffffff888116105b6120b65760405162461bcd60e51b81526020600482015260066024820152653ab4b73a199960d11b604482015260640161072f565b6040518060c001604052808c6001600160401b031681526020018b63ffffffff168152602001600063ffffffff168152602001600081526020016040518061016001604052804263ffffffff1681526020018d63ffffffff1681526020018c63ffffffff1681526020018b63ffffffff168152602001336001600160a01b031681526020018a6001600160a01b03168152602001896001600160a01b03168152602001886001600160a01b031681526020018781526020018681526020018581525081526020016040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b03168152602001600081526020016000815260200160006001600160401b038111156121dc576121dc6131fc565b6040519080825280601f01601f191660200182016040528015612206576020820181803683370190505b50905290529b9a5050505050505050505050565b61222381611ff8565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b03918216600482015230602482015291169063dd62ed3e90604401602060405180830381865afa15801561227d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122a19190613380565b10156122e15760405162461bcd60e51b815260206004820152600f60248201526e6d616b657220616c6c6f77616e636560881b604482015260640161072f565b6122ea81611ff8565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa15801561233e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123629190613380565b10156109ee5760405162461bcd60e51b815260206004820152600d60248201526c6d616b65722062616c616e636560981b604482015260640161072f565b6000866020015163ffffffff1642106123cb5760405162461bcd60e51b815260040161072f90613326565b86608001516060015187604001516123e3919061335c565b63ffffffff1642116124245760405162461bcd60e51b815260206004820152600a60248201526966696c6c2064656c617960b01b604482015260640161072f565b608087015160a001516001600160a01b0316158061245b5750856001600160a01b0316876080015160a001516001600160a01b0316145b6124925760405162461bcd60e51b815260206004820152600860248201526765786368616e676560c01b604482015260640161072f565b856001600160a01b031663650967b5886080015160c001516124b38a6127e7565b6124bc8b611ff8565b87876040518663ffffffff1660e01b81526004016124de959493929190613436565b602060405180830381865afa1580156124fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061251f9190613380565b9050620186a061253563ffffffff86168361348a565b61253f91906134a9565b6125499082613405565b90506125558582613405565b60a088015160600151909150620186a0906125749062018a889061348a565b61257e91906134a9565b8111806125b45750600587608001516040015161259b91906134cb565b60a0880151516125ab919061335c565b63ffffffff1642115b6125ea5760405162461bcd60e51b81526020600482015260076024820152661b1bddc8189a5960ca1b604482015260640161072f565b6125f38761299c565b81101561262c5760405162461bcd60e51b81526020600482015260076024820152661b5a5b881bdd5d60ca1b604482015260640161072f565b6126358761221a565b9695505050505050565b63ffffffff42106126625760405162461bcd60e51b815260040161072f90613418565b6040805160c08101825263ffffffff421681523360208201526001600160a01b0395909516908501526060840192909252608083015260a0808301919091529190910152565b60006120258260a00151606001516126bf8461299c565b6129cf565b6040516001600160a01b038085166024830152831660448201526064810182905261272f9085906323b872dd60e01b906084015b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b0319909316929092179091526129de565b50505050565b604051636eb1769f60e11b81523060048201526001600160a01b038381166024830152600091839186169063dd62ed3e90604401602060405180830381865afa158015612786573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127aa9190613380565b6127b491906133b8565b6040516001600160a01b03851660248201526044810182905290915061272f90859063095ea7b360e01b906064016126f8565b608081015160e001516000906001600160a01b03161561280f57816080015160e00151612025565b7f000000000000000000000000000000000000000000000000000000000000000092915050565b804710156128865760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e6365000000604482015260640161072f565b6000826001600160a01b03168260405160006040518083038185875af1925050503d80600081146128d3576040519150601f19603f3d011682016040523d82523d6000602084013e6128d8565b606091505b505090508061294f5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d61792068617665207265766572746564000000000000606482015260840161072f565b505050565b6040516001600160a01b03831660248201526044810182905261294f90849063a9059cbb60e01b906064016126f8565b60008183106129935781612995565b825b9392505050565b6000816080015161012001516129b183611ff8565b836080015161014001516129c5919061348a565b61202591906134a9565b60008183116129935781612995565b6000612a33826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316612ab09092919063ffffffff16565b80519091501561294f5780806020019051810190612a5191906134f7565b61294f5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161072f565b6060612abf8484600085612ac7565b949350505050565b606082471015612b285760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161072f565b600080866001600160a01b03168587604051612b449190613519565b60006040518083038185875af1925050503d8060008114612b81576040519150601f19603f3d011682016040523d82523d6000602084013e612b86565b606091505b5091509150612b9787838387612ba2565b979650505050505050565b60608315612c11578251600003612c0a576001600160a01b0385163b612c0a5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161072f565b5081612abf565b612abf8383815115612c265781518083602001fd5b8060405162461bcd60e51b815260040161072f9190613535565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001612cc9612cce565b905290565b6040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b80356001600160a01b0381168114612d3357600080fd5b919050565b600060208284031215612d4a57600080fd5b61299582612d1c565b6020808252825182820181905260009190848201906040850190845b81811015612d945783516001600160401b031683529284019291840191600101612d6f565b50909695505050505050565b600060208284031215612db257600080fd5b5035919050565b805163ffffffff1682526020810151612dda602084018263ffffffff169052565b506040810151612df2604084018263ffffffff169052565b506060810151612e0a606084018263ffffffff169052565b506080810151612e2560808401826001600160a01b03169052565b5060a0810151612e4060a08401826001600160a01b03169052565b5060c0810151612e5b60c08401826001600160a01b03169052565b5060e0810151612e7660e08401826001600160a01b03169052565b506101008181015190830152610120808201519083015261014090810151910152565b60005b83811015612eb4578181015183820152602001612e9c565b50506000910152565b60008151808452612ed5816020860160208601612e99565b601f01601f19169290920160200192915050565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a0850152612abf60c0850182612ebd565b6001600160401b038716815263ffffffff868116602083015285166040820152606081018490526000610200612f7d6080840186612db9565b806101e084015261137181840185612ee9565b60008060408385031215612fa357600080fd5b612fac83612d1c565b946020939093013593505050565b80356001600160401b0381168114612d3357600080fd5b600060208284031215612fe357600080fd5b61299582612fba565b803563ffffffff81168114612d3357600080fd5b60008060008060008060008060006101208a8c03121561301f57600080fd5b6130288a612d1c565b985061303660208b01612d1c565b975061304460408b01612d1c565b965060608a0135955060808a0135945060a08a0135935061306760c08b01612fec565b925061307560e08b01612fec565b91506130846101008b01612fec565b90509295985092959850929598565b602081526001600160401b0382511660208201526000602083015163ffffffff808216604085015280604086015116606085015250506060830151608083015260808301516130e560a0840182612db9565b5060a083015161020083810152612abf610220840182612ee9565b60008060008060008060a0878903121561311957600080fd5b61312287612fba565b955061313060208801612d1c565b94506040870135935061314560608801612fec565b925060808701356001600160401b038082111561316157600080fd5b818901915089601f83011261317557600080fd5b81358181111561318457600080fd5b8a602082850101111561319657600080fd5b6020830194508093505050509295509295509295565b600181811c908216806131c057607f821691505b6020821081036131e057634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b601f82111561294f57600081815260208120601f850160051c810160208610156132395750805b601f850160051c820191505b81811015611add57828155600101613245565b81516001600160401b03811115613271576132716131fc565b6132858161327f84546131ac565b84613212565b602080601f8311600181146132ba57600084156132a25750858301515b600019600386901b1c1916600185901b178555611add565b600085815260208120601f198616915b828110156132e9578886015182559484019460019091019084016132ca565b50858210156133075787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61016081016120258284612db9565b60208082526006908201526573746174757360d01b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b63ffffffff81811683821601908082111561337957613379613346565b5092915050565b60006020828403121561339257600080fd5b5051919050565b63ffffffff83168152604060208201526000612abf6040830184612ee9565b8082018082111561202557612025613346565b6001600160a01b03868116825285166020820152604081018490526060810183905260a060808201819052600090612b9790830184612ebd565b8181038181111561202557612025613346565b60208082526004908201526374696d6560e01b604082015260600190565b6001600160a01b038681168252851660208201526040810184905260806060820181905281018290526000828460a0840137600060a0848401015260a0601f19601f85011683010190509695505050505050565b60008160001904831182151516156134a4576134a4613346565b500290565b6000826134c657634e487b7160e01b600052601260045260246000fd5b500490565b600063ffffffff808316818516818304811182151516156134ee576134ee613346565b02949350505050565b60006020828403121561350957600080fd5b8151801515811461299557600080fd5b6000825161352b818460208701612e99565b9190910192915050565b6020815260006129956020830184612ebd56fea264697066735822122051705f399fba389f1becb163def7eb7b9f77feffbcc39c05a62422fbd9ffcae064736f6c63430008100033",
|
|
871
875
|
"linkReferences": {},
|
|
872
876
|
"deployedLinkReferences": {}
|
|
873
877
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
{
|
|
7
7
|
"inputs": [
|
|
8
8
|
{
|
|
9
|
-
"internalType": "
|
|
9
|
+
"internalType": "contract TWAP",
|
|
10
10
|
"name": "_twap",
|
|
11
11
|
"type": "address"
|
|
12
12
|
}
|
|
@@ -481,8 +481,8 @@
|
|
|
481
481
|
"type": "function"
|
|
482
482
|
}
|
|
483
483
|
],
|
|
484
|
-
"bytecode": "0x60a060405234801561001057600080fd5b5060405161175c38038061175c83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161168c6100d06000396000818160610152818161011b015281816101df01528181610280015281816103ae015281816105e50152818161068f015281816107bb015281816108be0152818161095f0152610a5b015261168c6000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80631208aa181461005c57806319f37aea146100a05780631f7b6d32146100c057806334b819fc146100e05780635371c9eb146100f3575b600080fd5b6100837f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100b36100ae366004610eab565b610106565b6040516100979190610f96565b6100c86105e1565b6040516001600160401b039091168152602001610097565b6100b36100ee366004611124565b61066a565b6100b3610101366004610eab565b61086b565b606060006101148484610c8d565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663454b15806040518163ffffffff1660e01b8152600401602060405180830381865afa158015610177573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019b919061115a565b905060005b8351816001600160401b031610156104ff5760006101be828961118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561022e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610252919061115a565b63ffffffff164210156104ec5760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156102cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102f79190810190611337565b9050806080015160600151816040015161031191906114b7565b63ffffffff16421180156103715750896001600160a01b03168160a00151602001516001600160a01b031614158061037157508381608001516040015161035891906114d4565b60a08201515161036891906114b7565b63ffffffff1642115b8015610424575061038181610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611500565b10155b80156104af575061043481610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610488573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ac9190611500565b10155b156104ea578086866001600160401b0316815181106104d0576104d0611519565b602002602001018190525084806104e69061152f565b9550505b505b50806104f78161152f565b9150506101a0565b50816001600160401b03166001600160401b03811115610521576105216111b2565b60405190808252806020026020018201604052801561055a57816020015b610547610da7565b81526020019060019003908161053f5790505b50935060005b826001600160401b0316816001600160401b031610156105d65783816001600160401b03168151811061059557610595611519565b602002602001015185826001600160401b0316815181106105b8576105b8611519565b602002602001018190525080806105ce9061152f565b915050610560565b505050509392505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631f7b6d326040518163ffffffff1660e01b8152600401602060405180830381865afa158015610641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106659190611555565b905090565b6040516301c961a560e11b81526001600160a01b0382811660048301526060916000917f00000000000000000000000000000000000000000000000000000000000000001690630392c34a90602401600060405180830381865afa1580156106d6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106fe9190810190611572565b905080516001600160401b03811115610719576107196111b2565b60405190808252806020026020018201604052801561075257816020015b61073f610da7565b8152602001906001900390816107375790505b50915060005b8251816001600160401b0316101561086457600082826001600160401b03168151811061078757610787611519565b602090810291909101015160405163a0b94e0b60e01b81526001600160401b03821660048201529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a0b94e0b90602401600060405180830381865afa158015610802573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261082a9190810190611337565b84836001600160401b03168151811061084557610845611519565b602002602001018190525050808061085c9061152f565b915050610758565b5050919050565b606060006108798484610c8d565b90506000805b8251816001600160401b03161015610bac57600061089d828861118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561090d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610931919061115a565b63ffffffff16421015610b995760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156109ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526109d69190810190611337565b9050886001600160a01b03168160a00151602001516001600160a01b0316148015610a1e575060808101516040015160a082015151610a1591906114b7565b63ffffffff1642115b8015610ad15750610a2e81610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace9190611500565b10155b8015610b5c5750610ae181610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610b35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b599190611500565b10155b15610b97578085856001600160401b031681518110610b7d57610b7d611519565b60200260200101819052508380610b939061152f565b9450505b505b5080610ba48161152f565b91505061087f565b50806001600160401b03166001600160401b03811115610bce57610bce6111b2565b604051908082528060200260200182016040528015610c0757816020015b610bf4610da7565b815260200190600190039081610bec5790505b50925060005b816001600160401b0316816001600160401b03161015610c835782816001600160401b031681518110610c4257610c42611519565b602002602001015184826001600160401b031681518110610c6557610c65611519565b60200260200101819052508080610c7b9061152f565b915050610c0d565b5050509392505050565b6060610c976105e1565b6001600160401b0316836001600160401b031610610ce75760405162461bcd60e51b81526020600482015260096024820152680d8c2e6e892dcc8caf60bb1b604482015260640160405180910390fd5b610d0d610cf5846001611623565b6001600160401b0316836001600160401b0316610d8f565b6001600160401b03811115610d2457610d246111b2565b604051908082528060200260200182016040528015610d5d57816020015b610d4a610da7565b815260200190600190039081610d425790505b5090505b92915050565b6000610d6182608001516101200151836060015184608001516101000151610d8f9190611643565b6000818310610d9e5781610da0565b825b9392505050565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001610e796040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b905290565b6001600160a01b0381168114610e9357600080fd5b50565b6001600160401b0381168114610e9357600080fd5b600080600060608486031215610ec057600080fd5b8335610ecb81610e7e565b92506020840135610edb81610e96565b91506040840135610eeb81610e96565b809150509250925092565b60005b83811015610f11578181015183820152602001610ef9565b50506000910152565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a085015280518060c0860152610f818160e0870160208501610ef6565b601f01601f19169390930160e0019392505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b8381101561111657888303603f19018552815180516001600160401b031684528781015163ffffffff908116898601528782015181168886015260608083015181870152608080840151805190931681880152610200928b81015160a061102b818b018363ffffffff169052565b8c830151915060c0611044818c018463ffffffff169052565b948301519460e0925061105e8b84018763ffffffff169052565b9383015194506101009361107c8b8601876001600160a01b03169052565b818401519550610120611099818d01886001600160a01b03169052565b908401519550610140906110b78c8301886001600160a01b03169052565b928401516001600160a01b03166101608c0152938301516101808b0152908201516101a08a01529101516101c088015292909201516101e08601829052915061110281860183610f1a565b968901969450505090860190600101610fbd565b509098975050505050505050565b60006020828403121561113657600080fd5b8135610da081610e7e565b805163ffffffff8116811461115557600080fd5b919050565b60006020828403121561116c57600080fd5b610da082611141565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038281168282160390808211156111ab576111ab611175565b5092915050565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156111ea576111ea6111b2565b60405290565b60405161016081016001600160401b03811182821017156111ea576111ea6111b2565b604051601f8201601f191681016001600160401b038111828210171561123b5761123b6111b2565b604052919050565b805161115581610e7e565b600060c0828403121561126057600080fd5b6112686111c8565b905061127382611141565b815260208083015161128481610e7e565b82820152604083015161129681610e7e565b80604084015250606083015160608301526080830151608083015260a08301516001600160401b03808211156112cb57600080fd5b818501915085601f8301126112df57600080fd5b8151818111156112f1576112f16111b2565b611303601f8201601f19168501611213565b9150808252868482850101111561131957600080fd5b61132881858401868601610ef6565b5060a084015250909392505050565b60006020828403121561134957600080fd5b81516001600160401b038082111561136057600080fd5b9083019081850361020081121561137657600080fd5b61137e6111c8565b835161138981610e96565b815261139760208501611141565b60208201526113a860408501611141565b60408201526060840151606082015261016080607f19840112156113cb57600080fd5b6113d36111f0565b92506113e160808601611141565b83526113ef60a08601611141565b602084015261140060c08601611141565b604084015261141160e08601611141565b6060840152610100611424818701611243565b6080850152610120611437818801611243565b60a086015261014061144a818901611243565b60c087015261145a848901611243565b60e0870152610180880151838701526101a0880151828701526101c088015181870152505050508160808201526101e084015191508282111561149c57600080fd5b6114a88783860161124e565b60a08201529695505050505050565b63ffffffff8181168382160190808211156111ab576111ab611175565b600063ffffffff808316818516818304811182151516156114f7576114f7611175565b02949350505050565b60006020828403121561151257600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60006001600160401b0380831681810361154b5761154b611175565b6001019392505050565b60006020828403121561156757600080fd5b8151610da081610e96565b6000602080838503121561158557600080fd5b82516001600160401b038082111561159c57600080fd5b818501915085601f8301126115b057600080fd5b8151818111156115c2576115c26111b2565b8060051b91506115d3848301611213565b81815291830184019184810190888411156115ed57600080fd5b938501935b83851015611617578451925061160783610e96565b82825293850193908501906115f2565b98975050505050505050565b6001600160401b038181168382160190808211156111ab576111ab611175565b81810381811115610d6157610d6161117556fea2646970667358221220af6f6a0b608beea5b35f180839ddcbfbabd1bfca0c3050d89cbeb11e6093317764736f6c63430008100033",
|
|
485
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c80631208aa181461005c57806319f37aea146100a05780631f7b6d32146100c057806334b819fc146100e05780635371c9eb146100f3575b600080fd5b6100837f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100b36100ae366004610eab565b610106565b6040516100979190610f96565b6100c86105e1565b6040516001600160401b039091168152602001610097565b6100b36100ee366004611124565b61066a565b6100b3610101366004610eab565b61086b565b606060006101148484610c8d565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663454b15806040518163ffffffff1660e01b8152600401602060405180830381865afa158015610177573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019b919061115a565b905060005b8351816001600160401b031610156104ff5760006101be828961118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561022e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610252919061115a565b63ffffffff164210156104ec5760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156102cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102f79190810190611337565b9050806080015160600151816040015161031191906114b7565b63ffffffff16421180156103715750896001600160a01b03168160a00151602001516001600160a01b031614158061037157508381608001516040015161035891906114d4565b60a08201515161036891906114b7565b63ffffffff1642115b8015610424575061038181610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611500565b10155b80156104af575061043481610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610488573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ac9190611500565b10155b156104ea578086866001600160401b0316815181106104d0576104d0611519565b602002602001018190525084806104e69061152f565b9550505b505b50806104f78161152f565b9150506101a0565b50816001600160401b03166001600160401b03811115610521576105216111b2565b60405190808252806020026020018201604052801561055a57816020015b610547610da7565b81526020019060019003908161053f5790505b50935060005b826001600160401b0316816001600160401b031610156105d65783816001600160401b03168151811061059557610595611519565b602002602001015185826001600160401b0316815181106105b8576105b8611519565b602002602001018190525080806105ce9061152f565b915050610560565b505050509392505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631f7b6d326040518163ffffffff1660e01b8152600401602060405180830381865afa158015610641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106659190611555565b905090565b6040516301c961a560e11b81526001600160a01b0382811660048301526060916000917f00000000000000000000000000000000000000000000000000000000000000001690630392c34a90602401600060405180830381865afa1580156106d6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106fe9190810190611572565b905080516001600160401b03811115610719576107196111b2565b60405190808252806020026020018201604052801561075257816020015b61073f610da7565b8152602001906001900390816107375790505b50915060005b8251816001600160401b0316101561086457600082826001600160401b03168151811061078757610787611519565b602090810291909101015160405163a0b94e0b60e01b81526001600160401b03821660048201529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a0b94e0b90602401600060405180830381865afa158015610802573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261082a9190810190611337565b84836001600160401b03168151811061084557610845611519565b602002602001018190525050808061085c9061152f565b915050610758565b5050919050565b606060006108798484610c8d565b90506000805b8251816001600160401b03161015610bac57600061089d828861118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561090d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610931919061115a565b63ffffffff16421015610b995760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156109ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526109d69190810190611337565b9050886001600160a01b03168160a00151602001516001600160a01b0316148015610a1e575060808101516040015160a082015151610a1591906114b7565b63ffffffff1642115b8015610ad15750610a2e81610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace9190611500565b10155b8015610b5c5750610ae181610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610b35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b599190611500565b10155b15610b97578085856001600160401b031681518110610b7d57610b7d611519565b60200260200101819052508380610b939061152f565b9450505b505b5080610ba48161152f565b91505061087f565b50806001600160401b03166001600160401b03811115610bce57610bce6111b2565b604051908082528060200260200182016040528015610c0757816020015b610bf4610da7565b815260200190600190039081610bec5790505b50925060005b816001600160401b0316816001600160401b03161015610c835782816001600160401b031681518110610c4257610c42611519565b602002602001015184826001600160401b031681518110610c6557610c65611519565b60200260200101819052508080610c7b9061152f565b915050610c0d565b5050509392505050565b6060610c976105e1565b6001600160401b0316836001600160401b031610610ce75760405162461bcd60e51b81526020600482015260096024820152680d8c2e6e892dcc8caf60bb1b604482015260640160405180910390fd5b610d0d610cf5846001611623565b6001600160401b0316836001600160401b0316610d8f565b6001600160401b03811115610d2457610d246111b2565b604051908082528060200260200182016040528015610d5d57816020015b610d4a610da7565b815260200190600190039081610d425790505b5090505b92915050565b6000610d6182608001516101200151836060015184608001516101000151610d8f9190611643565b6000818310610d9e5781610da0565b825b9392505050565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001610e796040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b905290565b6001600160a01b0381168114610e9357600080fd5b50565b6001600160401b0381168114610e9357600080fd5b600080600060608486031215610ec057600080fd5b8335610ecb81610e7e565b92506020840135610edb81610e96565b91506040840135610eeb81610e96565b809150509250925092565b60005b83811015610f11578181015183820152602001610ef9565b50506000910152565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a085015280518060c0860152610f818160e0870160208501610ef6565b601f01601f19169390930160e0019392505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b8381101561111657888303603f19018552815180516001600160401b031684528781015163ffffffff908116898601528782015181168886015260608083015181870152608080840151805190931681880152610200928b81015160a061102b818b018363ffffffff169052565b8c830151915060c0611044818c018463ffffffff169052565b948301519460e0925061105e8b84018763ffffffff169052565b9383015194506101009361107c8b8601876001600160a01b03169052565b818401519550610120611099818d01886001600160a01b03169052565b908401519550610140906110b78c8301886001600160a01b03169052565b928401516001600160a01b03166101608c0152938301516101808b0152908201516101a08a01529101516101c088015292909201516101e08601829052915061110281860183610f1a565b968901969450505090860190600101610fbd565b509098975050505050505050565b60006020828403121561113657600080fd5b8135610da081610e7e565b805163ffffffff8116811461115557600080fd5b919050565b60006020828403121561116c57600080fd5b610da082611141565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038281168282160390808211156111ab576111ab611175565b5092915050565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156111ea576111ea6111b2565b60405290565b60405161016081016001600160401b03811182821017156111ea576111ea6111b2565b604051601f8201601f191681016001600160401b038111828210171561123b5761123b6111b2565b604052919050565b805161115581610e7e565b600060c0828403121561126057600080fd5b6112686111c8565b905061127382611141565b815260208083015161128481610e7e565b82820152604083015161129681610e7e565b80604084015250606083015160608301526080830151608083015260a08301516001600160401b03808211156112cb57600080fd5b818501915085601f8301126112df57600080fd5b8151818111156112f1576112f16111b2565b611303601f8201601f19168501611213565b9150808252868482850101111561131957600080fd5b61132881858401868601610ef6565b5060a084015250909392505050565b60006020828403121561134957600080fd5b81516001600160401b038082111561136057600080fd5b9083019081850361020081121561137657600080fd5b61137e6111c8565b835161138981610e96565b815261139760208501611141565b60208201526113a860408501611141565b60408201526060840151606082015261016080607f19840112156113cb57600080fd5b6113d36111f0565b92506113e160808601611141565b83526113ef60a08601611141565b602084015261140060c08601611141565b604084015261141160e08601611141565b6060840152610100611424818701611243565b6080850152610120611437818801611243565b60a086015261014061144a818901611243565b60c087015261145a848901611243565b60e0870152610180880151838701526101a0880151828701526101c088015181870152505050508160808201526101e084015191508282111561149c57600080fd5b6114a88783860161124e565b60a08201529695505050505050565b63ffffffff8181168382160190808211156111ab576111ab611175565b600063ffffffff808316818516818304811182151516156114f7576114f7611175565b02949350505050565b60006020828403121561151257600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60006001600160401b0380831681810361154b5761154b611175565b6001019392505050565b60006020828403121561156757600080fd5b8151610da081610e96565b6000602080838503121561158557600080fd5b82516001600160401b038082111561159c57600080fd5b818501915085601f8301126115b057600080fd5b8151818111156115c2576115c26111b2565b8060051b91506115d3848301611213565b81815291830184019184810190888411156115ed57600080fd5b938501935b83851015611617578451925061160783610e96565b82825293850193908501906115f2565b98975050505050505050565b6001600160401b038181168382160190808211156111ab576111ab611175565b81810381811115610d6157610d6161117556fea2646970667358221220af6f6a0b608beea5b35f180839ddcbfbabd1bfca0c3050d89cbeb11e6093317764736f6c63430008100033",
|
|
484
|
+
"bytecode": "0x60a060405234801561001057600080fd5b5060405161175c38038061175c83398101604081905261002f91610040565b6001600160a01b0316608052610070565b60006020828403121561005257600080fd5b81516001600160a01b038116811461006957600080fd5b9392505050565b60805161168c6100d06000396000818160610152818161011b015281816101df01528181610280015281816103ae015281816105e50152818161068f015281816107bb015281816108be0152818161095f0152610a5b015261168c6000f3fe608060405234801561001057600080fd5b50600436106100575760003560e01c80631208aa181461005c57806319f37aea146100a05780631f7b6d32146100c057806334b819fc146100e05780635371c9eb146100f3575b600080fd5b6100837f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100b36100ae366004610eab565b610106565b6040516100979190610f96565b6100c86105e1565b6040516001600160401b039091168152602001610097565b6100b36100ee366004611124565b61066a565b6100b3610101366004610eab565b61086b565b606060006101148484610c8d565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663454b15806040518163ffffffff1660e01b8152600401602060405180830381865afa158015610177573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019b919061115a565b905060005b8351816001600160401b031610156104ff5760006101be828961118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561022e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610252919061115a565b63ffffffff164210156104ec5760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156102cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102f79190810190611337565b9050806080015160600151816040015161031191906114b7565b63ffffffff16421180156103715750896001600160a01b03168160a00151602001516001600160a01b031614158061037157508381608001516040015161035891906114d4565b60a08201515161036891906114b7565b63ffffffff1642115b8015610424575061038181610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611500565b10155b80156104af575061043481610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610488573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ac9190611500565b10155b156104ea578086866001600160401b0316815181106104d0576104d0611519565b602002602001018190525084806104e69061152f565b9550505b505b50806104f78161152f565b9150506101a0565b50816001600160401b03166001600160401b03811115610521576105216111b2565b60405190808252806020026020018201604052801561055a57816020015b610547610da7565b81526020019060019003908161053f5790505b50935060005b826001600160401b0316816001600160401b031610156105d65783816001600160401b03168151811061059557610595611519565b602002602001015185826001600160401b0316815181106105b8576105b8611519565b602002602001018190525080806105ce9061152f565b915050610560565b505050509392505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631f7b6d326040518163ffffffff1660e01b8152600401602060405180830381865afa158015610641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106659190611555565b905090565b6040516301c961a560e11b81526001600160a01b0382811660048301526060916000917f00000000000000000000000000000000000000000000000000000000000000001690630392c34a90602401600060405180830381865afa1580156106d6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106fe9190810190611572565b905080516001600160401b03811115610719576107196111b2565b60405190808252806020026020018201604052801561075257816020015b61073f610da7565b8152602001906001900390816107375790505b50915060005b8251816001600160401b0316101561086457600082826001600160401b03168151811061078757610787611519565b602090810291909101015160405163a0b94e0b60e01b81526001600160401b03821660048201529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a0b94e0b90602401600060405180830381865afa158015610802573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261082a9190810190611337565b84836001600160401b03168151811061084557610845611519565b602002602001018190525050808061085c9061152f565b915050610758565b5050919050565b606060006108798484610c8d565b90506000805b8251816001600160401b03161015610bac57600061089d828861118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561090d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610931919061115a565b63ffffffff16421015610b995760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156109ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526109d69190810190611337565b9050886001600160a01b03168160a00151602001516001600160a01b0316148015610a1e575060808101516040015160a082015151610a1591906114b7565b63ffffffff1642115b8015610ad15750610a2e81610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace9190611500565b10155b8015610b5c5750610ae181610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610b35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b599190611500565b10155b15610b97578085856001600160401b031681518110610b7d57610b7d611519565b60200260200101819052508380610b939061152f565b9450505b505b5080610ba48161152f565b91505061087f565b50806001600160401b03166001600160401b03811115610bce57610bce6111b2565b604051908082528060200260200182016040528015610c0757816020015b610bf4610da7565b815260200190600190039081610bec5790505b50925060005b816001600160401b0316816001600160401b03161015610c835782816001600160401b031681518110610c4257610c42611519565b602002602001015184826001600160401b031681518110610c6557610c65611519565b60200260200101819052508080610c7b9061152f565b915050610c0d565b5050509392505050565b6060610c976105e1565b6001600160401b0316836001600160401b031610610ce75760405162461bcd60e51b81526020600482015260096024820152680d8c2e6e892dcc8caf60bb1b604482015260640160405180910390fd5b610d0d610cf5846001611623565b6001600160401b0316836001600160401b0316610d8f565b6001600160401b03811115610d2457610d246111b2565b604051908082528060200260200182016040528015610d5d57816020015b610d4a610da7565b815260200190600190039081610d425790505b5090505b92915050565b6000610d6182608001516101200151836060015184608001516101000151610d8f9190611643565b6000818310610d9e5781610da0565b825b9392505050565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001610e796040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b905290565b6001600160a01b0381168114610e9357600080fd5b50565b6001600160401b0381168114610e9357600080fd5b600080600060608486031215610ec057600080fd5b8335610ecb81610e7e565b92506020840135610edb81610e96565b91506040840135610eeb81610e96565b809150509250925092565b60005b83811015610f11578181015183820152602001610ef9565b50506000910152565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a085015280518060c0860152610f818160e0870160208501610ef6565b601f01601f19169390930160e0019392505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b8381101561111657888303603f19018552815180516001600160401b031684528781015163ffffffff908116898601528782015181168886015260608083015181870152608080840151805190931681880152610200928b81015160a061102b818b018363ffffffff169052565b8c830151915060c0611044818c018463ffffffff169052565b948301519460e0925061105e8b84018763ffffffff169052565b9383015194506101009361107c8b8601876001600160a01b03169052565b818401519550610120611099818d01886001600160a01b03169052565b908401519550610140906110b78c8301886001600160a01b03169052565b928401516001600160a01b03166101608c0152938301516101808b0152908201516101a08a01529101516101c088015292909201516101e08601829052915061110281860183610f1a565b968901969450505090860190600101610fbd565b509098975050505050505050565b60006020828403121561113657600080fd5b8135610da081610e7e565b805163ffffffff8116811461115557600080fd5b919050565b60006020828403121561116c57600080fd5b610da082611141565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038281168282160390808211156111ab576111ab611175565b5092915050565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156111ea576111ea6111b2565b60405290565b60405161016081016001600160401b03811182821017156111ea576111ea6111b2565b604051601f8201601f191681016001600160401b038111828210171561123b5761123b6111b2565b604052919050565b805161115581610e7e565b600060c0828403121561126057600080fd5b6112686111c8565b905061127382611141565b815260208083015161128481610e7e565b82820152604083015161129681610e7e565b80604084015250606083015160608301526080830151608083015260a08301516001600160401b03808211156112cb57600080fd5b818501915085601f8301126112df57600080fd5b8151818111156112f1576112f16111b2565b611303601f8201601f19168501611213565b9150808252868482850101111561131957600080fd5b61132881858401868601610ef6565b5060a084015250909392505050565b60006020828403121561134957600080fd5b81516001600160401b038082111561136057600080fd5b9083019081850361020081121561137657600080fd5b61137e6111c8565b835161138981610e96565b815261139760208501611141565b60208201526113a860408501611141565b60408201526060840151606082015261016080607f19840112156113cb57600080fd5b6113d36111f0565b92506113e160808601611141565b83526113ef60a08601611141565b602084015261140060c08601611141565b604084015261141160e08601611141565b6060840152610100611424818701611243565b6080850152610120611437818801611243565b60a086015261014061144a818901611243565b60c087015261145a848901611243565b60e0870152610180880151838701526101a0880151828701526101c088015181870152505050508160808201526101e084015191508282111561149c57600080fd5b6114a88783860161124e565b60a08201529695505050505050565b63ffffffff8181168382160190808211156111ab576111ab611175565b600063ffffffff808316818516818304811182151516156114f7576114f7611175565b02949350505050565b60006020828403121561151257600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60006001600160401b0380831681810361154b5761154b611175565b6001019392505050565b60006020828403121561156757600080fd5b8151610da081610e96565b6000602080838503121561158557600080fd5b82516001600160401b038082111561159c57600080fd5b818501915085601f8301126115b057600080fd5b8151818111156115c2576115c26111b2565b8060051b91506115d3848301611213565b81815291830184019184810190888411156115ed57600080fd5b938501935b83851015611617578451925061160783610e96565b82825293850193908501906115f2565b98975050505050505050565b6001600160401b038181168382160190808211156111ab576111ab611175565b81810381811115610d6157610d6161117556fea2646970667358221220bfee0a453d60fba952f3eb89b0464ea15b426e46557da3f0999520afe5cce8cc64736f6c63430008100033",
|
|
485
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100575760003560e01c80631208aa181461005c57806319f37aea146100a05780631f7b6d32146100c057806334b819fc146100e05780635371c9eb146100f3575b600080fd5b6100837f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6100b36100ae366004610eab565b610106565b6040516100979190610f96565b6100c86105e1565b6040516001600160401b039091168152602001610097565b6100b36100ee366004611124565b61066a565b6100b3610101366004610eab565b61086b565b606060006101148484610c8d565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663454b15806040518163ffffffff1660e01b8152600401602060405180830381865afa158015610177573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019b919061115a565b905060005b8351816001600160401b031610156104ff5760006101be828961118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561022e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610252919061115a565b63ffffffff164210156104ec5760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156102cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102f79190810190611337565b9050806080015160600151816040015161031191906114b7565b63ffffffff16421180156103715750896001600160a01b03168160a00151602001516001600160a01b031614158061037157508381608001516040015161035891906114d4565b60a08201515161036891906114b7565b63ffffffff1642115b8015610424575061038181610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa1580156103fd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104219190611500565b10155b80156104af575061043481610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610488573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104ac9190611500565b10155b156104ea578086866001600160401b0316815181106104d0576104d0611519565b602002602001018190525084806104e69061152f565b9550505b505b50806104f78161152f565b9150506101a0565b50816001600160401b03166001600160401b03811115610521576105216111b2565b60405190808252806020026020018201604052801561055a57816020015b610547610da7565b81526020019060019003908161053f5790505b50935060005b826001600160401b0316816001600160401b031610156105d65783816001600160401b03168151811061059557610595611519565b602002602001015185826001600160401b0316815181106105b8576105b8611519565b602002602001018190525080806105ce9061152f565b915050610560565b505050509392505050565b60007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316631f7b6d326040518163ffffffff1660e01b8152600401602060405180830381865afa158015610641573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106659190611555565b905090565b6040516301c961a560e11b81526001600160a01b0382811660048301526060916000917f00000000000000000000000000000000000000000000000000000000000000001690630392c34a90602401600060405180830381865afa1580156106d6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526106fe9190810190611572565b905080516001600160401b03811115610719576107196111b2565b60405190808252806020026020018201604052801561075257816020015b61073f610da7565b8152602001906001900390816107375790505b50915060005b8251816001600160401b0316101561086457600082826001600160401b03168151811061078757610787611519565b602090810291909101015160405163a0b94e0b60e01b81526001600160401b03821660048201529091506001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a0b94e0b90602401600060405180830381865afa158015610802573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261082a9190810190611337565b84836001600160401b03168151811061084557610845611519565b602002602001018190525050808061085c9061152f565b915050610758565b5050919050565b606060006108798484610c8d565b90506000805b8251816001600160401b03161015610bac57600061089d828861118b565b6040516342d21ef760e01b81526001600160401b03821660048201529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906342d21ef790602401602060405180830381865afa15801561090d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610931919061115a565b63ffffffff16421015610b995760405163a0b94e0b60e01b81526001600160401b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a0b94e0b90602401600060405180830381865afa1580156109ae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526109d69190810190611337565b9050886001600160a01b03168160a00151602001516001600160a01b0316148015610a1e575060808101516040015160a082015151610a1591906114b7565b63ffffffff1642115b8015610ad15750610a2e81610d67565b60808281015160c0810151910151604051636eb1769f60e11b81526001600160a01b0391821660048201527f00000000000000000000000000000000000000000000000000000000000000008216602482015291169063dd62ed3e90604401602060405180830381865afa158015610aaa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ace9190611500565b10155b8015610b5c5750610ae181610d67565b60808281015160c08101519101516040516370a0823160e01b81526001600160a01b0391821660048201529116906370a0823190602401602060405180830381865afa158015610b35573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b599190611500565b10155b15610b97578085856001600160401b031681518110610b7d57610b7d611519565b60200260200101819052508380610b939061152f565b9450505b505b5080610ba48161152f565b91505061087f565b50806001600160401b03166001600160401b03811115610bce57610bce6111b2565b604051908082528060200260200182016040528015610c0757816020015b610bf4610da7565b815260200190600190039081610bec5790505b50925060005b816001600160401b0316816001600160401b03161015610c835782816001600160401b031681518110610c4257610c42611519565b602002602001015184826001600160401b031681518110610c6557610c65611519565b60200260200101819052508080610c7b9061152f565b915050610c0d565b5050509392505050565b6060610c976105e1565b6001600160401b0316836001600160401b031610610ce75760405162461bcd60e51b81526020600482015260096024820152680d8c2e6e892dcc8caf60bb1b604482015260640160405180910390fd5b610d0d610cf5846001611623565b6001600160401b0316836001600160401b0316610d8f565b6001600160401b03811115610d2457610d246111b2565b604051908082528060200260200182016040528015610d5d57816020015b610d4a610da7565b815260200190600190039081610d425790505b5090505b92915050565b6000610d6182608001516101200151836060015184608001516101000151610d8f9190611643565b6000818310610d9e5781610da0565b825b9392505050565b6040805160c08082018352600080835260208084018290528385018290526060808501839052855161016081018752838152918201839052948101829052938401819052608084810182905260a0850182905291840181905260e08401819052610100840181905261012084018190526101408401529091908201908152602001610e796040518060c00160405280600063ffffffff16815260200160006001600160a01b0316815260200160006001600160a01b031681526020016000815260200160008152602001606081525090565b905290565b6001600160a01b0381168114610e9357600080fd5b50565b6001600160401b0381168114610e9357600080fd5b600080600060608486031215610ec057600080fd5b8335610ecb81610e7e565b92506020840135610edb81610e96565b91506040840135610eeb81610e96565b809150509250925092565b60005b83811015610f11578181015183820152602001610ef9565b50506000910152565b63ffffffff81511682526000602082015160018060a01b0380821660208601528060408501511660408601525050606082015160608401526080820151608084015260a082015160c060a085015280518060c0860152610f818160e0870160208501610ef6565b601f01601f19169390930160e0019392505050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b8381101561111657888303603f19018552815180516001600160401b031684528781015163ffffffff908116898601528782015181168886015260608083015181870152608080840151805190931681880152610200928b81015160a061102b818b018363ffffffff169052565b8c830151915060c0611044818c018463ffffffff169052565b948301519460e0925061105e8b84018763ffffffff169052565b9383015194506101009361107c8b8601876001600160a01b03169052565b818401519550610120611099818d01886001600160a01b03169052565b908401519550610140906110b78c8301886001600160a01b03169052565b928401516001600160a01b03166101608c0152938301516101808b0152908201516101a08a01529101516101c088015292909201516101e08601829052915061110281860183610f1a565b968901969450505090860190600101610fbd565b509098975050505050505050565b60006020828403121561113657600080fd5b8135610da081610e7e565b805163ffffffff8116811461115557600080fd5b919050565b60006020828403121561116c57600080fd5b610da082611141565b634e487b7160e01b600052601160045260246000fd5b6001600160401b038281168282160390808211156111ab576111ab611175565b5092915050565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b03811182821017156111ea576111ea6111b2565b60405290565b60405161016081016001600160401b03811182821017156111ea576111ea6111b2565b604051601f8201601f191681016001600160401b038111828210171561123b5761123b6111b2565b604052919050565b805161115581610e7e565b600060c0828403121561126057600080fd5b6112686111c8565b905061127382611141565b815260208083015161128481610e7e565b82820152604083015161129681610e7e565b80604084015250606083015160608301526080830151608083015260a08301516001600160401b03808211156112cb57600080fd5b818501915085601f8301126112df57600080fd5b8151818111156112f1576112f16111b2565b611303601f8201601f19168501611213565b9150808252868482850101111561131957600080fd5b61132881858401868601610ef6565b5060a084015250909392505050565b60006020828403121561134957600080fd5b81516001600160401b038082111561136057600080fd5b9083019081850361020081121561137657600080fd5b61137e6111c8565b835161138981610e96565b815261139760208501611141565b60208201526113a860408501611141565b60408201526060840151606082015261016080607f19840112156113cb57600080fd5b6113d36111f0565b92506113e160808601611141565b83526113ef60a08601611141565b602084015261140060c08601611141565b604084015261141160e08601611141565b6060840152610100611424818701611243565b6080850152610120611437818801611243565b60a086015261014061144a818901611243565b60c087015261145a848901611243565b60e0870152610180880151838701526101a0880151828701526101c088015181870152505050508160808201526101e084015191508282111561149c57600080fd5b6114a88783860161124e565b60a08201529695505050505050565b63ffffffff8181168382160190808211156111ab576111ab611175565b600063ffffffff808316818516818304811182151516156114f7576114f7611175565b02949350505050565b60006020828403121561151257600080fd5b5051919050565b634e487b7160e01b600052603260045260246000fd5b60006001600160401b0380831681810361154b5761154b611175565b6001019392505050565b60006020828403121561156757600080fd5b8151610da081610e96565b6000602080838503121561158557600080fd5b82516001600160401b038082111561159c57600080fd5b818501915085601f8301126115b057600080fd5b8151818111156115c2576115c26111b2565b8060051b91506115d3848301611213565b81815291830184019184810190888411156115ed57600080fd5b938501935b83851015611617578451925061160783610e96565b82825293850193908501906115f2565b98975050505050505050565b6001600160401b038181168382160190808211156111ab576111ab611175565b81810381811115610d6157610d6161117556fea2646970667358221220bfee0a453d60fba952f3eb89b0464ea15b426e46557da3f0999520afe5cce8cc64736f6c63430008100033",
|
|
486
486
|
"linkReferences": {},
|
|
487
487
|
"deployedLinkReferences": {}
|
|
488
488
|
}
|
package/dist/src/configs.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Paraswap } from "./paraswap";
|
|
1
2
|
export interface TokenData {
|
|
2
3
|
address: string;
|
|
3
4
|
decimals: number;
|
|
@@ -5,14 +6,16 @@ export interface TokenData {
|
|
|
5
6
|
logoUrl?: string;
|
|
6
7
|
}
|
|
7
8
|
export interface Config {
|
|
8
|
-
partner: string;
|
|
9
9
|
chainId: number;
|
|
10
10
|
twapAddress: string;
|
|
11
11
|
lensAddress: string;
|
|
12
|
-
exchangeAddress: string;
|
|
13
12
|
bidDelaySeconds: number;
|
|
14
13
|
minChunkSizeUsd: number;
|
|
15
14
|
wToken: TokenData;
|
|
15
|
+
partner: string;
|
|
16
|
+
exchangeAddress: string;
|
|
17
|
+
exchangeContract: "UniswapV2Exchange" | "ParaswapExchange";
|
|
18
|
+
pathfinderKey: Paraswap.OnlyDex;
|
|
16
19
|
}
|
|
17
20
|
export declare const SpiritSwapConfig: Config;
|
|
18
21
|
export declare const SpookySwapConfig: Config;
|
package/dist/src/configs.js
CHANGED
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.chainConfig = exports.isNativeAddress = exports.nativeTokenAddresses = exports.SpookySwapConfig = exports.SpiritSwapConfig = void 0;
|
|
7
7
|
const web3_candies_1 = require("@defi.org/web3-candies");
|
|
8
8
|
const lodash_1 = __importDefault(require("lodash"));
|
|
9
|
+
const paraswap_1 = require("./paraswap");
|
|
9
10
|
const ChainConfigs = {
|
|
10
11
|
eth: {
|
|
11
12
|
chainId: 1,
|
|
@@ -75,13 +76,8 @@ const ChainConfigs = {
|
|
|
75
76
|
// partner: "QuickSwap",
|
|
76
77
|
// exchangeAddress: "0xeFE1B6096838949156e5130604434A2a13c68C68",
|
|
77
78
|
// };
|
|
78
|
-
exports.SpiritSwapConfig = Object.assign(Object.assign({}, ChainConfigs.ftm), { partner: "SpiritSwap", exchangeAddress: "0xAd19179201be5A51D1cBd3bB2fC651BB05822404" });
|
|
79
|
-
exports.SpookySwapConfig = Object.assign(Object.assign({}, ChainConfigs.ftm), { partner: "SpookySwap", exchangeAddress: "0x37F427DA0D12Fe2C80aCa09EE08e7e92A1B2B114" });
|
|
80
|
-
// export const PangolinConfig: Config = {
|
|
81
|
-
// ...ChainConfigs.avax,
|
|
82
|
-
// partner: "Pangolin",
|
|
83
|
-
// exchangeAddress: "",
|
|
84
|
-
// };
|
|
79
|
+
exports.SpiritSwapConfig = Object.assign(Object.assign({}, ChainConfigs.ftm), { partner: "SpiritSwap", exchangeAddress: "0xAd19179201be5A51D1cBd3bB2fC651BB05822404", exchangeContract: "ParaswapExchange", pathfinderKey: paraswap_1.Paraswap.OnlyDex.SpiritSwap });
|
|
80
|
+
exports.SpookySwapConfig = Object.assign(Object.assign({}, ChainConfigs.ftm), { partner: "SpookySwap", exchangeAddress: "0x37F427DA0D12Fe2C80aCa09EE08e7e92A1B2B114", exchangeContract: "UniswapV2Exchange", pathfinderKey: paraswap_1.Paraswap.OnlyDex.SpookySwap });
|
|
85
81
|
exports.nativeTokenAddresses = [
|
|
86
82
|
web3_candies_1.zeroAddress,
|
|
87
83
|
"0x0000000000000000000000000000000000001010",
|
package/dist/src/lib.d.ts
CHANGED
|
@@ -6,12 +6,12 @@ export declare const twapAbi: any;
|
|
|
6
6
|
export declare const lensAbi: any;
|
|
7
7
|
export declare class TWAPLib {
|
|
8
8
|
config: Config;
|
|
9
|
-
provider: any;
|
|
10
9
|
maker: string;
|
|
10
|
+
provider?: any;
|
|
11
11
|
twap: TWAP;
|
|
12
12
|
lens: Lens;
|
|
13
|
-
constructor(config: Config,
|
|
14
|
-
dstAmount: (srcToken: TokenData, dstToken: TokenData, srcAmount: BN.Value,
|
|
13
|
+
constructor(config: Config, maker: string, provider?: any);
|
|
14
|
+
dstAmount: (srcToken: TokenData, dstToken: TokenData, srcAmount: BN.Value, srcUsdMarket: BN.Value, dstUsdMarket: BN.Value, limitDstPriceFor1Src: BN.Value, isMarketOrder: boolean) => BN;
|
|
15
15
|
isNativeToken: (token: TokenData) => boolean;
|
|
16
16
|
isValidChain: (chainId: number) => boolean;
|
|
17
17
|
maxPossibleChunks: (srcToken: TokenData, srcAmount: BN.Value, srcUsd: BN.Value) => number;
|
|
@@ -20,7 +20,8 @@ export declare class TWAPLib {
|
|
|
20
20
|
fillDelayMillis: (totalChunks: BN.Value, maxDurationMillis: BN.Value) => number;
|
|
21
21
|
dstMinAmountOut: (srcToken: TokenData, dstToken: TokenData, srcChunkAmount: BN.Value, limitDstPriceFor1Src: BN.Value, isMarketOrder: boolean) => BN;
|
|
22
22
|
isMarketOrder: (order: Order) => boolean;
|
|
23
|
-
orderProgress: (order: Order) =>
|
|
23
|
+
orderProgress: (order: Order) => number;
|
|
24
|
+
percentAboveMarket: (srcUsdMarket: BN.Value, dstUsdMarket: BN.Value, limitDstPriceFor1Src: BN.Value) => number;
|
|
24
25
|
status: (order: Order) => Status;
|
|
25
26
|
makerBalance(token: TokenData): Promise<BN>;
|
|
26
27
|
wrapNativeToken(amount: BN.Value, priorityFeePerGas?: BN.Value, maxFeePerGas?: BN.Value): Promise<any>;
|
package/dist/src/lib.js
CHANGED
|
@@ -23,11 +23,11 @@ const lodash_1 = __importDefault(require("lodash"));
|
|
|
23
23
|
exports.twapAbi = TWAP_json_1.default.abi;
|
|
24
24
|
exports.lensAbi = Lens_json_1.default.abi;
|
|
25
25
|
class TWAPLib {
|
|
26
|
-
constructor(config,
|
|
26
|
+
constructor(config, maker, provider) {
|
|
27
27
|
this.config = config;
|
|
28
|
-
this.provider = provider;
|
|
29
28
|
this.maker = maker;
|
|
30
|
-
this.
|
|
29
|
+
this.provider = provider;
|
|
30
|
+
this.dstAmount = (srcToken, dstToken, srcAmount, srcUsdMarket, dstUsdMarket, limitDstPriceFor1Src, isMarketOrder) => (0, web3_candies_1.convertDecimals)(isMarketOrder ? (0, bignumber_js_1.default)(srcAmount).times(srcUsdMarket).div(dstUsdMarket) : (0, bignumber_js_1.default)(srcAmount).times(limitDstPriceFor1Src), srcToken.decimals, dstToken.decimals).integerValue(bignumber_js_1.default.ROUND_FLOOR);
|
|
31
31
|
this.isNativeToken = (token) => (0, configs_1.isNativeAddress)(token.address);
|
|
32
32
|
this.isValidChain = (chainId) => chainId === this.config.chainId;
|
|
33
33
|
this.maxPossibleChunks = (srcToken, srcAmount, srcUsd) => bignumber_js_1.default.max(1, (0, bignumber_js_1.default)(srcAmount).div((0, bignumber_js_1.default)(10).pow(srcToken.decimals).div(srcUsd).times(this.config.minChunkSizeUsd)))
|
|
@@ -44,7 +44,8 @@ class TWAPLib {
|
|
|
44
44
|
? (0, bignumber_js_1.default)(1)
|
|
45
45
|
: bignumber_js_1.default.max(1, (0, web3_candies_1.convertDecimals)((0, bignumber_js_1.default)(srcChunkAmount).times(limitDstPriceFor1Src), srcToken.decimals, dstToken.decimals).integerValue(bignumber_js_1.default.ROUND_FLOOR));
|
|
46
46
|
this.isMarketOrder = (order) => order.ask.dstMinAmount.lte(1);
|
|
47
|
-
this.orderProgress = (order) => order.srcFilledAmount.div(order.ask.srcAmount);
|
|
47
|
+
this.orderProgress = (order) => parseFloat(order.srcFilledAmount.div(order.ask.srcAmount).toFixed(4));
|
|
48
|
+
this.percentAboveMarket = (srcUsdMarket, dstUsdMarket, limitDstPriceFor1Src) => parseFloat((0, bignumber_js_1.default)(limitDstPriceFor1Src).div((0, bignumber_js_1.default)(srcUsdMarket).div(dstUsdMarket)).minus(1).toFixed(4));
|
|
48
49
|
this.status = (order) => order.status > Date.now() / 1000
|
|
49
50
|
? Status.Open
|
|
50
51
|
: order.status === 1
|
|
@@ -52,7 +53,8 @@ class TWAPLib {
|
|
|
52
53
|
: order.status === 2
|
|
53
54
|
? Status.Completed
|
|
54
55
|
: Status.Expired;
|
|
55
|
-
|
|
56
|
+
if (provider)
|
|
57
|
+
(0, web3_candies_1.setWeb3Instance)(new web3_1.default(provider));
|
|
56
58
|
this.twap = (0, web3_candies_1.contract)(exports.twapAbi, config.twapAddress);
|
|
57
59
|
this.lens = (0, web3_candies_1.contract)(exports.lensAbi, config.lensAddress);
|
|
58
60
|
}
|
|
@@ -141,10 +143,14 @@ class TWAPLib {
|
|
|
141
143
|
}
|
|
142
144
|
sendTx(tx, priorityFeePerGas, maxFeePerGas, amount) {
|
|
143
145
|
return __awaiter(this, void 0, void 0, function* () {
|
|
144
|
-
|
|
146
|
+
let gas = 500000;
|
|
147
|
+
try {
|
|
148
|
+
gas = Math.max(gas, Math.floor((yield tx.estimateGas()) * 1.2));
|
|
149
|
+
}
|
|
150
|
+
catch (ignore) { }
|
|
145
151
|
return yield tx.send({
|
|
146
152
|
from: this.maker,
|
|
147
|
-
gas
|
|
153
|
+
gas,
|
|
148
154
|
maxPriorityFeePerGas: priorityFeePerGas ? (0, bignumber_js_1.default)(priorityFeePerGas).toFixed(0) : undefined,
|
|
149
155
|
maxFeePerGas: maxFeePerGas ? (0, bignumber_js_1.default)(maxFeePerGas).toFixed(0) : undefined,
|
|
150
156
|
value: amount ? (0, bignumber_js_1.default)(amount).toFixed(0) : undefined,
|
package/dist/src/paraswap.d.ts
CHANGED
|
@@ -32,10 +32,10 @@ export declare namespace Paraswap {
|
|
|
32
32
|
maxImpactReached: boolean;
|
|
33
33
|
}
|
|
34
34
|
function gasPrices(chainId: number): Promise<{
|
|
35
|
-
low:
|
|
36
|
-
medium:
|
|
37
|
-
high:
|
|
38
|
-
instant:
|
|
35
|
+
low: BN;
|
|
36
|
+
medium: BN;
|
|
37
|
+
high: BN;
|
|
38
|
+
instant: BN;
|
|
39
39
|
}>;
|
|
40
40
|
function priceUsd(chainId: number, token: TokenData): Promise<BN>;
|
|
41
41
|
function findRoute(chainId: number, src: TokenData, dst: TokenData, amountIn: BN.Value, onlyDex?: OnlyDex): Promise<ParaswapRoute>;
|
package/dist/src/paraswap.js
CHANGED
|
@@ -30,12 +30,15 @@ var Paraswap;
|
|
|
30
30
|
})(OnlyDex = Paraswap.OnlyDex || (Paraswap.OnlyDex = {}));
|
|
31
31
|
function gasPrices(chainId) {
|
|
32
32
|
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
-
|
|
33
|
+
const response = yield fetch(`${URL}/prices/gas/${chainId}`);
|
|
34
|
+
if (response.status < 200 || response.status >= 400)
|
|
35
|
+
throw new Error(`${response.statusText}`);
|
|
36
|
+
const result = yield response.json();
|
|
34
37
|
return {
|
|
35
|
-
low: 0,
|
|
36
|
-
medium: 0,
|
|
37
|
-
high: 0,
|
|
38
|
-
instant: 0,
|
|
38
|
+
low: (0, bignumber_js_1.default)(result.safeLow),
|
|
39
|
+
medium: (0, bignumber_js_1.default)(result.average),
|
|
40
|
+
high: (0, bignumber_js_1.default)(result.fast),
|
|
41
|
+
instant: (0, bignumber_js_1.default)(result.fastest),
|
|
39
42
|
};
|
|
40
43
|
});
|
|
41
44
|
}
|
|
@@ -73,6 +76,9 @@ var Paraswap;
|
|
|
73
76
|
return __awaiter(this, void 0, void 0, function* () {
|
|
74
77
|
const response = yield fetch(`${URL}/transactions/${paraswapRoute.network}?ignoreChecks=true`, {
|
|
75
78
|
method: "POST",
|
|
79
|
+
headers: {
|
|
80
|
+
"Content-Type": "application/json",
|
|
81
|
+
},
|
|
76
82
|
body: JSON.stringify({
|
|
77
83
|
priceRoute: paraswapRoute,
|
|
78
84
|
srcToken: paraswapRoute.srcToken,
|
|
@@ -4,35 +4,23 @@ import type BigNumber from "bignumber.js";
|
|
|
4
4
|
import type { ContractOptions } from "web3-eth-contract";
|
|
5
5
|
import type { EventLog } from "web3-core";
|
|
6
6
|
import type { EventEmitter } from "events";
|
|
7
|
-
import type { Callback, NonPayableTransactionObject, BlockType,
|
|
7
|
+
import type { Callback, NonPayableTransactionObject, BlockType, BaseContract } from "../../types";
|
|
8
8
|
export interface EventOptions {
|
|
9
9
|
filter?: object;
|
|
10
10
|
fromBlock?: BlockType;
|
|
11
11
|
topics?: string[];
|
|
12
12
|
}
|
|
13
|
-
export type OwnershipTransferred = ContractEventLog<{
|
|
14
|
-
previousOwner: string;
|
|
15
|
-
newOwner: string;
|
|
16
|
-
0: string;
|
|
17
|
-
1: string;
|
|
18
|
-
}>;
|
|
19
13
|
export interface Taker extends BaseContract {
|
|
20
14
|
constructor(jsonInterface: any[], address?: string, options?: ContractOptions): Taker;
|
|
21
15
|
clone(): Taker;
|
|
22
16
|
methods: {
|
|
23
17
|
bid(id: number | string | BN | BigNumber, exchange: string, dstFee: number | string | BN | BigNumber, slippagePercent: number | string | BN | BigNumber, data: string | number[]): NonPayableTransactionObject<void>;
|
|
24
18
|
fill(id: number | string | BN | BigNumber, feeExchange: string, feeMinAmountOut: number | string | BN | BigNumber, feeData: string | number[]): NonPayableTransactionObject<void>;
|
|
25
|
-
|
|
26
|
-
renounceOwnership(): NonPayableTransactionObject<void>;
|
|
19
|
+
owners(arg0: string): NonPayableTransactionObject<boolean>;
|
|
27
20
|
rescue(token: string): NonPayableTransactionObject<void>;
|
|
28
|
-
transferOwnership(newOwner: string): NonPayableTransactionObject<void>;
|
|
29
21
|
twap(): NonPayableTransactionObject<string>;
|
|
30
22
|
};
|
|
31
23
|
events: {
|
|
32
|
-
OwnershipTransferred(cb?: Callback<OwnershipTransferred>): EventEmitter;
|
|
33
|
-
OwnershipTransferred(options?: EventOptions, cb?: Callback<OwnershipTransferred>): EventEmitter;
|
|
34
24
|
allEvents(options?: EventOptions, cb?: Callback<EventLog>): EventEmitter;
|
|
35
25
|
};
|
|
36
|
-
once(event: "OwnershipTransferred", cb: Callback<OwnershipTransferred>): void;
|
|
37
|
-
once(event: "OwnershipTransferred", options: EventOptions, cb: Callback<OwnershipTransferred>): void;
|
|
38
26
|
}
|