diff --git a/pkg/interfaces/contracts/test/IVaultMainMock.sol b/pkg/interfaces/contracts/test/IVaultMainMock.sol index 29ad653a5..be065079a 100644 --- a/pkg/interfaces/contracts/test/IVaultMainMock.sol +++ b/pkg/interfaces/contracts/test/IVaultMainMock.sol @@ -269,6 +269,8 @@ interface IVaultMainMock { function manualSetBufferTotalShares(IERC4626 wrappedToken, uint256 shares) external; + function manualSetBufferBalances(IERC4626 wrappedToken, uint256 underlyingAmount, uint256 wrappedAmount) external; + function manualSettleReentrancy(IERC20 token) external returns (uint256 paid); function manualSendToReentrancy(IERC20 token, address to, uint256 amount) external; diff --git a/pkg/pool-hooks/contracts/MinimalRouter.sol b/pkg/pool-hooks/contracts/MinimalRouter.sol index ac9364f98..9bde735c4 100644 --- a/pkg/pool-hooks/contracts/MinimalRouter.sol +++ b/pkg/pool-hooks/contracts/MinimalRouter.sol @@ -138,6 +138,10 @@ abstract contract MinimalRouter is RouterCommon, ReentrancyGuardTransient { IERC20 token = tokens[i]; uint256 amountIn = amountsIn[i]; + if (amountIn == 0) { + continue; + } + // There can be only one WETH token in the pool. if (params.wethIsEth && address(token) == address(_weth)) { if (address(this).balance < amountIn) { @@ -222,9 +226,13 @@ abstract contract MinimalRouter is RouterCommon, ReentrancyGuardTransient { // minAmountsOut length is checked against tokens length at the Vault. IERC20[] memory tokens = _vault.getPoolTokens(params.pool); - uint256 ethAmountOut = 0; for (uint256 i = 0; i < tokens.length; ++i) { uint256 amountOut = amountsOut[i]; + + if (amountOut == 0) { + continue; + } + IERC20 token = tokens[i]; // There can be only one WETH token in the pool. @@ -232,16 +240,12 @@ abstract contract MinimalRouter is RouterCommon, ReentrancyGuardTransient { // Send WETH here and unwrap to native ETH. _vault.sendTo(_weth, address(this), amountOut); _weth.withdraw(amountOut); - ethAmountOut = amountOut; + // Send ETH to receiver. + payable(params.receiver).sendValue(amountOut); } else { // Transfer the token to the receiver (amountOut). _vault.sendTo(token, params.receiver, amountOut); } } - - if (ethAmountOut > 0) { - // Send ETH to receiver. - payable(params.receiver).sendValue(ethAmountOut); - } } } diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots index 72b5f6dc2..82f248313 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots @@ -1 +1 @@ -301.9k \ No newline at end of file +302.1k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots index 2524ca41f..428743a9a 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots @@ -1 +1 @@ -245.5k \ No newline at end of file +245.6k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots index b93b89e34..f159c946a 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots @@ -1 +1 @@ -340.7k \ No newline at end of file +333.0k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots index 4076ab172..28e7b544a 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots @@ -1 +1 @@ -266.9k \ No newline at end of file +259.2k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index a8f4b3e6a..dbba43d6f 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -214.6k \ No newline at end of file +196.4k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots index be801a3a9..bba55110e 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -199.2k \ No newline at end of file +181.0k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots index 77ddfb697..850b54988 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -214.1k \ No newline at end of file +194.5k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots index e6ab6cf98..68604829b 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -233.5k \ No newline at end of file +213.8k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - cold slots index e8ea7e609..fc06e6049 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -195.3k \ No newline at end of file +195.5k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - warm slots index 872eda3b7..7b85fe8c6 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -181.4k \ No newline at end of file +181.6k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity proportional b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity proportional index 22b4973f8..a028d8bd3 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity proportional +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity proportional @@ -1 +1 @@ -179.6k \ No newline at end of file +179.7k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity single token exact out - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity single token exact out - warm slots index ee15decae..eec4e69d4 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity single token exact out - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity single token exact out - warm slots @@ -1 +1 @@ -192.6k \ No newline at end of file +172.1k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity unbalanced - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity unbalanced - warm slots index 1ee00a46e..16386076a 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity unbalanced - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] add liquidity unbalanced - warm slots @@ -1 +1 @@ -214.4k \ No newline at end of file +214.5k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity proportional b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity proportional index f386a700f..ca2318092 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity proportional +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity proportional @@ -1 +1 @@ -168.0k \ No newline at end of file +167.7k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact in - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact in - warm slots index f826c9bcc..f1c01191f 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact in - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -181.9k \ No newline at end of file +166.9k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact out - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact out - warm slots index c848d9e97..1ce178592 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact out - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -191.7k \ No newline at end of file +176.7k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - cold slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - cold slots index 78e0744ff..1608b8f92 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - cold slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - cold slots @@ -1 +1 @@ -179.4k \ No newline at end of file +179.5k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - warm slots index 36f6281ce..fa75139aa 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - Standard] swap single token exact in with fees - warm slots @@ -1 +1 @@ -165.5k \ No newline at end of file +165.6k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index 8faf4a2f5..4428bde44 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -236.3k \ No newline at end of file +218.2k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots index 48854f30e..2ed1c15f4 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -220.9k \ No newline at end of file +202.7k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots index ed2cc0e26..f2cd46cda 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -235.6k \ No newline at end of file +216.0k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots index 0cfbb2388..40d34f0d9 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -255.0k \ No newline at end of file +235.3k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - cold slots index 6f08b2604..1300ada31 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -228.6k \ No newline at end of file +228.8k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - warm slots index 04c51970a..2c5955baf 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -198.2k \ No newline at end of file +198.4k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity proportional b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity proportional index 8427aef81..f80c70154 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity proportional +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity proportional @@ -1 +1 @@ -235.0k \ No newline at end of file +235.1k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity single token exact out - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity single token exact out - warm slots index 9da2b9249..1e0dbbfb2 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity single token exact out - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] add liquidity single token exact out - warm slots @@ -1 +1 @@ -211.8k \ No newline at end of file +193.8k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity proportional b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity proportional index 90a201796..91b2247a4 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity proportional +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity proportional @@ -1 +1 @@ -223.2k \ No newline at end of file +222.9k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact in - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact in - warm slots index 04d9a0aa2..6adf749dd 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact in - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -200.9k \ No newline at end of file +188.4k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact out - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact out - warm slots index 4a646bf0d..04c51970a 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact out - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -210.6k \ No newline at end of file +198.2k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - cold slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - cold slots index 36de741e1..006e28933 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - cold slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - cold slots @@ -1 +1 @@ -212.7k \ No newline at end of file +212.8k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - warm slots b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - warm slots index 68ce14ae4..bb238367f 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - warm slots +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool - With rate] swap single token exact in with fees - warm slots @@ -1 +1 @@ -182.3k \ No newline at end of file +182.4k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] donation b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] donation index 8b4740447..6f0be6378 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] donation +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] donation @@ -1 +1 @@ -178.4k \ No newline at end of file +178.5k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize with ETH b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize with ETH index 2312b97cf..808438371 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize with ETH +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize with ETH @@ -1 +1 @@ -347.6k \ No newline at end of file +347.7k \ No newline at end of file diff --git a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize without ETH b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize without ETH index 27571660d..a886fafae 100644 --- a/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize without ETH +++ b/pkg/pool-stable/test/gas/.hardhat-snapshots/[StablePool] initialize without ETH @@ -1 +1 @@ -335.1k \ No newline at end of file +335.2k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots index 4d4985282..7c774f548 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots @@ -1 +1 @@ -296.8k \ No newline at end of file +297.0k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots index ef6c5492e..40884c25f 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots @@ -1 +1 @@ -232.0k \ No newline at end of file +232.1k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots index 918fadc91..b4245bfd7 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots @@ -1 +1 @@ -327.2k \ No newline at end of file +319.5k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots index 88266f736..4068cf064 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots @@ -1 +1 @@ -253.5k \ No newline at end of file +245.7k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index 1b3c249b7..f9ba3cbb6 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -208.3k \ No newline at end of file +190.2k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots index 288025e1d..1f5fde859 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -185.9k \ No newline at end of file +167.8k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots index 04d9a0aa2..b608b5e51 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -200.9k \ No newline at end of file +181.3k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots index 40ffe2d81..d7235b41d 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -233.6k \ No newline at end of file +213.9k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - cold slots index ccd83df97..07c95b82c 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -185.0k \ No newline at end of file +185.1k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - warm slots index 68a74d5eb..f386a700f 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -167.9k \ No newline at end of file +168.0k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity proportional b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity proportional index 22b4973f8..a028d8bd3 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity proportional +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity proportional @@ -1 +1 @@ -179.6k \ No newline at end of file +179.7k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity single token exact out - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity single token exact out - warm slots index 184d05cb6..7a0f153e9 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity single token exact out - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] add liquidity single token exact out - warm slots @@ -1 +1 @@ -179.3k \ No newline at end of file +158.8k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity proportional b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity proportional index f386a700f..ca2318092 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity proportional +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity proportional @@ -1 +1 @@ -168.0k \ No newline at end of file +167.7k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact in - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact in - warm slots index 4e3a0d3b8..aba5a0b80 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact in - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -168.6k \ No newline at end of file +153.6k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact out - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact out - warm slots index c848d9e97..514112d22 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact out - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -191.7k \ No newline at end of file +176.8k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - cold slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - cold slots index 7387bd721..d6cadab53 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - cold slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - cold slots @@ -1 +1 @@ -169.1k \ No newline at end of file +169.2k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - warm slots index b6b61d5ef..0d7109c58 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - Standard] swap single token exact in with fees - warm slots @@ -1 +1 @@ -152.0k \ No newline at end of file +152.1k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index d6c3258a0..6a6d4e231 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -230.1k \ No newline at end of file +212.0k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots index 199d40e66..0020392ba 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -207.7k \ No newline at end of file +189.5k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots index 8be4626fb..7ff227a9b 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -222.4k \ No newline at end of file +202.8k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots index a9b41cd57..2014ccfaf 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -255.1k \ No newline at end of file +235.4k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - cold slots index 8ed89ae12..2140e7ede 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -218.3k \ No newline at end of file +218.5k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - warm slots index dc58fb784..859124909 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -184.1k \ No newline at end of file +184.3k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity proportional b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity proportional index 8427aef81..f80c70154 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity proportional +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity proportional @@ -1 +1 @@ -235.0k \ No newline at end of file +235.1k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity single token exact out - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity single token exact out - warm slots index db4183c59..f155b0969 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity single token exact out - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity single token exact out - warm slots @@ -1 +1 @@ -198.6k \ No newline at end of file +180.6k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity unbalanced - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity unbalanced - warm slots index 1787241f4..b7daef677 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity unbalanced - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] add liquidity unbalanced - warm slots @@ -1 +1 @@ -229.7k \ No newline at end of file +229.8k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity proportional b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity proportional index 90a201796..91b2247a4 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity proportional +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity proportional @@ -1 +1 @@ -223.2k \ No newline at end of file +222.9k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact in - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact in - warm slots index 047859320..4d8d00b20 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact in - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -187.6k \ No newline at end of file +175.1k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact out - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact out - warm slots index 14ad0a00b..a5dc1053f 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact out - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -210.7k \ No newline at end of file +198.3k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - cold slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - cold slots index ab492358a..8c2bcb224 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - cold slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - cold slots @@ -1 +1 @@ -202.4k \ No newline at end of file +202.5k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - warm slots b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - warm slots index 403e0e0c2..7f24db840 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - warm slots +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool - With rate] swap single token exact in with fees - warm slots @@ -1 +1 @@ -168.2k \ No newline at end of file +168.3k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] donation b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] donation index 8b4740447..6f0be6378 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] donation +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] donation @@ -1 +1 @@ -178.4k \ No newline at end of file +178.5k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize with ETH b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize with ETH index 6afcf8ec2..793c51694 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize with ETH +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize with ETH @@ -1 +1 @@ -348.9k \ No newline at end of file +349.0k \ No newline at end of file diff --git a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize without ETH b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize without ETH index 3958ab300..0d6947226 100644 --- a/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize without ETH +++ b/pkg/pool-weighted/test/gas/.hardhat-snapshots/[WeightedPool] initialize without ETH @@ -1 +1 @@ -336.4k \ No newline at end of file +336.5k \ No newline at end of file diff --git a/pkg/solidity-utils/contracts/test/ERC20TestToken.sol b/pkg/solidity-utils/contracts/test/ERC20TestToken.sol index 147f3500c..c842f4929 100644 --- a/pkg/solidity-utils/contracts/test/ERC20TestToken.sol +++ b/pkg/solidity-utils/contracts/test/ERC20TestToken.sol @@ -7,6 +7,9 @@ import { ERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; contract ERC20TestToken is ERC20 { uint8 private immutable _decimals; + /// @dev Simulate tokens that don't allow zero transfers. + error ZeroTransfer(); + constructor(string memory name, string memory symbol, uint8 decimals_) ERC20(name, symbol) { _decimals = decimals_; } @@ -22,4 +25,20 @@ contract ERC20TestToken is ERC20 { function burn(address sender, uint256 amount) external { _burn(sender, amount); } + + function transfer(address to, uint256 value) public override returns (bool) { + if (value == 0) { + revert ZeroTransfer(); + } + + return super.transfer(to, value); + } + + function transferFrom(address from, address to, uint256 value) public override returns (bool) { + if (value == 0) { + revert ZeroTransfer(); + } + + return super.transferFrom(from, to, value); + } } diff --git a/pkg/vault/contracts/BatchRouter.sol b/pkg/vault/contracts/BatchRouter.sol index e60b93c21..5337c7ce0 100644 --- a/pkg/vault/contracts/BatchRouter.sol +++ b/pkg/vault/contracts/BatchRouter.sol @@ -221,18 +221,20 @@ contract BatchRouter is IBatchRouter, BatchRouterCommon, ReentrancyGuardTransien // step, in which case the user will have a BPT credit. if (stepLocals.isFirstStep && params.sender != address(this)) { - // If this is the first step, the sender must have the tokens. Therefore, we can transfer them - // to the Router, which acts as an intermediary. If the sender is the Router, we just skip this - // step (useful for queries). - // - // This saves one permit(1) approval for the BPT to the Router; if we burned tokens directly - // from the sender we would need their approval. - _permit2.transferFrom( - params.sender, - address(this), - stepExactAmountIn.toUint160(), - address(stepTokenIn) - ); + if (stepExactAmountIn > 0) { + // If this is the first step, the sender must have the tokens. Therefore, we can transfer + // them to the Router, which acts as an intermediary. If the sender is the Router, we just + // skip this step (useful for queries). + // + // This saves one permit(1) approval for the BPT to the Router; if we burned tokens + // directly from the sender we would need their approval. + _permit2.transferFrom( + params.sender, + address(this), + stepExactAmountIn.toUint160(), + address(stepTokenIn) + ); + } } else { // If this is an intermediate step, we don't expect the sender to have BPT to burn. // Then, we flashloan tokens here (which should in practice just use existing credit). diff --git a/pkg/vault/contracts/Router.sol b/pkg/vault/contracts/Router.sol index 3c21d36a9..a2d25302f 100644 --- a/pkg/vault/contracts/Router.sol +++ b/pkg/vault/contracts/Router.sol @@ -87,6 +87,10 @@ contract Router is IRouter, RouterCommon, ReentrancyGuardTransient { IERC20 token = params.tokens[i]; uint256 amountIn = params.exactAmountsIn[i]; + if (amountIn == 0) { + continue; + } + // There can be only one WETH token in the pool. if (params.wethIsEth && address(token) == address(_weth)) { if (address(this).balance < amountIn) { @@ -289,6 +293,10 @@ contract Router is IRouter, RouterCommon, ReentrancyGuardTransient { IERC20 token = tokens[i]; uint256 amountIn = amountsIn[i]; + if (amountIn == 0) { + continue; + } + // There can be only one WETH token in the pool. if (params.wethIsEth && address(token) == address(_weth)) { if (address(this).balance < amountIn) { @@ -478,9 +486,12 @@ contract Router is IRouter, RouterCommon, ReentrancyGuardTransient { // minAmountsOut length is checked against tokens length at the Vault. IERC20[] memory tokens = _vault.getPoolTokens(params.pool); - uint256 ethAmountOut = 0; for (uint256 i = 0; i < tokens.length; ++i) { uint256 amountOut = amountsOut[i]; + if (amountOut == 0) { + continue; + } + IERC20 token = tokens[i]; // There can be only one WETH token in the pool. @@ -488,15 +499,13 @@ contract Router is IRouter, RouterCommon, ReentrancyGuardTransient { // Send WETH here and unwrap to native ETH. _vault.sendTo(_weth, address(this), amountOut); _weth.withdraw(amountOut); - ethAmountOut = amountOut; + // Send ETH to sender. + payable(params.sender).sendValue(amountOut); } else { // Transfer the token to the sender (amountOut). _vault.sendTo(token, params.sender, amountOut); } } - - // Send ETH to sender. - payable(params.sender).sendValue(ethAmountOut); } /** @@ -517,8 +526,11 @@ contract Router is IRouter, RouterCommon, ReentrancyGuardTransient { IERC20[] memory tokens = _vault.getPoolTokens(pool); for (uint256 i = 0; i < tokens.length; ++i) { - // Transfer the token to the sender (amountOut). - _vault.sendTo(tokens[i], sender, amountsOut[i]); + uint256 amountOut = amountsOut[i]; + if (amountOut > 0) { + // Transfer the token to the sender (amountOut). + _vault.sendTo(tokens[i], sender, amountOut); + } } } diff --git a/pkg/vault/contracts/RouterCommon.sol b/pkg/vault/contracts/RouterCommon.sol index 80eebdeed..4c7e0f1c0 100644 --- a/pkg/vault/contracts/RouterCommon.sol +++ b/pkg/vault/contracts/RouterCommon.sol @@ -254,13 +254,19 @@ abstract contract RouterCommon is IRouterCommon, VaultGuard { // update Vault accounting. _vault.settle(_weth, amountIn); } else { - // Send the tokenIn amount to the Vault - _permit2.transferFrom(sender, address(_vault), amountIn.toUint160(), address(tokenIn)); - _vault.settle(tokenIn, amountIn); + if (amountIn > 0) { + // Send the tokenIn amount to the Vault + _permit2.transferFrom(sender, address(_vault), amountIn.toUint160(), address(tokenIn)); + _vault.settle(tokenIn, amountIn); + } } } function _sendTokenOut(address sender, IERC20 tokenOut, uint256 amountOut, bool wethIsEth) internal { + if (amountOut == 0) { + return; + } + // If the tokenOut is ETH, then unwrap `amountOut` into ETH. if (wethIsEth && tokenOut == _weth) { // Receive the WETH amountOut. diff --git a/pkg/vault/contracts/VaultAdmin.sol b/pkg/vault/contracts/VaultAdmin.sol index 0573f2f74..e65f60103 100644 --- a/pkg/vault/contracts/VaultAdmin.sol +++ b/pkg/vault/contracts/VaultAdmin.sol @@ -629,8 +629,12 @@ contract VaultAdmin is IVaultAdmin, VaultCommon, Authentication, VaultGuard { // This triggers an external call to itself; the Vault is acting as a Router in this case. // `sendTo` makes external calls (`transfer`) but is non-reentrant. - _vault.sendTo(underlyingToken, sharesOwner, removedUnderlyingBalanceRaw); - _vault.sendTo(wrappedToken, sharesOwner, removedWrappedBalanceRaw); + if (removedUnderlyingBalanceRaw > 0) { + _vault.sendTo(underlyingToken, sharesOwner, removedUnderlyingBalanceRaw); + } + if (removedWrappedBalanceRaw > 0) { + _vault.sendTo(wrappedToken, sharesOwner, removedWrappedBalanceRaw); + } emit LiquidityRemovedFromBuffer(wrappedToken, removedUnderlyingBalanceRaw, removedWrappedBalanceRaw); } diff --git a/pkg/vault/contracts/test/PoolHooksMock.sol b/pkg/vault/contracts/test/PoolHooksMock.sol index 9e4e04406..57949bee2 100644 --- a/pkg/vault/contracts/test/PoolHooksMock.sol +++ b/pkg/vault/contracts/test/PoolHooksMock.sol @@ -181,26 +181,32 @@ contract PoolHooksMock is BaseHooks, VaultGuard { uint256 hookAdjustedAmountCalculatedRaw = params.amountCalculatedRaw; if (hookSwapFeePercentage > 0) { uint256 hookFee = hookAdjustedAmountCalculatedRaw.mulDown(hookSwapFeePercentage); - if (params.kind == SwapKind.EXACT_IN) { - hookAdjustedAmountCalculatedRaw -= hookFee; - _vault.sendTo(params.tokenOut, address(this), hookFee); - } else { - hookAdjustedAmountCalculatedRaw += hookFee; - _vault.sendTo(params.tokenIn, address(this), hookFee); + if (hookFee > 0) { + if (params.kind == SwapKind.EXACT_IN) { + hookAdjustedAmountCalculatedRaw -= hookFee; + _vault.sendTo(params.tokenOut, address(this), hookFee); + } else { + hookAdjustedAmountCalculatedRaw += hookFee; + _vault.sendTo(params.tokenIn, address(this), hookFee); + } } } else if (hookSwapDiscountPercentage > 0) { uint256 hookDiscount = hookAdjustedAmountCalculatedRaw.mulDown(hookSwapDiscountPercentage); - if (params.kind == SwapKind.EXACT_IN) { - hookAdjustedAmountCalculatedRaw += hookDiscount; - if (shouldSettleDiscount) { - params.tokenOut.transfer(address(_vault), hookDiscount); - _vault.settle(params.tokenOut, hookDiscount); - } - } else { - hookAdjustedAmountCalculatedRaw -= hookDiscount; - if (shouldSettleDiscount) { - params.tokenIn.transfer(address(_vault), hookDiscount); - _vault.settle(params.tokenIn, hookDiscount); + if (hookDiscount > 0) { + if (params.kind == SwapKind.EXACT_IN) { + hookAdjustedAmountCalculatedRaw += hookDiscount; + + if (shouldSettleDiscount) { + params.tokenOut.transfer(address(_vault), hookDiscount); + _vault.settle(params.tokenOut, hookDiscount); + } + } else { + hookAdjustedAmountCalculatedRaw -= hookDiscount; + + if (shouldSettleDiscount) { + params.tokenIn.transfer(address(_vault), hookDiscount); + _vault.settle(params.tokenIn, hookDiscount); + } } } } @@ -279,15 +285,21 @@ contract PoolHooksMock is BaseHooks, VaultGuard { if (addLiquidityHookFeePercentage > 0) { for (uint256 i = 0; i < amountsInRaw.length; i++) { uint256 hookFee = amountsInRaw[i].mulDown(addLiquidityHookFeePercentage); - hookAdjustedAmountsInRaw[i] += hookFee; - _vault.sendTo(tokens[i], address(this), hookFee); + if (hookFee > 0) { + hookAdjustedAmountsInRaw[i] += hookFee; + _vault.sendTo(tokens[i], address(this), hookFee); + } } } else if (addLiquidityHookDiscountPercentage > 0) { for (uint256 i = 0; i < amountsInRaw.length; i++) { + IERC20 token = tokens[i]; + uint256 hookDiscount = amountsInRaw[i].mulDown(addLiquidityHookDiscountPercentage); - tokens[i].transfer(address(_vault), hookDiscount); - _vault.settle(tokens[i], hookDiscount); - hookAdjustedAmountsInRaw[i] -= hookDiscount; + if (hookDiscount > 0) { + token.transfer(address(_vault), hookDiscount); + hookAdjustedAmountsInRaw[i] -= hookDiscount; + _vault.settle(token, hookDiscount); + } } } @@ -315,15 +327,21 @@ contract PoolHooksMock is BaseHooks, VaultGuard { if (removeLiquidityHookFeePercentage > 0) { for (uint256 i = 0; i < amountsOutRaw.length; i++) { uint256 hookFee = amountsOutRaw[i].mulDown(removeLiquidityHookFeePercentage); - hookAdjustedAmountsOutRaw[i] -= hookFee; - _vault.sendTo(tokens[i], address(this), hookFee); + if (hookFee > 0) { + hookAdjustedAmountsOutRaw[i] -= hookFee; + _vault.sendTo(tokens[i], address(this), hookFee); + } } } else if (removeLiquidityHookDiscountPercentage > 0) { for (uint256 i = 0; i < amountsOutRaw.length; i++) { uint256 hookDiscount = amountsOutRaw[i].mulDown(removeLiquidityHookDiscountPercentage); - tokens[i].transfer(address(_vault), hookDiscount); - _vault.settle(tokens[i], hookDiscount); - hookAdjustedAmountsOutRaw[i] += hookDiscount; + IERC20 token = tokens[i]; + + if (hookDiscount > 0) { + token.transfer(address(_vault), hookDiscount); + hookAdjustedAmountsOutRaw[i] += hookDiscount; + _vault.settle(token, hookDiscount); + } } } diff --git a/pkg/vault/contracts/test/VaultMock.sol b/pkg/vault/contracts/test/VaultMock.sol index ae781a066..bcc5135c3 100644 --- a/pkg/vault/contracts/test/VaultMock.sol +++ b/pkg/vault/contracts/test/VaultMock.sol @@ -667,6 +667,10 @@ contract VaultMock is IVaultMainMock, Vault { _bufferTotalShares[wrappedToken] = shares; } + function manualSetBufferBalances(IERC4626 wrappedToken, uint256 underlyingAmount, uint256 wrappedAmount) external { + _bufferTokenBalances[wrappedToken] = PackedTokenBalance.toPackedBalance(underlyingAmount, wrappedAmount); + } + function manualErc4626BufferWrapOrUnwrapReentrancy( BufferWrapOrUnwrapParams memory params ) external nonReentrant returns (uint256 amountCalculatedRaw, uint256 amountInRaw, uint256 amountOutRaw) { diff --git a/pkg/vault/test/.contract-sizes/BatchRouter b/pkg/vault/test/.contract-sizes/BatchRouter index 9686afccd..e22ce68e3 100644 --- a/pkg/vault/test/.contract-sizes/BatchRouter +++ b/pkg/vault/test/.contract-sizes/BatchRouter @@ -1,2 +1,2 @@ -Bytecode 16.818 -InitCode 18.306 \ No newline at end of file +Bytecode 16.943 +InitCode 18.431 \ No newline at end of file diff --git a/pkg/vault/test/.contract-sizes/CompositeLiquidityRouter b/pkg/vault/test/.contract-sizes/CompositeLiquidityRouter index 0ef223bc4..463a58ef3 100644 --- a/pkg/vault/test/.contract-sizes/CompositeLiquidityRouter +++ b/pkg/vault/test/.contract-sizes/CompositeLiquidityRouter @@ -1,2 +1,2 @@ -Bytecode 23.557 -InitCode 25.096 \ No newline at end of file +Bytecode 23.568 +InitCode 25.107 \ No newline at end of file diff --git a/pkg/vault/test/.contract-sizes/Router b/pkg/vault/test/.contract-sizes/Router index 517a61232..8be42ea68 100644 --- a/pkg/vault/test/.contract-sizes/Router +++ b/pkg/vault/test/.contract-sizes/Router @@ -1,2 +1,2 @@ -Bytecode 23.201 -InitCode 24.175 \ No newline at end of file +Bytecode 23.286 +InitCode 24.260 \ No newline at end of file diff --git a/pkg/vault/test/.contract-sizes/VaultAdmin b/pkg/vault/test/.contract-sizes/VaultAdmin index ad7995013..d97377abf 100644 --- a/pkg/vault/test/.contract-sizes/VaultAdmin +++ b/pkg/vault/test/.contract-sizes/VaultAdmin @@ -1,2 +1,2 @@ -Bytecode 13.824 -InitCode 14.847 \ No newline at end of file +Bytecode 13.874 +InitCode 14.896 \ No newline at end of file diff --git a/pkg/vault/test/foundry/BufferDoSProtection.t.sol b/pkg/vault/test/foundry/BufferDoSProtection.t.sol index ad8b20224..cc60289bd 100644 --- a/pkg/vault/test/foundry/BufferDoSProtection.t.sol +++ b/pkg/vault/test/foundry/BufferDoSProtection.t.sol @@ -313,11 +313,15 @@ contract BufferDoSProtectionTest is BaseVaultTest { if (params.direction == WrappingDirection.WRAP) { // Since we're wrapping, we need to transfer underlying tokens to the Vault, so it can be wrapped. if (params.kind == SwapKind.EXACT_IN) { - underlyingToken.transferFrom(sender, address(vault), params.amountGivenRaw); - vault.settle(underlyingToken, params.amountGivenRaw); + if (params.amountGivenRaw > 0) { + underlyingToken.transferFrom(sender, address(vault), params.amountGivenRaw); + vault.settle(underlyingToken, params.amountGivenRaw); + } } else { - underlyingToken.transferFrom(sender, address(vault), params.limitRaw); - vault.settle(underlyingToken, params.limitRaw); + if (params.limitRaw > 0) { + underlyingToken.transferFrom(sender, address(vault), params.limitRaw); + vault.settle(underlyingToken, params.limitRaw); + } } // Donate more underlying to the Vault than the amount that will be deposited, so the Vault can think that @@ -327,11 +331,15 @@ contract BufferDoSProtectionTest is BaseVaultTest { dai.transfer(address(vault), frontrunnerAmount); } else { if (params.kind == SwapKind.EXACT_IN) { - wrappedToken.transferFrom(sender, address(vault), params.amountGivenRaw); - vault.settle(wrappedToken, params.amountGivenRaw); + if (params.amountGivenRaw > 0) { + wrappedToken.transferFrom(sender, address(vault), params.amountGivenRaw); + vault.settle(wrappedToken, params.amountGivenRaw); + } } else { - wrappedToken.transferFrom(sender, address(vault), params.limitRaw); - vault.settle(wrappedToken, params.limitRaw); + if (params.limitRaw > 0) { + wrappedToken.transferFrom(sender, address(vault), params.limitRaw); + vault.settle(wrappedToken, params.limitRaw); + } } // Donate more wrapped to the Vault than the amount that will be burned, so an arithmetic error can be @@ -347,14 +355,26 @@ contract BufferDoSProtectionTest is BaseVaultTest { // Settle balances. if (params.direction == WrappingDirection.WRAP) { if (params.kind == SwapKind.EXACT_OUT) { - vault.sendTo(underlyingToken, sender, params.limitRaw - amountIn); + uint256 refundAmount = params.limitRaw - amountIn; + if (refundAmount > 0) { + vault.sendTo(underlyingToken, sender, refundAmount); + } + } + + if (amountOut > 0) { + vault.sendTo(wrappedToken, sender, amountOut); } - vault.sendTo(wrappedToken, sender, amountOut); } else { if (params.kind == SwapKind.EXACT_OUT) { - vault.sendTo(wrappedToken, sender, params.limitRaw - amountIn); + uint256 refundAmount = params.limitRaw - amountIn; + if (refundAmount > 0) { + vault.sendTo(wrappedToken, sender, refundAmount); + } + } + + if (amountOut > 0) { + vault.sendTo(underlyingToken, sender, amountOut); } - vault.sendTo(underlyingToken, sender, amountOut); } } } diff --git a/pkg/vault/test/foundry/mutation/vault/VaultAdmin.t.sol b/pkg/vault/test/foundry/mutation/vault/VaultAdmin.t.sol index 96ab696a7..71233e05d 100644 --- a/pkg/vault/test/foundry/mutation/vault/VaultAdmin.t.sol +++ b/pkg/vault/test/foundry/mutation/vault/VaultAdmin.t.sol @@ -399,9 +399,11 @@ contract VaultAdminMutationTest is BaseVaultTest { vault.forceUnlock(); vault.manualSetBufferAsset(wrappedToken, underlyingToken); - // Manually set owner and total shares so that the call doesn't revert before hitting the reentrancy guard. - vault.manualSetBufferOwnerShares(wrappedToken, bob, 1e18); - vault.manualSetBufferTotalShares(wrappedToken, 2e18); + // Manually set balances, owner and total shares so that the call doesn't revert before hitting the reentrancy guard. + vault.manualSetBufferOwnerShares(wrappedToken, bob, 1000e18); + vault.manualSetBufferTotalShares(wrappedToken, 2000e18); + + vault.manualSetBufferBalances(wrappedToken, 500e18, 500e18); vm.expectRevert(ReentrancyGuardTransient.ReentrancyGuardReentrantCall.selector); vault.manualReentrancyRemoveLiquidityFromBufferHook(wrappedToken, 1e18, bob); diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots index d9eabb3f0..69430b8e9 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots @@ -1 +1 @@ -288.4k \ No newline at end of file +288.6k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots index ef6c5492e..40884c25f 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots @@ -1 +1 @@ -232.0k \ No newline at end of file +232.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots index ed5d38dad..0162f173b 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots @@ -1 +1 @@ -318.8k \ No newline at end of file +311.0k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots index 9a49b6988..428743a9a 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots @@ -1 +1 @@ -253.4k \ No newline at end of file +245.6k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index be9f27e99..63aba1304 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -191.5k \ No newline at end of file +173.4k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity using swapExactOur - warm slots index 1a7f8291a..1f5fde859 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -186.0k \ No newline at end of file +167.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots index 31762d854..b608b5e51 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -201.0k \ No newline at end of file +181.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots index 29ad27d12..b66e6b0fa 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -216.9k \ No newline at end of file +197.2k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - cold slots index ccd83df97..07c95b82c 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -185.0k \ No newline at end of file +185.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - warm slots index 68a74d5eb..f386a700f 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -167.9k \ No newline at end of file +168.0k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity proportional b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity proportional index 22b4973f8..a028d8bd3 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity proportional +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity proportional @@ -1 +1 @@ -179.6k \ No newline at end of file +179.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity single token exact out - warm slots index 78e0744ff..c487d6280 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity single token exact out - warm slots @@ -1 +1 @@ -179.4k \ No newline at end of file +158.9k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity unbalanced - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity unbalanced - warm slots index 4d7248631..9dd99b8b4 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity unbalanced - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] add liquidity unbalanced - warm slots @@ -1 +1 @@ -196.2k \ No newline at end of file +196.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity proportional b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity proportional index f386a700f..ca2318092 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity proportional +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity proportional @@ -1 +1 @@ -168.0k \ No newline at end of file +167.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact in - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact in - warm slots index 1353c06c8..54ec63ac1 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact in - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -168.7k \ No newline at end of file +153.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact out - warm slots index 755281f6c..72ba7df47 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -175.0k \ No newline at end of file +160.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - cold slots index 7387bd721..d6cadab53 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - cold slots @@ -1 +1 @@ -169.1k \ No newline at end of file +169.2k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - warm slots index b6b61d5ef..0d7109c58 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - Standard] swap single token exact in with fees - warm slots @@ -1 +1 @@ -152.0k \ No newline at end of file +152.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index 8caa01c56..15a428766 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -213.3k \ No newline at end of file +195.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity using swapExactOur - warm slots index 199d40e66..0020392ba 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -207.7k \ No newline at end of file +189.5k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots index a8dda1be2..7ff227a9b 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -222.5k \ No newline at end of file +202.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots index fd4e77327..1cb85a146 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -238.4k \ No newline at end of file +218.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - cold slots index 8ed89ae12..2140e7ede 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -218.3k \ No newline at end of file +218.5k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - warm slots index dc58fb784..859124909 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -184.1k \ No newline at end of file +184.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity proportional b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity proportional index 8427aef81..f80c70154 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity proportional +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity proportional @@ -1 +1 @@ -235.0k \ No newline at end of file +235.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity single token exact out - warm slots index db4183c59..f155b0969 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity single token exact out - warm slots @@ -1 +1 @@ -198.6k \ No newline at end of file +180.6k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity unbalanced - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity unbalanced - warm slots index b4e9dea21..36de741e1 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity unbalanced - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] add liquidity unbalanced - warm slots @@ -1 +1 @@ -212.6k \ No newline at end of file +212.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity proportional b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity proportional index 90a201796..91b2247a4 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity proportional +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity proportional @@ -1 +1 @@ -223.2k \ No newline at end of file +222.9k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact in - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact in - warm slots index 0d3d71a36..966e96749 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact in - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -187.7k \ No newline at end of file +175.2k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact out - warm slots index 3639dbfe8..7b85fe8c6 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -194.0k \ No newline at end of file +181.6k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - cold slots index ab492358a..8c2bcb224 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - cold slots @@ -1 +1 @@ -202.4k \ No newline at end of file +202.5k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - warm slots index 403e0e0c2..7f24db840 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock - With rate] swap single token exact in with fees - warm slots @@ -1 +1 @@ -168.2k \ No newline at end of file +168.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots index 8c25852d6..a8b77caac 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - no buffer liquidity - warm slots @@ -1 +1 @@ -306.9k \ No newline at end of file +307.0k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots index 428743a9a..ea49bd3d5 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactIn - with buffer liquidity - warm slots @@ -1 +1 @@ -245.6k \ No newline at end of file +245.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots index a7fdfee31..083de65bc 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - no buffer liquidity - warm slots @@ -1 +1 @@ -341.0k \ No newline at end of file +333.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots index d988324a2..3a9ab507e 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - ERC4626 - BatchRouter] swapExactOut - with buffer liquidity - warm slots @@ -1 +1 @@ -267.3k \ No newline at end of file +259.5k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index 8d0a3504f..c848d9e97 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -209.8k \ No newline at end of file +191.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity using swapExactOur - warm slots index e48dc42e8..61d910b6a 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -204.2k \ No newline at end of file +186.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots index 73ffaddac..76819f51b 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -219.2k \ No newline at end of file +199.6k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots index d9ff4ab10..d8c6623cf 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -235.2k \ No newline at end of file +215.5k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - cold slots index 1ce178592..514112d22 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -176.7k \ No newline at end of file +176.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - warm slots index 1ce178592..514112d22 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -176.7k \ No newline at end of file +176.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity single token exact out - warm slots index 30601cb65..cccd62a5d 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity single token exact out - warm slots @@ -1 +1 @@ -197.6k \ No newline at end of file +177.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity unbalanced - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity unbalanced - warm slots index 16386076a..a8f4b3e6a 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity unbalanced - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] add liquidity unbalanced - warm slots @@ -1 +1 @@ -214.5k \ No newline at end of file +214.6k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity proportional b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity proportional index 9e5d45e3c..288025e1d 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity proportional +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity proportional @@ -1 +1 @@ -186.2k \ No newline at end of file +185.9k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact in - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact in - warm slots index f82ad6290..57978f270 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact in - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -186.9k \ No newline at end of file +172.0k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact out - warm slots index 0bf151b37..94300e07a 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -193.3k \ No newline at end of file +178.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - cold slots index f9e956e72..e99a881d6 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - cold slots @@ -1 +1 @@ -160.8k \ No newline at end of file +160.9k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - warm slots index f9e956e72..e99a881d6 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - Standard] swap single token exact in with fees - warm slots @@ -1 +1 @@ -160.8k \ No newline at end of file +160.9k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots index e6ab6cf98..ffc02ff77 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity unbalanced using swapExactIn - warm slots @@ -1 +1 @@ -233.5k \ No newline at end of file +215.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity using swapExactOur - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity using swapExactOur - warm slots index c26dac3f1..aecc98048 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity using swapExactOur - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] add liquidity using swapExactOur - warm slots @@ -1 +1 @@ -227.9k \ No newline at end of file +209.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots index 0d759904c..527ba8f65 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactIn - warm slots @@ -1 +1 @@ -242.6k \ No newline at end of file +223.0k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots index ba23e34e3..a3a3e2f80 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] remove liquidity using swapExactOut - warm slots @@ -1 +1 @@ -258.6k \ No newline at end of file +238.9k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - cold slots index 4df01473a..35003ae16 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - cold slots @@ -1 +1 @@ -233.8k \ No newline at end of file +234.0k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - warm slots index 76819f51b..f2fc3df51 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate - BatchRouter] swap exact in with one token and fees - warm slots @@ -1 +1 @@ -199.6k \ No newline at end of file +199.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity proportional b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity proportional index 61f894ee0..2a781c918 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity proportional +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity proportional @@ -1 +1 @@ -255.2k \ No newline at end of file +255.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity single token exact out - warm slots index 48bdca23d..3621d275c 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] add liquidity single token exact out - warm slots @@ -1 +1 @@ -218.8k \ No newline at end of file +200.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity proportional b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity proportional index bc1984311..a7059e9c6 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity proportional +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity proportional @@ -1 +1 @@ -243.4k \ No newline at end of file +243.1k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact in - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact in - warm slots index df92d0062..4c0ae289a 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact in - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact in - warm slots @@ -1 +1 @@ -207.9k \ No newline at end of file +195.4k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact out - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact out - warm slots index e2ba5236d..eec924a38 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact out - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] remove liquidity single token exact out - warm slots @@ -1 +1 @@ -214.2k \ No newline at end of file +201.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - cold slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - cold slots index 43f9603b3..d8d7e31c1 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - cold slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - cold slots @@ -1 +1 @@ -217.9k \ No newline at end of file +218.0k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - warm slots b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - warm slots index 1f28fc544..bf2cbbac9 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - warm slots +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks - With rate] swap single token exact in with fees - warm slots @@ -1 +1 @@ -183.7k \ No newline at end of file +183.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] donation b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] donation index db4183c59..49ad196e0 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] donation +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] donation @@ -1 +1 @@ -198.6k \ No newline at end of file +198.7k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize with ETH b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize with ETH index e180548fc..9efc7a804 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize with ETH +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize with ETH @@ -1 +1 @@ -356.7k \ No newline at end of file +356.8k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize without ETH b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize without ETH index 1b56a2c79..5f6701e34 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize without ETH +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMockWithHooks] initialize without ETH @@ -1 +1 @@ -344.2k \ No newline at end of file +344.3k \ No newline at end of file diff --git a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock] donation b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock] donation index 8b4740447..6f0be6378 100644 --- a/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock] donation +++ b/pkg/vault/test/gas/.hardhat-snapshots/[PoolMock] donation @@ -1 +1 @@ -178.4k \ No newline at end of file +178.5k \ No newline at end of file