Skip to content

Commit

Permalink
AIP: Events and Sponsorships Grant 2024 (#384)
Browse files Browse the repository at this point in the history
* Add proposal for Gho Incident Report 20231113 (#1)

* chore: add payload and deploy script for update of GHO variable debt token

* forge install: gho-core

* chore: add gho-core to dependency

* test: Add tests for update of gho variable token

* test: Add tests for update of gho variable token

* fix: add modifier in method of interface

* fix: remove gho dependency from repo and fix test

* fix: Remove unnecesary dependency

* fix: Add latest details

---------

Co-authored-by: miguelmtzinf <[email protected]>

* fix: Make new impl constant (#3)

* fix: Amend AIP text (#4)

* fix: Make new impl constant

* fix: Fix AIP text

* test: Tweak default tests with borrow cap update (#5)

* fix: lint issue (#6)

* test: Add diffs from test running (#7)

* fix: Add payload address (#8)

* fix: Fix payload address in script (#9)

* fix: Remove unneeded diff file (#10)

* initial upload: proposal template and fund stream

* test: add stream withdraw test

* docs: add summary and specs of AIP

* test: add fuzz and insufficient funds tests

* test: fuzz by seconds instead of days

* fix: test changes as per pr comments

* fix: comment typo

* fix: discussion links, deal funds directly in tests

* feat: update proposal doc

* fix: doc header and formatting

* fix: replace arfc with aip

* fix: Fix typo in AIP text

Co-authored-by: sendra <[email protected]>

* feat: initial upload of template

* feat: initial upload doc

* fix: aip not arfc

* fix: Updates lib

* fix: Fix AIP text

---------

Co-authored-by: Parth Patel <[email protected]>
Co-authored-by: miguelmtzinf <[email protected]>
Co-authored-by: miguelmtz <[email protected]>
Co-authored-by: sendra <[email protected]>
  • Loading branch information
5 people authored Jul 29, 2024
1 parent 536f38d commit ba24358
Show file tree
Hide file tree
Showing 7 changed files with 201 additions and 0 deletions.
1 change: 1 addition & 0 deletions .assets/bb16bff6a87c75a25166c7a6913a3201af424a23.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
## Raw diff

```json
{}
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {IProposalGenericExecutor} from 'aave-helpers/interfaces/IProposalGenericExecutor.sol';
import {AaveV3Ethereum, AaveV3EthereumAssets} from 'aave-address-book/AaveV3Ethereum.sol';

/**
* @title Events Grant 2024
* @author Aave Labs
* - Snapshot: https://snapshot.org/#/aave.eth/proposal/0x5d4e3fba58f76f516afd0855a687027270b74163911116f14a4f5c01c34a9bd9
* - Discussion: https://governance.aave.com/t/arfc-aave-events-sponsorship-proposal-2024/18276
*/
contract AaveV3Ethereum_EventsGrant2024_20240718 is IProposalGenericExecutor {
address public constant AAVE_LABS = 0x1c037b3C22240048807cC9d7111be5d455F640bd;
uint256 public constant GHO_GRANT_AMOUNT = 650_000 ether;

function execute() external {
AaveV3Ethereum.COLLECTOR.transfer(
AaveV3EthereumAssets.GHO_UNDERLYING,
AAVE_LABS,
GHO_GRANT_AMOUNT
);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {AaveV3Ethereum, AaveV3EthereumAssets} from 'aave-address-book/AaveV3Ethereum.sol';

import 'forge-std/Test.sol';
import {ProtocolV3TestBase} from 'aave-helpers/ProtocolV3TestBase.sol';
import {AaveV3Ethereum_EventsGrant2024_20240718} from './AaveV3Ethereum_EventsGrant2024_20240718.sol';
import {IERC20} from 'solidity-utils/contracts/oz-common/interfaces/IERC20.sol';

/**
* @dev Test for AaveV3Ethereum_EventsGrant2024_20240718
* command: FOUNDRY_PROFILE=mainnet forge test --match-path=src/20240718_AaveV3Ethereum_EventsGrant2024/AaveV3Ethereum_EventsGrant2024_20240718.t.sol -vv
*/
contract AaveV3Ethereum_EventsGrant2024_20240718_Test is ProtocolV3TestBase {
AaveV3Ethereum_EventsGrant2024_20240718 internal proposal;

address public constant AAVE_LABS = 0x1c037b3C22240048807cC9d7111be5d455F640bd;
uint256 public constant GHO_GRANT_AMOUNT = 650_000 ether;

function setUp() public {
vm.createSelectFork(vm.rpcUrl('mainnet'), 20336106);
proposal = new AaveV3Ethereum_EventsGrant2024_20240718();
}

/**
* @dev executes the generic test suite including e2e and config snapshots
*/
function test_defaultProposalExecution() public {
defaultTest('AaveV3Ethereum_EventsGrant2024_20240718', AaveV3Ethereum.POOL, address(proposal));
}

function testProposalExecution() public {
uint256 ALGHOBalanceBefore = IERC20(AaveV3EthereumAssets.GHO_UNDERLYING).balanceOf(AAVE_LABS);
uint256 CollectorV3GHOBalanceBefore = IERC20(AaveV3EthereumAssets.GHO_UNDERLYING).balanceOf(
address(AaveV3Ethereum.COLLECTOR)
);

executePayload(vm, address(proposal));

assertEq(
IERC20(AaveV3EthereumAssets.GHO_UNDERLYING).balanceOf(AAVE_LABS),
ALGHOBalanceBefore + GHO_GRANT_AMOUNT
);
assertEq(
IERC20(AaveV3EthereumAssets.GHO_UNDERLYING).balanceOf(address(AaveV3Ethereum.COLLECTOR)),
CollectorV3GHOBalanceBefore - GHO_GRANT_AMOUNT
);
}
}
46 changes: 46 additions & 0 deletions src/20240718_AaveV3Ethereum_EventsGrant2024/EventsGrant2024.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
title: "Events Grant 2024"
author: "Aave Labs"
discussions: "https://governance.aave.com/t/arfc-aave-events-sponsorship-proposal-2024/18276"
snapshot: "https://snapshot.org/#/aave.eth/proposal/0x5d4e3fba58f76f516afd0855a687027270b74163911116f14a4f5c01c34a9bd9"
---

## Summary

This AIP proposes the Aave DAO budget allocation on events at key ecosystem initiatives at EthCC and Devcon to help to reinforce Aave Protocol’s unique and positive culture, share technical knowledge, and attract new community members. These initiatives are aimed at helping to continue the expansion of the DeFi ecosystem by showcasing Aave Protocol’s core values.

## Motivation

Aave Protocol has consistently been at the forefront of DeFi innovation with pioneering features. With a strong emphasis on security, usability, and composability, Aave has amassed a vibrant and engaged community of developers, users, contributors, and stakeholders.

Although the Aave Protocol has emerged as a leader within DeFi, the sector at large is still in its nascent stages, and Aave should work hard to retain its spot as a leader. For the events proposal from the DAO for 2024, Aave Labs wants to concentrate on proposing fewer but higher-quality events to maximize impact.

## Specification

Aave Labs is requesting a budget allocation for 650,000 GHO for events for the remainder of 2024 for EthCC Brussels (45%) and Devcon Bangkok (55%). This proposal will transfer 650,000 GHO from the Aave DAO treasury to a wallet controlled by Aave Labs (0x1c037b3C22240048807cC9d7111be5d455F640bd).

These initiatives will serve multiple purposes:

1. Hackathons & Bounties: We want to encourage developers to build on Aave Protocol, as well as GHO. These hackathons not only provide a platform for the Aave community to connect with talented developers in both web3 and web2, and to remain visible and competitive in a growing industry, but also lead to the creation of innovative DeFi projects that enhance the Aave ecosystem. We propose to sponsor one ETHGlobal hackathon in Q4 in Bangkok.

2. Open Finance Day: We are hosting Open Finance Day in partnership with key players in DeFi for high quality talks, networking, and light bites. Talks will include members of the DeFi community, Aave Labs, and Aave DAO community members and service providers.

3. Side Events: Hosting side events alongside major conferences is an opportunity to increase community awareness, foster connections, and share technical knowledge, and industry insights. Typically featuring panels, workshops, and discussions led by industry experts, side events are designed to strengthen awareness of Aave and GHO technology among strategic audiences, reach new target audiences, and ensure Aave and GHO remain top-of-mind within and outside the community.

4. Merch: Aave Labs seeks to create highly coveted Aave and GHO branded merchandise to distribute at events, as part of community engagement and awareness-building efforts as well as to proliferate the new visual identity and the beloved Ronnie ghost. Aave Labs will continue to push for the use of sustainable materials and creation of merchandise people actually wear, use, and love.

5. rAAVE: To celebrate the Aave community’s welcoming culture, we aim to host two more editions of the flagship rAAVE event. Throughout the past years rAAVE has positioned itself to be the most sought after event in the ecosystem. They foster community spirit and create memorable experiences. We will integrate the GHO Pass for ticketing logistics and manage press relations and social media to maximize awareness and inclusion. This year’s events will be hosted at EthCC in Brussels and Devcon in Bangkok. To mitigate some costs for rAAVE, we are planning to potentially obtain co-sponsorship with current or potentially new partners for the Aave ecosystem. Due to the event’s high visibility, it is crucial that if co-sponsorship is obtained, the selected partners are aligned with the Aave Community and this is conducted in a balanced manner.

After covering the aforementioned main sponsorships, any remaining budget will be directed towards side events related to the security of DeFi and smart contract technology. Any excess funds from this grant will be rolled over to be used for events during Q1 2025. A recap on last year’s events was posted to governance last December, here.
Aave Labs shall cover all expenses for its team members, and this proposal does not request any funds for these expenses, or include any compensation for Aave Labs’ work.

## References

- Implementation: [AaveV3Ethereum](https://github.com/bgd-labs/aave-proposals-v3/blob/main/src/20240718_AaveV3Ethereum_EventsGrant2024/AaveV3Ethereum_EventsGrant2024_20240718.sol)
- Tests: [AaveV3Ethereum](https://github.com/bgd-labs/aave-proposals-v3/blob/main/src/20240718_AaveV3Ethereum_EventsGrant2024/AaveV3Ethereum_EventsGrant2024_20240718.t.sol)
- [Snapshot](https://snapshot.org/#/aave.eth/proposal/0x5d4e3fba58f76f516afd0855a687027270b74163911116f14a4f5c01c34a9bd9)
- [Discussion](https://governance.aave.com/t/arfc-aave-events-sponsorship-proposal-2024/18276)

## Copyright

Copyright and related rights waived via [CC0](https://creativecommons.org/publicdomain/zero/1.0/).
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import {GovV3Helpers, IPayloadsControllerCore, PayloadsControllerUtils} from 'aave-helpers/GovV3Helpers.sol';
import {GovernanceV3Ethereum} from 'aave-address-book/GovernanceV3Ethereum.sol';
import {EthereumScript} from 'aave-helpers/ScriptUtils.sol';
import {AaveV3Ethereum_EventsGrant2024_20240718} from './AaveV3Ethereum_EventsGrant2024_20240718.sol';

/**
* @dev Deploy Ethereum
* deploy-command: make deploy-ledger contract=src/20240718_AaveV3Ethereum_EventsGrant2024/EventsGrant2024_20240718.s.sol:DeployEthereum chain=mainnet
* verify-command: FOUNDRY_PROFILE=mainnet npx catapulta-verify -b broadcast/EventsGrant2024_20240718.s.sol/1/run-latest.json
*/
contract DeployEthereum is EthereumScript {
function run() external broadcast {
// deploy payloads
address payload0 = GovV3Helpers.deployDeterministic(
type(AaveV3Ethereum_EventsGrant2024_20240718).creationCode
);

// compose action
IPayloadsControllerCore.ExecutionAction[]
memory actions = new IPayloadsControllerCore.ExecutionAction[](1);
actions[0] = GovV3Helpers.buildAction(payload0);

// register action at payloadsController
GovV3Helpers.createPayload(actions);
}
}

/**
* @dev Create Proposal
* command: make deploy-ledger contract=src/20240718_AaveV3Ethereum_EventsGrant2024/EventsGrant2024_20240718.s.sol:CreateProposal chain=mainnet
*/
contract CreateProposal is EthereumScript {
function run() external {
// create payloads
PayloadsControllerUtils.Payload[] memory payloads = new PayloadsControllerUtils.Payload[](1);

// compose actions for validation
IPayloadsControllerCore.ExecutionAction[]
memory actionsEthereum = new IPayloadsControllerCore.ExecutionAction[](1);
actionsEthereum[0] = GovV3Helpers.buildAction(
type(AaveV3Ethereum_EventsGrant2024_20240718).creationCode
);
payloads[0] = GovV3Helpers.buildMainnetPayload(vm, actionsEthereum);

// create proposal
vm.startBroadcast();
GovV3Helpers.createProposal(
vm,
payloads,
GovernanceV3Ethereum.VOTING_PORTAL_ETH_POL,
GovV3Helpers.ipfsHashFile(
vm,
'src/20240718_AaveV3Ethereum_EventsGrant2024/EventsGrant2024.md'
)
);
}
}
15 changes: 15 additions & 0 deletions src/20240718_AaveV3Ethereum_EventsGrant2024/config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
import {ConfigFile} from '../../generator/types';
export const config: ConfigFile = {
rootOptions: {
title: 'Events Grant 2024',
author: 'Aave Labs',
discussion: 'https://governance.aave.com/t/arfc-aave-events-sponsorship-proposal-2024/18276',
snapshot:
'https://snapshot.org/#/aave.eth/proposal/0x5d4e3fba58f76f516afd0855a687027270b74163911116f14a4f5c01c34a9bd9',
pools: ['AaveV3Ethereum'],
shortName: 'EventsGrant2024',
date: '20240718',
votingNetwork: 'POLYGON',
},
poolOptions: {AaveV3Ethereum: {configs: {OTHERS: {}}, cache: {blockNumber: 20336106}}},
};

1 comment on commit ba24358

@github-actions
Copy link

Choose a reason for hiding this comment

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

Foundry report

forge 0.2.0 (6822860 2024-07-29T00:20:30.057117769Z)
Build log
Compiling 150 files with Solc 0.8.19
Solc 0.8.19 finished in 24.44s
Compiler run successful with warnings:
Warning (2072): Unused local variable.
  --> src/20240603_Multi_MayFundingUpdate/AaveV3Arbitrum_MayFundingUpdate_20240603.t.sol:48:5:
   |
48 |     uint256 collectorUsdcBalanceBefore = IERC20(AaveV3ArbitrumAssets.USDC_UNDERLYING).balanceOf(
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
  --> src/20240603_Multi_MayFundingUpdate/AaveV3Arbitrum_MayFundingUpdate_20240603.t.sol:51:5:
   |
51 |     uint256 collectorAusdcBalanceBefore = IERC20(AaveV3ArbitrumAssets.USDC_A_TOKEN).balanceOf(
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
  --> src/20240603_Multi_MayFundingUpdate/AaveV3Optimism_MayFundingUpdate_20240603.t.sol:41:5:
   |
41 |     uint256 collectorUsdcBalanceBefore = IERC20(AaveV3OptimismAssets.USDC_UNDERLYING).balanceOf(
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning (2072): Unused local variable.
  --> src/20240603_Multi_MayFundingUpdate/AaveV3Optimism_MayFundingUpdate_20240603.t.sol:44:5:
   |
44 |     uint256 collectorAusdcBalanceBefore = IERC20(AaveV3OptimismAssets.USDC_A_TOKEN).balanceOf(
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning (2018): Function state mutability can be restricted to pure
   --> lib/aave-helpers/src/ProtocolV3TestBase.sol:354:3:
    |
354 |   function _logReserveConfig(ReserveConfig memory config) internal view {
    |   ^ (Relevant source part starts here and spans across multiple lines).

| Contract                                                   | Size (B) | Margin (B) |
|------------------------------------------------------------|----------|------------|
| AaveGovernanceV2                                           |       45 |     24,531 |
| AaveSwapper                                                |    5,572 |     19,004 |
| AaveV2Avalanche                                            |       45 |     24,531 |
| AaveV2AvalancheAssets                                      |       45 |     24,531 |
| AaveV2Ethereum                                             |       45 |     24,531 |
| AaveV2EthereumAMM                                          |       45 |     24,531 |
| AaveV2EthereumAMMAssets                                    |       45 |     24,531 |
| AaveV2EthereumAssets                                       |       45 |     24,531 |
| AaveV2Polygon                                              |       45 |     24,531 |
| AaveV2PolygonAssets                                        |       45 |     24,531 |
| AaveV3Arbitrum                                             |       45 |     24,531 |
| AaveV3ArbitrumAssets                                       |       45 |     24,531 |
| AaveV3ArbitrumEModes                                       |       45 |     24,531 |
| AaveV3Arbitrum_MayFundingUpdate_20240603                   |    1,271 |     23,305 |
| AaveV3Avalanche                                            |       45 |     24,531 |
| AaveV3AvalancheAssets                                      |       45 |     24,531 |
| AaveV3AvalancheEModes                                      |       45 |     24,531 |
| AaveV3Base                                                 |       45 |     24,531 |
| AaveV3BaseAssets                                           |       45 |     24,531 |
| AaveV3BaseEModes                                           |       45 |     24,531 |
| AaveV3Ethereum                                             |       45 |     24,531 |
| AaveV3EthereumAssets                                       |       45 |     24,531 |
| AaveV3EthereumEModes                                       |       45 |     24,531 |
| AaveV3EthereumLido                                         |       45 |     24,531 |
| AaveV3EthereumLidoAssets                                   |       45 |     24,531 |
| AaveV3EthereumLidoEModes                                   |       45 |     24,531 |
| AaveV3EthereumLido_LidoEthereumInstanceActivation_20240720 |    6,780 |     17,796 |
| AaveV3Ethereum_EventsGrant2024_20240718                    |      344 |     24,232 |
| AaveV3Ethereum_MayFundingUpdate_20240603                   |    9,444 |     15,132 |
| AaveV3Ethereum_ToolingUpdateAllowance_20240707             |      344 |     24,232 |
| AaveV3Gnosis                                               |       45 |     24,531 |
| AaveV3GnosisAssets                                         |       45 |     24,531 |
| AaveV3GnosisEModes                                         |       45 |     24,531 |
| AaveV3Optimism                                             |       45 |     24,531 |
| AaveV3OptimismAssets                                       |       45 |     24,531 |
| AaveV3OptimismEModes                                       |       45 |     24,531 |
| AaveV3Optimism_MayFundingUpdate_20240603                   |    1,207 |     23,369 |
| AaveV3Polygon                                              |       45 |     24,531 |
| AaveV3PolygonAssets                                        |       45 |     24,531 |
| AaveV3PolygonEModes                                        |       45 |     24,531 |
| AaveV3Polygon_MayFundingUpdate_20240603                    |    4,900 |     19,676 |
| Address                                                    |       45 |     24,531 |
| ChainHelpers                                               |       45 |     24,531 |
| ChainIds                                                   |       45 |     24,531 |
| ConfiguratorInputTypes                                     |       45 |     24,531 |
| Create2Utils                                               |      123 |     24,453 |
| DataTypes                                                  |       45 |     24,531 |
| EngineFlags                                                |       45 |     24,531 |
| Errors                                                     |    4,673 |     19,903 |
| GatewayMock                                                |      251 |     24,325 |
| GovV3Helpers                                               |    2,581 |     21,995 |
| GovV3StorageHelpers                                        |       45 |     24,531 |
| GovernanceV3Arbitrum                                       |       45 |     24,531 |
| GovernanceV3Avalanche                                      |       45 |     24,531 |
| GovernanceV3BNB                                            |       45 |     24,531 |
| GovernanceV3Base                                           |       45 |     24,531 |
| GovernanceV3Ethereum                                       |       45 |     24,531 |
| GovernanceV3Gnosis                                         |       45 |     24,531 |
| GovernanceV3Metis                                          |       45 |     24,531 |
| GovernanceV3Optimism                                       |       45 |     24,531 |
| GovernanceV3Polygon                                        |       45 |     24,531 |
| GovernanceV3PolygonZkEvm                                   |       45 |     24,531 |
| GovernanceV3Scroll                                         |       45 |     24,531 |
| IpfsUtils                                                  |       45 |     24,531 |
| MiscEthereum                                               |       45 |     24,531 |
| MiscPolygon                                                |       45 |     24,531 |
| PayloadsControllerUtils                                    |       45 |     24,531 |
| ProxyHelpers                                               |       45 |     24,531 |
| ReserveConfiguration                                       |      130 |     24,446 |
| RewardsDataTypes                                           |       45 |     24,531 |
| SafeERC20                                                  |       45 |     24,531 |
| StorageHelpers                                             |       45 |     24,531 |
| TestNetChainIds                                            |       45 |     24,531 |
| WadRayMath                                                 |       45 |     24,531 |
Test success 🌈
No files changed, compilation skipped

Ran 2 tests for src/20240718_AaveV3Ethereum_EventsGrant2024/AaveV3Ethereum_EventsGrant2024_20240718.t.sol:AaveV3Ethereum_EventsGrant2024_20240718_Test
[PASS] testProposalExecution() (gas: 108998)
[PASS] test_defaultProposalExecution() (gas: 492891822)
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
  E2E: Collateral WETH, TestAsset WETH
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: WETH, Amount: 293149372286956898
  WITHDRAW: WETH, Amount: 146574686143478449
  WITHDRAW: WETH, Amount: 146574686143478450
  BORROW: WETH, Amount 293149372286956898, Stable: false
  REPAY: WETH, Amount: 293149372286956898
  E2E: Collateral WETH, TestAsset wstETH
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: wstETH, Amount: 249892417540248687
  WITHDRAW: wstETH, Amount: 124946208770124343
  WITHDRAW: wstETH, Amount: 124946208770124344
  BORROW: wstETH, Amount 249892417540248687, Stable: false
  REPAY: wstETH, Amount: 249892417540248687
  E2E: Collateral WETH, TestAsset WBTC
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: WBTC, Amount: 1567813
  WITHDRAW: WBTC, Amount: 783906
  WITHDRAW: WBTC, Amount: 783906
  BORROW: WBTC, Amount 1567813, Stable: false
  REPAY: WBTC, Amount: 1567813
  E2E: Collateral WETH, TestAsset USDC
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: USDC, Amount: 999980020
  WITHDRAW: USDC, Amount: 499990010
  WITHDRAW: USDC, Amount: 499990010
  BORROW: USDC, Amount 999980020, Stable: false
  REPAY: USDC, Amount: 999980020
  E2E: Collateral WETH, TestAsset DAI
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: DAI, Amount: 1000281359140699095841
  WITHDRAW: DAI, Amount: 500140679570349547920
  WITHDRAW: DAI, Amount: 500140679570349547921
  BORROW: DAI, Amount 1000281359140699095841, Stable: false
  REPAY: DAI, Amount: 1000281359140699095841
  E2E: Collateral WETH, TestAsset LINK
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: LINK, Amount: 73352718011613202315
  WITHDRAW: LINK, Amount: 36676359005806601157
  WITHDRAW: LINK, Amount: 36676359005806601157
  BORROW: LINK, Amount 73352718011613202315, Stable: false
  REPAY: LINK, Amount: 73352718011613202315
  E2E: Collateral WETH, TestAsset AAVE
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: AAVE, Amount: 10235455225723277616
  WITHDRAW: AAVE, Amount: 5117727612861638808
  WITHDRAW: AAVE, Amount: 5117727612861638808
  E2E: Collateral WETH, TestAsset cbETH
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: cbETH, Amount: 272280009124463277
  WITHDRAW: cbETH, Amount: 136140004562231638
  WITHDRAW: cbETH, Amount: 136140004562231640
  BORROW: cbETH, Amount 272280009124463277, Stable: false
  REPAY: cbETH, Amount: 272280009124463277
  E2E: Collateral WETH, TestAsset USDT
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: USDT, Amount: 999878484
  WITHDRAW: USDT, Amount: 499939242
  WITHDRAW: USDT, Amount: 499939242
  BORROW: USDT, Amount 999878484, Stable: false
  REPAY: USDT, Amount: 999878484
  E2E: Collateral WETH, TestAsset rETH
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: rETH, Amount: 263760670374373455
  WITHDRAW: rETH, Amount: 131880335187186727
  WITHDRAW: rETH, Amount: 131880335187186728
  BORROW: rETH, Amount 263760670374373455, Stable: false
  REPAY: rETH, Amount: 263760670374373455
  E2E: Collateral WETH, TestAsset LUSD
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: LUSD, Amount: 1002313479835347158189
  WITHDRAW: LUSD, Amount: 501156739917673579094
  WITHDRAW: LUSD, Amount: 501156739917673579095
  BORROW: LUSD, Amount 1002313479835347158189, Stable: false
  REPAY: LUSD, Amount: 1002313479835347158189
  E2E: Collateral WETH, TestAsset CRV
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: CRV, Amount: 3648652962934246712791
  WITHDRAW: CRV, Amount: 1824326481467123356395
  WITHDRAW: CRV, Amount: 1824326481467123356396
  Skip Borrowing: CRV, borrow cap fully utilized
  E2E: Collateral WETH, TestAsset MKR
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: MKR, Amount: 358977972976817811
  WITHDRAW: MKR, Amount: 179488986488408905
  WITHDRAW: MKR, Amount: 179488986488408905
  BORROW: MKR, Amount 358977972976817811, Stable: false
  REPAY: MKR, Amount: 358977972976817811
  E2E: Collateral WETH, TestAsset SNX
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: SNX, Amount: 524686499816359725064
  WITHDRAW: SNX, Amount: 262343249908179862532
  WITHDRAW: SNX, Amount: 262343249908179862531
  BORROW: SNX, Amount 524686499816359725064, Stable: false
  REPAY: SNX, Amount: 524686499816359725064
  E2E: Collateral WETH, TestAsset BAL
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: BAL, Amount: 382306839469358106816
  WITHDRAW: BAL, Amount: 191153419734679053408
  WITHDRAW: BAL, Amount: 191153419734679053408
  BORROW: BAL, Amount 382306839469358106816, Stable: false
  REPAY: BAL, Amount: 382306839469358106816
  E2E: Collateral WETH, TestAsset UNI
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: UNI, Amount: 128862207338866362951
  WITHDRAW: UNI, Amount: 64431103669433181475
  WITHDRAW: UNI, Amount: 64431103669433181477
  BORROW: UNI, Amount 128862207338866362951, Stable: false
  REPAY: UNI, Amount: 128862207338866362951
  E2E: Collateral WETH, TestAsset LDO
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: LDO, Amount: 523382960715021515959
  WITHDRAW: LDO, Amount: 261691480357510757979
  WITHDRAW: LDO, Amount: 261691480357510757980
  BORROW: LDO, Amount 523382960715021515959, Stable: false
  REPAY: LDO, Amount: 523382960715021515959
  E2E: Collateral WETH, TestAsset ENS
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: ENS, Amount: 38945359660396463761
  WITHDRAW: ENS, Amount: 19472679830198231880
  WITHDRAW: ENS, Amount: 19472679830198231881
  BORROW: ENS, Amount 38945359660396463761, Stable: false
  REPAY: ENS, Amount: 38945359660396463761
  E2E: Collateral WETH, TestAsset 1INCH
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: 1INCH, Amount: 2466091245376078914919
  WITHDRAW: 1INCH, Amount: 1233045622688039457459
  WITHDRAW: 1INCH, Amount: 1233045622688039457460
  BORROW: 1INCH, Amount 2466091245376078914919, Stable: false
  REPAY: 1INCH, Amount: 2466091245376078914919
  E2E: Collateral WETH, TestAsset FRAX
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: FRAX, Amount: 1002913855887757732438
  WITHDRAW: FRAX, Amount: 501456927943878866219
  WITHDRAW: FRAX, Amount: 501456927943878866219
  BORROW: FRAX, Amount 1002913855887757732438, Stable: false
  REPAY: FRAX, Amount: 1002913855887757732438
  E2E: Collateral WETH, TestAsset GHO
  SUPPLY: WETH, Amount: 29314937228695689838
  BORROW: GHO, Amount 1000000000000000000000, Stable: false
  REPAY: GHO, Amount: 1000000000000000000000
  E2E: Collateral WETH, TestAsset RPL
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: RPL, Amount: 52821179180004014409
  WITHDRAW: RPL, Amount: 26410589590002007204
  WITHDRAW: RPL, Amount: 26410589590002007205
  BORROW: RPL, Amount 52821179180004014409, Stable: false
  REPAY: RPL, Amount: 52821179180004014409
  E2E: Collateral WETH, TestAsset sDAI
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: sDAI, Amount: 911752605048146236000
  WITHDRAW: sDAI, Amount: 455876302524073118000
  WITHDRAW: sDAI, Amount: 455876302524073118000
  E2E: TestAsset STG SKIPPED
  E2E: TestAsset KNC SKIPPED
  E2E: TestAsset FXS SKIPPED
  E2E: Collateral WETH, TestAsset crvUSD
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: crvUSD, Amount: 1005210589507559595769
  WITHDRAW: crvUSD, Amount: 502605294753779797884
  WITHDRAW: crvUSD, Amount: 502605294753779797886
  BORROW: crvUSD, Amount 1005210589507559595769, Stable: false
  REPAY: crvUSD, Amount: 1005210589507559595769
  E2E: Collateral WETH, TestAsset PYUSD
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: PYUSD, Amount: 1000215346
  WITHDRAW: PYUSD, Amount: 500107673
  WITHDRAW: PYUSD, Amount: 500107674
  BORROW: PYUSD, Amount 1000215346, Stable: false
  REPAY: PYUSD, Amount: 1000215346
  E2E: Collateral WETH, TestAsset weETH
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: weETH, Amount: 280995347742278203
  WITHDRAW: weETH, Amount: 140497673871139101
  WITHDRAW: weETH, Amount: 140497673871139102
  BORROW: weETH, Amount 280995347742278203, Stable: false
  REPAY: weETH, Amount: 280995347742278203
  E2E: Collateral WETH, TestAsset osETH
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: osETH, Amount: 286930574029891844
  WITHDRAW: osETH, Amount: 143465287014945922
  WITHDRAW: osETH, Amount: 143465287014945922
  BORROW: osETH, Amount 286930574029891844, Stable: false
  REPAY: osETH, Amount: 286930574029891844
  E2E: Collateral WETH, TestAsset USDe
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: USDe, Amount: 1001126728087393237593
  WITHDRAW: USDe, Amount: 500563364043696618796
  WITHDRAW: USDe, Amount: 500563364043696618797
  BORROW: USDe, Amount 1001126728087393237593, Stable: false
  REPAY: USDe, Amount: 1001126728087393237593
  E2E: Collateral WETH, TestAsset ETHx
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: ETHx, Amount: 283199746504019138
  WITHDRAW: ETHx, Amount: 141599873252009569
  WITHDRAW: ETHx, Amount: 141599873252009570
  BORROW: ETHx, Amount 283199746504019138, Stable: false
  REPAY: ETHx, Amount: 283199746504019138
  E2E: Collateral WETH, TestAsset sUSDe
  SUPPLY: WETH, Amount: 29314937228695689838
  SUPPLY: sUSDe, Amount: 918925179531331250215
  WITHDRAW: sUSDe, Amount: 459462589765665625107
  WITHDRAW: sUSDe, Amount: 459462589765665625108

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

Ran 1 test suite in 172.67s (172.65s CPU time): 2 tests passed, 0 failed, 0 skipped (2 total tests)

Please sign in to comment.