diff --git a/Makefile b/Makefile index f46c33c3..e6a424d8 100644 --- a/Makefile +++ b/Makefile @@ -35,4 +35,6 @@ coverage :; forge coverage --report lcov && \ download :; cast etherscan-source --chain ${chain} -d src/etherscan/${chain}_${address} ${address} git-diff : @mkdir -p diffs - @printf '%s\n%s\n%s\n' "\`\`\`diff" "$$(git diff --no-index --diff-algorithm=patience --ignore-space-at-eol ${before} ${after})" "\`\`\`" > diffs/${out}.md + @npx prettier --parser markdown ${before} ${after} --write + @printf '%s\n%s\n%s\n' "\`\`\`diff" "$$(git diff --no-index --ignore-space-at-eol ${before} ${after})" "\`\`\`" > diffs/${out}.md +git-word-diff :; git diff --no-index --word-diff -- ${before} ${after} | tail +6 | sed 's/\[-/\~~/g;s/-]/\~~ /g;' | sed 's/{+/\**/g;s/+}/\**/g;' > diffs/${out}.md diff --git a/changelog/3.2.md b/changelog/3.2.md new file mode 100644 index 00000000..fe50aea5 --- /dev/null +++ b/changelog/3.2.md @@ -0,0 +1,102 @@ +# Aave 3.2 + +Aave 3.2 focuses on two main areas of the aave protocol: + +- the final deprecation of stable borrowing +- improvements on the eModes + +## Stable Rate offboarding + +While previous upgrades allowed graceful offboarding of stable borrowing, now with no stable borrow positions being left the protcol can remove all the now obsolete stable rate related logic. + +### Migration guide + +The upgrade is 100% backwards compatible. +There are no changes to any methods, nor are there changes to emitted events. +Parameters emitted in events that relate to stable rate are nulled. + +## Emodes: Removal of the eMode oracle + +The eMode oracle has never been used and it's usefulnes is debatable. +Therefore to allow for storage optimization within the eMode configuration and reduce unnecessary code paths - the eMode oracle was removed. + +#### Indexers + +For backwards compatibility the existing `EModeCategoryAdded` will be emitted, but with `oracle` being nullified. + +## Emodes: Liquid eModes + +The new Liquid eMode feature of Aave v3.2 removes the previous constraint: **an asset listed on Aave can be eligible for different eModes, and then it only depends on the user to choose which eMode he wants to enter to.** + +For example, with liquid eModes, a possible configuration not doable before would be: + +- eMode 1, with wstETH, weETH and WETH. +- eMode 2, with wstETH and WETH. +- eMode 3, with weETH and WETH. +- eMode 4, with WETH and GHO. + +So then, user A holding the wstETH and weETH collaterals, could borrow WETH at high LTV. +User B holding only wstETH could borrow WETH at high (but different) LTV. +User C holding only weETH could similarly borrow WETH at a different LTV than the previous two eModes. +User D could have a position with WETH collateral and GHO borrowings. + +This doesn’t stop there, as more sophisticated configuration strategies could be adopted, like: + +- eMode for only WETH and stablecoins. +- eMode for onboarding less mature LSTs, without requiring them being together with all major LSTs. + +**For extra configuration flexibility, liquid eModes also allow now to flag an asset as only borrowable, only collateral, or both, in the context of an eMode.** +For example, in a hypothetic eMode with only wstETH and WETH, the normal configuration would be wstETH as only collateral and WETH as only borrowable, fully focusing on the wstETH leverage use-case. + +### BREAKING CHANGES + +- DataTypes.EModeCategory will return the same data as now, but is flagged deprecated and will be removed at a later point. + +- the new version of `PoolDataProvider` no longer exposes `PoolDataProvider.getReserveEModeCategory(address asset)` as there no longer is a `1:1` relation between assets and eModes. +- `reserveConfig.getEModeCategory()` will return the current eMode, but will no longer be updated and is flagged deprecated. + +### Migration guide + +For existing users, the upgrade is 100% backwards compatible and no migration or similar is required. +Entering and leaving an eMode still works via `setUserEMode(categoryId)` and `getUserEMode(address user)` like in previous versions of the protocol. + +#### Indexers + +As collateral/borrowable flags are newly introduced, two new events are being emitted: + +- `event AssetCollateralInEModeChanged(address indexed asset, uint8 categoryId, bool collateral);` +- `event AssetBorrowableInEModeChanged(address indexed asset, uint8 categoryId, bool borrowable);` + +#### Getters + +In aave 3.1 all eMode parameters were exposed via a single `getEModeCategoryData` getter. +When checking existing integrations, we noticed that in most cases this approach is suboptimal, given that users only rely on a subset of the data. +Therefore in addition to the **deprecated** `getEModeCategoryData` getter there are now independent getters for the respective values: + +- `getEModeCategoryCollateralConfig(categoryId)`, returning the eMode ltv,lt,lb +- `getEModeCategoryLabel(categoryId)`, returning the eMode label +- `getEModeCategoryCollateralBitmap(categoryId)`, returning the collateral bitmap +- `getEModeCategoryBorrowableBitmap(categoryId)`, returning the borrowable bitmap + +#### Identifying eModes for an asset + +In the previous version of the eModes feature it was possible to query a reserve configration to receive it's unique eMode. +The relevant bits on the reseve configuration have been nullified. + +To identify eModes of a selected asset, there is currently multiple options: + +- onchain one can iterate trough eModes and select the "correct one" based on your application specific needs. + +```sol +for (uint8 i = 1; i < 256; i++) { + DataTypes.CollateralConfig memory cfg = pool.getEModeCategoryCollateralConfig(i); + // check if it is an active eMode + if (cfg.liquidationThreshold != 0) { + // check if it's an eMode you are interested in + EModeConfiguration.isCollateralAsset(pool.getEModeCategoryCollateralBitmap(i), someReserveIndex); + EModeConfiguration.isBorrowableAsset(pool.getEModeCategoryBorrowableBitmap(i), someReserveIndex); + } +} +``` + +- an offchain system could listen to `AssetCollateralInEModeChanged` & `AssetBorrowableInEModeChanged` events and feed the onchain contract with an appropriate categoryId diff --git a/changelog/3.2_3.1_gas-diff.md b/changelog/3.2_3.1_gas-diff.md new file mode 100644 index 00000000..59555afb --- /dev/null +++ b/changelog/3.2_3.1_gas-diff.md @@ -0,0 +1,255 @@ +```diff +diff --git a/reports/gas.old b/reports/gas.new +index 27edd2c..d023564 100644 +--- a/reports/gas.old ++++ b/reports/gas.new +@@ -1,28 +1,27 @@ + | Deployment Cost | Deployment Size | | | | | + | 465623 | 2115 | | | | | + | Function Name | min | avg | median | max | # calls | +-| ADDRESSES_PROVIDER | 898 | 3118 | 965 | 5465 | 2960 | ++| ADDRESSES_PROVIDER | 898 | 4362 | 5398 | 5465 | 3204 | +-| DOMAIN_SEPARATOR | 1071 | 3102 | 3071 | 7571 | 260 | ++| DOMAIN_SEPARATOR | 1071 | 4688 | 4156 | 7571 | 5 | +-| EMISSION_MANAGER | 940 | 940 | 940 | 940 | 711 | ++| EMISSION_MANAGER | 940 | 940 | 940 | 940 | 657 | +-| FLASHLOAN_PREMIUM_TOTAL | 1002 | 2032 | 3002 | 7524 | 1426 | ++| FLASHLOAN_PREMIUM_TOTAL | 1002 | 2033 | 3002 | 7524 | 1318 | +-| FLASHLOAN_PREMIUM_TO_PROTOCOL | 1095 | 1099 | 1095 | 7595 | 1423 | ++| FLASHLOAN_PREMIUM_TO_PROTOCOL | 1051 | 1075 | 1073 | 7573 | 1315 | +-| MAX_GRACE_PERIOD | 5418 | 5418 | 5418 | 5418 | 1792 | ++| MAX_GRACE_PERIOD | 5374 | 5374 | 5374 | 5374 | 1792 | +-| MAX_NUMBER_RESERVES | 922 | 922 | 922 | 922 | 1 | ++| MAX_NUMBER_RESERVES | 900 | 900 | 900 | 900 | 512 | +-| MAX_STABLE_RATE_BORROW_SIZE_PERCENT | 1001 | 1001 | 1001 | 1001 | 1 | +-| POOL | 940 | 2117 | 940 | 5440 | 107 | ++| POOL | 940 | 940 | 940 | 940 | 151 | +-| RESERVE_TREASURY_ADDRESS | 1033 | 3279 | 3033 | 7533 | 2582 | ++| RESERVE_TREASURY_ADDRESS | 1033 | 1399 | 1033 | 7533 | 11254 | +-| UNDERLYING_ASSET_ADDRESS | 1011 | 1245 | 1011 | 3055 | 875 | ++| UNDERLYING_ASSET_ADDRESS | 1011 | 1048 | 1055 | 3055 | 18525 | +-| approve | 51281 | 51337 | 51305 | 51653 | 3093 | ++| approve | 51293 | 51357 | 51341 | 51653 | 39 | +-| backUnbacked | 139070 | 153427 | 150732 | 173679 | 9 | ++| backUnbacked | 125314 | 140965 | 138917 | 159923 | 9 | +-| balanceOf | 1033 | 3698 | 3360 | 22860 | 26304 | ++| balanceOf | 1297 | 5838 | 5387 | 22882 | 13022 | +-| borrow(address,uint256,uint256,uint16,address) | 85039 | 259204 | 263334 | 310883 | 2928 | ++| borrow(address,uint256,uint256,uint16,address) | 74012 | 236273 | 249909 | 289117 | 3979 | +-| borrow(bytes32) | 243318 | 243318 | 243318 | 243318 | 3 | ++| borrow(bytes32) | 229784 | 229784 | 229784 | 229784 | 3 | +-| borrowAllowance | 1398 | 1424 | 1424 | 1450 | 10 | ++| borrowAllowance | 1450 | 1450 | 1450 | 1450 | 5 | +-| configureEModeCategory | 34510 | 34532 | 34532 | 34555 | 512 | ++| configureEModeCategory | 34265 | 34276 | 34276 | 34287 | 512 | +-| configureReserveAsCollateral | 44067 | 64132 | 72201 | 122702 | 778 | ++| configureReserveAsCollateral | 44089 | 64560 | 57776 | 122574 | 2308 | +-| decimals | 948 | 1020 | 970 | 7470 | 801 | ++| decimals | 948 | 980 | 970 | 7470 | 18578 | + | decreaseAllowance | 34424 | 34424 | 34424 | 34424 | 1 | +-| delegationWithSig | 29263 | 56423 | 45286 | 84345 | 14 | ++| delegationWithSig | 29263 | 56402 | 45264 | 84300 | 7 | +-| deposit | 185121 | 234784 | 238060 | 247660 | 4362 | ++| deposit | 91045 | 215439 | 232166 | 235786 | 64 | +-| disableLiquidationGracePeriod | 43659 | 55023 | 66191 | 66191 | 513 | ++| disableLiquidationGracePeriod | 43570 | 54942 | 66117 | 66117 | 513 | +-| dropReserve | 32591 | 35807 | 32679 | 114160 | 775 | ++| dropReserve | 32635 | 35738 | 32657 | 105160 | 775 | +-| flashLoan | 59460 | 177954 | 155739 | 374408 | 266 | ++| flashLoan | 59293 | 166429 | 135219 | 374226 | 267 | +-| flashLoanSimple | 50968 | 322401 | 191286 | 664969 | 11 | ++| flashLoanSimple | 50944 | 311942 | 179440 | 642995 | 11 | +-| getAssetIndex | 3098 | 10053 | 9606 | 16527 | 9694 | ++| getAssetIndex | 3708 | 11517 | 14698 | 21619 | 90 | +-| getAverageStableRate | 5340 | 5340 | 5340 | 5340 | 1 | +-| getBorrowLogic | 5417 | 5428 | 5428 | 5439 | 2 | ++| getBorrowLogic | 5395 | 5417 | 5417 | 5439 | 2 | +-| getClaimer | 1244 | 7718 | 7744 | 7744 | 514 | ++| getClaimer | 1244 | 3410 | 1244 | 7744 | 3 | +-| getConfiguration | 1298 | 1981 | 1320 | 7820 | 32304 | ++| getConfiguration | 1342 | 1917 | 1364 | 7864 | 56492 | +-| getConfiguratorLogic | 5353 | 5353 | 5353 | 5353 | 1 | ++| getConfiguratorLogic | 5397 | 5397 | 5397 | 5397 | 1 | + | getDistributionEnd | 1411 | 1411 | 1411 | 1411 | 1 | +-| getEModeCategoryData | 2532 | 6296 | 6793 | 11032 | 55 | ++| getEModeCategoryData | 13446 | 13446 | 13446 | 13446 | 3 | +-| getEModeLogic | 5392 | 5403 | 5403 | 5414 | 2 | ++| getEModeLogic | 5392 | 5425 | 5425 | 5459 | 2 | +-| getFlashLoanLogic | 5394 | 5405 | 5405 | 5416 | 2 | ++| getFlashLoanLogic | 5416 | 5438 | 5438 | 5461 | 2 | +-| getIncentivesController | 1044 | 1082 | 1067 | 7588 | 787 | ++| getIncentivesController | 1044 | 1066 | 1088 | 7588 | 18392 | +-| getLiquidationGracePeriod | 29229 | 29229 | 29229 | 29229 | 2258 | ++| getLiquidationGracePeriod | 29185 | 29204 | 29207 | 29207 | 2270 | +-| getLiquidationLogic | 5439 | 5439 | 5439 | 5439 | 2 | ++| getLiquidationLogic | 5439 | 5450 | 5450 | 5461 | 2 | +-| getPendingLtv | 1215 | 1215 | 1215 | 1215 | 771 | ++| getPendingLtv | 1259 | 1259 | 1259 | 1259 | 771 | +-| getPoolLogic | 5416 | 5438 | 5438 | 5460 | 2 | ++| getPoolLogic | 5393 | 5415 | 5415 | 5438 | 2 | ++| getEModeCategoryBorrowableBitmap | 1287 | 7705 | 7787 | 7787 | 1827 | ++| getEModeCategoryCollateralBitmap | 1297 | 7732 | 7797 | 7797 | 2624 | ++| getEModeCategoryCollateralConfig | 1511 | 2351 | 1511 | 8011 | 110 | ++| getEModeCategoryLabel | 1954 | 2271 | 2212 | 3954 | 25 | + | getPreviousIndex | 1270 | 1270 | 1270 | 1270 | 39 | + | getReserveAddressById | 1281 | 1281 | 1281 | 1281 | 1 | +-| getReserveData | 5007 | 7533 | 5029 | 29529 | 11478 | ++| getReserveData | 4889 | 12060 | 10933 | 29433 | 24876 | +-| getReserveDataExtended | 4122 | 16316 | 4122 | 28622 | 1547 | ++| getReserveDataExtended | 4186 | 4852 | 4186 | 6186 | 6 | +-| getReserveNormalizedIncome | 0 | 3480 | 1465 | 10427 | 28339 | ++| getReserveNormalizedIncome | 1443 | 1928 | 1487 | 10449 | 12324 | +-| getReserveNormalizedVariableDebt | 1487 | 1681 | 1509 | 11607 | 7456 | ++| getReserveNormalizedVariableDebt | 1465 | 1675 | 1509 | 11607 | 7709 | +-| getReservesCount | 1028 | 1028 | 1028 | 1028 | 1 | ++| getReservesCount | 1006 | 1006 | 1006 | 1006 | 2 | +-| getReservesList | 3804 | 14119 | 16304 | 16304 | 1632 | ++| getReservesList | 3814 | 14280 | 11814 | 104107 | 4195 | +-| getRewardsByAsset | 2399 | 10619 | 10899 | 10899 | 2419 | ++| getRewardsByAsset | 2399 | 5698 | 3672 | 10899 | 201 | +-| getScaledUserBalanceAndSupply | 1449 | 5068 | 3449 | 9949 | 21 | ++| getScaledUserBalanceAndSupply | 1449 | 4192 | 3449 | 9949 | 39 | +-| getSupplyData | 941 | 4320 | 5441 | 5441 | 24634 | +-| getSupplyLogic | 5395 | 5406 | 5406 | 5417 | 2 | ++| getSupplyLogic | 5395 | 5427 | 5427 | 5459 | 2 | +-| getTotalSupplyAndAvgRate | 5467 | 5467 | 5467 | 5467 | 1 | +-| getTotalSupplyLastUpdated | 5380 | 5380 | 5380 | 5380 | 1 | +-| getUserAccountData | 20331 | 23740 | 24831 | 33184 | 1037 | ++| getUserAccountData | 12857 | 22690 | 23001 | 38126 | 2575 | +-| getUserConfiguration | 1322 | 1379 | 1322 | 3322 | 1822 | +-| getUserEMode | 1275 | 1275 | 1275 | 1275 | 1036 | +-| getUserLastUpdated | 1063 | 1066 | 1063 | 5563 | 1303 | +-| getUserRewards | 7469 | 8705 | 8749 | 17526 | 267 | +-| getUserStableRate | 1053 | 1056 | 1053 | 5553 | 1303 | +-| getVirtualUnderlyingBalance | 1298 | 1298 | 1298 | 1298 | 2161 | ++| getUserConfiguration | 1322 | 1367 | 1322 | 3322 | 1821 | ++| getUserEMode | 1253 | 1253 | 1253 | 1253 | 1296 | ++| getUserRewards | 5237 | 7340 | 7469 | 10837 | 19 | ++| getVirtualUnderlyingBalance | 1276 | 1276 | 1276 | 1343 | 2159 | +-| initReserve | 33566 | 33566 | 33566 | 33566 | 1024 | ++| initReserve | 33292 | 33324 | 33324 | 33356 | 1024 | +-| initReserves | 43976 | 1109034 | 67095 | 266376563 | 777 | ++| initReserves | 45710 | 32954623 | 1608767 | 216346556 | 2049 | +-| liquidationCall(address,address,address,uint256,bool) | 93735 | 277164 | 373019 | 436593 | 3511 | ++| liquidationCall(address,address,address,uint256,bool) | 80781 | 265740 | 351321 | 411059 | 3772 | +-| liquidationCall(bytes32,bytes32) | 436101 | 436101 | 436101 | 436101 | 1 | ++| liquidationCall(bytes32,bytes32) | 403478 | 403478 | 403478 | 403478 | 1 | +-| mintToTreasury(address[]) | 99379 | 100961 | 100961 | 102543 | 4 | ++| mintToTreasury(address[]) | 99355 | 100937 | 100937 | 102519 | 4 | +-| mintUnbacked | 39431 | 157624 | 142643 | 206928 | 17 | +-| name | 1883 | 2336 | 1883 | 8383 | 1130 | +-| nonces | 1193 | 3233 | 3271 | 3271 | 266 | ++| mintUnbacked | 39409 | 145643 | 130769 | 193113 | 17 | ++| name | 1625 | 2060 | 1945 | 8383 | 18717 | ++| nonces | 1193 | 2463 | 3271 | 3271 | 10 | +-| principalBalanceOf | 1054 | 1058 | 1054 | 5554 | 1304 | +-| rebalanceStableBorrowRate(address,address) | 66731 | 77785 | 76855 | 90701 | 4 | +-| rebalanceStableBorrowRate(bytes32) | 88567 | 88567 | 88567 | 88567 | 1 | +-| repay(address,uint256,uint256,address) | 72862 | 145786 | 183147 | 202671 | 12 | +-| repay(bytes32) | 171079 | 171079 | 171079 | 171079 | 1 | ++| repay(address,uint256,uint256,address) | 60515 | 129404 | 167787 | 187188 | 13 | +-| repayWithATokens(address,uint256,uint256) | 169667 | 197449 | 198790 | 209791 | 261 | ++| repayWithATokens(address,uint256,uint256) | 155169 | 181413 | 182340 | 193364 | 261 | +-| repayWithATokens(bytes32) | 174264 | 174264 | 174264 | 174264 | 1 | +-| repayWithPermit(address,uint256,uint256,address,uint256,uint8,bytes32,bytes32) | 172046 | 202393 | 206845 | 235069 | 768 | ++| repayWithPermit(address,uint256,uint256,address,uint256,uint8,bytes32,bytes32) | 155747 | 185446 | 182899 | 218983 | 768 | +-| repayWithPermit(bytes32,bytes32,bytes32) | 206026 | 223388 | 232772 | 234406 | 256 | ++| repayWithPermit(bytes32,bytes32,bytes32) | 187610 | 205991 | 197025 | 217816 | 256 | +-| rescueTokens | 39115 | 70330 | 70428 | 70493 | 515 | ++| repay(bytes32) | 157379 | 157379 | 157379 | 157379 | 1 | ++| repayWithATokens(bytes32) | 160457 | 160457 | 160457 | 160457 | 1 | ++| rescueTokens | 39115 | 70351 | 70450 | 70515 | 515 | +-| scaledBalanceOf | 1307 | 3892 | 3307 | 7807 | 17058 | +-| scaledTotalSupply | 988 | 6174 | 7532 | 7532 | 24923 | +-| setAssetEModeCategory | 43877 | 48416 | 43877 | 79492 | 296 | +-| setBorrowCap | 43786 | 44831 | 43786 | 70877 | 268 | +-| setBorrowableInIsolation | 67664 | 70079 | 70466 | 70466 | 13 | +-| setConfiguration | 32805 | 32816 | 32816 | 32827 | 512 | +-| setDebtCeiling | 43831 | 48208 | 43831 | 121793 | 274 | +-| setEModeCategory | 45031 | 53891 | 45031 | 135403 | 295 | ++| scaledBalanceOf | 1307 | 3796 | 3307 | 7807 | 21200 | ++| scaledTotalSupply | 988 | 6101 | 7532 | 7532 | 23280 | ++| setAssetBorrowableInEMode | 94407 | 111508 | 111507 | 124758 | 1801 | ++| setAssetCollateralInEMode | 44103 | 99490 | 107690 | 107690 | 2853 | ++| setBorrowCap | 43764 | 44722 | 43764 | 70919 | 267 | ++| setBorrowableInIsolation | 67662 | 70075 | 70464 | 70464 | 13 | ++| setConfiguration | 32783 | 32794 | 32794 | 32805 | 512 | ++| setDebtCeiling | 43743 | 48113 | 43743 | 121555 | 274 | ++| setEModeCategory | 44850 | 102968 | 108880 | 108892 | 2849 | +-| setLiquidationGracePeriod | 32857 | 37965 | 37379 | 43790 | 1536 | +-| setLiquidationProtocolFee | 43996 | 60580 | 69836 | 70926 | 8 | +-| setPoolPause(bool) | 41133 | 43634 | 43639 | 43645 | 512 | +-| setPoolPause(bool,uint40) | 43789 | 88304 | 105603 | 134276 | 515 | +-| setReserveActive | 40884 | 44328 | 40884 | 118172 | 269 | +-| setReserveBorrowing | 43811 | 44179 | 43811 | 68496 | 260 | +-| setReserveFactor | 43744 | 44228 | 43744 | 168324 | 258 | +-| setReserveFlashLoaning | 68469 | 69188 | 68471 | 70625 | 3 | +-| setReserveFreeze | 47022 | 73134 | 74781 | 99799 | 784 | +-| setReserveInterestRateData | 44304 | 44449 | 44532 | 44532 | 256 | +-| setReserveInterestRateStrategyAddress(address,address) | 32846 | 34595 | 33195 | 42729 | 1538 | +-| setReserveInterestRateStrategyAddress(address,address,bytes) | 44536 | 46606 | 44536 | 204894 | 260 | +-| setReservePause(address,bool) | 43900 | 57019 | 69938 | 69938 | 513 | +-| setReservePause(address,bool,uint40) | 41267 | 65950 | 73872 | 78984 | 3086 | +-| setReserveStableRateBorrowing | 43878 | 55083 | 43878 | 70726 | 447 | +-| setSiloedBorrowing | 110540 | 120362 | 124195 | 126351 | 3 | +-| setSupplyCap | 43766 | 57641 | 70845 | 70881 | 528 | +-| setUnbackedMintCap | 70847 | 70847 | 70847 | 70847 | 7 | +-| setUserEMode | 48307 | 69273 | 66533 | 124479 | 17 | +-| setUserUseReserveAsCollateral(address,bool) | 91258 | 106982 | 102533 | 146832 | 42 | +-| setUserUseReserveAsCollateral(bytes32) | 104249 | 104249 | 104249 | 104249 | 1 | ++| setLiquidationGracePeriod | 32850 | 37953 | 37372 | 43783 | 1536 | ++| setLiquidationProtocolFee | 43996 | 60620 | 69900 | 70990 | 8 | ++| setPoolPause(bool) | 43546 | 43975 | 43558 | 116350 | 515 | ++| setPoolPause(bool,uint40) | 43789 | 88446 | 74811 | 134413 | 512 | ++| setReserveActive | 40906 | 43807 | 40906 | 118044 | 267 | ++| setReserveBorrowing | 43855 | 62331 | 68490 | 68492 | 1024 | ++| setReserveFactor | 43788 | 44208 | 43788 | 151867 | 258 | ++| setReserveFlashLoaning | 68489 | 68494 | 68491 | 70645 | 513 | ++| setReserveFreeze | 47044 | 73136 | 74867 | 99885 | 782 | ++| setReserveInterestRateData | 44360 | 44843 | 44576 | 131113 | 257 | ++| setReserveInterestRateStrategyAddress(address,address) | 32846 | 34588 | 33195 | 42729 | 1538 | ++| setReserveInterestRateStrategyAddress(address,address,bytes) | 44491 | 61354 | 44491 | 190210 | 300 | ++| setReservePause(address,bool) | 43834 | 44174 | 44062 | 67780 | 258 | ++| setReservePause(address,bool,uint40) | 41289 | 65779 | 73951 | 76263 | 3084 | ++| setSiloedBorrowing | 102106 | 111970 | 115825 | 117981 | 3 | ++| setSupplyCap | 43721 | 45734 | 43721 | 70876 | 279 | ++| setUnbackedMintCap | 70911 | 70911 | 70911 | 70911 | 7 | ++| setUserEMode | 40484 | 73767 | 67458 | 121154 | 2583 | ++| setUserUseReserveAsCollateral(address,bool) | 80336 | 96351 | 93552 | 129626 | 42 | ++| setUserUseReserveAsCollateral(bytes32) | 95351 | 95351 | 95351 | 95351 | 1 | +-| supply(address,uint256,address,uint16) | 67576 | 224075 | 242895 | 255446 | 3134 | ++| supply(address,uint256,address,uint16) | 56642 | 219107 | 226317 | 243572 | 5603 | +-| supply(bytes32) | 248862 | 248862 | 248862 | 248862 | 7 | ++| supply(bytes32) | 236988 | 236988 | 236988 | 236988 | 7 | +-| supplyWithPermit(address,uint256,address,uint16,uint256,uint8,bytes32,bytes32) | 154205 | 228834 | 253878 | 278406 | 768 | ++| supplyWithPermit(address,uint256,address,uint16,uint256,uint8,bytes32,bytes32) | 142365 | 216981 | 242026 | 266578 | 768 | +-| supplyWithPermit(bytes32,bytes32,bytes32) | 274396 | 274465 | 274438 | 274588 | 256 | ++| supplyWithPermit(bytes32,bytes32,bytes32) | 262610 | 262681 | 262658 | 262802 | 256 | +-| swapBorrowRateMode(address,uint256) | 71875 | 82362 | 72110 | 108180 | 7 | +-| swapBorrowRateMode(bytes32) | 110034 | 110034 | 110034 | 110034 | 1 | +-| symbol | 1690 | 2535 | 1904 | 8448 | 1098 | ++| symbol | 1646 | 2124 | 2010 | 8448 | 18692 | +-| totalSupply | 907 | 8067 | 11570 | 15570 | 5078 | ++| totalSupply | 1024 | 8836 | 11592 | 15592 | 5958 | +-| transfer | 27662 | 142942 | 149371 | 177944 | 273 | ++| transfer | 27662 | 143985 | 149393 | 167091 | 273 | +-| transferFrom | 138680 | 138800 | 138800 | 138920 | 2 | ++| transferFrom | 138702 | 138822 | 138822 | 138942 | 2 | +-| updateAToken | 41834 | 42242 | 41834 | 146921 | 257 | +-| updateBridgeProtocolFee | 32528 | 33708 | 32595 | 78343 | 526 | +-| updateFlashloanPremiumToProtocol | 40448 | 40537 | 40448 | 63402 | 258 | +-| updateFlashloanPremiumTotal | 40447 | 40536 | 40447 | 63412 | 258 | +-| updateFlashloanPremiums | 32898 | 32909 | 32909 | 32920 | 512 | +-| updateStableDebtToken | 41688 | 42073 | 41688 | 140830 | 257 | +-| updateVariableDebtToken | 41710 | 42095 | 41710 | 140832 | 257 | ++| updateAToken | 41767 | 42175 | 41767 | 146804 | 257 | ++| updateBridgeProtocolFee | 32528 | 33697 | 32573 | 78365 | 526 | ++| updateFlashloanPremiumToProtocol | 40448 | 40537 | 40448 | 63357 | 258 | ++| updateFlashloanPremiumTotal | 40402 | 40491 | 40402 | 63322 | 258 | ++| updateFlashloanPremiums | 32853 | 32864 | 32864 | 32875 | 512 | ++| updateVariableDebtToken | 41622 | 42007 | 41622 | 140688 | 257 | +-| withdraw(address,uint256,address) | 77252 | 147744 | 154662 | 224961 | 23 | ++| withdraw(address,uint256,address) | 66318 | 134721 | 141942 | 204789 | 23 | +-| withdraw(bytes32) | 150631 | 157711 | 157711 | 164791 | 2 | ++| withdraw(bytes32) | 138760 | 145839 | 145839 | 152919 | 2 | +``` diff --git a/docs/gas-diff.md b/docs/gas-diff.md deleted file mode 100644 index 38a59c4a..00000000 --- a/docs/gas-diff.md +++ /dev/null @@ -1,1442 +0,0 @@ -```diff -diff --git a/reports/gas.old b/reports/gas.new -index 0dec812..fe1d1d0 100644 ---- a/reports/gas.old -+++ b/reports/gas.new -@@ -27,37 +27,37 @@ - | claimRewardsOnBehalf | 41981 | 41981 | 41981 | 41981 | 1 | - | claimRewardsToSelf | 61212 | 143791 | 147239 | 188315 | 8 | - | collectAndUpdateRewards | 60947 | 102021 | 102021 | 143096 | 2 | --| convertToAssets | 3348 | 3493 | 3496 | 3496 | 261 | --| convertToShares | 22946 | 22946 | 22946 | 22946 | 1 | --| createStaticATokens | 2375769 | 2375769 | 2375769 | 2375769 | 46 | -+| convertToAssets | 3370 | 3514 | 3518 | 3518 | 261 | -+| convertToShares | 22968 | 22968 | 22968 | 22968 | 1 | -+| createStaticATokens | 2375835 | 2375835 | 2375835 | 2375835 | 46 | - | decimals | 3154 | 3154 | 3154 | 3154 | 1 | --| deposit | 216564 | 235000 | 237907 | 237919 | 22 | -+| deposit | 216608 | 235044 | 237951 | 237963 | 22 | - | getClaimableRewards | 7438 | 9046 | 7653 | 12042 | 17 | - | getStaticAToken | 1414 | 1414 | 1414 | 1414 | 52 | - | getStaticATokens | 16900 | 16900 | 16900 | 16900 | 2 | - | getTotalClaimableRewards | 8608 | 10621 | 10429 | 14208 | 9 | - | getUnclaimedRewards | 1590 | 1590 | 1590 | 1590 | 2 | --| maxDeposit | 33171 | 37914 | 33690 | 44759 | 5 | --| maxMint | 9226 | 57576 | 57765 | 57765 | 257 | --| maxRedeem | 10705 | 13359 | 14138 | 14600 | 18 | --| maxWithdraw | 14471 | 15471 | 15471 | 16471 | 2 | --| metaDeposit | 285952 | 343531 | 354571 | 390070 | 3 | --| metaWithdraw | 211664 | 211664 | 211664 | 211664 | 1 | --| mint | 76230 | 188856 | 188856 | 301483 | 2 | -+| maxDeposit | 33193 | 37936 | 33712 | 44781 | 5 | -+| maxMint | 9248 | 57620 | 57809 | 57809 | 257 | -+| maxRedeem | 10727 | 13402 | 14182 | 14644 | 18 | -+| maxWithdraw | 14537 | 15537 | 15537 | 16537 | 2 | -+| metaDeposit | 285996 | 343575 | 354615 | 390114 | 3 | -+| metaWithdraw | 211708 | 211708 | 211708 | 211708 | 1 | -+| mint | 76274 | 188911 | 188911 | 301549 | 2 | - | name | 10556 | 10556 | 10556 | 10556 | 1 | - | nonces | 3433 | 7147 | 9933 | 9933 | 7 | - | permit | 31503 | 58858 | 60440 | 84631 | 3 | --| previewDeposit | 3445 | 10445 | 10945 | 16445 | 4 | --| previewMint | 3687 | 3687 | 3687 | 3687 | 1 | --| previewRedeem | 3539 | 3539 | 3539 | 3539 | 3 | --| previewWithdraw | 3662 | 3662 | 3662 | 3662 | 1 | --| rate | 3037 | 3037 | 3037 | 3037 | 1 | --| redeem(uint256,address,address) | 76729 | 231188 | 257218 | 318137 | 9 | --| redeem(uint256,address,address,bool) | 181326 | 181326 | 181326 | 181326 | 1 | -+| previewDeposit | 3467 | 10467 | 10967 | 16467 | 4 | -+| previewMint | 3709 | 3709 | 3709 | 3709 | 1 | -+| previewRedeem | 3561 | 3561 | 3561 | 3561 | 3 | -+| previewWithdraw | 3684 | 3684 | 3684 | 3684 | 1 | -+| rate | 3059 | 3059 | 3059 | 3059 | 1 | -+| redeem(uint256,address,address) | 76773 | 231269 | 257306 | 318225 | 9 | -+| redeem(uint256,address,address,bool) | 181370 | 181370 | 181370 | 181370 | 1 | - | refreshRewardTokens | 128879 | 128879 | 128879 | 128879 | 33 | - | symbol | 4143 | 4143 | 4143 | 4143 | 1 | - | transfer | 101595 | 101595 | 101595 | 101595 | 1 | --| withdraw | 239849 | 239849 | 239849 | 239849 | 1 | -+| withdraw | 239959 | 239959 | 239959 | 239959 | 1 | - - - | src/contracts/dependencies/weth/WETH9.sol:WETH9 contract | | | | | | -@@ -66,9 +66,9 @@ - | 546391 | 2423 | | | | | - | Function Name | min | avg | median | max | # calls | - | allowance | 803 | 803 | 803 | 803 | 20 | --| approve | 29055 | 46249 | 46467 | 46467 | 1806 | --| balanceOf | 541 | 989 | 541 | 2541 | 9310 | --| decimals | 2313 | 2313 | 2313 | 2313 | 636 | -+| approve | 29055 | 46247 | 46467 | 46467 | 1794 | -+| balanceOf | 541 | 989 | 541 | 2541 | 9250 | -+| decimals | 2313 | 2313 | 2313 | 2313 | 641 | - | symbol | 1213 | 2250 | 3213 | 3213 | 27 | - - -@@ -91,7 +91,7 @@ - | 2050064 | 10159 | | | | | - | Function Name | min | avg | median | max | # calls | - | owner | 386 | 386 | 386 | 386 | 1 | --| swapAndDeposit | 352192 | 443390 | 475524 | 502455 | 3 | -+| swapAndDeposit | 352280 | 443455 | 475577 | 502508 | 3 | - - - | src/contracts/extensions/paraswap-adapters/ParaSwapRepayAdapter.sol:ParaSwapRepayAdapter contract | | | | | | -@@ -101,7 +101,7 @@ - | Function Name | min | avg | median | max | # calls | - | owner | 408 | 408 | 408 | 408 | 1 | - | rescueTokens | 36133 | 36133 | 36133 | 36133 | 1 | --| swapAndRepay | 405121 | 515303 | 535881 | 584329 | 4 | -+| swapAndRepay | 404879 | 515029 | 535596 | 584044 | 4 | - - - | src/contracts/extensions/paraswap-adapters/ParaSwapWithdrawSwapAdapter.sol:ParaSwapWithdrawSwapAdapter contract | | | | | | -@@ -110,7 +110,7 @@ - | 1757703 | 8731 | | | | | - | Function Name | min | avg | median | max | # calls | - | owner | 408 | 408 | 408 | 408 | 1 | --| withdrawAndSwap | 352139 | 378370 | 371176 | 411796 | 3 | -+| withdrawAndSwap | 352227 | 378435 | 371229 | 411849 | 3 | - - - | src/contracts/extensions/static-a-token/StataOracle.sol:StataOracle contract | | | | | | -@@ -118,8 +118,8 @@ - | Deployment Cost | Deployment Size | | | | | - | 349225 | 1737 | | | | | - | Function Name | min | avg | median | max | # calls | --| getAssetPrice | 14792 | 14877 | 14792 | 36792 | 257 | --| getAssetsPrices | 87496 | 87496 | 87496 | 87496 | 1 | -+| getAssetPrice | 14814 | 14899 | 14814 | 36814 | 257 | -+| getAssetsPrices | 87562 | 87562 | 87562 | 87562 | 1 | - - - | src/contracts/extensions/static-a-token/StaticATokenFactory.sol:StaticATokenFactory contract | | | | | | -@@ -128,10 +128,10 @@ - | 0 | 0 | | | | | - | Function Name | min | avg | median | max | # calls | - | STATIC_A_TOKEN_IMPL | 228 | 228 | 228 | 228 | 1 | --| createStaticATokens | 2345990 | 2345990 | 2345990 | 2345990 | 46 | -+| createStaticATokens | 2346056 | 2346056 | 2346056 | 2346056 | 46 | - | getStaticAToken | 616 | 616 | 616 | 616 | 52 | - | getStaticATokens | 9587 | 9587 | 9587 | 9587 | 2 | --| initialize | 24131 | 24131 | 24131 | 24131 | 624 | -+| initialize | 24131 | 24131 | 24131 | 24131 | 629 | - - - | src/contracts/extensions/static-a-token/StaticATokenLM.sol:StaticATokenLM contract | | | | | | -@@ -153,35 +153,35 @@ - | claimRewardsOnBehalf | 12204 | 12204 | 12204 | 12204 | 1 | - | claimRewardsToSelf | 32183 | 127811 | 128173 | 179199 | 8 | - | collectAndUpdateRewards | 32217 | 73291 | 73291 | 114366 | 2 | --| convertToAssets | 2550 | 2695 | 2698 | 2698 | 261 | --| convertToShares | 15648 | 15648 | 15648 | 15648 | 1 | -+| convertToAssets | 2572 | 2716 | 2720 | 2720 | 261 | -+| convertToShares | 15670 | 15670 | 15670 | 15670 | 1 | - | decimals | 2359 | 2359 | 2359 | 2359 | 1 | --| deposit | 196987 | 215388 | 218294 | 218294 | 22 | -+| deposit | 197031 | 215432 | 218338 | 218338 | 22 | - | getClaimableRewards | 6637 | 8244 | 6852 | 11241 | 17 | - | getTotalClaimableRewards | 7810 | 9823 | 9631 | 13410 | 9 | - | getUnclaimedRewards | 789 | 789 | 789 | 789 | 2 | - | initialize | 25757 | 181941 | 180780 | 187780 | 139 | --| maxDeposit | 25873 | 30616 | 26392 | 37461 | 5 | --| maxMint | 8428 | 50303 | 50467 | 50467 | 257 | --| maxRedeem | 9907 | 12561 | 13340 | 13802 | 18 | --| maxWithdraw | 13673 | 14673 | 14673 | 15673 | 2 | --| metaDeposit | 272703 | 338943 | 347430 | 396697 | 3 | --| metaWithdraw | 180770 | 180770 | 180770 | 180770 | 1 | --| mint | 47284 | 169867 | 169867 | 292450 | 2 | -+| maxDeposit | 25895 | 30638 | 26414 | 37483 | 5 | -+| maxMint | 8450 | 50347 | 50511 | 50511 | 257 | -+| maxRedeem | 9929 | 12604 | 13384 | 13846 | 18 | -+| maxWithdraw | 13739 | 14739 | 14739 | 15739 | 2 | -+| metaDeposit | 272747 | 338987 | 347474 | 396741 | 3 | -+| metaWithdraw | 180814 | 180814 | 180814 | 180814 | 1 | -+| mint | 47328 | 169922 | 169922 | 292516 | 2 | - | name | 3255 | 3255 | 3255 | 3255 | 1 | - | nonces | 2635 | 2635 | 2635 | 2635 | 7 | - | permit | 834 | 28265 | 29975 | 53987 | 3 | --| previewDeposit | 2647 | 9647 | 10147 | 15647 | 4 | --| previewMint | 2889 | 2889 | 2889 | 2889 | 1 | --| previewRedeem | 2741 | 2741 | 2741 | 2741 | 3 | --| previewWithdraw | 2864 | 2864 | 2864 | 2864 | 1 | --| rate | 2242 | 2242 | 2242 | 2242 | 1 | --| redeem(uint256,address,address) | 47400 | 211478 | 237511 | 293630 | 9 | --| redeem(uint256,address,address,bool) | 166282 | 166282 | 166282 | 166282 | 1 | -+| previewDeposit | 2669 | 9669 | 10169 | 15669 | 4 | -+| previewMint | 2911 | 2911 | 2911 | 2911 | 1 | -+| previewRedeem | 2763 | 2763 | 2763 | 2763 | 3 | -+| previewWithdraw | 2886 | 2886 | 2886 | 2886 | 1 | -+| rate | 2264 | 2264 | 2264 | 2264 | 1 | -+| redeem(uint256,address,address) | 47444 | 211559 | 237599 | 293718 | 9 | -+| redeem(uint256,address,address,bool) | 166326 | 166326 | 166326 | 166326 | 1 | - | refreshRewardTokens | 100523 | 100523 | 100523 | 100523 | 33 | - | symbol | 3342 | 3342 | 3342 | 3342 | 1 | - | transfer | 72662 | 72662 | 72662 | 72662 | 1 | --| withdraw | 224942 | 224942 | 224942 | 224942 | 1 | -+| withdraw | 225052 | 225052 | 225052 | 225052 | 1 | - - - | src/contracts/extensions/v3-config-engine/AaveV3ConfigEngine.sol:AaveV3ConfigEngine contract | | | | | | -@@ -189,16 +189,16 @@ - | Deployment Cost | Deployment Size | | | | | - | 0 | 0 | | | | | - | Function Name | min | avg | median | max | # calls | --| DEFAULT_INTEREST_RATE_STRATEGY | 337 | 337 | 337 | 337 | 5 | --| listAssets | 1844953 | 1844953 | 1844953 | 1844953 | 1 | --| listAssetsCustom | 1844210 | 5301679 | 5307465 | 5307465 | 620 | --| updateAssetsEMode | 68531 | 68531 | 68531 | 68531 | 1 | --| updateBorrowSide | 20079 | 76359 | 76359 | 132640 | 2 | --| updateCaps | 59884 | 59884 | 59884 | 59884 | 1 | --| updateCollateralSide | 8777 | 30468 | 8903 | 62879 | 5 | --| updateEModeCategories | 11063 | 61143 | 27080 | 128256 | 5 | --| updatePriceFeeds | 39338 | 39338 | 39338 | 39338 | 1 | --| updateRateStrategies | 122092 | 122092 | 122092 | 122092 | 1 | -+| DEFAULT_INTEREST_RATE_STRATEGY | 271 | 271 | 271 | 271 | 5 | -+| listAssets | 1824291 | 1824291 | 1824291 | 1824291 | 1 | -+| listAssetsCustom | 1823621 | 5252250 | 5257933 | 5257933 | 625 | -+| updateBorrowSide | 20079 | 76436 | 76436 | 132794 | 2 | -+| updateCaps | 59846 | 59846 | 59846 | 59846 | 1 | -+| updateCollateralSide | 8777 | 30494 | 8903 | 62945 | 5 | -+| updateEModeCategories | 10636 | 53642 | 29735 | 108603 | 5 | -+| updateEModeCollaterals | 92981 | 92981 | 92981 | 92981 | 1 | -+| updatePriceFeeds | 39331 | 39331 | 39331 | 39331 | 1 | -+| updateRateStrategies | 122114 | 122114 | 122114 | 122114 | 1 | - - - | src/contracts/helpers/AaveProtocolDataProvider.sol:AaveProtocolDataProvider contract | | | | | | -@@ -206,22 +206,21 @@ - | Deployment Cost | Deployment Size | | | | | - | 0 | 0 | | | | | - | Function Name | min | avg | median | max | # calls | --| getATokenTotalSupply | 11863 | 14153 | 11907 | 24953 | 2140 | --| getAllReservesTokens | 16222 | 28423 | 31722 | 39722 | 27 | -+| getATokenTotalSupply | 11863 | 14145 | 11907 | 24975 | 2155 | -+| getAllReservesTokens | 16155 | 28653 | 39655 | 39655 | 27 | - | getDebtCeiling | 3263 | 3263 | 3263 | 3263 | 4 | --| getDebtCeilingDecimals | 237 | 237 | 237 | 237 | 1 | -+| getDebtCeilingDecimals | 215 | 215 | 215 | 215 | 1 | - | getFlashLoanEnabled | 3236 | 4236 | 4236 | 5236 | 512 | --| getInterestRateStrategyAddress | 8453 | 19448 | 8453 | 39953 | 9 | --| getIsVirtualAccActive | 3242 | 3285 | 3286 | 3286 | 8116 | --| getLiquidationProtocolFee | 3174 | 9951 | 5674 | 16674 | 9 | --| getPaused | 3219 | 3325 | 3263 | 5263 | 8383 | -+| getInterestRateStrategyAddress | 8563 | 19558 | 8563 | 40063 | 9 | -+| getIsVirtualAccActive | 3242 | 3285 | 3286 | 3286 | 8519 | -+| getLiquidationProtocolFee | 3285 | 10062 | 5785 | 16785 | 9 | -+| getPaused | 3330 | 3433 | 3374 | 5374 | 8786 | - | getReserveCaps | 3286 | 8168 | 3286 | 16786 | 47 | --| getReserveConfigurationData | 3565 | 3773 | 3609 | 17109 | 9714 | --| getReserveEModeCategory | 3199 | 3199 | 3199 | 3199 | 1 | --| getReserveTokensAddresses | 8541 | 14283 | 14585 | 40085 | 9574 | -+| getReserveConfigurationData | 3662 | 3863 | 3706 | 17206 | 10115 | -+| getReserveTokensAddresses | 8541 | 14298 | 14585 | 40085 | 9972 | - | getSiloedBorrowing | 3289 | 3289 | 3289 | 3289 | 1 | --| getTotalDebt | 51955 | 51955 | 51955 | 51955 | 3 | --| getUserReserveData | 18944 | 26800 | 27034 | 43944 | 1302 | -+| getTotalDebt | 51890 | 51890 | 51890 | 51890 | 3 | -+| getUserReserveData | 18988 | 26784 | 27013 | 43988 | 1301 | - - - | src/contracts/helpers/L2Encoder.sol:L2Encoder contract | | | | | | -@@ -229,15 +228,15 @@ - | Deployment Cost | Deployment Size | | | | | - | 0 | 0 | | | | | - | Function Name | min | avg | median | max | # calls | --| encodeBorrowParams | 7859 | 7859 | 7859 | 7859 | 3 | --| encodeLiquidationCall | 19245 | 19245 | 19245 | 19245 | 1 | --| encodeRepayParams | 7742 | 7742 | 7742 | 7742 | 1 | --| encodeRepayWithATokensParams | 7770 | 7770 | 7770 | 7770 | 1 | --| encodeRepayWithPermitParams | 10231 | 10231 | 10231 | 10231 | 256 | --| encodeSetUserUseReserveAsCollateral | 7679 | 7679 | 7679 | 7679 | 1 | --| encodeSupplyParams | 34785 | 34785 | 34785 | 34785 | 7 | --| encodeSupplyWithPermitParams | 35144 | 35144 | 35144 | 35144 | 256 | --| encodeWithdrawParams | 7625 | 7659 | 7659 | 7693 | 2 | -+| encodeBorrowParams | 7881 | 7881 | 7881 | 7881 | 3 | -+| encodeLiquidationCall | 19289 | 19289 | 19289 | 19289 | 1 | -+| encodeRepayParams | 7764 | 7764 | 7764 | 7764 | 1 | -+| encodeRepayWithATokensParams | 7792 | 7792 | 7792 | 7792 | 1 | -+| encodeRepayWithPermitParams | 10253 | 10253 | 10253 | 10253 | 256 | -+| encodeSetUserUseReserveAsCollateral | 7701 | 7701 | 7701 | 7701 | 1 | -+| encodeSupplyParams | 34807 | 34807 | 34807 | 34807 | 7 | -+| encodeSupplyWithPermitParams | 35166 | 35166 | 35166 | 35166 | 256 | -+| encodeWithdrawParams | 7647 | 7681 | 7681 | 7715 | 2 | - - - | src/contracts/helpers/WrappedTokenGatewayV3.sol:WrappedTokenGatewayV3 contract | | | | | | -@@ -245,16 +244,16 @@ - | Deployment Cost | Deployment Size | | | | | - | 0 | 0 | | | | | - | Function Name | min | avg | median | max | # calls | --| borrowETH | 253365 | 253365 | 253365 | 253365 | 1 | -+| borrowETH | 253033 | 253033 | 253033 | 253033 | 1 | - | depositETH | 240170 | 240170 | 240170 | 240170 | 8 | - | emergencyEtherTransfer | 33801 | 33801 | 33801 | 33801 | 1 | - | emergencyTokenTransfer | 52810 | 52810 | 52810 | 52810 | 1 | - | getWETHAddress | 245 | 245 | 245 | 245 | 1 | - | owner | 308 | 308 | 308 | 308 | 1 | - | receive | 21206 | 21206 | 21206 | 21206 | 1 | --| repayETH | 175754 | 179762 | 177644 | 187475 | 5 | --| withdrawETH | 231257 | 235319 | 235319 | 239381 | 2 | --| withdrawETHWithPermit | 275525 | 278408 | 278408 | 281291 | 2 | -+| repayETH | 175668 | 179676 | 177558 | 187389 | 5 | -+| withdrawETH | 231328 | 235398 | 235398 | 239469 | 2 | -+| withdrawETHWithPermit | 275613 | 278496 | 278496 | 281379 | 2 | - - - | src/contracts/instances/ATokenInstance.sol:ATokenInstance contract | | | | | | -@@ -264,35 +263,35 @@ - | Function Name | min | avg | median | max | # calls | - | DOMAIN_SEPARATOR | 458 | 2275 | 2458 | 3543 | 5 | - | POOL | 327 | 327 | 327 | 327 | 151 | --| RESERVE_TREASURY_ADDRESS | 420 | 783 | 420 | 2420 | 9917 | --| UNDERLYING_ASSET_ADDRESS | 442 | 475 | 442 | 2442 | 8251 | -+| RESERVE_TREASURY_ADDRESS | 420 | 809 | 420 | 2420 | 10575 | -+| UNDERLYING_ASSET_ADDRESS | 442 | 474 | 442 | 2442 | 8654 | - | allowance | 785 | 1554 | 785 | 2785 | 26 | - | approve | 24590 | 24590 | 24590 | 24590 | 39 | --| balanceOf | 2744 | 5319 | 4744 | 17744 | 4799 | --| burn | 911 | 35660 | 37180 | 81176 | 2111 | --| decimals | 357 | 403 | 357 | 2357 | 8304 | -+| balanceOf | 2766 | 5311 | 4766 | 17766 | 5052 | -+| burn | 911 | 37674 | 37180 | 81176 | 2366 | -+| decimals | 357 | 401 | 357 | 2357 | 8707 | - | decreaseAllowance | 7709 | 7709 | 7709 | 7709 | 1 | --| getIncentivesController | 475 | 475 | 475 | 2475 | 8116 | -+| getIncentivesController | 475 | 475 | 475 | 2475 | 8519 | - | getPreviousIndex | 654 | 654 | 654 | 654 | 39 | - | getScaledUserBalanceAndSupply | 830 | 2419 | 2830 | 4830 | 39 | --| handleRepayment | 597 | 597 | 597 | 597 | 2599 | -+| handleRepayment | 597 | 597 | 597 | 597 | 2854 | - | increaseAllowance | 7776 | 20601 | 24876 | 24876 | 4 | --| initialize | 146515 | 228079 | 231709 | 321646 | 43251 | --| mint | 940 | 59706 | 64435 | 72198 | 4166 | -+| initialize | 146515 | 228395 | 231709 | 321646 | 43669 | -+| mint | 940 | 61265 | 64435 | 72198 | 6214 | - | mintToTreasury | 444 | 43943 | 49223 | 66323 | 6 | --| name | 1009 | 1454 | 1326 | 3264 | 8351 | -+| name | 1009 | 1454 | 1561 | 3264 | 8754 | - | nonces | 655 | 1988 | 2655 | 2655 | 9 | - | permit | 1117 | 33566 | 43549 | 53499 | 16 | - | rescueTokens | 12040 | 24418 | 14258 | 46957 | 3 | --| scaledBalanceOf | 691 | 1986 | 2691 | 2691 | 10419 | -+| scaledBalanceOf | 691 | 1909 | 2691 | 2691 | 13978 | - | scaledTotalSupply | 375 | 2181 | 2375 | 2375 | 414 | - | setIncentivesController | 11941 | 14316 | 14316 | 16691 | 2 | --| symbol | 1074 | 1515 | 1391 | 3329 | 8333 | --| totalSupply | 411 | 4892 | 6457 | 10457 | 4903 | --| transfer | 580 | 117377 | 122690 | 140646 | 275 | --| transferFrom | 87624 | 120965 | 130243 | 145830 | 43 | --| transferOnLiquidation | 988 | 30249 | 37526 | 44326 | 1807 | --| transferUnderlyingTo | 802 | 18573 | 16500 | 33639 | 2704 | -+| symbol | 1074 | 1514 | 1391 | 3329 | 8736 | -+| totalSupply | 411 | 5166 | 6479 | 10479 | 5941 | -+| transfer | 580 | 117696 | 122712 | 140404 | 275 | -+| transferFrom | 87646 | 120962 | 130265 | 145587 | 43 | -+| transferOnLiquidation | 988 | 31171 | 37548 | 44348 | 2062 | -+| transferUnderlyingTo | 802 | 22711 | 16500 | 33639 | 3727 | - - - | src/contracts/instances/L2PoolInstance.sol:L2PoolInstance contract | | | | | | -@@ -302,154 +301,155 @@ - | Function Name | min | avg | median | max | # calls | - | ADDRESSES_PROVIDER | 352 | 352 | 352 | 352 | 126 | - | FLASHLOAN_PREMIUM_TOTAL | 389 | 1389 | 1389 | 2389 | 124 | --| FLASHLOAN_PREMIUM_TO_PROTOCOL | 482 | 482 | 482 | 482 | 124 | --| borrow(address,uint256,uint256,uint16,address) | 198181 | 204033 | 203781 | 238990 | 266 | --| borrow(bytes32) | 203802 | 203802 | 203802 | 203802 | 3 | --| configureEModeCategory | 7230 | 8196 | 7230 | 49447 | 262 | --| dropReserve | 6336 | 6631 | 6336 | 82330 | 257 | --| getBorrowLogic | 282 | 282 | 282 | 282 | 1 | -+| FLASHLOAN_PREMIUM_TO_PROTOCOL | 415 | 415 | 415 | 415 | 124 | -+| borrow(address,uint256,uint256,uint16,address) | 197850 | 203778 | 203450 | 238567 | 266 | -+| borrow(bytes32) | 203449 | 203449 | 203449 | 203449 | 3 | -+| configureEModeCategory | 7310 | 8345 | 7310 | 45792 | 276 | -+| dropReserve | 6270 | 6565 | 6270 | 82286 | 257 | -+| getBorrowLogic | 304 | 304 | 304 | 304 | 1 | - | getBridgeLogic | 346 | 346 | 346 | 346 | 1 | --| getConfiguration | 682 | 728 | 682 | 2682 | 1636 | --| getEModeCategoryData | 6141 | 6141 | 6141 | 6141 | 12 | -+| getConfiguration | 704 | 714 | 704 | 2704 | 1462 | -+| getEModeCategoryData | 8124 | 8302 | 8379 | 8379 | 20 | - | getEModeLogic | 279 | 279 | 279 | 279 | 1 | --| getFlashLoanLogic | 348 | 348 | 348 | 348 | 1 | --| getLiquidationGracePeriod | 2659 | 2659 | 2659 | 2659 | 256 | --| getLiquidationLogic | 326 | 326 | 326 | 326 | 1 | --| getPoolLogic | 303 | 303 | 303 | 303 | 1 | --| getReserveData | 4195 | 11606 | 6195 | 24195 | 839 | --| getReserveNormalizedIncome | 892 | 893 | 892 | 1354 | 292 | --| getReserveNormalizedVariableDebt | 849 | 868 | 849 | 2849 | 264 | --| getReservesList | 11117 | 11117 | 11117 | 11117 | 262 | --| getSupplyLogic | 368 | 368 | 368 | 368 | 1 | --| getUserAccountData | 22727 | 22727 | 22727 | 22727 | 1 | --| getVirtualUnderlyingBalance | 682 | 682 | 682 | 682 | 4 | --| initReserve | 6553 | 41017 | 6553 | 167529 | 656 | --| initialize | 45403 | 45403 | 45403 | 45403 | 62 | --| liquidationCall | 377264 | 377264 | 377264 | 377264 | 1 | --| mintToTreasury | 77299 | 78694 | 78694 | 80089 | 2 | --| repay(address,uint256,uint256,address) | 164697 | 164697 | 164697 | 164697 | 2 | --| repay(bytes32) | 135689 | 135689 | 135689 | 135689 | 1 | --| repayWithATokens | 138810 | 138810 | 138810 | 138810 | 1 | --| repayWithPermit | 183122 | 199089 | 206994 | 210215 | 256 | --| rescueTokens | 48197 | 48197 | 48197 | 48197 | 256 | -+| getFlashLoanLogic | 281 | 281 | 281 | 281 | 1 | -+| getLiquidationGracePeriod | 2681 | 2681 | 2681 | 2681 | 256 | -+| getLiquidationLogic | 348 | 348 | 348 | 348 | 1 | -+| getPoolLogic | 325 | 325 | 325 | 325 | 1 | -+| getReserveData | 4217 | 11834 | 6217 | 24217 | 853 | -+| getReserveNormalizedIncome | 827 | 828 | 827 | 1289 | 292 | -+| getReserveNormalizedVariableDebt | 871 | 890 | 871 | 2871 | 264 | -+| getReservesList | 11139 | 11139 | 11139 | 11139 | 256 | -+| getSupplyLogic | 282 | 282 | 282 | 282 | 1 | -+| getUserAccountData | 22396 | 22396 | 22396 | 22396 | 1 | -+| getVirtualUnderlyingBalance | 704 | 704 | 704 | 704 | 4 | -+| initReserve | 6575 | 41039 | 6575 | 167551 | 656 | -+| initialize | 45425 | 45425 | 45425 | 45425 | 62 | -+| liquidationCall | 376728 | 376728 | 376728 | 376728 | 1 | -+| mintToTreasury | 77321 | 78716 | 78716 | 80111 | 2 | -+| repay(address,uint256,uint256,address) | 164652 | 164652 | 164652 | 164652 | 2 | -+| repay(bytes32) | 135733 | 135733 | 135733 | 135733 | 1 | -+| repayWithATokens | 138767 | 138767 | 138767 | 138767 | 1 | -+| repayWithPermit | 183077 | 198894 | 189516 | 210170 | 256 | -+| rescueTokens | 48219 | 48219 | 48219 | 48219 | 256 | - | resetIsolationModeTotalDebt | 4276 | 5590 | 6269 | 15276 | 402 | --| setConfiguration | 2178 | 4409 | 2178 | 24334 | 2004 | --| setLiquidationGracePeriod | 6352 | 11369 | 10840 | 17003 | 768 | --| setReserveInterestRateStrategyAddress | 6394 | 7969 | 6503 | 15791 | 769 | --| setUserEMode | 22040 | 42082 | 40260 | 87614 | 7 | --| setUserUseReserveAsCollateral(address,bool) | 53653 | 69628 | 71674 | 103062 | 17 | --| setUserUseReserveAsCollateral(bytes32) | 73824 | 73824 | 73824 | 73824 | 1 | --| supply(address,uint256,address,uint16) | 157289 | 207630 | 208589 | 208589 | 284 | -+| setConfiguration | 2178 | 4547 | 2178 | 24334 | 1848 | -+| setLiquidationGracePeriod | 6374 | 11394 | 10862 | 17025 | 768 | -+| setReserveInterestRateStrategyAddress | 6416 | 7991 | 6525 | 15813 | 769 | -+| setUserEMode | 19833 | 42074 | 40892 | 87328 | 7 | -+| setUserUseReserveAsCollateral(address,bool) | 53610 | 69578 | 71631 | 102908 | 17 | -+| setUserUseReserveAsCollateral(bytes32) | 73781 | 73781 | 73781 | 73781 | 1 | -+| supply(address,uint256,address,uint16) | 157311 | 207652 | 208611 | 208611 | 284 | - | supply(bytes32) | 210669 | 210669 | 210669 | 210669 | 7 | --| supplyWithPermit | 259858 | 259858 | 259858 | 259858 | 256 | --| syncIndexesState | 7317 | 13950 | 7317 | 27217 | 144 | --| syncRatesState | 16050 | 16050 | 16050 | 16050 | 144 | --| updateBridgeProtocolFee | 6240 | 6240 | 6240 | 6240 | 256 | --| updateFlashloanPremiums | 1749 | 8143 | 6422 | 21649 | 380 | --| withdraw | 126597 | 129039 | 129039 | 131482 | 2 | -+| supplyWithPermit | 259880 | 259880 | 259880 | 259880 | 256 | -+| syncIndexesState | 7251 | 13884 | 7251 | 27151 | 144 | -+| syncRatesState | 16072 | 16072 | 16072 | 16072 | 144 | -+| updateBridgeProtocolFee | 6262 | 6262 | 6262 | 6262 | 256 | -+| updateFlashloanPremiums | 1771 | 8165 | 6444 | 21671 | 380 | -+| withdraw | 126619 | 129061 | 129061 | 131504 | 2 | - - - | src/contracts/instances/PoolConfiguratorInstance.sol:PoolConfiguratorInstance contract | | | | | | - |----------------------------------------------------------------------------------------|-----------------|----------|---------|-----------|---------| - | Deployment Cost | Deployment Size | | | | | --| 4442338 | 20353 | | | | | -+| 4462068 | 20445 | | | | | - | Function Name | min | avg | median | max | # calls | --| MAX_GRACE_PERIOD | 305 | 305 | 305 | 305 | 1792 | --| configureReserveAsCollateral | 12205 | 26298 | 17314 | 95608 | 4169 | --| disableLiquidationGracePeriod | 17326 | 28493 | 39617 | 39617 | 513 | --| dropReserve | 14069 | 14927 | 14069 | 104794 | 261 | --| getConfiguratorLogic | 240 | 240 | 240 | 240 | 1 | --| getPendingLtv | 599 | 599 | 599 | 599 | 771 | --| initReserves | 17491 | 25585884 | 1659867 | 216850380 | 2670 | --| initialize | 72581 | 90426 | 90481 | 90481 | 651 | --| setAssetEModeCategory | 11337 | 12907 | 11403 | 52868 | 2156 | --| setBorrowCap | 11197 | 12183 | 11263 | 44219 | 2126 | --| setBorrowableInIsolation | 10808 | 11146 | 10874 | 43820 | 1872 | --| setDebtCeiling | 17279 | 39386 | 39794 | 94867 | 2133 | --| setEModeCategory | 17852 | 27224 | 17852 | 107759 | 297 | --| setLiquidationProtocolFee | 11246 | 11455 | 11312 | 44268 | 1867 | --| setPoolPause(bool) | 17312 | 17735 | 17312 | 90088 | 515 | --| setPoolPause(bool,uint40) | 17337 | 61920 | 48309 | 107843 | 512 | --| setReserveActive | 14202 | 17104 | 14202 | 91368 | 267 | --| setReserveBorrowing | 10894 | 17630 | 11116 | 41770 | 2628 | --| setReserveFactor | 17302 | 40360 | 36815 | 125123 | 2118 | --| setReserveFlashLoaning | 10959 | 17722 | 11025 | 43991 | 2373 | --| setReserveFreeze | 20558 | 48100 | 52947 | 73153 | 783 | --| setReserveInterestRateData | 17561 | 18227 | 17561 | 103603 | 258 | --| setReserveInterestRateStrategyAddress | 17671 | 34391 | 17671 | 162415 | 300 | --| setReservePause(address,bool) | 17348 | 17531 | 17348 | 41048 | 258 | --| setReservePause(address,bool,uint40) | 14442 | 39080 | 47073 | 52185 | 3084 | --| setSiloedBorrowing | 11266 | 11497 | 11332 | 91271 | 1862 | --| setSupplyCap | 11199 | 12951 | 11265 | 44221 | 2139 | --| setUnbackedMintCap | 44189 | 44189 | 44189 | 44189 | 7 | --| updateAToken | 14141 | 14621 | 14141 | 137683 | 257 | --| updateBridgeProtocolFee | 14119 | 49368 | 52080 | 52080 | 14 | --| updateFlashloanPremiumToProtocol | 10139 | 11301 | 10139 | 36939 | 907 | --| updateFlashloanPremiumTotal | 14136 | 27000 | 32071 | 36971 | 907 | --| updateVariableDebtToken | 14141 | 14597 | 14141 | 131538 | 257 | -+| MAX_GRACE_PERIOD | 261 | 261 | 261 | 261 | 1792 | -+| configureReserveAsCollateral | 12271 | 26312 | 17358 | 95696 | 4184 | -+| disableLiquidationGracePeriod | 17259 | 28403 | 39505 | 39505 | 513 | -+| dropReserve | 14113 | 14970 | 14113 | 104795 | 261 | -+| getConfiguratorLogic | 284 | 284 | 284 | 284 | 1 | -+| getPendingLtv | 643 | 643 | 643 | 643 | 771 | -+| initReserves | 17446 | 25802050 | 1659767 | 213970339 | 2675 | -+| initialize | 72581 | 90426 | 90481 | 90481 | 656 | -+| setAssetBorrowableInEMode | 74227 | 94101 | 94126 | 94126 | 1545 | -+| setAssetCollateralInEMode | 17518 | 71246 | 77122 | 77123 | 2597 | -+| setBorrowCap | 11219 | 12197 | 11285 | 44241 | 2141 | -+| setBorrowableInIsolation | 10786 | 11122 | 10852 | 43798 | 1887 | -+| setDebtCeiling | 17301 | 39465 | 39860 | 94933 | 2148 | -+| setEModeCategory | 17827 | 81478 | 88643 | 88643 | 2594 | -+| setLiquidationProtocolFee | 11290 | 11498 | 11356 | 44312 | 1882 | -+| setPoolPause(bool) | 17247 | 17670 | 17247 | 90044 | 515 | -+| setPoolPause(bool,uint40) | 17359 | 61500 | 48341 | 107751 | 512 | -+| setReserveActive | 14224 | 17128 | 14224 | 91434 | 267 | -+| setReserveBorrowing | 10960 | 17656 | 11182 | 41836 | 2643 | -+| setReserveFactor | 17346 | 40478 | 36925 | 125233 | 2133 | -+| setReserveFlashLoaning | 10959 | 17680 | 11025 | 43991 | 2388 | -+| setReserveFreeze | 20602 | 48131 | 53013 | 73219 | 782 | -+| setReserveInterestRateData | 17605 | 18272 | 17605 | 103713 | 258 | -+| setReserveInterestRateStrategyAddress | 17626 | 34359 | 17626 | 162458 | 300 | -+| setReservePause(address,bool) | 17392 | 17575 | 17392 | 41114 | 258 | -+| setReservePause(address,bool,uint40) | 14464 | 38788 | 47072 | 49384 | 3084 | -+| setSiloedBorrowing | 11332 | 11562 | 11398 | 91272 | 1877 | -+| setSupplyCap | 11176 | 12919 | 11242 | 44198 | 2154 | -+| setUnbackedMintCap | 44233 | 44233 | 44233 | 44233 | 7 | -+| updateAToken | 14074 | 14554 | 14074 | 137640 | 257 | -+| updateBridgeProtocolFee | 14141 | 49349 | 52058 | 52058 | 14 | -+| updateFlashloanPremiumToProtocol | 10205 | 11342 | 10205 | 37005 | 912 | -+| updateFlashloanPremiumTotal | 14091 | 27009 | 32070 | 36970 | 912 | -+| updateVariableDebtToken | 14075 | 14531 | 14075 | 131490 | 257 | - - - | src/contracts/instances/PoolInstance.sol:PoolInstance contract | | | | | | - |----------------------------------------------------------------|-----------------|--------|--------|--------|---------| - | Deployment Cost | Deployment Size | | | | | --| 4668760 | 21651 | | | | | -+| 4697379 | 21784 | | | | | - | Function Name | min | avg | median | max | # calls | --| ADDRESSES_PROVIDER | 285 | 285 | 285 | 285 | 3066 | --| BRIDGE_PROTOCOL_FEE | 416 | 2176 | 2416 | 2416 | 25 | --| FLASHLOAN_PREMIUM_TOTAL | 411 | 1414 | 2411 | 2411 | 1182 | --| FLASHLOAN_PREMIUM_TO_PROTOCOL | 415 | 416 | 415 | 2415 | 1179 | -+| ADDRESSES_PROVIDER | 285 | 285 | 285 | 285 | 3076 | -+| BRIDGE_PROTOCOL_FEE | 350 | 2110 | 2350 | 2350 | 25 | -+| FLASHLOAN_PREMIUM_TOTAL | 411 | 1414 | 2411 | 2411 | 1192 | -+| FLASHLOAN_PREMIUM_TO_PROTOCOL | 437 | 438 | 437 | 2437 | 1189 | - | MAX_NUMBER_RESERVES | 309 | 309 | 309 | 309 | 514 | --| backUnbacked | 98453 | 114633 | 112032 | 133026 | 9 | --| borrow | 46669 | 219345 | 222815 | 262245 | 2435 | --| configureEModeCategory | 7207 | 10703 | 7207 | 49424 | 280 | -+| backUnbacked | 98475 | 114655 | 112054 | 133048 | 9 | -+| borrow | 46603 | 224445 | 222483 | 261668 | 3458 | -+| configureEModeCategory | 6014 | 26167 | 25914 | 45814 | 6454 | - | deposit | 32854 | 190352 | 208588 | 214736 | 80 | --| dropReserve | 6270 | 7104 | 6270 | 82308 | 262 | --| finalizeTransfer | 20766 | 45533 | 48574 | 88370 | 317 | --| flashLoan | 29742 | 80321 | 61019 | 320939 | 267 | --| flashLoanSimple | 23431 | 343312 | 189538 | 757563 | 11 | --| getBorrowLogic | 304 | 304 | 304 | 304 | 1 | -+| dropReserve | 6292 | 7125 | 6292 | 82265 | 262 | -+| finalizeTransfer | 20766 | 45787 | 48574 | 88106 | 317 | -+| flashLoan | 29764 | 84224 | 69664 | 320653 | 267 | -+| flashLoanSimple | 23453 | 343384 | 189604 | 757609 | 11 | -+| getBorrowLogic | 326 | 326 | 326 | 326 | 1 | - | getBridgeLogic | 280 | 280 | 280 | 280 | 1 | --| getConfiguration | 726 | 968 | 726 | 2726 | 53149 | --| getEModeCategoryData | 1908 | 5110 | 6163 | 6163 | 43 | -+| getConfiguration | 748 | 988 | 748 | 2748 | 52680 | -+| getEModeCategoryData | 2146 | 8240 | 8401 | 8401 | 6311 | - | getEModeLogic | 301 | 301 | 301 | 301 | 1 | --| getFlashLoanLogic | 303 | 303 | 303 | 303 | 1 | --| getLiquidationGracePeriod | 2681 | 2681 | 2681 | 2681 | 2014 | --| getLiquidationLogic | 281 | 281 | 281 | 281 | 1 | --| getPoolLogic | 280 | 280 | 280 | 280 | 1 | --| getReserveAddressById | 665 | 665 | 665 | 665 | 1 | --| getReserveData | 4239 | 8268 | 6239 | 24239 | 18252 | --| getReserveDataExtended | 3416 | 4082 | 3416 | 5416 | 6 | --| getReserveNormalizedIncome | 849 | 1126 | 849 | 5311 | 10501 | --| getReserveNormalizedVariableDebt | 893 | 1071 | 893 | 6491 | 7171 | --| getReservesCount | 437 | 437 | 437 | 437 | 2 | --| getReservesList | 3161 | 12139 | 11161 | 101874 | 1902 | --| getSupplyLogic | 304 | 304 | 304 | 304 | 1 | --| getUserAccountData | 18124 | 21525 | 22624 | 29389 | 1036 | --| getUserConfiguration | 706 | 748 | 706 | 2706 | 1822 | --| getUserEMode | 659 | 659 | 659 | 659 | 1037 | --| getVirtualUnderlyingBalance | 704 | 704 | 704 | 704 | 2157 | --| initReserve | 6597 | 179856 | 179637 | 207301 | 43619 | --| initialize | 45447 | 45546 | 45447 | 66968 | 593 | --| liquidationCall | 53261 | 228680 | 324198 | 376813 | 3491 | --| mintToTreasury | 77321 | 78716 | 78716 | 80111 | 2 | --| mintUnbacked | 12222 | 118445 | 103571 | 165915 | 17 | --| repay | 33239 | 99467 | 95964 | 164674 | 21 | --| repayWithATokens | 128274 | 154025 | 155469 | 166111 | 261 | --| repayWithPermit | 127104 | 165503 | 154197 | 209900 | 768 | --| rescueTokens | 48154 | 48154 | 48154 | 48154 | 256 | --| resetIsolationModeTotalDebt | 4298 | 4568 | 4298 | 15298 | 1974 | --| setConfiguration | 2200 | 16547 | 24200 | 24356 | 67500 | --| setLiquidationGracePeriod | 6374 | 12458 | 14525 | 17025 | 3476 | --| setReserveInterestRateStrategyAddress | 6416 | 7955 | 6525 | 15813 | 813 | --| setUserEMode | 21974 | 41470 | 40194 | 87548 | 10 | --| setUserUseReserveAsCollateral | 53632 | 72191 | 71653 | 103041 | 25 | --| supply | 29467 | 187262 | 208611 | 216374 | 3016 | --| supplyWithPermit | 113813 | 196609 | 218266 | 257750 | 768 | --| syncIndexesState | 7251 | 13978 | 7251 | 62644 | 1763 | --| syncRatesState | 13531 | 16046 | 16072 | 22572 | 1763 | --| updateBridgeProtocolFee | 6195 | 7025 | 6195 | 23375 | 269 | --| updateFlashloanPremiums | 1704 | 10703 | 6377 | 21604 | 1432 | --| withdraw | 39229 | 105506 | 87802 | 177983 | 51 | -+| getFlashLoanLogic | 325 | 325 | 325 | 325 | 1 | -+| getLiquidationGracePeriod | 2703 | 2703 | 2703 | 2703 | 1993 | -+| getLiquidationLogic | 303 | 303 | 303 | 303 | 1 | -+| getPoolLogic | 302 | 302 | 302 | 302 | 1 | -+| getReserveAddressById | 620 | 620 | 620 | 620 | 1 | -+| getReserveData | 4261 | 11061 | 10261 | 24261 | 22560 | -+| getReserveDataExtended | 3438 | 4104 | 3438 | 5438 | 6 | -+| getReserveNormalizedIncome | 871 | 1112 | 871 | 5333 | 12032 | -+| getReserveNormalizedVariableDebt | 828 | 1000 | 828 | 6426 | 7394 | -+| getReservesCount | 373 | 373 | 373 | 373 | 2 | -+| getReservesList | 3116 | 12284 | 11116 | 101829 | 1874 | -+| getSupplyLogic | 326 | 326 | 326 | 326 | 1 | -+| getUserAccountData | 12238 | 23068 | 22382 | 39507 | 2574 | -+| getUserConfiguration | 728 | 767 | 728 | 2728 | 1821 | -+| getUserEMode | 659 | 660 | 659 | 2659 | 1294 | -+| getVirtualUnderlyingBalance | 726 | 726 | 726 | 726 | 2155 | -+| initReserve | 6552 | 179727 | 179592 | 207256 | 44037 | -+| initialize | 45382 | 45480 | 45382 | 66903 | 598 | -+| liquidationCall | 53186 | 239514 | 323748 | 383313 | 3720 | -+| mintToTreasury | 77343 | 78738 | 78738 | 80133 | 2 | -+| mintUnbacked | 12177 | 118400 | 103526 | 165870 | 17 | -+| repay | 33261 | 99436 | 95921 | 164631 | 21 | -+| repayWithATokens | 128164 | 154206 | 155359 | 166023 | 261 | -+| repayWithPermit | 127039 | 165740 | 154132 | 210104 | 768 | -+| rescueTokens | 48176 | 48176 | 48176 | 48176 | 256 | -+| resetIsolationModeTotalDebt | 4298 | 4565 | 4298 | 15298 | 1989 | -+| setConfiguration | 2200 | 16938 | 24200 | 24356 | 66324 | -+| setLiquidationGracePeriod | 6329 | 12223 | 12480 | 16980 | 3435 | -+| setReserveInterestRateStrategyAddress | 6438 | 7977 | 6547 | 15835 | 813 | -+| setUserEMode | 16734 | 48129 | 40914 | 94630 | 2318 | -+| setUserUseReserveAsCollateral | 53676 | 72230 | 71697 | 102974 | 25 | -+| supply | 29401 | 195831 | 208545 | 216308 | 5064 | -+| supplyWithPermit | 113813 | 196587 | 218266 | 257750 | 768 | -+| syncIndexesState | 7273 | 14000 | 7273 | 62666 | 1778 | -+| syncRatesState | 13553 | 16069 | 16094 | 22594 | 1778 | -+| updateBridgeProtocolFee | 6217 | 7047 | 6217 | 23397 | 269 | -+| updateFlashloanPremiums | 1726 | 10732 | 6399 | 21626 | 1442 | -+| withdraw | 39251 | 105523 | 87824 | 177740 | 51 | - - - | src/contracts/instances/VariableDebtTokenInstance.sol:VariableDebtTokenInstance contract | | | | | | -@@ -457,22 +457,22 @@ - | Deployment Cost | Deployment Size | | | | | - | 1723145 | 8349 | | | | | - | Function Name | min | avg | median | max | # calls | --| UNDERLYING_ASSET_ADDRESS | 398 | 398 | 398 | 398 | 8112 | -+| UNDERLYING_ASSET_ADDRESS | 398 | 398 | 398 | 398 | 8515 | - | approveDelegation | 27012 | 27012 | 27012 | 27012 | 1 | --| balanceOf | 681 | 4986 | 4771 | 10365 | 7692 | -+| balanceOf | 681 | 4919 | 4706 | 10300 | 7918 | - | borrowAllowance | 831 | 831 | 831 | 831 | 5 | --| burn | 19204 | 26197 | 26204 | 26205 | 3108 | --| decimals | 335 | 335 | 335 | 335 | 8112 | -+| burn | 19204 | 26197 | 26204 | 26205 | 3363 | -+| decimals | 335 | 335 | 335 | 335 | 8515 | - | delegationWithSig | 1052 | 28689 | 21662 | 55862 | 7 | --| getIncentivesController | 431 | 431 | 431 | 431 | 8112 | --| initialize | 123620 | 207871 | 209041 | 299205 | 43251 | --| mint | 26385 | 62549 | 62585 | 72374 | 2687 | --| name | 1009 | 1421 | 1264 | 3264 | 8202 | -+| getIncentivesController | 431 | 431 | 431 | 431 | 8515 | -+| initialize | 123620 | 208766 | 209041 | 299205 | 43669 | -+| mint | 26385 | 62559 | 62585 | 72374 | 3710 | -+| name | 1009 | 1420 | 1326 | 3264 | 8605 | - | nonces | 577 | 577 | 577 | 577 | 1 | --| scaledBalanceOf | 691 | 1887 | 2691 | 2691 | 5867 | --| scaledTotalSupply | 419 | 2102 | 2419 | 2419 | 18707 | --| symbol | 1030 | 1440 | 1347 | 3285 | 8195 | --| totalSupply | 4079 | 7582 | 6481 | 19079 | 15 | -+| scaledBalanceOf | 691 | 1885 | 2691 | 2691 | 7118 | -+| scaledTotalSupply | 419 | 2152 | 2419 | 2419 | 22291 | -+| symbol | 1030 | 1441 | 1347 | 3285 | 8598 | -+| totalSupply | 4014 | 7523 | 6416 | 19014 | 15 | - - - | src/contracts/misc/AaveOracle.sol:AaveOracle contract | | | | | | -@@ -482,10 +482,10 @@ - | Function Name | min | avg | median | max | # calls | - | BASE_CURRENCY | 293 | 293 | 293 | 293 | 3 | - | BASE_CURRENCY_UNIT | 262 | 262 | 262 | 262 | 1 | --| getAssetPrice | 679 | 4746 | 7873 | 7873 | 22337 | -+| getAssetPrice | 0 | 4859 | 7873 | 7873 | 29705 | - | getAssetsPrices | 2300 | 3404 | 2300 | 5614 | 3 | - | getFallbackOracle | 365 | 1031 | 365 | 2365 | 3 | --| getSourceOfAsset | 553 | 635 | 553 | 2553 | 1140 | -+| getSourceOfAsset | 553 | 635 | 553 | 2553 | 1139 | - | setAssetSources | 37348 | 52896 | 61947 | 62187 | 9 | - | setFallbackOracle | 59544 | 59544 | 59544 | 59544 | 4 | - -@@ -499,7 +499,7 @@ - | MAX_BORROW_RATE | 240 | 240 | 240 | 240 | 5382 | - | MAX_OPTIMAL_POINT | 262 | 262 | 262 | 262 | 6918 | - | MIN_OPTIMAL_POINT | 261 | 261 | 261 | 261 | 6918 | --| calculateInterestRates | 0 | 4436 | 4271 | 5999 | 16046 | -+| calculateInterestRates | 0 | 4513 | 4271 | 5999 | 19642 | - | getBaseVariableBorrowRate | 748 | 776 | 748 | 2748 | 2908 | - | getInterestRateData | 1804 | 1804 | 1804 | 1804 | 256 | - | getInterestRateDataBps | 987 | 987 | 987 | 987 | 256 | -@@ -507,8 +507,8 @@ - | getOptimalUsageRatio | 738 | 738 | 738 | 2738 | 2136 | - | getVariableRateSlope1 | 778 | 778 | 778 | 778 | 2140 | - | getVariableRateSlope2 | 799 | 799 | 799 | 799 | 1368 | --| setInterestRateParams(address,(uint16,uint32,uint32,uint32)) | 28278 | 29729 | 29075 | 36816 | 2816 | --| setInterestRateParams(address,bytes) | 28624 | 33084 | 29860 | 37156 | 6405 | -+| setInterestRateParams(address,(uint16,uint32,uint32,uint32)) | 28278 | 29728 | 29075 | 36804 | 2816 | -+| setInterestRateParams(address,bytes) | 28612 | 33084 | 29860 | 37156 | 6405 | - - - | src/contracts/misc/PriceOracleSentinel.sol:PriceOracleSentinel contract | | | | | | -@@ -530,26 +530,26 @@ - | Deployment Cost | Deployment Size | | | | | - | 465623 | 2115 | | | | | - | Function Name | min | avg | median | max | # calls | --| ADDRESSES_PROVIDER | 898 | 4368 | 5398 | 5465 | 3190 | --| BRIDGE_PROTOCOL_FEE | 1029 | 5311 | 7529 | 7529 | 23 | -+| ADDRESSES_PROVIDER | 898 | 4364 | 5398 | 5465 | 3200 | -+| BRIDGE_PROTOCOL_FEE | 963 | 5245 | 7463 | 7463 | 23 | - | DOMAIN_SEPARATOR | 1071 | 4688 | 4156 | 7571 | 5 | --| EMISSION_MANAGER | 940 | 940 | 940 | 940 | 650 | --| FLASHLOAN_PREMIUM_TOTAL | 1002 | 2033 | 3002 | 7524 | 1304 | --| FLASHLOAN_PREMIUM_TO_PROTOCOL | 1028 | 1039 | 1028 | 7528 | 1301 | --| MAX_GRACE_PERIOD | 5418 | 5418 | 5418 | 5418 | 1792 | -+| EMISSION_MANAGER | 940 | 940 | 940 | 940 | 655 | -+| FLASHLOAN_PREMIUM_TOTAL | 1002 | 2033 | 3002 | 7524 | 1314 | -+| FLASHLOAN_PREMIUM_TO_PROTOCOL | 1028 | 1052 | 1050 | 7550 | 1311 | -+| MAX_GRACE_PERIOD | 5374 | 5374 | 5374 | 5374 | 1792 | - | MAX_NUMBER_RESERVES | 922 | 922 | 922 | 922 | 512 | - | POOL | 940 | 940 | 940 | 940 | 151 | --| RESERVE_TREASURY_ADDRESS | 1033 | 1397 | 1033 | 7533 | 9918 | -+| RESERVE_TREASURY_ADDRESS | 1033 | 1422 | 1033 | 7533 | 10576 | - | REVISION | 874 | 874 | 874 | 874 | 8 | --| UNDERLYING_ASSET_ADDRESS | 1011 | 1050 | 1055 | 3055 | 16363 | -+| UNDERLYING_ASSET_ADDRESS | 1011 | 1049 | 1055 | 3055 | 17169 | - | admin | 21390 | 21390 | 21390 | 21390 | 8 | - | allowance | 1404 | 3173 | 3404 | 7904 | 26 | - | approve | 51293 | 51357 | 51341 | 51653 | 39 | - | approveDelegation | 53760 | 53760 | 53760 | 53760 | 1 | --| backUnbacked | 125314 | 140965 | 138917 | 159923 | 9 | --| balanceOf | 1297 | 5849 | 5387 | 22860 | 12491 | --| borrow(address,uint256,uint256,uint16,address) | 74012 | 244274 | 250193 | 289647 | 2700 | --| borrow(bytes32) | 230155 | 230155 | 230155 | 230155 | 3 | -+| backUnbacked | 125336 | 140987 | 138939 | 159945 | 9 | -+| balanceOf | 1297 | 5802 | 5382 | 22882 | 12970 | -+| borrow(address,uint256,uint256,uint16,address) | 73946 | 247047 | 249861 | 289070 | 3723 | -+| borrow(bytes32) | 229802 | 229802 | 229802 | 229802 | 3 | - | borrowAllowance | 1450 | 1450 | 1450 | 1450 | 5 | - | burn | 28132 | 40754 | 28464 | 65668 | 3 | - | claimAllRewards | 119578 | 119578 | 119578 | 119578 | 1 | -@@ -558,128 +558,129 @@ - | claimRewards | 28668 | 77756 | 84171 | 114016 | 4 | - | claimRewardsOnBehalf | 116579 | 116579 | 116579 | 116579 | 1 | - | claimRewardsToSelf | 113333 | 113333 | 113333 | 113333 | 1 | --| configureEModeCategory | 34496 | 34507 | 34507 | 34519 | 512 | --| configureReserveAsCollateral | 44067 | 64524 | 57732 | 122552 | 2308 | --| decimals | 948 | 982 | 970 | 7470 | 16416 | -+| configureEModeCategory | 34733 | 34744 | 34744 | 34755 | 512 | -+| configureReserveAsCollateral | 44111 | 64587 | 57798 | 122640 | 2308 | -+| decimals | 948 | 981 | 970 | 7470 | 17222 | - | decreaseAllowance | 34424 | 34424 | 34424 | 34424 | 1 | - | delegationWithSig | 29263 | 56402 | 45264 | 84300 | 7 | - | deposit | 91067 | 215461 | 232188 | 235808 | 64 | --| disableLiquidationGracePeriod | 43659 | 55004 | 66162 | 66162 | 513 | --| dropReserve | 32591 | 35715 | 32657 | 105072 | 775 | --| flashLoan | 59293 | 162000 | 126617 | 374226 | 267 | --| flashLoanSimple | 50944 | 311491 | 177238 | 642906 | 11 | -+| disableLiquidationGracePeriod | 43592 | 54921 | 66050 | 66050 | 513 | -+| dropReserve | 32591 | 35715 | 32613 | 105072 | 775 | -+| flashLoan | 59315 | 170319 | 141410 | 374248 | 267 | -+| flashLoanSimple | 50966 | 311558 | 177304 | 642952 | 11 | - | getAllUserRewards | 9271 | 9271 | 9271 | 9271 | 1 | - | getAssetDecimals | 1275 | 1275 | 1275 | 1275 | 2 | - | getAssetIndex | 3708 | 11517 | 14698 | 21619 | 90 | --| getBorrowLogic | 5395 | 5406 | 5406 | 5417 | 2 | -+| getBorrowLogic | 5417 | 5428 | 5428 | 5439 | 2 | - | getBridgeLogic | 5393 | 5426 | 5426 | 5459 | 2 | - | getClaimer | 1244 | 3410 | 1244 | 7744 | 3 | --| getConfiguration | 1298 | 1892 | 1342 | 7842 | 54785 | --| getConfiguratorLogic | 5353 | 5353 | 5353 | 5353 | 1 | -+| getConfiguration | 1320 | 1913 | 1364 | 7864 | 54142 | -+| getConfiguratorLogic | 5397 | 5397 | 5397 | 5397 | 1 | - | getDistributionEnd | 1411 | 1411 | 1411 | 1411 | 1 | --| getEModeCategoryData | 2554 | 6313 | 6815 | 11054 | 55 | -+| getEModeCategoryData | 2798 | 13319 | 13559 | 13559 | 6331 | - | getEModeLogic | 5392 | 5403 | 5403 | 5414 | 2 | --| getFlashLoanLogic | 5416 | 5438 | 5438 | 5461 | 2 | --| getIncentivesController | 1044 | 1066 | 1088 | 7588 | 16230 | --| getLiquidationGracePeriod | 29207 | 29226 | 29229 | 29229 | 2270 | --| getLiquidationLogic | 5394 | 5416 | 5416 | 5439 | 2 | --| getPendingLtv | 1215 | 1215 | 1215 | 1215 | 771 | --| getPoolLogic | 5393 | 5404 | 5404 | 5416 | 2 | -+| getFlashLoanLogic | 5394 | 5416 | 5416 | 5438 | 2 | -+| getIncentivesController | 1044 | 1066 | 1088 | 7588 | 17036 | -+| getLiquidationGracePeriod | 29229 | 29248 | 29251 | 29251 | 2249 | -+| getLiquidationLogic | 5416 | 5438 | 5438 | 5461 | 2 | -+| getPendingLtv | 1259 | 1259 | 1259 | 1259 | 771 | -+| getPoolLogic | 5415 | 5426 | 5426 | 5438 | 2 | - | getPreviousIndex | 1270 | 1270 | 1270 | 1270 | 39 | --| getReserveAddressById | 1281 | 1281 | 1281 | 1281 | 1 | --| getReserveData | 4889 | 9269 | 6933 | 29433 | 19091 | --| getReserveDataExtended | 4122 | 4788 | 4122 | 6122 | 6 | --| getReserveNormalizedIncome | 1465 | 1970 | 1465 | 10427 | 10793 | --| getReserveNormalizedVariableDebt | 1465 | 1681 | 1509 | 11607 | 7435 | --| getReservesCount | 1050 | 1050 | 1050 | 1050 | 2 | --| getReservesList | 3792 | 16242 | 16292 | 103281 | 2164 | -+| getReserveAddressById | 1236 | 1236 | 1236 | 1236 | 1 | -+| getReserveData | 4911 | 11914 | 10955 | 29455 | 23413 | -+| getReserveDataExtended | 4144 | 4810 | 4144 | 6144 | 6 | -+| getReserveNormalizedIncome | 1443 | 1927 | 1487 | 10449 | 12324 | -+| getReserveNormalizedVariableDebt | 1444 | 1613 | 1444 | 11542 | 7658 | -+| getReservesCount | 986 | 986 | 986 | 986 | 2 | -+| getReservesList | 3747 | 16360 | 16247 | 103236 | 2130 | - | getRewardOracle | 1268 | 1268 | 1268 | 1268 | 1 | - | getRewardsByAsset | 2399 | 5698 | 3672 | 10899 | 201 | - | getRewardsData | 1610 | 1610 | 1610 | 1610 | 3 | - | getRewardsList | 1736 | 1736 | 1736 | 1736 | 30 | - | getScaledUserBalanceAndSupply | 1449 | 4192 | 3449 | 9949 | 39 | --| getSupplyLogic | 5417 | 5449 | 5449 | 5481 | 2 | -+| getSupplyLogic | 5395 | 5417 | 5417 | 5439 | 2 | - | getTransferStrategy | 1267 | 1267 | 1267 | 1267 | 1 | --| getUserAccountData | 18764 | 22167 | 23264 | 30029 | 1037 | -+| getUserAccountData | 12878 | 23707 | 23022 | 40147 | 2575 | - | getUserAccruedRewards | 2267 | 2267 | 2267 | 2267 | 1 | - | getUserAssetIndex | 1634 | 1634 | 1634 | 1634 | 1 | --| getUserConfiguration | 1322 | 1364 | 1322 | 3322 | 1822 | --| getUserEMode | 1275 | 1275 | 1275 | 1275 | 1037 | -+| getUserConfiguration | 1344 | 1383 | 1344 | 3344 | 1821 | -+| getUserEMode | 1275 | 1280 | 1275 | 7775 | 1294 | - | getUserRewards | 5237 | 7340 | 7469 | 10837 | 19 | --| getVirtualUnderlyingBalance | 1298 | 1319 | 1320 | 1320 | 2161 | -+| getVirtualUnderlyingBalance | 1320 | 1341 | 1342 | 1342 | 2159 | - | increaseAllowance | 34491 | 47316 | 51591 | 51591 | 4 | --| initReserve | 33270 | 33292 | 33292 | 33314 | 1024 | --| initReserves | 45755 | 32070878 | 1608802 | 218102716 | 2049 | --| liquidationCall(address,address,address,uint256,bool) | 80856 | 256275 | 351792 | 404755 | 3491 | --| liquidationCall(bytes32,bytes32) | 404144 | 404144 | 404144 | 404144 | 1 | -+| initReserve | 33269 | 33280 | 33280 | 33292 | 1024 | -+| initReserves | 45710 | 32395912 | 1608692 | 215319236 | 2049 | -+| liquidationCall(address,address,address,uint256,bool) | 80781 | 267131 | 351342 | 411243 | 3720 | -+| liquidationCall(bytes32,bytes32) | 403608 | 403608 | 403608 | 403608 | 1 | - | mint | 28161 | 73503 | 91286 | 91766 | 7 | --| mintToTreasury(address[]) | 99333 | 100926 | 100926 | 102519 | 4 | -+| mintToTreasury(address[]) | 99355 | 100948 | 100948 | 102541 | 4 | - | mintToTreasury(uint256,uint256) | 26988 | 59951 | 59951 | 92915 | 2 | --| mintUnbacked | 39431 | 145665 | 130791 | 193135 | 17 | --| name | 1625 | 2063 | 1945 | 8383 | 16555 | -+| mintUnbacked | 39386 | 145620 | 130746 | 193090 | 17 | -+| name | 1625 | 2063 | 1945 | 8383 | 17361 | - | nonces | 1193 | 2463 | 3271 | 3271 | 10 | - | permit | 29304 | 46376 | 37841 | 81937 | 8 | --| repay(address,uint256,uint256,address) | 60448 | 129350 | 167720 | 187144 | 13 | --| repay(bytes32) | 157401 | 157401 | 157401 | 157401 | 1 | --| repayWithATokens(address,uint256,uint256) | 155111 | 180842 | 182318 | 193320 | 261 | --| repayWithATokens(bytes32) | 160522 | 160522 | 160522 | 160522 | 1 | --| repayWithPermit(address,uint256,uint256,address,uint256,uint8,bytes32,bytes32) | 155668 | 185855 | 182856 | 218694 | 768 | --| repayWithPermit(bytes32,bytes32,bytes32) | 190465 | 206566 | 214543 | 217860 | 256 | --| rescueTokens | 39115 | 70318 | 70428 | 70471 | 515 | -+| repay(address,uint256,uint256,address) | 60470 | 129327 | 167677 | 187099 | 13 | -+| repay(bytes32) | 157445 | 157445 | 157445 | 157445 | 1 | -+| repayWithATokens(address,uint256,uint256) | 155001 | 181023 | 182208 | 193232 | 261 | -+| repayWithATokens(bytes32) | 160479 | 160479 | 160479 | 160479 | 1 | -+| repayWithPermit(address,uint256,uint256,address,uint256,uint8,bytes32,bytes32) | 155615 | 186074 | 182779 | 218803 | 768 | -+| repayWithPermit(bytes32,bytes32,bytes32) | 190566 | 206430 | 197065 | 217839 | 256 | -+| rescueTokens | 39115 | 70340 | 70450 | 70493 | 515 | - | resetIsolationModeTotalDebt | 32590 | 32636 | 32612 | 41843 | 514 | --| scaledBalanceOf | 1307 | 3741 | 3307 | 7807 | 16286 | --| scaledTotalSupply | 988 | 5835 | 7532 | 7532 | 19121 | --| setAssetEModeCategory | 43877 | 48422 | 43877 | 79556 | 296 | --| setBorrowCap | 43786 | 44743 | 43786 | 70919 | 267 | --| setBorrowableInIsolation | 67706 | 70116 | 70508 | 70508 | 13 | -+| scaledBalanceOf | 1307 | 3788 | 3307 | 7807 | 21096 | -+| scaledTotalSupply | 988 | 6068 | 7532 | 7532 | 22705 | -+| setAssetBorrowableInEMode | 101049 | 120935 | 120960 | 120960 | 1545 | -+| setAssetCollateralInEMode | 44125 | 98055 | 103956 | 103956 | 2596 | -+| setBorrowCap | 43786 | 44744 | 43786 | 70941 | 267 | -+| setBorrowableInIsolation | 67684 | 70094 | 70486 | 70486 | 13 | - | setConfiguration | 32805 | 32816 | 32816 | 32827 | 512 | --| setDebtCeiling | 43743 | 48112 | 43743 | 121555 | 274 | --| setEModeCategory | 45031 | 53892 | 45031 | 135431 | 295 | -+| setDebtCeiling | 43765 | 48137 | 43765 | 121621 | 274 | -+| setEModeCategory | 44872 | 108807 | 116025 | 116037 | 2592 | - | setIncentivesController | 38502 | 40869 | 40869 | 43236 | 2 | --| setLiquidationGracePeriod | 32828 | 37932 | 37350 | 43761 | 1536 | --| setLiquidationProtocolFee | 43996 | 60606 | 69878 | 70968 | 8 | --| setPoolPause(bool) | 43633 | 44062 | 43633 | 116393 | 515 | --| setPoolPause(bool,uint40) | 43789 | 88393 | 74789 | 134303 | 512 | --| setReserveActive | 40906 | 43807 | 40906 | 118044 | 267 | --| setReserveBorrowing | 43833 | 60242 | 68446 | 68448 | 768 | --| setReserveFactor | 43766 | 44186 | 43766 | 151823 | 258 | -+| setLiquidationGracePeriod | 32805 | 37936 | 37338 | 43761 | 1536 | -+| setLiquidationProtocolFee | 44018 | 60642 | 69922 | 71012 | 8 | -+| setPoolPause(bool) | 43568 | 43997 | 43580 | 116349 | 515 | -+| setPoolPause(bool,uint40) | 43811 | 87972 | 74821 | 134211 | 512 | -+| setReserveActive | 40928 | 43831 | 40928 | 118110 | 267 | -+| setReserveBorrowing | 43877 | 60301 | 68512 | 68514 | 768 | -+| setReserveFactor | 43810 | 44230 | 43810 | 151933 | 258 | - | setReserveFlashLoaning | 68511 | 68516 | 68513 | 70667 | 513 | --| setReserveFreeze | 47022 | 73129 | 74823 | 99841 | 783 | --| setReserveInterestRateData | 44326 | 44812 | 44554 | 131069 | 257 | --| setReserveInterestRateStrategyAddress(address,address) | 32846 | 34588 | 33195 | 42729 | 1538 | --| setReserveInterestRateStrategyAddress(address,address,bytes) | 44558 | 61418 | 44558 | 190255 | 300 | --| setReservePause(address,bool) | 43812 | 44147 | 44040 | 67736 | 258 | --| setReservePause(address,bool,uint40) | 41277 | 65905 | 73907 | 79019 | 3084 | --| setSiloedBorrowing | 102106 | 111956 | 115803 | 117959 | 3 | --| setSupplyCap | 43788 | 45799 | 43788 | 70921 | 279 | --| setUnbackedMintCap | 70889 | 70889 | 70889 | 70889 | 7 | --| setUserEMode | 48307 | 68041 | 66511 | 113935 | 17 | --| setUserUseReserveAsCollateral(address,bool) | 80336 | 96356 | 93550 | 129754 | 42 | --| setUserUseReserveAsCollateral(bytes32) | 95329 | 95329 | 95329 | 95329 | 1 | -+| setReserveFreeze | 47066 | 73158 | 74889 | 99907 | 782 | -+| setReserveInterestRateData | 44370 | 44856 | 44598 | 131179 | 257 | -+| setReserveInterestRateStrategyAddress(address,address) | 32868 | 34614 | 33217 | 42751 | 1538 | -+| setReserveInterestRateStrategyAddress(address,address,bytes) | 44513 | 61386 | 44513 | 190298 | 300 | -+| setReservePause(address,bool) | 43856 | 44201 | 44084 | 67802 | 258 | -+| setReservePause(address,bool,uint40) | 41311 | 65613 | 73900 | 76218 | 3084 | -+| setSiloedBorrowing | 102085 | 111949 | 115804 | 117960 | 3 | -+| setSupplyCap | 43743 | 45756 | 43743 | 70898 | 279 | -+| setUnbackedMintCap | 70933 | 70933 | 70933 | 70933 | 7 | -+| setUserEMode | 43067 | 74317 | 67231 | 120947 | 2325 | -+| setUserUseReserveAsCollateral(address,bool) | 80314 | 96359 | 93573 | 129666 | 42 | -+| setUserUseReserveAsCollateral(bytes32) | 95286 | 95286 | 95286 | 95286 | 1 | - | setValue | 31574 | 31590 | 31598 | 31598 | 3 | --| supply(address,uint256,address,uint16) | 56664 | 214087 | 231043 | 243594 | 3300 | -+| supply(address,uint256,address,uint16) | 56598 | 218710 | 226273 | 243528 | 5348 | - | supply(bytes32) | 237010 | 237010 | 237010 | 237010 | 7 | --| supplyWithPermit(address,uint256,address,uint16,uint256,uint8,bytes32,bytes32) | 142365 | 216977 | 242026 | 266578 | 768 | --| supplyWithPermit(bytes32,bytes32,bytes32) | 262532 | 262616 | 262592 | 262736 | 256 | --| symbol | 1646 | 2128 | 1966 | 8448 | 16530 | -+| supplyWithPermit(address,uint256,address,uint16,uint256,uint8,bytes32,bytes32) | 142365 | 216979 | 242026 | 266578 | 768 | -+| supplyWithPermit(bytes32,bytes32,bytes32) | 262566 | 262631 | 262602 | 262758 | 256 | -+| symbol | 1646 | 2126 | 1966 | 8448 | 17336 | - | text | 1789 | 1789 | 1789 | 1789 | 8 | --| totalSupply | 1024 | 8279 | 11570 | 15570 | 4914 | --| transfer | 27662 | 144188 | 149393 | 167373 | 273 | --| transferFrom | 138702 | 138822 | 138822 | 138942 | 2 | -+| totalSupply | 1024 | 8842 | 11592 | 15592 | 5952 | -+| transfer | 27662 | 144508 | 149415 | 167131 | 273 | -+| transferFrom | 138724 | 138844 | 138844 | 138964 | 2 | - | transferOnLiquidation | 28063 | 28063 | 28063 | 28063 | 1 | - | transferUnderlyingTo | 27506 | 27506 | 27506 | 27506 | 1 | --| updateAToken | 41856 | 42264 | 41856 | 146869 | 257 | --| updateBridgeProtocolFee | 32528 | 33698 | 32573 | 78409 | 526 | --| updateFlashloanPremiumToProtocol | 40448 | 40536 | 40448 | 63268 | 258 | --| updateFlashloanPremiumTotal | 40469 | 40558 | 40469 | 63300 | 258 | --| updateFlashloanPremiums | 32853 | 32875 | 32875 | 32898 | 512 | --| updateVariableDebtToken | 41710 | 42095 | 41710 | 140758 | 257 | -+| updateAToken | 41789 | 42197 | 41789 | 146826 | 257 | -+| updateBridgeProtocolFee | 32550 | 33719 | 32595 | 78387 | 526 | -+| updateFlashloanPremiumToProtocol | 40470 | 40559 | 40470 | 63334 | 258 | -+| updateFlashloanPremiumTotal | 40424 | 40513 | 40424 | 63299 | 258 | -+| updateFlashloanPremiums | 32875 | 32897 | 32897 | 32920 | 512 | -+| updateVariableDebtToken | 41644 | 42029 | 41644 | 140710 | 257 | - | upgradeTo | 26855 | 28742 | 28742 | 30629 | 2 | - | upgradeToAndCall | 28758 | 152638 | 187413 | 187413 | 8 | - | value | 931 | 931 | 931 | 931 | 11 | - | values | 1213 | 1213 | 1213 | 1213 | 16 | --| withdraw(address,uint256,address) | 66340 | 134756 | 141964 | 205094 | 23 | --| withdraw(bytes32) | 138782 | 145861 | 145861 | 152941 | 2 | -+| withdraw(address,uint256,address) | 66362 | 134766 | 141986 | 204851 | 23 | -+| withdraw(bytes32) | 138804 | 145883 | 145883 | 152963 | 2 | - - - | src/contracts/mocks/flashloan/MockFlashLoanReceiver.sol:MockFlashLoanReceiver contract | | | | | | -@@ -703,9 +704,9 @@ - | src/contracts/mocks/helpers/MockPool.sol:MockPoolInherited contract | | | | | | - |---------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 4732690 | 21870 | | | | | -+| 4761368 | 22003 | | | | | - | Function Name | min | avg | median | max | # calls | --| initialize | 28462 | 28462 | 28462 | 28462 | 2 | -+| initialize | 28397 | 28397 | 28397 | 28397 | 2 | - - - | src/contracts/mocks/oracle/CLAggregators/MockAggregator.sol:MockAggregator contract | | | | | | -@@ -713,10 +714,10 @@ - | Deployment Cost | Deployment Size | | | | | - | 109507 | 321 | | | | | - | Function Name | min | avg | median | max | # calls | --| _latestAnswer | 317 | 317 | 317 | 317 | 4160 | -+| _latestAnswer | 317 | 317 | 317 | 317 | 4156 | - | decimals | 144 | 144 | 144 | 144 | 83 | - | description | 170 | 170 | 170 | 170 | 83 | --| latestAnswer | 281 | 1395 | 2281 | 2281 | 24197 | -+| latestAnswer | 281 | 1462 | 2281 | 2281 | 30556 | - | name | 170 | 170 | 170 | 170 | 83 | - - -@@ -735,7 +736,7 @@ - | 278266 | 1393 | | | | | - | Function Name | min | avg | median | max | # calls | - | latestRoundData | 730 | 1533 | 735 | 4735 | 10 | --| setAnswer | 26207 | 27452 | 26207 | 46119 | 73 | -+| setAnswer | 26207 | 27469 | 26207 | 46119 | 72 | - - - | src/contracts/mocks/swap/MockParaSwapAugustus.sol:MockParaSwapAugustus contract | | | | | | -@@ -773,13 +774,13 @@ - | Function Name | min | avg | median | max | # calls | - | DOMAIN_SEPARATOR | 2340 | 2340 | 2340 | 2340 | 1 | - | allowance | 836 | 836 | 836 | 836 | 9 | --| approve | 29140 | 46510 | 46588 | 46588 | 4618 | --| balanceOf | 651 | 991 | 651 | 2651 | 12549 | --| decimals | 312 | 1481 | 2312 | 2312 | 73384 | --| mint | 36480 | 58491 | 53592 | 70740 | 4133 | -+| approve | 29140 | 46453 | 46588 | 46588 | 6901 | -+| balanceOf | 651 | 991 | 651 | 2651 | 12547 | -+| decimals | 312 | 1475 | 2312 | 2312 | 75774 | -+| mint | 36480 | 62216 | 70692 | 70800 | 6416 | - | name | 3241 | 3241 | 3241 | 3241 | 2048 | - | nonces | 2604 | 2604 | 2604 | 2604 | 1 | --| permit | 76466 | 76512 | 76502 | 76670 | 512 | -+| permit | 76454 | 76514 | 76502 | 76670 | 512 | - | symbol | 1328 | 2328 | 2328 | 3328 | 56 | - | transfer | 46931 | 51023 | 51707 | 51707 | 7 | - | transferOwnership | 28800 | 28800 | 28800 | 28800 | 30 | -@@ -801,10 +802,10 @@ - | Deployment Cost | Deployment Size | | | | | - | 119707 | 340 | | | | | - | Function Name | min | avg | median | max | # calls | --| HALF_PERCENTAGE_FACTOR | 147 | 147 | 147 | 147 | 448 | --| PERCENTAGE_FACTOR | 224 | 224 | 224 | 224 | 689 | --| percentDiv | 321 | 426 | 432 | 432 | 259 | --| percentMul | 338 | 411 | 435 | 435 | 259 | -+| HALF_PERCENTAGE_FACTOR | 147 | 147 | 147 | 147 | 432 | -+| PERCENTAGE_FACTOR | 224 | 224 | 224 | 224 | 661 | -+| percentDiv | 321 | 420 | 432 | 432 | 259 | -+| percentMul | 338 | 405 | 435 | 435 | 259 | - - - | src/contracts/mocks/tests/WadRayMathWrapper.sol:WadRayMathWrapper contract | | | | | | -@@ -813,16 +814,16 @@ - | 233882 | 871 | | | | | - | Function Name | min | avg | median | max | # calls | - | HALF_RAY | 247 | 247 | 247 | 247 | 1 | --| HALF_WAD | 224 | 224 | 224 | 224 | 443 | -+| HALF_WAD | 224 | 224 | 224 | 224 | 434 | - | RAY | 225 | 225 | 225 | 225 | 1 | --| WAD | 180 | 180 | 180 | 180 | 658 | --| WAD_RAY_RATIO | 269 | 269 | 269 | 269 | 1762 | -+| WAD | 180 | 180 | 180 | 180 | 651 | -+| WAD_RAY_RATIO | 269 | 269 | 269 | 269 | 1765 | - | rayDiv | 498 | 498 | 498 | 498 | 4 | - | rayMul | 501 | 501 | 501 | 501 | 3 | - | rayToWad | 387 | 390 | 387 | 401 | 515 | --| wadDiv | 431 | 524 | 542 | 542 | 260 | --| wadMul | 338 | 409 | 435 | 435 | 262 | --| wadToRay | 284 | 355 | 360 | 360 | 485 | -+| wadDiv | 431 | 523 | 542 | 542 | 260 | -+| wadMul | 338 | 407 | 435 | 435 | 262 | -+| wadToRay | 284 | 355 | 360 | 360 | 488 | - - - | src/contracts/mocks/tokens/MockATokenRepayment.sol:MockATokenRepayment contract | | | | | | -@@ -907,23 +908,23 @@ - | Deployment Cost | Deployment Size | | | | | - | 864174 | 4235 | | | | | - | Function Name | min | avg | median | max | # calls | --| DEFAULT_ADMIN_ROLE | 284 | 284 | 284 | 284 | 1318 | -+| DEFAULT_ADMIN_ROLE | 284 | 284 | 284 | 284 | 1328 | - | FLASH_BORROWER_ROLE | 317 | 317 | 317 | 317 | 20 | --| POOL_ADMIN_ROLE | 294 | 294 | 294 | 294 | 649 | -+| POOL_ADMIN_ROLE | 294 | 294 | 294 | 294 | 654 | - | addAssetListingAdmin | 50962 | 50962 | 50962 | 50962 | 3 | - | addBridge | 51028 | 51028 | 51028 | 51028 | 14 | - | addEmergencyAdmin | 50963 | 50963 | 50963 | 50963 | 3 | - | addFlashBorrower | 50984 | 52203 | 50984 | 55863 | 4 | --| addPoolAdmin | 50995 | 51006 | 51007 | 51007 | 639 | -+| addPoolAdmin | 50995 | 51006 | 51007 | 51007 | 644 | - | addRiskAdmin | 51028 | 51028 | 51028 | 51028 | 14 | - | grantRole | 51480 | 52091 | 51480 | 56370 | 8 | - | hasRole | 740 | 2622 | 2740 | 2740 | 17 | --| isAssetListingAdmin | 814 | 2465 | 2814 | 2814 | 3562 | -+| isAssetListingAdmin | 814 | 2463 | 2814 | 2814 | 3572 | - | isBridge | 2791 | 2791 | 2791 | 2791 | 26 | - | isEmergencyAdmin | 747 | 2746 | 2747 | 2747 | 3843 | - | isFlashBorrower | 2833 | 2833 | 2833 | 2833 | 268 | --| isPoolAdmin | 757 | 1741 | 757 | 2757 | 45593 | --| isRiskAdmin | 747 | 1420 | 747 | 2747 | 29906 | -+| isPoolAdmin | 757 | 1899 | 2757 | 2757 | 50045 | -+| isRiskAdmin | 747 | 1691 | 747 | 2747 | 34338 | - | removeAssetListingAdmin | 29054 | 29054 | 29054 | 29054 | 2 | - | removeBridge | 29023 | 29023 | 29023 | 29023 | 1 | - | removeEmergencyAdmin | 28999 | 28999 | 28999 | 28999 | 1 | -@@ -938,24 +939,24 @@ - | Deployment Cost | Deployment Size | | | | | - | 1604102 | 8368 | | | | | - | Function Name | min | avg | median | max | # calls | --| getACLAdmin | 480 | 551 | 480 | 2480 | 676 | --| getACLManager | 534 | 1369 | 534 | 2534 | 39760 | --| getAddress | 546 | 549 | 546 | 2546 | 657 | -+| getACLAdmin | 480 | 550 | 480 | 2480 | 681 | -+| getACLManager | 534 | 1563 | 2534 | 2534 | 44212 | -+| getAddress | 546 | 549 | 546 | 2546 | 662 | - | getMarketId | 1351 | 1351 | 1351 | 1351 | 6 | --| getPool | 469 | 682 | 469 | 2469 | 43331 | --| getPoolConfigurator | 512 | 774 | 512 | 2512 | 182138 | --| getPoolDataProvider | 489 | 1325 | 489 | 2489 | 2203 | --| getPriceOracle | 577 | 2281 | 2577 | 2577 | 7894 | --| getPriceOracleSentinel | 490 | 2484 | 2490 | 2490 | 6231 | --| owner | 365 | 365 | 365 | 365 | 653 | -+| getPool | 469 | 675 | 469 | 2469 | 44963 | -+| getPoolConfigurator | 512 | 832 | 512 | 2512 | 187849 | -+| getPoolDataProvider | 489 | 1323 | 489 | 2489 | 2218 | -+| getPriceOracle | 577 | 2160 | 2577 | 2577 | 12992 | -+| getPriceOracleSentinel | 490 | 2485 | 2490 | 2490 | 7483 | -+| owner | 365 | 365 | 365 | 365 | 658 | - | setACLAdmin | 24016 | 45798 | 47621 | 47621 | 24 | - | setACLManager | 24059 | 37487 | 39114 | 47664 | 4 | - | setAddress | 24625 | 35611 | 31540 | 48640 | 5 | - | setAddressAsProxy | 24331 | 228775 | 57063 | 518962 | 5 | - | setMarketId | 24424 | 28561 | 28561 | 32699 | 2 | --| setPoolConfiguratorImpl | 24015 | 292593 | 300665 | 545030 | 4 | -+| setPoolConfiguratorImpl | 24015 | 292580 | 300639 | 545030 | 4 | - | setPoolDataProvider | 24104 | 37532 | 39159 | 47709 | 4 | --| setPoolImpl | 24060 | 279069 | 287138 | 517941 | 4 | -+| setPoolImpl | 24060 | 279024 | 287080 | 517876 | 4 | - | setPriceOracle | 24083 | 37511 | 39138 | 47688 | 4 | - | setPriceOracleSentinel | 24126 | 40946 | 47731 | 47731 | 6 | - -@@ -968,7 +969,7 @@ - | getAddressesProviderAddressById | 522 | 522 | 522 | 522 | 4 | - | getAddressesProviderIdByAddress | 559 | 1225 | 559 | 2559 | 6 | - | getAddressesProvidersList | 673 | 3403 | 3292 | 5018 | 5 | --| owner | 331 | 2327 | 2331 | 2331 | 650 | -+| owner | 331 | 2327 | 2331 | 2331 | 655 | - | registerAddressesProvider | 24444 | 104012 | 119926 | 119926 | 6 | - | unregisterAddressesProvider | 26448 | 39029 | 40004 | 49662 | 4 | - -@@ -996,7 +997,7 @@ - | Deployment Cost | Deployment Size | | | | | - | 3183382 | 14716 | | | | | - | Function Name | min | avg | median | max | # calls | --| EMISSION_MANAGER | 327 | 327 | 327 | 327 | 653 | -+| EMISSION_MANAGER | 327 | 327 | 327 | 327 | 658 | - | claimAllRewards | 92349 | 92349 | 92349 | 92349 | 1 | - | claimAllRewardsOnBehalf | 94649 | 94649 | 94649 | 94649 | 1 | - | claimAllRewardsToSelf | 92147 | 92147 | 92147 | 92147 | 1 | -@@ -1018,8 +1019,8 @@ - | getUserAccruedRewards | 1648 | 1648 | 1648 | 1648 | 1 | - | getUserAssetIndex | 1009 | 1009 | 1009 | 1009 | 1 | - | getUserRewards | 4600 | 6703 | 6832 | 10200 | 19 | --| handleAction | 732 | 2337 | 2732 | 38089 | 17852 | --| initialize | 26067 | 45246 | 45252 | 53156 | 652 | -+| handleAction | 732 | 2364 | 2732 | 38089 | 21943 | -+| initialize | 26067 | 45246 | 45252 | 53156 | 657 | - | setClaimer | 24282 | 24282 | 24282 | 24282 | 4 | - | setDistributionEnd | 8888 | 8888 | 8888 | 8888 | 2 | - | setEmissionPerSecond | 24335 | 24335 | 24335 | 24335 | 2 | -@@ -1055,15 +1056,15 @@ - | Deployment Cost | Deployment Size | | | | | - | 0 | 0 | | | | | - | Function Name | min | avg | median | max | # calls | --| initialize | 90684 | 90684 | 90684 | 90684 | 674 | -+| initialize | 90684 | 90684 | 90684 | 90684 | 679 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3GettersBatchOne.sol:AaveV3GettersBatchOne contract | | | | | | - |-----------------------------------------------------------------------------------------------------------|-----------------|-----|--------|-----|---------| - | Deployment Cost | Deployment Size | | | | | --| 5190134 | 33125 | | | | | -+| 5145702 | 33451 | | | | | - | Function Name | min | avg | median | max | # calls | --| getGettersReportOne | 971 | 971 | 971 | 971 | 672 | -+| getGettersReportOne | 971 | 971 | 971 | 971 | 677 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3GettersBatchTwo.sol:AaveV3GettersBatchTwo contract | | | | | | -@@ -1071,15 +1072,15 @@ - | Deployment Cost | Deployment Size | | | | | - | 1583555 | 11792 | | | | | - | Function Name | min | avg | median | max | # calls | --| getGettersReportTwo | 535 | 535 | 535 | 535 | 647 | -+| getGettersReportTwo | 535 | 535 | 535 | 535 | 652 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3HelpersBatchOne.sol:AaveV3HelpersBatchOne contract | | | | | | - |-----------------------------------------------------------------------------------------------------------|-----------------|------|--------|------|---------| - | Deployment Cost | Deployment Size | | | | | --| 7434786 | 35360 | | | | | -+| 7356455 | 35017 | | | | | - | Function Name | min | avg | median | max | # calls | --| getConfigEngineReport | 1696 | 1696 | 1696 | 1696 | 622 | -+| getConfigEngineReport | 1696 | 1696 | 1696 | 1696 | 627 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3HelpersBatchTwo.sol:AaveV3HelpersBatchTwo contract | | | | | | -@@ -1087,15 +1088,15 @@ - | Deployment Cost | Deployment Size | | | | | - | 7169046 | 31590 | | | | | - | Function Name | min | avg | median | max | # calls | --| staticATokenReport | 971 | 971 | 971 | 971 | 622 | -+| staticATokenReport | 971 | 971 | 971 | 971 | 627 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3L2PoolBatch.sol:AaveV3L2PoolBatch contract | | | | | | - |---------------------------------------------------------------------------------------------------|-----------------|-----|--------|-----|---------| - | Deployment Cost | Deployment Size | | | | | --| 9289812 | 42653 | | | | | -+| 9338136 | 42878 | | | | | - | Function Name | min | avg | median | max | # calls | --| getPoolReport | 535 | 535 | 535 | 535 | 672 | -+| getPoolReport | 535 | 535 | 535 | 535 | 677 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3MiscBatch.sol:AaveV3MiscBatch contract | | | | | | -@@ -1103,13 +1104,13 @@ - | Deployment Cost | Deployment Size | | | | | - | 1062926 | 7122 | | | | | - | Function Name | min | avg | median | max | # calls | --| getMiscReport | 535 | 535 | 535 | 535 | 672 | -+| getMiscReport | 535 | 535 | 535 | 535 | 677 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3ParaswapBatch.sol:AaveV3ParaswapBatch contract | | | | | | - |-------------------------------------------------------------------------------------------------------|-----------------|-----|--------|-----|---------| - | Deployment Cost | Deployment Size | | | | | --| 6476447 | 33699 | | | | | -+| 6475775 | 33699 | | | | | - | Function Name | min | avg | median | max | # calls | - | getParaswapReport | 971 | 971 | 971 | 971 | 30 | - -@@ -1119,7 +1120,7 @@ - | Deployment Cost | Deployment Size | | | | | - | 7573451 | 38861 | | | | | - | Function Name | min | avg | median | max | # calls | --| getPeripheryReport | 1333 | 1333 | 1333 | 1333 | 672 | -+| getPeripheryReport | 1333 | 1333 | 1333 | 1333 | 677 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3SetupBatch.sol:AaveV3SetupBatch contract | | | | | | -@@ -1127,9 +1128,9 @@ - | Deployment Cost | Deployment Size | | | | | - | 5147688 | 28075 | | | | | - | Function Name | min | avg | median | max | # calls | --| getInitialReport | 554 | 554 | 554 | 554 | 672 | --| setMarketReport | 632455 | 634818 | 632455 | 773435 | 622 | --| setupAaveV3Market | 2709798 | 2710437 | 2709798 | 2736039 | 649 | -+| getInitialReport | 554 | 554 | 554 | 554 | 677 | -+| setMarketReport | 632455 | 634799 | 632455 | 773435 | 627 | -+| setupAaveV3Market | 2709798 | 2710424 | 2709798 | 2735948 | 654 | - - - | src/deployments/projects/aave-v3-batched/batches/AaveV3TokensBatch.sol:AaveV3TokensBatch contract | | | | | | -@@ -1137,130 +1138,130 @@ - | Deployment Cost | Deployment Size | | | | | - | 4294582 | 20766 | | | | | - | Function Name | min | avg | median | max | # calls | --| getTokensReport | 535 | 535 | 535 | 535 | 647 | -+| getTokensReport | 535 | 535 | 535 | 535 | 652 | - - --| tests/extensions/v3-config-engine/mocks/AaveV3MockAssetEModeUpdate.sol:AaveV3MockAssetEModeUpdate contract | | | | | | --|------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| --| Deployment Cost | Deployment Size | | | | | --| 751213 | 3484 | | | | | --| Function Name | min | avg | median | max | # calls | --| execute | 94550 | 94550 | 94550 | 94550 | 1 | -+| tests/extensions/v3-config-engine/mocks/AaveV3MockAssetEModeUpdate.sol:AaveV3MockAssetEModeUpdate contract | | | | | | -+|------------------------------------------------------------------------------------------------------------|-----------------|--------|--------|--------|---------| -+| Deployment Cost | Deployment Size | | | | | -+| 790748 | 3668 | | | | | -+| Function Name | min | avg | median | max | # calls | -+| execute | 119157 | 119157 | 119157 | 119157 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockBorrowUpdate.sol:AaveV3MockBorrowUpdate contract | | | | | | - |----------------------------------------------------------------------------------------------------|-----------------|--------|--------|--------|---------| - | Deployment Cost | Deployment Size | | | | | --| 783501 | 3634 | | | | | -+| 816478 | 3787 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 159425 | 159425 | 159425 | 159425 | 1 | -+| execute | 159566 | 159566 | 159566 | 159566 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockBorrowUpdateNoChange.sol:AaveV3MockBorrowUpdateNoChange contract | | | | | | - |--------------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 790396 | 3666 | | | | | -+| 823384 | 3819 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 47089 | 47089 | 47089 | 47089 | 1 | -+| execute | 47076 | 47076 | 47076 | 47076 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockCapUpdate.sol:AaveV3MockCapUpdate contract | | | | | | - |----------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 770601 | 3574 | | | | | -+| 803217 | 3726 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 86135 | 86135 | 86135 | 86135 | 1 | -+| execute | 86081 | 86081 | 86081 | 86081 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockCollateralUpdate.sol:AaveV3MockCollateralUpdate contract | | | | | | - |------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 784137 | 3637 | | | | | -+| 817030 | 3790 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 89667 | 89667 | 89667 | 89667 | 1 | -+| execute | 89720 | 89720 | 89720 | 89720 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockCollateralUpdateNoChange.sol:AaveV3MockCollateralUpdateNoChange contract | | | | | | - |----------------------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 790576 | 3667 | | | | | -+| 823420 | 3820 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 35916 | 35916 | 35916 | 35916 | 2 | -+| execute | 35903 | 35903 | 35903 | 35903 | 2 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockCollateralUpdateWrongBonus.sol:AaveV3MockCollateralUpdateCorrectBonus contract | | | | | | - |----------------------------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 784137 | 3637 | | | | | -+| 817030 | 3790 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 89667 | 89667 | 89667 | 89667 | 1 | -+| execute | 89720 | 89720 | 89720 | 89720 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockCollateralUpdateWrongBonus.sol:AaveV3MockCollateralUpdateWrongBonus contract | | | | | | - |--------------------------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 785049 | 3641 | | | | | -+| 817894 | 3794 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 35332 | 35332 | 35332 | 35332 | 1 | -+| execute | 35294 | 35294 | 35294 | 35294 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockEModeCategoryUpdate.sol:AaveV3MockEModeCategoryUpdate contract | | | | | | - |------------------------------------------------------------------------------------------------------------------|-----------------|--------|--------|--------|---------| - | Deployment Cost | Deployment Size | | | | | --| 756400 | 3425 | | | | | -+| 785793 | 3562 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 155461 | 155461 | 155461 | 155461 | 2 | -+| execute | 135648 | 135648 | 135648 | 135648 | 2 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockEModeCategoryUpdate.sol:AaveV3MockEModeCategoryUpdateEdgeBonus contract | | | | | | - |---------------------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 757072 | 3428 | | | | | -+| 786441 | 3565 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 53964 | 53964 | 53964 | 53964 | 1 | -+| execute | 56434 | 56434 | 56434 | 56434 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockEModeCategoryUpdateNoChange.sol:AaveV3MockEModeCategoryUpdateNoChange contract | | | | | | - |----------------------------------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 770849 | 3492 | | | | | -+| 800206 | 3629 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 38497 | 38497 | 38497 | 38497 | 2 | -+| execute | 37910 | 37910 | 37910 | 37910 | 2 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockListing.sol:AaveV3MockListing contract | | | | | | - |------------------------------------------------------------------------------------------|-----------------|---------|---------|---------|---------| - | Deployment Cost | Deployment Size | | | | | --| 853685 | 4030 | | | | | -+| 882403 | 4162 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 1836009 | 1836009 | 1836009 | 1836009 | 1 | --| newListings | 2820 | 2820 | 2820 | 2820 | 4 | -+| execute | 1815216 | 1815216 | 1815216 | 1815216 | 1 | -+| newListings | 2729 | 2729 | 2729 | 2729 | 4 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockListingCustom.sol:AaveV3MockListingCustom contract | | | | | | - |------------------------------------------------------------------------------------------------------|-----------------|---------|---------|---------|---------| - | Deployment Cost | Deployment Size | | | | | --| 918454 | 4491 | | | | | -+| 946992 | 4623 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 1835953 | 1835953 | 1835953 | 1835953 | 1 | --| newListingsCustom | 3295 | 3295 | 3295 | 3295 | 4 | -+| execute | 1815233 | 1815233 | 1815233 | 1815233 | 1 | -+| newListingsCustom | 3226 | 3226 | 3226 | 3226 | 4 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockPriceFeedUpdate.sol:AaveV3MockPriceFeedUpdate contract | | | | | | - |----------------------------------------------------------------------------------------------------------|-----------------|-------|--------|-------|---------| - | Deployment Cost | Deployment Size | | | | | --| 774000 | 3660 | | | | | -+| 806996 | 3812 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 65371 | 65371 | 65371 | 65371 | 1 | -+| execute | 65395 | 65395 | 65395 | 65395 | 1 | - - - | tests/extensions/v3-config-engine/mocks/AaveV3MockRatesUpdate.sol:AaveV3MockRatesUpdate contract | | | | | | - |--------------------------------------------------------------------------------------------------|-----------------|--------|--------|--------|---------| - | Deployment Cost | Deployment Size | | | | | --| 772773 | 3584 | | | | | -+| 809091 | 3753 | | | | | - | Function Name | min | avg | median | max | # calls | --| execute | 148663 | 148663 | 148663 | 148663 | 1 | --| rateStrategiesUpdates | 1184 | 1184 | 1184 | 1184 | 4 | -+| execute | 148672 | 148672 | 148672 | 148672 | 1 | -+| rateStrategiesUpdates | 1162 | 1162 | 1162 | 1162 | 4 | - - - | tests/harness/VariableDebtToken.sol:VariableDebtTokenHarness contract | | | | | | -@@ -1273,17 +1274,17 @@ - | UNDERLYING_ASSET_ADDRESS | 376 | 1200 | 376 | 2376 | 4354 | - | allowance | 909 | 909 | 909 | 909 | 1 | - | approve | 22107 | 22107 | 22107 | 22107 | 1 | --| approveDelegation | 48608 | 48637 | 48632 | 48680 | 256 | --| burn | 52036 | 52064 | 52060 | 52108 | 512 | -+| approveDelegation | 48608 | 48634 | 48632 | 48680 | 256 | -+| burn | 52036 | 52065 | 52060 | 52108 | 512 | - | decimals | 335 | 335 | 335 | 335 | 3330 | - | decreaseAllowance | 22128 | 22128 | 22128 | 22128 | 1 | - | getIncentivesController | 431 | 431 | 431 | 431 | 3330 | - | increaseAllowance | 22128 | 22128 | 22128 | 22128 | 1 | --| initialize | 29524 | 148072 | 179097 | 270713 | 2048 | --| mint | 86763 | 88040 | 86799 | 91824 | 1024 | --| name | 1009 | 1332 | 1264 | 1796 | 3330 | -+| initialize | 29318 | 147436 | 179085 | 270653 | 2048 | -+| mint | 86763 | 88039 | 86799 | 91824 | 1024 | -+| name | 1009 | 1329 | 1264 | 1796 | 3330 | - | scaledBalanceOf | 691 | 691 | 691 | 691 | 1024 | --| symbol | 1030 | 1351 | 1285 | 1817 | 3330 | -+| symbol | 1030 | 1354 | 1285 | 1817 | 3330 | - | transfer | 22150 | 22150 | 22150 | 22150 | 1 | - | transferFrom | 22377 | 22377 | 22377 | 22377 | 1 | - -@@ -1291,11 +1292,11 @@ - | tests/mocks/AaveV3TestListing.sol:AaveV3TestListing contract | | | | | | - |--------------------------------------------------------------|-----------------|---------|---------|---------|---------| - | Deployment Cost | Deployment Size | | | | | --| 3392063 | 13846 | | | | | -+| 3416267 | 13958 | | | | | - | Function Name | min | avg | median | max | # calls | --| USDX_ADDRESS | 294 | 294 | 294 | 294 | 617 | --| WBTC_ADDRESS | 250 | 250 | 250 | 250 | 617 | --| execute | 5227666 | 5230040 | 5230240 | 5230240 | 619 | -+| USDX_ADDRESS | 272 | 272 | 272 | 272 | 622 | -+| WBTC_ADDRESS | 228 | 228 | 228 | 228 | 622 | -+| execute | 5177782 | 5180033 | 5180221 | 5180221 | 624 | - - - | tests/mocks/AugustusRegistryMock.sol:AugustusRegistryMock contract | | | | | | -@@ -1332,4 +1333,4 @@ - - - --Ran 56 test suites in 75.93s (123.90s CPU time): 694 tests passed, 0 failed, 0 skipped (694 total tests) -+Ran 57 test suites in 75.90s (200.04s CPU time): 699 tests passed, 0 failed, 0 skipped (699 total tests) -``` diff --git a/foundry.toml b/foundry.toml index 61253e0b..b685047e 100644 --- a/foundry.toml +++ b/foundry.toml @@ -4,14 +4,17 @@ test = 'tests' script = 'scripts' optimizer = true optimizer_runs = 200 -solc='0.8.19' +solc = '0.8.19' evm_version = 'paris' bytecode_hash = 'none' out = 'out' libs = ['lib'] -remappings = [ +remappings = [] +fs_permissions = [ + { access = "write", path = "./reports" }, + { access = "read", path = "./out" }, + { access = "read", path = "./config" }, ] -fs_permissions = [{access = "write", path = "./reports"}, {access = "read", path = "./out" }, {access = "read", path = "./config"}] ffi = true [fuzz] @@ -25,7 +28,7 @@ avalanche = "${RPC_AVALANCHE}" polygon = "${RPC_POLYGON}" arbitrum = "${RPC_ARBITRUM}" fantom = "${RPC_FANTOM}" -scroll= "${RPC_SCROLL}" +scroll = "${RPC_SCROLL}" celo = "${RPC_CELO}" fantom_testnet = "${RPC_FANTOM_TESTNET}" harmony = "${RPC_HARMONY}" @@ -38,19 +41,19 @@ gnosis = "${RPC_GNOSIS}" base = "${RPC_BASE}" [etherscan] -mainnet={key="${ETHERSCAN_API_KEY_MAINNET}",chainId=1} -optimism={key="${ETHERSCAN_API_KEY_OPTIMISM}",chainId=10} -avalanche={key="${ETHERSCAN_API_KEY_AVALANCHE}",chainId=43114} -polygon={key="${ETHERSCAN_API_KEY_POLYGON}",chainId=137} -arbitrum={key="${ETHERSCAN_API_KEY_ARBITRUM}",chainId=42161} -fantom={key="${ETHERSCAN_API_KEY_FANTOM}",chainId=250} -scroll={key="${ETHERSCAN_API_KEY_SCROLL}",chainId=534352, url='https://api.scrollscan.com/api\?'} -celo={key="${ETHERSCAN_API_KEY_CELO}",chainId=42220} -sepolia={key="${ETHERSCAN_API_KEY_MAINNET}",chainId=11155111} -mumbai={key="${ETHERSCAN_API_KEY_POLYGON}",chainId=80001} -amoy={key="${ETHERSCAN_API_KEY_POLYGON}",chainId=80002} -bnb_testnet={key="${ETHERSCAN_API_KEY_BNB}",chainId=97,url='https://api-testnet.bscscan.com/api'} -bnb={key="${ETHERSCAN_API_KEY_BNB}",chainId=56,url='https://api.bscscan.com/api'} -base={key="${ETHERSCAN_API_KEY_BASE}",chain=8453} -gnosis={key="${ETHERSCAN_API_KEY_GNOSIS}",chainId=100} +mainnet = { key = "${ETHERSCAN_API_KEY_MAINNET}", chainId = 1 } +optimism = { key = "${ETHERSCAN_API_KEY_OPTIMISM}", chainId = 10 } +avalanche = { key = "${ETHERSCAN_API_KEY_AVALANCHE}", chainId = 43114 } +polygon = { key = "${ETHERSCAN_API_KEY_POLYGON}", chainId = 137 } +arbitrum = { key = "${ETHERSCAN_API_KEY_ARBITRUM}", chainId = 42161 } +fantom = { key = "${ETHERSCAN_API_KEY_FANTOM}", chainId = 250 } +scroll = { key = "${ETHERSCAN_API_KEY_SCROLL}", chainId = 534352, url = 'https://api.scrollscan.com/api\?' } +celo = { key = "${ETHERSCAN_API_KEY_CELO}", chainId = 42220 } +sepolia = { key = "${ETHERSCAN_API_KEY_MAINNET}", chainId = 11155111 } +mumbai = { key = "${ETHERSCAN_API_KEY_POLYGON}", chainId = 80001 } +amoy = { key = "${ETHERSCAN_API_KEY_POLYGON}", chainId = 80002 } +bnb_testnet = { key = "${ETHERSCAN_API_KEY_BNB}", chainId = 97, url = 'https://api-testnet.bscscan.com/api' } +bnb = { key = "${ETHERSCAN_API_KEY_BNB}", chainId = 56, url = 'https://api.bscscan.com/api' } +base = { key = "${ETHERSCAN_API_KEY_BASE}", chain = 8453 } +gnosis = { key = "${ETHERSCAN_API_KEY_GNOSIS}", chainId = 100 } # See more config options https://github.com/gakonst/foundry/tree/master/config