Skip to content

Commit

Permalink
Added flashloans to e2e tests (#386)
Browse files Browse the repository at this point in the history
* Added flashloans to e2e tests

* Removed error from mock contract

* fix: patch collector

* Removed duplicated deployments of the MockFlashLoanReceiver contract

* Fixed tests CapsPlusRiskSteward (updated fork block)

* Patched deal2 function for the sUSD token in the OPTIMISM network

---------

Co-authored-by: Lukas <lukasstrassel@googlemail.com>
  • Loading branch information
TepNik and sakulstra authored Feb 25, 2025
1 parent 7f4370f commit 2f0f37b
Show file tree
Hide file tree
Showing 10 changed files with 146 additions and 47 deletions.
2 changes: 1 addition & 1 deletion lib/aave-address-book
Submodule aave-address-book updated 75 files
+22 −0 CHANGELOG.md
+2 −2 package-lock.json
+1 −1 package.json
+45 −42 safe.csv
+4 −3 scripts/configs/networks/base.ts
+11 −16 scripts/configs/pools/base.ts
+2 −1 scripts/configs/pools/celo.ts
+2 −1 scripts/configs/pools/mantle.ts
+2 −0 scripts/configs/types.ts
+1 −1 scripts/generator/protocolV2Generator.ts
+1 −2 scripts/generator/protocolV3Generator.ts
+1 −1 src/AaveV2Avalanche.sol
+1 −1 src/AaveV2Ethereum.sol
+1 −1 src/AaveV2EthereumAMM.sol
+1 −1 src/AaveV2EthereumArc.sol
+1 −1 src/AaveV2Fuji.sol
+0 −488 src/AaveV2Goerli.sol
+0 −202 src/AaveV2Mumbai.sol
+1 −1 src/AaveV2Polygon.sol
+1 −0 src/AaveV3.sol
+21 −22 src/AaveV3Arbitrum.sol
+0 −250 src/AaveV3ArbitrumGoerli.sol
+1 −2 src/AaveV3ArbitrumSepolia.sol
+21 −22 src/AaveV3Avalanche.sol
+21 −22 src/AaveV3BNB.sol
+21 −22 src/AaveV3Base.sol
+153 −95 src/AaveV3BaseSepolia.sol
+1 −2 src/AaveV3BaseSepoliaLido.sol
+7 −2 src/AaveV3Celo.sol
+21 −22 src/AaveV3Ethereum.sol
+21 −22 src/AaveV3EthereumEtherFi.sol
+21 −22 src/AaveV3EthereumLido.sol
+1 −2 src/AaveV3Fantom.sol
+1 −2 src/AaveV3FantomTestnet.sol
+1 −2 src/AaveV3Fuji.sol
+21 −22 src/AaveV3Gnosis.sol
+0 −201 src/AaveV3GoerliGho.sol
+1 −2 src/AaveV3Harmony.sol
+21 −22 src/AaveV3Linea.sol
+4 −2 src/AaveV3Mantle.sol
+21 −22 src/AaveV3Metis.sol
+0 −466 src/AaveV3Mumbai.sol
+21 −22 src/AaveV3Optimism.sol
+0 −250 src/AaveV3OptimismGoerli.sol
+1 −2 src/AaveV3OptimismSepolia.sol
+21 −22 src/AaveV3Polygon.sol
+0 −92 src/AaveV3PolygonZkEvm.sol
+21 −22 src/AaveV3Scroll.sol
+0 −250 src/AaveV3ScrollAlpha.sol
+1 −2 src/AaveV3ScrollSepolia.sol
+1 −2 src/AaveV3Sepolia.sol
+1 −2 src/AaveV3Sonic.sol
+21 −22 src/AaveV3ZkSync.sol
+6 −6 src/MiscBaseSepolia.sol
+0 −187 src/common/ICollector.sol
+6 −6 src/ts/AaveV3Arbitrum.ts
+6 −6 src/ts/AaveV3Avalanche.ts
+6 −6 src/ts/AaveV3BNB.ts
+6 −6 src/ts/AaveV3Base.ts
+111 −65 src/ts/AaveV3BaseSepolia.ts
+6 −0 src/ts/AaveV3Celo.ts
+6 −6 src/ts/AaveV3Ethereum.ts
+6 −6 src/ts/AaveV3EthereumEtherFi.ts
+6 −6 src/ts/AaveV3EthereumLido.ts
+6 −6 src/ts/AaveV3Gnosis.ts
+6 −6 src/ts/AaveV3Linea.ts
+3 −0 src/ts/AaveV3Mantle.ts
+6 −6 src/ts/AaveV3Metis.ts
+6 −6 src/ts/AaveV3Optimism.ts
+6 −6 src/ts/AaveV3Polygon.ts
+6 −6 src/ts/AaveV3Scroll.ts
+6 −6 src/ts/AaveV3ZkSync.ts
+6 −6 src/ts/MiscBaseSepolia.ts
+130 −1 tests/cache/verified.json
+8 −5 tests/sanity/riskStewards.spec.ts
7 changes: 0 additions & 7 deletions scripts/FreezingStewards.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import {FreezingSteward} from '../src/riskstewards/FreezingSteward.sol';
import {AaveV3BNB} from 'aave-address-book/AaveV3BNB.sol';
import {AaveV3Gnosis} from 'aave-address-book/AaveV3Gnosis.sol';
import {AaveV3Scroll} from 'aave-address-book/AaveV3Scroll.sol';
import {AaveV3PolygonZkEvm} from 'aave-address-book/AaveV3PolygonZkEvm.sol';

contract DeployGno is GnosisScript {
function run() external broadcast {
Expand All @@ -25,9 +24,3 @@ contract DeployScroll is ScrollScript {
new FreezingSteward(AaveV3Scroll.ACL_MANAGER, AaveV3Scroll.POOL_CONFIGURATOR);
}
}

contract DeployZkEvm is PolygonZkEvmScript {
function run() external broadcast {
new FreezingSteward(AaveV3PolygonZkEvm.ACL_MANAGER, AaveV3PolygonZkEvm.POOL_CONFIGURATOR);
}
}
12 changes: 0 additions & 12 deletions scripts/RiskStewards.s.sol
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ import {AaveV3Gnosis} from 'aave-address-book/AaveV3Gnosis.sol';
import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IPoolDataProvider, IACLManager} from 'aave-address-book//AaveV3.sol';
import {AaveV3BNB} from 'aave-address-book/AaveV3BNB.sol';
import {AaveV3Scroll} from 'aave-address-book/AaveV3Scroll.sol';
import {AaveV3PolygonZkEvm} from 'aave-address-book/AaveV3PolygonZkEvm.sol';
import {AaveV3EthereumLido} from 'aave-address-book/AaveV3EthereumLido.sol';
import {AaveV3EthereumEtherFi} from 'aave-address-book/AaveV3EthereumEtherFi.sol';

Expand Down Expand Up @@ -129,17 +128,6 @@ contract DeployScroll is ScrollScript {
}
}

contract DeployZkEvm is PolygonZkEvmScript {
function run() external broadcast {
new CapsPlusRiskSteward(
AaveV3PolygonZkEvm.AAVE_PROTOCOL_DATA_PROVIDER,
IAaveV3ConfigEngine(AaveV3PolygonZkEvm.CONFIG_ENGINE),
0xC165b4ae0dfB650E0123d4A70D260029Cb6e2C0f,
5 days
);
}
}

contract DeployLidoEthereum is EthereumScript {
function run() external broadcast {
new CapsPlusRiskSteward(
Expand Down
9 changes: 4 additions & 5 deletions src/CollectorUtils.sol
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {IPool, DataTypes} from 'aave-address-book/AaveV3.sol';
import {ICollector} from 'aave-address-book/common/ICollector.sol';
import {IPool, DataTypes, ICollector} from 'aave-address-book/AaveV3.sol';
import {ILendingPool, DataTypes as V2DataTypes} from 'aave-address-book/AaveV2.sol';
import {IERC20} from 'openzeppelin-contracts/contracts/token/ERC20/IERC20.sol';
import {SafeERC20} from 'openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol';
Expand Down Expand Up @@ -80,7 +79,7 @@ library CollectorUtils {
if (input.amount == type(uint256).max) {
input.amount = IERC20(input.underlying).balanceOf(address(collector));
}
collector.transfer(input.underlying, address(this), input.amount);
collector.transfer(IERC20(input.underlying), address(this), input.amount);
IERC20(input.underlying).forceApprove(input.pool, input.amount);
IPool(input.pool).supply(input.underlying, input.amount, address(collector), 0);
}
Expand Down Expand Up @@ -163,7 +162,7 @@ library CollectorUtils {
input.amount = IERC20(input.fromUnderlying).balanceOf(address(collector));
}

collector.transfer(input.fromUnderlying, swapper, input.amount);
collector.transfer(IERC20(input.fromUnderlying), swapper, input.amount);
uint256 swapperBalance = IERC20(input.fromUnderlying).balanceOf(swapper);

// some tokens, like stETH, can loose 1-2wei on transfer
Expand Down Expand Up @@ -204,7 +203,7 @@ library CollectorUtils {
revert InvalidZeroAmount();
}

collector.transfer(aTokenAddress, address(this), input.amount);
collector.transfer(IERC20(aTokenAddress), address(this), input.amount);

// in case of imprecision during the aTokenTransfer withdraw a bit less
uint256 balanceAfterTransfer = IERC20(aTokenAddress).balanceOf(address(this));
Expand Down
8 changes: 7 additions & 1 deletion src/CommonTestBase.sol
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,13 @@ contract CommonTestBase is Test {
if (block.chainid == ChainIds.OPTIMISM) {
// sUSD
if (asset == AaveV3OptimismAssets.sUSD_UNDERLYING) {
vm.prank(AaveV3OptimismAssets.sUSD_A_TOKEN);
deal(
0x92bAc115d89cA17fd02Ed9357CEcA32842ACB4c2,
0xf2107A85d8b79CBd2c5b2Bb63CA73Fd068040b67,
amount
);

vm.prank(0xf2107A85d8b79CBd2c5b2Bb63CA73Fd068040b67);
IERC20(asset).transfer(user, amount);
return true;
}
Expand Down
106 changes: 106 additions & 0 deletions src/ProtocolV3TestBase.sol
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {IERC20} from 'openzeppelin-contracts/contracts/token/ERC20/IERC20.sol';
import {IERC20Metadata} from 'openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol';
import {SafeERC20} from 'openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol';
import {ReserveConfiguration} from 'aave-v3-origin/contracts/protocol/libraries/configuration/ReserveConfiguration.sol';
import {PercentageMath} from 'aave-v3-origin/contracts/protocol/libraries/math/PercentageMath.sol';
import {IDefaultInterestRateStrategyV2} from 'aave-v3-origin/contracts/interfaces/IDefaultInterestRateStrategyV2.sol';
import {AaveV3EthereumAssets} from 'aave-address-book/AaveV3Ethereum.sol';
import {DiffUtils} from 'aave-v3-origin-tests/utils/DiffUtils.sol';
Expand All @@ -16,6 +17,7 @@ import {IInitializableAdminUpgradeabilityProxy} from './interfaces/IInitializabl
import {ExtendedAggregatorV2V3Interface} from './interfaces/ExtendedAggregatorV2V3Interface.sol';
import {CommonTestBase, ReserveTokens} from './CommonTestBase.sol';
import {ILegacyDefaultInterestRateStrategy} from './dependencies/ILegacyDefaultInterestRateStrategy.sol';
import {MockFlashLoanReceiver} from './mocks/MockFlashLoanReceiver.sol';

struct LocalVars {
IPoolDataProvider.TokenData[] reserves;
Expand All @@ -39,8 +41,11 @@ struct InterestStrategyValues {
*/
contract ProtocolV3TestBase is RawProtocolV3TestBase, CommonTestBase {
using ReserveConfiguration for DataTypes.ReserveConfigurationMap;
using PercentageMath for uint256;
using SafeERC20 for IERC20;

MockFlashLoanReceiver internal flashLoanReceiver;

/**
* @dev runs the default test suite that should run on any proposal touching the aave protocol which includes:
* - diffing the config
Expand Down Expand Up @@ -127,6 +132,10 @@ contract ProtocolV3TestBase is RawProtocolV3TestBase, CommonTestBase {
* @param pool the pool that should be tested
*/
function e2eTest(IPool pool) public {
if (address(flashLoanReceiver) == address(0)) {
flashLoanReceiver = new MockFlashLoanReceiver();
}

ReserveConfig[] memory configs = _getReservesConfigs(pool);
ReserveConfig memory collateralConfig = _getGoodCollateral(configs);
uint256 snapshot = vm.snapshotState();
Expand Down Expand Up @@ -304,6 +313,33 @@ contract ProtocolV3TestBase is RawProtocolV3TestBase, CommonTestBase {

vm.revertToState(snapshotAfterDeposits);
}

// test flashloans
if (testAssetConfig.isFlashloanable) {
if (address(flashLoanReceiver) == address(0)) {
flashLoanReceiver = new MockFlashLoanReceiver();
}

_flashLoan({
config: testAssetConfig,
pool: pool,
user: collateralSupplier,
receiverAddress: address(flashLoanReceiver),
amount: testAssetAmount,
interestRateMode: 0
});

if (testAssetConfig.borrowingEnabled) {
_flashLoan({
config: testAssetConfig,
pool: pool,
user: collateralSupplier,
receiverAddress: address(flashLoanReceiver),
amount: testAssetAmount,
interestRateMode: 2
});
}
}
}

/**
Expand Down Expand Up @@ -518,6 +554,76 @@ contract ProtocolV3TestBase is RawProtocolV3TestBase, CommonTestBase {
vm.stopPrank();
}

function _flashLoan(
ReserveConfig memory config,
IPool pool,
address user,
address receiverAddress,
uint256 amount,
uint256 interestRateMode
) internal {
vm.startPrank(user);

uint256 underlyingTokenBalanceOfATokenBefore = IERC20(config.underlying).balanceOf(
config.aToken
);
uint256 debtTokenBalanceOfUserBefore = IERC20(config.variableDebtToken).balanceOf(user);

uint256 totalPremium;
if (interestRateMode == 0) {
uint256 flashLoanPremiumTotal = pool.FLASHLOAN_PREMIUM_TOTAL();

totalPremium = amount.percentMul(flashLoanPremiumTotal);

deal2(config.underlying, receiverAddress, totalPremium);
}

console.log('FLASH LOAN: %s, Amount: %s', config.symbol, amount);

{
address[] memory assets = new address[](1);
assets[0] = config.underlying;

uint256[] memory amounts = new uint256[](1);
amounts[0] = amount;

uint256[] memory interestRateModes = new uint256[](1);
interestRateModes[0] = interestRateMode;

pool.flashLoan({
receiverAddress: receiverAddress,
assets: assets,
amounts: amounts,
interestRateModes: interestRateModes,
onBehalfOf: user,
params: '0x',
referralCode: 0
});
}

uint256 underlyingTokenBalanceOfATokenAfter = IERC20(config.underlying).balanceOf(
config.aToken
);
uint256 debtTokenBalanceOfUserAfter = IERC20(config.variableDebtToken).balanceOf(user);

if (interestRateMode == 0) {
assertEq(
underlyingTokenBalanceOfATokenBefore + totalPremium,
underlyingTokenBalanceOfATokenAfter
);

assertEq(debtTokenBalanceOfUserAfter, debtTokenBalanceOfUserBefore);
} else {
assertGt(underlyingTokenBalanceOfATokenBefore, underlyingTokenBalanceOfATokenAfter);
assertEq(underlyingTokenBalanceOfATokenBefore - amount, underlyingTokenBalanceOfATokenAfter);

assertGt(debtTokenBalanceOfUserAfter, debtTokenBalanceOfUserBefore);
assertApproxEqAbs(debtTokenBalanceOfUserAfter, debtTokenBalanceOfUserBefore + amount, 1);
}

vm.stopPrank();
}

function getIsVirtualAccActive(
DataTypes.ReserveConfigurationMap memory configuration
) external pure returns (bool) {
Expand Down
23 changes: 23 additions & 0 deletions src/mocks/MockFlashLoanReceiver.sol
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.10;

import {IERC20} from 'openzeppelin-contracts/contracts/token/ERC20/IERC20.sol';
import {SafeERC20} from 'openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol';

contract MockFlashLoanReceiver {
using SafeERC20 for IERC20;

function executeOperation(
address[] calldata assets,
uint256[] calldata amounts,
uint256[] calldata premiums,
address /* initiator */,
bytes calldata /* params */
) external returns (bool) {
for (uint256 i = 0; i < assets.length; i++) {
IERC20(assets[i]).forceApprove(msg.sender, amounts[i] + premiums[i]);
}

return true;
}
}
17 changes: 0 additions & 17 deletions src/v3-config-engine/AaveV3PayloadPolygonZkEvm.sol

This file was deleted.

7 changes: 4 additions & 3 deletions tests/CollectorUtils.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ pragma solidity ^0.8.0;

import 'forge-std/Test.sol';

import {IAccessControl} from 'openzeppelin-contracts/contracts/access/IAccessControl.sol';
import {AaveV3Ethereum, AaveV3EthereumAssets, ICollector, IPool} from 'aave-address-book/AaveV3Ethereum.sol';
import {AaveV2Ethereum, AaveV2EthereumAssets, ILendingPool} from 'aave-address-book/AaveV2Ethereum.sol';
import {MiscEthereum} from 'aave-address-book/MiscEthereum.sol';
Expand All @@ -24,10 +25,10 @@ contract CollectorUtilsTest is Test {
address testReceiver = address(0xB0B);

function setUp() public {
vm.createSelectFork(vm.rpcUrl('mainnet'), 20420006);
vm.createSelectFork(vm.rpcUrl('mainnet'), 21922962);

vm.prank(COLLECTOR.getFundsAdmin());
COLLECTOR.setFundsAdmin(address(this));
vm.prank(AaveV3Ethereum.ACL_ADMIN);
IAccessControl(address(COLLECTOR)).grantRole('FUNDS_ADMIN', address(this));
}

function testDepositCollectorFundsToV3(uint128 amount) public {
Expand Down
2 changes: 1 addition & 1 deletion tests/riskstewards/CapsPlusRiskSteward.t.sol
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ contract CapsPlusRiskSteward_Test is Test {
CapsPlusRiskSteward public steward;

function setUp() public {
vm.createSelectFork(vm.rpcUrl('mainnet'), 20933854);
vm.createSelectFork(vm.rpcUrl('mainnet'), 21923995);
steward = new CapsPlusRiskSteward(
AaveV3Ethereum.AAVE_PROTOCOL_DATA_PROVIDER,
IAaveV3ConfigEngine(AaveV3Ethereum.CONFIG_ENGINE),
Expand Down

4 comments on commit 2f0f37b

@sakulstra
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

♻️ Forge Gas Snapshots

Seems like you are not measuring gas of any operations yet. 🤔
Consider adding some snapshot tests to measure regressions & improvements.

@sakulstra
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🌈 Test Results
No files changed, compilation skipped

Ran 3 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:IsTokenMapped
[PASS] test_revertsIf_invalidChain() (gas: 11006)
[PASS] test_successful_returnsFalse() (gas: 19204)
[PASS] test_successful_returnsTrue() (gas: 17406)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 1.98s (576.19ms CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthPlasmaBridge.t.sol:ExitTest
[PASS] test_revertsIf_invalidChain() (gas: 11219)
[PASS] test_revertsIf_proofAlreadyProcessed() (gas: 169784)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 2.43s (1.19s CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:ReceiveEther
[PASS] test_revertsIf_invalidChain() (gas: 19299)
[PASS] test_successful_forwardsETH() (gas: 31188)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 783.17ms (357.45ms CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:TransferOwnership
[PASS] test_revertsIf_invalidCaller() (gas: 15076)
[PASS] test_successful() (gas: 16317)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 546.85ms (387.38µs CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:WithdrawToCollectorTest
[PASS] test_revertsIf_invalidChain() (gas: 10887)
[PASS] test_successful() (gas: 59312)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.47s (1.02s CPU time)

Ran 3 tests for tests/bridges/arbitrum/AaveArbEthERC20BridgeTest.t.sol:BridgeTest
[PASS] test_revertsIf_invalidChain() (gas: 8901)
[PASS] test_revertsIf_notOwner() (gas: 69369)
[PASS] test_successful_arbitrumBridge() (gas: 301726)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 4.80s (3.31s CPU time)

Ran 3 tests for tests/bridges/polygon/AavePolEthPlasmaBridge.t.sol:BridgeTest
[PASS] test_revertsIf_invalidChain() (gas: 8548)
[PASS] test_revertsIf_notOwner() (gas: 23379)
[PASS] test_successful() (gas: 40050)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 757.00ms (227.94ms CPU time)

Ran 2 tests for tests/bridges/arbitrum/AaveArbEthERC20BridgeTest.t.sol:EmergencyTokenTransfer
[PASS] test_revertsIf_invalidCaller() (gas: 13011)
[PASS] test_successful_governanceCaller() (gas: 58450)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.15s (735.57ms CPU time)

Ran 1 test for tests/bridges/polygon/AavePolEthPlasmaBridge.t.sol:ForkedBridgeTests
[PASS] test_successful() (gas: 511934)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 3.71s (3.71s CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthPlasmaBridge.t.sol:EmergencyTokenTransfer
[PASS] test_revertsIf_invalidCaller() (gas: 13033)
[PASS] test_successful_governanceCaller() (gas: 45792)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 809.67ms (326.81ms CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthPlasmaBridge.t.sol:TransferOwnership
[PASS] test_revertsIf_invalidCaller() (gas: 15148)
[PASS] test_successful() (gas: 16301)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 428.29ms (635.04µs CPU time)

Ran 2 tests for tests/bridges/optimism/AaveOpEthERC20BridgeTest.t.sol:TransferOwnership
[PASS] test_revertsIf_invalidCaller() (gas: 15148)
[PASS] test_successful() (gas: 16301)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 724.08ms (497.05µs CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthPlasmaBridge.t.sol:WithdrawToCollectorTest
[PASS] test_revertsIf_invalidChain() (gas: 10827)
[PASS] test_successful() (gas: 42835)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 872.21ms (443.56ms CPU time)

Ran 6 tests for tests/swaps/AaveSwapperTest.t.sol:AaveSwapperSwap
[PASS] test_revertsIf_amountIsZero() (gas: 12394)
[PASS] test_revertsIf_fromTokenIsZeroAddress() (gas: 12356)
[PASS] test_revertsIf_invalidCaller() (gas: 12028)
[PASS] test_revertsIf_invalidRecipient() (gas: 12417)
[PASS] test_revertsIf_toTokenIsZeroAddress() (gas: 12294)
[PASS] test_successful() (gas: 329304)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 615.74ms (426.75ms CPU time)

Ran 3 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:BridgeTest
[PASS] test_revertsIf_invalidChain() (gas: 8661)
[PASS] test_revertsIf_notOwner() (gas: 67157)
[PASS] test_successful() (gas: 59557)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 1.44s (959.03ms CPU time)

Ran 3 tests for tests/swaps/AaveSwapperTest.t.sol:CancelSwap
[PASS] test_revertsIf_invalidCaller() (gas: 15859)
[PASS] test_revertsIf_noMatchingTrade() (gas: 334428)
[PASS] test_successful() (gas: 372338)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 533.07ms (166.99ms CPU time)

Ran 2 tests for tests/swaps/AaveSwapperTest.t.sol:EmergencyTokenTransfer
[PASS] test_revertsIf_invalidCaller() (gas: 10805)
[PASS] test_successful_governanceCaller() (gas: 209558)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 248.69ms (1.32ms CPU time)

Ran 7 tests for tests/swaps/AaveSwapperTest.t.sol:GetExpectedOut
[PASS] test_aaveToUsdc() (gas: 91147)
[PASS] test_aaveToUsdc_withEthBasedOracles() (gas: 110211)
[PASS] test_balTo80BAL20WETH() (gas: 86559)
[PASS] test_ethToBal() (gas: 72313)
[PASS] test_ethToDai() (gas: 76536)
[PASS] test_revertsIf_fromOracleIsAddressZero() (gas: 9276)
[PASS] test_revertsIf_toOracleIsAddressZero() (gas: 9280)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 8.92s (8.15s CPU time)

Ran 2 tests for tests/swaps/AaveSwapperTest.t.sol:RemoveGuardian
[PASS] test_revertsIf_invalidCaller() (gas: 13299)
[PASS] test_successful() (gas: 16557)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 229.60ms (262.72µs CPU time)

Ran 2 tests for tests/swaps/AaveSwapperTest.t.sol:TransferOwnership
[PASS] test_revertsIf_invalidCaller() (gas: 12801)
[PASS] test_successful() (gas: 18581)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 206.23ms (488.24µs CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:ExitMultipleTest
[PASS] test_revertsIf_invalidChain() (gas: 11689)
[PASS] test_revertsIf_proofAlreadyProcessed() (gas: 39971)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 682.13ms (91.83ms CPU time)

Ran 2 tests for tests/swaps/AaveSwapperTest.t.sol:UpdateGuardian
[PASS] test_revertsIf_invalidCaller() (gas: 14980)
[PASS] test_successful() (gas: 22944)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 205.14ms (994.77µs CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:EmergencyTokenTransfer
[PASS] test_revertsIf_invalidCaller() (gas: 13021)
[PASS] test_successful_governanceCaller() (gas: 59756)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 1.10s (583.34ms CPU time)

Ran 2 tests for tests/bridges/arbitrum/AaveArbEthERC20BridgeTest.t.sol:ExitTest
[PASS] test_revertsIf_invalidChain() (gas: 15071)
[PASS] test_successful_exitsLink() (gas: 779333)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 4.02s (3.54s CPU time)

Ran 2 tests for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:ExitTest
[PASS] test_revertsIf_invalidChain() (gas: 11197)
[PASS] test_revertsIf_proofAlreadyProcessed() (gas: 39252)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 469.78ms (614.07µs CPU time)

Ran 2 tests for tests/bridges/arbitrum/AaveArbEthERC20BridgeTest.t.sol:TransferOwnership
[PASS] test_revertsIf_invalidCaller() (gas: 15082)
[PASS] test_successful() (gas: 16290)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 528.65ms (530.89µs CPU time)

Ran 1 test for tests/bridges/polygon/AavePolEthERC20BridgeTest.t.sol:ForkedBridgeTests
[PASS] test_successful() (gas: 402623)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 2.13s (2.13s CPU time)

Ran 3 tests for tests/bridges/optimism/AaveOpEthERC20BridgeTest.t.sol:BridgeTest
[PASS] test_revertsIf_invalidChain() (gas: 504449)
[PASS] test_revertsIf_notOwner() (gas: 185720)
[PASS] test_successful() (gas: 321644)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 3.49s (3.20s CPU time)

Ran 2 tests for tests/bridges/optimism/AaveOpEthERC20BridgeTest.t.sol:EmergencyTokenTransfer
[PASS] test_revertsIf_invalidCaller() (gas: 13201)
[PASS] test_successful_governanceCaller() (gas: 200248)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 519.61ms (235.11ms CPU time)

Ran 6 tests for tests/CollectorUtils.t.sol:CollectorUtilsTest
[PASS] testDepositAllCollectorFundsToV3() (gas: 179454)
[PASS] testDepositCollectorFundsToV3(uint128) (runs: 256, μ: 183328, ~: 183328)
[PASS] testStream(uint128) (runs: 256, μ: 229357, ~: 229442)
[PASS] testSwap(address,address,address,address,address,uint256,uint256) (runs: 256, μ: 77098, ~: 77098)
[PASS] testWithdrawCollectorFundsFromV2(uint128) (runs: 256, μ: 325205, ~: 323416)
[PASS] testWithdrawCollectorFundsFromV3(uint128) (runs: 256, μ: 264267, ~: 263172)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 53.81s (52.81s CPU time)

Ran 1 test for tests/CommonTestBase.t.sol:CommonTestBaseTest
[PASS] test_deal2_shouldMaintainCurrentCaller() (gas: 185243)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 880.63ms (453.54ms CPU time)

Ran 2 tests for tests/ProtocolV3TestBase.t.sol:ProtocolV3TestE2ETestAvalancheAll
[PASS] test_deal() (gas: 183252)
[PASS] test_e2e() (gas: 29713094)
Logs:
  E2E: Collateral DAI.e, TestAsset DAI.e
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: DAI.e, Amount: 9990647455197765715580
  WITHDRAW: DAI.e, Amount: 4995323727598882857790
  WITHDRAW: DAI.e, Amount: 4995323727598882857789
  BORROW: DAI.e, Amount 9990647455197765715580
  REPAY: DAI.e, Amount: 9990647455197765715580
  REPAY: DAI.e, Amount: 9990647455197765715580
  BORROW: DAI.e, Amount 9990647455197765715580
  LIQUIDATE: DAI.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9990647455197765715580
  LIQUIDATE: DAI.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9990647455197765715580
  FLASH LOAN: DAI.e, Amount: 9990647455197765715580
  FLASH LOAN: DAI.e, Amount: 9990647455197765715580
  E2E: Collateral DAI.e, TestAsset LINK.e
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: LINK.e, Amount: 638776819044747593727
  WITHDRAW: LINK.e, Amount: 319388409522373796863
  WITHDRAW: LINK.e, Amount: 319388409522373796865
  BORROW: LINK.e, Amount 638776819044747593727
  REPAY: LINK.e, Amount: 638776819044747593727
  REPAY: LINK.e, Amount: 638776819044747593727
  BORROW: LINK.e, Amount 638776819044747593727
  LIQUIDATE: LINK.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 638776819044747593727
  LIQUIDATE: LINK.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 638776819044747593727
  FLASH LOAN: LINK.e, Amount: 638776819044747593727
  FLASH LOAN: LINK.e, Amount: 638776819044747593727
  E2E: Collateral DAI.e, TestAsset USDC
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: USDC, Amount: 10000481423
  WITHDRAW: USDC, Amount: 5000240711
  WITHDRAW: USDC, Amount: 5000240712
  BORROW: USDC, Amount 10000481423
  REPAY: USDC, Amount: 10000481423
  REPAY: USDC, Amount: 10000481423
  BORROW: USDC, Amount 10000481423
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000481423
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000481423
  FLASH LOAN: USDC, Amount: 10000481423
  FLASH LOAN: USDC, Amount: 10000481423
  E2E: Collateral DAI.e, TestAsset WBTC.e
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: WBTC.e, Amount: 22790725
  WITHDRAW: WBTC.e, Amount: 11395362
  WITHDRAW: WBTC.e, Amount: 11395363
  BORROW: WBTC.e, Amount 22790725
  REPAY: WBTC.e, Amount: 22790725
  REPAY: WBTC.e, Amount: 22790725
  BORROW: WBTC.e, Amount 22790725
  LIQUIDATE: WBTC.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 22790725
  LIQUIDATE: WBTC.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 22790725
  FLASH LOAN: WBTC.e, Amount: 22790725
  FLASH LOAN: WBTC.e, Amount: 22790725
  E2E: Collateral DAI.e, TestAsset WETH.e
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: WETH.e, Amount: 4395129957263892328
  WITHDRAW: WETH.e, Amount: 2197564978631946164
  WITHDRAW: WETH.e, Amount: 2197564978631946164
  BORROW: WETH.e, Amount 4395129957263892328
  REPAY: WETH.e, Amount: 4395129957263892328
  REPAY: WETH.e, Amount: 4395129957263892328
  BORROW: WETH.e, Amount 4395129957263892328
  LIQUIDATE: WETH.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 4395129957263892328
  LIQUIDATE: WETH.e, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 4395129957263892328
  FLASH LOAN: WETH.e, Amount: 4395129957263892328
  FLASH LOAN: WETH.e, Amount: 4395129957263892328
  E2E: Collateral DAI.e, TestAsset USDt
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: USDt, Amount: 9997600575
  WITHDRAW: USDt, Amount: 4998800287
  WITHDRAW: USDt, Amount: 4998800289
  BORROW: USDt, Amount 9997600575
  REPAY: USDt, Amount: 9997600575
  REPAY: USDt, Amount: 9997600575
  BORROW: USDt, Amount 9997600575
  LIQUIDATE: USDt, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9997600575
  LIQUIDATE: USDt, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9997600575
  FLASH LOAN: USDt, Amount: 9997600575
  FLASH LOAN: USDt, Amount: 9997600575
  E2E: Collateral DAI.e, TestAsset AAVE.e
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: AAVE.e, Amount: 102212199066843507399
  WITHDRAW: AAVE.e, Amount: 51106099533421753699
  WITHDRAW: AAVE.e, Amount: 51106099533421753699
  FLASH LOAN: AAVE.e, Amount: 102212199066843507399
  E2E: Collateral DAI.e, TestAsset WAVAX
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: WAVAX, Amount: 377358490708437166305
  WITHDRAW: WAVAX, Amount: 188679245354218583152
  WITHDRAW: WAVAX, Amount: 188679245354218583153
  BORROW: WAVAX, Amount 377358490708437166305
  REPAY: WAVAX, Amount: 377358490708437166305
  REPAY: WAVAX, Amount: 377358490708437166305
  BORROW: WAVAX, Amount 377358490708437166305
  LIQUIDATE: WAVAX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 377358490708437166305
  LIQUIDATE: WAVAX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 377358490708437166305
  FLASH LOAN: WAVAX, Amount: 377358490708437166305
  FLASH LOAN: WAVAX, Amount: 377358490708437166305
  E2E: Collateral DAI.e, TestAsset sAVAX
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: sAVAX, Amount: 337151485460095900373
  WITHDRAW: sAVAX, Amount: 168575742730047950186
  WITHDRAW: sAVAX, Amount: 168575742730047950186
  FLASH LOAN: sAVAX, Amount: 337151485460095900373
  E2E: Collateral DAI.e, TestAsset FRAX
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: FRAX, Amount: 10000000000000000000000
  WITHDRAW: FRAX, Amount: 5000000000000000000000
  WITHDRAW: FRAX, Amount: 5000000000000000000000
  BORROW: FRAX, Amount 10000000000000000000000
  REPAY: FRAX, Amount: 10000000000000000000000
  REPAY: FRAX, Amount: 10000000000000000000000
  BORROW: FRAX, Amount 10000000000000000000000
  LIQUIDATE: FRAX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000000000000000000000
  LIQUIDATE: FRAX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000000000000000000000
  FLASH LOAN: FRAX, Amount: 10000000000000000000000
  FLASH LOAN: FRAX, Amount: 10000000000000000000000
  E2E: TestAsset MAI SKIPPED
  E2E: Collateral DAI.e, TestAsset BTC.b
  SUPPLY: DAI.e, Amount: 99906474551977657155806
  SUPPLY: BTC.b, Amount: 22790725
  WITHDRAW: BTC.b, Amount: 11395362
  WITHDRAW: BTC.b, Amount: 11395362
  BORROW: BTC.b, Amount 22790725
  REPAY: BTC.b, Amount: 22790725
  REPAY: BTC.b, Amount: 22790725
  BORROW: BTC.b, Amount 22790725
  LIQUIDATE: BTC.b, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 22790725
  LIQUIDATE: BTC.b, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 22790725
  FLASH LOAN: BTC.b, Amount: 22790725
  FLASH LOAN: BTC.b, Amount: 22790725

Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 60.72s (59.95s CPU time)

Ran 1 test for tests/swaps/DepositV2SwapPayloadTest.t.sol:DepositV2SwapPayloadTest
[PASS] test_successful() (gas: 497793)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 5.01s (4.39s CPU time)

Ran 1 test for tests/swaps/DepositV3SwapPayloadTest.t.sol:DepositV3SwapPayloadTest
[PASS] test_successful() (gas: 188029)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 4.35s (3.56s CPU time)

Ran 1 test for tests/ProtocolV2TestBase.t.sol:ProtocolV2TestBaseTest
[PASS] testE2E() (gas: 21383704)
Logs:
  E2E: Collateral AAVE, TestAsset USDT
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: USDT, Amount: 1922278804
  WITHDRAW: USDT, Amount: 961139402
  WITHDRAW: USDT, Amount: 961139403
  BORROW: USDT, Amount 1922278804, Stable: false
  REPAY: USDT, Amount: 1922278804
  BORROW: USDT, Amount 1922278804, Stable: true
  REPAY: USDT, Amount: 1922278804
  E2E: Collateral AAVE, TestAsset WBTC
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: WBTC, Amount: 6293388
  WITHDRAW: WBTC, Amount: 3146694
  WITHDRAW: WBTC, Amount: 3146693
  BORROW: WBTC, Amount 6293388, Stable: false
  REPAY: WBTC, Amount: 6293388
  BORROW: WBTC, Amount 6293388, Stable: true
  REPAY: WBTC, Amount: 6293388
  E2E: Collateral AAVE, TestAsset WETH
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: WETH, Amount: 1000000000000000000
  WITHDRAW: WETH, Amount: 500000000000000000
  WITHDRAW: WETH, Amount: 500000000000000001
  BORROW: WETH, Amount 1000000000000000000, Stable: false
  REPAY: WETH, Amount: 1000000000000000000
  BORROW: WETH, Amount 1000000000000000000, Stable: true
  REPAY: WETH, Amount: 1000000000000000000
  E2E: Collateral AAVE, TestAsset AAVE
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: AAVE, Amount: 25535972511960226937
  WITHDRAW: AAVE, Amount: 12767986255980113468
  WITHDRAW: AAVE, Amount: 12767986255980113469
  E2E: Collateral AAVE, TestAsset DAI
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: DAI, Amount: 1914944850736299739803
  WITHDRAW: DAI, Amount: 957472425368149869901
  WITHDRAW: DAI, Amount: 957472425368149869902
  BORROW: DAI, Amount 1914944850736299739803, Stable: false
  REPAY: DAI, Amount: 1914944850736299739803
  BORROW: DAI, Amount 1914944850736299739803, Stable: true
  REPAY: DAI, Amount: 1914944850736299739803
  E2E: Collateral AAVE, TestAsset sUSD
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: sUSD, Amount: 1919434649608077907661
  WITHDRAW: sUSD, Amount: 959717324804038953830
  WITHDRAW: sUSD, Amount: 959717324804038953830
  BORROW: sUSD, Amount 1919434649608077907661, Stable: false
  REPAY: sUSD, Amount: 1919434649608077907661
  E2E: Collateral AAVE, TestAsset USDC
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: USDC, Amount: 1912585127
  WITHDRAW: USDC, Amount: 956292563
  WITHDRAW: USDC, Amount: 956292564
  BORROW: USDC, Amount 1912585127, Stable: false
  REPAY: USDC, Amount: 1912585127
  BORROW: USDC, Amount 1912585127, Stable: true
  REPAY: USDC, Amount: 1912585127
  E2E: Collateral AAVE, TestAsset CRV
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: CRV, Amount: 2447532600357965341777
  WITHDRAW: CRV, Amount: 1223766300178982670888
  WITHDRAW: CRV, Amount: 1223766300178982670889
  E2E: Collateral AAVE, TestAsset GUSD
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: GUSD, Amount: 191331
  WITHDRAW: GUSD, Amount: 95665
  WITHDRAW: GUSD, Amount: 95665
  BORROW: GUSD, Amount 191331, Stable: false
  REPAY: GUSD, Amount: 191331
  E2E: Collateral AAVE, TestAsset USDP
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: USDP, Amount: 1939299150785117381031
  WITHDRAW: USDP, Amount: 969649575392558690515
  WITHDRAW: USDP, Amount: 969649575392558690516
  BORROW: USDP, Amount 1939299150785117381031, Stable: false
  REPAY: USDP, Amount: 1939299150785117381031
  E2E: Collateral AAVE, TestAsset FRAX
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: FRAX, Amount: 1937630504372688546970
  WITHDRAW: FRAX, Amount: 968815252186344273485
  WITHDRAW: FRAX, Amount: 968815252186344273486
  BORROW: FRAX, Amount 1937630504372688546970, Stable: false
  REPAY: FRAX, Amount: 1937630504372688546970
  E2E: Collateral AAVE, TestAsset stETH
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: stETH, Amount: 1000000000000000000
  WITHDRAW: stETH, Amount: 500000000000000000
  WITHDRAW: stETH, Amount: 499999999999999999
  E2E: Collateral AAVE, TestAsset LUSD
  SUPPLY: AAVE, Amount: 2553597251196022693793
  SUPPLY: LUSD, Amount: 1910246445122217347247
  WITHDRAW: LUSD, Amount: 955123222561108673623
  WITHDRAW: LUSD, Amount: 955123222561108673623
  BORROW: LUSD, Amount 1910246445122217347247, Stable: false
  REPAY: LUSD, Amount: 1910246445122217347247
  BORROW: LUSD, Amount 1910246445122217347247, Stable: true
  REPAY: LUSD, Amount: 1910246445122217347247

Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 78.86s (78.35s CPU time)

Ran 1 test for tests/ProtocolV3TestBase.t.sol:ProtocolV3TestE2ETestMetisAll
[PASS] test_e2e() (gas: 14681541)
Logs:
  E2E: Collateral m.DAI, TestAsset m.DAI
  SUPPLY: m.DAI, Amount: 99997001089937312779989
  SUPPLY: m.DAI, Amount: 9999700108993731277998
  WITHDRAW: m.DAI, Amount: 4999850054496865638999
  WITHDRAW: m.DAI, Amount: 4999850054496865638999
  BORROW: m.DAI, Amount 9999700108993731277998
  REPAY: m.DAI, Amount: 9999700108993731277998
  REPAY: m.DAI, Amount: 9999700108993731277998
  BORROW: m.DAI, Amount 9999700108993731277998
  LIQUIDATE: m.DAI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999700108993731277998
  LIQUIDATE: m.DAI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999700108993731277998
  FLASH LOAN: m.DAI, Amount: 9999700108993731277998
  FLASH LOAN: m.DAI, Amount: 9999700108993731277998
  E2E: Collateral m.DAI, TestAsset Metis
  SUPPLY: m.DAI, Amount: 99997001089937312779989
  SUPPLY: Metis, Amount: 116368572137893067703
  WITHDRAW: Metis, Amount: 58184286068946533851
  WITHDRAW: Metis, Amount: 58184286068946533852
  BORROW: Metis, Amount 116368572137893067703
  REPAY: Metis, Amount: 116368572137893067703
  REPAY: Metis, Amount: 116368572137893067703
  BORROW: Metis, Amount 116368572137893067703
  LIQUIDATE: Metis, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 116368572137893067703
  LIQUIDATE: Metis, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 116368572137893067703
  FLASH LOAN: Metis, Amount: 116368572137893067703
  FLASH LOAN: Metis, Amount: 116368572137893067703
  E2E: Collateral m.DAI, TestAsset m.USDC
  SUPPLY: m.DAI, Amount: 99997001089937312779989
  SUPPLY: m.USDC, Amount: 10000182203
  WITHDRAW: m.USDC, Amount: 5000091101
  WITHDRAW: m.USDC, Amount: 5000091101
  BORROW: m.USDC, Amount 10000182203
  REPAY: m.USDC, Amount: 10000182203
  REPAY: m.USDC, Amount: 10000182203
  BORROW: m.USDC, Amount 10000182203
  LIQUIDATE: m.USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000182203
  LIQUIDATE: m.USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000182203
  FLASH LOAN: m.USDC, Amount: 10000182203
  FLASH LOAN: m.USDC, Amount: 10000182203
  E2E: Collateral m.DAI, TestAsset m.USDT
  SUPPLY: m.DAI, Amount: 99997001089937312779989
  SUPPLY: m.USDT, Amount: 10003401156
  WITHDRAW: m.USDT, Amount: 5001700578
  WITHDRAW: m.USDT, Amount: 5001700579
  BORROW: m.USDT, Amount 10003401156
  REPAY: m.USDT, Amount: 10003401156
  REPAY: m.USDT, Amount: 10003401156
  BORROW: m.USDT, Amount 10003401156
  LIQUIDATE: m.USDT, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10003401155
  LIQUIDATE: m.USDT, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10003401155
  FLASH LOAN: m.USDT, Amount: 10003401156
  FLASH LOAN: m.USDT, Amount: 10003401156
  E2E: Collateral m.DAI, TestAsset WETH
  SUPPLY: m.DAI, Amount: 99997001089937312779989
  SUPPLY: WETH, Amount: 4356377288122151655
  WITHDRAW: WETH, Amount: 2178188644061075827
  WITHDRAW: WETH, Amount: 2178188644061075828
  BORROW: WETH, Amount 4356377288122151655
  REPAY: WETH, Amount: 4356377288122151655
  REPAY: WETH, Amount: 4356377288122151655
  BORROW: WETH, Amount 4356377288122151655
  LIQUIDATE: WETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 4356377288122151655
  LIQUIDATE: WETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 4356377288122151655
  FLASH LOAN: WETH, Amount: 4356377288122151655
  FLASH LOAN: WETH, Amount: 4356377288122151655

Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 51.12s (50.18s CPU time)

Ran 1 test for tests/v2-config-engine/AaveV2ConfigEngineTest.t.sol:AaveV2ConfigEngineTest
[PASS] testV2RateStrategiesUpdates() (gas: 183626267)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 118.42s (118.42s CPU time)

Ran 9 tests for tests/riskstewards/CapsPlusRiskSteward.t.sol:CapsPlusRiskSteward_Test
[PASS] test_debounce() (gas: 135843)
[PASS] test_increaseCapsMax() (gas: 121464)
[PASS] test_invalidCaller() (gas: 7478)
[PASS] test_keepCurrent() (gas: 53865)
[PASS] test_unlisted() (gas: 32845)
[PASS] test_updateBorrowCapBiggerMax() (gas: 37251)
[PASS] test_updateBorrowCapNotStrictlyHigher() (gas: 46033)
[PASS] test_updateSupplyCapBiggerMax() (gas: 37031)
[PASS] test_updateSupplyCapNotStrictlyHigher() (gas: 45612)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 2.29s (1.43s CPU time)

Ran 2 tests for tests/ProtocolV2TestBase.t.sol:ProtocolV2TestE2ETestAsset
[PASS] test_defaultTest() (gas: 52263092)
[PASS] test_e2eTestAssetUSDT() (gas: 3239289)
Logs:
  E2E: Collateral DAI, TestAsset USDT
  SUPPLY: DAI, Amount: 198482420985917995751553
  SUPPLY: USDT, Amount: 1988551823
  WITHDRAW: USDT, Amount: 994275911
  WITHDRAW: USDT, Amount: 994275912
  BORROW: USDT, Amount 1988551823, Stable: false
  REPAY: USDT, Amount: 1988551823

Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 123.97s (123.73s CPU time)

Ran 1 test for tests/ProtocolV3TestBase.t.sol:ProtocolV3TestE2ETestOptimismAll
[PASS] test_e2e() (gas: 38377932)
Logs:
  E2E: Collateral DAI, TestAsset DAI
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: DAI, Amount: 10002407279359923552801
  WITHDRAW: DAI, Amount: 5001203639679961776400
  WITHDRAW: DAI, Amount: 5001203639679961776401
  BORROW: DAI, Amount 10002407279359923552801
  REPAY: DAI, Amount: 10002407279359923552801
  REPAY: DAI, Amount: 10002407279359923552801
  BORROW: DAI, Amount 10002407279359923552801
  LIQUIDATE: DAI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10002407279359923552802
  LIQUIDATE: DAI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10002407279359923552802
  FLASH LOAN: DAI, Amount: 10002407279359923552801
  FLASH LOAN: DAI, Amount: 10002407279359923552801
  E2E: Collateral DAI, TestAsset LINK
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: LINK, Amount: 762886138633500039212
  WITHDRAW: LINK, Amount: 381443069316750019606
  WITHDRAW: LINK, Amount: 381443069316750019606
  BORROW: LINK, Amount 762886138633500039212
  REPAY: LINK, Amount: 762886138633500039212
  REPAY: LINK, Amount: 762886138633500039212
  BORROW: LINK, Amount 762886138633500039212
  LIQUIDATE: LINK, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 762886138633500039212
  LIQUIDATE: LINK, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 762886138633500039212
  FLASH LOAN: LINK, Amount: 762886138633500039212
  FLASH LOAN: LINK, Amount: 762886138633500039212
  E2E: Collateral DAI, TestAsset USDC
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: USDC, Amount: 10000500025
  WITHDRAW: USDC, Amount: 5000250012
  WITHDRAW: USDC, Amount: 5000250013
  BORROW: USDC, Amount 10000500025
  REPAY: USDC, Amount: 10000500025
  REPAY: USDC, Amount: 10000500025
  BORROW: USDC, Amount 10000500025
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000500025
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000500025
  FLASH LOAN: USDC, Amount: 10000500025
  FLASH LOAN: USDC, Amount: 10000500025
  E2E: Collateral DAI, TestAsset WBTC
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: WBTC, Amount: 15566717
  WITHDRAW: WBTC, Amount: 7783358
  WITHDRAW: WBTC, Amount: 7783360
  BORROW: WBTC, Amount 15566717
  REPAY: WBTC, Amount: 15566717
  REPAY: WBTC, Amount: 15566717
  BORROW: WBTC, Amount 15566717
  LIQUIDATE: WBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 15566717
  LIQUIDATE: WBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 15566717
  FLASH LOAN: WBTC, Amount: 15566717
  FLASH LOAN: WBTC, Amount: 15566717
  E2E: Collateral DAI, TestAsset WETH
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: WETH, Amount: 3143161625202068176
  WITHDRAW: WETH, Amount: 1571580812601034088
  WITHDRAW: WETH, Amount: 1571580812601034088
  BORROW: WETH, Amount 3143161625202068176
  REPAY: WETH, Amount: 3143161625202068176
  REPAY: WETH, Amount: 3143161625202068176
  BORROW: WETH, Amount 3143161625202068176
  LIQUIDATE: WETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 3143161625202068176
  LIQUIDATE: WETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 3143161625202068176
  FLASH LOAN: WETH, Amount: 3143161625202068176
  FLASH LOAN: WETH, Amount: 3143161625202068176
  E2E: Collateral DAI, TestAsset USDT
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: USDT, Amount: 10000058900
  WITHDRAW: USDT, Amount: 5000029450
  WITHDRAW: USDT, Amount: 5000029451
  BORROW: USDT, Amount 10000058900
  REPAY: USDT, Amount: 10000058900
  REPAY: USDT, Amount: 10000058900
  BORROW: USDT, Amount 10000058900
  LIQUIDATE: USDT, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000058900
  LIQUIDATE: USDT, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000058900
  FLASH LOAN: USDT, Amount: 10000058900
  FLASH LOAN: USDT, Amount: 10000058900
  E2E: Collateral DAI, TestAsset AAVE
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: AAVE, Amount: 113043655198764658935
  WITHDRAW: AAVE, Amount: 56521827599382329467
  WITHDRAW: AAVE, Amount: 56521827599382329468
  FLASH LOAN: AAVE, Amount: 113043655198764658935
  E2E: Collateral DAI, TestAsset sUSD
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: sUSD, Amount: 10006561702770975039172
  WITHDRAW: sUSD, Amount: 5003280851385487519586
  WITHDRAW: sUSD, Amount: 5003280851385487519586
  BORROW: sUSD, Amount 10006561702770975039172
  REPAY: sUSD, Amount: 10006561702770975039172
  REPAY: sUSD, Amount: 10006561702770975039172
  BORROW: sUSD, Amount 10006561702770975039172
  LIQUIDATE: sUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10006561702770975039172
  LIQUIDATE: sUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10006561702770975039172
  FLASH LOAN: sUSD, Amount: 10006561702770975039172
  FLASH LOAN: sUSD, Amount: 10006561702770975039172
  E2E: Collateral DAI, TestAsset OP
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: OP, Amount: 5856765730793962314090
  WITHDRAW: OP, Amount: 2928382865396981157045
  WITHDRAW: OP, Amount: 2928382865396981157045
  BORROW: OP, Amount 5856765730793962314090
  REPAY: OP, Amount: 5856765730793962314090
  REPAY: OP, Amount: 5856765730793962314090
  BORROW: OP, Amount 5856765730793962314090
  LIQUIDATE: OP, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 5856765730793962314090
  LIQUIDATE: OP, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 5856765730793962314090
  FLASH LOAN: OP, Amount: 5856765730793962314090
  FLASH LOAN: OP, Amount: 5856765730793962314090
  E2E: Collateral DAI, TestAsset wstETH
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: wstETH, Amount: 2678043798536303616
  WITHDRAW: wstETH, Amount: 1339021899268151808
  WITHDRAW: wstETH, Amount: 1339021899268151809
  BORROW: wstETH, Amount 2678043798536303616
  REPAY: wstETH, Amount: 2678043798536303616
  REPAY: wstETH, Amount: 2678043798536303616
  BORROW: wstETH, Amount 2678043798536303616
  LIQUIDATE: wstETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2678043798536303616
  LIQUIDATE: wstETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2678043798536303616
  FLASH LOAN: wstETH, Amount: 2678043798536303616
  FLASH LOAN: wstETH, Amount: 2678043798536303616
  E2E: Collateral DAI, TestAsset LUSD
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: LUSD, Amount: 10016383197012361298634
  WITHDRAW: LUSD, Amount: 5008191598506180649317
  WITHDRAW: LUSD, Amount: 5008191598506180649317
  BORROW: LUSD, Amount 10016383197012361298634
  REPAY: LUSD, Amount: 10016383197012361298634
  REPAY: LUSD, Amount: 10016383197012361298634
  BORROW: LUSD, Amount 10016383197012361298634
  LIQUIDATE: LUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10016383197012361298634
  LIQUIDATE: LUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10016383197012361298634
  FLASH LOAN: LUSD, Amount: 10016383197012361298634
  FLASH LOAN: LUSD, Amount: 10016383197012361298634
  E2E: TestAsset MAI SKIPPED
  E2E: Collateral DAI, TestAsset rETH
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: rETH, Amount: 2826799768710487603
  WITHDRAW: rETH, Amount: 1413399884355243801
  WITHDRAW: rETH, Amount: 1413399884355243801
  BORROW: rETH, Amount 2826799768710487603
  REPAY: rETH, Amount: 2826799768710487603
  REPAY: rETH, Amount: 2826799768710487603
  BORROW: rETH, Amount 2826799768710487603
  LIQUIDATE: rETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2826799768710487603
  LIQUIDATE: rETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2826799768710487603
  FLASH LOAN: rETH, Amount: 2826799768710487603
  FLASH LOAN: rETH, Amount: 2826799768710487603
  E2E: Collateral DAI, TestAsset USDC
  SUPPLY: DAI, Amount: 100024072793599235528014
  SUPPLY: USDC, Amount: 10000500025
  WITHDRAW: USDC, Amount: 5000250012
  WITHDRAW: USDC, Amount: 5000250014
  BORROW: USDC, Amount 10000500025
  REPAY: USDC, Amount: 10000500025
  REPAY: USDC, Amount: 10000500025
  BORROW: USDC, Amount 10000500025
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000500025
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000500025
  FLASH LOAN: USDC, Amount: 10000500025
  FLASH LOAN: USDC, Amount: 10000500025

Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 91.22s (88.99s CPU time)

Ran 1 test for tests/ProtocolV3TestBase.t.sol:ProtocolV3TestFantomSnapshot
[PASS] test_snapshotState() (gas: 2773878)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 29.02s (28.50s CPU time)

Ran 1 test for tests/ProtocolV3TestBase.t.sol:ProtocolV3TestBaseTest
[PASS] test_e2eTestDPI() (gas: 4019168)
Logs:
  E2E: Collateral WMATIC, TestAsset DPI
  SUPPLY: WMATIC, Amount: 184940190804644255059524
  SUPPLY: DPI, Amount: 161863398638173625995
  WITHDRAW: DPI, Amount: 80931699319086812997
  WITHDRAW: DPI, Amount: 80931699319086812998
  BORROW: DPI, Amount 161863398638173625995
  REPAY: DPI, Amount: 161863398638173625995
  REPAY: DPI, Amount: 161863398638173625995
  BORROW: DPI, Amount 161863398638173625995
  LIQUIDATE: DPI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 161863398638173625995
  LIQUIDATE: DPI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 161863398638173625995
  FLASH LOAN: DPI, Amount: 161863398638173625995
  FLASH LOAN: DPI, Amount: 161863398638173625995

Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 35.21s (34.74s CPU time)

Ran 10 tests for tests/GovV3Test.t.sol:GovernanceV3Test
[PASS] test_executePayloadViaAddress() (gas: 76662)
[PASS] test_executePayloadViaId() (gas: 943418)
[PASS] test_expectRevertOnNonExistingPayload() (gas: 4283)
[PASS] test_findPayload() (gas: 680183)
[PASS] test_helpers() (gas: 269178030)
Logs:
  0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
  0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0
  0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599
  0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
  0x6B175474E89094C44Da98b954EedeAC495271d0F
  0x514910771AF9Ca656af840dff83E8264EcF986CA
  0xBe9895146f7AF43049ca1c1AE358B0541Ea49704
  0xdAC17F958D2ee523a2206206994597C13D831ec7
  0xae78736Cd615f374D3085123A210448E74Fc6393
  0x5f98805A4E8be255a32880FDeC7F6728C6568bA0
  0xD533a949740bb3306d119CC777fa900bA034cd52
  0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2
  0xC011a73ee8576Fb46F5E1c5751cA3B9Fe0af2a6F
  0xba100000625a3754423978a60c9317c58a424e3D
  0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984
  0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32
  0xC18360217D8F7Ab5e7c516566761Ea12Ce7F9D72
  0x111111111117dC0aa78b770fA6A738034120C302
  0x853d955aCEf822Db058eb8505911ED77F175b99e
  0xD33526068D116cE69F19A9ee46F0bd304F21A51f
  0xAf5191B0De278C7286d6C7CC6ab6BB8A73bA2Cd6
  0xdeFA4e8a7bcBA345F687a2f1456F5Edd9CE97202
  0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0
  0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E
  0x6c3ea9036406852006290770BEdFcAbA0e23A0e8
  0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee
  0xf1C9acDc66974dFB6dEcB12aA385b9cD01190E38
  0x4c9EDD5852cd905f086C759E8383e09bff1E68B3
  0xA35b1B31Ce002FBF2058D22F30f95D405200A15b
  0x18084fbA666a33d37592fA2633fD49a74DD93a88
  0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf
  0xdC035D45d973E3EC169d2276DDab16f1e407384F
  0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7
  E2E: Collateral WETH, TestAsset WETH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: WETH, Amount: 2910112530021030059
  WITHDRAW: WETH, Amount: 1455056265010515029
  WITHDRAW: WETH, Amount: 1455056265010515030
  BORROW: WETH, Amount 2910112530021030059
  REPAY: WETH, Amount: 2910112530021030059
  REPAY: WETH, Amount: 2910112530021030059
  BORROW: WETH, Amount 2910112530021030059
  LIQUIDATE: WETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2910112530021030059
  LIQUIDATE: WETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2910112530021030059
  FLASH LOAN: WETH, Amount: 2910112530021030059
  FLASH LOAN: WETH, Amount: 2910112530021030059
  E2E: Collateral WETH, TestAsset wstETH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: wstETH, Amount: 2446670399689018926
  WITHDRAW: wstETH, Amount: 1223335199844509463
  WITHDRAW: wstETH, Amount: 1223335199844509464
  BORROW: wstETH, Amount 2446670399689018926
  REPAY: wstETH, Amount: 2446670399689018926
  REPAY: wstETH, Amount: 2446670399689018926
  BORROW: wstETH, Amount 2446670399689018926
  LIQUIDATE: wstETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2446670399689018926
  LIQUIDATE: wstETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2446670399689018926
  FLASH LOAN: wstETH, Amount: 2446670399689018926
  FLASH LOAN: wstETH, Amount: 2446670399689018926
  E2E: Collateral WETH, TestAsset WBTC
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: WBTC, Amount: 10440337
  WITHDRAW: WBTC, Amount: 5220168
  WITHDRAW: WBTC, Amount: 5220170
  BORROW: WBTC, Amount 10440337
  REPAY: WBTC, Amount: 10440337
  REPAY: WBTC, Amount: 10440337
  BORROW: WBTC, Amount 10440337
  LIQUIDATE: WBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10440337
  LIQUIDATE: WBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10440337
  FLASH LOAN: WBTC, Amount: 10440337
  FLASH LOAN: WBTC, Amount: 10440337
  E2E: Collateral WETH, TestAsset USDC
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: USDC, Amount: 9999942900
  WITHDRAW: USDC, Amount: 4999971450
  WITHDRAW: USDC, Amount: 4999971451
  BORROW: USDC, Amount 9999942900
  REPAY: USDC, Amount: 9999942900
  REPAY: USDC, Amount: 9999942900
  BORROW: USDC, Amount 9999942900
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999942900
  LIQUIDATE: USDC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999942900
  FLASH LOAN: USDC, Amount: 9999942900
  FLASH LOAN: USDC, Amount: 9999942900
  E2E: Collateral WETH, TestAsset DAI
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: DAI, Amount: 9999156871092629469483
  WITHDRAW: DAI, Amount: 4999578435546314734741
  WITHDRAW: DAI, Amount: 4999578435546314734743
  BORROW: DAI, Amount 9999156871092629469483
  REPAY: DAI, Amount: 9999156871092629469483
  REPAY: DAI, Amount: 9999156871092629469483
  BORROW: DAI, Amount 9999156871092629469483
  LIQUIDATE: DAI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999156871092629469483
  LIQUIDATE: DAI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999156871092629469483
  FLASH LOAN: DAI, Amount: 9999156871092629469483
  FLASH LOAN: DAI, Amount: 9999156871092629469483
  E2E: Collateral WETH, TestAsset LINK
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: LINK, Amount: 453532661893677745758
  WITHDRAW: LINK, Amount: 226766330946838872879
  WITHDRAW: LINK, Amount: 226766330946838872878
  BORROW: LINK, Amount 453532661893677745758
  REPAY: LINK, Amount: 453532661893677745758
  REPAY: LINK, Amount: 453532661893677745758
  BORROW: LINK, Amount 453532661893677745758
  LIQUIDATE: LINK, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 453532661893677745758
  LIQUIDATE: LINK, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 453532661893677745758
  FLASH LOAN: LINK, Amount: 453532661893677745758
  FLASH LOAN: LINK, Amount: 453532661893677745758
  E2E: Collateral WETH, TestAsset AAVE
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: AAVE, Amount: 30143258738745976444
  WITHDRAW: AAVE, Amount: 15071629369372988222
  WITHDRAW: AAVE, Amount: 15071629369372988222
  E2E: Collateral WETH, TestAsset cbETH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: cbETH, Amount: 2670576769959319231
  WITHDRAW: cbETH, Amount: 1335288384979659615
  WITHDRAW: cbETH, Amount: 1335288384979659615
  BORROW: cbETH, Amount 2670576769959319231
  REPAY: cbETH, Amount: 2670576769959319231
  REPAY: cbETH, Amount: 2670576769959319231
  BORROW: cbETH, Amount 2670576769959319231
  LIQUIDATE: cbETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2670576769959319231
  LIQUIDATE: cbETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2670576769959319231
  FLASH LOAN: cbETH, Amount: 2670576769959319231
  FLASH LOAN: cbETH, Amount: 2670576769959319231
  E2E: Collateral WETH, TestAsset USDT
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: USDT, Amount: 10018002550
  WITHDRAW: USDT, Amount: 5009001275
  WITHDRAW: USDT, Amount: 5009001276
  BORROW: USDT, Amount 10018002550
  REPAY: USDT, Amount: 10018002550
  REPAY: USDT, Amount: 10018002550
  BORROW: USDT, Amount 10018002550
  LIQUIDATE: USDT, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10018002550
  LIQUIDATE: USDT, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10018002550
  FLASH LOAN: USDT, Amount: 10018002550
  FLASH LOAN: USDT, Amount: 10018002550
  E2E: Collateral WETH, TestAsset rETH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: rETH, Amount: 2586759623984274473
  WITHDRAW: rETH, Amount: 1293379811992137236
  WITHDRAW: rETH, Amount: 1293379811992137238
  BORROW: rETH, Amount 2586759623984274473
  REPAY: rETH, Amount: 2586759623984274473
  REPAY: rETH, Amount: 2586759623984274473
  BORROW: rETH, Amount 2586759623984274473
  LIQUIDATE: rETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2586759623984274473
  LIQUIDATE: rETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2586759623984274473
  FLASH LOAN: rETH, Amount: 2586759623984274473
  FLASH LOAN: rETH, Amount: 2586759623984274473
  E2E: Collateral WETH, TestAsset LUSD
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: LUSD, Amount: 10006885437663092844293
  WITHDRAW: LUSD, Amount: 5003442718831546422146
  WITHDRAW: LUSD, Amount: 5003442718831546422147
  BORROW: LUSD, Amount 10006885437663092844293
  REPAY: LUSD, Amount: 10006885437663092844293
  REPAY: LUSD, Amount: 10006885437663092844293
  BORROW: LUSD, Amount 10006885437663092844293
  LIQUIDATE: LUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10006885437663092844293
  LIQUIDATE: LUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10006885437663092844293
  FLASH LOAN: LUSD, Amount: 10006885437663092844293
  FLASH LOAN: LUSD, Amount: 10006885437663092844293
  E2E: Collateral WETH, TestAsset CRV
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: CRV, Amount: 9783003205890150570202
  WITHDRAW: CRV, Amount: 4891501602945075285101
  WITHDRAW: CRV, Amount: 4891501602945075285102
  BORROW: CRV, Amount 9783003205890150570202
  REPAY: CRV, Amount: 9783003205890150570202
  REPAY: CRV, Amount: 9783003205890150570202
  BORROW: CRV, Amount 9783003205890150570202
  LIQUIDATE: CRV, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9783003205890150570202
  LIQUIDATE: CRV, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9783003205890150570202
  FLASH LOAN: CRV, Amount: 9783003205890150570202
  FLASH LOAN: CRV, Amount: 9783003205890150570202
  E2E: Collateral WETH, TestAsset MKR
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: MKR, Amount: 6517226871738596376
  WITHDRAW: MKR, Amount: 3258613435869298188
  WITHDRAW: MKR, Amount: 3258613435869298187
  BORROW: MKR, Amount 6517226871738596376
  REPAY: MKR, Amount: 6517226871738596376
  REPAY: MKR, Amount: 6517226871738596376
  BORROW: MKR, Amount 6517226871738596376
  LIQUIDATE: MKR, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 6517226871738596376
  LIQUIDATE: MKR, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 6517226871738596376
  FLASH LOAN: MKR, Amount: 6517226871738596376
  FLASH LOAN: MKR, Amount: 6517226871738596376
  E2E: Collateral WETH, TestAsset SNX
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: SNX, Amount: 4789662750601681026977
  WITHDRAW: SNX, Amount: 2394831375300840513488
  WITHDRAW: SNX, Amount: 2394831375300840513490
  BORROW: SNX, Amount 4789662750601681026977
  REPAY: SNX, Amount: 4789662750601681026977
  REPAY: SNX, Amount: 4789662750601681026977
  BORROW: SNX, Amount 4789662750601681026977
  LIQUIDATE: SNX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 4789662750601681026977
  LIQUIDATE: SNX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 4789662750601681026977
  FLASH LOAN: SNX, Amount: 4789662750601681026977
  FLASH LOAN: SNX, Amount: 4789662750601681026977
  E2E: Collateral WETH, TestAsset BAL
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: BAL, Amount: 3817157688654525585892
  WITHDRAW: BAL, Amount: 1908578844327262792946
  WITHDRAW: BAL, Amount: 1908578844327262792946
  BORROW: BAL, Amount 3817157688654525585892
  REPAY: BAL, Amount: 3817157688654525585892
  REPAY: BAL, Amount: 3817157688654525585892
  BORROW: BAL, Amount 3817157688654525585892
  LIQUIDATE: BAL, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 3817157688654525585892
  LIQUIDATE: BAL, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 3817157688654525585892
  FLASH LOAN: BAL, Amount: 3817157688654525585892
  FLASH LOAN: BAL, Amount: 3817157688654525585892
  E2E: Collateral WETH, TestAsset UNI
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: UNI, Amount: 704846063381872557488
  WITHDRAW: UNI, Amount: 352423031690936278744
  WITHDRAW: UNI, Amount: 352423031690936278743
  BORROW: UNI, Amount 704846063381872557488
  REPAY: UNI, Amount: 704846063381872557488
  REPAY: UNI, Amount: 704846063381872557488
  BORROW: UNI, Amount 704846063381872557488
  LIQUIDATE: UNI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 704846063381872557488
  LIQUIDATE: UNI, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 704846063381872557488
  FLASH LOAN: UNI, Amount: 704846063381872557488
  FLASH LOAN: UNI, Amount: 704846063381872557488
  E2E: Collateral WETH, TestAsset LDO
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: LDO, Amount: 5355195784458424980368
  WITHDRAW: LDO, Amount: 2677597892229212490184
  WITHDRAW: LDO, Amount: 2677597892229212490185
  BORROW: LDO, Amount 5355195784458424980368
  REPAY: LDO, Amount: 5355195784458424980368
  REPAY: LDO, Amount: 5355195784458424980368
  BORROW: LDO, Amount 5355195784458424980368
  LIQUIDATE: LDO, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 5355195784458424980368
  LIQUIDATE: LDO, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 5355195784458424980368
  FLASH LOAN: LDO, Amount: 5355195784458424980368
  FLASH LOAN: LDO, Amount: 5355195784458424980368
  E2E: Collateral WETH, TestAsset ENS
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: ENS, Amount: 284204502077833324916
  WITHDRAW: ENS, Amount: 142102251038916662458
  WITHDRAW: ENS, Amount: 142102251038916662459
  BORROW: ENS, Amount 284204502077833324916
  REPAY: ENS, Amount: 284204502077833324916
  REPAY: ENS, Amount: 284204502077833324916
  BORROW: ENS, Amount 284204502077833324916
  LIQUIDATE: ENS, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 284204502077833324916
  LIQUIDATE: ENS, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 284204502077833324916
  FLASH LOAN: ENS, Amount: 284204502077833324916
  FLASH LOAN: ENS, Amount: 284204502077833324916
  E2E: Collateral WETH, TestAsset 1INCH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: 1INCH, Amount: 24795437639474336722043
  WITHDRAW: 1INCH, Amount: 12397718819737168361021
  WITHDRAW: 1INCH, Amount: 12397718819737168361022
  BORROW: 1INCH, Amount 24795437639474336722043
  REPAY: 1INCH, Amount: 24795437639474336722043
  REPAY: 1INCH, Amount: 24795437639474336722043
  BORROW: 1INCH, Amount 24795437639474336722043
  LIQUIDATE: 1INCH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 24795437639474336722043
  LIQUIDATE: 1INCH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 24795437639474336722043
  FLASH LOAN: 1INCH, Amount: 24795437639474336722043
  FLASH LOAN: 1INCH, Amount: 24795437639474336722043
  E2E: Collateral WETH, TestAsset FRAX
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: FRAX, Amount: 10052439960394994946437
  WITHDRAW: FRAX, Amount: 5026219980197497473218
  WITHDRAW: FRAX, Amount: 5026219980197497473219
  BORROW: FRAX, Amount 10052439960394994946437
  REPAY: FRAX, Amount: 10052439960394994946437
  REPAY: FRAX, Amount: 10052439960394994946437
  BORROW: FRAX, Amount 10052439960394994946437
  LIQUIDATE: FRAX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10052439960394994946437
  LIQUIDATE: FRAX, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10052439960394994946437
  FLASH LOAN: FRAX, Amount: 10052439960394994946437
  FLASH LOAN: FRAX, Amount: 10052439960394994946437
  E2E: Collateral WETH, TestAsset GHO
  SUPPLY: WETH, Amount: 29101125300210300591
  BORROW: GHO, Amount 10000000000000000000000
  REPAY: GHO, Amount: 10000000000000000000000
  BORROW: GHO, Amount 10000000000000000000000
  LIQUIDATE: GHO, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000000000000000000000
  LIQUIDATE: GHO, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10000000000000000000000
  E2E: Collateral WETH, TestAsset RPL
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: RPL, Amount: 839974236142234198164
  WITHDRAW: RPL, Amount: 419987118071117099082
  WITHDRAW: RPL, Amount: 419987118071117099081
  BORROW: RPL, Amount 839974236142234198164
  REPAY: RPL, Amount: 839974236142234198164
  REPAY: RPL, Amount: 839974236142234198164
  BORROW: RPL, Amount 839974236142234198164
  LIQUIDATE: RPL, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 839974236142234198164
  LIQUIDATE: RPL, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 839974236142234198164
  FLASH LOAN: RPL, Amount: 839974236142234198164
  FLASH LOAN: RPL, Amount: 839974236142234198164
  E2E: Collateral WETH, TestAsset sDAI
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: sDAI, Amount: 8833356208781462007726
  WITHDRAW: sDAI, Amount: 4416678104390731003863
  WITHDRAW: sDAI, Amount: 4416678104390731003863
  FLASH LOAN: sDAI, Amount: 8833356208781462007726
  E2E: TestAsset STG SKIPPED
  E2E: TestAsset KNC SKIPPED
  E2E: TestAsset FXS SKIPPED
  E2E: Collateral WETH, TestAsset crvUSD
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: crvUSD, Amount: 10006126150674488949114
  WITHDRAW: crvUSD, Amount: 5003063075337244474557
  WITHDRAW: crvUSD, Amount: 5003063075337244474558
  BORROW: crvUSD, Amount 10006126150674488949114
  REPAY: crvUSD, Amount: 10006126150674488949114
  REPAY: crvUSD, Amount: 10006126150674488949114
  BORROW: crvUSD, Amount 10006126150674488949114
  LIQUIDATE: crvUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10006126150674488949114
  LIQUIDATE: crvUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10006126150674488949114
  FLASH LOAN: crvUSD, Amount: 10006126150674488949114
  FLASH LOAN: crvUSD, Amount: 10006126150674488949114
  E2E: Collateral WETH, TestAsset PYUSD
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: PYUSD, Amount: 10005002501
  WITHDRAW: PYUSD, Amount: 5002501250
  WITHDRAW: PYUSD, Amount: 5002501252
  BORROW: PYUSD, Amount 10005002501
  REPAY: PYUSD, Amount: 10005002501
  REPAY: PYUSD, Amount: 10005002501
  BORROW: PYUSD, Amount 10005002501
  LIQUIDATE: PYUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10005002501
  LIQUIDATE: PYUSD, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10005002501
  FLASH LOAN: PYUSD, Amount: 10005002501
  FLASH LOAN: PYUSD, Amount: 10005002501
  E2E: Collateral WETH, TestAsset weETH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: weETH, Amount: 2754091659965537895
  WITHDRAW: weETH, Amount: 1377045829982768947
  WITHDRAW: weETH, Amount: 1377045829982768947
  BORROW: weETH, Amount 2754091659965537895
  REPAY: weETH, Amount: 2754091659965537895
  REPAY: weETH, Amount: 2754091659965537895
  BORROW: weETH, Amount 2754091659965537895
  LIQUIDATE: weETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2754091659965537895
  LIQUIDATE: weETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2754091659965537895
  FLASH LOAN: weETH, Amount: 2754091659965537895
  FLASH LOAN: weETH, Amount: 2754091659965537895
  E2E: Collateral WETH, TestAsset osETH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: osETH, Amount: 2810821105896792877
  WITHDRAW: osETH, Amount: 1405410552948396438
  WITHDRAW: osETH, Amount: 1405410552948396439
  BORROW: osETH, Amount 2810821105896792877
  REPAY: osETH, Amount: 2810821105896792877
  REPAY: osETH, Amount: 2810821105896792877
  BORROW: osETH, Amount 2810821105896792877
  LIQUIDATE: osETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2810821105896792877
  LIQUIDATE: osETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2810821105896792877
  FLASH LOAN: osETH, Amount: 2810821105896792877
  FLASH LOAN: osETH, Amount: 2810821105896792877
  E2E: Collateral WETH, TestAsset USDe
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: USDe, Amount: 10027491169239764353155
  WITHDRAW: USDe, Amount: 5013745584619882176577
  WITHDRAW: USDe, Amount: 5013745584619882176577
  BORROW: USDe, Amount 10027491169239764353155
  REPAY: USDe, Amount: 10027491169239764353155
  REPAY: USDe, Amount: 10027491169239764353155
  BORROW: USDe, Amount 10027491169239764353155
  LIQUIDATE: USDe, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10027491169239764353155
  LIQUIDATE: USDe, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10027491169239764353155
  FLASH LOAN: USDe, Amount: 10027491169239764353155
  FLASH LOAN: USDe, Amount: 10027491169239764353155
  E2E: Collateral WETH, TestAsset ETHx
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: ETHx, Amount: 2774297120982029909
  WITHDRAW: ETHx, Amount: 1387148560491014954
  WITHDRAW: ETHx, Amount: 1387148560491014954
  BORROW: ETHx, Amount 2774297120982029909
  REPAY: ETHx, Amount: 2774297120982029909
  REPAY: ETHx, Amount: 2774297120982029909
  BORROW: ETHx, Amount 2774297120982029909
  LIQUIDATE: ETHx, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2774297120982029909
  LIQUIDATE: ETHx, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2774297120982029909
  FLASH LOAN: ETHx, Amount: 2774297120982029909
  FLASH LOAN: ETHx, Amount: 2774297120982029909
  E2E: Collateral WETH, TestAsset sUSDe
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: sUSDe, Amount: 8767391545832284534119
  WITHDRAW: sUSDe, Amount: 4383695772916142267059
  WITHDRAW: sUSDe, Amount: 4383695772916142267061
  FLASH LOAN: sUSDe, Amount: 8767391545832284534119
  E2E: Collateral WETH, TestAsset tBTC
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: tBTC, Amount: 104185183599550085
  WITHDRAW: tBTC, Amount: 52092591799775042
  WITHDRAW: tBTC, Amount: 52092591799775042
  BORROW: tBTC, Amount 104185183599550085
  REPAY: tBTC, Amount: 104185183599550085
  REPAY: tBTC, Amount: 104185183599550085
  BORROW: tBTC, Amount 104185183599550085
  LIQUIDATE: tBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 104185183599550085
  LIQUIDATE: tBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 104185183599550085
  FLASH LOAN: tBTC, Amount: 104185183599550085
  FLASH LOAN: tBTC, Amount: 104185183599550085
  E2E: Collateral WETH, TestAsset cbBTC
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: cbBTC, Amount: 10418518
  WITHDRAW: cbBTC, Amount: 5209259
  WITHDRAW: cbBTC, Amount: 5209258
  BORROW: cbBTC, Amount 10418518
  REPAY: cbBTC, Amount: 10418518
  REPAY: cbBTC, Amount: 10418518
  BORROW: cbBTC, Amount 10418518
  LIQUIDATE: cbBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10418518
  LIQUIDATE: cbBTC, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 10418518
  FLASH LOAN: cbBTC, Amount: 10418518
  FLASH LOAN: cbBTC, Amount: 10418518
  E2E: Collateral WETH, TestAsset USDS
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: USDS, Amount: 9999156871092629469483
  WITHDRAW: USDS, Amount: 4999578435546314734741
  WITHDRAW: USDS, Amount: 4999578435546314734741
  BORROW: USDS, Amount 9999156871092629469483
  REPAY: USDS, Amount: 9999156871092629469483
  REPAY: USDS, Amount: 9999156871092629469483
  BORROW: USDS, Amount 9999156871092629469483
  LIQUIDATE: USDS, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999156871092629469483
  LIQUIDATE: USDS, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 9999156871092629469483
  FLASH LOAN: USDS, Amount: 9999156871092629469483
  FLASH LOAN: USDS, Amount: 9999156871092629469483
  E2E: Collateral WETH, TestAsset rsETH
  SUPPLY: WETH, Amount: 29101125300210300591
  SUPPLY: rsETH, Amount: 2816100381540179396
  WITHDRAW: rsETH, Amount: 1408050190770089698
  WITHDRAW: rsETH, Amount: 1408050190770089697
  BORROW: rsETH, Amount 2816100381540179396
  REPAY: rsETH, Amount: 2816100381540179396
  REPAY: rsETH, Amount: 2816100381540179396
  BORROW: rsETH, Amount 2816100381540179396
  LIQUIDATE: rsETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2816100381540179396
  LIQUIDATE: rsETH, Amount: 115792089237316195423570985008687907853269984665640564039457584007913129639935, Debt Amount: 2816100381540179396
  FLASH LOAN: rsETH, Amount: 2816100381540179396
  FLASH LOAN: rsETH, Amount: 2816100381540179396

[PASS] test_injectPayloadIntoPayloadsController() (gas: 67016)
[PASS] test_injectProposalIntoGovernance() (gas: 107003)
[PASS] test_payloadCreation() (gas: 1297671)
Logs:
  https://vote.onaave.com/proposal-create-overview?ipfsHash=0x6861736800000000000000000000000000000000000000000000000000000000&votingPortal=0x9b24C168d6A76b5459B1d47071a54962a4df36c3&payload[0].chainId=1&payload[0].accessLevel=1&payload[0].payloadsController=0xdAbad81aF85554E9ae636395611C58F7eC1aAEc5&payload[0].payloadId=229
  0x3bec1bfc00000000000000000000000000000000000000000000000000000000000000600000000000000000000000009b24c168d6a76b5459b1d47071a54962a4df36c36861736800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000001000000000000000000000000dabad81af85554e9ae636395611c58f7ec1aaec500000000000000000000000000000000000000000000000000000000000000e5

[PASS] test_payloadCreationWhenPayloadAlreadyCreated() (gas: 1019069)
[PASS] test_readyPayloadId() (gas: 839217)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 175.59s (175.14s CPU time)

Ran 1 test for tests/PreviewLink.t.sol:PreviewLink
[PASS] testPreviewLink() (gas: 30010)
Logs:
  https://vote.onaave.com/proposal-create-overview?ipfsHash=0x12f2d9c91e4e23ae4009

@sakulstra
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔮 Coverage report
File Line Coverage Function Coverage Branch Coverage
src/CommonTestBase.sol ${\color{orange}87.5\%}$
$49 / 56$
105, 106, 107, 108, 114 and 2 more
${\color{green}100\%}$
$3 / 3$
${\color{orange}82.35\%}$
$14 / 17$
src/ProtocolV2TestBase.sol ${\color{red}69.44\%}$
$259 / 373$
60, 65, 68, 84, 94 and 109 more
${\color{red}48.57\%}$
$17 / 35$
ProtocolV2TestBase.defaultTest, ProtocolV2TestBase.defaultTest, ProtocolV2TestBase.createConfigurationSnapshot, ProtocolV2TestBase.e2eTest, ProtocolV2TestBase.e2eTestAsset and 13 more
${\color{red}24.14\%}$
$28 / 116$
src/ProtocolV3TestBase.sol ${\color{orange}84.26\%}$
$257 / 305$
55, 63, 94, 107, 108 and 43 more
${\color{red}65\%}$
$13 / 20$
ProtocolV3TestBase.defaultTest, ProtocolV3TestBase.defaultTest, ProtocolV3TestBase.configChangePlausibilityTest, ProtocolV3TestBase.e2eTest, ProtocolV3TestBase.e2eTestAsset and 2 more
${\color{red}51.43\%}$
$36 / 70$
src/bridges/arbitrum/AaveArbEthERC20Bridge.sol ${\color{orange}84.62\%}$
$11 / 13$
112, 117
${\color{red}50\%}$
$2 / 4$
AaveArbEthERC20Bridge.whoCanRescue, AaveArbEthERC20Bridge.maxRescue
${\color{green}100\%}$
$2 / 2$
src/bridges/optimism/AaveOpEthERC20Bridge.sol ${\color{red}63.64\%}$
$7 / 11$
48, 49, 53, 58
${\color{red}25\%}$
$1 / 4$
AaveOpEthERC20Bridge.nonce, AaveOpEthERC20Bridge.whoCanRescue, AaveOpEthERC20Bridge.maxRescue
${\color{green}100\%}$
$1 / 1$
src/bridges/polygon/AavePolEthERC20Bridge.sol ${\color{orange}83.87\%}$
$26 / 31$
63, 73, 95, 100, 111
${\color{red}75\%}$
$6 / 8$
AavePolEthERC20Bridge.whoCanRescue, AavePolEthERC20Bridge.maxRescue
${\color{orange}85.71\%}$
$6 / 7$
src/bridges/polygon/AavePolEthPlasmaBridge.sol ${\color{red}60.87\%}$
$14 / 23$
78, 82, 83, 85, 86 and 4 more
${\color{red}42.86\%}$
$3 / 7$
AavePolEthPlasmaBridge.exit, AavePolEthPlasmaBridge.whoCanRescue, AavePolEthPlasmaBridge.maxRescue, AavePolEthPlasmaBridge.receive
${\color{red}60\%}$
$3 / 5$
src/dependencies/DefaultReserveInterestRateStrategy.sol ${\color{red}38.78\%}$
$19 / 49$
96, 97, 111, 121, 123 and 25 more
${\color{red}60\%}$
$6 / 10$
DefaultReserveInterestRateStrategy.getMaxVariableBorrowRate, DefaultReserveInterestRateStrategy.calculateInterestRates, DefaultReserveInterestRateStrategy.calculateInterestRates, DefaultReserveInterestRateStrategy._getOverallBorrowRate
${\color{red}0\%}$
$0 / 2$
src/dependencies/PercentageMath.sol ${\color{red}0\%}$
$0 / 10$
25, 26, 27, 30, 35 and 5 more
${\color{red}0\%}$
$0 / 2$
PercentageMath.percentMul, PercentageMath.percentDiv
${\color{red}0\%}$
$0 / 7$
src/dependencies/SafeMath.sol ${\color{red}22.22\%}$
$6 / 27$
28, 29, 30, 32, 73 and 16 more
${\color{red}25\%}$
$2 / 8$
SafeMath.add, SafeMath.mul, SafeMath.div, SafeMath.div, SafeMath.mod and 1 more
${\color{red}9.09\%}$
$1 / 11$
src/dependencies/WadRayMath.sol ${\color{red}5.41\%}$
$2 / 37$
33, 34, 40, 41, 47 and 30 more
${\color{red}10\%}$
$1 / 10$
WadRayMath.wad, WadRayMath.halfRay, WadRayMath.halfWad, WadRayMath.wadMul, WadRayMath.wadDiv and 4 more
${\color{red}0\%}$
$0 / 18$
src/riskstewards/CapsPlusRiskSteward.sol ${\color{green}100\%}$
$28 / 28$
${\color{green}100\%}$
$6 / 6$
${\color{orange}92.86\%}$
$13 / 14$
src/riskstewards/FreezingSteward.sol ${\color{red}0\%}$
$0 / 6$
12, 13, 14, 17, 18 and 1 more
${\color{red}0\%}$
$0 / 2$
FreezingSteward.constructor, FreezingSteward.setFreeze
${\color{red}0\%}$
$0 / 2$
src/swaps/AaveSwapper.sol ${\color{orange}94.12\%}$
$32 / 34$
132, 137
${\color{red}71.43\%}$
$5 / 7$
AaveSwapper.whoCanRescue, AaveSwapper.maxRescue
${\color{green}100\%}$
$6 / 6$
src/swaps/BaseSwapPayload.sol ${\color{red}50\%}$
$2 / 4$
29, 30
${\color{red}50\%}$
$1 / 2$
BaseSwapPayload._deposit
${\color{green}100\%}$
$0 / 0$
src/swaps/DepositV2SwapPayload.sol ${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/swaps/DepositV3SwapPayload.sol ${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/v2-config-engine/AaveV2ConfigEngine.sol ${\color{orange}83.72\%}$
$36 / 43$
47, 48, 49, 50, 56 and 2 more
${\color{green}100\%}$
$4 / 4$
${\color{red}53.85\%}$
$7 / 13$
src/v2-config-engine/AaveV2Payload.sol ${\color{orange}92.31\%}$
$12 / 13$
56
${\color{orange}83.33\%}$
$5 / 6$
AaveV2Payload.rateStrategiesUpdates
${\color{green}100\%}$
$1 / 1$
src/v2-config-engine/V2RateStrategyFactory.sol ${\color{red}75\%}$
$27 / 36$
30, 32, 34, 35, 37 and 4 more
${\color{red}62.5\%}$
$5 / 8$
V2RateStrategyFactory.strategyHashFromParams, V2RateStrategyFactory.getStrategyByParams, V2RateStrategyFactory.getStrategyData
${\color{green}100\%}$
$2 / 2$
src/v3-config-engine/AaveV3PayloadArbitrum.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadArbitrum.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadAvalanche.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadAvalanche.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadBNB.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadBNB.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadBase.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadBase.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadEthereum.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadEthereum.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadEthereumEtherFi.sol ${\color{red}0\%}$
$0 / 2$
14, 15
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadEthereumEtherFi.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadEthereumLido.sol ${\color{red}0\%}$
$0 / 2$
14, 15
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadEthereumLido.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadLinea.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadLinea.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadOptimism.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadOptimism.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadPolygon.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadPolygon.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadScroll.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadScroll.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadSonic.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadSonic.getPoolContext
${\color{green}100\%}$
$0 / 0$
src/v3-config-engine/AaveV3PayloadZkSync.sol ${\color{red}0\%}$
$0 / 2$
12, 13
${\color{red}0\%}$
$0 / 1$
AaveV3PayloadZkSync.getPoolContext
${\color{green}100\%}$
$0 / 0$

@sakulstra
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🌈 Test Results zksync
Compiling 108 files with Solc 0.8.24
Solc 0.8.24 finished in 5.60s
Compiler run successful!

Compiling 108 files with zksolc and solc 0.8.24
zksolc and solc 0.8.24 finished in 70.88s
Compiler run successful with warnings:
Warning
Warning: You are using 'create'/'create2' in an assembly block, probably by providing bytecode and expecting an EVM-like behavior.
EraVM does not use bytecode for contract deployment. Instead, it refers to contracts using their bytecode hashes.
In order to deploy a contract, please use the `new` operator in Solidity instead of raw 'create'/'create2' in assembly.
In Solidity v0.6 and older, it can be a false-positive warning if there is 'create(' or 'create2(' in comments within assembly.
Learn more about CREATE/CREATE2 EraVM limitations at https: //docs.zksync.io/zksync-protocol/differences/evm-instructions#create-create2

You may disable this warning with:
    1. `suppressedWarnings = ["assemblycreate"]` in standard JSON.
    2. `--suppress-warnings assemblycreate` in the CLI.
    --> lib/forge-std/src/StdCheats.sol: 506:19
     |
 506 |             addr := create(0, add(bytecode, 0x20), mload(bytecode))
     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning
Warning: You are using 'create'/'create2' in an assembly block, probably by providing bytecode and expecting an EVM-like behavior.
EraVM does not use bytecode for contract deployment. Instead, it refers to contracts using their bytecode hashes.
In order to deploy a contract, please use the `new` operator in Solidity instead of raw 'create'/'create2' in assembly.
In Solidity v0.6 and older, it can be a false-positive warning if there is 'create(' or 'create2(' in comments within assembly.
Learn more about CREATE/CREATE2 EraVM limitations at https: //docs.zksync.io/zksync-protocol/differences/evm-instructions#create-create2

You may disable this warning with:
    1. `suppressedWarnings = ["assemblycreate"]` in standard JSON.
    2. `--suppress-warnings assemblycreate` in the CLI.
    --> lib/forge-std/src/StdCheats.sol: 516:19
     |
 516 |             addr := create(0, add(bytecode, 0x20), mload(bytecode))
     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning
Warning: You are using 'create'/'create2' in an assembly block, probably by providing bytecode and expecting an EVM-like behavior.
EraVM does not use bytecode for contract deployment. Instead, it refers to contracts using their bytecode hashes.
In order to deploy a contract, please use the `new` operator in Solidity instead of raw 'create'/'create2' in assembly.
In Solidity v0.6 and older, it can be a false-positive warning if there is 'create(' or 'create2(' in comments within assembly.
Learn more about CREATE/CREATE2 EraVM limitations at https: //docs.zksync.io/zksync-protocol/differences/evm-instructions#create-create2

You may disable this warning with:
    1. `suppressedWarnings = ["assemblycreate"]` in standard JSON.
    2. `--suppress-warnings assemblycreate` in the CLI.
    --> lib/forge-std/src/StdCheats.sol: 527:19
     |
 527 |             addr := create(val, add(bytecode, 0x20), mload(bytecode))
     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning
Warning: You are using 'create'/'create2' in an assembly block, probably by providing bytecode and expecting an EVM-like behavior.
EraVM does not use bytecode for contract deployment. Instead, it refers to contracts using their bytecode hashes.
In order to deploy a contract, please use the `new` operator in Solidity instead of raw 'create'/'create2' in assembly.
In Solidity v0.6 and older, it can be a false-positive warning if there is 'create(' or 'create2(' in comments within assembly.
Learn more about CREATE/CREATE2 EraVM limitations at https: //docs.zksync.io/zksync-protocol/differences/evm-instructions#create-create2

You may disable this warning with:
    1. `suppressedWarnings = ["assemblycreate"]` in standard JSON.
    2. `--suppress-warnings assemblycreate` in the CLI.
    --> lib/forge-std/src/StdCheats.sol: 537:19
     |
 537 |             addr := create(val, add(bytecode, 0x20), mload(bytecode))
     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

2025-02-25T15:49:53.463616Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:49:53.690798Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:15.733209Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:44.911243Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:45.425189Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:46.098293Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:47.772115Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:48.745902Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:50.796170Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:51.810224Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:53.767023Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:55.710533Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:58.258310Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:50:59.774532Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:00.827850Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:03.777681Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:04.415704Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:04.924951Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:06.657918Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:07.701631Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:10.270248Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:11.426880Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:13.484961Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:15.720517Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:18.329342Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:21.003049Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:22.118989Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:24.629083Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:25.168770Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:25.752408Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:27.422146Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:28.525143Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:30.488696Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:31.523035Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:33.400171Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:35.355605Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:37.906843Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:39.842602Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:40.865761Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:43.548033Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:44.120956Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:44.687663Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:46.314392Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:47.286045Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:49.257929Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:50.312612Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:52.229070Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:54.106761Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:56.611023Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:58.535603Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:51:59.610069Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:02.194729Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:02.721750Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:03.272226Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:05.074218Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:06.165040Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:08.306503Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:09.581896Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:11.625453Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:13.701274Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:16.255621Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:18.401219Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2
2025-02-25T15:52:19.396737Z ERROR foundry_zksync_core::vm::inspect: reverting initiator tx nonce for CALL address=0x1804c8ab1f12e6bbf3894d4083f33e07309d1f38 from=3 to=2 deploy_nonce=2

Ran 1 test for zksync/tests/ProtocolV3TestBase.t.sol:ProtocolV3TestBaseTest
[PASS] test_helpers() (gas: 86657926)
Logs:
  0x1d17CBcF0D6D143135aE902365D2E5e2A16538D4
  0x493257fD37EDB34451f62EDf8D2a0C418852bA4C
  0x5AEa5775959fBC2557Cc8789bC1bf90A239D9a91
  0x703b52F2b28fEbcB60E1372858AF5b18849FE867
  0x5A7d6b2F92C77FAD6CCaBd7EE0624E64907Eaf3E
  E2E: Collateral USDC, TestAsset USDC
  SUPPLY: USDC, Amount: 100021569651
  SUPPLY: USDC, Amount: 1000215696
  WITHDRAW: USDC, Amount: 500107848
  WITHDRAW: USDC, Amount: 500107848
  BORROW: USDC, Amount 1000215696
  REPAY: USDC, Amount: 1000215696
  E2E: Collateral USDC, TestAsset USDT
  SUPPLY: USDC, Amount: 100021569651
  SUPPLY: USDT, Amount: 999072570
  WITHDRAW: USDT, Amount: 499536285
  WITHDRAW: USDT, Amount: 499536284
  BORROW: USDT, Amount 999072570
  REPAY: USDT, Amount: 999072570
  E2E: Collateral USDC, TestAsset WETH
  SUPPLY: USDC, Amount: 100021569651
  SUPPLY: WETH, Amount: 247815794951065425
  WITHDRAW: WETH, Amount: 123907897475532712
  WITHDRAW: WETH, Amount: 123907897475532714
  BORROW: WETH, Amount 247815794951065425
  REPAY: WETH, Amount: 247815794951065425
  E2E: Collateral USDC, TestAsset wstETH
  SUPPLY: USDC, Amount: 100021569651
  SUPPLY: wstETH, Amount: 208779402016001902
  WITHDRAW: wstETH, Amount: 104389701008000951
  WITHDRAW: wstETH, Amount: 104389701008000952
  BORROW: wstETH, Amount 208779402016001902
  REPAY: wstETH, Amount: 208779402016001902
  E2E: Collateral USDC, TestAsset ZK
  SUPPLY: USDC, Amount: 100021569651
  SUPPLY: ZK, Amount: 3854761082871773878172
  WITHDRAW: ZK, Amount: 1927380541435886939086
  WITHDRAW: ZK, Amount: 1927380541435886939085
  BORROW: ZK, Amount 3854761082871773878172
  REPAY: ZK, Amount: 3854761082871773878172

Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 146.45s (145.87s CPU time)

Ran 1 test suite in 146.46s (146.45s CPU time): 1 tests passed, 0 failed, 0 skipped (1 total tests)

Please sign in to comment.