0 txs
70.3k calls
constructor
No constructor.
functions
computeAddress
purefunction computeAddress(address deployer, tuple key) pure returns (address pool)
getAmountIn
purefunction getAmountIn(uint256 amountOut, uint256 reserveIn, uint256 reserveOut) pure returns (uint256 amountIn)
getAmountOut
purefunction getAmountOut(uint256 amountIn, uint256 reserveIn, uint256 reserveOut) pure returns (uint256 amountOut)
getAmountsIn
viewfunction getAmountsIn(address factory, uint256 amountOut, address[] path) view returns (uint256[] amounts)
getPool
purefunction getPool(address deployer, address tokenA, address tokenB, uint24 fee) pure returns (INineMMV3Pool)
getPoolKey
purefunction getPoolKey(address tokenA, address tokenB, uint24 fee) pure returns (tuple)
getReserves
viewfunction getReserves(address factory, address tokenA, address tokenB) view returns (uint256 reserveA, uint256 reserveB)
getStableAmountsIn
viewfunction getStableAmountsIn(address stableSwapFactory, address stableSwapInfo, address[] path, uint256[] flag, uint256 amountOut) view returns (uint256[] amounts)
getStableInfo
viewfunction getStableInfo(address stableSwapFactory, address input, address output, uint256 flag) view returns (uint256 i, uint256 j, address swapContract)
pairFor
purefunction pairFor(address factory, address tokenA, address tokenB) pure returns (address pair)
sortTokens
purefunction sortTokens(address tokenA, address tokenB) pure returns (address token0, address token1)
verifyCallback
viewfunction verifyCallback(address deployer, tuple poolKey) view returns (INineMMV3Pool pool)
verifyCallback
viewfunction verifyCallback(address deployer, address tokenA, address tokenB, uint24 fee) view returns (INineMMV3Pool pool)
events
No events.
errors
No errors.
creation bytecode
0x61146d610026600b82828239805160001a60731461001957fe5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100b95760003560e01c8063054d50d4146100be578063192128b2146100e75780632b6d5d8f1461010757806332749461146101275780634e6c8ed814610148578063544caa56146101685780635923cab3146101895780636d91c0e21461019c57806370c3718e146101af57806385f8c259146101c25780638bdb1925146101d5578063a497919d146101e8578063b735aecd146101fb575b600080fd5b6100d16100cc36600461113f565b61021d565b6040516100de91906113a9565b60405180910390f35b6100fa6100f5366004610f81565b6102ad565b6040516100de9190611243565b61011a610115366004610eab565b6103b1565b6040516100de9190611375565b61013a610135366004610cd6565b610407565b6040516100de9291906113b2565b61015b610156366004610d20565b6104e0565b6040516100de91906111bf565b61017b610176366004610c9e565b6104fa565b6040516100de9291906111d3565b6100fa610197366004610dc9565b61055e565b61015b6101aa366004610cd6565b610712565b61015b6101bd366004610ef1565b6107a3565b6100d16101d036600461113f565b610854565b61015b6101e3366004610d20565b6108db565b61015b6101f6366004610ef1565b6108ec565b61020e610209366004610d79565b610915565b6040516100de939291906113c0565b60008084116102475760405162461bcd60e51b815260040161023e9061130e565b60405180910390fd5b6000831180156102575750600082115b61026057600080fd5b600061026e856126f7610b96565b9050600061027c8285610b96565b905060006102968361029088612710610b96565b90610bba565b90508082816102a157fe5b04979650505050505050565b60606002825110156102be57600080fd5b81516001600160401b03811180156102d557600080fd5b506040519080825280602002602001820160405280156102ff578160200160208202803683370190505b509050828160018351038151811061031357fe5b60209081029190910101528151600019015b80156103a9576000806103628786600186038151811061034157fe5b602002602001015187868151811061035557fe5b6020026020010151610407565b9150915061038484848151811061037557fe5b60200260200101518383610854565b84600185038151811061039357fe5b6020908102919091010152505060001901610325565b509392505050565b6103b9610bda565b826001600160a01b0316846001600160a01b031611156103d7579192915b50604080516060810182526001600160a01b03948516815292909316602083015262ffffff169181019190915290565b600080600061041685856104fa565b509050600080610427888888610712565b6001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561045f57600080fd5b505afa158015610473573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061049791906110e4565b506001600160701b031691506001600160701b03169150826001600160a01b0316876001600160a01b0316146104ce5780826104d1565b81815b90999098509650505050505050565b60006104f1856101bd8686866103b1565b95945050505050565b600080826001600160a01b0316846001600160a01b0316141561051c57600080fd5b826001600160a01b0316846001600160a01b03161061053c57828461053f565b83835b90925090506001600160a01b03821661055757600080fd5b9250929050565b825160609060028110156105845760405162461bcd60e51b815260040161023e90611287565b806001600160401b038111801561059a57600080fd5b506040519080825280602002602001820160405280156105c4578160200160208202803683370190505b509150828260018303815181106105d757fe5b602090810291909101015260001981015b801561070757600060018203905060008060006106408c8b868151811061060b57fe5b60200260200101518c888151811061061f57fe5b60200260200101518c888151811061063357fe5b6020026020010151610915565b9250925092508a6001600160a01b031663ca4bc7148285858b8a8151811061066457fe5b60200260200101516000196040518663ffffffff1660e01b815260040161068f959493929190611215565b60206040518083038186803b1580156106a757600080fd5b505afa1580156106bb573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106df9190611127565b8785815181106106eb57fe5b6020908102919091010152505060001990920191506105e89050565b505095945050505050565b600080600061072185856104fa565b9150915085828260405160200161073992919061116a565b60408051601f19818403018152908290528051602091820120610781939290917f6039d803db8e6f74aa7b5585b3209f67e1ebf47ee6c88fc044271912b14a862e910161118c565b60408051601f1981840301815291905280516020909101209695505050505050565b600081602001516001600160a01b031682600001516001600160a01b0316106107cb57600080fd5b828260000151836020015184604001516040516020016107ed939291906111ed565b60408051601f19818403018152908290528051602091820120610835939290917f887e50d42dcb6a574db66ced616a242eca42118fbff64e82ba1c850489afa6f6910161118c565b60408051601f1981840301815291905280516020909101209392505050565b60008084116108755760405162461bcd60e51b815260040161023e90611341565b6000831180156108855750600082115b61088e57600080fd5b60006108a66127106108a08688610b96565b90610b96565b905060006108ba6126f76108a08689610bca565b90506108d160018284816108ca57fe5b0490610bba565b9695505050505050565b60006104f1856101f68686866103b1565b60006108f883836107a3565b9050336001600160a01b0382161461090f57600080fd5b92915050565b600080600083600214156109f457604051632007bd0f60e11b81526000906001600160a01b0389169063400f7a1e90610954908a908a906004016111d3565b60806040518083038186803b15801561096c57600080fd5b505afa158015610980573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109a49190610fd7565b905080602001516001600160a01b0316876001600160a01b0316146109ca5760016109cd565b60005b60ff16935083156109df5760006109e2565b60015b60ff1692508060000151915050610b66565b8360031415610b665760405163923093cb60e01b81526000906001600160a01b0389169063923093cb90610a2e908a908a906004016111d3565b60a06040518083038186803b158015610a4657600080fd5b505afa158015610a5a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a7e9190611054565b905080602001516001600160a01b0316876001600160a01b03161415610aa75760009350610af1565b80604001516001600160a01b0316876001600160a01b03161415610ace5760019350610af1565b80606001516001600160a01b0316876001600160a01b03161415610af157600293505b80602001516001600160a01b0316866001600160a01b03161415610b185760009250610b62565b80604001516001600160a01b0316866001600160a01b03161415610b3f5760019250610b62565b80606001516001600160a01b0316866001600160a01b03161415610b6257600292505b5190505b6001600160a01b038116610b8c5760405162461bcd60e51b815260040161023e906112cb565b9450945094915050565b6000821580610bb157505081810281838281610bae57fe5b04145b61090f57600080fd5b8082018281101561090f57600080fd5b8082038281111561090f57600080fd5b604080516060810182526000808252602082018190529181019190915290565b600082601f830112610c0a578081fd5b81356020610c1f610c1a83611402565b6113df565b8281528181019085830183850287018401881015610c3b578586fd5b855b85811015610c62578135610c508161141f565b84529284019290840190600101610c3d565b5090979650505050505050565b80516001600160701b0381168114610c8657600080fd5b919050565b803562ffffff81168114610c8657600080fd5b60008060408385031215610cb0578182fd5b8235610cbb8161141f565b91506020830135610ccb8161141f565b809150509250929050565b600080600060608486031215610cea578081fd5b8335610cf58161141f565b92506020840135610d058161141f565b91506040840135610d158161141f565b809150509250925092565b60008060008060808587031215610d35578081fd5b8435610d408161141f565b93506020850135610d508161141f565b92506040850135610d608161141f565b9150610d6e60608601610c8b565b905092959194509250565b60008060008060808587031215610d8e578384fd5b8435610d998161141f565b93506020850135610da98161141f565b92506040850135610db98161141f565b9396929550929360600135925050565b600080600080600060a08688031215610de0578081fd5b8535610deb8161141f565b9450602086810135610dfc8161141f565b945060408701356001600160401b0380821115610e17578384fd5b610e238a838b01610bfa565b95506060890135915080821115610e38578384fd5b508701601f81018913610e49578283fd5b8035610e57610c1a82611402565b81815283810190838501858402850186018d1015610e73578687fd5b8694505b83851015610e95578035835260019490940193918501918501610e77565b50989b979a509598608001359695505050505050565b600080600060608486031215610ebf578081fd5b8335610eca8161141f565b92506020840135610eda8161141f565b9150610ee860408501610c8b565b90509250925092565b6000808284036080811215610f04578283fd5b8335610f0f8161141f565b92506060601f1982011215610f22578182fd5b50604051606081016001600160401b0381118282101715610f3f57fe5b6040526020840135610f508161141f565b81526040840135610f608161141f565b6020820152610f7160608501610c8b565b6040820152809150509250929050565b600080600060608486031215610f95578081fd5b8335610fa08161141f565b92506020840135915060408401356001600160401b03811115610fc1578182fd5b610fcd86828701610bfa565b9150509250925092565b600060808284031215610fe8578081fd5b604051608081016001600160401b038111828210171561100457fe5b60405282516110128161141f565b815260208301516110228161141f565b602082015260408301516110358161141f565b604082015260608301516110488161141f565b60608201529392505050565b600060a08284031215611065578081fd5b60405160a081016001600160401b038111828210171561108157fe5b604052825161108f8161141f565b8152602083015161109f8161141f565b602082015260408301516110b28161141f565b604082015260608301516110c58161141f565b606082015260808301516110d88161141f565b60808201529392505050565b6000806000606084860312156110f8578081fd5b61110184610c6f565b925061110f60208501610c6f565b9150604084015163ffffffff81168114610d15578182fd5b600060208284031215611138578081fd5b5051919050565b600080600060608486031215611153578081fd5b505081359360208301359350604090920135919050565b6001600160601b0319606093841b811682529190921b16601482015260280190565b6001600160f81b0319815260609390931b6001600160601b03191660018401526015830191909152603582015260550190565b6001600160a01b0391909116815260200190565b6001600160a01b0392831681529116602082015260400190565b6001600160a01b03938416815291909216602082015262ffffff909116604082015260600190565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b6020808252825182820181905260009190848201906040850190845b8181101561127b5783518352928401929184019160010161125f565b50909695505050505050565b60208082526024908201527f676574537461626c65416d6f756e7473496e3a20696e636f7272656374206c656040820152630dccee8d60e31b606082015260800190565b60208082526023908201527f676574537461626c65496e666f3a20696e76616c696420706f6f6c206164647260408201526265737360e81b606082015260800190565b602080825260199082015278125394d551919250d251539517d25394155517d05353d55395603a1b604082015260600190565b6020808252601a9082015279125394d551919250d251539517d3d55514155517d05353d5539560321b604082015260600190565b81516001600160a01b0390811682526020808401519091169082015260409182015162ffffff169181019190915260600190565b90815260200190565b918252602082015260400190565b92835260208301919091526001600160a01b0316604082015260600190565b6040518181016001600160401b03811182821017156113fa57fe5b604052919050565b60006001600160401b0382111561141557fe5b5060209081020190565b6001600160a01b038116811461143457600080fd5b5056fea26469706673582212201d03c7ffea9f55355738eb3bafb2d6a3e2763f026aad586057f8fba1c9327a3564736f6c63430007060033