@bgd-labs/aave-address-book 1.2.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. package/.editorconfig +13 -0
  2. package/.prettierignore +4 -0
  3. package/.prettierrc +15 -0
  4. package/CHANGELOG.md +30 -0
  5. package/README.md +84 -36
  6. package/dist/AaveAddressBook.d.ts +6 -1
  7. package/dist/AaveAddressBook.js +8 -2
  8. package/dist/AaveGovernanceV2.d.ts +4 -0
  9. package/dist/AaveGovernanceV2.js +7 -0
  10. package/dist/AaveSafetyModule.d.ts +2 -0
  11. package/dist/AaveSafetyModule.js +5 -0
  12. package/dist/AaveV2Avalanche.d.ts +3 -0
  13. package/dist/AaveV2Avalanche.js +5 -1
  14. package/dist/AaveV2Ethereum.d.ts +3 -0
  15. package/dist/AaveV2Ethereum.js +5 -1
  16. package/dist/AaveV2EthereumAMM.d.ts +3 -0
  17. package/dist/AaveV2EthereumAMM.js +5 -1
  18. package/dist/AaveV2EthereumArc.js +1 -0
  19. package/dist/AaveV2Fuji.d.ts +2 -0
  20. package/dist/AaveV2Fuji.js +4 -1
  21. package/dist/AaveV2Goerli.d.ts +12 -0
  22. package/dist/AaveV2Goerli.js +16 -0
  23. package/dist/AaveV2Mumbai.d.ts +2 -0
  24. package/dist/AaveV2Mumbai.js +4 -1
  25. package/dist/AaveV2Polygon.d.ts +4 -1
  26. package/dist/AaveV2Polygon.js +6 -2
  27. package/dist/AaveV3Arbitrum.d.ts +8 -0
  28. package/dist/AaveV3Arbitrum.js +10 -1
  29. package/dist/AaveV3ArbitrumGoerli.d.ts +17 -0
  30. package/dist/AaveV3ArbitrumGoerli.js +21 -0
  31. package/dist/AaveV3Avalanche.d.ts +8 -0
  32. package/dist/AaveV3Avalanche.js +10 -1
  33. package/dist/AaveV3Fantom.d.ts +8 -0
  34. package/dist/AaveV3Fantom.js +10 -1
  35. package/dist/AaveV3FantomTestnet.d.ts +7 -0
  36. package/dist/AaveV3FantomTestnet.js +9 -1
  37. package/dist/AaveV3Fuji.d.ts +7 -0
  38. package/dist/AaveV3Fuji.js +9 -1
  39. package/dist/AaveV3Goerli.d.ts +17 -0
  40. package/dist/AaveV3Goerli.js +21 -0
  41. package/dist/AaveV3Harmony.d.ts +6 -0
  42. package/dist/AaveV3Harmony.js +8 -1
  43. package/dist/AaveV3Mumbai.d.ts +7 -0
  44. package/dist/AaveV3Mumbai.js +9 -1
  45. package/dist/AaveV3Optimism.d.ts +8 -0
  46. package/dist/AaveV3Optimism.js +10 -1
  47. package/dist/AaveV3OptimismGoerli.d.ts +17 -0
  48. package/dist/AaveV3OptimismGoerli.js +21 -0
  49. package/dist/AaveV3Polygon.d.ts +9 -1
  50. package/dist/AaveV3Polygon.js +11 -2
  51. package/package.json +2 -5
  52. package/src/AaveAddressBook.sol +5 -7
  53. package/src/AaveGovernanceV2.sol +19 -1
  54. package/src/AaveMisc.sol +86 -0
  55. package/src/AaveV2.sol +16 -0
  56. package/src/AaveV2Avalanche.sol +1 -1
  57. package/src/AaveV2Ethereum.sol +1 -1
  58. package/src/AaveV2EthereumAMM.sol +1 -1
  59. package/src/AaveV2EthereumArc.sol +1 -1
  60. package/src/AaveV2Fuji.sol +1 -1
  61. package/src/AaveV2Goerli.sol +35 -0
  62. package/src/AaveV2Mumbai.sol +1 -1
  63. package/src/AaveV2Polygon.sol +3 -2
  64. package/src/AaveV3.sol +70 -8
  65. package/src/AaveV3Arbitrum.sol +19 -4
  66. package/src/AaveV3ArbitrumGoerli.sol +49 -0
  67. package/src/AaveV3Avalanche.sol +19 -4
  68. package/src/AaveV3Fantom.sol +19 -4
  69. package/src/AaveV3FantomTestnet.sol +19 -4
  70. package/src/AaveV3Fuji.sol +19 -4
  71. package/src/AaveV3Goerli.sol +49 -0
  72. package/src/AaveV3Harmony.sol +19 -4
  73. package/src/AaveV3Mumbai.sol +19 -4
  74. package/src/AaveV3Optimism.sol +19 -4
  75. package/src/AaveV3OptimismGoerli.sol +49 -0
  76. package/src/AaveV3Polygon.sol +19 -4
  77. package/src/test/AaveV2Misfits.t.sol +2 -3
  78. package/src/test/AaveV3Avalanche.t.sol +10 -3
  79. package/src/ts/AaveAddressBook.ts +7 -1
  80. package/src/ts/AaveGovernanceV2.ts +4 -0
  81. package/src/ts/AaveSafetyModule.ts +2 -0
  82. package/src/ts/AaveV2Avalanche.ts +6 -0
  83. package/src/ts/AaveV2Ethereum.ts +6 -0
  84. package/src/ts/AaveV2EthereumAMM.ts +6 -0
  85. package/src/ts/AaveV2EthereumArc.ts +1 -0
  86. package/src/ts/AaveV2Fuji.ts +3 -0
  87. package/src/ts/AaveV2Goerli.ts +15 -0
  88. package/src/ts/AaveV2Mumbai.ts +3 -0
  89. package/src/ts/AaveV2Polygon.ts +8 -1
  90. package/src/ts/AaveV3Arbitrum.ts +15 -0
  91. package/src/ts/AaveV3ArbitrumGoerli.ts +25 -0
  92. package/src/ts/AaveV3Avalanche.ts +15 -0
  93. package/src/ts/AaveV3Fantom.ts +15 -0
  94. package/src/ts/AaveV3FantomTestnet.ts +12 -0
  95. package/src/ts/AaveV3Fuji.ts +12 -0
  96. package/src/ts/AaveV3Goerli.ts +25 -0
  97. package/src/ts/AaveV3Harmony.ts +11 -0
  98. package/src/ts/AaveV3Mumbai.ts +12 -0
  99. package/src/ts/AaveV3Optimism.ts +15 -0
  100. package/src/ts/AaveV3OptimismGoerli.ts +25 -0
  101. package/src/ts/AaveV3Polygon.ts +16 -1
  102. package/dist/AaveV3OptimismKovan.d.ts +0 -10
  103. package/dist/AaveV3OptimismKovan.js +0 -13
  104. package/lib/forge-std/.gitmodules +0 -3
  105. package/lib/forge-std/LICENSE-APACHE +0 -203
  106. package/lib/forge-std/LICENSE-MIT +0 -25
  107. package/lib/forge-std/README.md +0 -246
  108. package/lib/forge-std/lib/ds-test/LICENSE +0 -674
  109. package/lib/forge-std/lib/ds-test/Makefile +0 -14
  110. package/lib/forge-std/lib/ds-test/default.nix +0 -4
  111. package/lib/forge-std/lib/ds-test/demo/demo.sol +0 -222
  112. package/lib/forge-std/lib/ds-test/src/test.sol +0 -469
  113. package/lib/forge-std/src/Script.sol +0 -39
  114. package/lib/forge-std/src/StdJson.sol +0 -118
  115. package/lib/forge-std/src/Test.sol +0 -1134
  116. package/lib/forge-std/src/Vm.sol +0 -231
  117. package/lib/forge-std/src/console.sol +0 -1533
  118. package/lib/forge-std/src/console2.sol +0 -1538
  119. package/lib/forge-std/src/test/Script.t.sol +0 -12
  120. package/lib/forge-std/src/test/StdAssertions.t.sol +0 -591
  121. package/lib/forge-std/src/test/StdCheats.t.sol +0 -282
  122. package/lib/forge-std/src/test/StdError.t.sol +0 -124
  123. package/lib/forge-std/src/test/StdMath.t.sol +0 -200
  124. package/lib/forge-std/src/test/StdStorage.t.sol +0 -321
  125. package/lib/forge-std/src/test/fixtures/broadcast.log.json +0 -187
  126. package/src/AaveAddressBookV2.sol +0 -143
  127. package/src/AaveAddressBookV2Testnet.sol +0 -74
  128. package/src/AaveAddressBookV3.sol +0 -166
  129. package/src/AaveAddressBookV3Testnet.sol +0 -120
  130. package/src/AaveV3HarmonyTestnet.sol +0 -34
  131. package/src/AaveV3OptimismKovan.sol +0 -34
  132. package/src/Common.sol +0 -9
  133. package/src/ts/AaveV3OptimismKovan.ts +0 -13
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
5
  import {ILendingPoolAddressesProvider, ILendingPool, ILendingPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider} from "./AaveV2.sol";
5
- import {Token} from "./Common.sol";
6
6
 
7
7
  library AaveV2Fuji {
8
8
  ILendingPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -0,0 +1,35 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
3
+ pragma solidity >=0.6.0;
4
+
5
+ import {ILendingPoolAddressesProvider, ILendingPool, ILendingPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider} from "./AaveV2.sol";
6
+
7
+ library AaveV2Goerli {
8
+ ILendingPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
9
+ ILendingPoolAddressesProvider(
10
+ 0x5E52dEc931FFb32f609681B8438A51c675cc232d
11
+ );
12
+
13
+ ILendingPool internal constant POOL =
14
+ ILendingPool(0x4bd5643ac6f66a5237E18bfA7d47cF22f1c9F210);
15
+
16
+ ILendingPoolConfigurator internal constant POOL_CONFIGURATOR =
17
+ ILendingPoolConfigurator(0x88B1D3d97656De3Ec44FEDDfa109AF7fb8C2837D);
18
+
19
+ IAaveOracle internal constant ORACLE =
20
+ IAaveOracle(0x2cb0d5755436ED904D7D0fbBACc6176286c55667);
21
+
22
+ IAaveProtocolDataProvider internal constant AAVE_PROTOCOL_DATA_PROVIDER =
23
+ IAaveProtocolDataProvider(0x0000000000000000000000000000000000000000);
24
+
25
+ address internal constant POOL_ADMIN =
26
+ 0x77c45699A715A64A7a7796d5CEe884cf617D5254;
27
+
28
+ address internal constant EMERGENCY_ADMIN =
29
+ 0x77c45699A715A64A7a7796d5CEe884cf617D5254;
30
+
31
+ address internal constant COLLECTOR =
32
+ 0x464C71f6c2F760DdA6093dCB91C24c39e5d6e18c;
33
+
34
+ address internal constant COLLECTOR_CONTROLLER = address(0);
35
+ }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
5
  import {ILendingPoolAddressesProvider, ILendingPool, ILendingPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider} from "./AaveV2.sol";
5
- import {Token} from "./Common.sol";
6
6
 
7
7
  library AaveV2Mumbai {
8
8
  ILendingPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
5
  import {ILendingPoolAddressesProvider, ILendingPool, ILendingPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider} from "./AaveV2.sol";
5
- import {Token} from "./Common.sol";
6
6
 
7
7
  library AaveV2Polygon {
8
8
  ILendingPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -31,5 +31,6 @@ library AaveV2Polygon {
31
31
  address internal constant COLLECTOR =
32
32
  0x7734280A4337F37Fbf4651073Db7c28C80B339e9;
33
33
 
34
- address internal constant COLLECTOR_CONTROLLER = address(0);
34
+ address internal constant COLLECTOR_CONTROLLER =
35
+ 0xDB89487A449274478e984665b8692AfC67459deF;
35
36
  }
package/src/AaveV3.sol CHANGED
@@ -1919,7 +1919,6 @@ struct TokenData {
1919
1919
 
1920
1920
  // TODO: add better documentation
1921
1921
  interface IAaveProtocolDataProvider {
1922
-
1923
1922
  function getAllReservesTokens() external view returns (TokenData[] memory);
1924
1923
 
1925
1924
  function getAllATokens() external view returns (TokenData[] memory);
@@ -2036,11 +2035,11 @@ interface IAaveProtocolDataProvider {
2036
2035
  address stableDebtTokenAddress,
2037
2036
  address variableDebtTokenAddress
2038
2037
  );
2039
-
2040
- function getInterestRateStrategyAddress(address asset)
2041
- external
2042
- view
2043
- returns (address irStrategyAddress);
2038
+
2039
+ function getInterestRateStrategyAddress(address asset)
2040
+ external
2041
+ view
2042
+ returns (address irStrategyAddress);
2044
2043
  }
2045
2044
 
2046
2045
  /**
@@ -2331,7 +2330,10 @@ interface IInterestRateStrategy {
2331
2330
  * 1-optimal stable to total debt ratio. Added as a constant here for gas optimizations.
2332
2331
  * Expressed in ray
2333
2332
  */
2334
- function MAX_EXCESS_STABLE_TO_TOTAL_DEBT_RATIO() external view returns (uint256);
2333
+ function MAX_EXCESS_STABLE_TO_TOTAL_DEBT_RATIO()
2334
+ external
2335
+ view
2336
+ returns (uint256);
2335
2337
 
2336
2338
  function ADDRESSES_PROVIDER() external view returns (IPoolAddressesProvider);
2337
2339
 
@@ -2395,7 +2397,9 @@ interface IInterestRateStrategy {
2395
2397
  * @return stableBorrowRate The stable borrow rate expressed in rays
2396
2398
  * @return variableBorrowRate The variable borrow rate expressed in rays
2397
2399
  */
2398
- function calculateInterestRates(DataTypes.CalculateInterestRatesParams memory params)
2400
+ function calculateInterestRates(
2401
+ DataTypes.CalculateInterestRatesParams memory params
2402
+ )
2399
2403
  external
2400
2404
  view
2401
2405
  returns (
@@ -2404,3 +2408,61 @@ interface IInterestRateStrategy {
2404
2408
  uint256
2405
2409
  );
2406
2410
  }
2411
+
2412
+ /**
2413
+ * @title ICollector
2414
+ * @notice Defines the interface of the Collector contract
2415
+ * @author Aave
2416
+ **/
2417
+ interface ICollector {
2418
+ /**
2419
+ * @dev Emitted during the transfer of ownership of the funds administrator address
2420
+ * @param fundsAdmin The new funds administrator address
2421
+ **/
2422
+ event NewFundsAdmin(address indexed fundsAdmin);
2423
+
2424
+ /**
2425
+ * @dev Retrieve the current implementation Revision of the proxy
2426
+ * @return The revision version
2427
+ */
2428
+ function REVISION() external view returns (uint256);
2429
+
2430
+ /**
2431
+ * @dev Retrieve the current funds administrator
2432
+ * @return The address of the funds administrator
2433
+ */
2434
+ function getFundsAdmin() external view returns (address);
2435
+
2436
+ /**
2437
+ * @dev Approve an amount of tokens to be pulled by the recipient.
2438
+ * @param token The address of the asset
2439
+ * @param recipient The address of the entity allowed to pull tokens
2440
+ * @param amount The amount allowed to be pulled. If zero it will revoke the approval.
2441
+ */
2442
+ function approve(
2443
+ // IERC20 token,
2444
+ address token,
2445
+ address recipient,
2446
+ uint256 amount
2447
+ ) external;
2448
+
2449
+ /**
2450
+ * @dev Transfer an amount of tokens to the recipient.
2451
+ * @param token The address of the asset
2452
+ * @param recipient The address of the entity to transfer the tokens.
2453
+ * @param amount The amount to be transferred.
2454
+ */
2455
+ function transfer(
2456
+ // IERC20 token,
2457
+ address token,
2458
+ address recipient,
2459
+ uint256 amount
2460
+ ) external;
2461
+
2462
+ /**
2463
+ * @dev Transfer the ownership of the funds administrator role.
2464
+ This function should only be callable by the current funds administrator.
2465
+ * @param admin The address of the new funds administrator
2466
+ */
2467
+ function setFundsAdmin(address admin) external;
2468
+ }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Arbitrum {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Arbitrum {
29
29
  address internal constant COLLECTOR =
30
30
  0x053D55f9B5AF8694c503EB288a1B7E552f590710;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0xC3301b30f4EcBfd59dE0d74e89690C1a70C6f21B;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xC3301b30f4EcBfd59dE0d74e89690C1a70C6f21B);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x929EC64c34a17401F460460D4B9390518E5B473e;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xa5ba6E5EC19a1Bf23C857991c857dB62b2Aa187B;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x81387c40EB75acB02757C1Ae55D5936E78c9dEd3;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x52A1CeB68Ee6b7B5D13E0376A1E0E4423A8cE26e;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x048f2228D7Bf6776f99aB50cB1b1eaB4D1d4cA73;
34
49
  }
@@ -0,0 +1,49 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
3
+ pragma solidity >=0.6.0;
4
+
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
+
7
+ library AaveV3ArbitrumGoerli {
8
+ IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
9
+ IPoolAddressesProvider(0xF8aa90E66B8BAe13f2e4aDe6104abAb8eeDaBfdc);
10
+
11
+ IPool internal constant POOL =
12
+ IPool(0x6Cbb4E8eC402E07fDF96DbbC6c752aCfB0eB6075);
13
+
14
+ IPoolConfigurator internal constant POOL_CONFIGURATOR =
15
+ IPoolConfigurator(0x279Dd50e124D45bDeDCF408849937A4985e56dD2);
16
+
17
+ IAaveOracle internal constant ORACLE =
18
+ IAaveOracle(0x86b4D2636EC473AC4A5dD83Fc2BEDa98845249A7);
19
+
20
+ IAaveProtocolDataProvider internal constant AAVE_PROTOCOL_DATA_PROVIDER =
21
+ IAaveProtocolDataProvider(0xce3Aa85237C075d2102b7B35079d305307D745C8);
22
+
23
+ IACLManager internal constant ACL_MANAGER =
24
+ IACLManager(0xe8599F3cc5D38a9aD6F3684cd5CEa72f10Dbc383);
25
+
26
+ address internal constant ACL_ADMIN =
27
+ 0x4365F8e70CF38C6cA67DE41448508F2da8825500;
28
+
29
+ address internal constant COLLECTOR =
30
+ 0xad848879F9Ac276BdB7D38123F381C692FD6D6dE;
31
+
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xff01517f8811E532900a46e6AdB4484BDB3f2B8a);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0xCf9C57744E10495490cB873612Db709417cFe4f4;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0x60bD8be38855AAd1459E958dC921ed5bbb5E3292;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x0aadeE9418641b5749e872eDEF9844200143865D;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x6A83d738fCBaB0c3973234AC7b7b4f7DDa2aD248;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0xb023e699F5a33916Ea823A16485e259257cA8Bd1;
49
+ }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Avalanche {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Avalanche {
29
29
  address internal constant COLLECTOR =
30
30
  0x5ba7fd868c40c16f7aDfAe6CF87121E13FC2F7a0;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0xaCbE7d574EF8dC39435577eb638167Aca74F79f0;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xaCbE7d574EF8dC39435577eb638167Aca74F79f0);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x929EC64c34a17401F460460D4B9390518E5B473e;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xa5ba6E5EC19a1Bf23C857991c857dB62b2Aa187B;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x81387c40EB75acB02757C1Ae55D5936E78c9dEd3;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x52A1CeB68Ee6b7B5D13E0376A1E0E4423A8cE26e;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x048f2228D7Bf6776f99aB50cB1b1eaB4D1d4cA73;
34
49
  }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Fantom {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Fantom {
29
29
  address internal constant COLLECTOR =
30
30
  0xBe85413851D195fC6341619cD68BfDc26a25b928;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0xc0F0cFBbd0382BcE3B93234E4BFb31b2aaBE36aD;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xc0F0cFBbd0382BcE3B93234E4BFb31b2aaBE36aD);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x929EC64c34a17401F460460D4B9390518E5B473e;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xa5ba6E5EC19a1Bf23C857991c857dB62b2Aa187B;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x81387c40EB75acB02757C1Ae55D5936E78c9dEd3;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x52A1CeB68Ee6b7B5D13E0376A1E0E4423A8cE26e;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x048f2228D7Bf6776f99aB50cB1b1eaB4D1d4cA73;
34
49
  }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3FantomTestnet {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3FantomTestnet {
29
29
  address internal constant COLLECTOR =
30
30
  0xF49dA7a22463D140f9f8dc7C91468C8721215496;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0x7aaB2c2CC186131851d6B1876D16eDc849846042;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0x7aaB2c2CC186131851d6B1876D16eDc849846042);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x54Bc1D59873A5ABde98cf76B6EcF4075ff65d685;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xFc1Ab0379db4B6ad8Bf5Bc1382e108a341E2EaBb;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x981D8AcaF6af3a46785e7741d22fBE81B25Ebf1e;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0xc048C1b6ac47393F073dA2b3d5D1cc43b94891Fd;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x0000000000000000000000000000000000000000;
34
49
  }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Fuji {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Fuji {
29
29
  address internal constant COLLECTOR =
30
30
  0xBaaCc99123133851Ba2D6d34952aa08CBDf5A4E4;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0xFCadBDefd30E11258559Ba239C8a5A8A8D28CB00;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xFCadBDefd30E11258559Ba239C8a5A8A8D28CB00);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x58Cd851c28dF05Edc7F018B533C0257DE57673f7;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xA3a8697C4C6A7D9ccF9238cb567b122d53012ac9;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x651b8A8cA545b251a8f49B57D5838Da0a8DFbEF9;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x06Db7973d6D724Eb15404a0d178624f6e07834F9;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x0000000000000000000000000000000000000000;
34
49
  }
@@ -0,0 +1,49 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
3
+ pragma solidity >=0.6.0;
4
+
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
+
7
+ library AaveV3Goerli {
8
+ IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
9
+ IPoolAddressesProvider(0xc4dCB5126a3AfEd129BC3668Ea19285A9f56D15D);
10
+
11
+ IPool internal constant POOL =
12
+ IPool(0x368EedF3f56ad10b9bC57eed4Dac65B26Bb667f6);
13
+
14
+ IPoolConfigurator internal constant POOL_CONFIGURATOR =
15
+ IPoolConfigurator(0x723d17Ee6a668C011F01553D19B850E425075665);
16
+
17
+ IAaveOracle internal constant ORACLE =
18
+ IAaveOracle(0x5bed0810073cc9f0DacF73C648202249E87eF6cB);
19
+
20
+ IAaveProtocolDataProvider internal constant AAVE_PROTOCOL_DATA_PROVIDER =
21
+ IAaveProtocolDataProvider(0x9BE876c6DC42215B00d7efe892E2691C3bc35d10);
22
+
23
+ IACLManager internal constant ACL_MANAGER =
24
+ IACLManager(0x4c952A81A72A6BA2919a658feff1e7F023e4aadc);
25
+
26
+ address internal constant ACL_ADMIN =
27
+ 0x77c45699A715A64A7a7796d5CEe884cf617D5254;
28
+
29
+ address internal constant COLLECTOR =
30
+ 0xFbAF383eB6c757faCb8cb19B68d5131aEbc5c11e;
31
+
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0x5665007321915c8f0E72d041315bA1AD15065337);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x0C501fB73808e1BD73cBDdd0c99237bbc481Bb58;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xF2EBFA003f04f38Fc606a37ab8D1c015c015725c;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x1342dd8Ff58aee340e3C25268A4d08168cC5d990;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x7D17eCD9fc4F64F180227216befb9d8E2c723135;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0xefF40A6d9De203A8806F4F62D86d5C4c5856965E;
49
+ }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Harmony {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Harmony {
29
29
  address internal constant COLLECTOR =
30
30
  0x8A020d92D6B119978582BE4d3EdFdC9F7b28BF31;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0xeaC16519923774Fd7723d3D5E442a1e2E46BA962;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xeaC16519923774Fd7723d3D5E442a1e2E46BA962);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x929EC64c34a17401F460460D4B9390518E5B473e;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xa5ba6E5EC19a1Bf23C857991c857dB62b2Aa187B;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x81387c40EB75acB02757C1Ae55D5936E78c9dEd3;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x52A1CeB68Ee6b7B5D13E0376A1E0E4423A8cE26e;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x048f2228D7Bf6776f99aB50cB1b1eaB4D1d4cA73;
34
49
  }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Mumbai {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Mumbai {
29
29
  address internal constant COLLECTOR =
30
30
  0x3B6E7a4750e478D7f7d6A5d464099A02ef164bCC;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0x810d913542D399F3680F0E806DEDf6EACf0e3383;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0x810d913542D399F3680F0E806DEDf6EACf0e3383);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0xFfaDa869df79320120dfFd6eeE8cF664Dba43146;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0x8017B7FC5473d05e67E617072fB237D24Add550b;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x08a917bbd0E22D496Ca9364B5D21311fe1D31637;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x651b8A8cA545b251a8f49B57D5838Da0a8DFbEF9;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x0000000000000000000000000000000000000000;
34
49
  }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Optimism {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Optimism {
29
29
  address internal constant COLLECTOR =
30
30
  0xB2289E329D2F85F1eD31Adbb30eA345278F21bcf;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0xA77E4A084d7d4f064E326C0F6c0aCefd47A5Cb21;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xA77E4A084d7d4f064E326C0F6c0aCefd47A5Cb21);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x929EC64c34a17401F460460D4B9390518E5B473e;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xa5ba6E5EC19a1Bf23C857991c857dB62b2Aa187B;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x81387c40EB75acB02757C1Ae55D5936E78c9dEd3;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x52A1CeB68Ee6b7B5D13E0376A1E0E4423A8cE26e;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x048f2228D7Bf6776f99aB50cB1b1eaB4D1d4cA73;
34
49
  }
@@ -0,0 +1,49 @@
1
+ // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
3
+ pragma solidity >=0.6.0;
4
+
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
+
7
+ library AaveV3OptimismGoerli {
8
+ IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
9
+ IPoolAddressesProvider(0x74a328ED938160D702378Daeb7aB2504714B4E4b);
10
+
11
+ IPool internal constant POOL =
12
+ IPool(0x4b529A5d8268d74B687aC3dbb00e1b85bF4BF0d4);
13
+
14
+ IPoolConfigurator internal constant POOL_CONFIGURATOR =
15
+ IPoolConfigurator(0x598fCb66f358d0C1396972a1BC30DeC2daB87E46);
16
+
17
+ IAaveOracle internal constant ORACLE =
18
+ IAaveOracle(0x171Af9229972716f28DBB04DBFC712F05B45B021);
19
+
20
+ IAaveProtocolDataProvider internal constant AAVE_PROTOCOL_DATA_PROVIDER =
21
+ IAaveProtocolDataProvider(0x42BdE9c98B80e83F1B051B4bb11812aDa314213a);
22
+
23
+ IACLManager internal constant ACL_MANAGER =
24
+ IACLManager(0x9B14C2DEe92CE731da32bf861Ca4Fb2202662248);
25
+
26
+ address internal constant ACL_ADMIN =
27
+ 0x4365F8e70CF38C6cA67DE41448508F2da8825500;
28
+
29
+ address internal constant COLLECTOR =
30
+ 0x8Ee63E24D91317f9DabFf3c5361d747244c0f16c;
31
+
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xADDcE1e19761577d7FBB278B1b3158891679a066);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x0C501fB73808e1BD73cBDdd0c99237bbc481Bb58;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0x08483a8d324C94942D9B9071e5e4aB6F28da0DF1;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0xC642A760bE9F04b453b899f7F454b2AFe21C1C61;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0xff01517f8811E532900a46e6AdB4484BDB3f2B8a;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x46382F2A0E5BF6cbBa72821DFfe3b1CB9630C6E6;
49
+ }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
+ // AUTOGENERATED - DON'T MANUALLY CHANGE
2
3
  pragma solidity >=0.6.0;
3
4
 
4
- import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager} from "./AaveV3.sol";
5
- import {Token} from "./Common.sol";
5
+ import {IPoolAddressesProvider, IPool, IPoolConfigurator, IAaveOracle, IAaveProtocolDataProvider, IACLManager, ICollector} from "./AaveV3.sol";
6
6
 
7
7
  library AaveV3Polygon {
8
8
  IPoolAddressesProvider internal constant POOL_ADDRESSES_PROVIDER =
@@ -29,6 +29,21 @@ library AaveV3Polygon {
29
29
  address internal constant COLLECTOR =
30
30
  0xe8599F3cc5D38a9aD6F3684cd5CEa72f10Dbc383;
31
31
 
32
- address internal constant COLLECTOR_CONTROLLER =
33
- 0x73D435AFc15e35A9aC63B2a81B5AA54f974eadFe;
32
+ ICollector internal constant COLLECTOR_CONTROLLER =
33
+ ICollector(0xDB89487A449274478e984665b8692AfC67459deF);
34
+
35
+ address internal constant DEFAULT_INCENTIVES_CONTROLLER =
36
+ 0x929EC64c34a17401F460460D4B9390518E5B473e;
37
+
38
+ address internal constant DEFAULT_A_TOKEN_IMPL_REV_1 =
39
+ 0xa5ba6E5EC19a1Bf23C857991c857dB62b2Aa187B;
40
+
41
+ address internal constant DEFAULT_VARIABLE_DEBT_TOKEN_IMPL_REV_1 =
42
+ 0x81387c40EB75acB02757C1Ae55D5936E78c9dEd3;
43
+
44
+ address internal constant DEFAULT_STABLE_DEBT_TOKEN_IMPL_REV_1 =
45
+ 0x52A1CeB68Ee6b7B5D13E0376A1E0E4423A8cE26e;
46
+
47
+ address internal constant EMISSION_MANAGER =
48
+ 0x048f2228D7Bf6776f99aB50cB1b1eaB4D1d4cA73;
34
49
  }
@@ -1,8 +1,8 @@
1
1
  // SPDX-License-Identifier: MIT
2
2
  pragma solidity >=0.6.0;
3
3
 
4
- import "forge-std/Test.sol";
5
- import { AaveV2Avalanche, AaveV2Polygon, AaveV2EthereumArc } from "../AaveAddressBook.sol";
4
+ import 'forge-std/Test.sol';
5
+ import {AaveV2Avalanche, AaveV2Polygon, AaveV2EthereumArc} from '../AaveAddressBook.sol';
6
6
 
7
7
  /**
8
8
  * @dev This test contains regression tests for markets that are slightly different then the default.
@@ -16,7 +16,6 @@ contract AaveAddressMisfitsTest is Test {
16
16
  */
17
17
  function testCollectorControllerIs0Address() public {
18
18
  assertEq(address(AaveV2Avalanche.COLLECTOR_CONTROLLER), address(0));
19
- assertEq(address(AaveV2Polygon.COLLECTOR_CONTROLLER), address(0));
20
19
  }
21
20
 
22
21
  /**