Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

audit: add StErMi audit #44

Merged
merged 1 commit into from
Jan 8, 2025
Merged

audit: add StErMi audit #44

merged 1 commit into from
Jan 8, 2025

Conversation

sakulstra
Copy link

No description provided.

@sakulstra sakulstra merged commit 7f5dfaf into v3.3.0 Jan 8, 2025
2 checks passed
@sakulstra sakulstra deleted the audit/StErMi branch January 8, 2025 11:19
Copy link

github-actions bot commented Jan 8, 2025

🔧 Build logs
Compiling 408 files with Solc 0.8.20
Solc 0.8.20 finished in 106.60s
Compiler run successful with warnings:
Warning (9302): Return value of low-level calls not used.
  --> src/contracts/treasury/RevenueSplitter.sol:68:5:
   |
68 |     RECIPIENT_A.call{value: amount_A}('');
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning (9302): Return value of low-level calls not used.
  --> src/contracts/treasury/RevenueSplitter.sol:69:5:
   |
69 |     RECIPIENT_B.call{value: amount_B}('');
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Warning (5740): Unreachable code.
  --> src/contracts/dependencies/openzeppelin/ReentrancyGuard.sol:61:5:
   |
61 |     _status = _NOT_ENTERED;
   |     ^^^^^^^^^^^^^^^^^^^^^^

Warning (5667): Unused function parameter. Remove or comment out the variable name to silence this warning.
    --> tests/protocol/pool/Pool.Liquidations.t.sol:1262:5:
     |
1262 |     uint256 userBalanceBefore
     |     ^^^^^^^^^^^^^^^^^^^^^^^^^


╭------------------------------------------------+------------------+-------------------+--------------------+---------------------╮
| Contract                                       | Runtime Size (B) | Initcode Size (B) | Runtime Margin (B) | Initcode Margin (B) |
+==================================================================================================================================+
| ACLManager                                     | 3,493            | 4,107             | 21,083             | 45,045              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ATokenInstance                                 | 10,163           | 11,058            | 14,413             | 38,094              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ATokenMock                                     | 803              | 967               | 23,773             | 48,185              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveOracle                                     | 2,662            | 3,867             | 21,914             | 45,285              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveProtocolDataProvider                       | 9,683            | 9,964             | 14,893             | 39,188              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3BatchOrchestration                       | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3ConfigEngine                             | 7,573            | 9,165             | 17,003             | 39,987              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3DefaultRateStrategyProcedure             | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3GettersBatchOne                          | 229              | 32,929            | 24,347             | 16,223              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3GettersBatchTwo                          | 137              | 10,839            | 24,439             | 38,313              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3GettersProcedureOne                      | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3GettersProcedureTwo                      | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3HelpersBatchOne                          | 353              | 34,075            | 24,223             | 15,077              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3HelpersBatchTwo                          | 229              | 30,694            | 24,347             | 18,458              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3HelpersProcedureOne                      | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3HelpersProcedureTwo                      | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3IncentiveProcedure                       | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3L2PoolBatch                              | 137              | 43,367            | 24,439             | 5,785               |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3L2PoolProcedure                          | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3LibrariesBatch1                          | 353              | 30,904            | 24,223             | 18,248              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3LibrariesBatch2                          | 353              | 44,684            | 24,223             | 4,468               |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MiscBatch                                | 137              | 6,830             | 24,439             | 42,322              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MiscProcedure                            | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockAssetEModeUpdate                     | 3,420            | 3,649             | 21,156             | 45,503              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockBorrowUpdate                         | 3,300            | 3,491             | 21,276             | 45,661              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockBorrowUpdateNoChange                 | 3,330            | 3,521             | 21,246             | 45,631              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockCapUpdate                            | 3,244            | 3,435             | 21,332             | 45,717              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockCollateralUpdate                     | 3,304            | 3,495             | 21,272             | 45,657              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockCollateralUpdateCorrectBonus         | 3,304            | 3,495             | 21,272             | 45,657              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockCollateralUpdateNoChange             | 3,331            | 3,522             | 21,245             | 45,630              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockCollateralUpdateWrongBonus           | 3,308            | 3,499             | 21,268             | 45,653              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockEModeCategoryUpdate                  | 3,159            | 3,297             | 21,417             | 45,855              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockEModeCategoryUpdateEdgeBonus         | 3,162            | 3,300             | 21,414             | 45,852              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockEModeCategoryUpdateNoChange          | 3,221            | 3,359             | 21,355             | 45,793              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockListing                              | 3,598            | 3,827             | 20,978             | 45,325              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockListingCustom                        | 3,891            | 4,203             | 20,685             | 44,949              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockPriceFeedUpdate                      | 3,269            | 3,498             | 21,307             | 45,654              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3MockRatesUpdate                          | 3,262            | 3,453             | 21,314             | 45,699              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3OracleProcedure                          | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3ParaswapBatch                            | 189              | 28,809            | 24,387             | 20,343              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3ParaswapProcedure                        | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3PeripheryBatch                           | 321              | 38,414            | 24,255             | 10,738              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3PoolBatch                                | 137              | 42,120            | 24,439             | 7,032               |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3PoolConfigProcedure                      | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3PoolProcedure                            | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3SetupBatch                               | 11,678           | 25,007            | 12,898             | 24,145              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3SetupProcedure                           | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3TestListing                              | 7,124            | 14,868            | 17,452             | 34,284              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3TokensBatch                              | 137              | 20,321            | 24,439             | 28,831              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3TokensProcedure                          | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AaveV3TreasuryProcedure                        | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Address                                        | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AdminUpgradeabilityProxy                       | 1,544            | 2,502             | 23,032             | 46,650              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| AugustusRegistryMock                           | 162              | 190               | 24,414             | 48,962              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| BaseAdminUpgradeabilityProxy                   | 1,536            | 1,565             | 23,040             | 47,587              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| BaseImmutableAdminUpgradeabilityProxy          | 1,302            | 1,469             | 23,274             | 47,683              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| BaseUpgradeabilityProxy                        | 108              | 135               | 24,468             | 49,017              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| BorrowEngine                                   | 2,526            | 2,579             | 22,050             | 46,573              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| BorrowLogic                                    | 12,500           | 12,553            | 12,076             | 36,599              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| BridgeLogic                                    | 6,746            | 6,799             | 17,830             | 42,353              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| CalldataLogic                                  | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| CapsEngine                                     | 1,179            | 1,232             | 23,397             | 47,920              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| CollateralEngine                               | 2,723            | 2,776             | 21,853             | 46,376              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Collector                                      | 6,815            | 6,852             | 17,761             | 42,300              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ConfiguratorInputTypes                         | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ConfiguratorLogic                              | 6,040            | 6,093             | 18,536             | 43,059              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Create2Utils                                   | 121              | 172               | 24,455             | 48,980              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| DataTypes                                      | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| DefaultMarketInput                             | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| DefaultReserveInterestRateStrategyV2           | 3,997            | 4,291             | 20,579             | 44,861              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| DeployUtils                                    | 913              | 942               | 23,663             | 48,210              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ECDSA                                          | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| EIP712SigUtils                                 | 1,563            | 1,616             | 23,013             | 47,536              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| EModeConfiguration                             | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| EModeEngine                                    | 4,485            | 4,538             | 20,091             | 44,614              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| EModeLogic                                     | 3,756            | 3,809             | 20,820             | 45,343              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ERC1967Proxy                                   | 122              | 967               | 24,454             | 48,185              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ERC1967Utils                                   | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ERC20                                          | 2,085            | 2,833             | 22,491             | 46,319              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| EmissionManager                                | 3,455            | 3,916             | 21,121             | 45,236              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| EngineFlags                                    | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Errors                                         | 4,659            | 4,712             | 19,917             | 44,440              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Faucet                                         | 2,064            | 2,596             | 22,512             | 46,556              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| FlashLoanLogic                                 | 9,555            | 9,608             | 15,021             | 39,544              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| FlashloanAttacker                              | 1,602            | 2,026             | 22,974             | 47,126              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| GPv2SafeERC20                                  | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| GenericLogic                                   | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Initializable                                  | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| InitializableAdminUpgradeabilityProxy          | 2,388            | 2,417             | 22,188             | 46,735              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| InitializableImmutableAdminUpgradeabilityProxy | 1,853            | 2,020             | 22,723             | 47,132              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| InitializableUpgradeabilityProxy               | 871              | 900               | 23,705             | 48,252              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| IsolationModeLogic                             | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| L2Encoder                                      | 3,731            | 3,926             | 20,845             | 45,226              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| L2PoolInstance                                 | 22,673           | 22,929            | 1,903              | 26,223              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| LiquidationDataProvider                        | 7,518            | 7,805             | 17,058             | 41,347              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| LiquidationHelper                              | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| LiquidationLogic                               | 14,733           | 14,786            | 9,843              | 34,366              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ListingEngine                                  | 7,156            | 7,209             | 17,420             | 41,943              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MarketReportUtils                              | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Math                                           | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MathUtils                                      | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MathUtilsWrapper                               | 917              | 946               | 23,659             | 48,206              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MessageHashUtils                               | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MetadataReporter                               | 12,286           | 12,315            | 12,290             | 36,837              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MintableDelegationERC20                        | 2,533            | 3,313             | 22,043             | 45,839              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MintableERC20                                  | 3,351            | 4,295             | 21,225             | 44,857              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Mock                                           | 182              | 210               | 24,394             | 48,942              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockAToken                                     | 10,165           | 11,062            | 14,411             | 38,090              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockATokenRepayment                            | 10,246           | 11,143            | 14,330             | 38,009              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockAggregator                                 | 134              | 278               | 24,442             | 48,874              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockBadTransferStrategy                        | 998              | 1,187             | 23,578             | 47,965              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockERC20AaveLMUpgradeable                     | 8,401            | 8,626             | 16,175             | 40,526              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockERC4626StataTokenUpgradeable               | 9,890            | 10,246            | 14,686             | 38,906              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockFlashLoanATokenReceiver                    | 2,438            | 2,816             | 22,138             | 46,336              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockFlashLoanReceiver                          | 2,253            | 2,538             | 22,323             | 46,614              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockFlashLoanSimpleReceiver                    | 1,476            | 1,761             | 23,100             | 47,391              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockIncentivesController                       | 132              | 159               | 24,444             | 48,993              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockInitializableFromConstructorImple          | 349              | 639               | 24,227             | 48,513              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockInitializableImple                         | 1,544            | 1,576             | 23,032             | 47,576              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockInitializableImpleV2                       | 1,546            | 1,578             | 23,030             | 47,574              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockInitializableV1                            | 307              | 339               | 24,269             | 48,813              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockInitializableV2                            | 309              | 341               | 24,267             | 48,811              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockL2Pool                                     | 22,700           | 22,956            | 1,876              | 26,196              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockParaSwapAugustus                           | 2,133            | 3,253             | 22,443             | 45,899              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockParaSwapAugustusRegistry                   | 179              | 308               | 24,397             | 48,844              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockParaSwapTokenTransferProxy                 | 905              | 998               | 23,671             | 48,154              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockPeripheryContractV1                        | 309              | 338               | 24,267             | 48,814              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockPeripheryContractV2                        | 290              | 319               | 24,286             | 48,833              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockPoolInherited                              | 21,615           | 21,898            | 2,961              | 27,254              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockReentrantInitializableImple                | 413              | 445               | 24,163             | 48,707              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockReserveConfiguration                       | 2,651            | 2,680             | 21,925             | 46,472              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockReserveInterestRateStrategy                | 3,314            | 3,612             | 21,262             | 45,540              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockScaledTestnetERC20                         | 4,101            | 5,524             | 20,475             | 43,628              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockScaledToken                                | 3,998            | 4,758             | 20,578             | 44,394              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| MockVariableDebtToken                          | 7,281            | 8,162             | 17,295             | 40,990              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Ownable                                        | 629              | 722               | 23,947             | 48,430              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ParaSwapLiquiditySwapAdapter                   | 8,245            | 9,369             | 16,331             | 39,783              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ParaSwapRepayAdapter                           | 8,825            | 10,039            | 15,751             | 39,113              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ParaSwapWithdrawSwapAdapter                    | 6,755            | 7,809             | 17,821             | 41,343              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PercentageMath                                 | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PercentageMathWrapper                          | 297              | 326               | 24,279             | 48,826              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PoolAddressesProvider                          | 6,697            | 8,049             | 17,879             | 41,103              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PoolAddressesProviderRegistry                  | 2,148            | 2,609             | 22,428             | 46,543              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PoolConfiguratorInstance                       | 19,780           | 19,812            | 4,796              | 29,340              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PoolInstance                                   | 21,426           | 21,682            | 3,150              | 27,470              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PoolLogic                                      | 6,823            | 6,876             | 17,753             | 42,276              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PoolStorage                                    | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PriceFeedEngine                                | 1,577            | 1,630             | 22,999             | 47,522              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PriceOracle                                    | 469              | 498               | 24,107             | 48,654              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PriceOracleSentinel                            | 1,668            | 1,884             | 22,908             | 47,268              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ProxyAdmin                                     | 990              | 1,235             | 23,586             | 47,917              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ProxyHelpers                                   | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| PullRewardsTransferStrategy                    | 1,255            | 1,481             | 23,321             | 47,671              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| RateEngine                                     | 2,348            | 2,401             | 22,228             | 46,751              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ReserveConfiguration                           | 128              | 179               | 24,448             | 48,973              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ReserveLogic                                   | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| RevenueSplitter                                | 1,942            | 2,259             | 22,634             | 46,893              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| RewardsController                              | 14,226           | 14,420            | 10,350             | 34,732              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| RewardsDataTypes                               | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SafeCast                                       | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SafeERC20                                      | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SafeMath                                       | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SequencerOracle                                | 865              | 1,326             | 23,711             | 47,826              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SigUtils                                       | 492              | 545               | 24,084             | 48,607              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SignedMath                                     | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SlotParser                                     | 330              | 383               | 24,246             | 48,769              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| StakeMock                                      | 355              | 384               | 24,221             | 48,768              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| StakedTokenTransferStrategy                    | 2,060            | 2,770             | 22,516             | 46,382              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| StataTokenFactory                              | 3,027            | 3,497             | 21,549             | 45,655              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| StataTokenV2                                   | 19,991           | 20,693            | 4,585              | 28,459              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| StorageSlot                                    | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| Strings                                        | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| SupplyLogic                                    | 11,714           | 11,767            | 12,862             | 37,385              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| TestnetERC20                                   | 3,981            | 5,396             | 20,595             | 43,756              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| TransparentProxyFactory                        | 5,341            | 5,370             | 19,235             | 43,782              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| TransparentUpgradeableProxy                    | 1,088            | 2,274             | 23,488             | 46,878              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| UiIncentiveDataProviderV3                      | 9,125            | 9,154             | 15,451             | 39,998              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| UiPoolDataProviderV3                           | 10,060           | 10,271            | 14,516             | 38,881              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| UpgradeabilityProxy                            | 108              | 855               | 24,468             | 48,297              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| UserConfiguration                              | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| ValidationLogic                                | 189              | 241               | 24,387             | 48,911              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| VariableDebtTokenHarness                       | 7,297            | 8,178             | 17,279             | 40,974              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| VariableDebtTokenInstance                      | 7,279            | 8,158             | 17,297             | 40,994              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WETH9                                          | 1,885            | 2,354             | 22,691             | 46,798              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WETH9Mock                                      | 2,640            | 3,869             | 21,936             | 45,283              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WETH9Mocked                                    | 2,191            | 2,660             | 22,385             | 46,492              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WadRayMath                                     | 44               | 94                | 24,532             | 49,058              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WadRayMathWrapper                              | 816              | 845               | 23,760             | 48,307              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WalletBalanceProvider                          | 2,619            | 2,648             | 21,957             | 46,504              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WalletMock                                     | 21               | 47                | 24,555             | 49,105              |
|------------------------------------------------+------------------+-------------------+--------------------+---------------------|
| WrappedTokenGatewayV3                          | 5,391            | 6,283             | 19,185             | 42,869              |
╰------------------------------------------------+------------------+-------------------+--------------------+---------------------╯

Copy link

github-actions bot commented Jan 8, 2025

🌈 Test Results
No files changed, compilation skipped

Ran 20 tests for tests/protocol/configuration/ACLManager.t.sol:ACLManagerTest
[PASS] testDefaultAdminRoleAfterDeploy() (gas: 20689)
[PASS] test_defaultAdmin_grantAdminRole_FlashBorrowAdmin() (gas: 65510)
[PASS] test_defaultAdmin_grants_AssetsListingRole() (gas: 37593)
[PASS] test_defaultAdmin_grants_BridgeRole() (gas: 37659)
[PASS] test_defaultAdmin_grants_EmergencyAdminRole() (gas: 37606)
[PASS] test_defaultAdmin_grants_PoolAdminRole() (gas: 37726)
[PASS] test_defaultAdmin_grants_RiskRole() (gas: 37723)
[PASS] test_defaultAdmin_remove_AssetsListingRole() (gas: 29442)
[PASS] test_defaultAdmin_remove_BridgeRole() (gas: 29531)
[PASS] test_defaultAdmin_remove_EmergencyAdminRole() (gas: 29426)
[PASS] test_defaultAdmin_remove_PoolAdminRole() (gas: 29548)
[PASS] test_defaultAdmin_remove_RiskRole() (gas: 29432)
[PASS] test_flashBorrowAdmin_grantRole_FlashBorrowRole() (gas: 91916)
[PASS] test_flashBorrowAdmin_removeRole_FlashBorrowRole() (gas: 76438)
[PASS] test_remove_riskAdmin() (gas: 29442)
[PASS] test_revert_anyUser_grantAdminRole_FlashBorrowAdmin() (gas: 72851)
[PASS] test_revert_deploy_ACLADMIN_zeroAddress() (gas: 1470125)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_addRole_FlashBorrowRole() (gas: 98836)
[PASS] test_reverts_defaultAdmin_notRoleAdmin_revokeRole_FlashBorrowRole() (gas: 125219)
[PASS] test_reverts_notAdmin_grantRole_FlashBorrow() (gas: 115150)
Suite result: ok. 20 passed; 0 failed; 0 skipped; finished in 14.01ms (3.70ms CPU time)

Ran 14 tests for tests/deployments/DeploymentsGasLimits.t.sol:DeploymentsGasLimits
[PASS] test0AaveV3SetupDeployment() (gas: 4574068)
[PASS] test10ConfigEngineDeployment() (gas: 6715374)
[PASS] test11StaticATokenDeployment() (gas: 6349701)
[PASS] test12PeripheralsTreasuryPartner() (gas: 7078209)
[PASS] test1AaveV3GettersBatch1Deployment() (gas: 6624217)
[PASS] test2AaveV3GettersBatch2Deployment() (gas: 2063821)
[PASS] test3AaveV3PoolDeployment() (gas: 8527427)
[PASS] test4AaveV3L2PoolDeployment() (gas: 8778083)
[PASS] test5PeripheralsRelease() (gas: 6591583)
[PASS] test6MiscDeployment() (gas: 1360185)
[PASS] test7ParaswapDeployment() (gas: 5218702)
[PASS] test8SetupMarket() (gas: 2717444)
[PASS] test9TokensMarket() (gas: 3901228)
[PASS] testCheckInitCodeSizeBatchs() (gas: 1008566)
Logs:
  AaveV3SetupBatch 25007
  AaveV3L2PoolBatch 43367
  AaveV3PoolBatch 42120
  AaveV3PeripheryBatch 38414
  AaveV3MiscBatch 6830
  AaveV3ParaswapBatch 28809
  AaveV3GettersBatchOne 32929
  AaveV3GettersBatchTwo 10839
  AaveV3TokensBatch 20321
  AaveV3HelpersBatchOne 34075
  AaveV3HelpersBatchTwo 30694
  AaveV3PeripheryBatchTreasuryPartner 38414

Suite result: ok. 14 passed; 0 failed; 0 skipped; finished in 22.21ms (9.54ms CPU time)

Ran 15 tests for tests/gas/ProtocolDataProvider.gas.t.sol:ProtocolDataProvider_gas_Tests
[PASS] test_getATokenTotalSupply() (gas: 45824)
[PASS] test_getDebtCeiling() (gas: 27099)
[PASS] test_getFlashLoanEnabled() (gas: 27199)
[PASS] test_getInterestRateStrategyAddress() (gas: 50707)
[PASS] test_getIsVirtualAccActive() (gas: 27206)
[PASS] test_getLiquidationProtocolFee() (gas: 27158)
[PASS] test_getPaused() (gas: 27250)
[PASS] test_getReserveCaps() (gas: 27176)
[PASS] test_getReserveConfigurationData() (gas: 28077)
[PASS] test_getReserveTokensAddresses() (gas: 31054)
[PASS] test_getSiloedBorrowing() (gas: 27254)
[PASS] test_getTotalDebt() (gas: 45846)
[PASS] test_getUnbackedMintCap() (gas: 27097)
[PASS] test_getUserReserveData() (gas: 371083)
[PASS] test_getVirtualUnderlyingBalance() (gas: 26880)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 52.85ms (3.13ms CPU time)

Ran 9 tests for tests/gas/AToken.Transfer.gas.t.sol:ATokenTransfer_gas_Tests
[PASS] test_transfer_fullAmount() (gas: 415601)
[PASS] test_transfer_fullAmount_dirtyReceiver() (gas: 724658)
[PASS] test_transfer_fullAmount_senderCollateralDisabled() (gas: 429027)
[PASS] test_transfer_fullAmount_senderCollateralDisabled_receiverNonZeroFunds() (gas: 649890)
[PASS] test_transfer_fullAmount_senderCollateralDisabled_receiverNonZeroFunds2() (gas: 636484)
[PASS] test_transfer_partialAmount() (gas: 429102)
[PASS] test_transfer_partialAmount_receiverNonZeroFunds() (gas: 649950)
[PASS] test_transfer_partialAmount_senderCollateralEnabled() (gas: 414068)
[PASS] test_transfer_partialAmount_senderCollateralEnabled_receiverNonZeroFunds() (gas: 634898)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 59.90ms (20.40ms CPU time)

Ran 17 tests for tests/protocol/tokenization/ATokenEdgeCases.t.sol:ATokenEdgeCasesTests
[PASS] testApprove() (gas: 45105)
[PASS] testApproveMax() (gas: 45208)
[PASS] testApproveWithZeroAddressSpender() (gas: 42159)
[PASS] testCheckGetters() (gas: 259765)
[PASS] testDecreaseAllowance() (gas: 53034)
[PASS] testIncreaseAllowance() (gas: 53078)
[PASS] testIncreaseAllowanceFromZero() (gas: 48398)
[PASS] testMintToTreasury_amount_zero() (gas: 15793)
[PASS] testTransferFromZeroAmount() (gas: 129523)
[PASS] test_burn_zeroAddress() (gas: 266274)
[PASS] test_mintToZeroAddress() (gas: 82271)
[PASS] test_poolAdmin_setIncentivesController() (gas: 35820)
[PASS] test_revert_notAdmin_setIncentivesController() (gas: 40389)
[PASS] test_reverts_burnAmountScaledZero() (gas: 19433)
[PASS] test_reverts_mintAmountScaledZero() (gas: 19577)
[PASS] test_transferFrom_zeroAddress_origin() (gas: 129334)
[PASS] test_transfer_amount_MAX_UINT_128() (gas: 16460)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 45.60ms (4.01ms CPU time)

Ran 8 tests for tests/protocol/tokenization/ATokenEvents.t.sol:ATokenEventsTests
[PASS] test_atoken_burnEvents_fullBalance() (gas: 562246)
[PASS] test_atoken_burnEvents_multipleWithdrawals_withInterests() (gas: 649865)
[PASS] test_atoken_burnEvents_singleWithdraw_WithInterests() (gas: 572848)
[PASS] test_atoken_burnEvents_singleWithdraw_noInterests() (gas: 254908)
[PASS] test_atoken_burnEvents_withdrawAmountLessThanInterests() (gas: 575696)
[PASS] test_atoken_mintEvents_firstSupply() (gas: 252188)
[PASS] test_atoken_mintEvents_supplyAfterBorrow() (gas: 628468)
[PASS] test_mintToTreasury_events() (gas: 90162)
Suite result: ok. 8 passed; 0 failed; 0 skipped; finished in 48.15ms (11.89ms CPU time)

Ran 4 tests for tests/protocol/tokenization/ATokenModifiers.t.sol:ATokenModifiersTests
[PASS] test_revert_notAdmin_burn() (gas: 17084)
[PASS] test_revert_notAdmin_mint() (gas: 17178)
[PASS] test_revert_notAdmin_transferOnLiquidation() (gas: 17210)
[PASS] test_revert_notAdmin_transferUnderlyingTo() (gas: 17015)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 36.74ms (374.01µs CPU time)

Ran 9 tests for tests/protocol/tokenization/ATokenPermit.t.sol:ATokenPermitTests
[PASS] testCheckDomainSeparator() (gas: 26163)
[PASS] test_cancelPermit() (gas: 100693)
[PASS] test_chain_fork_calculateDomainSeparator() (gas: 32906)
[PASS] test_revert_submitPermit_0_expiration() (gas: 46698)
[PASS] test_revert_submitPermit_invalid_expiration_previosCurrentBlock() (gas: 47177)
[PASS] test_revert_submitPermit_invalid_nonce() (gas: 55087)
[PASS] test_revert_submitPermit_invalid_owner() (gas: 46525)
[PASS] test_revert_submitPermit_invalid_signature() (gas: 54947)
[PASS] test_submitPermit() (gas: 94296)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 42.70ms (6.25ms CPU time)

Ran 3 tests for tests/protocol/tokenization/ATokenRepay.t.sol:ATokenRepayTests
[PASS] test_repay_allDebt() (gas: 275412)
[PASS] test_repay_partialDebt() (gas: 274535)
[PASS] test_revert_repay_withoutFunds() (gas: 180152)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 36.83ms (2.17ms CPU time)

Ran 3 tests for tests/protocol/tokenization/ATokenRescueTokens.sol:ATokenRescueTokensTests
[PASS] test_rescueTokens() (gas: 77965)
[PASS] test_reverts_rescueTokens_CALLER_NOT_POOL_ADMIN() (gas: 70878)
[PASS] test_reverts_rescueTokens_UNDERLYING_CANNOT_BE_RESCUED() (gas: 71617)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 36.78ms (720.68µs CPU time)

Ran 11 tests for tests/protocol/tokenization/ATokenTransfers.t.sol:ATokenTransferTests
[PASS] test_atoken_alice_transfer_all_to_bob() (gas: 162086)
[PASS] test_atoken_alice_transfer_to_bob() (gas: 232071)
[PASS] test_atoken_alice_transfer_to_bob_zero() (gas: 160039)
[PASS] test_atoken_alice_transfer_to_carol_accrues_interests() (gas: 224488)
[PASS] test_atoken_alice_transfer_to_herself() (gas: 81567)
[PASS] test_atoken_alice_transfer_to_herself_zero() (gas: 81608)
[PASS] test_atoken_multiple_transfers() (gas: 201287)
[PASS] test_atoken_transfer_sets_enabled_as_collateral(uint64,uint256) (runs: 1000, μ: 386558, ~: 390609)
[PASS] test_atoken_transfer_some_collateral_from_bob_borrower_to_alice() (gas: 524668)
[PASS] test_atoken_transfer_to_bob_them_bob_borrows() (gas: 395919)
[PASS] test_reverts_atoken_transfer_all_collateral_from_bob_borrower_to_alice() (gas: 405284)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 1.31s (1.27s CPU time)

Ran 12 tests for tests/misc/AaveOracle.t.sol:AaveOracleTest
[PASS] testAddSingleSource() (gas: 936997)
[PASS] testAssetZeroPriceAndZeroFallbackPrice() (gas: 1076187)
[PASS] testAssetZeroPriceNonZeroFallback() (gas: 1096138)
[PASS] testAssetZeroPriceWithoutFallback() (gas: 918632)
[PASS] testEmptySource() (gas: 821590)
[PASS] testGetBaseCurrencyPrice() (gas: 12315)
[PASS] testGetPriceViaFallbackOracle() (gas: 1000288)
[PASS] testUpdateFallbackOracle() (gas: 178617)
[PASS] testUpdateSingleSource() (gas: 127097)
[PASS] testUpdateSourceBaseCurrency() (gas: 138611)
[PASS] test_revert_setAssetSources_inconsistentParams() (gas: 822968)
[PASS] test_revert_setAssetSources_wrongCaller() (gas: 24620)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 45.78ms (2.93ms CPU time)

Ran 5 tests for tests/deployments/AaveV3BatchDeployment.t.sol:AaveV3BatchDeployment
[PASS] testAaveV3BatchDeploy() (gas: 53866177)
[PASS] testAaveV3BatchDeploymentCheck() (gas: 64997283)
[PASS] testAaveV3Batch_reuseIncentivesProxy() (gas: 53342988)
[PASS] testAaveV3L2BatchDeploymentCheck() (gas: 66827159)
[PASS] testAaveV3TreasuryPartnerBatchDeploymentCheck() (gas: 65504352)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 135.38ms (129.22ms CPU time)

Ran 12 tests for tests/deployments/AaveV3BatchTests.t.sol:AaveV3BatchTests
[PASS] test0AaveV3SetupDeployment() (gas: 4574089)
[PASS] test10StaticATokenDeployment() (gas: 6349751)
[PASS] test1AaveV3GettersDeployment() (gas: 7886600)
[PASS] test2AaveV3PoolDeployment() (gas: 8527461)
[PASS] test3AaveV3L2PoolDeployment() (gas: 8778137)
[PASS] test4PeripheralsRelease() (gas: 6591560)
[PASS] test5MiscDeployment() (gas: 929135)
[PASS] test6ParaswapRelease() (gas: 5218679)
[PASS] test7SetupMarket() (gas: 2692768)
[PASS] test8TokensMarket() (gas: 3901214)
[PASS] test9ConfigEngineDeployment() (gas: 6715437)
[PASS] testAaveV3FullBatchOrchestration() (gas: 53862499)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 27.43ms (15.47ms CPU time)

Ran 13 tests for tests/misc/rates/RateStrategy.calculateRates.t.sol:RateStrategyCalculateRatesTests
[PASS] test_calculate_rates_100_percent_usage() (gas: 48587)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_bps_usage() (gas: 48706)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_percent_usage() (gas: 91357)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_percent_usage_and_50_percent_supply_usage_due_minted_tokens() (gas: 46912)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_80_percent_usage_and_80_bps_supply_usage_due_minted_tokens() (gas: 46934)
Logs:
  Bound result 8000
  Bound result 400

[PASS] test_calculate_rates_above_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 124113, ~: 124369)
[PASS] test_calculate_rates_below_op_usage((uint16,uint32,uint32,uint32),uint256,uint256,uint256) (runs: 1000, μ: 118823, ~: 121027)
[PASS] test_calculate_rates_below_op_usage_when_no_debt((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 75593, ~: 76058)
[PASS] test_calculate_rates_empty_reserve((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 44176, ~: 44123)
[PASS] test_calculate_rates_when_not_using_virtual_valance((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 68254, ~: 69107)
[PASS] test_calculate_rates_when_total_debt_0((uint16,uint32,uint32,uint32),uint256,uint256) (runs: 1000, μ: 68124, ~: 69327)
[PASS] test_fuzz_calculate_rates_80_percent_usage_added_and_virtual_equal(uint256) (runs: 1000, μ: 33334, ~: 32997)
[PASS] test_zero_rates_strategy_calculate_rates() (gas: 19289)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 4.94s (4.90s CPU time)

Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTests
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 52561, ~: 52483)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26277, ~: 26215)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 29736, ~: 29829)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22536, ~: 22536)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 22584, ~: 22584)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 27247, ~: 27140)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 23886, ~: 23886)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 2.80s (2.76s CPU time)

Ran 7 tests for tests/misc/rates/RateStrategy.setters.t.sol:RateStrategySettersTestsOverride
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 51962, ~: 51882)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 25678, ~: 25598)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 29127, ~: 29220)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21927, ~: 21927)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 21975, ~: 21975)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26620, ~: 26531)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 23277, ~: 23277)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 2.90s (2.83s CPU time)

Ran 15 tests for tests/protocol/pool/Pool.Repay.t.sol:PoolRepayTests
[PASS] test_full_repay_borrow_variable_in_isolation() (gas: 575908)
[PASS] test_partial_repay_borrow_variable_in_isolation() (gas: 628347)
[PASS] test_repayWithATokens_full_collateral_variable_borrow() (gas: 616691)
[PASS] test_repayWithATokens_full_variable_borrow() (gas: 415229)
[PASS] test_repayWithATokens_fuzz_collateral_variable_borrow(uint256,uint32) (runs: 1000, μ: 603220, ~: 604727)
[PASS] test_repayWithPermit(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 581353, ~: 579905)
[PASS] test_repayWithPermit_not_failing_if_permit_was_used(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 586333, ~: 585397)
[PASS] test_repayWithPermit_should_revert_if_permit_is_less_then_repay_amount(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 537824, ~: 533890)
[PASS] test_repay_full_variable_borrow() (gas: 401859)
[PASS] test_revert_repay_full_stable_borrow() (gas: 353430)
[PASS] test_reverts_borrow_invalidAmount() (gas: 51504)
[PASS] test_reverts_borrow_reserveInactive() (gas: 129619)
[PASS] test_reverts_borrow_reservePaused() (gas: 92442)
[PASS] test_reverts_no_explicit_repay_on_behalf() (gas: 327417)
[PASS] test_reverts_repay_no_debt() (gas: 52075)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 13.07s (13.02s CPU time)

Ran 2 tests for tests/gas/Pool.Setters.gas.t.sol:PoolSetters_gas_Tests
[PASS] test_setUserEMode() (gas: 962071)
[PASS] test_setUserUseReserveAsCollateral() (gas: 393070)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 49.30ms (6.47ms CPU time)

Ran 15 tests for tests/misc/rates/RateStrategy.t.sol:RateStrategyBaseTests
[PASS] test_getInterestRateDataBps((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 40443, ~: 40356)
[PASS] test_getInterestRateDataRay((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 41337, ~: 41282)
[PASS] test_getMaxVariableBorrowRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 38857, ~: 38790)
[PASS] test_initialization() (gas: 27078)
[PASS] test_new_DefaultReserveInterestRateStrategy_wrong_provider() (gas: 42406)
[PASS] test_new_SetReserveInterestRateParams((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 52527, ~: 52454)
[PASS] test_new_SetReserveInterestRateParams_override_method((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 49731, ~: 49659)
[PASS] test_new_SetReserveInterestRateParams_when_not_configurator((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 26313, ~: 26241)
[PASS] test_overflow_liquidity_rates() (gas: 59548)
[PASS] test_overflow_variable_rates() (gas: 546010)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_maxRate((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 34978, ~: 34978)
[PASS] test_reverts_SetReserveInterestRateParams_when_gt_max_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 31521, ~: 31521)
[PASS] test_reverts_SetReserveInterestRateParams_when_lt_min_op((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 31597, ~: 31597)
[PASS] test_reverts_SetReserveInterestRateParams_when_reserve_0((uint16,uint32,uint32,uint32)) (runs: 1000, μ: 27959, ~: 27959)
[PASS] test_reverts_SetReserveInterestRateParams_when_slope1_gt_slope2(uint16,uint32,uint32,uint32) (runs: 1000, μ: 33710, ~: 33710)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 4.31s (4.28s CPU time)

Ran 15 tests for tests/extensions/RevenueSplitter.t.sol:RevenueSplitterTest
[PASS] test_constructor() (gas: 15312)
[PASS] test_constructor_fuzzing(uint16) (runs: 1000, μ: 455456, ~: 455456)
[PASS] test_constructor_revert_invalid_split_percentage() (gas: 174521)
[PASS] test_splitFund_oneToken() (gas: 425061)
[PASS] test_splitFund_reverts_randomAddress() (gas: 51331)
[PASS] test_splitFund_zeroAmount_noOp() (gas: 385934)
[PASS] test_splitFund_zeroFunds_noOp() (gas: 50896)
[PASS] test_splitFund_zeroTokens_noOp() (gas: 384852)
[PASS] test_splitFunds_fixed() (gas: 462014)
[PASS] test_splitFunds_fuzz_max(uint256,uint256) (runs: 1000, μ: 462889, ~: 464196)
[PASS] test_splitFunds_fuzz_realistic(uint256,uint256) (runs: 1000, μ: 461431, ~: 462656)
[PASS] test_splitNativeFund_fixedAmount() (gas: 100469)
[PASS] test_splitNativeFund_walletNotAcceptingFunds() (gas: 535352)
[PASS] test_splitNativeFund_zeroAmount_noOp() (gas: 29713)
[PASS] test_splitNativeFunds_fuzz_max(uint256) (runs: 1000, μ: 100136, ~: 101887)
Suite result: ok. 15 passed; 0 failed; 0 skipped; finished in 4.77s (4.76s CPU time)

Ran 19 tests for tests/rewards/RewardsController.t.sol:RewardsControllerTest
[PASS] test_accrueRewards() (gas: 931424)
[PASS] test_claimAllRewards() (gas: 887237)
[PASS] test_claimAllRewardsOnBehalf() (gas: 920942)
[PASS] test_claimAllRewardsToSelf() (gas: 886864)
[PASS] test_claimRewards() (gas: 884013)
[PASS] test_claimRewardsOnBehalf() (gas: 922532)
[PASS] test_claimRewardsToSelf() (gas: 883695)
[PASS] test_claimRewards_partial() (gas: 884283)
[PASS] test_claimRewards_zero() (gas: 636639)
[PASS] test_claimRewards_zero_with_rewards() (gas: 643452)
[PASS] test_configureAssets() (gas: 617691)
[PASS] test_initialize_no_op() (gas: 3668534)
[PASS] test_new_RewardsController() (gas: 3644884)
[PASS] test_reverts_initialize_twice() (gas: 3670113)
[PASS] test_setClaimer() (gas: 58252)
[PASS] test_setDistributionEnd() (gas: 633550)
[PASS] test_setEmissionPerSecond() (gas: 637684)
[PASS] test_setRewardOracle() (gas: 711308)
[PASS] test_setTransferStrategy_PullRewardsTransferStrategy() (gas: 913786)
Suite result: ok. 19 passed; 0 failed; 0 skipped; finished in 52.95ms (15.05ms CPU time)

Ran 1 test for tests/protocol/tokenization/ScaledBalanceTokenBase.t.sol:ScaledBalanceTokenBaseEdgeTests
[PASS] test_scaled_balance_token_base_alice_transfer_to_bob_accrues_interests() (gas: 98768)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 45.14ms (291.56µs CPU time)

Ran 5 tests for tests/rewards/StakedTokenTransferStrategy.t.sol:StakedTokenTransferStrategyTest
[PASS] test_dropApproval() (gas: 18982)
[PASS] test_emergencyTransfer() (gas: 218832)
[PASS] test_getters() (gas: 18731)
[PASS] test_performTransfer() (gas: 22031)
[PASS] test_renewApproval() (gas: 23102)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 35.35ms (1.41ms CPU time)

Ran 2 tests for tests/gas/StataToken.gas.t.sol:StataToken_gas_Tests
[PASS] test_deposit() (gas: 497211)
[PASS] test_depositATokens() (gas: 547140)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 47.48ms (4.23ms CPU time)

Ran 2 tests for tests/extensions/stata-token/StataTokenV2Getters.sol:StataTokenV2GettersTest
[PASS] test_getters() (gas: 72123)
[PASS] test_initializeShouldRevert() (gas: 21665)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 36.97ms (372.48µs CPU time)

Ran 13 tests for tests/protocol/pool/Pool.Supply.t.sol:PoolSupplyTests
[PASS] test_deprecated_deposit() (gas: 240892)
[PASS] test_first_supply() (gas: 240871)
[PASS] test_first_supply_on_behalf() (gas: 242918)
[PASS] test_reverts_supply_cap() (gas: 105305)
[PASS] test_reverts_supply_invalidAmount() (gas: 47720)
[PASS] test_reverts_supply_reserveFrozen() (gas: 117591)
[PASS] test_reverts_supply_reserveInactive() (gas: 125551)
[PASS] test_reverts_supply_reservePaused() (gas: 88395)
[PASS] test_reverts_supply_to_aToken() (gas: 50239)
[PASS] test_supplyWithPermit(uint128,uint128,uint128) (runs: 1000, μ: 422612, ~: 422622)
[PASS] test_supplyWithPermit_not_failing_if_permit_was_used(uint128,uint128,uint128) (runs: 1000, μ: 422811, ~: 422830)
[PASS] test_supplyWithPermit_should_revert_if_permit_is_less_then_supply_amount(uint128,uint128) (runs: 1000, μ: 288092, ~: 288096)
[PASS] test_supply_after_collateral_enabled() (gas: 287552)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 7.06s (7.01s CPU time)

Ran 11 tests for tests/protocol/pool/Pool.Withdraw.t.sol:PoolWithdrawTests
[PASS] test_Reverts_withdraw_transferred_funds() (gas: 549402)
[PASS] test_full_withdraw() (gas: 234777)
[PASS] test_full_withdraw_to() (gas: 240305)
[PASS] test_partial_withdraw() (gas: 231268)
[PASS] test_reverts_withdraw_hf_lt_lqt() (gas: 678915)
[PASS] test_reverts_withdraw_invalidAmount() (gas: 247145)
[PASS] test_reverts_withdraw_invalidBalance() (gas: 249215)
[PASS] test_reverts_withdraw_reserveInactive() (gas: 203217)
[PASS] test_reverts_withdraw_reservePaused() (gas: 284676)
[PASS] test_reverts_withdraw_to_atoken() (gas: 247118)
[PASS] test_withdraw_not_enabled_as_collateral() (gas: 248144)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 47.24ms (9.10ms CPU time)

Ran 10 tests for tests/extensions/stata-token/StataTokenV2Pausable.t.sol:StataTokenV2PausableTest
[PASS] test_canPause() (gas: 26898)
[PASS] test_canPause_shouldReturnFalse(address) (runs: 1000, μ: 27394, ~: 27394)
[PASS] test_claimingRewards_shouldRevert() (gas: 554901)
[PASS] test_deposit_shouldRevert() (gas: 479828)
[PASS] test_mint_shouldRevert() (gas: 483833)
[PASS] test_redeem_shouldRevert() (gas: 574408)
[PASS] test_setPaused_shouldRevertForInvalidCaller(address) (runs: 1000, μ: 30455, ~: 30455)
[PASS] test_setPaused_shouldSucceedForOwner() (gas: 53972)
[PASS] test_transfer_shouldRevert() (gas: 552811)
[PASS] test_withdraw_shouldRevert() (gas: 570204)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 234.46ms (198.11ms CPU time)

Ran 3 tests for tests/extensions/stata-token/StataTokenV2Permit.sol:StataTokenV2PermitTest
[PASS] test_permit() (gas: 89457)
[PASS] test_permit_expired() (gas: 37491)
[PASS] test_permit_invalidSigner() (gas: 66080)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 37.34ms (1.95ms CPU time)

Ran 37 tests for tests/protocol/pool/Pool.t.sol:PoolTests
[PASS] test_dropReserve() (gas: 99058)
[PASS] test_getBorrowLogic() (gas: 13619)
[PASS] test_getBridgeLogic() (gas: 13617)
[PASS] test_getEModeLogic() (gas: 13618)
[PASS] test_getFlashLoanLogic() (gas: 13598)
[PASS] test_getLiquidationLogic() (gas: 13687)
[PASS] test_getPoolLogic() (gas: 13683)
[PASS] test_getSupplyLogic() (gas: 13682)
[PASS] test_getVirtualUnderlyingBalance() (gas: 244743)
[PASS] test_getters_getUserAccountData() (gas: 598632)
[PASS] test_mintToTreasury() (gas: 693389)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 698081)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 290768)
[PASS] test_pool_defaultValues() (gas: 4370459)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81869, ~: 82155)
[PASS] test_resetIsolationModeTotalDebt() (gas: 721635)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 25430, ~: 25430)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 127079, ~: 127079)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4382474)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_AssetNotListed(address,address) (runs: 1000, μ: 44326, ~: 44326)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_ZeroAssetAddress(address) (runs: 1000, μ: 22732, ~: 22732)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 977775)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 600582)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 296779)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 212145)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 291639)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 71802)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 778938)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 34733, ~: 34834)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 27115, ~: 27115)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 899426)
[PASS] test_setUserEmode() (gas: 227533)
[PASS] test_setUserEmode_twice() (gas: 358044)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 968281)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 240328)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 277847)
[PASS] test_updateBridgeProtocolFee() (gas: 253)
Suite result: ok. 37 passed; 0 failed; 0 skipped; finished in 1.35s (1.31s CPU time)

Ran 22 tests for tests/protocol/configuration/PoolAddressesProvider.t.sol:PoolAddressesProviderTests
[PASS] test_PoolDataProvider_changeContract() (gas: 1472801)
[PASS] test_getter_getMarketId() (gas: 1435230)
[PASS] test_new_PoolAddressesProvider() (gas: 1444460)
[PASS] test_reverts_setAddressAsProxy_notAuth() (gas: 1448636)
[PASS] test_reverts_setAddress_noAuth() (gas: 1453813)
[PASS] test_reverts_setters_notOwner() (gas: 1451422)
[PASS] test_setACLManager_changeContract() (gas: 3014312)
[PASS] test_setACLManager_setACLAdmin() (gas: 2248265)
[PASS] test_setAddress() (gas: 1462728)
[PASS] test_setAddressAsProxy_new_proxy() (gas: 2020462)
[PASS] test_setAddressAsProxy_upgrade_proxy() (gas: 2132834)
[PASS] test_setAddress_updateAddress() (gas: 1471854)
[PASS] test_setPoolConfiguratorImpl() (gas: 5950177)
[PASS] test_setPoolConfiguratorImpl_upgrade() (gas: 10353154)
[PASS] test_setPoolDataProvider() (gas: 1463246)
[PASS] test_setPoolImpl() (gas: 6253736)
[PASS] test_setPoolImpl_upgrade() (gas: 10656384)
[PASS] test_setPriceOracle() (gas: 1463403)
[PASS] test_setPriceOracleSentinel() (gas: 1463274)
[PASS] test_setPriceOracleSentinel_changeContract() (gas: 1472878)
[PASS] test_setPriceOracle_changeContract() (gas: 1473139)
[PASS] test_setter_setMarketId() (gas: 1446381)
Suite result: ok. 22 passed; 0 failed; 0 skipped; finished in 49.01ms (10.08ms CPU time)

Ran 4 tests for tests/extensions/stata-token/StataTokenV2Rescuable.sol:StataTokenV2RescuableTest
[PASS] test_rescuable_shouldNotCauseInsolvency(uint256,uint256) (runs: 1000, μ: 780471, ~: 780476)
[PASS] test_rescuable_shouldRevertForInvalidCaller() (gas: 197242)
[PASS] test_rescuable_shouldTransferAssetsToCollector() (gas: 224934)
[PASS] test_rescuable_shouldWorkForAToken() (gas: 451830)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 3.42s (3.39s CPU time)

Ran 17 tests for tests/extensions/v3-config-engine/AaveV3ConfigEngineTest.t.sol:AaveV3ConfigEngineTest
[PASS] testAssetEModeUpdates() (gas: 4424308)
[PASS] testBorrowUpdatesNoChange() (gas: 3437288)
[PASS] testBorrowsUpdates() (gas: 3499804)
[PASS] testCapsUpdate() (gas: 3442353)
[PASS] testCollateralUpdateCorrectBonus() (gas: 3457346)
[PASS] testCollateralUpdateWrongBonus() (gas: 755115)
[PASS] testCollateralsUpdates() (gas: 3456944)
[PASS] testCollateralsUpdatesNoChange() (gas: 3435373)
[PASS] testEModeCategoryUpdates() (gas: 3529011)
[PASS] testEModeCategoryUpdatesNoChange() (gas: 3429087)
[PASS] testEModeCategoryUpdatesWrongBonus() (gas: 743213)
[PASS] testFailCollateralsUpdatesNoChange() (gas: 2021085)
[PASS] testFailEModeCategoryUpdatesNoChange() (gas: 757815)
[PASS] testListings() (gas: 6669085)
[PASS] testListingsCustom() (gas: 10391063)
[PASS] testPriceFeedsUpdates() (gas: 3518129)
[PASS] testRateStrategiesUpdates() (gas: 3506252)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 22.22s (22.18s CPU time)

Ran 2 tests for tests/deployments/AaveV3PermissionsTest.t.sol:AaveV3PermissionsTest
[PASS] testCheckPermissions() (gas: 52220452)
[PASS] testCheckPermissionsTreasuryPartner() (gas: 52709813)
Suite result: ok. 2 passed; 0 failed; 0 skipped; finished in 44.38ms (39.30ms CPU time)

Ran 7 tests for tests/protocol/configuration/AddressesProviderRegistry.t.sol:PoolAddressesProviderRegistryTest
[PASS] testAddAddressesProvider() (gas: 120613)
[PASS] testRemoveAddressesProvider() (gas: 97154)
[PASS] testRemoveMultipleAddressesProvider() (gas: 242924)
[PASS] test_addressesProviderAddedToRegistry() (gas: 16393)
[PASS] test_removesLastProvider() (gas: 32653)
[PASS] test_revert_registry_0() (gas: 15558)
[PASS] test_revert_removeNonExistingAddressesProvider() (gas: 27603)
Suite result: ok. 7 passed; 0 failed; 0 skipped; finished in 38.27ms (1.92ms CPU time)

Ran 1 test for tests/template/BaseTest.t.sol:BaseTest
[PASS] test_default() (gas: 245785)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 36.98ms (466.26µs CPU time)

Ran 12 tests for tests/protocol/libraries/logic/BridgeLogic.t.sol:BridgeLogicTests
[PASS] test_backUnbacked_but_unbacked_is_zero_with_fee() (gas: 190752)
[PASS] test_backUnbacked_but_unbacked_is_zero_with_only_fee() (gas: 190810)
[PASS] test_backUnbacked_but_unbacked_is_zero_without_fee() (gas: 156156)
[PASS] test_backUnbacked_onlyFee() (gas: 356414)
[PASS] test_backUnbacked_withFee() (gas: 356594)
[PASS] test_backUnbacked_withoutFee() (gas: 333892)
[PASS] test_multiple_backUnbacked() (gas: 631087)
[PASS] test_multiple_unbackedMint_with_cap() (gas: 478054)
[PASS] test_revert_multiple_unbackedMint_with_cap() (gas: 419371)
[PASS] test_revert_unathorized_unbackedMint() (gas: 30598)
[PASS] test_revert_unbackedMint_zero_cap() (gas: 86100)
[PASS] test_unbackedMint_with_cap() (gas: 265578)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 53.52ms (16.26ms CPU time)

Ran 13 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.eMode.sol:PoolConfiguratorEModeConfigTests
[PASS] test_addAnotherAssetBorrowableInEMode() (gas: 269494)
[PASS] test_addAnotherAssetCollateralInEMode() (gas: 249745)
[PASS] test_configureEmodeCategory() (gas: 119120)
[PASS] test_removeBorrowableFromEmode() (gas: 182460)
[PASS] test_removeCollateralFromEmode() (gas: 223997)
[PASS] test_reverts_setEmodeCategory_lb_lte_percentageFactor() (gas: 59662)
[PASS] test_reverts_setEmodeCategory_liquidation_threshold_doesnt_match_bonus() (gas: 35793)
[PASS] test_reverts_setEmodeCategory_ltv_gt_liqThreshold() (gas: 34377)
[PASS] test_reverts_setEmodeCategory_zero_liqThreshold() (gas: 34249)
[PASS] test_reverts_setEmodeCategory_zero_ltv() (gas: 34162)
[PASS] test_setAssetBorrowableInEMode() (gas: 202372)
[PASS] test_setAssetCollateralInEMode() (gas: 182537)
[PASS] test_updateEModeCategory() (gas: 205647)
Suite result: ok. 13 passed; 0 failed; 0 skipped; finished in 46.09ms (8.14ms CPU time)

Ran 17 tests for tests/extensions/stata-token/ERC20AaveLMUpgradable.t.sol:ERC20AaveLMUpgradableTest
[PASS] test_7201() (gas: 3358)
[PASS] test_claimRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 850546, ~: 814595)
[PASS] test_claimRewardsOnBehalfOf_self(uint256,uint32,uint88,uint32) (runs: 1000, μ: 852810, ~: 814811)
[PASS] test_claimRewardsOnBehalfOf_shouldRevertForInvalidClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 789467, ~: 790778)
[PASS] test_claimRewardsOnBehalfOf_validClaimer(uint256,uint32,uint88,uint32) (runs: 1000, μ: 885903, ~: 847208)
[PASS] test_claimRewardsToSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 851815, ~: 814508)
[PASS] test_claimableRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 790290, ~: 791679)
[PASS] test_collectAndUpdateRewards(uint256,uint32,uint88,uint32) (runs: 1000, μ: 832829, ~: 811133)
[PASS] test_correctAccountingForDelayedRegistration() (gas: 840249)
[PASS] test_getReferenceAsset() (gas: 12908)
[PASS] test_isRegisteredRewardToken() (gas: 651081)
[PASS] test_noRewardsInitialized() (gas: 39241)
[PASS] test_noopWhenNotInitialized() (gas: 53159)
[PASS] test_rewardTokens() (gas: 649222)
[PASS] test_transfer(uint256,uint32,uint88,uint32,address,uint256) (runs: 1000, μ: 864608, ~: 881462)
[PASS] test_transfer_toSelf(uint256,uint32,uint88,uint32) (runs: 1000, μ: 821774, ~: 815443)
[PASS] test_zeroIncentivesController() (gas: 37827)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 25.42s (25.38s CPU time)

Ran 24 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.ACLModifiers.t.sol:PoolConfiguratorACLModifiersTest
[PASS] test_reverts_disableLiquidationGracePeriod_on_unauth(address,address) (runs: 1000, μ: 38594, ~: 38594)
[PASS] test_reverts_notAdmin_dropReserve(address) (runs: 1000, μ: 36181, ~: 36181)
[PASS] test_reverts_notAdmin_initReserves((uint8,string,string,string,string,address,address,address,bool),address) (runs: 1000, μ: 1049402, ~: 1049462)
[PASS] test_reverts_notAdmin_setReserveActive(address) (runs: 1000, μ: 36287, ~: 36287)
[PASS] test_reverts_notAdmin_updateAToken(address) (runs: 1000, μ: 35272, ~: 35272)
[PASS] test_reverts_notAdmin_updateFlashLoanPremiumProtocol(address) (runs: 1000, μ: 34033, ~: 34033)
[PASS] test_reverts_notAdmin_updateFlashLoanPremiumTotal(address) (runs: 1000, μ: 34030, ~: 34030)
[PASS] test_reverts_notAdmin_updateVariableDebtToken(address) (runs: 1000, μ: 35015, ~: 35015)
[PASS] test_reverts_notRiskAdmin_configureReserveAsCollateral(address) (runs: 1000, μ: 38679, ~: 38679)
[PASS] test_reverts_notRiskAdmin_setAssetCollateralInEMode(address) (runs: 1000, μ: 38813, ~: 38813)
[PASS] test_reverts_notRiskAdmin_setBorrowCap(address) (runs: 1000, μ: 38605, ~: 38605)
[PASS] test_reverts_notRiskAdmin_setEModeCategory(address) (runs: 1000, μ: 39132, ~: 39132)
[PASS] test_reverts_notRiskAdmin_setReserveBorrowing(address) (runs: 1000, μ: 38645, ~: 38645)
[PASS] test_reverts_notRiskAdmin_setReserveFactor(address) (runs: 1000, μ: 38606, ~: 38606)
[PASS] test_reverts_notRiskAdmin_setReserveInterestRateData(address,address) (runs: 1000, μ: 39368, ~: 39368)
[PASS] test_reverts_notRiskAdmin_setReserveInterestRateStrategyAddress(address) (runs: 1000, μ: 39276, ~: 39276)
[PASS] test_reverts_notRiskAdmin_setSupplyCap(address) (runs: 1000, μ: 38517, ~: 38517)
[PASS] test_reverts_notRiskOrPoolOrEmergencyAdmin_setReserveFreeze(address) (runs: 1000, μ: 43151, ~: 43151)
[PASS] test_reverts_setDebtCeiling(address) (runs: 1000, μ: 38629, ~: 38629)
[PASS] test_reverts_setPoolPause_noGracePeriod_unauth(address,bool) (runs: 1000, μ: 38557, ~: 38557)
[PASS] test_reverts_setPoolPause_unauth(address,bool,uint40) (runs: 1000, μ: 56180, ~: 56180)
[PASS] test_reverts_setReservePause_noGracePeriod_off_unauth(address,address,bool) (runs: 1000, μ: 38851, ~: 38851)
[PASS] test_reverts_setReservePause_off_unauth(address,address,bool,uint40) (runs: 1000, μ: 39016, ~: 39016)
[PASS] test_reverts_setReservePause_on_unauth(address,address,bool,uint40) (runs: 1000, μ: 38993, ~: 38993)
Suite result: ok. 24 passed; 0 failed; 0 skipped; finished in 4.02s (3.98s CPU time)

Ran 10 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.borrowCaps.t.sol:PoolConfiguratorBorrowCapTests
[PASS] test_borrow_eq_cap() (gas: 311493)
[PASS] test_borrow_interests_reach_cap() (gas: 313541)
[PASS] test_borrow_lt_cap() (gas: 299263)
[PASS] test_default_borrowCap_zero() (gas: 27547)
[PASS] test_reverts_borrow_after_borrow_interests_reach_cap() (gas: 359964)
[PASS] test_reverts_borrow_gt_cap() (gas: 142508)
[PASS] test_reverts_setBorrowCap_gt_max_cap() (gas: 48711)
[PASS] test_reverts_unauthorized_setBorrowCap() (gas: 35517)
[PASS] test_setBorrowCap() (gas: 76727)
[PASS] test_setBorrowCap_them_setBorrowCap_zero() (gas: 319830)
Suite result: ok. 10 passed; 0 failed; 0 skipped; finished in 44.19ms (6.33ms CPU time)

Ran 12 tests for tests/protocol/libraries/math/WadRayMath.t.sol:WadRayMathTests
[PASS] test_constants() (gas: 13279)
[PASS] test_rayDiv() (gas: 12752)
[PASS] test_rayMul() (gas: 11375)
[PASS] test_rayToWad() (gas: 11057)
[PASS] test_rayToWad_fuzz(uint256) (runs: 1000, μ: 13328, ~: 13278)
[PASS] test_wadDiv() (gas: 12873)
[PASS] test_wadDiv_fuzzing(uint256,uint256) (runs: 1000, μ: 10520, ~: 10723)
[PASS] test_wadMul() (gas: 11145)
[PASS] test_wadMul_edge() (gas: 11187)
[PASS] test_wadMul_fuzzing(uint256,uint256) (runs: 1000, μ: 10757, ~: 11341)
[PASS] test_wadToRay() (gas: 10867)
[PASS] test_wadToRay_fuzz(uint256) (runs: 1000, μ: 12119, ~: 12349)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 257.91ms (256.71ms CPU time)

Ran 14 tests for tests/helpers/WrappedTokenGateway.t.sol:WrappedTokenGatewayTests
[PASS] test_borrowDelegateApprove_repay() (gas: 468475)
[PASS] test_borrowVariableDebtWeth_repayWithEth() (gas: 798543)
[PASS] test_borrowVariableDebtWeth_repayWithEth_mismatchedValues() (gas: 795211)
[PASS] test_depositNativeEthInPool() (gas: 256038)
[PASS] test_fallback_revert() (gas: 10061)
[PASS] test_getWETHAddress() (gas: 10592)
[PASS] test_ownerCanRescueEth() (gas: 25228)
[PASS] test_ownerCanRescueTokens() (gas: 96943)
[PASS] test_sendEthFallback_revert() (gas: 16727)
[PASS] test_sendEth_revert() (gas: 16582)
[PASS] test_withdrawEth_full() (gas: 383329)
[PASS] test_withdrawEth_partial() (gas: 402917)
[PASS] test_withdrawEth_permit() (gas: 437223)
[PASS] test_withdrawEth_permit_full() (gas: 413942)
Suite result: ok. 14 passed; 0 failed; 0 skipped; finished in 46.40ms (12.36ms CPU time)

Ran 1 test for tests/gas/WrappedTokenGatewayV3.gas.t.sol:WrappedTokenGatewayV3_gas_Tests
[PASS] test_flow() (gas: 617108)
Suite result: ok. 1 passed; 0 failed; 0 skipped; finished in 42.16ms (2.47ms CPU time)

Ran 18 tests for tests/protocol/tokenization/VariableDebtToken.t.sol:VariableDebtTokenEventsTests
[PASS] test_balanceOf() (gas: 242104)
[PASS] test_cancel_delegationWithSig() (gas: 101800)
[PASS] test_delegationWithSig() (gas: 95276)
[PASS] test_initialize_VariableDebtToken((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2740061, ~: 2738918)
[PASS] test_mint_variableDebt_caller_alice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2812890, ~: 2811078)
[PASS] test_mint_variableDebt_caller_bob_onBehalf_alice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2827074, ~: 2825297)
[PASS] test_new_VariableDebtToken_implementation() (gas: 1573043)
[PASS] test_partial_burn_variableDebt((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2825050, ~: 2825323)
[PASS] test_reverts_bad_expiration_delegationWithSig() (gas: 34223)
[PASS] test_reverts_bad_nonce_delegationWithSig() (gas: 111067)
[PASS] test_reverts_initialize_pool_do_not_match((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2626133, ~: 2626276)
[PASS] test_reverts_initialize_twice((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 3678174, ~: 3676488)
[PASS] test_reverts_operation_not_supported() (gas: 1591646)
[PASS] test_reverts_zero_address_delegationWithSig() (gas: 33532)
[PASS] test_scaledBalanceOf() (gas: 321886)
[PASS] test_totalScaledSupply() (gas: 360543)
[PASS] test_totalSupply() (gas: 360472)
[PASS] test_total_burn_variableDebt((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2826347, ~: 2825314)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 6.66s (6.62s CPU time)

Ran 6 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.upgradeabilty.t.sol:PoolConfiguratorUpgradeabilityTests
[PASS] test_getConfiguratorLogic() (gas: 13610)
[PASS] test_interestRateStrategy_update() (gas: 1851642)
[PASS] test_setReserveInterestRateData() (gas: 152244)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 1008600)
[PASS] test_updateAToken() (gas: 2284870)
[PASS] test_updateVariableDebtToken() (gas: 1682058)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 48.86ms (5.20ms CPU time)

Ran 3 tests for tests/protocol/libraries/logic/PoolLogic.initReserves.edge.t.sol:PoolLogicInitReservesTests
[PASS] test_initReserves_return_false_after_dropped_reserve() (gas: 680432)
[PASS] test_reverts_initReserves_max() (gas: 196981)
[PASS] test_reverts_initReserves_reserveAlreadyAdded() (gas: 220386)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 38.22ms (1.06ms CPU time)

Ran 11 tests for tests/misc/PriceOracleSentinel.t.sol:PriceOracleSentinelTest
[PASS] test_isBorrowAllowed_network_down() (gas: 27223)
[PASS] test_isBorrowAllowed_network_up_not_grace_period() (gas: 46925)
[PASS] test_isBorrowAllowed_true_network_up_grace_period_pass() (gas: 46979)
[PASS] test_isLiquidationAllowed_network_down() (gas: 27134)
[PASS] test_isLiquidationAllowed_network_up_not_grace_period() (gas: 46902)
[PASS] test_isLiquidationAllowed_true_network_up_grace_period_pass() (gas: 47000)
[PASS] test_new_PriceOracleSentinel() (gas: 423531)
[PASS] test_reverts_setGracePeriod_not_poolAdmin() (gas: 25829)
[PASS] test_reverts_setSequencerOracle_not_poolAdmin() (gas: 22737)
[PASS] test_setGracePeriod() (gas: 32496)
[PASS] test_setSequencerOracle() (gas: 24631)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 41.75ms (1.30ms CPU time)

Ran 11 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.supplyCaps.t.sol:PoolConfiguratorSupplyCapTests
[PASS] test_default_supplyCap_zero() (gas: 27525)
[PASS] test_multiple_setSupplyCap() (gas: 369124)
[PASS] test_reverts_interests_gt_cap_and_supply() (gas: 477618)
[PASS] test_reverts_setSupplyCap_gt_max_cap() (gas: 48667)
[PASS] test_reverts_supply_gt_cap() (gas: 122598)
[PASS] test_reverts_unauthorized_setSupplyCap() (gas: 35454)
[PASS] test_setSupplyCap() (gas: 76762)
[PASS] test_setSupplyCap_them_setBorrowCap_zero() (gas: 316749)
[PASS] test_supply_eq_cap() (gas: 298070)
[PASS] test_supply_interests_reach_cap() (gas: 439022)
[PASS] test_supply_lt_cap() (gas: 298071)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 44.91ms (7.31ms CPU time)

Ran 4 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.liquidationFee.t.sol:PoolConfiguratorLiquidationFeeTests
[PASS] test_revert_setLiquidationFee_gt_100() (gas: 59237)
[PASS] test_revert_setLiquidationFee_unauthorized() (gas: 59105)
[PASS] test_setLiquidationFee() (gas: 76574)
[PASS] test_setLiquidationFee_100() (gas: 76530)
Suite result: ok. 4 passed; 0 failed; 0 skipped; finished in 39.73ms (1.10ms CPU time)

Ran 3 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.pendingLTV.t.sol:PoolConfiguratorPendingLtvTests
[PASS] test_freezeReserve_ltvSetTo0() (gas: 105716)
[PASS] test_setLtv_ltvSetPendingLtvSet(uint256,uint256) (runs: 1000, μ: 141430, ~: 141430)
[PASS] test_unfreezeReserve_pendingSetToLtv() (gas: 106979)
Suite result: ok. 3 passed; 0 failed; 0 skipped; finished in 1.25s (1.21s CPU time)

Ran 5 tests for tests/protocol/libraries/math/PercentageMath.t.sol:PercentageMathTests
[PASS] test_constants() (gas: 10165)
[PASS] test_percentDiv() (gas: 11147)
[PASS] test_percentDiv_fuzz(uint256,uint256) (runs: 1000, μ: 10587, ~: 10678)
[PASS] test_percentMul() (gas: 11154)
[PASS] test_percentMul_fuzz(uint256,uint256) (runs: 1000, μ: 10647, ~: 11209)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 112.40ms (111.22ms CPU time)

Ran 18 tests for tests/protocol/pool/Pool.Borrow.t.sol:PoolBorrowTests
[PASS] test_borrow_variable_in_isolation() (gas: 556781)
[PASS] test_reverts_borrow_cap() (gas: 303525)
[PASS] test_reverts_borrow_collateral_balance_zero() (gas: 81484)
[PASS] test_reverts_borrow_collateral_can_not_cover() (gas: 315212)
[PASS] test_reverts_borrow_debt_ceiling() (gas: 649154)
[PASS] test_reverts_borrow_debt_ceiling_exceeded() (gas: 390265)
[PASS] test_reverts_borrow_hf_lt_1() (gas: 563166)
[PASS] test_reverts_borrow_inconsistent_emode_category() (gas: 429768)
[PASS] test_reverts_borrow_invalidAmount() (gas: 64941)
[PASS] test_reverts_borrow_not_borrowable_isolation() (gas: 374498)
[PASS] test_reverts_borrow_reserveFrozen() (gas: 132863)
[PASS] test_reverts_borrow_reserveInactive() (gas: 140844)
[PASS] test_reverts_borrow_reservePaused() (gas: 103564)
[PASS] test_reverts_borrow_sentinel_oracle_down() (gas: 315651)
[PASS] test_reverts_borrow_sioled_borrowing_violation() (gas: 707966)
[PASS] test_reverts_deprecated_stable_borrow() (gas: 406653)
[PASS] test_reverts_variable_borrow_transferred_funds() (gas: 381059)
[PASS] test_variable_borrow() (gas: 346821)
Suite result: ok. 18 passed; 0 failed; 0 skipped; finished in 57.63ms (16.59ms CPU time)

Ran 44 tests for tests/protocol/pool/pool-configurator/PoolConfigurator.reserveRiskConfig.t.sol:PoolConfiguratorReserveRiskConfigs
[PASS] test_EmergencyAdminSetReserveFreeze_true() (gas: 134948)
[PASS] test_PoolAdminSetReserveFreeze_true() (gas: 99213)
[PASS] test_RiskAdminSetReserveFreeze_true() (gas: 128637)
[PASS] test_bridgeProtocolFee() (gas: 73193)
[PASS] test_disableLiquidationGracePeriod() (gas: 78005)
[PASS] test_dropReserve() (gas: 148570)
[PASS] test_enableBorrowing((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2629876, ~: 2628461)
[PASS] test_enableFlashBorrow((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2620498, ~: 2619265)
[PASS] test_reverts_bridgeProtocolFee() (gas: 30151)
[PASS] test_reverts_dropReserve_notListed() (gas: 53404)
[PASS] test_reverts_dropReserve_supplyNotZero() (gas: 300232)
[PASS] test_reverts_dropReserve_variableDebtNotZero() (gas: 459538)
[PASS] test_reverts_dropReserve_zeroAddress() (gas: 47308)
[PASS] test_reverts_setCollateralConfig_invalidParams((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2860678, ~: 2860886)
[PASS] test_reverts_setDebtCeiling_suppliers() (gas: 287295)
[PASS] test_reverts_setLiquidationProtocolFee_amount_gt_percentageFactor() (gas: 35632)
[PASS] test_reverts_setReserveActive_false_if_suppliers() (gas: 282164)
[PASS] test_reverts_setReserveFactor_gt_percentageFactor() (gas: 35651)
[PASS] test_reverts_setSiloedBorrowing_borrowers() (gas: 407073)
[PASS] test_reverts_updateFlashloanPremiumToProtocol() (gas: 30267)
[PASS] test_reverts_updateFlashloanPremiumTotal() (gas: 30287)
[PASS] test_setBorrowableInIsolation_false() (gas: 62901)
[PASS] test_setBorrowableInIsolation_true() (gas: 65718)
[PASS] test_setCollateralConfig((uint8,string,string,string,string,address,address,address,bool)) (runs: 1000, μ: 2608737, ~: 2606071)
[PASS] test_setDebtCeiling() (gas: 113540)
[PASS] test_setDebtCeiling_suppliers_ltZero() (gas: 288265)
[PASS] test_setDebtCeiling_to_zero() (gas: 138288)
[PASS] test_setFrozenReserveFreeze_true_revert() (gas: 106040)
[PASS] test_setLiquidationGracePeriodAboveCap(uint40) (runs: 1000, μ: 34809, ~: 34809)
[PASS] test_setLiquidationGracePeriodPool(uint40) (runs: 1000, μ: 164917, ~: 168408)
[PASS] test_setLiquidationGracePeriodReserve(uint40) (runs: 1000, μ: 135427, ~: 135748)
[PASS] test_setLiquidationProtocolFee_amount_gt_percentageFactor() (gas: 72726)
[PASS] test_setPoolPause() (gas: 166228)
[PASS] test_setPoolPause_unpause() (gas: 239908)
[PASS] test_setReserveActive_false() (gas: 110807)
[PASS] test_setReserveActive_true() (gas: 67150)
[PASS] test_setReserveFactor() (gas: 993558)
[PASS] test_setReserveFreeze_false() (gas: 98602)
[PASS] test_setReservePause_false() (gas: 66523)
[PASS] test_setReservePause_true() (gas: 69278)
[PASS] test_setSiloedBorrowing() (gas: 97847)
[PASS] test_setUnfrozenReserveFreeze_false_revert() (gas: 48826)
[PASS] test_updateFlashloanPremiumToProtocol() (gas: 58239)
[PASS] test_updateFlashloanPremiumTotal() (gas: 58131)
Suite result: ok. 44 passed; 0 failed; 0 skipped; finished in 8.21s (8.18s CPU time)

Ran 17 tests for tests/protocol/pool/Pool.FlashLoans.t.sol:PoolFlashLoansTests
[PASS] test_flashloan() (gas: 215962)
[PASS] test_flashloan_borrow() (gas: 529549)
[PASS] test_flashloan_multiple() (gas: 329079)
[PASS] test_flashloan_simple() (gas: 180028)
[PASS] test_flashloan_simple_2() (gas: 180028)
[PASS] test_revert_flashloan_borrow_stable() (gas: 212742)
[PASS] test_reverts_flashLoan_invalid_return() (gas: 183648)
[PASS] test_reverts_flashLoan_reserve_inactive() (gas: 147683)
[PASS] test_reverts_flashLoan_reserve_not_flash_loan_enabled() (gas: 103412)
[PASS] test_reverts_flashLoan_reserve_paused() (gas: 100163)
[PASS] test_reverts_flashLoan_same_asset_more_then_once(uint8) (runs: 1000, μ: 178165, ~: 144330)
[PASS] test_reverts_flashLoan_simple_invalid_return() (gas: 144668)
[PASS] test_reverts_flashloan_simple_transferred_funds() (gas: 169198)
[PASS] test_reverts_flashloan_transferred_funds() (gas: 199548)
[PASS] test_reverts_flashloans_eoa() (gas: 113225)
[PASS] test_reverts_supply_flashloan_simple_transfer_withdraw() (gas: 848297)
[PASS] test_reverts_supply_flashloan_transfer_withdraw() (gas: 880858)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 1.57s (1.53s CPU time)

Ran 12 tests for tests/gas/Pool.Getters.gas.t.sol:PoolGetters_gas_Tests
[PASS] test_getEModeCategoryCollateralConfig() (gas: 16650)
[PASS] test_getEModeCategoryData() (gas: 20458)
[PASS] test_getLiquidationGracePeriod() (gas: 18160)
[PASS] test_getReserveData() (gas: 44283)
[PASS] test_getUserAccountData() (gas: 33160)
[PASS] test_getUserAccountData_oneSupplies() (gas: 371733)
[PASS] test_getUserAccountData_oneSupplies_with_eMode_enabled() (gas: 490209)
[PASS] test_getUserAccountData_twoSupplies() (gas: 690867)
[PASS] test_getUserAccountData_twoSupplies_oneBorrows() (gas: 1108610)
[PASS] test_getUserAccountData_twoSupplies_oneBorrows_with_eMode_enabled() (gas: 1272113)
[PASS] test_getUserAccountData_twoSupplies_with_eMode_enabled() (gas: 819134)
[PASS] test_getUserAccountData_with_eMode_enabled() (gas: 149667)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 60.34ms (20.62ms CPU time)

Ran 11 tests for tests/protocol/pool/Pool.Liquidations.CloseFactor.t.sol:PoolLiquidationCloseFactorTests
[PASS] test_fuzz_hf_gt_095_supply_gt_threshold_closeFactorShouldBe50(uint256,uint256) (runs: 1000, μ: 867497, ~: 867548)
[PASS] test_fuzz_hf_gt_095_supply_lt_threshold_closeFactorShouldBe100(uint256,uint256) (runs: 1000, μ: 832840, ~: 832894)
[PASS] test_fuzz_hf_lte_095_supply_gt_threshold_closeFactorShouldBe100(uint256,uint256) (runs: 1000, μ: 830043, ~: 832844)
[PASS] test_hf_gt_095_borrow_gt_threshold_collateral_lt_threshold_closeFactorShouldBe100() (gas: 1092026)
[PASS] test_hf_gt_095_supply_gt_threshold_closeFactorShouldBe50() (gas: 866158)
Logs:
  Bound result 100000000000000000000
  Bound result 970000000000000000

[PASS] test_hf_gt_095_supply_lt_threshold_closeFactorShouldBe100() (gas: 831415)
Logs:
  Bound result 500000000000000000
  Bound result 970000000000000000

[PASS] test_hf_helper(uint256) (runs: 1000, μ: 556580, ~: 556611)
[PASS] test_hf_lte_095_supply_gt_threshold_closeFactorShouldBe100() (gas: 831546)
Logs:
  Bound result 100000000000000000000
  Bound result 940000000000000000

[PASS] test_liquidationdataprovider_edge_range() (gas: 1002540)
[PASS] test_liquidationdataprovider_edge_range_reverse() (gas: 1060385)
[PASS] test_shouldRevertIfCloseFactorIs100ButCollateralIsBelowThreshold() (gas: 833704)
Suite result: ok. 11 passed; 0 failed; 0 skipped; finished in 15.86s (15.82s CPU time)

Ran 28 tests for tests/extensions/stata-token/ERC4626StataTokenUpgradeable.t.sol:ERC4626StataTokenUpgradeableTest
[PASS] test_7201() (gas: 3469)
[PASS] test_convertersAndPreviews(uint128) (runs: 1000, μ: 43329, ~: 43329)
[PASS] test_depositATokens(uint128,uint256,address) (runs: 1000, μ: 531231, ~: 531603)
[PASS] test_depositATokens_self() (gas: 531707)
Logs:
  Bound result 1000000000000000000
  Bound result 1000000000000000000

[PASS] test_depositWithPermit_aToken(uint128,uint256,address) (runs: 1000, μ: 566065, ~: 566576)
[PASS] test_depositWithPermit_emptyPermit_aToken_preApproval(uint128,uint256,address) (runs: 1000, μ: 537888, ~: 538379)
[PASS] test_depositWithPermit_emptyPermit_underlying_preApproval(uint128,uint256,address) (runs: 1000, μ: 476675, ~: 476544)
[PASS] test_depositWithPermit_shouldRevert_emptyPermit_noPreApproval(uint128) (runs: 1000, μ: 403836, ~: 403733)
[PASS] test_depositWithPermit_underlying(uint128,uint256,address) (runs: 1000, μ: 497901, ~: 497784)
[PASS] test_deposit_shouldRevert_insufficientAllowance(uint128) (runs: 1000, μ: 394702, ~: 394602)
[PASS] test_latestAnswer_priceShouldBeEqualOnDefaultIndex() (gas: 37222)
[PASS] test_latestAnswer_priceShouldReflectIndexAccrual(uint256) (runs: 1000, μ: 42171, ~: 42197)
[PASS] test_maxDeposit_cap(uint256) (runs: 1000, μ: 110061, ~: 110001)
[PASS] test_maxDeposit_freeze() (gas: 116746)
[PASS] test_maxDeposit_noCap() (gas: 98267)
[PASS] test_maxDeposit_paused() (gas: 90020)
[PASS] test_maxRedeem_inSufficientAvailableLiquidity(uint256) (runs: 1000, μ: 990431, ~: 990564)
[PASS] test_maxRedeem_paused(uint128) (runs: 1000, μ: 554971, ~: 554871)
[PASS] test_maxRedeem_sufficientAvailableLiquidity(uint128) (runs: 1000, μ: 526718, ~: 526627)
[PASS] test_mint(uint256,address) (runs: 1000, μ: 464879, ~: 464704)
[PASS] test_mint_shouldRevert_mintMoreThenBalance(uint256,address) (runs: 1000, μ: 255913, ~: 255740)
[PASS] test_redeem(uint256,address) (runs: 1000, μ: 586383, ~: 586213)
[PASS] test_redeemATokens(uint256,address) (runs: 1000, μ: 593602, ~: 593430)
[PASS] test_redeemATokens_onBehalf(uint256) (runs: 1000, μ: 614111, ~: 613920)
[PASS] test_redeemATokens_onBehalf_shouldRevert_insufficientAllowance(uint256,uint256) (runs: 1000, μ: 545627, ~: 546245)
[PASS] test_totalAssets_shouldbeZeroOnZeroSupply() (gas: 26046)
[PASS] test_withdraw(uint256,address) (runs: 1000, μ: 590179, ~: 590011)
[PASS] test_withdraw_shouldRevert_moreThenAvailable(uint256,address) (runs: 1000, μ: 530914, ~: 530756)
Suite result: ok. 28 passed; 0 failed; 0 skipped; finished in 35.17s (35.13s CPU time)

Ran 9 tests for tests/rewards/EmissionsManager.t.sol:EmissionManagerTest
[PASS] test_configureAssets() (gas: 598376)
[PASS] test_new_EmissionManager() (gas: 758986)
[PASS] test_setClaimer() (gas: 51471)
[PASS] test_setDistributionEnd() (gas: 605645)
[PASS] test_setEmissionAdmin() (gas: 43012)
[PASS] test_setEmissionPerSecond() (gas: 612259)
[PASS] test_setRewardOracle() (gas: 687392)
[PASS] test_setRewardsController() (gas: 19086)
[PASS] test_setTransferStrategy() (gas: 888963)
Suite result: ok. 9 passed; 0 failed; 0 skipped; finished in 40.44ms (2.36ms CPU time)

Ran 6 tests for tests/misc/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.t.sol:InitializableImmutableAdminUpgradeabilityProxyTests
[PASS] test_proxy_fallback() (gas: 597827)
[PASS] test_proxy_upgradeTo() (gas: 619698)
[PASS] test_proxy_upgradeToAndCall() (gas: 625582)
[PASS] test_proxy_upgradeToAndCall_initialize() (gas: 594923)
[PASS] test_reverts_upgradeToAndCall_notAdmin() (gas: 600810)
[PASS] test_reverts_upgradeTo_notAdmin() (gas: 598616)
Suite result: ok. 6 passed; 0 failed; 0 skipped; finished in 3.63ms (2.16ms CPU time)

Ran 47 tests for tests/protocol/pool/L2Pool.t.sol:L2PoolTests
[PASS] test_dropReserve() (gas: 98864)
[PASS] test_getBorrowLogic() (gas: 13620)
[PASS] test_getBridgeLogic() (gas: 13706)
[PASS] test_getEModeLogic() (gas: 13708)
[PASS] test_getFlashLoanLogic() (gas: 13685)
[PASS] test_getLiquidationLogic() (gas: 13685)
[PASS] test_getPoolLogic() (gas: 13706)
[PASS] test_getSupplyLogic() (gas: 13683)
[PASS] test_getVirtualUnderlyingBalance() (gas: 244672)
[PASS] test_getters_getUserAccountData() (gas: 598456)
[PASS] test_l2_borrow() (gas: 432414)
[PASS] test_l2_liquidationCall() (gas: 1091952)
[PASS] test_l2_partial_withdraw() (gas: 307375)
[PASS] test_l2_repay() (gas: 461025)
[PASS] test_l2_repay_atokens() (gas: 468685)
[PASS] test_l2_repay_permit(uint128,uint128,uint128,uint128,uint128) (runs: 1000, μ: 639180, ~: 636751)
[PASS] test_l2_set_user_collateral() (gas: 267056)
[PASS] test_l2_supply() (gas: 250760)
[PASS] test_l2_supply_permit(uint128,uint128) (runs: 1000, μ: 426390, ~: 426390)
[PASS] test_l2_withdraw() (gas: 243292)
[PASS] test_mintToTreasury() (gas: 693679)
[PASS] test_mintToTreasury_skip_invalid_addresses() (gas: 698305)
[PASS] test_noop_setUserUseReserveAsCollateral_true_when_already_is_activated() (gas: 290835)
[PASS] test_pool_defaultValues() (gas: 4370448)
[PASS] test_rescueTokens(uint256) (runs: 1000, μ: 81915, ~: 82198)
[PASS] test_resetIsolationModeTotalDebt() (gas: 721884)
[PASS] test_reverts_initReserve_not_poolConfigurator(address) (runs: 1000, μ: 25515, ~: 25515)
[PASS] test_reverts_modifiers_not_poolConfigurator(address) (runs: 1000, μ: 127035, ~: 127035)
[PASS] test_reverts_new_Pool_invalidAddressesProvider() (gas: 4382496)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_AssetNotListed(address,address) (runs: 1000, μ: 44327, ~: 44327)
[PASS] test_reverts_setReserveInterestRateStrategyAddress_ZeroAssetAddress(address) (runs: 1000, μ: 22733, ~: 22733)
[PASS] test_reverts_setUserEmode_0_bad_hf() (gas: 977910)
[PASS] test_reverts_setUserUseReserveAsCollateral_false_hf_lower_lqt() (gas: 600539)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_ltv_zero() (gas: 296738)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_inactive() (gas: 212016)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_reserve_paused() (gas: 291598)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_balance_zero() (gas: 71869)
[PASS] test_reverts_setUserUseReserveAsCollateral_true_user_isolation_mode() (gas: 778678)
[PASS] test_setLiquidationGracePeriod(uint40) (runs: 1000, μ: 34662, ~: 34746)
[PASS] test_setLiquidationGracePeriod_assetNotListed(uint40) (runs: 1000, μ: 27115, ~: 27115)
[PASS] test_setReserveInterestRateStrategyAddress() (gas: 899536)
[PASS] test_setUserEmode() (gas: 227668)
[PASS] test_setUserEmode_twice() (gas: 358158)
[PASS] test_setUserEmode_twice_inconsistent_category() (gas: 968439)
[PASS] test_setUserUseReserveAsCollateral_false() (gas: 240307)
[PASS] test_setUserUseReserveAsCollateral_true() (gas: 277892)
[PASS] test_updateBridgeProtocolFee() (gas: 187)
Suite result: ok. 47 passed; 0 failed; 0 skipped; finished in 6.67s (6.64s CPU time)

Ran 5 tests for tests/protocol/libraries/math/MathUtils.t.sol:MathUtilsTests
[PASS] test_calculateCompoundInterest_1() (gas: 10340)
[PASS] test_calculateCompoundInterest_2() (gas: 10337)
[PASS] test_calculateCompoundInterest_edge() (gas: 9166)
[PASS] test_calculateLinearInterest() (gas: 9211)
[PASS] test_constants() (gas: 8334)
Suite result: ok. 5 passed; 0 failed; 0 skipped; finished in 6.35ms (225.67µs CPU time)

Ran 17 tests for tests/extensions/paraswap-adapters/ParaswapAdapters.t.sol:ParaswapAdaptersTest
[PASS] test_rescueTokens() (gas: 203341)
[PASS] test_reverts_offset_out_of_range_swap_liquidity_permit_flashloan() (gas: 744799)
[PASS] test_reverts_swapAndDeposit_offset() (gas: 815906)
[PASS] test_reverts_swapAndRepay_offset_out_of_range() (gas: 913137)
[PASS] test_reverts_withdrawAndSwap_offset_out_of_range() (gas: 795909)
[PASS] test_swapAndDeposit() (gas: 897759)
[PASS] test_swapAndDeposit_permit() (gas: 944788)
[PASS] test_swapAndRepay() (gas: 993324)
[PASS] test_swapAndRepay_flashloan() (gas: 1082357)
[PASS] test_swapAndRepay_flashloan_permit() (gas: 1124988)
[PASS] test_swapAndRepay_no_collateral_leftovers() (gas: 1042810)
[PASS] test_swapAndRepay_permit() (gas: 1040201)
[PASS] test_swap_liquidity_flashloan() (gas: 1008621)
[PASS] test_swap_liquidity_permit_flashloan() (gas: 1051145)
[PASS] test_withdrawAndSwap() (gas: 814811)
[PASS] test_withdrawAndSwap_permit() (gas: 857912)
[PASS] test_withdrawSwapAdapter_reverts_flashloan() (gas: 532838)
Suite result: ok. 17 passed; 0 failed; 0 skipped; finished in 81.47ms (43.05ms CPU time)

Ran 12 tests for tests/gas/Pool.Operations.gas.t.sol:PoolOperations_gas_Tests
[PASS] test_borrow() (gas: 626234)
[PASS] test_liquidationCall_deficit() (gas: 868984)
[PASS] test_liquidationCall_deficitInAdditionalReserve() (gas: 1095113)
[PASS] test_liquidationCall_full() (gas: 869117)
[PASS] test_liquidationCall_partial() (gas: 865870)
[PASS] test_liquidationCall_receive_ATokens_full() (gas: 885286)
[PASS] test_liquidationCall_receive_ATokens_partial() (gas: 878666)
[PASS] test_repay() (gas: 790470)
[PASS] test_repay_with_ATokens() (gas: 643065)
[PASS] test_supply() (gas: 1115124)
[PASS] test_withdraw() (gas: 439448)
[PASS] test_withdraw_with_active_borrows() (gas: 624234)
Suite result: ok. 12 passed; 0 failed; 0 skipped; finished in 85.56ms (43.73ms CPU time)

Ran 26 tests for tests/protocol/pool/Pool.Liquidations.t.sol:PoolLiquidationTests
[PASS] test_deficit_increased_after_liquidate_bad_debt() (gas: 821269)
[PASS] test_full_liquidate_atokens_multiple_variable_borrows() (gas: 957732)
[PASS] test_full_liquidate_multiple_supplies_and_variable_borrows() (gas: 1156146)
[PASS] test_full_liquidate_multiple_variable_borrows() (gas: 1017422)
[PASS] test_liquidate_borrow_bad_debt() (gas: 834573)
[PASS] test_liquidate_borrow_burn_multiple_assets_bad_debt() (gas: 1199751)
[PASS] test_liquidate_emode_position_without_emode_oracle() (gas: 1048119)
[PASS] test_liquidate_isolated_position() (gas: 905519)
[PASS] test_liquidate_variable_borrow_no_fee() (gas: 843674)
[PASS] test_liquidate_variable_borrow_repro() (gas: 1061374)
[PASS] test_liquidate_variable_borrow_same_collateral_and_borrow() (gas: 696830)
[PASS] test_liquidation_when_grace_period_disabled(uint40) (runs: 1000, μ: 884964, ~: 885285)
[PASS] test_liquidation_with_liquidation_grace_period_collateral_active(uint40) (runs: 1000, μ: 1098973, ~: 1102872)
[PASS] test_liquidation_with_liquidation_grace_period_debt_active(uint40) (runs: 1000, μ: 1094640, ~: 1099690)
[PASS] test_liquidation_with_liquidation_grace_period_debt_collateral_active(uint40) (runs: 1000, μ: 1113099, ~: 1117353)
[PASS] test_partial_liquidate_atokens_variable_borrow() (gas: 894530)
[PASS] test_partial_liquidate_variable_borrow() (gas: 846841)
[PASS] test_reverts_liquidation_collateral_not_active() (gas: 640895)
[PASS] test_reverts_liquidation_hf_gt_liquidation_threshold() (gas: 465138)
[PASS] test_reverts_liquidation_invalid_borrow() (gas: 605005)
[PASS] test_reverts_liquidation_oracle_sentinel_on() (gas: 337410)
[PASS] test_reverts_liquidation_reserveInactive() (gas: 169134)
[PASS] test_reverts_liquidation_reservePaused() (gas: 134538)
[PASS] test_self_liquidate_isolated_position_shoulDisableCollateral() (gas: 855709)
[PASS] test_self_liquidate_isolated_position_shoulEnableCollateralIfIsolatedSupplier() (gas: 907942)
[PASS] test_self_liquidate_position_shoulKeepCollateralEnabled() (gas: 785354)
Suite result: ok. 26 passed; 0 failed; 0 skipped; finished in 21.86s (21.81s CPU time)

Ran 9 tests for tests/protocol/pool/Pool.Deficit.sol:PoolDeficitTests
[PASS] test_eliminateReserveDeficit_exactDeficit(address,uint120) (runs: 1000, μ: 1542400, ~: 1542577)
[PASS] test_eliminateReserveDeficit_fullUserBalance(address,uint120) (runs: 1000, μ: 1545421, ~: 1545609)
[PASS] test_eliminateReserveDeficit_parcial(address,uint120,uint120) (runs: 1000, μ: 1531628, ~: 1531735)
[PASS] test_eliminateReserveDeficit_surplus(address,uint120) (runs: 1000, μ: 1540696, ~: 1540865)
[PASS] test_interestRate() (gas: 1518572)
Logs:
  Bound result 500000000000000000000000

[PASS] test_reverts_eliminateReserveDeficit_has_borrows(address,uint120,uint120) (runs: 1000, μ: 1609021, ~: 1608908)
[PASS] test_reverts_eliminateReserveDeficit_invalid_amount(address,uint120) (runs: 1000, μ: 1231114, ~: 1231275)
[PASS] test_reverts_eliminateReserveDeficit_invalid_caller(address,uint120) (ru...*[Comment body truncated]*

Copy link

github-actions bot commented Jan 8, 2025

Gas report

TransparentUpgradeableProxy

  • size: 2434 / 49152
Method min mean median max calls
fallback() 789 ↑24%585408 31396 ↑27%2488734 96

WETH9

  • size: 2354 / 49152
Method min mean median max calls
approve(address,uint256) 29004 46426 46464 46464 ↑2.4%1690
balanceOf(address) 538 ↑0.11%940 538 2538 ↑3.2%8574
decimals() ↓-87%312 ↓-0.82%2293 2312 2312 ↑7.2%774

ParaSwapLiquiditySwapAdapter

  • size: ↓-4.8%9465 / 49152
Method min mean median max calls
swapAndDeposit(address,address,uint256,uint256,uint256,bytes,address,(uint256,uint256,uint8,bytes32,bytes32)) ↓-3%344012 ↓-2.1%436210 ↓-1.8%468852 ↓-1.7%495766 3

ParaSwapRepayAdapter

  • size: ↓-4.6%10135 / 49152
Method min mean median max calls
swapAndRepay(address,address,uint256,uint256,uint256,uint256,bytes,(uint256,uint256,uint8,bytes32,bytes32)) ↓-6.7%376936 ↓-3.9%492489 ↓-3.2%521594 ↓-3.1%549832 4

ParaSwapWithdrawSwapAdapter

  • size: ↓-7.5%7905 / 49152
Method min mean median max calls
withdrawAndSwap(address,address,uint256,uint256,uint256,bytes,address,(uint256,uint256,uint8,bytes32,bytes32)) ↓-3%343960 ↓-2.5%371313 ↓-2.3%364688 ↓-2.1%405292 3

StataTokenFactory

  • size: ↓-13%3625 / 49152
Method min mean median max calls
createStataTokens(address[]) ↑27%2460934 ↑27%2460934 ↑27%2460934 ↑27%2460934 21
initialize() 24103 24103 24103 24103 ↑4.9%726

StataTokenV2

  • size: 20757 / 49152
Method min mean median max calls
deposit(uint256,address) ↓-1.1%264395 ↓-1%274605 ↓-1%274605 ↓-0.98%284816 2
depositATokens(uint256,address) 161529 196314 203271 203271 6
emergencyTokenTransfer(address,address,uint256) 6009 82212 86413 150013 4
initialize(address,string,string) 25518 ↑0.1%231377 232108 239108 ↑33%85
maxRedeem(address) ↑0.29%7494 ↑0.29%7494 ↑0.29%7494 ↑0.29%7494 2
maxWithdraw(address) ↑0.43%10182 ↑0.43%10182 ↑0.43%10182 ↑0.43%10182 1
mint(uint256,address) ↓-1.1%264489 ↓-1.1%264489 ↓-1.1%264489 ↓-1.1%264489 1
previewDeposit(uint256) ↑0.14%15981 ↑0.14%15981 ↑0.14%15981 ↑0.14%15981 1
redeem(uint256,address,address) ↑0.14%31726 110041 110041 188356 2
redeemATokens(uint256,address,address) 136140 136140 136140 136140 1
withdraw(uint256,address,address) ↑0.19%34415 ↑0.19%34415 ↑0.19%34415 ↑0.19%34415 1

AaveV3ConfigEngine

  • size: 9645 / 49152
Method min mean median max calls
COLLECTOR() 292 292 292 292 719
DEFAULT_INTEREST_RATE_STRATEGY() 270 270 270 270 ↑14,000%724
REWARDS_CONTROLLER() 225 225 225 225 719
listAssets((string,string),(address,string,address,(uint256,uint256,uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256)[]) ↓-0.37%1797745 ↓-0.37%1797745 ↓-0.37%1797745 ↓-0.37%1797745 1
listAssetsCustom((string,string),((address,string,address,(uint256,uint256,uint256,uint256),uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256),(address,address))[]) ↓-0.37%1797081 ↓-1.8%5096800 ↓-1.8%5101544 ↓-1.8%5101544 ↑5%720
updateAssetsEMode((address,uint8,uint256,uint256)[]) ↓-13%165955 ↓-13%165955 ↓-13%165955 ↓-13%165955 1
updateBorrowSide((address,uint256,uint256,uint256,uint256,uint256)[]) 20061 ↑49%113361 ↑49%113492 ↓-1.9%129839 ↑36,000%721
updateCaps((address,uint256,uint256)[]) ↓-3.6%57560 ↓-3.6%57560 ↓-3.6%57560 ↓-3.6%57560 1
updateCollateralSide((address,uint256,uint256,uint256,uint256,uint256)[]) 8750 ↓-2.8%29578 8874 ↓-3.4%60698 5
updateEModeCategories((uint8,uint256,uint256,uint256,string)[]) 10596 ↑0.44%50684 28387 ↑0.56%101921 5
updatePriceFeeds((address,address)[]) 39269 ↑2.8%40367 ↑2.8%40369 ↑2.8%40369 ↑72,000%720
updateRateStrategies((address,(uint256,uint256,uint256,uint256))[]) ↓-2.3%122007 ↓-2.3%122007 ↓-2.3%122007 ↓-2.3%122007 1

AaveProtocolDataProvider

  • size: ↑2.3%9996 / 49152
Method min mean median max calls
getATokenTotalSupply(address) ↓-50%6409 ↓-47%7256 ↓-50%6453 ↓-39%35491 ↑5%2189
getAllReservesTokens() ↑26%20285 ↑26%36152 ↑27%50285 ↑27%50285 27
getFlashLoanEnabled(address) ↑0.68%3239 ↑0.26%8405 ↑0.42%5239 ↑0.13%16739 3
getInterestRateStrategyAddress(address) ↓-8.2%8756 ↓-7.5%21812 ↓-9%17756 ↓-6.5%40256 10
getIsVirtualAccActive(address) 3245 ↑12%5517 3267 ↑0.13%16789 ↓-25%6
getPaused(address) ↓-0.66%3311 ↓-1.3%4467 3355 16855 ↑5%21
getReserveConfigurationData(address) ↓-0.6%3637 ↑0.54%4657 3681 17181 ↓-2.7%72
getReserveTokensAddresses(address) ↓-50%4786 ↓-53%5965 ↓-49%4874 ↓-53%20374 ↑3.8%470
getSiloedBorrowing(address) ↑0.67%3292 ↑0.22%10042 ↑0.22%10042 ↑0.13%16792 2
getTotalDebt(address) ↓-41%32479 ↓-41%32479 ↓-41%32479 ↓-41%32479 3
getUserReserveData(address,address) ↓-3.8%19107 ↑0.4%29879 ↓-8.5%25567 ↓-5.9%44107 ↓-52%13

L2Encoder

  • size: 3958 / 49152
Method min mean median max calls
encodeBorrowParams(address,uint256,uint256,uint16) ↓-7.5%8184 ↓-7.5%8184 ↓-7.5%8184 ↓-7.5%8184 3
encodeLiquidationCall(address,address,address,uint256,bool) ↓-23%17903 ↓-23%17903 ↓-23%17903 ↓-23%17903 1
encodeRepayParams(address,uint256,uint256) ↓-7.6%8067 ↓-7.6%8067 ↓-7.6%8067 ↓-7.6%8067 1
encodeRepayWithATokensParams(address,uint256,uint256) ↓-7.6%8094 ↓-7.6%8094 ↓-7.6%8094 ↓-7.6%8094 1
encodeRepayWithPermitParams(address,uint256,uint256,uint256,uint8,bytes32,bytes32) ↓-20%10551 ↓-20%10551 ↓-20%10551 ↓-20%10551 1
encodeSetUserUseReserveAsCollateral(address,bool) ↓-7.7%8009 ↓-7.7%8009 ↓-7.7%8009 ↓-7.7%8009 1
encodeSupplyParams(address,uint256,uint16) ↓-6.6%37612 ↓-6.6%37612 ↓-6.6%37612 ↓-6.6%37612 7
encodeSupplyWithPermitParams(address,uint256,uint16,uint256,uint8,bytes32,bytes32) ↓-6.6%37966 ↓-6.6%37966 ↓-6.6%37966 ↓-6.6%37966 1
encodeWithdrawParams(address,uint256) ↓-7.7%7953 ↓-7.7%7986 ↓-7.7%7986 ↓-7.7%8020 2

LiquidationDataProvider

  • size: 7869 / 49152
Method min mean median max calls
getLiquidationInfo(address,address,address) 81212 82922 82922 84632 2
getLiquidationInfo(address,address,address,uint256) 72607 82884 85889 96767 27

WrappedTokenGatewayV3

  • size: ↓-4.7%6379 / 49152
Method min mean median max calls
borrowETH(address,uint256,uint16) ↑0.11%250413 251629 251629 252846 2
depositETH(address,address,uint16) 222614 237968 239888 239888 9
emergencyEtherTransfer(address,uint256) 33770 33770 33770 33770 1
emergencyTokenTransfer(address,address,uint256) 52885 52885 52885 52885 1
getWETHAddress() ↑23%245 ↑23%245 ↑23%245 ↑23%245 1
owner() ↑8.8%406 ↑8.8%406 ↑8.8%406 ↑8.8%406 2
repayETH(address,uint256,address) ↓-7.1%168059 ↓-6.8%175544 ↓-7%171274 ↓-6.2%192937 6
withdrawETH(address,uint256,address) ↓-3.6%225055 ↓-3.9%238661 ↓-4.3%231630 ↓-3.8%259299 3
withdrawETHWithPermit(address,uint256,address,uint256,uint8,bytes32,bytes32) ↓-3.8%267742 ↓-3.7%270636 ↓-3.7%270636 ↓-3.7%273530 2

ATokenInstance

  • size: 11090 / 49152
Method min mean median max calls
POOL() 326 326 326 326 ↑24%129
RESERVE_TREASURY_ADDRESS() 419 ↑12%2237 2419 2419 ↑52%44
UNDERLYING_ASSET_ADDRESS() 441 ↑1.9%2423 2441 2441 ↑20%114
balanceOf(address) ↑0.8%2771 ↓-1.6%5829 ↑0.46%4771 ↑0.12%17771 ↑23%313
burn(address,address,uint256,uint256) 904 ↓-1.2%41619 45478 63278 ↑38%101
decimals() 356 ↓-14%1804 2356 2356 ↑21%29
getIncentivesController() 474 ↑22%1274 474 2474 ↓-29%5
handleRepayment(address,address,uint256) 594 594 594 594 ↑45%81
initialize(address,address,address,address,uint8,string,string,bytes) ↑12%187036 ↓-1.1%188937 187036 ↓-16%231905 ↑37%3008
mint(address,address,uint256,uint256) 932 ↑0.15%60457 64402 72156 ↑20%890
name() 1259 ↑0.52%2723 3259 3259 ↑28%213
scaledBalanceOf(address) 687 ↓-3.3%2288 2687 2687 ↑30%964
symbol() ↑24%1324 ↑0.88%2759 3324 3324 ↑31%195
totalSupply() 407 ↑2.2%3005 2407 ↑4.6%10945 ↑6.9%2579
transfer(address,uint256) 576 ↑0.93%99238 ↑0.33%110929 ↑0.23%140485 32
transferFrom(address,address,uint256) 2998 ↑4.1%110266 ↑2.4%114629 ↑16%165661 42
transferOnLiquidation(address,address,uint256) 981 ↑2.2%35656 37499 ↑1.1%44759 ↑85%48
transferUnderlyingTo(address,uint256) 796 ↑2.1%28595 33588 33627 ↑22%329

L2PoolInstance

  • size: ↓-2.5%22961 / 49152
Method min mean median max calls
borrow(address,uint256,uint256,uint16,address) ↑8.5%220510 ↑0.81%226326 ↑0.11%222465 ↑0.15%238578 11
borrow(bytes32) ↑0.13%203430 ↑0.13%203430 ↑0.13%203430 ↑0.13%203430 3
configureEModeCategory(uint8,(uint16,uint16,uint16,string)) ↓-10%6370 ↑0.85%43572 ↑1.1%49773 ↑1.1%49773 7
configureEModeCategoryCollateralBitmap(uint8,uint128) ↓-0.41%6815 ↓-0.41%6815 ↓-0.41%6815 ↓-0.41%6815 12
dropReserve(address) 6304 ↓-0.23%44178 ↓-0.23%44178 ↓-0.25%82053 2
getBridgeLogic() ↑6.4%367 ↑6.4%367 ↑6.4%367 ↑6.4%367 1
getConfiguration(address) ↓-3%701 ↓-3.1%710 ↓-3%701 ↓-0.81%2701 ↑16%1702
getEModeCategoryBorrowableBitmap(uint8) ↓-0.83%2624 ↓-0.83%2624 ↓-0.83%2624 ↓-0.83%2624 2
getEModeCategoryCollateralBitmap(uint8) ↓-0.23%2650 ↓-0.23%2650 ↓-0.23%2650 ↓-0.23%2650 12
getEModeLogic() ↑6.4%367 ↑6.4%367 ↑6.4%367 ↑6.4%367 1
getLiquidationGracePeriod(address) ↓-76%634 ↓-76%634 ↓-76%634 ↓-76%634 1
getLiquidationLogic() ↓-6.8%303 ↓-6.8%303 ↓-6.8%303 ↓-6.8%303 1
getPoolLogic() ↑6.8%346 ↑6.8%346 ↑6.8%346 ↑6.8%346 1
getReserveAToken(address) 632 684 632 2632 153
getReserveData(address) ↓-13%4537 ↓-5.3%7884 ↓-37%4537 ↓-9%27037 ↓-45%190
getReserveNormalizedIncome(address) ↑2.7%845 ↑2.6%857 ↑2.7%845 ↑1.7%1305 37
getReserveNormalizedVariableDebt(address) 845 ↓-4.1%1361 845 2845 ↑11%10
getReserveVariableDebtToken(address) 632 1965 2632 2632 6
getReservesList() ↑25%13940 ↑25%13940 ↑25%13940 ↑25%13940 ↓-67%1
getSupplyLogic() ↓-6.4%323 ↓-6.4%323 ↓-6.4%323 ↓-6.4%323 1
getUserAccountData(address) ↑1.2%22547 ↑1.2%22547 ↑1.2%22547 ↑1.2%22547 1
initReserve(address,address,address,address) ↓-0.33%6606 161628 161799 167575 ↑33%194
initialize(address) 45421 45421 45421 45421 63
liquidationCall(bytes32,bytes32) ↑12%421471 ↑12%421471 ↑12%421471 ↑12%421471 1
mintToTreasury(address[]) 77242 78635 78635 80028 2
repay(address,uint256,uint256,address) 164442 164442 164442 164442 2
repay(bytes32) 135418 135418 135418 135418 1
repayWithATokens(bytes32) ↑0.33%138972 ↑0.33%138972 ↑0.33%138972 ↑0.33%138972 1
repayWithPermit(bytes32,bytes32,bytes32) 189311 189311 189311 189311 1
resetIsolationModeTotalDebt(address) ↓-2%4265 ↓-2%4403 ↓-2%4265 ↓-0.57%15265 147
setConfiguration(address,(uint256)) 2148 ↑5.2%4445 2148 24303 ↑18%1881
setLiquidationGracePeriod(address,uint40) 6364 ↓-6.3%10690 10850 ↓-13%14857 3
setReserveInterestRateStrategyAddress(address,address) 6384 ↓-5.4%9368 8731 ↓-14%13627 4
setUserEMode(uint8) ↑1.1%22357 ↑0.17%42708 41183 ↑0.31%87787 7
setUserUseReserveAsCollateral(address,bool) 53597 69576 71610 ↑0.29%103085 17
setUserUseReserveAsCollateral(bytes32) 73778 73778 73778 73778 1
supply(address,uint256,address,uint16) 157020 198932 208320 208320 29
supply(bytes32) 210398 210398 210398 210398 7
supplyWithPermit(bytes32,bytes32,bytes32) 259661 259661 259661 259661 1
syncIndexesState(address) ↓-1.1%7222 ↓-12%12197 ↓-1.1%7222 ↓-0.28%27122 ↑33%192
syncRatesState(address) ↓-1.7%15737 ↓-0.51%15924 ↓-0.11%15987 ↓-0.11%15987 ↑33%192
updateFlashloanPremiums(uint128,uint128) ↑5.2%1787 ↑0.77%11695 ↑1.4%6456 ↑0.41%21687 127
withdraw(bytes32) 126396 128836 128836 131277 2

PoolConfiguratorInstance

  • size: 19812 / 49152
Method min mean median max calls
configureReserveAsCollateral(address,uint256,uint256,uint256) ↓-0.18%12198 ↓-0.47%12485 ↑0.18%12286 ↓-11%88228 ↑4.9%2174
disableLiquidationGracePeriod(address) 17214 ↓-4.5%30658 ↓-5.5%37380 ↓-5.5%37380 3
dropReserve(address) 14074 51410 43883 ↓-0.2%104626 6
initReserves((address,address,bool,address,address,address,address,string,string,string,string,bytes,bytes)[]) 17401 ↓-34%3042795 ↓-66%1504861 ↓-0.66%192871765 ↑110%1449
initialize(address) 72573 90425 90473 90473 ↑4.7%754
setAssetBorrowableInEMode(address,uint8,bool) ↓-13%40844 ↓-5.7%80585 ↓-3.2%84844 ↓-16%84889 ↑5.6%19
setAssetCollateralInEMode(address,uint8,bool) 17472 ↓-11%66386 ↓-3.9%67831 ↓-19%67854 ↑9.8%56
setBorrowCap(address,uint256) ↓-0.2%11148 ↓-0.41%11372 ↑0.2%11236 ↓-4.8%42036 ↑4.9%2171
setBorrowableInIsolation(address,bool) ↓-0.2%10714 ↓-0.35%10993 ↑0.2%10802 ↓-4.9%41593 ↑40%2893
setDebtCeiling(address,uint256) 17256 ↓-20%35760 ↓-22%32528 ↓-11%87465 ↑5%2180
setEModeCategory(uint8,uint16,uint16,uint16,string) 17779 ↑1.8%72564 ↑0.7%82019 ↑0.7%82019 ↑8.5%51
setLiquidationProtocolFee(address,uint256) ↓-0.2%11219 ↓-0.35%11380 ↑0.19%11307 ↓-4.8%42107 ↑4.9%2167
setPoolPause(bool) 17202 ↑19%72418 ↑22%109194 ↑22%109298 5
setPoolPause(bool,uint40) 17314 ↑20%75150 ↑20%75150 ↑23%132987 2
setReserveActive(address,bool) 14185 ↓-10%73522 ↓-9.8%83972 ↓-12%83972 12
setReserveBorrowing(address,bool) ↓-0.2%10889 ↓-0.11%11053 ↑0.2%10977 41786 ↑40%2883
setReserveFactor(address,uint256) 17301 ↓-4.2%41577 ↓-0.2%36612 ↓-1.8%122732 ↑40%2882
setReserveFlashLoaning(address,bool) ↓-0.2%10888 11043 ↑0.2%10976 ↓-4.9%41785 ↑40%2882
setReserveFreeze(address,bool) 20551 ↓-2.5%57661 67840 ↓-2.9%71006 17
setReserveInterestRateData(address,bytes) 17558 ↓-2.5%74900 ↓-2.7%103571 ↓-2.7%103571 3
setReserveInterestRateStrategyAddress(address,address,bytes) 17579 ↓-3.8%126876 ↓-3.8%128645 ↓-3.1%160106 45
setReservePause(address,bool) 17347 ↓-4.1%33155 ↓-4.9%41059 ↓-4.9%41059 3
setReservePause(address,bool,uint40) 14424 ↓-0.89%38476 ↓-2.6%38711 ↓-4.6%47072 24
setSiloedBorrowing(address,bool) ↓-0.2%11259 ↓-0.42%11437 ↑0.19%11347 ↓-24%71649 ↑40%2881
setSupplyCap(address,uint256) ↓-0.2%11105 ↓-0.49%12088 ↑0.2%11193 ↓-4.8%41993 ↑4.9%2178
setUnbackedMintCap(address,uint256) ↓-4.8%42028 ↓-4.8%42028 ↓-4.8%42028 ↓-4.8%42028 7
updateAToken((address,address,address,string,string,address,bytes)) 14035 ↓-16%65018 ↓-16%65018 ↓-17%116001 2
updateBridgeProtocolFee(uint256) 14102 ↑0.25%49414 ↑0.26%52131 ↑0.26%52131 14
updateFlashloanPremiumToProtocol(uint128) ↑0.43%10159 ↓-0.15%10208 ↓-0.22%10159 36959 ↑4.7%755
updateFlashloanPremiumTotal(uint128) 14052 31986 32024 36924 ↑4.7%755
updateVariableDebtToken((address,address,string,string,address,bytes)) 14036 ↓-17%61943 ↓-17%61943 ↓-18%109851 2

PoolInstance

  • size: ↓-2.6%21714 / 49152
Method min mean median max calls
ADDRESSES_PROVIDER() ↑24%351 ↑24%351 ↑24%351 ↑24%351 ↑5.8%2209
BRIDGE_PROTOCOL_FEE() ↑19%415 ↑3.1%2175 ↑2.8%2415 ↑2.8%2415 25
FLASHLOAN_PREMIUM_TOTAL() ↓-5.4%388 ↓-1.6%1390 ↓-0.91%2388 ↓-0.91%2388 ↑5.2%1386
FLASHLOAN_PREMIUM_TO_PROTOCOL() 459 460 459 2459 ↑5.2%1383
MAX_NUMBER_RESERVES() ↑7.7%308 ↑7.7%308 ↑7.7%308 ↑7.7%308 4
backUnbacked(address,uint256,uint256) 98284 114442 111830 132856 9
borrow(address,uint256,uint256,uint16,address) ↓-0.25%46487 ↑0.7%249721 278037 304813 ↑23%316
configureEModeCategory(uint8,(uint16,uint16,uint16,string)) ↓-9.9%6414 ↑1.6%47827 ↑1.2%49817 ↑1.2%49817 ↑11%39
configureEModeCategoryBorrowableBitmap(uint8,uint128) ↑0.54%4063 ↑0.77%21668 23963 23963 ↑6.3%17
configureEModeCategoryCollateralBitmap(uint8,uint128) ↑1.5%4037 ↑1.1%6725 ↑0.9%6837 ↑0.9%6837 ↑13%43
deposit(address,uint256,address,uint16) ↓-0.28%32610 ↑0.85%191038 ↑0.74%208341 208341 ↑47%69
dropReserve(address) 6326 ↓-0.15%37482 28245 ↓-0.25%82119 7
eliminateReserveDeficit(address,uint256) 6350 62142 100397 109520 9
finalizeTransfer(address,address,address,uint256,uint256,uint256) ↑0.11%20747 ↑5.5%48204 ↑4.8%50356 ↑9%95888 71
flashLoan(address,address[],uint256[],uint256[],address,bytes,uint16) ↑5.7%31365 ↑9.5%141252 ↑38%128869 322647 12
flashLoanSimple(address,address,uint256,bytes,uint16) 23396 ↓-2.2%337642 191448 ↓-2.6%741170 11
getBorrowLogic() ↓-6.8%303 ↓-6.8%303 ↓-6.8%303 ↓-6.8%303 1
getBridgeLogic() ↓-19%279 ↓-19%279 ↓-19%279 ↓-19%279 1
getConfiguration(address) 745 ↓-0.26%765 745 2745 ↑22%23950
getEModeCategoryBorrowableBitmap(uint8) ↓-3.3%646 ↑4.9%1979 ↓-0.82%2646 ↓-0.82%2646 ↑2.4%42
getEModeCategoryCollateralBitmap(uint8) ↓-0.88%672 ↑14%2109 ↓-0.22%2672 ↓-0.22%2672 ↑52%96
getEModeCategoryCollateralConfig(uint8) 885 ↑0.47%1703 885 2885 ↓-0.9%110
getEModeCategoryData(uint8) ↓-74%2169 ↓-38%5165 ↓-29%5914 ↓-29%5914 ↑25%5
getEModeCategoryLabel(uint8) ↓-1.7%1306 ↓-1.3%1620 ↓-1.4%1561 ↓-0.66%3306 25
getEModeLogic() ↑7.9%300 ↑7.9%300 ↑7.9%300 ↑7.9%300 1
getFlashLoanLogic() ↓-7.3%280 ↓-7.3%280 ↓-7.3%280 ↓-7.3%280 1
getLiquidationGracePeriod(address) ↓-75%656 ↓-74%684 ↓-75%656 2656 ↑540%70
getLiquidationLogic() ↓-6.3%325 ↓-6.3%325 ↓-6.3%325 ↓-6.3%325 1
getPoolLogic() ↑7.9%301 ↑7.9%301 ↑7.9%301 ↑7.9%301 1
getReserveAToken(address) 676 817 676 2676 2774
getReserveData(address) ↓-15%4470 ↓-14%6643 ↓-15%4470 ↓-9.3%26970 ↓-50%2465
getReserveDeficit(address) 609 609 609 609 16
getReserveNormalizedIncome(address) ↑2.5%889 ↑2.8%1447 ↑2.5%889 ↑0.41%5349 ↑20%848
getReserveNormalizedVariableDebt(address) 889 ↑19%1570 889 6475 ↑35%194
getReserveVariableDebtToken(address) 676 1003 676 2676 519
getReservesCount() ↑5.6%414 ↑5.6%414 ↑5.6%414 ↑5.6%414 2
getReservesList() ↑10%3496 ↑3.7%7925 ↓-65%3895 ↑24%13895 ↓-26%65
getSupplyLogic() ↑31%367 ↑31%367 ↑31%367 ↑31%367 1
getUserAccountData(address) ↓-63%4508 ↓-3.7%23461 ↓-0.68%22532 ↑0.6%46942 ↑170%75
getUserConfiguration(address) 703 ↓-13%803 703 2703 ↑62%60
getUserEMode(address) ↑3.5%656 ↑3.5%656 ↑3.5%656 ↑3.5%656 ↑100%42
getVirtualUnderlyingBalance(address) 657 ↑3%790 657 2657 ↓-17%105
initReserve(address,address,address,address) ↓-0.34%6542 ↓-0.41%164063 ↑0.21%162097 206985 ↑38%2818
initialize(address) ↑0.19%45465 ↑0.18%45550 ↑0.19%45465 ↑0.13%66982 ↑5.1%695
liquidationCall(address,address,address,uint256,bool) ↑39%73802 ↑9.4%284922 ↑0.98%326298 ↑30%513992 ↑91%63
mintToTreasury(address[]) 77242 78635 78635 80028 2
mintUnbacked(address,uint256,address,uint16) 12183 118215 ↓-0.11%103306 165679 17
repay(address,uint256,uint256,address) ↓-0.35%33126 ↑5%109524 ↑10%119957 164508 24
repayWithATokens(address,uint256,uint256) ↓-5.5%146720 ↓-1.3%159792 ↓-0.74%161097 ↑0.25%166307 ↑33%8
repayWithPermit(address,uint256,uint256,address,uint256,uint8,bytes32,bytes32) 133312 ↑0.72%157279 149522 ↑1.9%189004 3
resetIsolationModeTotalDebt(address) ↑0.52%4287 ↑0.51%4299 ↑0.52%4287 ↑0.14%15287 ↑5.3%2019
setConfiguration(address,(uint256)) ↑1%2192 ↑4.8%4586 ↑1%2192 24347 ↑24%26468
setLiquidationGracePeriod(address,uint40) 6386 ↓-10%11135 ↓-8.5%12379 ↓-13%14879 ↑21%17
setReserveInterestRateStrategyAddress(address,address) ↓-20%5127 ↓-27%5480 ↓-30%5127 ↓-14%13627 48
setUserEMode(uint8) ↓-0.16%14143 ↓-2%46166 41095 ↑0.43%114342 ↑14%32
setUserUseReserveAsCollateral(address,bool) 53574 ↓-1.2%73320 71587 ↑0.22%135685 ↑9.4%35
supply(address,uint256,address,uint16) ↓-0.4%29282 ↓-0.69%191041 ↓-5%196438 ↑2.8%222224 ↑19%770
supplyWithPermit(address,uint256,address,uint16,uint256,uint8,bytes32,bytes32) ↓-0.1%113599 196365 218008 257490 3
syncIndexesState(address) ↓-1.1%7134 ↓-12%12199 ↓-1.1%7134 ↓-0.12%62500 ↑39%2734
syncRatesState(address) ↓-0.13%13441 ↓-0.46%15909 ↓-0.11%15987 22487 ↑39%2734
updateBridgeProtocolFee(uint256) ↑1.1%6252 ↑0.3%22208 ↑0.29%23436 ↑0.29%23436 14
updateFlashloanPremiums(uint128,uint128) 1720 11658 6520 21620 ↑5.2%1381
withdraw(address,uint256,address) 39154 ↑4.8%108439 ↑11%97515 ↑20%212168 ↑2%50

VariableDebtTokenInstance

  • size: 8190 / 49152
Method min mean median max calls
UNDERLYING_ASSET_ADDRESS() 397 397 397 397 ↓-67%1
balanceOf(address) 675 ↑7.6%4934 4753 ↑19%12336 ↑31%205
burn(address,uint256,uint256) 19171 ↓-0.73%25601 26171 26171 ↑56%86
decimals() 334 334 334 334 ↑170%8
getIncentivesController() 430 430 430 430 ↓-67%1
initialize(address,address,address,uint8,string,string,bytes) 164290 ↑0.59%165420 164290 276648 ↑37%3008
mint(address,address,uint256,uint256) 26353 ↓-0.2%61342 62553 72340 ↑23%312
name() 1259 ↑0.88%2292 3259 3259 ↑27%118
scaledBalanceOf(address) 687 2191 2687 2687 ↑32%343
scaledTotalSupply() 417 ↓-1.2%1617 2417 2417 ↑35%7363
symbol() 1280 ↑1.3%2289 ↑130%3280 3280 ↑29%111
totalSupply() ↓-39%2466 ↓-0.95%7491 ↑12%7235 19052 ↑20%18

AaveOracle

  • size: 4123 / 49152
Method min mean median max calls
getAssetPrice(address) 0 ↓-7.1%5172 7865 7865 ↑41%1650
getSourceOfAsset(address) 550 ↑0.97%1352 550 2550 ↑28%152

DefaultReserveInterestRateStrategyV2

  • size: 4323 / 49152
Method min mean median max calls
calculateInterestRates((uint256,uint256,uint256,uint256,uint256,address,bool,uint256)) 0 ↓-3.3%3003 2251 5973 ↑33%4339
getBaseVariableBorrowRate(address) 744 ↑3%1605 744 2744 ↑26%130
getMaxVariableBorrowRate(address) 968 968 968 968 ↑30%116
getOptimalUsageRatio(address) 734 ↓-0.53%750 734 2734 ↑28%123
getVariableRateSlope1(address) 774 774 774 774 ↑27%127
getVariableRateSlope2(address) 795 795 795 795 ↑29%120
setInterestRateParams(address,(uint16,uint32,uint32,uint32)) 28329 29716 29080 36794 11
setInterestRateParams(address,bytes) ↓-0.13%28638 33743 37115 37145 30

InitializableImmutableAdminUpgradeabilityProxy

  • size: 2052 / 49152
Method min mean median max calls
fallback() 0 ↓-9.8%12720 1354 ↓-0.64%194267469 ↑20%54969

MockPoolInherited

  • size: ↓-2.6%21930 / 49152
Method min mean median max calls
initialize(address) ↑0.31%28478 ↑0.31%28478 ↑0.31%28478 ↑0.31%28478 2

MockAggregator

  • size: 310 / 49152
Method min mean median max calls
_latestAnswer() 315 315 315 315 ↑32%100
decimals() 143 143 143 143 ↑33%110
description() 168 168 168 168 ↑33%110
latestAnswer() 279 ↓-1.8%2010 2279 2279 ↑40%4495
name() 168 168 168 168 ↑33%110

SequencerOracle

  • size: 1358 / 49152
Method min mean median max calls
setAnswer(bool,uint256) 26203 ↓-0.35%27368 26203 46115 ↑8.3%78

TestnetERC20

  • size: 5652 / 49152
Method min mean median max calls
approve(address,uint256) 26300 46539 46584 46584 ↑3.9%3528
balanceOf(address) 648 ↓-1.5%1096 648 2648 ↑65%1693
decimals() 311 ↑0.18%2274 2311 2311 ↑53%2493
mint(address,uint256) 36475 59094 53587 70795 ↑0.37%3285
permit(address,address,uint256,uint256,uint8,bytes32,bytes32) 76481 76535 76535 ↑0.13%76589 2
symbol() 1323 ↑0.52%2335 ↑43%3323 3323 ↑48%83

PercentageMathWrapper

  • size: 326 / 49152
Method min mean median max calls
HALF_PERCENTAGE_FACTOR() 146 146 146 146 ↑50%3
PERCENTAGE_FACTOR() 223 223 223 223 ↑33%4
percentMul(uint256,uint256) ↑29%431 ↑6.2%431 431 431 4

WadRayMathWrapper

  • size: 845 / 49152
Method min mean median max calls
WAD() 179 179 179 179 ↑33%4
wadDiv(uint256,uint256) ↑26%538 ↑4.5%538 538 538 5

MockATokenRepayment

  • size: 11175 / 49152

MockVariableDebtToken

  • size: 8194 / 49152

MockScaledToken

  • size: 4790 / 49152

ACLManager

  • size: 4139 / 49152
Method min mean median max calls
DEFAULT_ADMIN_ROLE() 282 282 282 282 ↑4.7%1524
POOL_ADMIN_ROLE() 292 292 292 292 ↑4.7%752
addPoolAdmin(address) 50988 50999 51000 51000 ↑4.8%739
grantRole(bytes32,address) 51474 ↓-0.12%51980 51474 56036 ↑13%9
hasRole(bytes32,address) 737 ↑1.5%2563 2737 2737 ↑21%23
isAssetListingAdmin(address) 809 ↓-28%1323 ↓-71%809 2809 ↑110%2906
isPoolAdmin(address) 752 ↓-1.9%829 752 2752 ↑26%30034
isRiskAdmin(address) 742 ↓-1.6%823 742 2742 ↑22%25502

PoolAddressesProvider

  • size: 8177 / 49152
Method min mean median max calls
getACLAdmin() 477 ↓-0.54%548 477 2477 ↑4.5%784
getACLManager() 531 ↓-2.7%610 531 2531 ↑26%30079
getAddress(bytes32) 543 ↑28%1117 543 2543 ↓-43%3424
getPool() 466 1124 466 2466 ↑3.7%5384
getPoolConfigurator() 509 ↓-1.8%559 509 2509 ↑25%44983
getPoolDataProvider() 486 1168 486 2486 ↑4.8%2250
getPriceOracle() 574 ↓-3.3%2075 2574 2574 ↑25%955
getPriceOracleSentinel() 487 ↓-4.2%2286 2487 2487 ↑35%458
owner() 363 363 363 363 ↑4.7%757
setAddress(bytes32,address) 24622 ↑22%43438 ↑53%48360 48636 ↑160%13
setPoolConfiguratorImpl(address) 24012 287022 295092 533894 4
setPoolImpl(address) 24057 273511 281579 506831 4

PoolAddressesProviderRegistry

  • size: 2641 / 49152
Method min mean median max calls
owner() 329 2323 2329 2329 ↑4.7%754

EmissionManager

  • size: 3948 / 49152
Method min mean median max calls
configureAssets((uint88,uint256,uint32,address,address,address,address)[]) 284134 287768 289908 289908 32

RewardsController

  • size: 14452 / 49152
Method min mean median max calls
EMISSION_MANAGER() 326 326 326 326 ↑4.7%756
claimRewards(address[],uint256,address,address) 952 ↓-1.9%51276 ↓-0.99%55816 ↓-12%86197 ↑33%8
getAssetIndex(address,address) ↑0.73%2484 ↑0.37%7509 8974 11392 44
getRewardsByAsset(address) 1768 ↑0.23%3006 3046 5768 ↑17%143
handleAction(address,uint256,uint256) 728 ↓-0.73%2576 2728 38069 ↑23%1626
initialize(address) 26065 45245 45250 53154 ↑4.7%754

Collector

  • size: ↓-0.15%6852 / 49152
Method min mean median max calls
initialize(address,uint256) ↓-20%90680 ↓-20%90680 ↓-20%90680 ↓-20%90680 ↑4.6%779

RevenueSplitter

  • size: 2355 / 49152
Method min mean median max calls
splitRevenue(address[]) 24246 ↓-3.2%74078 58340 135765 8

AaveV3GettersBatchOne

  • size: ↑1.1%33025 / 49152
Method min mean median max calls
getGettersReportOne() 968 968 968 968 ↑4.6%776

AaveV3GettersBatchTwo

  • size: ↓-2.8%10967 / 49152
Method min mean median max calls
getGettersReportTwo() 533 533 533 533 ↑4.7%750

AaveV3HelpersBatchOne

  • size: 34331 / 49152
Method min mean median max calls
getConfigEngineReport() 1693 1693 1693 1693 ↑4.9%724

AaveV3HelpersBatchTwo

  • size: ↓-1.7%30790 / 49152
Method min mean median max calls
staticATokenReport() 968 968 968 968 ↑4.9%724

AaveV3L2PoolBatch

  • size: ↓-1.3%43399 / 49152

AaveV3MiscBatch

  • size: 6958 / 49152
Method min mean median max calls
getMiscReport() 533 533 533 533 ↑4.6%776

AaveV3ParaswapBatch

  • size: ↓-5.2%29513 / 49152

AaveV3PeripheryBatch

  • size: 39150 / 49152
Method min mean median max calls
getPeripheryReport() 1512 3509 3512 5512 ↑4.6%776

AaveV3PoolBatch

  • size: ↓-1.4%42152 / 49152
Method min mean median max calls
getPoolReport() 533 533 533 533 ↑5.1%700

AaveV3SetupBatch

  • size: 26831 / 49152
Method min mean median max calls
getInitialReport() 552 552 552 552 ↑4.6%776
setMarketReport((address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address,address)) 629994 632219 629994 750834 ↑4.9%724
setupAaveV3Market((address,address,address),(address,address,string,uint8,address,address,uint256,uint256,bytes32,address,address,uint128,uint128,address,address,address,uint16),address,address,address,address,address,address) 2168434 2661517 2661602 2687522 ↑4.7%752

AaveV3TokensBatch

  • size: 20353 / 49152
Method min mean median max calls
getTokensReport() 533 533 533 533 ↑4.7%750

MockERC20AaveLMUpgradeable

  • size: 8658 / 49152
Method min mean median max calls
claimRewards(address,address[]) ↑200%173373 ↑200%173373 ↑200%173373 ↑200%173373 1
claimRewardsOnBehalf(address,address,address[]) 34383 ↑74%90394 ↑7%62897 ↑180%173902 3
claimRewardsToSelf(address[]) ↓-0.69%57747 ↓-0.69%57747 ↓-0.69%57747 ↓-0.69%57747 1
collectAndUpdateRewards(address) 48341 ↓-41%52827 ↓-41%52827 ↓-56%57313 2
getClaimableRewards(address,address) ↑0.29%6181 ↑0.66%7967 6580 26280 16
mint(address,uint256) 53655 91176 97646 97646 11
refreshRewardTokens() 116549 116590 116557 116975 12
transfer(address,uint256) ↓-25%60600 ↓-33%61716 ↓-33%61716 ↓-39%62832 2

MockScaledTestnetERC20

  • size: 5780 / 49152
Method min mean median max calls
getScaledUserBalanceAndSupply(address) 735 ↓-8.9%3401 ↓-21%3735 4735 ↑50%6
mint(address,uint256) 51476 67054 68648 68648 11
transfer(address,uint256) 29803 45400 46975 46975 11

MockERC4626StataTokenUpgradeable

  • size: 10278 / 49152
Method min mean median max calls
approve(address,uint256) ↑0.1%46423 46459 46459 46495 2
convertToAssets(uint256) ↑0.75%2959 ↑0.75%2959 ↑0.75%2959 ↑0.75%2959 1
convertToShares(uint256) ↑0.14%15960 ↑0.14%15960 ↑0.14%15960 ↑0.14%15960 1
depositATokens(uint256,address) ↑0.27%59828 ↑0.24%198644 210798 ↑2.3%215726 12
depositWithPermit(uint256,address,uint256,(uint8,bytes32,bytes32),bool) 75967 ↑2.1%245404 ↑8.2%267606 338342 5
maxDeposit(address) ↓-9.6%26074 ↓-8.6%29624 ↓-9.5%26343 ↓-6.5%39737 4
maxMint(address) ↓-8.2%8688 ↓-8.2%8688 ↓-8.2%8688 ↓-8.2%8688 1
maxRedeem(address) 2593 ↑0.26%5838 ↑0.3%7456 ↑0.3%7466 3
mint(uint256,address) ↓-3.7%71947 ↓-1.4%190854 ↓-1.4%190854 ↓-0.84%309761 2
previewDeposit(uint256) ↑0.74%3003 ↑0.19%11669 ↑0.14%16003 ↑0.14%16003 3
previewMint(uint256) ↑0.74%2999 ↑0.74%2999 ↑0.74%2999 ↑0.74%2999 1
previewRedeem(uint256) ↑0.76%2935 ↑0.76%2935 ↑0.76%2935 ↑0.76%2935 2
previewWithdraw(uint256) ↑0.74%2981 ↑0.74%2981 ↑0.74%2981 ↑0.74%2981 1
redeem(uint256,address,address) ↓-0.23%174570 ↓-0.23%174570 ↓-0.23%174570 ↓-0.23%174570 1
redeemATokens(uint256,address,address) ↑0.17%40813 121299 ↓-0.17%160945 162139 3
totalAssets() ↑0.75%2952 ↑0.28%7952 ↑0.75%2952 ↑0.12%17952 3
withdraw(uint256,address,address) 51199 ↓-0.14%114279 ↓-0.14%114279 ↓-0.2%177360 2

AaveV3MockAssetEModeUpdate

  • size: 3745 / 49152
Method min mean median max calls
execute() ↓-11%193079 ↓-11%193079 ↓-11%193079 ↓-11%193079 1

AaveV3MockBorrowUpdate

  • size: 3555 / 49152
Method min mean median max calls
execute() ↓-1.6%156603 ↓-1.6%156603 ↓-1.6%156603 ↓-1.6%156603 1

AaveV3MockCapUpdate

  • size: 3499 / 49152
Method min mean median max calls
execute() ↓-2.5%83794 ↓-2.5%83794 ↓-2.5%83794 ↓-2.5%83794 1

AaveV3MockCollateralUpdate

  • size: 3559 / 49152
Method min mean median max calls
execute() ↓-2.4%87466 ↓-2.4%87466 ↓-2.4%87466 ↓-2.4%87466 1

AaveV3MockCollateralUpdateCorrectBonus

  • size: 3559 / 49152
Method min mean median max calls
execute() ↓-2.4%87466 ↓-2.4%87466 ↓-2.4%87466 ↓-2.4%87466 1

AaveV3MockEModeCategoryUpdate

  • size: 3329 / 49152
Method min mean median max calls
execute() ↑0.44%128915 ↑0.44%128915 <sup title=1...[Comment body truncated]

Copy link

github-actions bot commented Jan 8, 2025

🔮 Coverage report
File Line Coverage Function Coverage Branch Coverage
src/contracts/dependencies/gnosis/contracts/GPv2SafeERC20.sol ${\color{red}67.57\%}$
$25 / 37$
23, 24, 78, 79, 80 and 7 more
${\color{green}100\%}$
$4 / 4$
${\color{red}42.86\%}$
$3 / 7$
src/contracts/dependencies/openzeppelin/ReentrancyGuard.sol $^{↓-25\%}{\color{red}75\%}$
$6 / 8$
67, 68
$^{↓-33\%}{\color{red}66.67\%}$
$2 / 3$
ReentrancyGuard._initGuard
${\color{red}50\%}$
$1 / 2$
src/contracts/dependencies/openzeppelin/contracts/AccessControl.sol ${\color{orange}90.63\%}$
$29 / 32$
76, 77, 115
${\color{orange}83.33\%}$
$10 / 12$
AccessControl.supportsInterface, AccessControl.getRoleAdmin
${\color{red}80\%}$
$4 / 5$
src/contracts/dependencies/openzeppelin/contracts/ERC165.sol ${\color{red}0\%}$
$0 / 2$
25, 26
${\color{red}0\%}$
$0 / 1$
ERC165.supportsInterface
${\color{green}100\%}$
$0 / 0$
src/contracts/dependencies/openzeppelin/contracts/ERC20.sol ${\color{red}79.66\%}$
$47 / 59$
182, 183, 184, 201, 205 and 7 more
${\color{orange}83.33\%}$
$15 / 18$
ERC20.increaseAllowance, ERC20.decreaseAllowance, ERC20._burn
${\color{red}41.67\%}$
$5 / 12$
src/contracts/dependencies/openzeppelin/contracts/Ownable.sol ${\color{red}80\%}$
$12 / 15$
55, 56, 57
${\color{red}80\%}$
$4 / 5$
Ownable.renounceOwnership
${\color{red}75\%}$
$3 / 4$
src/contracts/dependencies/openzeppelin/contracts/SafeERC20.sol ${\color{red}47.37\%}$
$9 / 19$
25, 26, 50, 51, 52 and 5 more
${\color{red}50\%}$
$3 / 6$
SafeERC20.safeTransferFrom, SafeERC20.safeIncreaseAllowance, SafeERC20.safeDecreaseAllowance
${\color{red}42.86\%}$
$3 / 7$
src/contracts/dependencies/openzeppelin/contracts/SafeMath.sol ${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$5 / 5$
${\color{red}62.5\%}$
$5 / 8$
src/contracts/dependencies/openzeppelin/upgradeability/AdminUpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 5$
21, 26, 27, 33, 34
${\color{red}0\%}$
$0 / 2$
AdminUpgradeabilityProxy.constructor, AdminUpgradeabilityProxy._willFallback
${\color{green}100\%}$
$0 / 0$
src/contracts/dependencies/openzeppelin/upgradeability/BaseAdminUpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 26$
35, 36, 39, 46, 47 and 21 more
${\color{red}0\%}$
$0 / 9$
BaseAdminUpgradeabilityProxy.ifAdmin, BaseAdminUpgradeabilityProxy.admin, BaseAdminUpgradeabilityProxy.implementation, BaseAdminUpgradeabilityProxy.changeAdmin, BaseAdminUpgradeabilityProxy.upgradeTo and 4 more
${\color{red}0\%}$
$0 / 8$
src/contracts/dependencies/openzeppelin/upgradeability/BaseUpgradeabilityProxy.sol ${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$3 / 3$
${\color{red}50\%}$
$1 / 2$
src/contracts/dependencies/openzeppelin/upgradeability/Initializable.sol ${\color{red}0\%}$
$0 / 12$
30, 31, 36, 37, 38 and 7 more
${\color{red}0\%}$
$0 / 2$
Initializable.initializer, Initializable.isConstructor
${\color{red}0\%}$
$0 / 4$
src/contracts/dependencies/openzeppelin/upgradeability/InitializableAdminUpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 7$
25, 26, 27, 28, 29 and 2 more
${\color{red}0\%}$
$0 / 2$
InitializableAdminUpgradeabilityProxy.initialize, InitializableAdminUpgradeabilityProxy._willFallback
${\color{red}0\%}$
$0 / 2$
src/contracts/dependencies/openzeppelin/upgradeability/InitializableUpgradeabilityProxy.sol ${\color{green}100\%}$
$7 / 7$
${\color{green}100\%}$
$1 / 1$
${\color{red}60\%}$
$3 / 5$
src/contracts/dependencies/openzeppelin/upgradeability/Proxy.sol ${\color{orange}87.5\%}$
$14 / 16$
25, 26
${\color{red}80\%}$
$4 / 5$
Proxy.receive
${\color{green}100\%}$
$0 / 0$
src/contracts/dependencies/openzeppelin/upgradeability/UpgradeabilityProxy.sol ${\color{red}0\%}$
$0 / 6$
20, 21, 22, 23, 24 and 1 more
${\color{red}0\%}$
$0 / 1$
UpgradeabilityProxy.constructor
${\color{red}0\%}$
$0 / 3$
src/contracts/dependencies/weth/WETH9.sol ${\color{orange}85.19\%}$
$23 / 27$
31, 32, 47, 48
${\color{red}71.43\%}$
$5 / 7$
WETH9.receive, WETH9.totalSupply
${\color{red}57.14\%}$
$4 / 7$
src/contracts/extensions/paraswap-adapters/BaseParaSwapAdapter.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$6 / 6$
${\color{red}60\%}$
$3 / 5$
src/contracts/extensions/paraswap-adapters/BaseParaSwapBuyAdapter.sol ${\color{orange}90.32\%}$
$28 / 31$
92, 99, 100
${\color{green}100\%}$
$2 / 2$
${\color{red}50\%}$
$8 / 16$
src/contracts/extensions/paraswap-adapters/BaseParaSwapSellAdapter.sol ${\color{orange}89.29\%}$
$25 / 28$
90, 97, 98
${\color{green}100\%}$
$2 / 2$
${\color{red}50\%}$
$8 / 16$
src/contracts/extensions/paraswap-adapters/ParaSwapLiquiditySwapAdapter.sol ${\color{green}100\%}$
$39 / 39$
${\color{green}100\%}$
$4 / 4$
${\color{red}63.64\%}$
$7 / 11$
src/contracts/extensions/paraswap-adapters/ParaSwapRepayAdapter.sol ${\color{lightgreen}95.83\%}$
$46 / 48$
144, 209
${\color{green}100\%}$
$5 / 5$
${\color{red}53.85\%}$
$7 / 13$
src/contracts/extensions/paraswap-adapters/ParaSwapWithdrawSwapAdapter.sol ${\color{green}100\%}$
$13 / 13$
${\color{green}100\%}$
$3 / 3$
${\color{red}66.67\%}$
$2 / 3$
src/contracts/extensions/stata-token/ERC20AaveLMUpgradeable.sol ${\color{orange}94.02\%}$
$110 / 117$
97, 114, 116, 126, 213 and 2 more
${\color{lightgreen}95.45\%}$
$21 / 22$
ERC20AaveLMUpgradeable.getCurrentRewardsIndex
${\color{red}66.67\%}$
$10 / 15$
src/contracts/extensions/stata-token/ERC4626StataTokenUpgradeable.sol ${\color{lightgreen}97.09\%}$
$100 / 103$
110, 146, 221
${\color{green}100\%}$
$21 / 21$
${\color{orange}81.82\%}$
$9 / 11$
src/contracts/extensions/stata-token/StataTokenFactory.sol $^{↑4\%}{\color{orange}88\%}$
$22 / 25$
76, 83, 84
${\color{red}80\%}$
$4 / 5$
StataTokenFactory.getStataTokens
${\color{red}33.33\%}$
$1 / 3$
src/contracts/extensions/stata-token/StataTokenV2.sol ${\color{orange}87.5\%}$
$28 / 32$
59, 63, 68, 109
${\color{orange}81.82\%}$
$9 / 11$
StataTokenV2.whoCanRescue, StataTokenV2.maxRescue
${\color{red}75\%}$
$3 / 4$
src/contracts/extensions/v3-config-engine/AaveV3ConfigEngine.sol ${\color{green}100\%}$
$45 / 45$
${\color{green}100\%}$
$12 / 12$
${\color{red}50\%}$
$4 / 8$
src/contracts/extensions/v3-config-engine/AaveV3Payload.sol ${\color{red}75.56\%}$
$34 / 45$
119, 120, 124, 127, 135 and 6 more
${\color{red}28.57\%}$
$4 / 14$
AaveV3Payload._bpsToRay, AaveV3Payload.newListings, AaveV3Payload.newListingsCustom, AaveV3Payload.capsUpdates, AaveV3Payload.collateralsUpdates and 5 more
${\color{green}100\%}$
$9 / 9$
src/contracts/extensions/v3-config-engine/libraries/BorrowEngine.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$2 / 2$
${\color{red}80\%}$
$8 / 10$
src/contracts/extensions/v3-config-engine/libraries/CapsEngine.sol ${\color{green}100\%}$
$9 / 9$
${\color{green}100\%}$
$2 / 2$
${\color{red}75\%}$
$3 / 4$
src/contracts/extensions/v3-config-engine/libraries/CollateralEngine.sol ${\color{red}70\%}$
$21 / 30$
39, 42, 48, 50, 51 and 4 more
${\color{green}100\%}$
$2 / 2$
${\color{red}57.14\%}$
$8 / 14$
src/contracts/extensions/v3-config-engine/libraries/EModeEngine.sol ${\color{orange}92.31\%}$
$36 / 39$
78, 82, 87
${\color{green}100\%}$
$4 / 4$
${\color{red}64.29\%}$
$9 / 14$
src/contracts/extensions/v3-config-engine/libraries/ListingEngine.sol ${\color{green}100\%}$
$33 / 33$
${\color{green}100\%}$
$3 / 3$
${\color{red}50\%}$
$2 / 4$
src/contracts/extensions/v3-config-engine/libraries/PriceFeedEngine.sol ${\color{green}100\%}$
$12 / 12$
${\color{green}100\%}$
$2 / 2$
${\color{red}50\%}$
$3 / 6$
src/contracts/extensions/v3-config-engine/libraries/RateEngine.sol ${\color{red}64.52\%}$
$20 / 31$
45, 46, 47, 50, 51 and 6 more
${\color{green}100\%}$
$3 / 3$
${\color{red}14.29\%}$
$1 / 7$
src/contracts/helpers/AaveProtocolDataProvider.sol $^{↓-2.6\%}{\color{red}77.92\%}$
$60 / 77$
45, 46, 49, 50, 61 and 12 more
$^{↓-4.8\%}{\color{orange}85.71\%}$
$18 / 21$
AaveProtocolDataProvider.getAllATokens, AaveProtocolDataProvider.getReserveData, AaveProtocolDataProvider.getReserveDeficit
${\color{red}0\%}$
$0 / 2$
src/contracts/helpers/L2Encoder.sol ${\color{green}100\%}$
$68 / 68$
${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$0 / 0$
src/contracts/helpers/LiquidationDataProvider.sol ${\color{orange}90.78\%}$
$128 / 141$
49, 66, 70, 74, 78 and 8 more
${\color{red}80\%}$
$12 / 15$
LiquidationDataProvider.getUserPositionFullInfo, LiquidationDataProvider.getCollateralFullInfo, LiquidationDataProvider.getDebtFullInfo
${\color{red}75\%}$
$15 / 20$
src/contracts/helpers/UiIncentiveDataProviderV3.sol ${\color{red}0\%}$
$0 / 90$
17, 26, 29, 32, 35 and 85 more
${\color{red}0\%}$
$0 / 5$
UiIncentiveDataProviderV3.getFullReservesIncentiveData, UiIncentiveDataProviderV3.getReservesIncentivesData, UiIncentiveDataProviderV3._getReservesIncentivesData, UiIncentiveDataProviderV3.getUserReservesIncentivesData, UiIncentiveDataProviderV3._getUserReservesIncentivesData
${\color{red}0\%}$
$0 / 4$
src/contracts/helpers/UiPoolDataProviderV3.sol $^{↓-0.84\%}{\color{red}2.52\%}$
$3 / 119$
38, 41, 42, 45, 48 and 111 more
${\color{red}16.67\%}$
$1 / 6$
UiPoolDataProviderV3.getReservesList, UiPoolDataProviderV3.getReservesData, UiPoolDataProviderV3.getEModes, UiPoolDataProviderV3.getUserReservesData, UiPoolDataProviderV3.bytes32ToString
${\color{red}0\%}$
$0 / 5$
src/contracts/helpers/WalletBalanceProvider.sol ${\color{red}0\%}$
$0 / 31$
31, 33, 42, 43, 44 and 26 more
${\color{red}0\%}$
$0 / 4$
WalletBalanceProvider.receive, WalletBalanceProvider.balanceOf, WalletBalanceProvider.batchBalanceOf, WalletBalanceProvider.getUserWalletBalances
${\color{red}0\%}$
$0 / 6$
src/contracts/helpers/WrappedTokenGatewayV3.sol ${\color{green}100\%}$
$54 / 54$
${\color{green}100\%}$
$12 / 12$
${\color{red}80\%}$
$8 / 10$
src/contracts/instances/ATokenInstance.sol ${\color{green}100\%}$
$12 / 12$
${\color{green}100\%}$
$2 / 2$
${\color{red}50\%}$
$1 / 2$
src/contracts/instances/PoolConfiguratorInstance.sol ${\color{green}100\%}$
$5 / 5$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$0 / 0$
src/contracts/instances/PoolInstance.sol ${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$2 / 2$
src/contracts/instances/VariableDebtTokenInstance.sol ${\color{green}100\%}$
$11 / 11$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$2 / 2$
src/contracts/misc/AaveOracle.sol ${\color{green}100\%}$
$43 / 43$
${\color{green}100\%}$
$11 / 11$
${\color{green}100\%}$
$10 / 10$
src/contracts/misc/DefaultReserveInterestRateStrategyV2.sol ${\color{green}100\%}$
$54 / 54$
${\color{green}100\%}$
$15 / 15$
${\color{green}100\%}$
$17 / 17$
src/contracts/misc/PriceOracleSentinel.sol ${\color{green}100\%}$
$27 / 27$
${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$4 / 4$
src/contracts/misc/aave-upgradeability/BaseImmutableAdminUpgradeabilityProxy.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$7 / 7$
${\color{red}33.33\%}$
$2 / 6$
src/contracts/misc/aave-upgradeability/InitializableImmutableAdminUpgradeabilityProxy.sol ${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/contracts/misc/aave-upgradeability/VersionedInitializable.sol ${\color{green}100\%}$
$13 / 13$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$4 / 4$
src/contracts/misc/flashloan/base/FlashLoanReceiverBase.sol ${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/contracts/misc/flashloan/base/FlashLoanSimpleReceiverBase.sol ${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/contracts/protocol/configuration/ACLManager.sol ${\color{green}100\%}$
$43 / 43$
${\color{green}100\%}$
$20 / 20$
${\color{green}100\%}$
$2 / 2$
src/contracts/protocol/configuration/PoolAddressesProvider.sol ${\color{green}100\%}$
$81 / 81$
${\color{green}100\%}$
$23 / 23$
${\color{green}100\%}$
$4 / 4$
src/contracts/protocol/configuration/PoolAddressesProviderRegistry.sol ${\color{green}100\%}$
$35 / 35$
${\color{green}100\%}$
$8 / 8$
${\color{red}77.78\%}$
$7 / 9$
src/contracts/protocol/libraries/configuration/EModeConfiguration.sol ${\color{green}100\%}$
$9 / 9$
${\color{green}100\%}$
$2 / 2$
${\color{red}66.67\%}$
$4 / 6$
src/contracts/protocol/libraries/configuration/ReserveConfiguration.sol ${\color{lightgreen}97.83\%}$
$90 / 92$
306, 309
${\color{lightgreen}97.44\%}$
$38 / 39$
ReserveConfiguration.getBorrowingEnabled
${\color{red}60\%}$
$12 / 20$
src/contracts/protocol/libraries/configuration/UserConfiguration.sol ${\color{green}100\%}$
$55 / 55$
${\color{green}100\%}$
$13 / 13$
${\color{red}72.22\%}$
$13 / 18$
src/contracts/protocol/libraries/logic/BorrowLogic.sol ${\color{green}100\%}$
$44 / 44$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$9 / 9$
src/contracts/protocol/libraries/logic/BridgeLogic.sol ${\color{green}100\%}$
$31 / 31$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$4 / 4$
src/contracts/protocol/libraries/logic/CalldataLogic.sol ${\color{green}100\%}$
$70 / 70$
${\color{green}100\%}$
$8 / 8$
${\color{green}100\%}$
$3 / 3$
src/contracts/protocol/libraries/logic/ConfiguratorLogic.sol ${\color{green}100\%}$
$34 / 34$
${\color{green}100\%}$
$5 / 5$
${\color{green}100\%}$
$2 / 2$
src/contracts/protocol/libraries/logic/EModeLogic.sol ${\color{green}100\%}$
$6 / 6$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$0 / 0$
src/contracts/protocol/libraries/logic/FlashLoanLogic.sol ${\color{green}100\%}$
$42 / 42$
${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$8 / 8$
src/contracts/protocol/libraries/logic/GenericLogic.sol ${\color{orange}92\%}$
$46 / 50$
92, 94, 131, 222
${\color{green}100\%}$
$4 / 4$
${\color{red}80\%}$
$8 / 10$
src/contracts/protocol/libraries/logic/IsolationModeLogic.sol ${\color{green}100\%}$
$10 / 10$
${\color{green}100\%}$
$1 / 1$
${\color{green}100\%}$
$3 / 3$
src/contracts/protocol/libraries/logic/LiquidationLogic.sol $^{↓-4.9\%}{\color{orange}93.92\%}$
$139 / 148$
146, 152, 396, 566, 570 and 4 more
${\color{green}100\%}$
$7 / 7$
$^{↓-12\%}{\color{orange}82.05\%}$
$32 / 39$
src/contracts/protocol/libraries/logic/PoolLogic.sol ${\color{green}100\%}$
$44 / 44$
${\color{green}100\%}$
$7 / 7$
${\color{red}72.73\%}$
$8 / 11$
src/contracts/protocol/libraries/logic/ReserveLogic.sol ${\color{green}100\%}$
$72 / 72$
${\color{green}100\%}$
$9 / 9$
${\color{green}100\%}$
$14 / 14$
src/contracts/protocol/libraries/logic/SupplyLogic.sol ${\color{green}100\%}$
$66 / 66$
${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$17 / 17$
src/contracts/protocol/libraries/logic/ValidationLogic.sol ${\color{green}100\%}$
$124 / 124$
${\color{green}100\%}$
$15 / 15$
${\color{lightgreen}95.38\%}$
$124 / 130$
src/contracts/protocol/libraries/math/PercentageMath.sol ${\color{red}75\%}$
$6 / 8$
34, 55
${\color{green}100\%}$
$2 / 2$
${\color{red}0\%}$
$0 / 2$
src/contracts/protocol/libraries/math/WadRayMath.sol ${\color{red}76\%}$
$19 / 25$
33, 51, 69, 87, 105 and 1 more
${\color{green}100\%}$
$6 / 6$
${\color{red}0\%}$
$0 / 6$
src/contracts/protocol/pool/L2Pool.sol ${\color{green}100\%}$
$29 / 29$
${\color{green}100\%}$
$9 / 9$
${\color{green}100\%}$
$0 / 0$
src/contracts/protocol/pool/Pool.sol $^{↑0.043\%}{\color{lightgreen}98.99\%}$
$196 / 198$
185, 294
${\color{green}100\%}$
$71 / 71$
$^{↑2.4\%}{\color{red}75.86\%}$
$22 / 29$
src/contracts/protocol/pool/PoolConfigurator.sol ${\color{green}100\%}$
$235 / 235$
${\color{green}100\%}$
$45 / 45$
${\color{lightgreen}95.24\%}$
$60 / 63$
src/contracts/protocol/tokenization/AToken.sol ${\color{green}100\%}$
$54 / 54$
${\color{green}100\%}$
$17 / 17$
${\color{green}100\%}$
$12 / 12$
src/contracts/protocol/tokenization/VariableDebtToken.sol ${\color{green}100\%}$
$30 / 30$
${\color{green}100\%}$
$12 / 12$
${\color{green}100\%}$
$2 / 2$
src/contracts/protocol/tokenization/base/DebtTokenBase.sol ${\color{green}100\%}$
$19 / 19$
${\color{green}100\%}$
$5 / 5$
${\color{green}100\%}$
$6 / 6$
src/contracts/protocol/tokenization/base/EIP712Base.sol ${\color{green}100\%}$
$11 / 11$
${\color{green}100\%}$
$4 / 4$
${\color{green}100\%}$
$1 / 1$
src/contracts/protocol/tokenization/base/IncentivizedERC20.sol ${\color{green}100\%}$
$65 / 65$
${\color{green}100\%}$
$21 / 21$
${\color{green}100\%}$
$6 / 6$
src/contracts/protocol/tokenization/base/MintableIncentivizedERC20.sol ${\color{green}100\%}$
$16 / 16$
${\color{green}100\%}$
$2 / 2$
${\color{green}100\%}$
$2 / 2$
src/contracts/protocol/tokenization/base/ScaledBalanceTokenBase.sol ${\color{green}100\%}$
$52 / 52$
${\color{green}100\%}$
$7 / 7$
${\color{green}100\%}$
$8 / 8$
src/contracts/rewards/EmissionManager.sol ${\color{green}100\%}$
$30 / 30$
${\color{green}100\%}$
$12 / 12$
${\color{red}50\%}$
$3 / 6$
src/contracts/rewards/RewardsController.sol ${\color{lightgreen}99.04\%}$
$103 / 104$
201
${\color{green}100\%}$
$24 / 24$
${\color{red}60.71\%}$
$17 / 28$
src/contracts/rewards/RewardsDistributor.sol ${\color{lightgreen}99.32\%}$
$145 / 146$
429
${\color{green}100\%}$
$24 / 24$
${\color{orange}80.95\%}$
$17 / 21$
src/contracts/rewards/transfer-strategies/PullRewardsTransferStrategy.sol ${\color{green}100\%}$
$7 / 7$
${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$0 / 0$
src/contracts/rewards/transfer-strategies/StakedTokenTransferStrategy.sol ${\color{green}100\%}$
$18 / 18$
${\color{green}100\%}$
$6 / 6$
${\color{red}50\%}$
$1 / 2$
src/contracts/rewards/transfer-strategies/TransferStrategyBase.sol ${\color{green}100\%}$
$14 / 14$
${\color{green}100\%}$
$6 / 6$
${\color{red}50\%}$
$2 / 4$
src/contracts/treasury/Collector.sol $^{↓-9\%}{\color{red}9.89\%}$
$9 / 91$
58, 59, 67, 68, 78 and 77 more
${\color{red}17.65\%}$
$3 / 17$
Collector.onlyFundsAdmin, Collector.onlyAdminOrRecipient, Collector.streamExists, Collector.getFundsAdmin, Collector.getNextStreamId and 9 more
${\color{red}2.86\%}$
$1 / 35$
src/contracts/treasury/RevenueSplitter.sol ${\color{green}100\%}$
$25 / 25$
${\color{green}100\%}$
$3 / 3$
${\color{green}100\%}$
$3 / 3$

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants