From cdeffc8032cc55c11a4f9b9cb0125c9638f5f263 Mon Sep 17 00:00:00 2001 From: halaprix Date: Tue, 8 Oct 2024 22:41:37 +0200 Subject: [PATCH 01/15] chore: new aave data provider ## Ticket URL Please provide a link to the ticket: ## Description of Changes Please list the changes introduced by this PR: - [ ] - [ ] - [ ] ## How to Test Please provide instructions on how to test the changes in this PR: ## PR Definition of Done Please ensure the following requirements have been met before marking the PR as ready for review: - [ ] All checks are passing - [ ] PR is linked to a corresponding ticket - [ ] PR title is clear and concise - [ ] Code has been self-reviewed and any fixes or improvements noted (See Code review standards in Notion) - [ ] Documentation has been updated if necessary --- .../aave/v3/aaveProtocolDataProvider.json | 220 ++- packages/addresses/package.json | 2 +- .../deploy-configurations/addresses/index.ts | 3 - .../configs/arbitrum.conf.ts | 19 +- .../configs/base.conf.ts | 19 +- .../configs/goerli.conf.ts | 1107 -------------- .../configs/hardhat.conf.ts | 1324 ----------------- .../deploy-configurations/configs/index.ts | 1 - .../configs/local.conf.ts | 1274 ---------------- .../configs/mainnet.conf.ts | 17 +- .../configs/optimism.conf.ts | 14 +- .../configs/sepolia.conf.ts | 78 +- .../configs/tenderly.conf.ts | 46 + .../configs/test.conf.ts | 22 + .../configs/test/mainnet.conf.ts | 22 +- .../configs/utils/utils.ts | 8 +- .../constants/load-contract-names.ts | 4 + .../types/deployment-config/actions.ts | 1 + packages/dma-library/package.json | 2 +- packages/dma-library/src/actions/common.ts | 2 +- .../morphoblue/multiply/adjust-risk-down.ts | 5 +- .../protocols/aave/get-aave-protocol-data.ts | 10 +- .../src/strategies/ajna/multiply/common.ts | 11 +- .../common/close-to-debt-swap-data.ts | 14 +- .../src/strategies/morphoblue/index.ts | 5 +- .../strategies/morphoblue/multiply/close.ts | 2 +- packages/dma-library/src/views/aave/types.ts | 8 +- packages/dma-library/src/views/index.ts | 4 +- packages/summer-cli/package.json | 4 +- 29 files changed, 462 insertions(+), 3786 deletions(-) delete mode 100644 packages/deploy-configurations/configs/goerli.conf.ts delete mode 100644 packages/deploy-configurations/configs/hardhat.conf.ts delete mode 100644 packages/deploy-configurations/configs/local.conf.ts diff --git a/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json b/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json index 65c906b4..b0558e51 100644 --- a/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json +++ b/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json @@ -1 +1,219 @@ -[{"inputs":[{"internalType":"contract IPoolAddressesProvider","name":"addressesProvider","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ADDRESSES_PROVIDER","outputs":[{"internalType":"contract IPoolAddressesProvider","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getATokenTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllATokens","outputs":[{"components":[{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address","name":"tokenAddress","type":"address"}],"internalType":"struct IPoolDataProvider.TokenData[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllReservesTokens","outputs":[{"components":[{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address","name":"tokenAddress","type":"address"}],"internalType":"struct IPoolDataProvider.TokenData[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getDebtCeiling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDebtCeilingDecimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getFlashLoanEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getInterestRateStrategyAddress","outputs":[{"internalType":"address","name":"irStrategyAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getLiquidationProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getPaused","outputs":[{"internalType":"bool","name":"isPaused","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveCaps","outputs":[{"internalType":"uint256","name":"borrowCap","type":"uint256"},{"internalType":"uint256","name":"supplyCap","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveConfigurationData","outputs":[{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"ltv","type":"uint256"},{"internalType":"uint256","name":"liquidationThreshold","type":"uint256"},{"internalType":"uint256","name":"liquidationBonus","type":"uint256"},{"internalType":"uint256","name":"reserveFactor","type":"uint256"},{"internalType":"bool","name":"usageAsCollateralEnabled","type":"bool"},{"internalType":"bool","name":"borrowingEnabled","type":"bool"},{"internalType":"bool","name":"stableBorrowRateEnabled","type":"bool"},{"internalType":"bool","name":"isActive","type":"bool"},{"internalType":"bool","name":"isFrozen","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveData","outputs":[{"internalType":"uint256","name":"unbacked","type":"uint256"},{"internalType":"uint256","name":"accruedToTreasuryScaled","type":"uint256"},{"internalType":"uint256","name":"totalAToken","type":"uint256"},{"internalType":"uint256","name":"totalStableDebt","type":"uint256"},{"internalType":"uint256","name":"totalVariableDebt","type":"uint256"},{"internalType":"uint256","name":"liquidityRate","type":"uint256"},{"internalType":"uint256","name":"variableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"stableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"averageStableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"liquidityIndex","type":"uint256"},{"internalType":"uint256","name":"variableBorrowIndex","type":"uint256"},{"internalType":"uint40","name":"lastUpdateTimestamp","type":"uint40"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveEModeCategory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveTokensAddresses","outputs":[{"internalType":"address","name":"aTokenAddress","type":"address"},{"internalType":"address","name":"stableDebtTokenAddress","type":"address"},{"internalType":"address","name":"variableDebtTokenAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getSiloedBorrowing","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getTotalDebt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getUnbackedMintCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"getUserReserveData","outputs":[{"internalType":"uint256","name":"currentATokenBalance","type":"uint256"},{"internalType":"uint256","name":"currentStableDebt","type":"uint256"},{"internalType":"uint256","name":"currentVariableDebt","type":"uint256"},{"internalType":"uint256","name":"principalStableDebt","type":"uint256"},{"internalType":"uint256","name":"scaledVariableDebt","type":"uint256"},{"internalType":"uint256","name":"stableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"liquidityRate","type":"uint256"},{"internalType":"uint40","name":"stableRateLastUpdated","type":"uint40"},{"internalType":"bool","name":"usageAsCollateralEnabled","type":"bool"}],"stateMutability":"view","type":"function"}] \ No newline at end of file +[ + { + "inputs": [ + { + "internalType": "contract IPoolAddressesProvider", + "name": "addressesProvider", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ADDRESSES_PROVIDER", + "outputs": [ + { "internalType": "contract IPoolAddressesProvider", "name": "", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getATokenTotalSupply", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAllATokens", + "outputs": [ + { + "components": [ + { "internalType": "string", "name": "symbol", "type": "string" }, + { "internalType": "address", "name": "tokenAddress", "type": "address" } + ], + "internalType": "struct IPoolDataProvider.TokenData[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAllReservesTokens", + "outputs": [ + { + "components": [ + { "internalType": "string", "name": "symbol", "type": "string" }, + { "internalType": "address", "name": "tokenAddress", "type": "address" } + ], + "internalType": "struct IPoolDataProvider.TokenData[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getDebtCeiling", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDebtCeilingDecimals", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getFlashLoanEnabled", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getInterestRateStrategyAddress", + "outputs": [{ "internalType": "address", "name": "irStrategyAddress", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getIsVirtualAccActive", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getLiquidationProtocolFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getPaused", + "outputs": [{ "internalType": "bool", "name": "isPaused", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveCaps", + "outputs": [ + { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, + { "internalType": "uint256", "name": "supplyCap", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveConfigurationData", + "outputs": [ + { "internalType": "uint256", "name": "decimals", "type": "uint256" }, + { "internalType": "uint256", "name": "ltv", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidationThreshold", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidationBonus", "type": "uint256" }, + { "internalType": "uint256", "name": "reserveFactor", "type": "uint256" }, + { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, + { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, + { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, + { "internalType": "bool", "name": "isActive", "type": "bool" }, + { "internalType": "bool", "name": "isFrozen", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveData", + "outputs": [ + { "internalType": "uint256", "name": "unbacked", "type": "uint256" }, + { "internalType": "uint256", "name": "accruedToTreasuryScaled", "type": "uint256" }, + { "internalType": "uint256", "name": "totalAToken", "type": "uint256" }, + { "internalType": "uint256", "name": "totalStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "totalVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { "internalType": "uint256", "name": "variableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "averageStableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityIndex", "type": "uint256" }, + { "internalType": "uint256", "name": "variableBorrowIndex", "type": "uint256" }, + { "internalType": "uint40", "name": "lastUpdateTimestamp", "type": "uint40" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveTokensAddresses", + "outputs": [ + { "internalType": "address", "name": "aTokenAddress", "type": "address" }, + { "internalType": "address", "name": "stableDebtTokenAddress", "type": "address" }, + { "internalType": "address", "name": "variableDebtTokenAddress", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getSiloedBorrowing", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getTotalDebt", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getUnbackedMintCap", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "address", "name": "user", "type": "address" } + ], + "name": "getUserReserveData", + "outputs": [ + { "internalType": "uint256", "name": "currentATokenBalance", "type": "uint256" }, + { "internalType": "uint256", "name": "currentStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "currentVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "principalStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "scaledVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { "internalType": "uint40", "name": "stableRateLastUpdated", "type": "uint40" }, + { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getVirtualUnderlyingBalance", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + } + ] \ No newline at end of file diff --git a/packages/addresses/package.json b/packages/addresses/package.json index 810c807d..4c3fafe9 100644 --- a/packages/addresses/package.json +++ b/packages/addresses/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/addresses", - "version": "0.1.20-automation.0", + "version": "0.1.21-automation", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", diff --git a/packages/deploy-configurations/addresses/index.ts b/packages/deploy-configurations/addresses/index.ts index 75147734..ac6f256c 100644 --- a/packages/deploy-configurations/addresses/index.ts +++ b/packages/deploy-configurations/addresses/index.ts @@ -1,7 +1,6 @@ import { arbitrumConfig, baseConfig, - goerliConfig, mainnetConfig, optimismConfig, sepoliaConfig, @@ -72,7 +71,6 @@ export type Addresses = { [Network.OPTIMISM]: DefaultDeployment [Network.ARBITRUM]: DefaultDeployment [Network.BASE]: DefaultDeployment - [Network.GOERLI]: DefaultDeployment [Network.SEPOLIA]: DefaultDeployment [Network.TEST]: DefaultDeployment } @@ -151,7 +149,6 @@ function extractAddressesFromConfig( export const ADDRESSES: Addresses = { [Network.MAINNET]: createAddressesStructure(mainnetConfig), [Network.OPTIMISM]: createAddressesStructure(optimismConfig), - [Network.GOERLI]: createAddressesStructure(goerliConfig), [Network.ARBITRUM]: createAddressesStructure(arbitrumConfig), [Network.BASE]: createAddressesStructure(baseConfig), [Network.TEST]: createAddressesStructure(testConfig), diff --git a/packages/deploy-configurations/configs/arbitrum.conf.ts b/packages/deploy-configurations/configs/arbitrum.conf.ts index 3a2a6390..f4a5f69d 100644 --- a/packages/deploy-configurations/configs/arbitrum.conf.ts +++ b/packages/deploy-configurations/configs/arbitrum.conf.ts @@ -109,6 +109,14 @@ export const config: SystemConfig = { }, }, actions: { + SendTokenAuto: { + name: 'SendTokenAuto', + deploy: false, + address: '0x0000000000000000000000000000000000000000', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, + history: [], + constructorArgs: [], + }, PositionCreated: { name: 'PositionCreated', deploy: false, @@ -320,6 +328,11 @@ export const config: SystemConfig = { }, }, common: { + OneInchAggregator5: { + name: 'OneInchAggregator5', + address: '0x1111111254EEB25477B68fb85Ed929f73A960582', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5, + }, GnosisSafe: { name: 'GnosisSafe', address: '' }, UniswapRouterV3: { name: 'UniswapRouterV3', @@ -624,7 +637,7 @@ export const config: SystemConfig = { }, PoolDataProvider: { name: 'PoolDataProvider', - address: '0x69FA688f1Dc47d4B5d8029D5a35FB7a548310654', + address: '0x7F23D86Ee20D869112572136221e173428DD740B', }, L2Encoder: { name: 'L2Encoder', @@ -897,5 +910,9 @@ export const config: SystemConfig = { address: '0x0000000000000000000000000000000000000000', serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, + AdaptiveCurveIrm: { + name: 'AdaptiveCurveIrm', + address: '0x0000000000000000000000000000000000000000' + }, }, } diff --git a/packages/deploy-configurations/configs/base.conf.ts b/packages/deploy-configurations/configs/base.conf.ts index 99ded939..461aa612 100644 --- a/packages/deploy-configurations/configs/base.conf.ts +++ b/packages/deploy-configurations/configs/base.conf.ts @@ -98,6 +98,14 @@ export const config: SystemConfig = { }, }, actions: { + SendTokenAuto: { + name: 'SendTokenAuto', + deploy: false, + address: '0x0000000000000000000000000000000000000000', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, + history: [], + constructorArgs: [], + }, PositionCreated: { name: 'PositionCreated', deploy: false, @@ -315,6 +323,11 @@ export const config: SystemConfig = { }, }, common: { + OneInchAggregator5: { + name: 'OneInchAggregator5', + address: '0x1111111254EEB25477B68fb85Ed929f73A960582', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5 + }, GnosisSafe: { name: 'GnosisSafe', address: '0x0000000000000000000000000000000000000000', @@ -703,7 +716,7 @@ export const config: SystemConfig = { }, PoolDataProvider: { name: 'PoolDataProvider', - address: '0x2d8A3C5677189723C4cB8873CfC9C8976FDF38Ac', + address: '0xd82a47fdebB5bf5329b09441C3DaB4b5df2153Ad', }, L2Encoder: { name: 'L2Encoder', @@ -1309,5 +1322,9 @@ export const config: SystemConfig = { address: '0x0000000000000000000000000000000000000000', serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, + AdaptiveCurveIrm: { + name: 'AdaptiveCurveIrm', + address: '0x0000000000000000000000000000000000000000' + }, }, } diff --git a/packages/deploy-configurations/configs/goerli.conf.ts b/packages/deploy-configurations/configs/goerli.conf.ts deleted file mode 100644 index 9e3ddad3..00000000 --- a/packages/deploy-configurations/configs/goerli.conf.ts +++ /dev/null @@ -1,1107 +0,0 @@ -import { Network } from '@deploy-configurations/types/network' - -import { ADDRESS_ZERO, loadContractNames } from '../constants' -import { SystemConfig } from '../types/deployment-config' - -const SERVICE_REGISTRY_NAMES = loadContractNames(Network.GOERLI) - -export const config: SystemConfig = { - mpa: { - core: { - ServiceRegistry: { - name: 'ServiceRegistry', - deploy: false, - address: '0x73024Ec24c03904A4b5FBfa249B410891C12407b', - history: [], - constructorArgs: [0], - }, - OperationExecutor: { - name: 'OperationExecutor', - deploy: true, - address: '0xA946f00b58a934824215C1D91346AebbD8702FD4', - serviceRegistryName: 'OperationExecutor_2', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - OperationStorage: { - name: 'OperationStorage', - deploy: false, - address: '', - serviceRegistryName: 'OperationStorage_2', - history: [], - constructorArgs: ['address:ServiceRegistry', 'address:OperationExecutor'], - }, - OperationsRegistry: { - name: 'OperationsRegistry', - deploy: false, - address: '', - serviceRegistryName: 'OperationsRegistry_2', - history: [], - constructorArgs: [], - }, - DSProxyFactory: { - name: 'DSProxyFactory', - deploy: false, - address: '0x84eFB9c18059394172D0d69A3E58B03320001871', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_FACTORY, - history: [], - constructorArgs: [], - }, - DSProxyRegistry: { - name: 'DSProxyRegistry', - deploy: false, - address: '0x46759093D8158db8BB555aC7C6F98070c56169ce', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_REGISTRY, - history: [], - constructorArgs: ['address:DSProxyFactory'], - }, - DSGuardFactory: { - name: 'DSGuardFactory', - deploy: false, - address: ADDRESS_ZERO, - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_GUARD_FACTORY, - history: [], - constructorArgs: [], - }, - AccountGuard: { - name: 'AccountGuard', - deploy: false, - address: '0x9319710C25cdaDDD1766F0bDE40F1A4034C17c7e', - history: [], - constructorArgs: [], - }, - AccountFactory: { - name: 'AccountFactory', - deploy: false, - address: '0x53958191c3077eDe3Ca90Eb840283df063FC1be3', - history: [], - constructorArgs: ['address:AccountGuard'], - }, - Swap: { - name: 'Swap', - address: '', - deploy: false, - history: [], - }, - }, - actions: { - PositionCreated: { - name: 'PositionCreated', - deploy: true, - address: '', - serviceRegistryName: 'PositionCreated', - history: [], - constructorArgs: [], - }, - SwapAction: { - name: 'SwapAction', - deploy: true, - address: '', - serviceRegistryName: 'SwapAction_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - TakeFlashloan: { - name: 'TakeFlashloan', - deploy: true, - address: '', - serviceRegistryName: 'TakeFlashloan_3', - history: [], - constructorArgs: ['address:ServiceRegistry', '0x6B175474E89094C44Da98b954EedeAC495271d0F'], - }, - SetApproval: { - name: 'SetApproval', - deploy: true, - address: '', - serviceRegistryName: 'SetApproval_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - PullToken: { - name: 'PullToken', - deploy: true, - address: '', - serviceRegistryName: 'PullToken_3', - history: [], - constructorArgs: [], - }, - SendToken: { - name: 'SendToken', - deploy: true, - address: '', - serviceRegistryName: 'SendToken_4', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - WrapEth: { - name: 'WrapEth', - deploy: true, - address: '', - serviceRegistryName: 'WrapEth_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - UnwrapEth: { - name: 'UnwrapEth', - deploy: true, - address: '', - serviceRegistryName: 'UnwrapEth_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - ReturnFunds: { - name: 'ReturnFunds', - deploy: true, - address: '', - serviceRegistryName: 'ReturnFunds_3', - history: [], - constructorArgs: [], - }, - AaveBorrow: { - name: 'AaveBorrow', - deploy: true, - address: '', - serviceRegistryName: 'AaveBorrow_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveWithdraw: { - name: 'AaveWithdraw', - deploy: true, - address: '', - serviceRegistryName: 'AaveWithdraw_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveDeposit: { - name: 'AaveDeposit', - deploy: true, - address: '', - serviceRegistryName: 'AaveDeposit_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AavePayback: { - name: 'AavePayback', - deploy: true, - address: '', - serviceRegistryName: 'AavePayback_3', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Borrow: { - name: 'AaveV3Borrow', - deploy: false, - address: '0x18ca8bE41D32727383bC0F98705f7662ed0B7E28', - serviceRegistryName: 'AaveV3Borrow', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Withdraw: { - name: 'AaveV3Withdraw', - deploy: false, - address: '', - serviceRegistryName: 'AaveV3Withdraw', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Deposit: { - name: 'AaveV3Deposit', - deploy: false, - address: '0x852c56859840487DcED2aF501fC06f7462C4f2a8', - serviceRegistryName: 'AaveV3Deposit', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Payback: { - name: 'AaveV3Payback', - deploy: false, - address: '0xdB736d13CE851Ee81ac2109DF37EBAb8Ce525C42', - serviceRegistryName: 'AaveV3Payback', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3SetEMode: { - name: 'AaveV3SetEMode', - deploy: false, - address: '0xd4DB3799DEe98Fe752d952Ba6F84Bb99Af829920', - serviceRegistryName: 'AaveV3SetEMode', - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AjnaDepositBorrow: { - name: 'AjnaDepositBorrow', - deploy: true, - address: '', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.DEPOSIT_BORROW, - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AjnaRepayWithdraw: { - name: 'AjnaRepayWithdraw', - deploy: true, - address: '', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.REPAY_WITHDRAW, - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - }, - }, - common: { - GnosisSafe: { - name: 'GnosisSafe', - address: '0x41A92d82D70005B55070dB7138b21d7c28F27CC0', - }, - UniswapRouterV3: { - name: 'UniswapRouterV3', - address: '0xe592427a0aece92de3edee1f18e0157c05861564', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.UNISWAP_ROUTER, - }, - BalancerVault: { - name: 'BalancerVault', - address: '0xBA12222222228d8Ba445958a75a0704d566BF2C8', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.BALANCER_VAULT, - }, - OneInchAggregator: { - name: 'OneInchAggregator', - address: '0x1111111254fb6c44bac0bed2854e76f90643097d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR, - }, - AuthorizedCaller: { - name: 'AuthorizedCaller', - address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc', - }, - FeeRecipient: { - name: 'FeeRecipient', - address: '0xC7b548AD9Cf38721810246C079b2d8083aba8909', - }, - MerkleRedeemer: { - name: 'MerkleRedeemer', - address: '0x23440aC6c8a10EA89132da74B705CBc6D99a805b', - }, - DssCharter: { - name: 'DssCharter', - address: '0x7ea0d7ea31C544a472b55D19112e016Ba6708288', - }, - DssProxyActions: { - name: 'DssProxyActions', - address: '0x4023f89983Ece35e227c49806aFc13Bc0248d178', - }, - DssProxyActionsCharter: { - name: 'DssProxyActionsCharter', - address: '0xfFb896D7BEf704DF73abc9A2EBf295CE236c5919', - }, - DssMultiplyProxyActions: { - name: 'DssMultiplyProxyActions', - address: '0xc9628adc0a9f95D1d912C5C19aaBFF85E420a853', - }, - DssCropper: { - name: 'DssCropper', - address: ADDRESS_ZERO, - }, - DssProxyActionsCropjoin: { - name: 'DssProxyActionsCropjoin', - address: ADDRESS_ZERO, - }, - DssProxyActionsDsr: { - name: 'DssProxyActionsDsr', - address: '0x15679CdbDb284fe07Eff3809150126697c6e3Dd6', - }, - Otc: { - name: 'Otc', - address: ADDRESS_ZERO, - }, - OtcSupportMethods: { - name: 'OtcSupportMethods', - address: ADDRESS_ZERO, - }, - ServiceRegistry: { - name: 'ServiceRegistry', - address: ADDRESS_ZERO, - }, - GuniProxyActions: { - name: 'GuniProxyActions', - address: ADDRESS_ZERO, - }, - GuniResolver: { - name: 'GuniResolver', - address: ADDRESS_ZERO, - }, - GuniRouter: { - name: 'GuniRouter', - address: ADDRESS_ZERO, - }, - CdpRegistry: { - name: 'CdpRegistry', - address: '0x0636E6878703E30aB11Ba13A68C6124d9d252e6B', - }, - DefaultExchange: { - name: 'DefaultExchange', - address: '0x2b0b4c5c58fe3CF8863c4948887099A09b84A69c', - }, - LowerFeesExchange: { - name: 'LowerFeesExchange', - address: '0x2b0b4c5c58fe3CF8863c4948887099A09b84A69c', - }, - NoFeesExchange: { - name: 'NoFeesExchange', - address: '0x2b0b4c5c58fe3CF8863c4948887099A09b84A69c', - }, - LidoCrvLiquidityFarmingReward: { - name: 'LidoCrvLiquidityFarmingReward', - address: ADDRESS_ZERO, - }, - ChainlinkPriceOracle_USDCUSD: { - name: 'ChainlinkPriceOracle_USDCUSD', - address: '0xAb5c49580294Aff77670F839ea425f5b78ab3Ae7', - }, - ChainlinkPriceOracle_ETHUSD: { - name: 'ChainlinkPriceOracle_ETHUSD', - address: '0xD4a33860578De61DBAbDc8BFdb98FD742fA7028e', - }, - SdaiOracle: { - name: 'SdaiOracle', - address: ADDRESS_ZERO, - }, - ADAI: { name: 'ADAI', address: ADDRESS_ZERO }, - AAVE: { name: 'AAVE', address: '0x251661BB7C6869165eF35810E5e1D25Ed57be2Fe' }, - BAL: { name: 'BAL', address: '0x8c6e73CA229AB3933426aDb5cc829c1E4928551d' }, - BAT: { name: 'BAT', address: '0x75645f86e90a1169e697707C813419977ea26779' }, - CBETH: { name: 'CBETH', address: ADDRESS_ZERO }, - COMP: { name: 'COMP', address: '0x8032dce0b793C21B8F7B648C01224c3b557271ED' }, - CRVV1ETHSTETH: { name: 'CRVV1ETHSTETH', address: ADDRESS_ZERO }, - DAI: { - name: 'DAI', - address: '0x11fE4B6AE13d2a6055C8D9cF65c55bac32B5d844', - serviceRegistryName: 'DAI', - }, - ETH: { name: 'ETH', address: '0xB4FBF271143F4FBf7B91A5ded31805e42b2208d6' }, - FRAX: { - name: 'FRAX', - address: ADDRESS_ZERO, - }, - GHO: { name: 'GHO', address: ADDRESS_ZERO }, - GNO: { name: 'GNO', address: '0x86Bc432064d7F933184909975a384C7E4c9d0977' }, - GUNIV3DAIUSDC1: { - name: 'GUNIV3DAIUSDC1', - address: ADDRESS_ZERO, - }, - GUNIV3DAIUSDC2: { - name: 'GUNIV3DAIUSDC2', - address: ADDRESS_ZERO, - }, - GUSD: { name: 'GUSD', address: '0x67aeF79654D8F6CF44FdC08949c308a4F6b3c45B' }, - KNC: { name: 'KNC', address: '0x9A58801cf901486Df9323bcE83A7684915DBAE54' }, - LDO: { name: 'LDO', address: ADDRESS_ZERO }, - LINK: { name: 'LINK', address: '0x4724A967A4F7E42474Be58AbdF64bF38603422FF' }, - LRC: { name: 'LRC', address: '0xe32aC5b19051728421A8F4A8a5757D0e127a14F6' }, - LUSD: { - name: 'LUSD', - address: ADDRESS_ZERO, - }, - MANA: { name: 'MANA', address: '0x347fceA8b4fD1a46e2c0DB8F79e22d293c2F8513' }, - MATIC: { name: 'MATIC', address: '0x5B3b6CF665Cc7B4552F4347623a2A9E00600CBB5' }, - PAX: { name: 'PAX', address: '0x4547863912Fe2d17D3827704138957a8317E8dCD' }, - PAXUSD: { name: 'PAXUSD', address: '0x4547863912Fe2d17D3827704138957a8317E8dCD' }, - RENBTC: { name: 'RENBTC', address: '0x30d0A215aef6DadA4771a2b30a59B842f969EfD4' }, - RETH: { name: 'RETH', address: '0x62bc478ffc429161115a6e4090f819ce5c50a5d9' }, - RWA001: { name: 'RWA001', address: '0xeb7C7DE82c3b05BD4059f11aE8f43dD7f1595bce' }, - RWA002: { name: 'RWA002', address: '0x09fE0aE289553010D6EcBdFF98cc9C08030dE3b8' }, - RWA003: { name: 'RWA003', address: '0x5cf15Cc2710aFc0EaBBD7e045f84F9556B204331' }, - RWA004: { name: 'RWA004', address: '0xA7fbA77c4d18e12d1F385E2dcFfb377c9dBD91d2' }, - RWA005: { name: 'RWA005', address: '0x650d168fC94B79Bb16898CAae773B0Ce1097Cc3F' }, - RWA006: { name: 'RWA006', address: '0xf754FD6611852eE94AC0614c51B8692cAE9fEe9F' }, - SDAI: { name: 'SDAI', address: '0xd8134205b0328f5676aaefb3b2a0dc15f4029d8c' }, - STETH: { name: 'STETH', address: '0x1643E812aE58766192Cf7D2Cf9567dF2C37e9B7F' }, - TBTC: { name: 'TBTC', address: '0x679874fbe6d4e7cc54a59e315ff1eb266686a937' }, - TUSD: { name: 'TUSD', address: '0xe0B3D300E2e09c1Fd01252287dDbC70A7730ffB0' }, - UNI: { name: 'UNI', address: '0x82D98aA89E391c6759012df39ccDA0d9d6b24143' }, - UNIV2AAVEETH: { name: 'UNIV2AAVEETH', address: '0xaF2CC6F46d1d0AB30dd45F59B562394c3E21e6f3' }, - UNIV2DAIETH: { name: 'UNIV2DAIETH', address: '0x5dD9dec52a16d4d1Df10a66ac71d4731c9Dad984' }, - UNIV2DAIUSDC: { name: 'UNIV2DAIUSDC', address: '0x260719B2ef507A86116FC24341ff0994F2097D42' }, - UNIV2DAIUSDT: { name: 'UNIV2DAIUSDT', address: '0xBF2C9aBbEC9755A0b6144051E19c6AD4e6fd6D71' }, - UNIV2ETHUSDT: { name: 'UNIV2ETHUSDT', address: '0xfcB32e1C4A4F1C820c9304B5CFfEDfB91aE2321C' }, - UNIV2LINKETH: { name: 'UNIV2LINKETH', address: '0x3361fB8f923D1Aa1A45B2d2eD4B8bdF313a3dA0c' }, - UNIV2UNIETH: { name: 'UNIV2UNIETH', address: '0xB80A38E50B2990Ac83e46Fe16631fFBb94F2780b' }, - UNIV2USDCETH: { name: 'UNIV2USDCETH', address: '0xD90313b3E43D9a922c71d26a0fBCa75A01Bb3Aeb' }, - UNIV2WBTCDAI: { name: 'UNIV2WBTCDAI', address: '0x3f78Bd3980c49611E5FA885f25Ca3a5fCbf0d7A0' }, - UNIV2WBTCETH: { name: 'UNIV2WBTCETH', address: '0x7883a92ac3e914F3400e8AE6a2FF05E6BA4Bd403' }, - USDC: { - name: 'USDC', - address: '0x6Fb5ef893d44F4f88026430d82d4ef269543cB23', - serviceRegistryName: 'USDC', - }, - USDBC: { - name: 'USDBC', - address: '0x0000000000000000000000000000000000000000', - }, - USDT: { name: 'USDT', address: '0x5858f25cc225525A7494f76d90A6549749b3030B' }, - WBTC: { - name: 'WBTC', - address: '0x7ccF0411c7932B99FC3704d68575250F032e3bB7', - serviceRegistryName: 'WBTC', - }, - WETH: { - name: 'WETH', - address: '0xCCB14936C2E000ED8393A571D15A2672537838Ad', - serviceRegistryName: 'WETH', - }, - WLD: { name: 'WLD', address: ADDRESS_ZERO }, - WSTETH: { - name: 'WSTETH', - address: '0x6320cD32aA674d2898A68ec82e869385Fc5f7E2f', - serviceRegistryName: 'WSTETH', - }, - YIELDBTC: { - name: 'YIELDBTC', - address: ADDRESS_ZERO, - }, - YIELDETH: { - name: 'YIELDETH', - address: ADDRESS_ZERO, - }, - YFI: { name: 'YFI', address: '0xd9510EF268F8273C9b7514F0bfFe18Fe1EFC0d43' }, - ZRX: { name: 'ZRX', address: '0x96E0C18524789ED3e62CD9F56aAEc7cEAC78725a' }, - }, - aave: { - v2: { - Oracle: { - name: 'Oracle', - address: '0xc1c6f3b788FE7F4bB896a2Fad65F5a8c0Ad509C9', - }, - LendingPool: { - name: 'LendingPool', - address: '0x4bd5643ac6f66a5237E18bfA7d47cF22f1c9F210', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.LENDING_POOL, - }, - PoolDataProvider: { - name: 'PoolDataProvider', - address: '0x927F584d4321C1dCcBf5e2902368124b02419a1E', - }, - WETHGateway: { - name: 'WETHGateway', - address: ADDRESS_ZERO, - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WETH_GATEWAY, - }, - }, - v3: { - Oracle: { - name: 'Oracle', - address: '0x9F616c65b5298E24e155E4486e114516BC635b63', - }, - LendingPool: { - name: 'LendingPool', - address: '0x6060Cf73C79098D32c9b936F4B26283427f1BFAd', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.AAVE_POOL, - }, - PoolDataProvider: { - name: 'PoolDataProvider', - address: '0xa41E284482F9923E265832bE59627d91432da76C', - }, - L2Encoder: { - name: 'L2Encoder', - address: ADDRESS_ZERO, - }, - }, - }, - maker: { - common: { - FlashMintModule: { - name: 'FlashMintModule', - address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA', - serviceRegistryName: SERVICE_REGISTRY_NAMES.maker.FLASH_MINT_MODULE, - }, - Chainlog: { - name: 'Chainlog', - address: ADDRESS_ZERO, - }, - CdpManager: { - name: 'CdpManager', - address: '0xdcBf58c9640A7bd0e062f8092d70fb981Bb52032', - }, - GetCdps: { - name: 'GetCdps', - address: '0x7843fd599F5382328DeBB45255deB3E2e0DEC876', - }, - Jug: { - name: 'Jug', - address: '0xC90C99FE9B5d5207A03b9F28A6E8A19C0e558916', - }, - Pot: { - name: 'Pot', - address: '0x50672F0a14B40051B65958818a7AcA3D54Bd81Af', - }, - End: { - name: 'End', - address: '0xDb1d3edb80d3faA1B7257Ab4018A609E327FA50D', - }, - Spot: { - name: 'Spot', - address: '0xACe2A9106ec175bd56ec05C9E38FE1FDa8a1d758', - }, - Dog: { - name: 'Dog', - address: '0x5cf85A37Dbd28A239698B4F9aA9a03D55C04F292', - }, - Vat: { - name: 'Vat', - address: '0xB966002DDAa2Baf48369f5015329750019736031', - }, - McdGov: { - name: 'McdGov', - address: '0xc5E4eaB513A7CD12b2335e8a0D57273e13D499f7', - }, - }, - joins: { - MCD_JOIN_DAI: { - name: 'MCD_JOIN_DAI', - address: '0x6a60b7070befb2bfc964F646efDF70388320f4E0', - }, - MCD_JOIN_ETH_A: { - name: 'MCD_JOIN_ETH_A', - address: '0x2372031bB0fC735722AA4009AeBf66E8BEAF4BA1', - }, - MCD_JOIN_ETH_B: { - name: 'MCD_JOIN_ETH_B', - address: '0x1710BB6dF1967679bb1f247135794692F7963B46', - }, - MCD_JOIN_ETH_C: { - name: 'MCD_JOIN_ETH_C', - address: '0x16e6490744d4B3728966f8e72416c005EB3dEa79', - }, - MCD_JOIN_BAT_A: { - name: 'MCD_JOIN_BAT_A', - address: '0xfea8C23D32e4bA46d90AeD2445fBD099010eAdF5', - }, - MCD_JOIN_USDC_A: { - name: 'MCD_JOIN_USDC_A', - address: '0x33E88C8b3530e2f19050b24f44AcB78C7114AF46', - }, - MCD_JOIN_USDC_B: { - name: 'MCD_JOIN_USDC_B', - address: '0x0Dc70CC4505c1952e719C9C740608A75Ca9e299e', - }, - MCD_JOIN_PSM_USDC_A: { - name: 'MCD_JOIN_PSM_USDC_A', - address: '0xF2f86B76d1027f3777c522406faD710419C80bbB', - }, - MCD_JOIN_TUSD_A: { - name: 'MCD_JOIN_TUSD_A', - address: '0x5BC597f00d74fAcEE53Be784f0B7Ace63b4e2EBe', - }, - MCD_JOIN_WBTC_A: { - name: 'MCD_JOIN_WBTC_A', - address: '0x3cbE712a12e651eEAF430472c0C1BF1a2a18939D', - }, - MCD_JOIN_WBTC_B: { - name: 'MCD_JOIN_WBTC_B', - address: '0x13B8EB3d2d40A00d65fD30abF247eb470dDF6C25', - }, - MCD_JOIN_WBTC_C: { - name: 'MCD_JOIN_WBTC_C', - address: '0xe15E69F10E1A362F69d9672BFeA20B75CFf8574A', - }, - MCD_JOIN_ZRX_A: { - name: 'MCD_JOIN_ZRX_A', - address: '0xC279765B3f930742167dB91271f13353336B6C72', - }, - MCD_JOIN_KNC_A: { - name: 'MCD_JOIN_KNC_A', - address: '0xA48f0d5DA642928BC1F5dB9De5F5d3D466500075', - }, - MCD_JOIN_MANA_A: { - name: 'MCD_JOIN_MANA_A', - address: '0xF4a1E7Dd685b4EaFBE5d0E70e20c153dee2E290b', - }, - MCD_JOIN_USDT_A: { - name: 'MCD_JOIN_USDT_A', - address: '0xa8C62cC41AbF8A199FB484Ea363b90C3e9E01d86', - }, - MCD_JOIN_PAXUSD_A: { - name: 'MCD_JOIN_PAXUSD_A', - address: '0x8Ef390647A74150a79EC73FE120EaaF8bE9eEdf0', - }, - MCD_JOIN_PSM_PAX_A: { - name: 'MCD_JOIN_PSM_PAX_A', - address: '0xF27E1F580D5e82510b47C7B2A588A8A533787d38', - }, - MCD_JOIN_COMP_A: { - name: 'MCD_JOIN_COMP_A', - address: '0x544EFa934f26cd6FdFD86883408538150Bdd6725', - }, - MCD_JOIN_LRC_A: { - name: 'MCD_JOIN_LRC_A', - address: '0x12af538aCf746c0BBe076E5eBAE678e022E1F5f6', - }, - MCD_JOIN_LINK_A: { - name: 'MCD_JOIN_LINK_A', - address: '0x4420FD4E5C414189708376F3fBAA4dCA6277369a', - }, - MCD_JOIN_BAL_A: { - name: 'MCD_JOIN_BAL_A', - address: '0xb31cE33511c2CCEfBc1713A783042eE670Cf5930', - }, - MCD_JOIN_YFI_A: { - name: 'MCD_JOIN_YFI_A', - address: '0xa318E65982E80F54486f71965A0C320858759299', - }, - MCD_JOIN_GUSD_A: { - name: 'MCD_JOIN_GUSD_A', - address: '0x455451293100C5c5355db10512DEE81F75E45Edf', - }, - MCD_JOIN_PSM_GUSD_A: { - name: 'MCD_JOIN_PSM_GUSD_A', - address: '0x4115fDa246e2583b91aD602213f2ac4fC6E437Ca', - }, - MCD_JOIN_UNI_A: { - name: 'MCD_JOIN_UNI_A', - address: '0x31aE6e37964f26f4112A8Fc70e0B680F18e4DC6A', - }, - MCD_JOIN_RENBTC_A: { - name: 'MCD_JOIN_RENBTC_A', - address: '0xb4576162aC5d1bC7C69bA85F39e8f694d44d09D0', - }, - MCD_JOIN_AAVE_A: { - name: 'MCD_JOIN_AAVE_A', - address: '0x71Ae3e3ac4412865A4E556230b92aB58d895b497', - }, - MCD_JOIN_MATIC_A: { - name: 'MCD_JOIN_MATIC_A', - address: '0xeb680839564F0F9bFB96fE2dF47a31cE31689e63', - }, - MCD_JOIN_WSTETH_A: { - name: 'MCD_JOIN_WSTETH_A', - address: '0xF99834937715255079849BE25ba31BF8b5D5B45D', - }, - MCD_JOIN_WSTETH_B: { - name: 'MCD_JOIN_WSTETH_B', - address: '0x4a2dfbdfb0ea68823265fab4de55e22f751ed12c', - }, - MCD_JOIN_UNIV2DAIETH_A: { - name: 'MCD_JOIN_UNIV2DAIETH_A', - address: '0x66931685b532CB4F31abfe804d2408dD34Cd419D', - }, - MCD_JOIN_UNIV2WBTCETH_A: { - name: 'MCD_JOIN_UNIV2WBTCETH_A', - address: '0x345a29Db10Aa5CF068D61Bb20F74771eC7DF66FE', - }, - MCD_JOIN_UNIV2USDCETH_A: { - name: 'MCD_JOIN_UNIV2USDCETH_A', - address: '0x46267d84dA4D6e7b2F5A999518Cf5DAF91E204E3', - }, - MCD_JOIN_UNIV2DAIUSDC_A: { - name: 'MCD_JOIN_UNIV2DAIUSDC_A', - address: '0x4CEEf4EB4988cb374B0b288D685AeBE4c6d4C41E', - }, - MCD_JOIN_UNIV2ETHUSDT_A: { - name: 'MCD_JOIN_UNIV2ETHUSDT_A', - address: '0x46A8f8e2C0B62f5D7E4c95297bB26a457F358C82', - }, - MCD_JOIN_UNIV2LINKETH_A: { - name: 'MCD_JOIN_UNIV2LINKETH_A', - address: '0x98B7023Aced6D8B889Ad7D340243C3F9c81E8c5F', - }, - MCD_JOIN_UNIV2UNIETH_A: { - name: 'MCD_JOIN_UNIV2UNIETH_A', - address: '0x52c31E3592352Cd0CBa20Fa73Da42584EC693283', - }, - MCD_JOIN_UNIV2WBTCDAI_A: { - name: 'MCD_JOIN_UNIV2WBTCDAI_A', - address: '0x04d23e99504d61050CAF46B4ce2dcb9D4135a7fD', - }, - MCD_JOIN_UNIV2AAVEETH_A: { - name: 'MCD_JOIN_UNIV2AAVEETH_A', - address: '0x73C4E5430768e24Fd704291699823f35953bbbA2', - }, - MCD_JOIN_UNIV2DAIUSDT_A: { - name: 'MCD_JOIN_UNIV2DAIUSDT_A', - address: '0xBF70Ca17ce5032CCa7cD55a946e96f0E72f79452', - }, - MCD_JOIN_RWA001_A: { - name: 'MCD_JOIN_RWA001_A', - address: '0x088D6b3f68Bc4F93F90006A1356A21145EDD96E2', - }, - MCD_JOIN_RWA002_A: { - name: 'MCD_JOIN_RWA002_A', - address: '0xc0aeE42b5E77e931BAfd98EAdd321e704fD7CA1f', - }, - MCD_JOIN_RWA003_A: { - name: 'MCD_JOIN_RWA003_A', - address: '0x83fA1F7c423112aBC6B340e32564460eDcf6AD74', - }, - MCD_JOIN_RWA004_A: { - name: 'MCD_JOIN_RWA004_A', - address: '0xA74036937413B799b2f620a3b6Ea61ad08F1D354', - }, - MCD_JOIN_RWA005_A: { - name: 'MCD_JOIN_RWA005_A', - address: '0xc5052A70e00983ffa6894679f1d9c0cDAFe28416', - }, - MCD_JOIN_RWA006_A: { - name: 'MCD_JOIN_RWA006_A', - address: '0x5b4B7797FC41123578718AD4E3F04d1Bde9685DC', - }, - MCD_JOIN_RETH_A: { - name: 'MCD_JOIN_RETH_A', - address: '0xdef7d394a4ed62273265ce983107b3748f775265', - }, - MCD_JOIN_GNO_A: { - name: 'MCD_JOIN_GNO_A', - address: '0x05a3b9D5F8098e558aF33c6b83557484f840055e', - }, - MCD_JOIN_DIRECT_AAVEV2_DAI: { - name: 'MCD_JOIN_DIRECT_AAVEV2_DAI', - address: ADDRESS_ZERO, - }, - MCD_JOIN_GUNIV3DAIUSDC1_A: { - name: 'MCD_JOIN_GUNIV3DAIUSDC1_A', - address: ADDRESS_ZERO, - }, - MCD_JOIN_GUNIV3DAIUSDC2_A: { - name: 'MCD_JOIN_GUNIV3DAIUSDC2_A', - address: ADDRESS_ZERO, - }, - MCD_JOIN_CRVV1ETHSTETH_A: { - name: 'MCD_JOIN_CRVV1ETHSTETH_A', - address: ADDRESS_ZERO, - }, - }, - pips: { - PIP_ETH: { - name: 'PIP_ETH', - address: '0x94588e35fF4d2E99ffb8D5095F35d1E37d6dDf12', - }, - PIP_BAT: { - name: 'PIP_BAT', - address: '0x2BA78cb27044edCb715b03685D4bf74261170a70', - }, - PIP_USDC: { - name: 'PIP_USDC', - address: '0x838212865E2c2f4F7226fCc0A3EFc3EB139eC661', - }, - PIP_TUSD: { - name: 'PIP_TUSD', - address: '0x0ce19eA2C568890e63083652f205554C927a0caa', - }, - PIP_WBTC: { - name: 'PIP_WBTC', - address: '0xE7de200a3a29E9049E378b52BD36701A0Ce68C3b', - }, - PIP_ZRX: { - name: 'PIP_ZRX', - address: '0xe9245D25F3265E9A36DcCDC72B0B5dE1eeACD4cD', - }, - PIP_KNC: { - name: 'PIP_KNC', - address: '0xCB772363E2DEc06942edbc5E697F4A9114B5989c', - }, - PIP_MANA: { - name: 'PIP_MANA', - address: '0x001eDD66a5Cc9268159Cf24F3dC0AdcE456AAAAb', - }, - PIP_USDT: { - name: 'PIP_USDT', - address: '0x1fA3B8DAeE1BCEe33990f66F1a99993daD14D855', - }, - PIP_PAXUSD: { - name: 'PIP_PAXUSD', - address: '0xdF8474337c9D3f66C0b71d31C7D3596E4F517457', - }, - PIP_PAX: { - name: 'PIP_PAX', - address: '0xdF8474337c9D3f66C0b71d31C7D3596E4F517457', - }, - PIP_COMP: { - name: 'PIP_COMP', - address: '0xc3d677a5451cAFED13f748d822418098593D3599', - }, - PIP_LRC: { - name: 'PIP_LRC', - address: '0x5AD3A560BB125d00db8E94915232BA8f6166967C', - }, - PIP_LINK: { - name: 'PIP_LINK', - address: '0x75B4e743772D25a7998F4230cb016ddCF2c52629', - }, - PIP_BAL: { - name: 'PIP_BAL', - address: '0xF15993A5C5BE496b8e1c9657Fd2233b579Cd3Bc6', - }, - PIP_YFI: { - name: 'PIP_YFI', - address: '0xAafF0066D05cEe0D6a38b4dac77e73d9E0a5Cf46', - }, - PIP_GUSD: { - name: 'PIP_GUSD', - address: '0x57A00620Ba1f5f81F20565ce72df4Ad695B389d7', - }, - PIP_UNI: { - name: 'PIP_UNI', - address: '0xf1a5b808fbA8fF80982dACe88020d4a80c91aFe6', - }, - PIP_RENBTC: { - name: 'PIP_RENBTC', - address: '0xE7de200a3a29E9049E378b52BD36701A0Ce68C3b', - }, - PIP_AAVE: { - name: 'PIP_AAVE', - address: '0xC26E53eF1F71481DE53bfb77875Ffb3aCf4d91f0', - }, - PIP_MATIC: { - name: 'PIP_MATIC', - address: '0xDe112F61b823e776B3439f2F39AfF41f57993045', - }, - PIP_WSTETH: { - name: 'PIP_WSTETH', - address: '0x323eac5246d5BcB33d66e260E882fC9bF4B6bf41', - }, - PIP_UNIV2DAIETH: { - name: 'PIP_UNIV2DAIETH', - address: '0x044c9aeD56369aA3f696c898AEd0C38dC53c6C3D', - }, - PIP_UNIV2WBTCETH: { - name: 'PIP_UNIV2WBTCETH', - address: '0xD375daC26f7eF991878136b387ca959b9ac1DDaF', - }, - PIP_UNIV2USDCETH: { - name: 'PIP_UNIV2USDCETH', - address: '0x54ADcaB9B99b1B548764dAB637db751eC66835F0', - }, - PIP_UNIV2DAIUSDC: { - name: 'PIP_UNIV2DAIUSDC', - address: '0xEf22289E240cFcCCdCD2B98fdefF167da10f452d', - }, - PIP_UNIV2ETHUSDT: { - name: 'PIP_UNIV2ETHUSDT', - address: '0x974f7f4dC6D91f144c87cc03749c98f85F997bc7', - }, - PIP_UNIV2LINKETH: { - name: 'PIP_UNIV2LINKETH', - address: '0x11C884B3FEE1494A666Bb20b6F6144387beAf4A6', - }, - PIP_UNIV2UNIETH: { - name: 'PIP_UNIV2UNIETH', - address: '0xB18BC24e52C23A77225E7cf088756581EE257Ad8', - }, - PIP_UNIV2WBTCDAI: { - name: 'PIP_UNIV2WBTCDAI', - address: '0x916fc346910fd25867c81874f7F982a1FB69aac7', - }, - PIP_UNIV2AAVEETH: { - name: 'PIP_UNIV2AAVEETH', - address: '0xFADF05B56E4b211877248cF11C0847e7F8924e10', - }, - PIP_UNIV2DAIUSDT: { - name: 'PIP_UNIV2DAIUSDT', - address: '0x2fc2706C61Fba5b941381e8838bC646908845db6', - }, - PIP_RWA001: { - name: 'PIP_RWA001', - address: '0x95282c2cDE88b93F784E2485f885580275551387', - }, - PIP_RWA002: { - name: 'PIP_RWA002', - address: '0xF1E8E72AE116193A9fA551beC1cda965147b31DA', - }, - PIP_RWA003: { - name: 'PIP_RWA003', - address: '0x27E599C9D69e02477f5ffF4c8E4E42B97777eE52', - }, - PIP_RWA004: { - name: 'PIP_RWA004', - address: '0x3C191d5a74800A99D8747fdffAea42F60f7d3Bff', - }, - PIP_RWA005: { - name: 'PIP_RWA005', - address: '0xa6A7f2408949cAbD13f254F8e77ad5C9896725aB', - }, - PIP_RWA006: { - name: 'PIP_RWA006', - address: '0xA410A66313F943d022b79f2943C9A37CefdE2371', - }, - PIP_RETH: { - name: 'PIP_RETH', - address: '0x27a25935d8b0006a97e11caddc2b3bf3a6721c13', - }, - PIP_GNO: { - name: 'PIP_GNO', - address: '0xf15221A159A4e7ba01E0d6e72111F0Ddff8Fa8Da', - }, - PIP_WETH: { - name: 'PIP_WETH', - address: ADDRESS_ZERO, - }, - PIP_ADAI: { - name: 'PIP_ADAI', - address: ADDRESS_ZERO, - }, - PIP_GUNIV3DAIUSDC1: { - name: 'PIP_GUNIV3DAIUSDC1', - address: ADDRESS_ZERO, - }, - PIP_GUNIV3DAIUSDC2: { - name: 'PIP_GUNIV3DAIUSDC2', - address: ADDRESS_ZERO, - }, - PIP_CRVV1ETHSTETH: { - name: 'PIP_CRVV1ETHSTETH', - address: ADDRESS_ZERO, - }, - }, - }, - spark: {}, - automation: { - AutomationBot: { - name: 'AutomationBot', - address: '0xabDB63B4b3BA9f960CF942800a6982F88e9b1A6b', - }, - AutomationBotV2: { - name: 'AutomationBotV2', - address: '0x0', - }, - AutomationBotAggregator: { - name: 'AutomationBotAggregator', - address: '0xeb3c922A805FAEEac8f311E1AdF34fBC518099ab', - }, - }, - ajna: { - AjnaPoolInfo: { - name: 'AjnaPoolInfo', - address: '0xAA3C8bebFf9a9da25F2eBBb800398D594207393f', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.AJNA_POOL_UTILS_INFO, - }, - AjnaProxyActions: { - name: 'AjnaProxyActions', - address: '0xCf90A985b9648bbe1ECcd87D9B0d73d7f3254f19', - }, - AjnaPoolPairs_ETHDAI: { - name: 'AjnaPoolPairs_ETHDAI', - address: '0xA534c8399af45Ad25e9f0c6Fdf1a604d8954FBfA', - }, - AjnaPoolPairs_ETHUSDC: { - name: 'AjnaPoolPairs_ETHUSDC', - address: '0x0cC76b185649e0FB220ED8008033ADB17f277797', - }, - AjnaPoolPairs_RETHDAI: { - name: 'AjnaPoolPairs_RETHDAI', - address: '0xFc2c8fadb94082fe48d086cCcd055262426c7F63', - }, - AjnaPoolPairs_RETHETH: { - name: 'AjnaPoolPairs_RETHETH', - address: '0x6E9Afe7D0Edb821357Be5d4b74aB2fBC234acfE6', - }, - AjnaPoolPairs_RETHUSDC: { - name: 'AjnaPoolPairs_RETHUSDC', - address: '0x784E104eA20f69d1A64926976524BCD8285eEda2', - }, - AjnaPoolPairs_USDCETH: { - name: 'AjnaPoolPairs_USDCETH', - address: '0x530E675987687414Bc5e31405Aa8ec4Ca435CAA3', - }, - AjnaPoolPairs_USDCDAI: { name: 'AjnaPoolPairs_USDCDAI', address: ADDRESS_ZERO }, - AjnaPoolPairs_USDCWBTC: { - name: 'AjnaPoolPairs_USDCWBTC', - address: '0xe719Ce19d121B8F38Abc9F435967b4231909ad93', - }, - AjnaPoolPairs_WBTCDAI: { - name: 'AjnaPoolPairs_WBTCDAI', - address: '0xCd197acAe951C6766E42e07E1075a1cfD700326b', - }, - AjnaPoolPairs_WBTCUSDC: { - name: 'AjnaPoolPairs_WBTCUSDC', - address: '0x5B9649f4870493F41e87F8AF7ac00B8d5B21262b', - }, - AjnaPoolPairs_WSTETHDAI: { - name: 'AjnaPoolPairs_WSTETHDAI', - address: '0x149e9eCc5ffbaE275A4D1763C51dDEd6A3a60853', - }, - AjnaPoolPairs_WSTETHETH: { - name: 'AjnaPoolPairs_WSTETHETH', - address: '0x821398A7861EffBC9841D0f6cd7eA2379CDF764a', - }, - AjnaPoolPairs_WSTETHUSDC: { - name: 'AjnaPoolPairs_WSTETHUSDC', - address: '0xFB50f007649Cb20286f8CBa61ff758364fC422F6', - }, - AjnaPoolPairs_CBETHETH: { - name: 'AjnaPoolPairs_CBETHETH', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_TBTCWBTC: { - name: 'AjnaPoolPairs_TBTCWBTC', - address: '0xF2D9A599cf54B3cc66df7b300eb866E015cd3Ed4', - }, - AjnaPoolPairs_TBTCUSDC: { - name: 'AjnaPoolPairs_TBTCUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_ETHGHO: { - name: 'AjnaPoolPairs_ETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WSTETHGHO: { - name: 'AjnaPoolPairs_WSTETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_GHODAI: { - name: 'AjnaPoolPairs_GHODAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_RETHGHO: { - name: 'AjnaPoolPairs_RETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WBTCGHO: { - name: 'AjnaPoolPairs_WBTCGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_CBETHGHO: { - name: 'AjnaPoolPairs_CBETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WLDUSDC: { - name: 'AjnaPoolPairs_WLDUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_USDCWLD: { - name: 'AjnaPoolPairs_USDCWLD', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_SDAIUSDC: { - name: 'AjnaPoolPairs_SDAIUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_YFIDAI: { - name: 'AjnaPoolPairs_YFIDAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_YIELDETHETH: { - name: 'AjnaPoolPairs_YIELDETHETH', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_YIELDBTCWBTC: { - name: 'AjnaPoolPairs_YIELDBTCWBTC', - address: ADDRESS_ZERO, - }, - AjnaRewardsManager: { - name: 'AjnaRewardsManager', - address: '0x994dE190dd763Af3126FcC8EdC139275937d800b', - }, - AjnaRewardsClaimer: { - name: 'AjnaRewardsClaimer', - address: '0xFb6EdFC7ADc67645423c233332efD6E6804e72F5', - }, - ERC20PoolFactory: { - name: 'ERC20PoolFactory', - address: '0x378c45f3f9FAc53261A675cC5CF971563634174d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.ERC20_POOL_FACTORY, - }, - }, - morphoblue: { - MorphoBlue: { - name: 'MorphoBlue', - address: '0x0000000000000000000000000000000000000000', - serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, - }, - }, -} diff --git a/packages/deploy-configurations/configs/hardhat.conf.ts b/packages/deploy-configurations/configs/hardhat.conf.ts deleted file mode 100644 index 8bdcc075..00000000 --- a/packages/deploy-configurations/configs/hardhat.conf.ts +++ /dev/null @@ -1,1324 +0,0 @@ -import { loadContractNames } from '@deploy-configurations/constants' -import { SystemConfig } from '@deploy-configurations/types/deployment-config' -import { Network } from '@deploy-configurations/types/network' - -const SERVICE_REGISTRY_NAMES = loadContractNames(Network.HARDHAT) - -export const config: SystemConfig = { - mpa: { - core: { - ServiceRegistry: { - name: 'ServiceRegistry', - deploy: true, - address: '0xc6a15814fEFaf471301163AE0a65cDaC48BB2D4d', - history: [ - '0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA', - '0x5e81a7515f956ab642eb698821a449fe8fe7498e', - ], - constructorArgs: [0], - }, - OperationExecutor: { - name: 'OperationExecutor', - deploy: false, - address: '0xcA71C36D26f515AD0cce1D806B231CBC1185CdfC', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.OPERATION_EXECUTOR, - history: ['0xc1cd3654ab3b37e0bc26bafb5ae4c096892d0b0c'], - constructorArgs: ['address:ServiceRegistry'], - }, - OperationStorage: { - name: 'OperationStorage', - deploy: false, - address: '0xa67c8ED81562085894172746E9CC28b7c21F2277', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.OPERATION_STORAGE, - history: ['0x66081bcDb3760f1Bf765B4D9800d0a059BBec73F'], - constructorArgs: ['address:ServiceRegistry', 'address:OperationExecutor'], - }, - OperationsRegistry: { - name: 'OperationsRegistry', - deploy: true, - address: '0xCD8B4a7Dd87F56B598B5e64ddFB0Ae5AC20C4116', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.OPERATIONS_REGISTRY, - history: [ - '0x01871C3cCfeDE29d2b998E7D1BF0eEEBD26d9c49', - '0x563d2689fE89c78259dD7F694146BB93f6388A55', - ], - constructorArgs: [], - }, - DSProxyFactory: { - name: 'DSProxyFactory', - deploy: false, - address: '0xA26e15C895EFc0616177B7c1e7270A4C7D51C997', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_FACTORY, - history: [], - constructorArgs: [], - }, - DSProxyRegistry: { - name: 'DSProxyRegistry', - deploy: false, - address: '0x4678f0a6958e4D2Bc4F1BAF7Bc52E8F3564f3fE4', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_REGISTRY, - history: [], - constructorArgs: ['address:DSProxyFactory'], - }, - DSGuardFactory: { - name: 'DSGuardFactory', - deploy: false, - address: '0x5a15566417e6C1c9546523066500bDDBc53F88C7', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_GUARD_FACTORY, - history: [], - constructorArgs: [], - }, - AccountGuard: { - name: 'AccountGuard', - deploy: false, - address: '0xCe91349d2A4577BBd0fC91Fe6019600e047f2847', - history: [], - constructorArgs: [], - }, - AccountFactory: { - name: 'AccountFactory', - deploy: false, - address: '0xF7B75183A2829843dB06266c114297dfbFaeE2b6', - history: [], - constructorArgs: ['address:AccountGuard'], - }, - ChainLogView: { - name: 'ChainLogView', - deploy: false, - address: '0x4B323Eb2ece7fc1D81F1819c26A7cBD29975f75f', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.CHAINLOG_VIEWER, - history: [], - constructorArgs: ['0xdA0Ab1e0017DEbCd72Be8599041a2aa3bA7e740F'], - }, - Swap: { - name: 'Swap', - deploy: false, - address: '0x826E9f2E79cEEA850dF4d4757e0D12115A720D74', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SWAP, - history: [], - constructorArgs: [], - }, - }, - actions: { - PositionCreated: { - name: 'PositionCreated', - deploy: false, - address: '0x83FF13979C0B82934C3916532453A5d6be492e2E', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.POSITION_CREATED, - history: ['0xA0Cb87300aB07D00468704cD8f016F8dE47D8E0A'], - constructorArgs: [], - }, - SwapAction: { - name: 'SwapAction', - deploy: false, - address: '0x313617D9CcBd96d66b2374c9bcB44b372D29b530', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SWAP_ACTION, - history: ['0x7E7EB65A93441a2D2Bf0941216b4c1116B554d85'], - constructorArgs: ['address:ServiceRegistry'], - }, - TakeFlashloan: { - name: 'TakeFlashloan', - deploy: false, - address: '0xbd4233fe84387b4070ef8947ae2816023fb21fed', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.TAKE_A_FLASHLOAN, - history: ['0x0eD12441616ca97F5729Fff519F5e8d13d8De15F'], - constructorArgs: [ - 'address:ServiceRegistry', - '0x6B175474E89094C44Da98b954EedeAC495271d0F', - '0x5a15566417e6C1c9546523066500bDDBc53F88C7', - ], - }, - SetApproval: { - name: 'SetApproval', - deploy: false, - address: '0x3cf2e1ccd3cb586e19382fb1fbd720df7353dba5', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SET_APPROVAL, - history: ['0xcEA79d9132d6446f0B59F194b22DB2a93dB4146c'], - constructorArgs: ['address:ServiceRegistry'], - }, - PullToken: { - name: 'PullToken', - deploy: false, - address: '0x73835b6c3179a7788df7fb6272fd69bba97907be', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.PULL_TOKEN, - history: ['0x0bE3B9c118eD4eF2002Fd58d0d8cc8f7c76e168C'], - constructorArgs: [], - }, - SendToken: { - name: 'SendToken', - deploy: false, - address: '0xbf21f58e9c0dac0c3f9b26432d875ff8146ab255', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN, - history: ['0xAa4C55A8dd5b0e923056676D544FC20bb5D5e3A3'], - constructorArgs: ['address:ServiceRegistry'], - }, - SendTokenAuto: { - name: 'SendTokenAuto', - deploy: false, - address: '0xCD4E7711716cC02209c4035b702dB3fEbb20780d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, - history: [ - '0xCD4E7711716cC02209c4035b702dB3fEbb20780d', - '0xCD4E7711716cC02209c4035b702dB3fEbb20780d', - ], - constructorArgs: ['address:ServiceRegistry'], - }, - WrapEth: { - name: 'WrapEth', - deploy: false, - address: '0x50db3ff917002c57e1494c376851620747aeba0b', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WRAP_ETH, - history: ['0xafdD2e556Cef33C5C0033beB76E09b7Bd8d14Dec'], - constructorArgs: ['address:ServiceRegistry'], - }, - UnwrapEth: { - name: 'UnwrapEth', - deploy: false, - address: '0xc394d69580BA02baF457a47478E00A3f27a00B1a', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.UNWRAP_ETH, - history: ['0xAC0B1652388Ea425884e6b60e2eD30155f43D50b'], - constructorArgs: ['address:ServiceRegistry'], - }, - ReturnFunds: { - name: 'ReturnFunds', - deploy: false, - address: '0xce74169AF94f67eB0eC48D5151012943fCa11Db4', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.RETURN_FUNDS, - history: ['0x645325494A37d35cf6baFc82C3e6bcE4473F2685'], - constructorArgs: [], - }, - AaveBorrow: { - name: 'AaveBorrow', - deploy: false, - address: '0x0199E5B28FeFeDe94CfC7ec754e58F173219b4Cf', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.BORROW, - history: ['0x6166B1587be6B954e660A71e4B083A5e0a5bF1b6'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveWithdraw: { - name: 'AaveWithdraw', - deploy: false, - address: '0x7833fE8d3614a8248fd4762eE7FdFa9Bb24C0Ce9', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WITHDRAW, - history: ['0xECf6CaB5cD20F5f889e95A1A40d46607aa0F41Cf'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveDeposit: { - name: 'AaveDeposit', - deploy: false, - address: '0xFdE9C559F877ff48350710946fe978dD16Ad35E9', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.DEPOSIT, - history: ['0xFAf9D0B7B92e8B281CaF10b42970179B45CA6412'], - constructorArgs: ['address:ServiceRegistry'], - }, - AavePayback: { - name: 'AavePayback', - deploy: false, - address: '0x45A19f6cea7aF9DF2833B0ce859616B10f6ADC7A', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.PAYBACK, - history: ['0xeB54C366512c4d59A222A251ea7316568859E08C'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Borrow: { - name: 'AaveV3Borrow', - deploy: false, - address: '0x8a8c9Bad73369Fc12e6BF1EA09c76d37466C08d8', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.BORROW, - history: ['0x18ca8bE41D32727383bC0F98705f7662ed0B7E28'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Withdraw: { - name: 'AaveV3Withdraw', - deploy: false, - address: '0xDA39737E1b15619D6eAC2eeFa2990277c9898ACE', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.WITHDRAW, - history: ['0x414958801DC53E840501f507D7A0FEBE55806200'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Deposit: { - name: 'AaveV3Deposit', - deploy: false, - address: '0xf70895f820551d5596A1c6Dd0999153d04FBC889', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.DEPOSIT, - history: ['0x852c56859840487DcED2aF501fC06f7462C4f2a8'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Payback: { - name: 'AaveV3Payback', - deploy: false, - address: '0xeAc4F77ddA4Fe5396674a69a7f7865d87Fd7D5d1', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.PAYBACK, - history: ['0xdB736d13CE851Ee81ac2109DF37EBAb8Ce525C42'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3SetEMode: { - name: 'AaveV3SetEMode', - deploy: false, - address: '0xc6630a586211c3e47527e687Bd07fAE504149116', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.SET_EMODE, - history: ['0xd4DB3799DEe98Fe752d952Ba6F84Bb99Af829920'], - constructorArgs: ['address:ServiceRegistry'], - }, - AjnaDepositBorrow: { - name: 'AjnaDepositBorrow', - deploy: false, - address: '0x4D6F457C8305A1E6f688a8a05C7341DD959cB681', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.DEPOSIT_BORROW, - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - AjnaRepayWithdraw: { - name: 'AjnaRepayWithdraw', - deploy: false, - address: '0xc0BAFEa22AD2A2D92BF54B1d76eA175785aa9Eb1', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.REPAY_WITHDRAW, - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - SparkBorrow: { - name: 'SparkBorrow', - deploy: false, - address: '0xc69156420307048c9BAAe8191f9012391521a88d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.BORROW, - history: ['0x0000000000000000000000000000000000000000'], - constructorArgs: ['address:ServiceRegistry'], - }, - SparkWithdraw: { - name: 'SparkWithdraw', - deploy: false, - address: '0x0cCa782002c4fE95e1ed7A75d41bB56bEfa0C167', - serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.WITHDRAW, - history: ['0x0000000000000000000000000000000000000000'], - constructorArgs: ['address:ServiceRegistry'], - }, - SparkDeposit: { - name: 'SparkDeposit', - deploy: false, - address: '0xC58F2Ee4Ef92F2bE314743442496D6Fad0339d56', - serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.DEPOSIT, - history: ['0x0000000000000000000000000000000000000000'], - constructorArgs: ['address:ServiceRegistry'], - }, - SparkPayback: { - name: 'SparkPayback', - deploy: false, - address: '0x068875B4254aC431BE7B8a10C56D80324fA0d043', - serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.PAYBACK, - history: ['0x0000000000000000000000000000000000000000'], - constructorArgs: ['address:ServiceRegistry'], - }, - SparkSetEMode: { - name: 'SparkSetEMode', - deploy: false, - address: '0x79d428e563D946DaBe43C681f92c8D714F5157cE', - serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.SET_EMODE, - history: ['0x0000000000000000000000000000000000000000'], - constructorArgs: ['address:ServiceRegistry'], - }, - }, - }, - common: { - GnosisSafe: { - name: 'GnosisSafe', - address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc', - }, - UniswapRouterV3: { - name: 'UniswapRouterV3', - address: '0xe592427a0aece92de3edee1f18e0157c05861564', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.UNISWAP_ROUTER, - }, - BalancerVault: { - name: 'BalancerVault', - address: '0xBA12222222228d8Ba445958a75a0704d566BF2C8', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.BALANCER_VAULT, - }, - OneInchAggregator: { - name: 'OneInchAggregator', - address: '0x1111111254fb6c44bac0bed2854e76f90643097d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR, - }, - AuthorizedCaller: { - name: 'AuthorizedCaller', - address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc', - }, - FeeRecipient: { - name: 'FeeRecipient', - address: '0xC7b548AD9Cf38721810246C079b2d8083aba8909', - }, - MerkleRedeemer: { - name: 'MerkleRedeemer', - address: '0xd9fabf81Ed15ea71FBAd0C1f77529a4755a38054', - }, - DssCharter: { name: 'DssCharter', address: '0x0000123' }, - DssProxyActions: { - name: 'DssProxyActions', - address: '0x82ecD135Dce65Fbc6DbdD0e4237E0AF93FFD5038', - }, - DssProxyActionsCharter: { name: 'DssProxyActionsCharter', address: '0x0000' }, - DssMultiplyProxyActions: { - name: 'DssMultiplyProxyActions', - address: '0x2a49eae5cca3f050ebec729cf90cc910fadaf7a2', - }, - DssCropper: { - name: 'DssCropper', - address: '0x8377CD01a5834a6EaD3b7efb482f678f2092b77e', - }, - DssProxyActionsCropjoin: { - name: 'DssProxyActionsCropjoin', - address: '0xa2f69F8B9B341CFE9BfBb3aaB5fe116C89C95bAF', - }, - DssProxyActionsDsr: { - name: 'DssProxyActionsDsr', - address: '0x07ee93aEEa0a36FfF2A9B95dd22Bd6049EE54f26', - }, - Otc: { - name: 'Otc', - address: '0x794e6e91555438aFc3ccF1c5076A74F42133d08D', - }, - OtcSupportMethods: { - name: 'OtcSupportMethods', - address: '0x9b3f075b12513afe56ca2ed838613b7395f57839', - }, - ServiceRegistry: { - name: 'ServiceRegistry', - address: '0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA', - }, - GuniProxyActions: { - name: 'GuniProxyActions', - address: '0xed3a954c0adfc8e3f85d92729c051ff320648e30', - }, - GuniResolver: { - name: 'GuniResolver', - address: '0x0317650Af6f184344D7368AC8bB0bEbA5EDB214a', - }, - GuniRouter: { - name: 'GuniRouter', - address: '0x14E6D67F824C3a7b4329d3228807f8654294e4bd', - }, - CdpRegistry: { - name: 'CdpRegistry', - address: '0xBe0274664Ca7A68d6b5dF826FB3CcB7c620bADF3', - }, - DefaultExchange: { - name: 'DefaultExchange', - address: '0xb5eB8cB6cED6b6f8E13bcD502fb489Db4a726C7B', - }, - NoFeesExchange: { - name: 'NoFeesExchange', - address: '0x99e4484dac819aa74b347208752306615213d324', - }, - LowerFeesExchange: { - name: 'LowerFeesExchange', - address: '0xf22f17b1d2354b4f4f52e4d164e4eb5e1f0a6ba6', - }, - LidoCrvLiquidityFarmingReward: { - name: 'LidoCrvLiquidityFarmingReward', - address: '0x99ac10631f69c753ddb595d074422a0922d9056b', - }, - ChainlinkPriceOracle_USDCUSD: { - name: 'ChainlinkPriceOracle_USDCUSD', - address: '0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6', - }, - ChainlinkPriceOracle_ETHUSD: { - name: 'ChainlinkPriceOracle_ETHUSD', - address: '0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419', - }, - SdaiOracle: { - name: 'SdaiOracle', - address: '0xb9E6DBFa4De19CCed908BcbFe1d015190678AB5f', - }, - AAVE: { - name: 'AAVE', - address: '0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9', - }, - ADAI: { - name: 'ADAI', - address: '0x028171bCA77440897B824Ca71D1c56caC55b68A3', - }, - BAL: { - name: 'BAL', - address: '0xba100000625a3754423978a60c9317c58a424e3D', - }, - BAT: { - name: 'BAT', - address: '0x0D8775F648430679A709E98d2b0Cb6250d2887EF', - }, - CBETH: { - name: 'CBETH', - address: '0xbe9895146f7af43049ca1c1ae358b0541ea49704', - }, - COMP: { - name: 'COMP', - address: '0xc00e94Cb662C3520282E6f5717214004A7f26888', - }, - CRVV1ETHSTETH: { - name: 'CRVV1ETHSTETH', - address: '0x06325440D014e39736583c165C2963BA99fAf14E', - }, - DAI: { - name: 'DAI', - address: '0x6B175474E89094C44Da98b954EedeAC495271d0F', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DAI, - }, - ETH: { - name: 'ETH', - address: '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE', - }, - FRAX: { - name: 'FRAX', - address: '0x853d955acef822db058eb8505911ed77f175b99e', - }, - GHO: { - name: 'GHO', - address: '0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f', - }, - GNO: { - name: 'GNO', - address: '0x6810e776880C02933D47DB1b9fc05908e5386b96', - }, - GUNIV3DAIUSDC1: { - name: 'GUNIV3DAIUSDC1', - address: '0xAbDDAfB225e10B90D798bB8A886238Fb835e2053', - }, - GUNIV3DAIUSDC2: { - name: 'GUNIV3DAIUSDC2', - address: '0x50379f632ca68D36E50cfBC8F78fe16bd1499d1e', - }, - GUSD: { - name: 'GUSD', - address: '0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd', - }, - KNC: { - name: 'KNC', - address: '0xdd974D5C2e2928deA5F71b9825b8b646686BD200', - }, - LDO: { - name: 'LDO', - address: '0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32', - }, - LINK: { - name: 'LINK', - address: '0x514910771AF9Ca656af840dff83E8264EcF986CA', - }, - LRC: { - name: 'LRC', - address: '0xBBbbCA6A901c926F240b89EacB641d8Aec7AEafD', - }, - LUSD: { - name: 'LUSD', - address: '0x5f98805A4E8be255a32880FDeC7F6728C6568bA0', - }, - MANA: { - name: 'MANA', - address: '0x0F5D2fB29fb7d3CFeE444a200298f468908cC942', - }, - MATIC: { - name: 'MATIC', - address: '0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0', - }, - PAX: { - name: 'PAX', - address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1', - }, - PAXUSD: { - name: 'PAXUSD', - address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1', - }, - RENBTC: { - name: 'RENBTC', - address: '0xEB4C2781e4ebA804CE9a9803C67d0893436bB27D', - }, - RETH: { - name: 'RETH', - address: '0xae78736cd615f374d3085123a210448e74fc6393', - }, - RWA001: { - name: 'RWA001', - address: '0x10b2aA5D77Aa6484886d8e244f0686aB319a270d', - }, - RWA002: { - name: 'RWA002', - address: '0xAAA760c2027817169D7C8DB0DC61A2fb4c19AC23', - }, - RWA003: { - name: 'RWA003', - address: '0x07F0A80aD7AeB7BfB7f139EA71B3C8f7E17156B9', - }, - RWA004: { - name: 'RWA004', - address: '0x873F2101047A62F84456E3B2B13df2287925D3F9', - }, - RWA005: { - name: 'RWA005', - address: '0x6DB236515E90fC831D146f5829407746EDdc5296', - }, - RWA006: { - name: 'RWA006', - address: '0x4EE03cfBF6E784c462839f5954d60f7C2B60b113', - }, - SDAI: { - name: 'SDAI', - address: '0x83f20f44975d03b1b09e64809b757c47f942beea', - }, - STETH: { - name: 'STETH', - address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.STETH, - }, - TBTC: { - name: 'TBTC', - address: '0x18084fbA666a33d37592fA2633fD49a74DD93a88', - }, - TUSD: { - name: 'TUSD', - address: '0x0000000000085d4780B73119b644AE5ecd22b376', - }, - UNI: { - name: 'UNI', - address: '0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984', - }, - UNIV2AAVEETH: { - name: 'UNIV2AAVEETH', - address: '0xDFC14d2Af169B0D36C4EFF567Ada9b2E0CAE044f', - }, - UNIV2DAIETH: { - name: 'UNIV2DAIETH', - address: '0xA478c2975Ab1Ea89e8196811F51A7B7Ade33eB11', - }, - UNIV2DAIUSDC: { - name: 'UNIV2DAIUSDC', - address: '0xAE461cA67B15dc8dc81CE7615e0320dA1A9aB8D5', - }, - UNIV2DAIUSDT: { - name: 'UNIV2DAIUSDT', - address: '0xB20bd5D04BE54f870D5C0d3cA85d82b34B836405', - }, - UNIV2ETHUSDT: { - name: 'UNIV2ETHUSDT', - address: '0x0d4a11d5EEaaC28EC3F61d100daF4d40471f1852', - }, - UNIV2LINKETH: { - name: 'UNIV2LINKETH', - address: '0xa2107FA5B38d9bbd2C461D6EDf11B11A50F6b974', - }, - UNIV2UNIETH: { - name: 'UNIV2UNIETH', - address: '0xd3d2E2692501A5c9Ca623199D38826e513033a17', - }, - UNIV2USDCETH: { - name: 'UNIV2USDCETH', - address: '0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc', - }, - UNIV2WBTCDAI: { - name: 'UNIV2WBTCDAI', - address: '0x231B7589426Ffe1b75405526fC32aC09D44364c4', - }, - UNIV2WBTCETH: { - name: 'UNIV2WBTCETH', - address: '0xBb2b8038a1640196FbE3e38816F3e67Cba72D940', - }, - USDC: { - name: 'USDC', - address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC, - }, - USDBC: { - name: 'USDBC', - address: '0x0000000000000000000000000000000000000000', - }, - USDT: { - name: 'USDT', - address: '0xdAC17F958D2ee523a2206206994597C13D831ec7', - }, - WBTC: { - name: 'WBTC', - address: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WBTC, - }, - WETH: { - name: 'WETH', - address: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WETH, - }, - WLD: { - name: 'WLD', - address: '0x163f8c2467924be0ae7b5347228cabf260318753', - }, - WSTETH: { - name: 'WSTETH', - address: '0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WSTETH, - }, - YIELDBTC: { - name: 'YIELDBTC', - address: '0x0274a704a6d9129f90a62ddc6f6024b33ecdad36', - }, - YIELDETH: { - name: 'YIELDETH', - address: '0xb5b29320d2dde5ba5bafa1ebcd270052070483ec', - }, - YFI: { - name: 'YFI', - address: '0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e', - }, - ZRX: { - name: 'ZRX', - address: '0xE41d2489571d322189246DaFA5ebDe1F4699F498', - }, - }, - aave: { - v2: { - Oracle: { - name: 'Oracle', - address: '0xa50ba011c48153de246e5192c8f9258a2ba79ca9', - }, - LendingPool: { - name: 'LendingPool', - address: '0x7d2768dE32b0b80b7a3454c06BdAc94A69DDc7A9', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.LENDING_POOL, - }, - PoolDataProvider: { - name: 'PoolDataProvider', - address: '0x057835Ad21a177dbdd3090bB1CAE03EaCF78Fc6d', - }, - WETHGateway: { - name: 'WETHGateway', - address: '0xcc9a0B7c43DC2a5F023Bb9b738E45B0Ef6B06E04', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WETH_GATEWAY, - }, - }, - v3: { - Oracle: { - name: 'Oracle', - address: '0x54586bE62E3c3580375aE3723C145253060Ca0C2', - }, - LendingPool: { - name: 'LendingPool', - address: '0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.AAVE_POOL, - }, - PoolDataProvider: { - name: 'PoolDataProvider', - address: '0x7B4EB56E7CD4b454BA8ff71E4518426369a138a3', - }, - L2Encoder: { - name: 'L2Encoder', - address: '0x0000000000000000000000000000000000000000', - }, - }, - }, - spark: { - Oracle: { - name: 'Oracle', - address: '0x8105f69D9C41644c6A0803fDA7D03Aa70996cFD9', - }, - LendingPool: { - name: 'LendingPool', - address: '0xC13e21B648A5Ee794902342038FF3aDAB66BE987', - serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.LENDING_POOL, - }, - PoolDataProvider: { - name: 'PoolDataProvider', - address: '0xFc21d6d146E6086B8359705C8b28512a983db0cb', - }, - }, - maker: { - common: { - FlashMintModule: { - name: 'FlashMintModule', - address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA', - serviceRegistryName: SERVICE_REGISTRY_NAMES.maker.FLASH_MINT_MODULE, - }, - Chainlog: { - name: 'Chainlog', - address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA', - }, - CdpManager: { - name: 'CdpManager', - address: '0x5ef30b9986345249bc32d8928B7ee64DE9435E39', - }, - GetCdps: { - name: 'GetCdps', - address: '0x36a724Bd100c39f0Ea4D3A20F7097eE01A8Ff573', - }, - Jug: { - name: 'Jug', - address: '0x19c0976f590D67707E62397C87829d896Dc0f1F1', - }, - Pot: { - name: 'Pot', - address: '0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7', - }, - End: { - name: 'End', - address: '0xBB856d1742fD182a90239D7AE85706C2FE4e5922', - }, - Spot: { - name: 'Spot', - address: '0x65C79fcB50Ca1594B025960e539eD7A9a6D434A3', - }, - Dog: { - name: 'Dog', - address: '0x135954d155898D42C90D2a57824C690e0c7BEf1B', - }, - Vat: { - name: 'Vat', - address: '0x35D1b3F3D7966A1DFe207aa4514C12a259A0492B', - }, - McdGov: { - name: 'McdGov', - address: '0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2', - }, - }, - joins: { - MCD_JOIN_DAI: { - name: 'MCD_JOIN_DAI', - address: '0x9759A6Ac90977b93B58547b4A71c78317f391A28', - }, - MCD_JOIN_ETH_A: { - name: 'MCD_JOIN_ETH_A', - address: '0x2F0b23f53734252Bda2277357e97e1517d6B042A', - }, - MCD_JOIN_ETH_B: { - name: 'MCD_JOIN_ETH_B', - address: '0x08638eF1A205bE6762A8b935F5da9b700Cf7322c', - }, - MCD_JOIN_ETH_C: { - name: 'MCD_JOIN_ETH_C', - address: '0xF04a5cC80B1E94C69B48f5ee68a08CD2F09A7c3E', - }, - MCD_JOIN_BAT_A: { - name: 'MCD_JOIN_BAT_A', - address: '0x3D0B1912B66114d4096F48A8CEe3A56C231772cA', - }, - MCD_JOIN_USDC_A: { - name: 'MCD_JOIN_USDC_A', - address: '0xA191e578a6736167326d05c119CE0c90849E84B7', - }, - MCD_JOIN_USDC_B: { - name: 'MCD_JOIN_USDC_B', - address: '0x2600004fd1585f7270756DDc88aD9cfA10dD0428', - }, - MCD_JOIN_PSM_USDC_A: { - name: 'MCD_JOIN_PSM_USDC_A', - address: '0x0A59649758aa4d66E25f08Dd01271e891fe52199', - }, - MCD_JOIN_WBTC_A: { - name: 'MCD_JOIN_WBTC_A', - address: '0xBF72Da2Bd84c5170618Fbe5914B0ECA9638d5eb5', - }, - MCD_JOIN_WBTC_B: { - name: 'MCD_JOIN_WBTC_B', - address: '0xfA8c996e158B80D77FbD0082BB437556A65B96E0', - }, - MCD_JOIN_WBTC_C: { - name: 'MCD_JOIN_WBTC_C', - address: '0x7f62f9592b823331E012D3c5DdF2A7714CfB9de2', - }, - MCD_JOIN_TUSD_A: { - name: 'MCD_JOIN_TUSD_A', - address: '0x4454aF7C8bb9463203b66C816220D41ED7837f44', - }, - MCD_JOIN_ZRX_A: { - name: 'MCD_JOIN_ZRX_A', - address: '0xc7e8Cd72BDEe38865b4F5615956eF47ce1a7e5D0', - }, - MCD_JOIN_KNC_A: { - name: 'MCD_JOIN_KNC_A', - address: '0x475F1a89C1ED844A08E8f6C50A00228b5E59E4A9', - }, - MCD_JOIN_MANA_A: { - name: 'MCD_JOIN_MANA_A', - address: '0xA6EA3b9C04b8a38Ff5e224E7c3D6937ca44C0ef9', - }, - MCD_JOIN_USDT_A: { - name: 'MCD_JOIN_USDT_A', - address: '0x0Ac6A1D74E84C2dF9063bDDc31699FF2a2BB22A2', - }, - MCD_JOIN_PAXUSD_A: { - name: 'MCD_JOIN_PAXUSD_A', - address: '0x7e62B7E279DFC78DEB656E34D6a435cC08a44666', - }, - MCD_JOIN_PSM_PAX_A: { - name: 'MCD_JOIN_PSM_PAX_A', - address: '0x7bbd8cA5e413bCa521C2c80D8d1908616894Cf21', - }, - MCD_JOIN_COMP_A: { - name: 'MCD_JOIN_COMP_A', - address: '0xBEa7cDfB4b49EC154Ae1c0D731E4DC773A3265aA', - }, - MCD_JOIN_LRC_A: { - name: 'MCD_JOIN_LRC_A', - address: '0x6C186404A7A238D3d6027C0299D1822c1cf5d8f1', - }, - MCD_JOIN_LINK_A: { - name: 'MCD_JOIN_LINK_A', - address: '0xdFccAf8fDbD2F4805C174f856a317765B49E4a50', - }, - MCD_JOIN_BAL_A: { - name: 'MCD_JOIN_BAL_A', - address: '0x4a03Aa7fb3973d8f0221B466EefB53D0aC195f55', - }, - MCD_JOIN_YFI_A: { - name: 'MCD_JOIN_YFI_A', - address: '0x3ff33d9162aD47660083D7DC4bC02Fb231c81677', - }, - MCD_JOIN_GUSD_A: { - name: 'MCD_JOIN_GUSD_A', - address: '0xe29A14bcDeA40d83675aa43B72dF07f649738C8b', - }, - MCD_JOIN_PSM_GUSD_A: { - name: 'MCD_JOIN_PSM_GUSD_A', - address: '0x79A0FA989fb7ADf1F8e80C93ee605Ebb94F7c6A5', - }, - MCD_JOIN_UNI_A: { - name: 'MCD_JOIN_UNI_A', - address: '0x3BC3A58b4FC1CbE7e98bB4aB7c99535e8bA9b8F1', - }, - MCD_JOIN_RENBTC_A: { - name: 'MCD_JOIN_RENBTC_A', - address: '0xFD5608515A47C37afbA68960c1916b79af9491D0', - }, - MCD_JOIN_AAVE_A: { - name: 'MCD_JOIN_AAVE_A', - address: '0x24e459F61cEAa7b1cE70Dbaea938940A7c5aD46e', - }, - MCD_JOIN_MATIC_A: { - name: 'MCD_JOIN_MATIC_A', - address: '0x885f16e177d45fC9e7C87e1DA9fd47A9cfcE8E13', - }, - MCD_JOIN_WSTETH_A: { - name: 'MCD_JOIN_WSTETH_A', - address: '0x10CD5fbe1b404B7E19Ef964B63939907bdaf42E2', - }, - MCD_JOIN_WSTETH_B: { - name: 'MCD_JOIN_WSTETH_B', - address: '0x248cCBf4864221fC0E840F29BB042ad5bFC89B5c', - }, - MCD_JOIN_DIRECT_AAVEV2_DAI: { - name: 'MCD_JOIN_DIRECT_AAVEV2_DAI', - address: '0xa13C0c8eB109F5A13c6c90FC26AFb23bEB3Fb04a', - }, - MCD_JOIN_UNIV2DAIETH_A: { - name: 'MCD_JOIN_UNIV2DAIETH_A', - address: '0x2502F65D77cA13f183850b5f9272270454094A08', - }, - MCD_JOIN_UNIV2WBTCETH_A: { - name: 'MCD_JOIN_UNIV2WBTCETH_A', - address: '0xDc26C9b7a8fe4F5dF648E314eC3E6Dc3694e6Dd2', - }, - MCD_JOIN_UNIV2USDCETH_A: { - name: 'MCD_JOIN_UNIV2USDCETH_A', - address: '0x03Ae53B33FeeAc1222C3f372f32D37Ba95f0F099', - }, - MCD_JOIN_UNIV2DAIUSDC_A: { - name: 'MCD_JOIN_UNIV2DAIUSDC_A', - address: '0xA81598667AC561986b70ae11bBE2dd5348ed4327', - }, - MCD_JOIN_UNIV2ETHUSDT_A: { - name: 'MCD_JOIN_UNIV2ETHUSDT_A', - address: '0x4aAD139a88D2dd5e7410b408593208523a3a891d', - }, - MCD_JOIN_UNIV2LINKETH_A: { - name: 'MCD_JOIN_UNIV2LINKETH_A', - address: '0xDae88bDe1FB38cF39B6A02b595930A3449e593A6', - }, - MCD_JOIN_UNIV2UNIETH_A: { - name: 'MCD_JOIN_UNIV2UNIETH_A', - address: '0xf11a98339FE1CdE648e8D1463310CE3ccC3d7cC1', - }, - MCD_JOIN_UNIV2WBTCDAI_A: { - name: 'MCD_JOIN_UNIV2WBTCDAI_A', - address: '0xD40798267795Cbf3aeEA8E9F8DCbdBA9b5281fcC', - }, - MCD_JOIN_UNIV2AAVEETH_A: { - name: 'MCD_JOIN_UNIV2AAVEETH_A', - address: '0x42AFd448Df7d96291551f1eFE1A590101afB1DfF', - }, - MCD_JOIN_UNIV2DAIUSDT_A: { - name: 'MCD_JOIN_UNIV2DAIUSDT_A', - address: '0xAf034D882169328CAf43b823a4083dABC7EEE0F4', - }, - MCD_JOIN_GUNIV3DAIUSDC1_A: { - name: 'MCD_JOIN_GUNIV3DAIUSDC1_A', - address: '0xbFD445A97e7459b0eBb34cfbd3245750Dba4d7a4', - }, - MCD_JOIN_GUNIV3DAIUSDC2_A: { - name: 'MCD_JOIN_GUNIV3DAIUSDC2_A', - address: '0xA7e4dDde3cBcEf122851A7C8F7A55f23c0Daf335', - }, - MCD_JOIN_CRVV1ETHSTETH_A: { - name: 'MCD_JOIN_CRVV1ETHSTETH_A', - address: '0x82D8bfDB61404C796385f251654F6d7e92092b5D', - }, - MCD_JOIN_RWA001_A: { - name: 'MCD_JOIN_RWA001_A', - address: '0x476b81c12Dc71EDfad1F64B9E07CaA60F4b156E2', - }, - MCD_JOIN_RWA002_A: { - name: 'MCD_JOIN_RWA002_A', - address: '0xe72C7e90bc26c11d45dBeE736F0acf57fC5B7152', - }, - MCD_JOIN_RWA003_A: { - name: 'MCD_JOIN_RWA003_A', - address: '0x1Fe789BBac5b141bdD795A3Bc5E12Af29dDB4b86', - }, - MCD_JOIN_RWA004_A: { - name: 'MCD_JOIN_RWA004_A', - address: '0xD50a8e9369140539D1c2D113c4dC1e659c6242eB', - }, - MCD_JOIN_RWA005_A: { - name: 'MCD_JOIN_RWA005_A', - address: '0xA4fD373b93aD8e054970A3d6cd4Fd4C31D08192e', - }, - MCD_JOIN_RWA006_A: { - name: 'MCD_JOIN_RWA006_A', - address: '0x5E11E34b6745FeBa9449Ae53c185413d6EdC66BE', - }, - MCD_JOIN_RETH_A: { - name: 'MCD_JOIN_RETH_A', - address: '0xc6424e862f1462281b0a5fac078e4b63006bdebf', - }, - MCD_JOIN_GNO_A: { - name: 'MCD_JOIN_GNO_A', - address: '0x7bD3f01e24E0f0838788bC8f573CEA43A80CaBB5', - }, - }, - pips: { - PIP_ETH: { - name: 'PIP_ETH', - address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763', - }, - PIP_BAT: { - name: 'PIP_BAT', - address: '0xB4eb54AF9Cc7882DF0121d26c5b97E802915ABe6', - }, - PIP_USDC: { - name: 'PIP_USDC', - address: '0x77b68899b99b686F415d074278a9a16b336085A0', - }, - PIP_WBTC: { - name: 'PIP_WBTC', - address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42', - }, - PIP_TUSD: { - name: 'PIP_TUSD', - address: '0xeE13831ca96d191B688A670D47173694ba98f1e5', - }, - PIP_ZRX: { - name: 'PIP_ZRX', - address: '0x7382c066801E7Acb2299aC8562847B9883f5CD3c', - }, - PIP_KNC: { - name: 'PIP_KNC', - address: '0xf36B79BD4C0904A5F350F1e4f776B81208c13069', - }, - PIP_MANA: { - name: 'PIP_MANA', - address: '0x8067259EA630601f319FccE477977E55C6078C13', - }, - PIP_USDT: { - name: 'PIP_USDT', - address: '0x7a5918670B0C390aD25f7beE908c1ACc2d314A3C', - }, - PIP_PAXUSD: { - name: 'PIP_PAXUSD', - address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC', - }, - PIP_PAX: { - name: 'PIP_PAX', - address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC', - }, - PIP_COMP: { - name: 'PIP_COMP', - address: '0xBED0879953E633135a48a157718Aa791AC0108E4', - }, - PIP_LRC: { - name: 'PIP_LRC', - address: '0x9eb923339c24c40Bef2f4AF4961742AA7C23EF3a', - }, - PIP_LINK: { - name: 'PIP_LINK', - address: '0x9B0C694C6939b5EA9584e9b61C7815E8d97D9cC7', - }, - PIP_BAL: { - name: 'PIP_BAL', - address: '0x3ff860c0F28D69F392543A16A397D0dAe85D16dE', - }, - PIP_YFI: { - name: 'PIP_YFI', - address: '0x5F122465bCf86F45922036970Be6DD7F58820214', - }, - PIP_GUSD: { - name: 'PIP_GUSD', - address: '0xf45Ae69CcA1b9B043dAE2C83A5B65Bc605BEc5F5', - }, - PIP_UNI: { - name: 'PIP_UNI', - address: '0xf363c7e351C96b910b92b45d34190650df4aE8e7', - }, - PIP_RENBTC: { - name: 'PIP_RENBTC', - address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42', - }, - PIP_AAVE: { - name: 'PIP_AAVE', - address: '0x8Df8f06DC2dE0434db40dcBb32a82A104218754c', - }, - PIP_MATIC: { - name: 'PIP_MATIC', - address: '0x8874964279302e6d4e523Fb1789981C39a1034Ba', - }, - PIP_WSTETH: { - name: 'PIP_WSTETH', - address: '0xFe7a2aC0B945f12089aEEB6eCebf4F384D9f043F', - }, - PIP_ADAI: { - name: 'PIP_ADAI', - address: '0x6A858592fC4cBdf432Fc9A1Bc8A0422B99330bdF', - }, - PIP_UNIV2DAIETH: { - name: 'PIP_UNIV2DAIETH', - address: '0xFc8137E1a45BAF0030563EC4F0F851bd36a85b7D', - }, - PIP_UNIV2WBTCETH: { - name: 'PIP_UNIV2WBTCETH', - address: '0x8400D2EDb8B97f780356Ef602b1BdBc082c2aD07', - }, - PIP_UNIV2USDCETH: { - name: 'PIP_UNIV2USDCETH', - address: '0xf751f24DD9cfAd885984D1bA68860F558D21E52A', - }, - PIP_UNIV2DAIUSDC: { - name: 'PIP_UNIV2DAIUSDC', - address: '0x25D03C2C928ADE19ff9f4FFECc07d991d0df054B', - }, - PIP_UNIV2ETHUSDT: { - name: 'PIP_UNIV2ETHUSDT', - address: '0x5f6dD5B421B8d92c59dC6D907C9271b1DBFE3016', - }, - PIP_UNIV2LINKETH: { - name: 'PIP_UNIV2LINKETH', - address: '0xd7d31e62AE5bfC3bfaa24Eda33e8c32D31a1746F', - }, - PIP_UNIV2UNIETH: { - name: 'PIP_UNIV2UNIETH', - address: '0x8462A88f50122782Cc96108F476deDB12248f931', - }, - PIP_UNIV2WBTCDAI: { - name: 'PIP_UNIV2WBTCDAI', - address: '0x5bB72127a196392cf4aC00Cf57aB278394d24e55', - }, - PIP_UNIV2AAVEETH: { - name: 'PIP_UNIV2AAVEETH', - address: '0x32d8416e8538Ac36272c44b0cd962cD7E0198489', - }, - PIP_UNIV2DAIUSDT: { - name: 'PIP_UNIV2DAIUSDT', - address: '0x9A1CD705dc7ac64B50777BcEcA3529E58B1292F1', - }, - PIP_GUNIV3DAIUSDC1: { - name: 'PIP_GUNIV3DAIUSDC1', - address: '0x7F6d78CC0040c87943a0e0c140De3F77a273bd58', - }, - PIP_GUNIV3DAIUSDC2: { - name: 'PIP_GUNIV3DAIUSDC2', - address: '0xcCBa43231aC6eceBd1278B90c3a44711a00F4e93', - }, - PIP_CRVV1ETHSTETH: { - name: 'PIP_CRVV1ETHSTETH', - address: '0xEa508F82728927454bd3ce853171b0e2705880D4', - }, - PIP_RWA001: { - name: 'PIP_RWA001', - address: '0x76A9f30B45F4ebFD60Ce8a1c6e963b1605f7cB6d', - }, - PIP_RWA002: { - name: 'PIP_RWA002', - address: '0xd2473237E20Bd52F8E7cE0FD79403A6a82fbAEC8', - }, - PIP_RWA003: { - name: 'PIP_RWA003', - address: '0xDeF7E88447F7D129420FC881B2a854ABB52B73B8', - }, - PIP_RWA004: { - name: 'PIP_RWA004', - address: '0x5eEE1F3d14850332A75324514CcbD2DBC8Bbc566', - }, - PIP_RWA005: { - name: 'PIP_RWA005', - address: '0x8E6039C558738eb136833aB50271ae065c700d2B', - }, - PIP_RWA006: { - name: 'PIP_RWA006', - address: '0xB8AeCF04Fdf22Ef6C0c6b6536896e1F2870C41D3', - }, - PIP_RETH: { - name: 'PIP_RETH', - address: '0xee7f0b350aa119b3d05dc733a4621a81972f7d47', - }, - PIP_GNO: { - name: 'PIP_GNO', - address: '0xd800ca44fFABecd159c7889c3bf64a217361AEc8', - }, - PIP_WETH: { - name: 'PIP_WETH', - address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763', - }, - }, - }, - automation: { - AutomationBot: { - name: 'AutomationBot', - address: '0x6E87a7A0A03E51A741075fDf4D1FCce39a4Df01b', - }, - AutomationBotV2: { - name: 'AutomationBotV2', - address: '0x5743b5606e94fb534a31e1cefb3242c8a9422e5e', - }, - AutomationBotAggregator: { - name: 'AutomationBotAggregator', - address: '0x5f1d184204775fBB351C4b2C61a2fD4aAbd3fB76', - }, - }, - ajna: { - AjnaPoolInfo: { - name: 'AjnaPoolInfo', - address: '0x154FFf344f426F99E328bacf70f4Eb632210ecdc', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.AJNA_POOL_UTILS_INFO, - }, - AjnaProxyActions: { - name: 'AjnaProxyActions', - address: '0xFBcB0bf3A7BcD1a368e8e8Ad2Ab601160088b39C', - }, - AjnaPoolPairs_ETHDAI: { - name: 'AjnaPoolPairs_ETHDAI', - address: '0x6C383DE992196d1Ac349CcdF58Ecb6026e45144E', - }, - AjnaPoolPairs_ETHUSDC: { - name: 'AjnaPoolPairs_ETHUSDC', - address: '0x1C50ce3550D1846134F3B7c09785e7005F6A1566', - }, - AjnaPoolPairs_RETHDAI: { - name: 'AjnaPoolPairs_RETHDAI', - address: '0x42d3f9C4dF0b98c3974Fd539A7EA9d0847F37Ef5', - }, - AjnaPoolPairs_RETHETH: { - name: 'AjnaPoolPairs_RETHETH', - address: '0xa2fFdC7EFeF98469d11370d91c0A17DC83EC2BDA', - }, - AjnaPoolPairs_RETHUSDC: { - name: 'AjnaPoolPairs_RETHUSDC', - address: '0xee056B440F78e692C9a49ed0640146452F881240', - }, - AjnaPoolPairs_USDCETH: { - name: 'AjnaPoolPairs_USDCETH', - address: '0x0Bc54b36d4Fa082eDe775Dd45f69FBbe360DDeb6', - }, - AjnaPoolPairs_USDCWBTC: { - name: 'AjnaPoolPairs_USDCWBTC', - address: '0x1a9Cea49DaEB8c36EA707A9171EbDF4097796dD4', - }, - AjnaPoolPairs_USDCDAI: { name: 'AjnaPoolPairs_USDCDAI', address: '' }, - AjnaPoolPairs_WBTCDAI: { - name: 'AjnaPoolPairs_WBTCDAI', - address: '0xdB30a08Ebc49af1BaF87f57824f85056cEd33d5F', - }, - AjnaPoolPairs_WBTCUSDC: { - name: 'AjnaPoolPairs_WBTCUSDC', - address: '0x65374cD7db203e0c9EA8B7DA28A25dC770bEcB9e', - }, - AjnaPoolPairs_WSTETHDAI: { - name: 'AjnaPoolPairs_WSTETHDAI', - address: '0x8519bE08b8d83baEb11eBa52A7889967dCeD9Ae0', - }, - AjnaPoolPairs_WSTETHETH: { - name: 'AjnaPoolPairs_WSTETHETH', - address: '0x37d3a44C905663d7B77C9b574b941D4FbF713A91', - }, - AjnaPoolPairs_WSTETHUSDC: { - name: 'AjnaPoolPairs_WSTETHUSDC', - address: '0xE0FFABEa66627a588EFB6C870677Baa23a53b948', - }, - AjnaPoolPairs_CBETHETH: { - name: 'AjnaPoolPairs_CBETHETH', - address: '0xad24FC773e125Edb223C38a39657cB64bc7C178e', - }, - AjnaPoolPairs_TBTCWBTC: { - name: 'AjnaPoolPairs_TBTCWBTC', - address: '0x74da6fc4e456583b88d622b19ef6addfb726c0d7', - }, - AjnaPoolPairs_TBTCUSDC: { - name: 'AjnaPoolPairs_TBTCUSDC', - address: '0xe0cdc238a7bbb2c96c57595163a8f6d2d4b42546', - }, - AjnaPoolPairs_ETHGHO: { - name: 'AjnaPoolPairs_ETHGHO', - address: '0x15838515903b3843e02f9283b4492833f138e8de', - }, - AjnaPoolPairs_WSTETHGHO: { - name: 'AjnaPoolPairs_WSTETHGHO', - address: '0x33567e358a64924b2247c490fd08d18facac4a14', - }, - AjnaPoolPairs_GHODAI: { - name: 'AjnaPoolPairs_GHODAI', - address: '0x9a98d5e8b9b2f85ca9f1566630c448a87ac7e6c4', - }, - AjnaPoolPairs_RETHGHO: { - name: 'AjnaPoolPairs_RETHGHO', - address: '0xb60f9a764b0c08053dbb187726dc9afb126e8e19', - }, - AjnaPoolPairs_WBTCGHO: { - name: 'AjnaPoolPairs_WBTCGHO', - address: '0x3fec883aaaa6896a600b99748e5d5d5c93df6aa1', - }, - AjnaPoolPairs_CBETHGHO: { - name: 'AjnaPoolPairs_CBETHGHO', - address: '0x15acb60c3b1868d6ddc6e1b9fbdcc9531547438b', - }, - AjnaPoolPairs_WLDUSDC: { - name: 'AjnaPoolPairs_WLDUSDC', - address: '0x29c1459e3fc8d4fde275bee5df5edaf984978f29', - }, - AjnaPoolPairs_USDCWLD: { - name: 'AjnaPoolPairs_USDCWLD', - address: '0xe4418e421d179d33f2f16cecef89b72e46c099bf', - }, - AjnaPoolPairs_SDAIUSDC: { - name: 'AjnaPoolPairs_SDAIUSDC', - address: '0xf4ab415e00ff0ed4f25d31d7e9140f3c75b69e7d', - }, - AjnaPoolPairs_YFIDAI: { - name: 'AjnaPoolPairs_YFIDAI', - address: '0x5b14144da6fd5e3b158d6df7b6ed8345829aab78', - }, - AjnaPoolPairs_YIELDETHETH: { - name: 'AjnaPoolPairs_YIELDETHETH', - address: '0x25d63c91a85d0a21dc84021df01a800cd3cda797', - }, - AjnaPoolPairs_YIELDBTCWBTC: { - name: 'AjnaPoolPairs_YIELDBTCWBTC', - address: '0x67a64e974bfeaded23cf479e27654d8face82126', - }, - AjnaRewardsManager: { - name: 'AjnaRewardsManager', - address: '0xaF9bc1F09fe561CbD00018fC352507fD23cD46E2', - }, - AjnaRewardsClaimer: { - name: 'AjnaRewardsClaimer', - address: '0xFb6EdFC7ADc67645423c233332efD6E6804e72F5', - }, - ERC20PoolFactory: { - name: 'ERC20PoolFactory', - address: '0xe6f4d9711121e5304b30ac2aae57e3b085ad3c4d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.ERC20_POOL_FACTORY, - }, - }, - morphoblue: { - MorphoBlue: { - name: 'MorphoBlue', - address: '0x0000000000000000000000000000000000000000', - serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, - }, - }, -} diff --git a/packages/deploy-configurations/configs/index.ts b/packages/deploy-configurations/configs/index.ts index b7ade573..b8130a8b 100644 --- a/packages/deploy-configurations/configs/index.ts +++ b/packages/deploy-configurations/configs/index.ts @@ -1,6 +1,5 @@ export { config as arbitrumConfig } from './arbitrum.conf' export { config as baseConfig } from './base.conf' -export { config as goerliConfig } from './goerli.conf' export { config as localExtendConfig } from './local-extend.conf' export { config as mainnetConfig } from './mainnet.conf' export { config as optimismConfig } from './optimism.conf' diff --git a/packages/deploy-configurations/configs/local.conf.ts b/packages/deploy-configurations/configs/local.conf.ts deleted file mode 100644 index a845abb3..00000000 --- a/packages/deploy-configurations/configs/local.conf.ts +++ /dev/null @@ -1,1274 +0,0 @@ -import { ADDRESS_ZERO, loadContractNames } from '@deploy-configurations/constants' -import { SystemConfig } from '@deploy-configurations/types/deployment-config' -import { Network } from '@deploy-configurations/types/network' - -const SERVICE_REGISTRY_NAMES = loadContractNames(Network.MAINNET) - -export const config: SystemConfig = { - mpa: { - core: { - ServiceRegistry: { - name: 'ServiceRegistry', - deploy: true, - address: '0x1c1521cf734CD13B02e8150951c3bF2B438be780', - history: [ - '0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA', - '0x5e81a7515f956ab642eb698821a449fe8fe7498e', - ], - constructorArgs: [0], - }, - OperationExecutor: { - name: 'OperationExecutor', - deploy: false, - address: '0xcA71C36D26f515AD0cce1D806B231CBC1185CdfC', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.OPERATION_EXECUTOR, - history: ['0xc1cd3654ab3b37e0bc26bafb5ae4c096892d0b0c'], - constructorArgs: ['address:ServiceRegistry'], - }, - OperationStorage: { - name: 'OperationStorage', - deploy: false, - address: '0xa67c8ED81562085894172746E9CC28b7c21F2277', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.OPERATION_STORAGE, - history: ['0x66081bcDb3760f1Bf765B4D9800d0a059BBec73F'], - constructorArgs: ['address:ServiceRegistry', 'address:OperationExecutor'], - }, - OperationsRegistry: { - name: 'OperationsRegistry', - deploy: false, - address: '0x563d2689fE89c78259dD7F694146BB93f6388A55', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.OPERATIONS_REGISTRY, - history: ['0x01871C3cCfeDE29d2b998E7D1BF0eEEBD26d9c49'], - constructorArgs: [], - }, - DSProxyFactory: { - name: 'DSProxyFactory', - deploy: false, - address: '0xA26e15C895EFc0616177B7c1e7270A4C7D51C997', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_FACTORY, - history: [], - constructorArgs: [], - }, - DSProxyRegistry: { - name: 'DSProxyRegistry', - deploy: false, - address: '0x4678f0a6958e4D2Bc4F1BAF7Bc52E8F3564f3fE4', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_REGISTRY, - history: [], - constructorArgs: ['address:DSProxyFactory'], - }, - DSGuardFactory: { - name: 'DSGuardFactory', - deploy: false, - address: '0x5a15566417e6C1c9546523066500bDDBc53F88C7', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_GUARD_FACTORY, - history: [], - constructorArgs: [], - }, - AccountGuard: { - name: 'AccountGuard', - deploy: false, - address: '0xCe91349d2A4577BBd0fC91Fe6019600e047f2847', - history: [], - constructorArgs: [], - }, - AccountFactory: { - name: 'AccountFactory', - deploy: false, - address: '0xF7B75183A2829843dB06266c114297dfbFaeE2b6', - history: [], - constructorArgs: ['address:AccountGuard'], - }, - ChainLogView: { - name: 'ChainLogView', - deploy: false, - address: '0x4B323Eb2ece7fc1D81F1819c26A7cBD29975f75f', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.CHAINLOG_VIEWER, - history: [], - constructorArgs: ['0xdA0Ab1e0017DEbCd72Be8599041a2aa3bA7e740F'], - }, - Swap: { - name: 'Swap', - deploy: false, - address: '0x826E9f2E79cEEA850dF4d4757e0D12115A720D74', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SWAP, - history: [], - constructorArgs: [], - }, - }, - actions: { - PositionCreated: { - name: 'PositionCreated', - deploy: false, - address: '0x83FF13979C0B82934C3916532453A5d6be492e2E', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.POSITION_CREATED, - history: ['0xA0Cb87300aB07D00468704cD8f016F8dE47D8E0A'], - constructorArgs: [], - }, - SwapAction: { - name: 'SwapAction', - deploy: false, - address: '0x313617D9CcBd96d66b2374c9bcB44b372D29b530', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SWAP_ACTION, - history: ['0x7E7EB65A93441a2D2Bf0941216b4c1116B554d85'], - constructorArgs: ['address:ServiceRegistry'], - }, - TakeFlashloan: { - name: 'TakeFlashloan', - deploy: false, - address: '0xbd4233fe84387b4070ef8947ae2816023fb21fed', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.TAKE_A_FLASHLOAN, - history: ['0x0eD12441616ca97F5729Fff519F5e8d13d8De15F'], - constructorArgs: [ - 'address:ServiceRegistry', - '0x6B175474E89094C44Da98b954EedeAC495271d0F', - '0x5a15566417e6C1c9546523066500bDDBc53F88C7', - ], - }, - SetApproval: { - name: 'SetApproval', - deploy: false, - address: '0x3cf2e1ccd3cb586e19382fb1fbd720df7353dba5', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SET_APPROVAL, - history: ['0xcEA79d9132d6446f0B59F194b22DB2a93dB4146c'], - constructorArgs: ['address:ServiceRegistry'], - }, - PullToken: { - name: 'PullToken', - deploy: false, - address: '0x73835b6c3179a7788df7fb6272fd69bba97907be', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.PULL_TOKEN, - history: ['0x0bE3B9c118eD4eF2002Fd58d0d8cc8f7c76e168C'], - constructorArgs: [], - }, - SendToken: { - name: 'SendToken', - deploy: false, - address: '0xbf21f58e9c0dac0c3f9b26432d875ff8146ab255', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN, - history: ['0xAa4C55A8dd5b0e923056676D544FC20bb5D5e3A3'], - constructorArgs: ['address:ServiceRegistry'], - }, - SendTokenAuto: { - name: 'SendTokenAuto', - deploy: false, - address: '', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, - history: [], - constructorArgs: ['address:ServiceRegistry'], - }, - WrapEth: { - name: 'WrapEth', - deploy: false, - address: '0x50db3ff917002c57e1494c376851620747aeba0b', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WRAP_ETH, - history: ['0xafdD2e556Cef33C5C0033beB76E09b7Bd8d14Dec'], - constructorArgs: ['address:ServiceRegistry'], - }, - UnwrapEth: { - name: 'UnwrapEth', - deploy: false, - address: '0xc394d69580BA02baF457a47478E00A3f27a00B1a', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.UNWRAP_ETH, - history: ['0xAC0B1652388Ea425884e6b60e2eD30155f43D50b'], - constructorArgs: ['address:ServiceRegistry'], - }, - ReturnFunds: { - name: 'ReturnFunds', - deploy: false, - address: '0xce74169AF94f67eB0eC48D5151012943fCa11Db4', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.RETURN_FUNDS, - history: ['0x645325494A37d35cf6baFc82C3e6bcE4473F2685'], - constructorArgs: [], - }, - AaveBorrow: { - name: 'AaveBorrow', - deploy: false, - address: '0x0199E5B28FeFeDe94CfC7ec754e58F173219b4Cf', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.BORROW, - history: ['0x6166B1587be6B954e660A71e4B083A5e0a5bF1b6'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveWithdraw: { - name: 'AaveWithdraw', - deploy: false, - address: '0x7833fE8d3614a8248fd4762eE7FdFa9Bb24C0Ce9', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WITHDRAW, - history: ['0xECf6CaB5cD20F5f889e95A1A40d46607aa0F41Cf'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveDeposit: { - name: 'AaveDeposit', - deploy: false, - address: '0xFdE9C559F877ff48350710946fe978dD16Ad35E9', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.DEPOSIT, - history: ['0xFAf9D0B7B92e8B281CaF10b42970179B45CA6412'], - constructorArgs: ['address:ServiceRegistry'], - }, - AavePayback: { - name: 'AavePayback', - deploy: false, - address: '0x45A19f6cea7aF9DF2833B0ce859616B10f6ADC7A', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.PAYBACK, - history: ['0xeB54C366512c4d59A222A251ea7316568859E08C'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Borrow: { - name: 'AaveV3Borrow', - deploy: false, - address: '0x8a8c9Bad73369Fc12e6BF1EA09c76d37466C08d8', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.BORROW, - history: ['0x18ca8bE41D32727383bC0F98705f7662ed0B7E28'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Withdraw: { - name: 'AaveV3Withdraw', - deploy: false, - address: '0xDA39737E1b15619D6eAC2eeFa2990277c9898ACE', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.WITHDRAW, - history: ['0x414958801DC53E840501f507D7A0FEBE55806200'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Deposit: { - name: 'AaveV3Deposit', - deploy: false, - address: '0xf70895f820551d5596A1c6Dd0999153d04FBC889', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.DEPOSIT, - history: ['0x852c56859840487DcED2aF501fC06f7462C4f2a8'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3Payback: { - name: 'AaveV3Payback', - deploy: false, - address: '0xeAc4F77ddA4Fe5396674a69a7f7865d87Fd7D5d1', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.PAYBACK, - history: ['0xdB736d13CE851Ee81ac2109DF37EBAb8Ce525C42'], - constructorArgs: ['address:ServiceRegistry'], - }, - AaveV3SetEMode: { - name: 'AaveV3SetEMode', - deploy: false, - address: '0xc6630a586211c3e47527e687Bd07fAE504149116', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.SET_EMODE, - history: ['0xd4DB3799DEe98Fe752d952Ba6F84Bb99Af829920'], - constructorArgs: ['address:ServiceRegistry'], - }, - AjnaDepositBorrow: { - name: 'AjnaDepositBorrow', - deploy: true, - address: '', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.DEPOSIT_BORROW, - history: [ - '0xE724a3Aadc44A5350Fb0e002Be4765A5990Db474', - '0x00C583EF1cae9fA955B58f0C86a5DC8195a816a2', - '0x8e6cbe512961F31d233c1117fbE2192b5a9a219c', - '0x0a2dBc0e3DFcdC2B95738244CB1fc61A73757584', - '0xeEE0790359d154915806856d59f4B4d4Bc27A61F', - '0x92819270316ee747A2534BFE6f8D352C9E449182', - ], - constructorArgs: ['address:ServiceRegistry'], - }, - AjnaRepayWithdraw: { - name: 'AjnaRepayWithdraw', - deploy: true, - address: '', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.REPAY_WITHDRAW, - history: [ - '0xEb84CC72e291822E2633C91Ac3221E3C3c6d0EC0', - '0x16C0E833a3fd052799F0d9Df48982AF3E20d2a9A', - '0xc320C39D0c59E6f4F0237109807f2ac5525Da600', - '0xF48663CE0879C77602AE126C0601669AB9Ffd373', - '0x0F7e0c7aE197f62221e65dAEe2B31546f569C9E6', - '0xff3D51d6Fdb5e0809E08BD9c3FBfb9fe71Bd2eF7', - ], - constructorArgs: ['address:ServiceRegistry'], - }, - }, - }, - common: { - GnosisSafe: { - name: 'GnosisSafe', - address: '0x0000000000000000000000000000000000000000', - }, - UniswapRouterV3: { - name: 'UniswapRouterV3', - address: '0xe592427a0aece92de3edee1f18e0157c05861564', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.UNISWAP_ROUTER, - }, - BalancerVault: { - name: 'BalancerVault', - address: '0xBA12222222228d8Ba445958a75a0704d566BF2C8', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.BALANCER_VAULT, - }, - OneInchAggregator: { - name: 'OneInchAggregator', - address: '0x1111111254fb6c44bac0bed2854e76f90643097d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR, - }, - AuthorizedCaller: { - name: 'AuthorizedCaller', - address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc', - }, - FeeRecipient: { - name: 'FeeRecipient', - address: '0xC7b548AD9Cf38721810246C079b2d8083aba8909', - }, - MerkleRedeemer: { - name: 'MerkleRedeemer', - address: '0xd9fabf81Ed15ea71FBAd0C1f77529a4755a38054', - }, - DssCharter: { name: 'DssCharter', address: '0x0000123' }, - DssProxyActions: { - name: 'DssProxyActions', - address: '0x82ecD135Dce65Fbc6DbdD0e4237E0AF93FFD5038', - }, - DssProxyActionsCharter: { name: 'DssProxyActionsCharter', address: '0x0000' }, - DssMultiplyProxyActions: { - name: 'DssMultiplyProxyActions', - address: '0x2a49eae5cca3f050ebec729cf90cc910fadaf7a2', - }, - DssCropper: { - name: 'DssCropper', - address: '0x8377CD01a5834a6EaD3b7efb482f678f2092b77e', - }, - DssProxyActionsCropjoin: { - name: 'DssProxyActionsCropjoin', - address: '0xa2f69F8B9B341CFE9BfBb3aaB5fe116C89C95bAF', - }, - DssProxyActionsDsr: { - name: 'DssProxyActionsDsr', - address: '0x07ee93aEEa0a36FfF2A9B95dd22Bd6049EE54f26', - }, - Otc: { - name: 'Otc', - address: '0x794e6e91555438aFc3ccF1c5076A74F42133d08D', - }, - OtcSupportMethods: { - name: 'OtcSupportMethods', - address: '0x9b3f075b12513afe56ca2ed838613b7395f57839', - }, - ServiceRegistry: { - name: 'ServiceRegistry', - address: '0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA', - }, - GuniProxyActions: { - name: 'GuniProxyActions', - address: '0xed3a954c0adfc8e3f85d92729c051ff320648e30', - }, - GuniResolver: { - name: 'GuniResolver', - address: '0x0317650Af6f184344D7368AC8bB0bEbA5EDB214a', - }, - GuniRouter: { - name: 'GuniRouter', - address: '0x14E6D67F824C3a7b4329d3228807f8654294e4bd', - }, - CdpRegistry: { - name: 'CdpRegistry', - address: '0xBe0274664Ca7A68d6b5dF826FB3CcB7c620bADF3', - }, - DefaultExchange: { - name: 'DefaultExchange', - address: '0xb5eB8cB6cED6b6f8E13bcD502fb489Db4a726C7B', - }, - NoFeesExchange: { - name: 'NoFeesExchange', - address: '0x99e4484dac819aa74b347208752306615213d324', - }, - LowerFeesExchange: { - name: 'LowerFeesExchange', - address: '0xf22f17b1d2354b4f4f52e4d164e4eb5e1f0a6ba6', - }, - LidoCrvLiquidityFarmingReward: { - name: 'LidoCrvLiquidityFarmingReward', - address: '0x99ac10631f69c753ddb595d074422a0922d9056b', - }, - ChainlinkPriceOracle_USDCUSD: { - name: 'ChainlinkPriceOracle_USDCUSD', - address: '0x99ac10631f69c753ddb595d074422a0922d9056b', - }, - ChainlinkPriceOracle_ETHUSD: { - name: 'ChainlinkPriceOracle_ETHUSD', - address: '0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419', - }, - SdaiOracle: { - name: 'SdaiOracle', - address: '0xb9E6DBFa4De19CCed908BcbFe1d015190678AB5f', - }, - AAVE: { - name: 'AAVE', - address: '0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9', - }, - ADAI: { - name: 'ADAI', - address: '0x028171bCA77440897B824Ca71D1c56caC55b68A3', - }, - BAL: { - name: 'BAL', - address: '0xba100000625a3754423978a60c9317c58a424e3D', - }, - BAT: { - name: 'BAT', - address: '0x0D8775F648430679A709E98d2b0Cb6250d2887EF', - }, - CBETH: { - name: 'CBETH', - address: '0xbe9895146f7af43049ca1c1ae358b0541ea49704', - }, - COMP: { - name: 'COMP', - address: '0xc00e94Cb662C3520282E6f5717214004A7f26888', - }, - CRVV1ETHSTETH: { - name: 'CRVV1ETHSTETH', - address: '0x06325440D014e39736583c165C2963BA99fAf14E', - }, - DAI: { - name: 'DAI', - address: '0x6B175474E89094C44Da98b954EedeAC495271d0F', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DAI, - }, - ETH: { - name: 'ETH', - address: '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE', - }, - FRAX: { - name: 'FRAX', - address: '0x853d955acef822db058eb8505911ed77f175b99e', - }, - GHO: { - name: 'GHO', - address: '0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f', - }, - GNO: { - name: 'GNO', - address: '0x6810e776880C02933D47DB1b9fc05908e5386b96', - }, - GUNIV3DAIUSDC1: { - name: 'GUNIV3DAIUSDC1', - address: '0xAbDDAfB225e10B90D798bB8A886238Fb835e2053', - }, - GUNIV3DAIUSDC2: { - name: 'GUNIV3DAIUSDC2', - address: '0x50379f632ca68D36E50cfBC8F78fe16bd1499d1e', - }, - GUSD: { - name: 'GUSD', - address: '0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd', - }, - KNC: { - name: 'KNC', - address: '0xdd974D5C2e2928deA5F71b9825b8b646686BD200', - }, - LDO: { - name: 'LDO', - address: '0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32', - }, - LINK: { - name: 'LINK', - address: '0x514910771AF9Ca656af840dff83E8264EcF986CA', - }, - LRC: { - name: 'LRC', - address: '0xBBbbCA6A901c926F240b89EacB641d8Aec7AEafD', - }, - LUSD: { - name: 'LUSD', - address: '0x5f98805A4E8be255a32880FDeC7F6728C6568bA0', - }, - MANA: { - name: 'MANA', - address: '0x0F5D2fB29fb7d3CFeE444a200298f468908cC942', - }, - MATIC: { - name: 'MATIC', - address: '0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0', - }, - PAX: { - name: 'PAX', - address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1', - }, - PAXUSD: { - name: 'PAXUSD', - address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1', - }, - RENBTC: { - name: 'RENBTC', - address: '0xEB4C2781e4ebA804CE9a9803C67d0893436bB27D', - }, - RETH: { - name: 'RETH', - address: '0xae78736cd615f374d3085123a210448e74fc6393', - }, - RWA001: { - name: 'RWA001', - address: '0x10b2aA5D77Aa6484886d8e244f0686aB319a270d', - }, - RWA002: { - name: 'RWA002', - address: '0xAAA760c2027817169D7C8DB0DC61A2fb4c19AC23', - }, - RWA003: { - name: 'RWA003', - address: '0x07F0A80aD7AeB7BfB7f139EA71B3C8f7E17156B9', - }, - RWA004: { - name: 'RWA004', - address: '0x873F2101047A62F84456E3B2B13df2287925D3F9', - }, - RWA005: { - name: 'RWA005', - address: '0x6DB236515E90fC831D146f5829407746EDdc5296', - }, - RWA006: { - name: 'RWA006', - address: '0x4EE03cfBF6E784c462839f5954d60f7C2B60b113', - }, - SDAI: { name: 'SDAI', address: '0x83f20f44975d03b1b09e64809b757c47f942beea' }, - STETH: { - name: 'STETH', - address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.STETH, - }, - TBTC: { - name: 'TBTC', - address: '0x18084fbA666a33d37592fA2633fD49a74DD93a88', - }, - TUSD: { - name: 'TUSD', - address: '0x0000000000085d4780B73119b644AE5ecd22b376', - }, - UNI: { - name: 'UNI', - address: '0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984', - }, - UNIV2AAVEETH: { - name: 'UNIV2AAVEETH', - address: '0xDFC14d2Af169B0D36C4EFF567Ada9b2E0CAE044f', - }, - UNIV2DAIETH: { - name: 'UNIV2DAIETH', - address: '0xA478c2975Ab1Ea89e8196811F51A7B7Ade33eB11', - }, - UNIV2DAIUSDC: { - name: 'UNIV2DAIUSDC', - address: '0xAE461cA67B15dc8dc81CE7615e0320dA1A9aB8D5', - }, - UNIV2DAIUSDT: { - name: 'UNIV2DAIUSDT', - address: '0xB20bd5D04BE54f870D5C0d3cA85d82b34B836405', - }, - UNIV2ETHUSDT: { - name: 'UNIV2ETHUSDT', - address: '0x0d4a11d5EEaaC28EC3F61d100daF4d40471f1852', - }, - UNIV2LINKETH: { - name: 'UNIV2LINKETH', - address: '0xa2107FA5B38d9bbd2C461D6EDf11B11A50F6b974', - }, - UNIV2UNIETH: { - name: 'UNIV2UNIETH', - address: '0xd3d2E2692501A5c9Ca623199D38826e513033a17', - }, - UNIV2USDCETH: { - name: 'UNIV2USDCETH', - address: '0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc', - }, - UNIV2WBTCDAI: { - name: 'UNIV2WBTCDAI', - address: '0x231B7589426Ffe1b75405526fC32aC09D44364c4', - }, - UNIV2WBTCETH: { - name: 'UNIV2WBTCETH', - address: '0xBb2b8038a1640196FbE3e38816F3e67Cba72D940', - }, - USDC: { - name: 'USDC', - address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC, - }, - USDBC: { - name: 'USDBC', - address: '0x0000000000000000000000000000000000000000', - }, - USDT: { - name: 'USDT', - address: '0xdAC17F958D2ee523a2206206994597C13D831ec7', - }, - WBTC: { - name: 'WBTC', - address: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WBTC, - }, - WETH: { - name: 'WETH', - address: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WETH, - }, - WLD: { - name: 'WLD', - address: '0x163f8c2467924be0ae7b5347228cabf260318753', - }, - WSTETH: { - name: 'WSTETH', - address: '0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WSTETH, - }, - YIELDBTC: { - name: 'YIELDBTC', - address: '0x0274a704a6d9129f90a62ddc6f6024b33ecdad36', - }, - YIELDETH: { - name: 'YIELDETH', - address: '0xb5b29320d2dde5ba5bafa1ebcd270052070483ec', - }, - YFI: { - name: 'YFI', - address: '0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e', - }, - ZRX: { - name: 'ZRX', - address: '0xE41d2489571d322189246DaFA5ebDe1F4699F498', - }, - }, - aave: { - v2: { - Oracle: { - name: 'Oracle', - address: '0xa50ba011c48153de246e5192c8f9258a2ba79ca9', - }, - LendingPool: { - name: 'LendingPool', - address: '0x7d2768dE32b0b80b7a3454c06BdAc94A69DDc7A9', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.LENDING_POOL, - }, - PoolDataProvider: { - name: 'PoolDataProvider', - address: '0x057835Ad21a177dbdd3090bB1CAE03EaCF78Fc6d', - }, - WETHGateway: { - name: 'WETHGateway', - address: '0xcc9a0B7c43DC2a5F023Bb9b738E45B0Ef6B06E04', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WETH_GATEWAY, - }, - }, - v3: { - Oracle: { - name: 'Oracle', - address: '0x54586bE62E3c3580375aE3723C145253060Ca0C2', - }, - LendingPool: { - name: 'LendingPool', - address: '0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.AAVE_POOL, - }, - PoolDataProvider: { - name: 'PoolDataProvider', - address: '0x7B4EB56E7CD4b454BA8ff71E4518426369a138a3', - }, - L2Encoder: { - name: 'L2Encoder', - address: '0x0000000000000000000000000000000000000000', - }, - }, - }, - spark: {}, - maker: { - common: { - FlashMintModule: { - name: 'FlashMintModule', - address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA', - serviceRegistryName: SERVICE_REGISTRY_NAMES.maker.FLASH_MINT_MODULE, - }, - Chainlog: { - name: 'Chainlog', - address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA', - }, - CdpManager: { - name: 'CdpManager', - address: '0x5ef30b9986345249bc32d8928B7ee64DE9435E39', - }, - GetCdps: { - name: 'GetCdps', - address: '0x36a724Bd100c39f0Ea4D3A20F7097eE01A8Ff573', - }, - Jug: { - name: 'Jug', - address: '0x19c0976f590D67707E62397C87829d896Dc0f1F1', - }, - Pot: { - name: 'Pot', - address: '0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7', - }, - End: { - name: 'End', - address: '0xBB856d1742fD182a90239D7AE85706C2FE4e5922', - }, - Spot: { - name: 'Spot', - address: '0x65C79fcB50Ca1594B025960e539eD7A9a6D434A3', - }, - Dog: { - name: 'Dog', - address: '0x135954d155898D42C90D2a57824C690e0c7BEf1B', - }, - Vat: { - name: 'Vat', - address: '0x35D1b3F3D7966A1DFe207aa4514C12a259A0492B', - }, - McdGov: { - name: 'McdGov', - address: '0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2', - }, - }, - joins: { - MCD_JOIN_DAI: { - name: 'MCD_JOIN_DAI', - address: '0x9759A6Ac90977b93B58547b4A71c78317f391A28', - }, - MCD_JOIN_ETH_A: { - name: 'MCD_JOIN_ETH_A', - address: '0x2F0b23f53734252Bda2277357e97e1517d6B042A', - }, - MCD_JOIN_ETH_B: { - name: 'MCD_JOIN_ETH_B', - address: '0x08638eF1A205bE6762A8b935F5da9b700Cf7322c', - }, - MCD_JOIN_ETH_C: { - name: 'MCD_JOIN_ETH_C', - address: '0xF04a5cC80B1E94C69B48f5ee68a08CD2F09A7c3E', - }, - MCD_JOIN_BAT_A: { - name: 'MCD_JOIN_BAT_A', - address: '0x3D0B1912B66114d4096F48A8CEe3A56C231772cA', - }, - MCD_JOIN_USDC_A: { - name: 'MCD_JOIN_USDC_A', - address: '0xA191e578a6736167326d05c119CE0c90849E84B7', - }, - MCD_JOIN_USDC_B: { - name: 'MCD_JOIN_USDC_B', - address: '0x2600004fd1585f7270756DDc88aD9cfA10dD0428', - }, - MCD_JOIN_PSM_USDC_A: { - name: 'MCD_JOIN_PSM_USDC_A', - address: '0x0A59649758aa4d66E25f08Dd01271e891fe52199', - }, - MCD_JOIN_WBTC_A: { - name: 'MCD_JOIN_WBTC_A', - address: '0xBF72Da2Bd84c5170618Fbe5914B0ECA9638d5eb5', - }, - MCD_JOIN_WBTC_B: { - name: 'MCD_JOIN_WBTC_B', - address: '0xfA8c996e158B80D77FbD0082BB437556A65B96E0', - }, - MCD_JOIN_WBTC_C: { - name: 'MCD_JOIN_WBTC_C', - address: '0x7f62f9592b823331E012D3c5DdF2A7714CfB9de2', - }, - MCD_JOIN_TUSD_A: { - name: 'MCD_JOIN_TUSD_A', - address: '0x4454aF7C8bb9463203b66C816220D41ED7837f44', - }, - MCD_JOIN_ZRX_A: { - name: 'MCD_JOIN_ZRX_A', - address: '0xc7e8Cd72BDEe38865b4F5615956eF47ce1a7e5D0', - }, - MCD_JOIN_KNC_A: { - name: 'MCD_JOIN_KNC_A', - address: '0x475F1a89C1ED844A08E8f6C50A00228b5E59E4A9', - }, - MCD_JOIN_MANA_A: { - name: 'MCD_JOIN_MANA_A', - address: '0xA6EA3b9C04b8a38Ff5e224E7c3D6937ca44C0ef9', - }, - MCD_JOIN_USDT_A: { - name: 'MCD_JOIN_USDT_A', - address: '0x0Ac6A1D74E84C2dF9063bDDc31699FF2a2BB22A2', - }, - MCD_JOIN_PAXUSD_A: { - name: 'MCD_JOIN_PAXUSD_A', - address: '0x7e62B7E279DFC78DEB656E34D6a435cC08a44666', - }, - MCD_JOIN_PSM_PAX_A: { - name: 'MCD_JOIN_PSM_PAX_A', - address: '0x7bbd8cA5e413bCa521C2c80D8d1908616894Cf21', - }, - MCD_JOIN_COMP_A: { - name: 'MCD_JOIN_COMP_A', - address: '0xBEa7cDfB4b49EC154Ae1c0D731E4DC773A3265aA', - }, - MCD_JOIN_LRC_A: { - name: 'MCD_JOIN_LRC_A', - address: '0x6C186404A7A238D3d6027C0299D1822c1cf5d8f1', - }, - MCD_JOIN_LINK_A: { - name: 'MCD_JOIN_LINK_A', - address: '0xdFccAf8fDbD2F4805C174f856a317765B49E4a50', - }, - MCD_JOIN_BAL_A: { - name: 'MCD_JOIN_BAL_A', - address: '0x4a03Aa7fb3973d8f0221B466EefB53D0aC195f55', - }, - MCD_JOIN_YFI_A: { - name: 'MCD_JOIN_YFI_A', - address: '0x3ff33d9162aD47660083D7DC4bC02Fb231c81677', - }, - MCD_JOIN_GUSD_A: { - name: 'MCD_JOIN_GUSD_A', - address: '0xe29A14bcDeA40d83675aa43B72dF07f649738C8b', - }, - MCD_JOIN_PSM_GUSD_A: { - name: 'MCD_JOIN_PSM_GUSD_A', - address: '0x79A0FA989fb7ADf1F8e80C93ee605Ebb94F7c6A5', - }, - MCD_JOIN_UNI_A: { - name: 'MCD_JOIN_UNI_A', - address: '0x3BC3A58b4FC1CbE7e98bB4aB7c99535e8bA9b8F1', - }, - MCD_JOIN_RENBTC_A: { - name: 'MCD_JOIN_RENBTC_A', - address: '0xFD5608515A47C37afbA68960c1916b79af9491D0', - }, - MCD_JOIN_AAVE_A: { - name: 'MCD_JOIN_AAVE_A', - address: '0x24e459F61cEAa7b1cE70Dbaea938940A7c5aD46e', - }, - MCD_JOIN_MATIC_A: { - name: 'MCD_JOIN_MATIC_A', - address: '0x885f16e177d45fC9e7C87e1DA9fd47A9cfcE8E13', - }, - MCD_JOIN_WSTETH_A: { - name: 'MCD_JOIN_WSTETH_A', - address: '0x10CD5fbe1b404B7E19Ef964B63939907bdaf42E2', - }, - MCD_JOIN_WSTETH_B: { - name: 'MCD_JOIN_WSTETH_B', - address: '0x248cCBf4864221fC0E840F29BB042ad5bFC89B5c', - }, - MCD_JOIN_DIRECT_AAVEV2_DAI: { - name: 'MCD_JOIN_DIRECT_AAVEV2_DAI', - address: '0xa13C0c8eB109F5A13c6c90FC26AFb23bEB3Fb04a', - }, - MCD_JOIN_UNIV2DAIETH_A: { - name: 'MCD_JOIN_UNIV2DAIETH_A', - address: '0x2502F65D77cA13f183850b5f9272270454094A08', - }, - MCD_JOIN_UNIV2WBTCETH_A: { - name: 'MCD_JOIN_UNIV2WBTCETH_A', - address: '0xDc26C9b7a8fe4F5dF648E314eC3E6Dc3694e6Dd2', - }, - MCD_JOIN_UNIV2USDCETH_A: { - name: 'MCD_JOIN_UNIV2USDCETH_A', - address: '0x03Ae53B33FeeAc1222C3f372f32D37Ba95f0F099', - }, - MCD_JOIN_UNIV2DAIUSDC_A: { - name: 'MCD_JOIN_UNIV2DAIUSDC_A', - address: '0xA81598667AC561986b70ae11bBE2dd5348ed4327', - }, - MCD_JOIN_UNIV2ETHUSDT_A: { - name: 'MCD_JOIN_UNIV2ETHUSDT_A', - address: '0x4aAD139a88D2dd5e7410b408593208523a3a891d', - }, - MCD_JOIN_UNIV2LINKETH_A: { - name: 'MCD_JOIN_UNIV2LINKETH_A', - address: '0xDae88bDe1FB38cF39B6A02b595930A3449e593A6', - }, - MCD_JOIN_UNIV2UNIETH_A: { - name: 'MCD_JOIN_UNIV2UNIETH_A', - address: '0xf11a98339FE1CdE648e8D1463310CE3ccC3d7cC1', - }, - MCD_JOIN_UNIV2WBTCDAI_A: { - name: 'MCD_JOIN_UNIV2WBTCDAI_A', - address: '0xD40798267795Cbf3aeEA8E9F8DCbdBA9b5281fcC', - }, - MCD_JOIN_UNIV2AAVEETH_A: { - name: 'MCD_JOIN_UNIV2AAVEETH_A', - address: '0x42AFd448Df7d96291551f1eFE1A590101afB1DfF', - }, - MCD_JOIN_UNIV2DAIUSDT_A: { - name: 'MCD_JOIN_UNIV2DAIUSDT_A', - address: '0xAf034D882169328CAf43b823a4083dABC7EEE0F4', - }, - MCD_JOIN_GUNIV3DAIUSDC1_A: { - name: 'MCD_JOIN_GUNIV3DAIUSDC1_A', - address: '0xbFD445A97e7459b0eBb34cfbd3245750Dba4d7a4', - }, - MCD_JOIN_GUNIV3DAIUSDC2_A: { - name: 'MCD_JOIN_GUNIV3DAIUSDC2_A', - address: '0xA7e4dDde3cBcEf122851A7C8F7A55f23c0Daf335', - }, - MCD_JOIN_CRVV1ETHSTETH_A: { - name: 'MCD_JOIN_CRVV1ETHSTETH_A', - address: '0x82D8bfDB61404C796385f251654F6d7e92092b5D', - }, - MCD_JOIN_RWA001_A: { - name: 'MCD_JOIN_RWA001_A', - address: '0x476b81c12Dc71EDfad1F64B9E07CaA60F4b156E2', - }, - MCD_JOIN_RWA002_A: { - name: 'MCD_JOIN_RWA002_A', - address: '0xe72C7e90bc26c11d45dBeE736F0acf57fC5B7152', - }, - MCD_JOIN_RWA003_A: { - name: 'MCD_JOIN_RWA003_A', - address: '0x1Fe789BBac5b141bdD795A3Bc5E12Af29dDB4b86', - }, - MCD_JOIN_RWA004_A: { - name: 'MCD_JOIN_RWA004_A', - address: '0xD50a8e9369140539D1c2D113c4dC1e659c6242eB', - }, - MCD_JOIN_RWA005_A: { - name: 'MCD_JOIN_RWA005_A', - address: '0xA4fD373b93aD8e054970A3d6cd4Fd4C31D08192e', - }, - MCD_JOIN_RWA006_A: { - name: 'MCD_JOIN_RWA006_A', - address: '0x5E11E34b6745FeBa9449Ae53c185413d6EdC66BE', - }, - MCD_JOIN_RETH_A: { - name: 'MCD_JOIN_RETH_A', - address: '0xc6424e862f1462281b0a5fac078e4b63006bdebf', - }, - MCD_JOIN_GNO_A: { - name: 'MCD_JOIN_GNO_A', - address: '0x7bD3f01e24E0f0838788bC8f573CEA43A80CaBB5', - }, - }, - pips: { - PIP_ETH: { - name: 'PIP_ETH', - address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763', - }, - PIP_BAT: { - name: 'PIP_BAT', - address: '0xB4eb54AF9Cc7882DF0121d26c5b97E802915ABe6', - }, - PIP_USDC: { - name: 'PIP_USDC', - address: '0x77b68899b99b686F415d074278a9a16b336085A0', - }, - PIP_WBTC: { - name: 'PIP_WBTC', - address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42', - }, - PIP_TUSD: { - name: 'PIP_TUSD', - address: '0xeE13831ca96d191B688A670D47173694ba98f1e5', - }, - PIP_ZRX: { - name: 'PIP_ZRX', - address: '0x7382c066801E7Acb2299aC8562847B9883f5CD3c', - }, - PIP_KNC: { - name: 'PIP_KNC', - address: '0xf36B79BD4C0904A5F350F1e4f776B81208c13069', - }, - PIP_MANA: { - name: 'PIP_MANA', - address: '0x8067259EA630601f319FccE477977E55C6078C13', - }, - PIP_USDT: { - name: 'PIP_USDT', - address: '0x7a5918670B0C390aD25f7beE908c1ACc2d314A3C', - }, - PIP_PAXUSD: { - name: 'PIP_PAXUSD', - address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC', - }, - PIP_PAX: { - name: 'PIP_PAX', - address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC', - }, - PIP_COMP: { - name: 'PIP_COMP', - address: '0xBED0879953E633135a48a157718Aa791AC0108E4', - }, - PIP_LRC: { - name: 'PIP_LRC', - address: '0x9eb923339c24c40Bef2f4AF4961742AA7C23EF3a', - }, - PIP_LINK: { - name: 'PIP_LINK', - address: '0x9B0C694C6939b5EA9584e9b61C7815E8d97D9cC7', - }, - PIP_BAL: { - name: 'PIP_BAL', - address: '0x3ff860c0F28D69F392543A16A397D0dAe85D16dE', - }, - PIP_YFI: { - name: 'PIP_YFI', - address: '0x5F122465bCf86F45922036970Be6DD7F58820214', - }, - PIP_GUSD: { - name: 'PIP_GUSD', - address: '0xf45Ae69CcA1b9B043dAE2C83A5B65Bc605BEc5F5', - }, - PIP_UNI: { - name: 'PIP_UNI', - address: '0xf363c7e351C96b910b92b45d34190650df4aE8e7', - }, - PIP_RENBTC: { - name: 'PIP_RENBTC', - address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42', - }, - PIP_AAVE: { - name: 'PIP_AAVE', - address: '0x8Df8f06DC2dE0434db40dcBb32a82A104218754c', - }, - PIP_MATIC: { - name: 'PIP_MATIC', - address: '0x8874964279302e6d4e523Fb1789981C39a1034Ba', - }, - PIP_WSTETH: { - name: 'PIP_WSTETH', - address: '0xFe7a2aC0B945f12089aEEB6eCebf4F384D9f043F', - }, - PIP_ADAI: { - name: 'PIP_ADAI', - address: '0x6A858592fC4cBdf432Fc9A1Bc8A0422B99330bdF', - }, - PIP_UNIV2DAIETH: { - name: 'PIP_UNIV2DAIETH', - address: '0xFc8137E1a45BAF0030563EC4F0F851bd36a85b7D', - }, - PIP_UNIV2WBTCETH: { - name: 'PIP_UNIV2WBTCETH', - address: '0x8400D2EDb8B97f780356Ef602b1BdBc082c2aD07', - }, - PIP_UNIV2USDCETH: { - name: 'PIP_UNIV2USDCETH', - address: '0xf751f24DD9cfAd885984D1bA68860F558D21E52A', - }, - PIP_UNIV2DAIUSDC: { - name: 'PIP_UNIV2DAIUSDC', - address: '0x25D03C2C928ADE19ff9f4FFECc07d991d0df054B', - }, - PIP_UNIV2ETHUSDT: { - name: 'PIP_UNIV2ETHUSDT', - address: '0x5f6dD5B421B8d92c59dC6D907C9271b1DBFE3016', - }, - PIP_UNIV2LINKETH: { - name: 'PIP_UNIV2LINKETH', - address: '0xd7d31e62AE5bfC3bfaa24Eda33e8c32D31a1746F', - }, - PIP_UNIV2UNIETH: { - name: 'PIP_UNIV2UNIETH', - address: '0x8462A88f50122782Cc96108F476deDB12248f931', - }, - PIP_UNIV2WBTCDAI: { - name: 'PIP_UNIV2WBTCDAI', - address: '0x5bB72127a196392cf4aC00Cf57aB278394d24e55', - }, - PIP_UNIV2AAVEETH: { - name: 'PIP_UNIV2AAVEETH', - address: '0x32d8416e8538Ac36272c44b0cd962cD7E0198489', - }, - PIP_UNIV2DAIUSDT: { - name: 'PIP_UNIV2DAIUSDT', - address: '0x9A1CD705dc7ac64B50777BcEcA3529E58B1292F1', - }, - PIP_GUNIV3DAIUSDC1: { - name: 'PIP_GUNIV3DAIUSDC1', - address: '0x7F6d78CC0040c87943a0e0c140De3F77a273bd58', - }, - PIP_GUNIV3DAIUSDC2: { - name: 'PIP_GUNIV3DAIUSDC2', - address: '0xcCBa43231aC6eceBd1278B90c3a44711a00F4e93', - }, - PIP_CRVV1ETHSTETH: { - name: 'PIP_CRVV1ETHSTETH', - address: '0xEa508F82728927454bd3ce853171b0e2705880D4', - }, - PIP_RWA001: { - name: 'PIP_RWA001', - address: '0x76A9f30B45F4ebFD60Ce8a1c6e963b1605f7cB6d', - }, - PIP_RWA002: { - name: 'PIP_RWA002', - address: '0xd2473237E20Bd52F8E7cE0FD79403A6a82fbAEC8', - }, - PIP_RWA003: { - name: 'PIP_RWA003', - address: '0xDeF7E88447F7D129420FC881B2a854ABB52B73B8', - }, - PIP_RWA004: { - name: 'PIP_RWA004', - address: '0x5eEE1F3d14850332A75324514CcbD2DBC8Bbc566', - }, - PIP_RWA005: { - name: 'PIP_RWA005', - address: '0x8E6039C558738eb136833aB50271ae065c700d2B', - }, - PIP_RWA006: { - name: 'PIP_RWA006', - address: '0xB8AeCF04Fdf22Ef6C0c6b6536896e1F2870C41D3', - }, - PIP_RETH: { - name: 'PIP_RETH', - address: '0xee7f0b350aa119b3d05dc733a4621a81972f7d47', - }, - PIP_GNO: { - name: 'PIP_GNO', - address: '0xd800ca44fFABecd159c7889c3bf64a217361AEc8', - }, - PIP_WETH: { - name: 'PIP_WETH', - address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763', - }, - }, - }, - automation: { - AutomationBot: { - name: 'AutomationBot', - address: '0x6E87a7A0A03E51A741075fDf4D1FCce39a4Df01b', - }, - AutomationBotV2: { - name: 'AutomationBotV2', - address: '0x5743b5606e94fb534a31e1cefb3242c8a9422e5e', - }, - AutomationBotAggregator: { - name: 'AutomationBotAggregator', - address: '0x5f1d184204775fBB351C4b2C61a2fD4aAbd3fB76', - }, - }, - ajna: { - AjnaPoolInfo: { - name: 'AjnaPoolInfo', - address: ADDRESS_ZERO, - }, - AjnaProxyActions: { - name: 'AjnaProxyActions', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_ETHDAI: { - name: 'AjnaPoolPairs_ETHDAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_ETHUSDC: { - name: 'AjnaPoolPairs_ETHUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_RETHDAI: { - name: 'AjnaPoolPairs_RETHDAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_RETHETH: { - name: 'AjnaPoolPairs_RETHETH', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_RETHUSDC: { - name: 'AjnaPoolPairs_RETHUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_USDCETH: { - name: 'AjnaPoolPairs_USDCETH', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_USDCDAI: { name: 'AjnaPoolPairs_USDCDAI', address: '' }, - AjnaPoolPairs_USDCWBTC: { - name: 'AjnaPoolPairs_USDCWBTC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WBTCDAI: { - name: 'AjnaPoolPairs_WBTCDAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WBTCUSDC: { - name: 'AjnaPoolPairs_WBTCUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WSTETHDAI: { - name: 'AjnaPoolPairs_WSTETHDAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WSTETHETH: { - name: 'AjnaPoolPairs_WSTETHETH', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WSTETHUSDC: { - name: 'AjnaPoolPairs_WSTETHUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_CBETHETH: { - name: 'AjnaPoolPairs_CBETHETH', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_TBTCWBTC: { - name: 'AjnaPoolPairs_TBTCWBTC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_TBTCUSDC: { - name: 'AjnaPoolPairs_TBTCUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_ETHGHO: { - name: 'AjnaPoolPairs_ETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WSTETHGHO: { - name: 'AjnaPoolPairs_WSTETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_GHODAI: { - name: 'AjnaPoolPairs_GHODAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_RETHGHO: { - name: 'AjnaPoolPairs_RETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WBTCGHO: { - name: 'AjnaPoolPairs_WBTCGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_CBETHGHO: { - name: 'AjnaPoolPairs_CBETHGHO', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_WLDUSDC: { - name: 'AjnaPoolPairs_WLDUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_USDCWLD: { - name: 'AjnaPoolPairs_USDCWLD', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_SDAIUSDC: { - name: 'AjnaPoolPairs_SDAIUSDC', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_YFIDAI: { - name: 'AjnaPoolPairs_YFIDAI', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_YIELDETHETH: { - name: 'AjnaPoolPairs_YIELDETHETH', - address: ADDRESS_ZERO, - }, - AjnaPoolPairs_YIELDBTCWBTC: { - name: 'AjnaPoolPairs_YIELDBTCWBTC', - address: ADDRESS_ZERO, - }, - AjnaRewardsManager: { - name: 'AjnaRewardsManager', - address: ADDRESS_ZERO, - }, - AjnaRewardsClaimer: { - name: 'AjnaRewardsClaimer', - address: ADDRESS_ZERO, - }, - ERC20PoolFactory: { - name: 'ERC20PoolFactory', - address: ADDRESS_ZERO, - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.ERC20_POOL_FACTORY, - }, - }, - morphoblue: { - MorphoBlue: { - name: 'MorphoBlue', - address: '0x0000000000000000000000000000000000000000', - serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, - }, - }, -} diff --git a/packages/deploy-configurations/configs/mainnet.conf.ts b/packages/deploy-configurations/configs/mainnet.conf.ts index 2e2fce87..64a96280 100644 --- a/packages/deploy-configurations/configs/mainnet.conf.ts +++ b/packages/deploy-configurations/configs/mainnet.conf.ts @@ -503,6 +503,16 @@ export const config: SystemConfig = { } }, common: { + OneInchAggregator5: { + name: 'OneInchAggregator5', + address: '0x1111111254EEB25477B68fb85Ed929f73A960582', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5 + }, + "USDC.E": { + name: 'USDC.E', + address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC_E + }, GnosisSafe: { name: 'GnosisSafe', address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc' @@ -884,7 +894,7 @@ export const config: SystemConfig = { }, PoolDataProvider: { name: 'PoolDataProvider', - address: '0x7B4EB56E7CD4b454BA8ff71E4518426369a138a3' + address: '0x41393e5e337606dc3821075Af65AeE84D7688CBD' }, L2Encoder: { name: 'L2Encoder', @@ -1504,6 +1514,11 @@ export const config: SystemConfig = { name: 'MorphoBlue', address: '0x0000000000000000000000000000000000000000', serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE + }, + AdaptiveCurveIrm: { + name: 'AdaptiveCurveIrm', + address: '0x0000000000000000000000000000000000000000', + } } } \ No newline at end of file diff --git a/packages/deploy-configurations/configs/optimism.conf.ts b/packages/deploy-configurations/configs/optimism.conf.ts index 5d3942f7..da40552a 100644 --- a/packages/deploy-configurations/configs/optimism.conf.ts +++ b/packages/deploy-configurations/configs/optimism.conf.ts @@ -110,6 +110,14 @@ export const config: SystemConfig = { }, }, actions: { + SendTokenAuto: { + name: 'SendTokenAuto', + deploy: false, + address: '0x0000000000000000000000000000000000000000', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, + history: [], + constructorArgs: [], + }, PositionCreated: { name: 'PositionCreated', deploy: false, @@ -708,7 +716,7 @@ export const config: SystemConfig = { }, PoolDataProvider: { name: 'PoolDataProvider', - address: '0x69FA688f1Dc47d4B5d8029D5a35FB7a548310654', + address: '0x7F23D86Ee20D869112572136221e173428DD740B', }, L2Encoder: { name: 'L2Encoder', @@ -1314,5 +1322,9 @@ export const config: SystemConfig = { address: '0x0000000000000000000000000000000000000000', serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, + AdaptiveCurveIrm: { + name: 'AdaptiveCurveIrm', + address: '0x0000000000000000000000000000000000000000' + }, }, } diff --git a/packages/deploy-configurations/configs/sepolia.conf.ts b/packages/deploy-configurations/configs/sepolia.conf.ts index a9927cb1..7c1576d4 100644 --- a/packages/deploy-configurations/configs/sepolia.conf.ts +++ b/packages/deploy-configurations/configs/sepolia.conf.ts @@ -19,7 +19,7 @@ export const config: SystemConfig = { name: 'OperationExecutor', deploy: true, address: '0xA946f00b58a934824215C1D91346AebbD8702FD4', - serviceRegistryName: 'OperationExecutor_2', + serviceRegistryName: 'OperationExecutor_5', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -27,7 +27,7 @@ export const config: SystemConfig = { name: 'OperationStorage', deploy: false, address: '', - serviceRegistryName: 'OperationStorage_2', + serviceRegistryName: 'OperationStorage_5', history: [], constructorArgs: ['address:ServiceRegistry', 'address:OperationExecutor'], }, @@ -35,7 +35,7 @@ export const config: SystemConfig = { name: 'OperationsRegistry', deploy: false, address: '', - serviceRegistryName: 'OperationsRegistry_2', + serviceRegistryName: 'OperationsRegistry_5', history: [], constructorArgs: [], }, @@ -85,6 +85,38 @@ export const config: SystemConfig = { }, }, actions: { + SendTokenAuto: { + name: 'SendTokenAuto', + deploy: true, + address: '', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, + history: [], + constructorArgs: [], + }, + CollectFee: { + name: 'CollectFee', + deploy: true, + address: '', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.COLLECT_FEE, + history: [], + constructorArgs: [], + }, + TakeFlashloanBalancer: { + name: 'TakeFlashloanBalancer', + deploy: true, + address: '', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.TAKE_A_FLASHLOAN_BALANCER, + history: [], + constructorArgs: [], + }, + AaveV3WithdrawAuto: { + name: 'AaveV3WithdrawAuto', + deploy: true, + address: '', + serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.WITHDRAW_AUTO, + history: [], + constructorArgs: [], + }, PositionCreated: { name: 'PositionCreated', deploy: true, @@ -97,7 +129,7 @@ export const config: SystemConfig = { name: 'SwapAction', deploy: true, address: '', - serviceRegistryName: 'SwapAction_3', + serviceRegistryName: 'SwapAction_8', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -105,7 +137,7 @@ export const config: SystemConfig = { name: 'TakeFlashloan', deploy: true, address: '', - serviceRegistryName: 'TakeFlashloan_3', + serviceRegistryName: 'TakeFlashloan_6', history: [], constructorArgs: ['address:ServiceRegistry', '0x6B175474E89094C44Da98b954EedeAC495271d0F'], }, @@ -113,7 +145,7 @@ export const config: SystemConfig = { name: 'SetApproval', deploy: true, address: '', - serviceRegistryName: 'SetApproval_3', + serviceRegistryName: 'SetApproval_6', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -121,7 +153,7 @@ export const config: SystemConfig = { name: 'PullToken', deploy: true, address: '', - serviceRegistryName: 'PullToken_3', + serviceRegistryName: 'PullToken_7', history: [], constructorArgs: [], }, @@ -129,7 +161,7 @@ export const config: SystemConfig = { name: 'SendToken', deploy: true, address: '', - serviceRegistryName: 'SendToken_4', + serviceRegistryName: 'SendToken_7', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -137,7 +169,7 @@ export const config: SystemConfig = { name: 'WrapEth', deploy: true, address: '', - serviceRegistryName: 'WrapEth_3', + serviceRegistryName: 'WrapEth_6', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -145,7 +177,7 @@ export const config: SystemConfig = { name: 'UnwrapEth', deploy: true, address: '', - serviceRegistryName: 'UnwrapEth_3', + serviceRegistryName: 'UnwrapEth_6', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -153,7 +185,7 @@ export const config: SystemConfig = { name: 'ReturnFunds', deploy: true, address: '', - serviceRegistryName: 'ReturnFunds_3', + serviceRegistryName: 'ReturnFunds_6', history: [], constructorArgs: [], }, @@ -193,7 +225,7 @@ export const config: SystemConfig = { name: 'AaveV3Borrow', deploy: false, address: '0x18ca8bE41D32727383bC0F98705f7662ed0B7E28', - serviceRegistryName: 'AaveV3Borrow', + serviceRegistryName: 'AaveV3Borrow_5', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -201,7 +233,7 @@ export const config: SystemConfig = { name: 'AaveV3Withdraw', deploy: false, address: '', - serviceRegistryName: 'AaveV3Withdraw', + serviceRegistryName: 'AaveV3Withdraw_5', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -209,7 +241,7 @@ export const config: SystemConfig = { name: 'AaveV3Deposit', deploy: false, address: '0x852c56859840487DcED2aF501fC06f7462C4f2a8', - serviceRegistryName: 'AaveV3Deposit', + serviceRegistryName: 'AaveV3Deposit_5', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -217,7 +249,7 @@ export const config: SystemConfig = { name: 'AaveV3Payback', deploy: false, address: '0xdB736d13CE851Ee81ac2109DF37EBAb8Ce525C42', - serviceRegistryName: 'AaveV3Payback', + serviceRegistryName: 'AaveV3Payback_5', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -225,7 +257,7 @@ export const config: SystemConfig = { name: 'AaveV3SetEMode', deploy: false, address: '0xd4DB3799DEe98Fe752d952Ba6F84Bb99Af829920', - serviceRegistryName: 'AaveV3SetEMode', + serviceRegistryName: 'AaveV3SetEMode_5', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -248,6 +280,16 @@ export const config: SystemConfig = { }, }, common: { + OneInchAggregator5: { + name: 'OneInchAggregator5', + address: '0x1111111254EEB25477B68fb85Ed929f73A960582', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5 + }, + "USDC.E": { + name: 'USDC.E', + address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC_E + }, GnosisSafe: { name: 'GnosisSafe', address: '0x41A92d82D70005B55070dB7138b21d7c28F27CC0', @@ -1103,5 +1145,9 @@ export const config: SystemConfig = { address: '0x0000000000000000000000000000000000000000', serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, + AdaptiveCurveIrm: { + name: 'AdaptiveCurveIrm', + address: '0x0000000000000000000000000000000000000000' + }, }, } diff --git a/packages/deploy-configurations/configs/tenderly.conf.ts b/packages/deploy-configurations/configs/tenderly.conf.ts index 9be03f23..6018cea1 100644 --- a/packages/deploy-configurations/configs/tenderly.conf.ts +++ b/packages/deploy-configurations/configs/tenderly.conf.ts @@ -99,6 +99,38 @@ export const config: SystemConfig = { }, }, actions: { + CollectFee: { + name: 'CollectFee', + deploy: true, + address: '0x0000000000000000000000000000000000000000', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.COLLECT_FEE, + history: [], + constructorArgs: [], + }, + TakeFlashloanBalancer: { + name: 'TakeFlashloanBalancer', + deploy: true, + address: '0x0000000000000000000000000000000000000000', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.TAKE_A_FLASHLOAN_BALANCER, + history: [], + constructorArgs: [], + }, + SendTokenAuto: { + name: 'SendTokenAuto', + deploy: true, + address: '0x0000000000000000000000000000000000000000', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, + history: [], + constructorArgs: [], + }, + AaveV3WithdrawAuto: { + name: 'AaveV3WithdrawAuto', + deploy: true, + address: '0x0000000000000000000000000000000000000000', + serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.WITHDRAW_AUTO, + history: [], + constructorArgs: [], + }, PositionCreated: { name: 'PositionCreated', deploy: true, @@ -336,6 +368,16 @@ export const config: SystemConfig = { }, }, common: { + "USDC.E":{ + name: 'USDC.E', + address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC_E + }, + OneInchAggregator5: { + name: 'OneInchAggregator5', + address: '0x1111111254EEB25477B68fb85Ed929f73A960582', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5 + }, GnosisSafe: { name: 'GnosisSafe', address: '0x0000000000000000000000000000000000000000', @@ -1321,5 +1363,9 @@ export const config: SystemConfig = { address: '0x0000000000000000000000000000000000000000', serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, + AdaptiveCurveIrm: { + name: 'AdaptiveCurveIrm', + address: '0x0000000000000000000000000000000000000000' + }, }, } diff --git a/packages/deploy-configurations/configs/test.conf.ts b/packages/deploy-configurations/configs/test.conf.ts index 81e09e90..aaaafb9e 100644 --- a/packages/deploy-configurations/configs/test.conf.ts +++ b/packages/deploy-configurations/configs/test.conf.ts @@ -130,6 +130,14 @@ export const config: SystemConfig = { }, }, actions: { + CollectFee: { + name: 'CollectFee', + deploy: true, + address: '', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.COLLECT_FEE, + history: [], + constructorArgs: [], + }, PositionCreated: { name: 'PositionCreated', deploy: true, @@ -357,6 +365,16 @@ export const config: SystemConfig = { }, }, common: { + OneInchAggregator5: { + name: 'OneInchAggregator5', + address: '0x1111111254EEB25477B68fb85Ed929f73A960582', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5 + }, + "USDC.E": { + name: 'USDC.E', + address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC_E + }, GnosisSafe: { name: 'GnosisSafe', address: '0x0000000000000000000000000000000000000000', @@ -1341,5 +1359,9 @@ export const config: SystemConfig = { address: ADDRESS_ZERO, serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, + AdaptiveCurveIrm: { + name: 'AdaptiveCurveIrm', + address: ADDRESS_ZERO + }, }, } diff --git a/packages/deploy-configurations/configs/test/mainnet.conf.ts b/packages/deploy-configurations/configs/test/mainnet.conf.ts index 9826c43e..9d57d1ff 100644 --- a/packages/deploy-configurations/configs/test/mainnet.conf.ts +++ b/packages/deploy-configurations/configs/test/mainnet.conf.ts @@ -18,7 +18,7 @@ export const config: SystemConfig = { name: 'OperationExecutor', deploy: true, address: '0xc1cd3654ab3b37e0bc26bafb5ae4c096892d0b0c', - serviceRegistryName: 'OperationExecutor_2', + serviceRegistryName: 'OperationExecutor_5', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -26,7 +26,7 @@ export const config: SystemConfig = { name: 'OperationStorage', deploy: true, address: '0x66081bcDb3760f1Bf765B4D9800d0a059BBec73F', - serviceRegistryName: 'OperationStorage_2', + serviceRegistryName: 'OperationStorage_5', history: [], constructorArgs: ['address:ServiceRegistry', 'address:OperationExecutor'], }, @@ -34,7 +34,7 @@ export const config: SystemConfig = { name: 'OperationsRegistry', deploy: true, address: '0x01871C3cCfeDE29d2b998E7D1BF0eEEBD26d9c49', - serviceRegistryName: 'OperationsRegistry_2', + serviceRegistryName: 'OperationsRegistry_5', history: [], constructorArgs: [], }, @@ -106,7 +106,7 @@ export const config: SystemConfig = { name: 'SwapAction', deploy: true, address: '0x7E7EB65A93441a2D2Bf0941216b4c1116B554d85', - serviceRegistryName: 'SwapAction_3', + serviceRegistryName: 'SwapAction_8', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -114,7 +114,7 @@ export const config: SystemConfig = { name: 'TakeFlashloan', deploy: true, address: '0x0eD12441616ca97F5729Fff519F5e8d13d8De15F', - serviceRegistryName: 'TakeFlashloan_3', + serviceRegistryName: 'TakeFlashloan_6', history: [], constructorArgs: [ 'address:ServiceRegistry', @@ -126,7 +126,7 @@ export const config: SystemConfig = { name: 'SetApproval', deploy: true, address: '0xcEA79d9132d6446f0B59F194b22DB2a93dB4146c', - serviceRegistryName: 'SetApproval_3', + serviceRegistryName: 'SetApproval_6', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -134,7 +134,7 @@ export const config: SystemConfig = { name: 'PullToken', deploy: true, address: '0x0bE3B9c118eD4eF2002Fd58d0d8cc8f7c76e168C', - serviceRegistryName: 'PullToken_3', + serviceRegistryName: 'PullToken_7', history: [], constructorArgs: [], }, @@ -142,7 +142,7 @@ export const config: SystemConfig = { name: 'SendToken', deploy: true, address: '0xAa4C55A8dd5b0e923056676D544FC20bb5D5e3A3', - serviceRegistryName: 'SendToken_4', + serviceRegistryName: 'SendToken_7', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -150,7 +150,7 @@ export const config: SystemConfig = { name: 'WrapEth', deploy: true, address: '0xafdD2e556Cef33C5C0033beB76E09b7Bd8d14Dec', - serviceRegistryName: 'WrapEth_3', + serviceRegistryName: 'WrapEth_6', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -158,7 +158,7 @@ export const config: SystemConfig = { name: 'UnwrapEth', deploy: true, address: '0xAC0B1652388Ea425884e6b60e2eD30155f43D50b', - serviceRegistryName: 'UnwrapEth_3', + serviceRegistryName: 'UnwrapEth_6', history: [], constructorArgs: ['address:ServiceRegistry'], }, @@ -166,7 +166,7 @@ export const config: SystemConfig = { name: 'ReturnFunds', deploy: true, address: '0x645325494A37d35cf6baFc82C3e6bcE4473F2685', - serviceRegistryName: 'ReturnFunds_3', + serviceRegistryName: 'ReturnFunds_6', history: [], constructorArgs: [], }, diff --git a/packages/deploy-configurations/configs/utils/utils.ts b/packages/deploy-configurations/configs/utils/utils.ts index 601f4c00..2cc5c05e 100644 --- a/packages/deploy-configurations/configs/utils/utils.ts +++ b/packages/deploy-configurations/configs/utils/utils.ts @@ -3,8 +3,6 @@ import { Network } from '@deploy-configurations/types/network' import { config as arbitrumConfig } from '../arbitrum.conf' import { config as baseConfig } from '../base.conf' -import { config as goerliConfig } from '../goerli.conf' -import { config as localConfig } from '../local.conf' import { config as mainnetConfig } from '../mainnet.conf' import { config as optimismConfig } from '../optimism.conf' import { config as tenderlyConfig } from '../tenderly.conf' @@ -12,16 +10,12 @@ import { config as tenderlyConfig } from '../tenderly.conf' export function getConfigByNetwork(network: Network): SystemConfig { if (network === Network.MAINNET) { return mainnetConfig - } else if (network === Network.GOERLI) { - return goerliConfig - } else if (network === Network.ARBITRUM) { + } else if (network === Network.ARBITRUM) { return arbitrumConfig } else if (network === Network.OPTIMISM) { return optimismConfig } else if (network === Network.BASE) { return baseConfig - } else if (network === Network.LOCAL) { - return localConfig } else if (network === Network.TENDERLY) { return tenderlyConfig } else { diff --git a/packages/deploy-configurations/constants/load-contract-names.ts b/packages/deploy-configurations/constants/load-contract-names.ts index e9b718c8..72b49b92 100644 --- a/packages/deploy-configurations/constants/load-contract-names.ts +++ b/packages/deploy-configurations/constants/load-contract-names.ts @@ -14,6 +14,7 @@ export function loadContractNames(network: Network) { */ export const SERVICE_REGISTRY_NAMES = { common: { + USDC_E: 'USDC.E', PULL_TOKEN: 'PullToken_7', SEND_TOKEN: 'SendToken_7', SEND_TOKEN_AUTO: 'SendTokenAuto_7', @@ -50,6 +51,9 @@ export const SERVICE_REGISTRY_NAMES = { STETH: 'STETH', WSTETH: 'WSTETH', WBTC: 'WBTC', + TOKEN_BALANCE: 'TokenBalance', + RETURN_MULTIPLE_TOKENS: 'ReturnMultipleTokens', + PULL_TOKEN_MAX_AMOUNT: 'PullTokenMaxAmount', }, aave: { v2: { diff --git a/packages/deploy-configurations/types/deployment-config/actions.ts b/packages/deploy-configurations/types/deployment-config/actions.ts index 69bc7cb9..07f3918f 100644 --- a/packages/deploy-configurations/types/deployment-config/actions.ts +++ b/packages/deploy-configurations/types/deployment-config/actions.ts @@ -37,6 +37,7 @@ export type MorphoBlueActions = | `MorphoBlueDeposit` | `MorphoBlueWithdraw` | `MorphoBluePayback` + | `MorphoBlueWithdrawAuto` export type Actions = CommonActions | AaveV3Actions | AjnaActions diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index 59e6d865..2726f69b 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.7-auto-rc2", + "version": "0.6.8-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", diff --git a/packages/dma-library/src/actions/common.ts b/packages/dma-library/src/actions/common.ts index 43e13e78..2f1b5ea1 100644 --- a/packages/dma-library/src/actions/common.ts +++ b/packages/dma-library/src/actions/common.ts @@ -354,7 +354,7 @@ export function erc4626Withdraw( export function collectFee( network: Network, args: { asset: string }, - paramsMapping: [amount: number] = [0] + paramsMapping: [amount: number] = [0], ) { const SERVICE_REGISTRY_NAMES = loadContractNames(network) diff --git a/packages/dma-library/src/operations/morphoblue/multiply/adjust-risk-down.ts b/packages/dma-library/src/operations/morphoblue/multiply/adjust-risk-down.ts index a7c02f0a..b2a5f703 100644 --- a/packages/dma-library/src/operations/morphoblue/multiply/adjust-risk-down.ts +++ b/packages/dma-library/src/operations/morphoblue/multiply/adjust-risk-down.ts @@ -1,7 +1,6 @@ import { getMorphoBlueAdjustDownOperationDefinition } from '@deploy-configurations/operation-definitions' -import { FEE_BASE, MAX_UINT, ZERO } from "@dma-common/constants"; +import { ZERO } from '@dma-common/constants' import { actions } from '@dma-library/actions' -import { BALANCER_FEE } from '@dma-library/config/flashloan-fees' import { IOperation } from '@dma-library/types' import { WithCollateralAndWithdrawal, @@ -111,7 +110,7 @@ export const adjustRiskDown: MorphoBlueAdjustDownOperation = async ({ paybackDebt, withdrawCollateral, swapCollateralTokensForDebtTokens, - sendDebtTokenToOpExecutor + sendDebtTokenToOpExecutor, ] const takeAFlashLoan = actions.common.takeAFlashLoanBalancer(network, { diff --git a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts index 2984a1ab..1e87f2c4 100644 --- a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts +++ b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts @@ -104,8 +104,6 @@ export async function getAaveV3ProtocolData({ collateralReserveData, userDebtData, userCollateralData, - collateralEModeCategory, - debtEModeCategory, ] = await Promise.all([ fetchAssetPrice(oracle, flashloanTokenAddress), fetchAssetPrice(oracle, debtTokenAddress), @@ -114,14 +112,10 @@ export async function getAaveV3ProtocolData({ fetchReserveData(poolDataProvider, collateralTokenAddress), proxy ? fetchUserReserveData(poolDataProvider, debtTokenAddress, proxy) : undefined, proxy ? fetchUserReserveData(poolDataProvider, collateralTokenAddress, proxy) : undefined, - poolDataProvider.getReserveEModeCategory(collateralTokenAddress), - poolDataProvider.getReserveEModeCategory(debtTokenAddress), ]) - const collateralEModeCategoryAsNumber = new BigNumber( - (await collateralEModeCategory).toString(), - ).toNumber() - const debtEModeCategoryAsNumber = new BigNumber((await debtEModeCategory).toString()).toNumber() + const collateralEModeCategoryAsNumber = new BigNumber(0).toNumber() + const debtEModeCategoryAsNumber = new BigNumber(0).toNumber() const reserveEModeCategory = determineReserveEModeCategory( collateralEModeCategoryAsNumber, debtEModeCategoryAsNumber, diff --git a/packages/dma-library/src/strategies/ajna/multiply/common.ts b/packages/dma-library/src/strategies/ajna/multiply/common.ts index f9fa9b6c..7cc13219 100644 --- a/packages/dma-library/src/strategies/ajna/multiply/common.ts +++ b/packages/dma-library/src/strategies/ajna/multiply/common.ts @@ -12,6 +12,12 @@ import { import { validateLiquidationPriceCloseToMarketPrice } from '@dma-library/strategies/ajna/validation/borrowish/liquidationPriceCloseToMarket' import { validateDustLimitMultiply } from '@dma-library/strategies/ajna/validation/multiply/dustLimit' import { validateGenerateCloseToMaxLtv } from '@dma-library/strategies/validation/closeToMaxLtv' +import { AjnaCommonDMADependencies } from '@dma-library/types/ajna' +import { encodeOperation } from '@dma-library/utils/operation' +import * as SwapUtils from '@dma-library/utils/swap' +import * as Domain from '@domain' +import BigNumber from 'bignumber.js' + import { AjnaMultiplyPayload, IOperation, @@ -20,11 +26,6 @@ import { // eslint-disable-next-line import/no-unresolved } from '../../../types' import { AjnaPosition } from '../../../types/ajna/ajna-position' -import { AjnaCommonDMADependencies } from '@dma-library/types/ajna' -import { encodeOperation } from '@dma-library/utils/operation' -import * as SwapUtils from '@dma-library/utils/swap' -import * as Domain from '@domain' -import BigNumber from 'bignumber.js' export async function simulateAdjustment( args: AjnaMultiplyPayload, diff --git a/packages/dma-library/src/strategies/common/close-to-debt-swap-data.ts b/packages/dma-library/src/strategies/common/close-to-debt-swap-data.ts index 49e9d79d..fbdae6c5 100644 --- a/packages/dma-library/src/strategies/common/close-to-debt-swap-data.ts +++ b/packages/dma-library/src/strategies/common/close-to-debt-swap-data.ts @@ -30,24 +30,24 @@ export async function getSwapDataForCloseToDebt({ getSwapData, __feeOverride, }: GetSwapDataForCloseToDebtArgs) { - console.log("CLOSING TO DEBT") + console.log('CLOSING TO DEBT') const collectFeeFrom = SwapUtils.acceptedFeeTokenByAddress({ fromTokenAddress: fromToken.address, toTokenAddress: toToken.address, }) - console.log("CollectFeeFrom", collectFeeFrom) + console.log('CollectFeeFrom', collectFeeFrom) const fee = __feeOverride || SwapUtils.feeResolver(fromToken.symbol, toToken.symbol) - console.log("fee", fee.toString()) + console.log('fee', fee.toString()) const preSwapFee = collectFeeFrom === 'sourceToken' ? calculateFee(swapAmountBeforeFees, fee.toNumber()) : ZERO - console.log("pre-swap-fee", preSwapFee.toString()); + console.log('pre-swap-fee', preSwapFee.toString()) const swapAmountAfterFees = swapAmountBeforeFees .minus(preSwapFee) .integerValue(BigNumber.ROUND_DOWN) - console.log("swapAmountAfterFees", swapAmountAfterFees.toString()) + console.log('swapAmountAfterFees', swapAmountAfterFees.toString()) const swapData = await getSwapData( fromToken.address, @@ -55,8 +55,8 @@ export async function getSwapDataForCloseToDebt({ swapAmountAfterFees, slippage, ) - console.log("fromAmount", swapData.fromTokenAmount.toString()) - console.log("toAmount", swapData.toTokenAmount.toString()) + console.log('fromAmount', swapData.fromTokenAmount.toString()) + console.log('toAmount', swapData.toTokenAmount.toString()) return { swapData, collectFeeFrom, preSwapFee } } diff --git a/packages/dma-library/src/strategies/morphoblue/index.ts b/packages/dma-library/src/strategies/morphoblue/index.ts index 998770c8..bab9a2bf 100644 --- a/packages/dma-library/src/strategies/morphoblue/index.ts +++ b/packages/dma-library/src/strategies/morphoblue/index.ts @@ -1,4 +1,7 @@ -import { MorphoBlueWithdrawToLTV, withdraw } from "@dma-library/strategies/morphoblue/auto/withdraw-to-ltv"; +import { + MorphoBlueWithdrawToLTV, + withdraw, +} from '@dma-library/strategies/morphoblue/auto/withdraw-to-ltv' import { depositBorrow as morphoDepositBorrow, diff --git a/packages/dma-library/src/strategies/morphoblue/multiply/close.ts b/packages/dma-library/src/strategies/morphoblue/multiply/close.ts index 573b2775..a96f2e2c 100644 --- a/packages/dma-library/src/strategies/morphoblue/multiply/close.ts +++ b/packages/dma-library/src/strategies/morphoblue/multiply/close.ts @@ -15,7 +15,7 @@ import { SwapData, } from '@dma-library/types' import { StrategyError, StrategyWarning } from '@dma-library/types/ajna/ajna-validations' -import * as StrategyParams from "@dma-library/types/strategy-params"; +import * as StrategyParams from '@dma-library/types/strategy-params' import { encodeOperation } from '@dma-library/utils/operation' import * as SwapUtils from '@dma-library/utils/swap' import * as Domain from '@domain' diff --git a/packages/dma-library/src/views/aave/types.ts b/packages/dma-library/src/views/aave/types.ts index 9c1136f0..1945fd57 100644 --- a/packages/dma-library/src/views/aave/types.ts +++ b/packages/dma-library/src/views/aave/types.ts @@ -7,12 +7,12 @@ import BigNumber from 'bignumber.js' export type AaveGetCurrentPositionArgs = IViewPositionParams export type AaveV2GetCurrentPositionDependencies = StrategyParams.WithViewPositionDependencies & { - protocolVersion: AaveVersion.v2 -} + protocolVersion: AaveVersion.v2 + } export type AaveV3GetCurrentPositionDependencies = StrategyParams.WithViewPositionDependencies & { - protocolVersion: AaveVersion.v3 -} + protocolVersion: AaveVersion.v3 + } type AaveV2ReserveDataReply = { availableLiquidity: BigNumber diff --git a/packages/dma-library/src/views/index.ts b/packages/dma-library/src/views/index.ts index 53371a82..31baf655 100644 --- a/packages/dma-library/src/views/index.ts +++ b/packages/dma-library/src/views/index.ts @@ -5,9 +5,7 @@ import type { GetCumulativesData, GetEarnData } from './ajna' import { getEarnPosition, getPosition } from './ajna' import { getErc4626Position } from './common' import { getMorphoPosition } from './morpho' -import { - getCurrentSparkPosition, SparkView -} from "./spark"; +import { getCurrentSparkPosition, SparkView } from './spark' const aave: AaveView = { v2: (args, dependencies) => diff --git a/packages/summer-cli/package.json b/packages/summer-cli/package.json index 275939ff..4e2fa9f6 100644 --- a/packages/summer-cli/package.json +++ b/packages/summer-cli/package.json @@ -3,9 +3,7 @@ "version": "0.0.0", "description": "Minimalistic boilerplate to quick-start Node.js development in TypeScript.", "private": true, - "engines": { - "node": ">= 16.20.2 <19" - }, + "devDependencies": { "@types/jest": "~29.5", "@types/node": "~18", From 48a48b99193b5ca6bb1757da60b06fbca49a080e Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 11:43:49 +0100 Subject: [PATCH 02/15] fix: emode WIP --- .../protocols/aave/get-aave-protocol-data.ts | 57 +++++++++++++++---- 1 file changed, 45 insertions(+), 12 deletions(-) diff --git a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts index 1e87f2c4..8a860f33 100644 --- a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts +++ b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts @@ -3,7 +3,6 @@ import { SharedAaveLikeProtocolDataArgs, } from '@dma-library/protocols/aave-like/types' import { - determineReserveEModeCategory, fetchAssetPrice, fetchReserveData, fetchUserReserveData, @@ -12,6 +11,7 @@ import { import * as AaveCommon from '@dma-library/strategies/aave/common' import { AaveVersion } from '@dma-library/types/aave' import BigNumber from 'bignumber.js' +import { ethers } from 'ethers' export type AaveV2ProtocolDataArgs = SharedAaveLikeProtocolDataArgs & { protocolVersion: AaveVersion.v2 @@ -114,16 +114,38 @@ export async function getAaveV3ProtocolData({ proxy ? fetchUserReserveData(poolDataProvider, collateralTokenAddress, proxy) : undefined, ]) - const collateralEModeCategoryAsNumber = new BigNumber(0).toNumber() - const debtEModeCategoryAsNumber = new BigNumber(0).toNumber() - const reserveEModeCategory = determineReserveEModeCategory( - collateralEModeCategoryAsNumber, - debtEModeCategoryAsNumber, - ) - + // New approach to handle eModes + let reserveEModeCategory = 0 let eModeCategoryData - if (pool && reserveEModeCategory !== 0) { - eModeCategoryData = await pool.getEModeCategoryData(reserveEModeCategory) + + if (pool) { + // Iterate through possible eMode categories (1-255) + for (let categoryId = 1; categoryId < 256; categoryId++) { + const collateralConfig = await pool.getEModeCategoryCollateralConfig(categoryId) + + // Check if this is an active eMode + if (collateralConfig.liquidationThreshold.gt(0)) { + const collateralBitmap = await pool.getEModeCategoryCollateralBitmap(categoryId) + const borrowableBitmap = await pool.getEModeCategoryBorrowableBitmap(categoryId) + + const isCollateralInEMode = await isReserveEnabledInEMode( + pool, + collateralBitmap, + collateralTokenAddress, + ) + const isDebtInEMode = await isReserveEnabledInEMode( + pool, + borrowableBitmap, + debtTokenAddress, + ) + + if (isCollateralInEMode && isDebtInEMode) { + reserveEModeCategory = categoryId + eModeCategoryData = collateralConfig + break + } + } + } } return { @@ -132,9 +154,20 @@ export async function getAaveV3ProtocolData({ collateralTokenPriceInEth: collateralPrice, reserveDataForFlashloan: flashloanReserveData, reserveDataForCollateral: collateralReserveData, - reserveEModeCategory: reserveEModeCategory, + reserveEModeCategory, userReserveDataForDebtToken: userDebtData, userReserveDataForCollateral: userCollateralData, - eModeCategoryData: eModeCategoryData, + eModeCategoryData, } } + +async function isReserveEnabledInEMode( + pool: ethers.Contract, + bitmap: BigNumber, + tokenAddress: string, +): Promise { + const reserveData = await pool.getReserveData(tokenAddress) + const id = reserveData.id.toNumber() + const mask = new BigNumber(1).shiftedBy(id) + return new BigNumber(bitmap.toString(16), 16).bitAnd(mask).gt(0) +} From 58e044df21d4ad01870baf36107beff644c3755b Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 13:08:47 +0100 Subject: [PATCH 03/15] fix: trial fix for Aave v3.2 emode changes --- .../src/protocols/aave-like/types.ts | 2 +- .../protocols/aave/get-aave-protocol-data.ts | 123 ++++++++++++------ 2 files changed, 84 insertions(+), 41 deletions(-) diff --git a/packages/dma-library/src/protocols/aave-like/types.ts b/packages/dma-library/src/protocols/aave-like/types.ts index 85a47d9b..2d8806af 100644 --- a/packages/dma-library/src/protocols/aave-like/types.ts +++ b/packages/dma-library/src/protocols/aave-like/types.ts @@ -29,7 +29,7 @@ export type AaveLikeProtocolData = { collateralTokenPriceInEth: PriceResult reserveDataForFlashloan: ReserveDataResult reserveDataForCollateral: ReserveDataResult - reserveEModeCategory: number | undefined + reserveEModeCategory?: number | undefined userReserveDataForDebtToken: any userReserveDataForCollateral: any eModeCategoryData: EModeCategoryData | undefined diff --git a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts index 8a860f33..f10bd968 100644 --- a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts +++ b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts @@ -11,7 +11,6 @@ import { import * as AaveCommon from '@dma-library/strategies/aave/common' import { AaveVersion } from '@dma-library/types/aave' import BigNumber from 'bignumber.js' -import { ethers } from 'ethers' export type AaveV2ProtocolDataArgs = SharedAaveLikeProtocolDataArgs & { protocolVersion: AaveVersion.v2 @@ -82,6 +81,23 @@ export async function getAaveV2ProtocolData({ } } +/** + * Fetches and processes Aave V3 protocol data, including eMode information. + * + * @param addresses - Contract addresses for the Aave V3 protocol + * @param provider - Ethereum provider + * @param debtTokenAddress - Address of the debt token + * @param collateralTokenAddress - Address of the collateral token + * @param flashloanTokenAddress - Address of the flashloan token + * @param proxy - User's proxy address + * @returns Promise resolving to AaveProtocolData + * + * @note This function checks if the user's current eMode category is compatible with the + * supplied collateral and debt tokens. If they are not compatible (i.e., either token is not + * enabled for the user's eMode), the function will return as if the user is not in any eMode + * (userEModeCategory = 0 and eModeCategoryData = undefined). This ensures that the returned + * data accurately reflects the effective eMode status for the given token pair. + */ export async function getAaveV3ProtocolData({ addresses, provider, @@ -89,7 +105,9 @@ export async function getAaveV3ProtocolData({ collateralTokenAddress, flashloanTokenAddress, proxy, -}: SharedAaveLikeProtocolDataArgs & { protocolVersion: AaveVersion.v3 }) { +}: SharedAaveLikeProtocolDataArgs & { + protocolVersion: AaveVersion.v3 +}): Promise { const { oracle, poolDataProvider, pool } = await getAaveLikeSystemContracts( addresses, provider, @@ -114,36 +132,46 @@ export async function getAaveV3ProtocolData({ proxy ? fetchUserReserveData(poolDataProvider, collateralTokenAddress, proxy) : undefined, ]) - // New approach to handle eModes - let reserveEModeCategory = 0 let eModeCategoryData - if (pool) { - // Iterate through possible eMode categories (1-255) - for (let categoryId = 1; categoryId < 256; categoryId++) { - const collateralConfig = await pool.getEModeCategoryCollateralConfig(categoryId) - - // Check if this is an active eMode - if (collateralConfig.liquidationThreshold.gt(0)) { - const collateralBitmap = await pool.getEModeCategoryCollateralBitmap(categoryId) - const borrowableBitmap = await pool.getEModeCategoryBorrowableBitmap(categoryId) - - const isCollateralInEMode = await isReserveEnabledInEMode( - pool, - collateralBitmap, - collateralTokenAddress, - ) - const isDebtInEMode = await isReserveEnabledInEMode( - pool, - borrowableBitmap, - debtTokenAddress, - ) - - if (isCollateralInEMode && isDebtInEMode) { - reserveEModeCategory = categoryId - eModeCategoryData = collateralConfig - break - } + if (pool && proxy) { + // Get the user's current eMode category + const userEModeCategory = await pool.getUserEMode(proxy) + + if (userEModeCategory !== 0) { + // Fetch eMode category data if the user is in an eMode + eModeCategoryData = await pool.getEModeCategoryCollateralConfig(userEModeCategory) + + // Check if the collateral and debt tokens are valid for this eMode + const [collateralReserveData, debtReserveData] = await Promise.all([ + pool.getReserveData(collateralTokenAddress), + pool.getReserveData(debtTokenAddress), + ]) + + const collateralReserveIndex = collateralReserveData.id.toNumber() + const debtReserveIndex = debtReserveData.id.toNumber() + + // Fetch the collateral and borrowable bitmaps for the user's eMode + const [eModeCategoryCollateralBitmap, eModeCategoryBorrowableBitmap] = await Promise.all([ + pool.getEModeCategoryCollateralBitmap(userEModeCategory), + pool.getEModeCategoryBorrowableBitmap(userEModeCategory), + ]) + + // Check if the collateral and debt tokens are enabled in the user's eMode + const isCollateralValidInEMode = isReserveEnabledOnBitmap( + eModeCategoryCollateralBitmap, + collateralReserveIndex, + ) + const isDebtValidInEMode = isReserveEnabledOnBitmap( + eModeCategoryBorrowableBitmap, + debtReserveIndex, + ) + + // If either the collateral or debt is not valid in this eMode, + // treat it as if the user is not in an eMode for this specific token pair + if (!isCollateralValidInEMode || !isDebtValidInEMode) { + userEModeCategory = 0 + eModeCategoryData = undefined } } } @@ -154,20 +182,35 @@ export async function getAaveV3ProtocolData({ collateralTokenPriceInEth: collateralPrice, reserveDataForFlashloan: flashloanReserveData, reserveDataForCollateral: collateralReserveData, - reserveEModeCategory, userReserveDataForDebtToken: userDebtData, userReserveDataForCollateral: userCollateralData, eModeCategoryData, } } -async function isReserveEnabledInEMode( - pool: ethers.Contract, - bitmap: BigNumber, - tokenAddress: string, -): Promise { - const reserveData = await pool.getReserveData(tokenAddress) - const id = reserveData.id.toNumber() - const mask = new BigNumber(1).shiftedBy(id) - return new BigNumber(bitmap.toString(16), 16).bitAnd(mask).gt(0) +/** + * Checks if a reserve is enabled in a specific bitmap. + * This function replicates the behavior of the Solidity `isReserveEnabledOnBitmap` function + * from the EModeConfiguration library, adapted for use with BigNumber.js. + * + * @param bitmap - A BigNumber representing the bitmap of enabled reserves + * @param reserveIndex - The index of the reserve to check + * @returns true if the reserve is enabled in the bitmap, false otherwise + * @throws Error if the reserveIndex is out of the valid range + */ +function isReserveEnabledOnBitmap(bitmap: BigNumber, reserveIndex: number): boolean { + // Aave V3 uses a 128-bit bitmap to represent reserves + // Valid reserve indices are 0 to 127 (inclusive) + if (reserveIndex < 0 || reserveIndex >= 128) { + throw new Error('Invalid reserve index: must be between 0 and 127 inclusive') + } + + // Create a mask: 2^reserveIndex + // This is equivalent to 1 << reserveIndex in bitwise operations + const mask = new BigNumber(2).pow(reserveIndex) + + // Check if the bit is set: + // We use modulo and comparison instead of bitwise AND + // If bitmap % (2^(reserveIndex+1)) >= 2^reserveIndex, then the reserveIndex-th bit is set + return bitmap.mod(mask.times(2)).gte(mask) } From 7a0b0b8660d0430584f5d4b19a6a377a9cb08755 Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 13:13:06 +0100 Subject: [PATCH 04/15] v0.6.9-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index 2726f69b..4897a67e 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.8-auto", + "version": "0.6.9-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From 185f65ad2bd923ade20be67361bd72ef7d84c356 Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 13:21:46 +0100 Subject: [PATCH 05/15] v0.6.10-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index 4897a67e..6fece8b4 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.9-auto", + "version": "0.6.10-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From b48ad0a3c0f368b6ff6c2b0ae6e4649a06074931 Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 14:30:09 +0100 Subject: [PATCH 06/15] chore: update ABIs --- .../aave/v3/aaveProtocolDataProvider.json | 436 ++++----- .../abis/external/protocols/aave/v3/pool.json | 909 +++++++++++++++++- .../protocols/aave/get-aave-protocol-data.ts | 1 - 3 files changed, 1126 insertions(+), 220 deletions(-) diff --git a/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json b/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json index b0558e51..5729992e 100644 --- a/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json +++ b/packages/abis/external/protocols/aave/v3/aaveProtocolDataProvider.json @@ -1,219 +1,219 @@ [ - { - "inputs": [ - { - "internalType": "contract IPoolAddressesProvider", - "name": "addressesProvider", - "type": "address" - } - ], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "inputs": [], - "name": "ADDRESSES_PROVIDER", - "outputs": [ - { "internalType": "contract IPoolAddressesProvider", "name": "", "type": "address" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getATokenTotalSupply", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getAllATokens", - "outputs": [ - { - "components": [ - { "internalType": "string", "name": "symbol", "type": "string" }, - { "internalType": "address", "name": "tokenAddress", "type": "address" } - ], - "internalType": "struct IPoolDataProvider.TokenData[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getAllReservesTokens", - "outputs": [ - { - "components": [ - { "internalType": "string", "name": "symbol", "type": "string" }, - { "internalType": "address", "name": "tokenAddress", "type": "address" } - ], - "internalType": "struct IPoolDataProvider.TokenData[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getDebtCeiling", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "getDebtCeilingDecimals", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "pure", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getFlashLoanEnabled", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getInterestRateStrategyAddress", - "outputs": [{ "internalType": "address", "name": "irStrategyAddress", "type": "address" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getIsVirtualAccActive", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getLiquidationProtocolFee", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getPaused", - "outputs": [{ "internalType": "bool", "name": "isPaused", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getReserveCaps", - "outputs": [ - { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, - { "internalType": "uint256", "name": "supplyCap", "type": "uint256" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getReserveConfigurationData", - "outputs": [ - { "internalType": "uint256", "name": "decimals", "type": "uint256" }, - { "internalType": "uint256", "name": "ltv", "type": "uint256" }, - { "internalType": "uint256", "name": "liquidationThreshold", "type": "uint256" }, - { "internalType": "uint256", "name": "liquidationBonus", "type": "uint256" }, - { "internalType": "uint256", "name": "reserveFactor", "type": "uint256" }, - { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, - { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, - { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, - { "internalType": "bool", "name": "isActive", "type": "bool" }, - { "internalType": "bool", "name": "isFrozen", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getReserveData", - "outputs": [ - { "internalType": "uint256", "name": "unbacked", "type": "uint256" }, - { "internalType": "uint256", "name": "accruedToTreasuryScaled", "type": "uint256" }, - { "internalType": "uint256", "name": "totalAToken", "type": "uint256" }, - { "internalType": "uint256", "name": "totalStableDebt", "type": "uint256" }, - { "internalType": "uint256", "name": "totalVariableDebt", "type": "uint256" }, - { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, - { "internalType": "uint256", "name": "variableBorrowRate", "type": "uint256" }, - { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, - { "internalType": "uint256", "name": "averageStableBorrowRate", "type": "uint256" }, - { "internalType": "uint256", "name": "liquidityIndex", "type": "uint256" }, - { "internalType": "uint256", "name": "variableBorrowIndex", "type": "uint256" }, - { "internalType": "uint40", "name": "lastUpdateTimestamp", "type": "uint40" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getReserveTokensAddresses", - "outputs": [ - { "internalType": "address", "name": "aTokenAddress", "type": "address" }, - { "internalType": "address", "name": "stableDebtTokenAddress", "type": "address" }, - { "internalType": "address", "name": "variableDebtTokenAddress", "type": "address" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getSiloedBorrowing", - "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getTotalDebt", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getUnbackedMintCap", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { "internalType": "address", "name": "asset", "type": "address" }, - { "internalType": "address", "name": "user", "type": "address" } - ], - "name": "getUserReserveData", - "outputs": [ - { "internalType": "uint256", "name": "currentATokenBalance", "type": "uint256" }, - { "internalType": "uint256", "name": "currentStableDebt", "type": "uint256" }, - { "internalType": "uint256", "name": "currentVariableDebt", "type": "uint256" }, - { "internalType": "uint256", "name": "principalStableDebt", "type": "uint256" }, - { "internalType": "uint256", "name": "scaledVariableDebt", "type": "uint256" }, - { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, - { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, - { "internalType": "uint40", "name": "stableRateLastUpdated", "type": "uint40" }, - { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], - "name": "getVirtualUnderlyingBalance", - "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], - "stateMutability": "view", - "type": "function" - } - ] \ No newline at end of file + { + "inputs": [ + { + "internalType": "contract IPoolAddressesProvider", + "name": "addressesProvider", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ADDRESSES_PROVIDER", + "outputs": [ + { "internalType": "contract IPoolAddressesProvider", "name": "", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getATokenTotalSupply", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAllATokens", + "outputs": [ + { + "components": [ + { "internalType": "string", "name": "symbol", "type": "string" }, + { "internalType": "address", "name": "tokenAddress", "type": "address" } + ], + "internalType": "struct IPoolDataProvider.TokenData[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAllReservesTokens", + "outputs": [ + { + "components": [ + { "internalType": "string", "name": "symbol", "type": "string" }, + { "internalType": "address", "name": "tokenAddress", "type": "address" } + ], + "internalType": "struct IPoolDataProvider.TokenData[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getDebtCeiling", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDebtCeilingDecimals", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getFlashLoanEnabled", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getInterestRateStrategyAddress", + "outputs": [{ "internalType": "address", "name": "irStrategyAddress", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getIsVirtualAccActive", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getLiquidationProtocolFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getPaused", + "outputs": [{ "internalType": "bool", "name": "isPaused", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveCaps", + "outputs": [ + { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, + { "internalType": "uint256", "name": "supplyCap", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveConfigurationData", + "outputs": [ + { "internalType": "uint256", "name": "decimals", "type": "uint256" }, + { "internalType": "uint256", "name": "ltv", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidationThreshold", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidationBonus", "type": "uint256" }, + { "internalType": "uint256", "name": "reserveFactor", "type": "uint256" }, + { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, + { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, + { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, + { "internalType": "bool", "name": "isActive", "type": "bool" }, + { "internalType": "bool", "name": "isFrozen", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveData", + "outputs": [ + { "internalType": "uint256", "name": "unbacked", "type": "uint256" }, + { "internalType": "uint256", "name": "accruedToTreasuryScaled", "type": "uint256" }, + { "internalType": "uint256", "name": "totalAToken", "type": "uint256" }, + { "internalType": "uint256", "name": "totalStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "totalVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { "internalType": "uint256", "name": "variableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "averageStableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityIndex", "type": "uint256" }, + { "internalType": "uint256", "name": "variableBorrowIndex", "type": "uint256" }, + { "internalType": "uint40", "name": "lastUpdateTimestamp", "type": "uint40" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveTokensAddresses", + "outputs": [ + { "internalType": "address", "name": "aTokenAddress", "type": "address" }, + { "internalType": "address", "name": "stableDebtTokenAddress", "type": "address" }, + { "internalType": "address", "name": "variableDebtTokenAddress", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getSiloedBorrowing", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getTotalDebt", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getUnbackedMintCap", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "address", "name": "user", "type": "address" } + ], + "name": "getUserReserveData", + "outputs": [ + { "internalType": "uint256", "name": "currentATokenBalance", "type": "uint256" }, + { "internalType": "uint256", "name": "currentStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "currentVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "principalStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "scaledVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { "internalType": "uint40", "name": "stableRateLastUpdated", "type": "uint40" }, + { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getVirtualUnderlyingBalance", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + } +] diff --git a/packages/abis/external/protocols/aave/v3/pool.json b/packages/abis/external/protocols/aave/v3/pool.json index 57521e8a..dc088087 100644 --- a/packages/abis/external/protocols/aave/v3/pool.json +++ b/packages/abis/external/protocols/aave/v3/pool.json @@ -1 +1,908 @@ -[{"inputs":[{"internalType":"contract IPoolAddressesProvider","name":"provider","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":true,"internalType":"address","name":"backer","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"fee","type":"uint256"}],"name":"BackUnbacked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"onBehalfOf","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"enum DataTypes.InterestRateMode","name":"interestRateMode","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"borrowRate","type":"uint256"},{"indexed":true,"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"Borrow","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"target","type":"address"},{"indexed":false,"internalType":"address","name":"initiator","type":"address"},{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"enum DataTypes.InterestRateMode","name":"interestRateMode","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"premium","type":"uint256"},{"indexed":true,"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"FlashLoan","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"asset","type":"address"},{"indexed":false,"internalType":"uint256","name":"totalDebt","type":"uint256"}],"name":"IsolationModeTotalDebtUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"collateralAsset","type":"address"},{"indexed":true,"internalType":"address","name":"debtAsset","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"debtToCover","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"liquidatedCollateralAmount","type":"uint256"},{"indexed":false,"internalType":"address","name":"liquidator","type":"address"},{"indexed":false,"internalType":"bool","name":"receiveAToken","type":"bool"}],"name":"LiquidationCall","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"onBehalfOf","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"MintUnbacked","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":false,"internalType":"uint256","name":"amountMinted","type":"uint256"}],"name":"MintedToTreasury","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"RebalanceStableBorrowRate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"repayer","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"bool","name":"useATokens","type":"bool"}],"name":"Repay","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":false,"internalType":"uint256","name":"liquidityRate","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"stableBorrowRate","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"variableBorrowRate","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"liquidityIndex","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"variableBorrowIndex","type":"uint256"}],"name":"ReserveDataUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"ReserveUsedAsCollateralDisabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"}],"name":"ReserveUsedAsCollateralEnabled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"onBehalfOf","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"Supply","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"enum DataTypes.InterestRateMode","name":"interestRateMode","type":"uint8"}],"name":"SwapBorrowRateMode","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint8","name":"categoryId","type":"uint8"}],"name":"UserEModeSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"reserve","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdraw","type":"event"},{"inputs":[],"name":"ADDRESSES_PROVIDER","outputs":[{"internalType":"contract IPoolAddressesProvider","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"BRIDGE_PROTOCOL_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FLASHLOAN_PREMIUM_TOTAL","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FLASHLOAN_PREMIUM_TO_PROTOCOL","outputs":[{"internalType":"uint128","name":"","type":"uint128"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_NUMBER_RESERVES","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_STABLE_RATE_BORROW_SIZE_PERCENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"POOL_REVISION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"fee","type":"uint256"}],"name":"backUnbacked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"interestRateMode","type":"uint256"},{"internalType":"uint16","name":"referralCode","type":"uint16"},{"internalType":"address","name":"onBehalfOf","type":"address"}],"name":"borrow","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"id","type":"uint8"},{"components":[{"internalType":"uint16","name":"ltv","type":"uint16"},{"internalType":"uint16","name":"liquidationThreshold","type":"uint16"},{"internalType":"uint16","name":"liquidationBonus","type":"uint16"},{"internalType":"address","name":"priceSource","type":"address"},{"internalType":"string","name":"label","type":"string"}],"internalType":"struct DataTypes.EModeCategory","name":"category","type":"tuple"}],"name":"configureEModeCategory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"dropReserve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"balanceFromBefore","type":"uint256"},{"internalType":"uint256","name":"balanceToBefore","type":"uint256"}],"name":"finalizeTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"receiverAddress","type":"address"},{"internalType":"address[]","name":"assets","type":"address[]"},{"internalType":"uint256[]","name":"amounts","type":"uint256[]"},{"internalType":"uint256[]","name":"interestRateModes","type":"uint256[]"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"bytes","name":"params","type":"bytes"},{"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"flashLoan","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"receiverAddress","type":"address"},{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"bytes","name":"params","type":"bytes"},{"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"flashLoanSimple","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getConfiguration","outputs":[{"components":[{"internalType":"uint256","name":"data","type":"uint256"}],"internalType":"struct DataTypes.ReserveConfigurationMap","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"id","type":"uint8"}],"name":"getEModeCategoryData","outputs":[{"components":[{"internalType":"uint16","name":"ltv","type":"uint16"},{"internalType":"uint16","name":"liquidationThreshold","type":"uint16"},{"internalType":"uint16","name":"liquidationBonus","type":"uint16"},{"internalType":"address","name":"priceSource","type":"address"},{"internalType":"string","name":"label","type":"string"}],"internalType":"struct DataTypes.EModeCategory","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"id","type":"uint16"}],"name":"getReserveAddressById","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveData","outputs":[{"components":[{"components":[{"internalType":"uint256","name":"data","type":"uint256"}],"internalType":"struct DataTypes.ReserveConfigurationMap","name":"configuration","type":"tuple"},{"internalType":"uint128","name":"liquidityIndex","type":"uint128"},{"internalType":"uint128","name":"currentLiquidityRate","type":"uint128"},{"internalType":"uint128","name":"variableBorrowIndex","type":"uint128"},{"internalType":"uint128","name":"currentVariableBorrowRate","type":"uint128"},{"internalType":"uint128","name":"currentStableBorrowRate","type":"uint128"},{"internalType":"uint40","name":"lastUpdateTimestamp","type":"uint40"},{"internalType":"uint16","name":"id","type":"uint16"},{"internalType":"address","name":"aTokenAddress","type":"address"},{"internalType":"address","name":"stableDebtTokenAddress","type":"address"},{"internalType":"address","name":"variableDebtTokenAddress","type":"address"},{"internalType":"address","name":"interestRateStrategyAddress","type":"address"},{"internalType":"uint128","name":"accruedToTreasury","type":"uint128"},{"internalType":"uint128","name":"unbacked","type":"uint128"},{"internalType":"uint128","name":"isolationModeTotalDebt","type":"uint128"}],"internalType":"struct DataTypes.ReserveData","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveNormalizedIncome","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveNormalizedVariableDebt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getReservesList","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserAccountData","outputs":[{"internalType":"uint256","name":"totalCollateralBase","type":"uint256"},{"internalType":"uint256","name":"totalDebtBase","type":"uint256"},{"internalType":"uint256","name":"availableBorrowsBase","type":"uint256"},{"internalType":"uint256","name":"currentLiquidationThreshold","type":"uint256"},{"internalType":"uint256","name":"ltv","type":"uint256"},{"internalType":"uint256","name":"healthFactor","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserConfiguration","outputs":[{"components":[{"internalType":"uint256","name":"data","type":"uint256"}],"internalType":"struct DataTypes.UserConfigurationMap","name":"","type":"tuple"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getUserEMode","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"address","name":"aTokenAddress","type":"address"},{"internalType":"address","name":"stableDebtAddress","type":"address"},{"internalType":"address","name":"variableDebtAddress","type":"address"},{"internalType":"address","name":"interestRateStrategyAddress","type":"address"}],"name":"initReserve","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IPoolAddressesProvider","name":"provider","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"collateralAsset","type":"address"},{"internalType":"address","name":"debtAsset","type":"address"},{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"debtToCover","type":"uint256"},{"internalType":"bool","name":"receiveAToken","type":"bool"}],"name":"liquidationCall","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"assets","type":"address[]"}],"name":"mintToTreasury","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"mintUnbacked","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"rebalanceStableBorrowRate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"interestRateMode","type":"uint256"},{"internalType":"address","name":"onBehalfOf","type":"address"}],"name":"repay","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"interestRateMode","type":"uint256"}],"name":"repayWithATokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"interestRateMode","type":"uint256"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"permitV","type":"uint8"},{"internalType":"bytes32","name":"permitR","type":"bytes32"},{"internalType":"bytes32","name":"permitS","type":"bytes32"}],"name":"repayWithPermit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"token","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"resetIsolationModeTotalDebt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"components":[{"internalType":"uint256","name":"data","type":"uint256"}],"internalType":"struct DataTypes.ReserveConfigurationMap","name":"configuration","type":"tuple"}],"name":"setConfiguration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"address","name":"rateStrategyAddress","type":"address"}],"name":"setReserveInterestRateStrategyAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint8","name":"categoryId","type":"uint8"}],"name":"setUserEMode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"bool","name":"useAsCollateral","type":"bool"}],"name":"setUserUseReserveAsCollateral","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"uint16","name":"referralCode","type":"uint16"}],"name":"supply","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"onBehalfOf","type":"address"},{"internalType":"uint16","name":"referralCode","type":"uint16"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"permitV","type":"uint8"},{"internalType":"bytes32","name":"permitR","type":"bytes32"},{"internalType":"bytes32","name":"permitS","type":"bytes32"}],"name":"supplyWithPermit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"interestRateMode","type":"uint256"}],"name":"swapBorrowRateMode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"protocolFee","type":"uint256"}],"name":"updateBridgeProtocolFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint128","name":"flashLoanPremiumTotal","type":"uint128"},{"internalType":"uint128","name":"flashLoanPremiumToProtocol","type":"uint128"}],"name":"updateFlashloanPremiums","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"to","type":"address"}],"name":"withdraw","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"}] \ No newline at end of file +[ + { + "inputs": [ + { "internalType": "contract IPoolAddressesProvider", "name": "provider", "type": "address" } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "backer", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": false, "internalType": "uint256", "name": "fee", "type": "uint256" } + ], + "name": "BackUnbacked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "user", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "indexed": false, + "internalType": "enum DataTypes.InterestRateMode", + "name": "interestRateMode", + "type": "uint8" + }, + { "indexed": false, "internalType": "uint256", "name": "borrowRate", "type": "uint256" }, + { "indexed": true, "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "Borrow", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "target", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "initiator", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "asset", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { + "indexed": false, + "internalType": "enum DataTypes.InterestRateMode", + "name": "interestRateMode", + "type": "uint8" + }, + { "indexed": false, "internalType": "uint256", "name": "premium", "type": "uint256" }, + { "indexed": true, "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "FlashLoan", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "asset", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "totalDebt", "type": "uint256" } + ], + "name": "IsolationModeTotalDebtUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "collateralAsset", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "debtAsset", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "debtToCover", "type": "uint256" }, + { + "indexed": false, + "internalType": "uint256", + "name": "liquidatedCollateralAmount", + "type": "uint256" + }, + { "indexed": false, "internalType": "address", "name": "liquidator", "type": "address" }, + { "indexed": false, "internalType": "bool", "name": "receiveAToken", "type": "bool" } + ], + "name": "LiquidationCall", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "user", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": true, "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "MintUnbacked", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amountMinted", "type": "uint256" } + ], + "name": "MintedToTreasury", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "repayer", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": false, "internalType": "bool", "name": "useATokens", "type": "bool" } + ], + "name": "Repay", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { + "indexed": false, + "internalType": "uint256", + "name": "stableBorrowRate", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "variableBorrowRate", + "type": "uint256" + }, + { "indexed": false, "internalType": "uint256", "name": "liquidityIndex", "type": "uint256" }, + { + "indexed": false, + "internalType": "uint256", + "name": "variableBorrowIndex", + "type": "uint256" + } + ], + "name": "ReserveDataUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { + "indexed": false, + "internalType": "uint256", + "name": "stableBorrowRate", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "variableBorrowRate", + "type": "uint256" + }, + { "indexed": false, "internalType": "uint256", "name": "liquidityIndex", "type": "uint256" }, + { + "indexed": false, + "internalType": "uint256", + "name": "variableBorrowIndex", + "type": "uint256" + } + ], + "name": "ReserveDataUpdated", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "user", "type": "address" } + ], + "name": "ReserveUsedAsCollateralDisabled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "user", "type": "address" } + ], + "name": "ReserveUsedAsCollateralEnabled", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": false, "internalType": "address", "name": "user", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "indexed": true, "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "Supply", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, + { "indexed": false, "internalType": "uint8", "name": "categoryId", "type": "uint8" } + ], + "name": "UserEModeSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { "indexed": true, "internalType": "address", "name": "reserve", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "user", "type": "address" }, + { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, + { "indexed": false, "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "Withdraw", + "type": "event" + }, + { + "inputs": [], + "name": "ADDRESSES_PROVIDER", + "outputs": [ + { "internalType": "contract IPoolAddressesProvider", "name": "", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "BRIDGE_PROTOCOL_FEE", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "FLASHLOAN_PREMIUM_TOTAL", + "outputs": [{ "internalType": "uint128", "name": "", "type": "uint128" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "FLASHLOAN_PREMIUM_TO_PROTOCOL", + "outputs": [{ "internalType": "uint128", "name": "", "type": "uint128" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "MAX_NUMBER_RESERVES", + "outputs": [{ "internalType": "uint16", "name": "", "type": "uint16" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "POOL_REVISION", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "fee", "type": "uint256" } + ], + "name": "backUnbacked", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "interestRateMode", "type": "uint256" }, + { "internalType": "uint16", "name": "referralCode", "type": "uint16" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" } + ], + "name": "borrow", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint8", "name": "id", "type": "uint8" }, + { + "components": [ + { "internalType": "uint16", "name": "ltv", "type": "uint16" }, + { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, + { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, + { "internalType": "string", "name": "label", "type": "string" } + ], + "internalType": "struct DataTypes.EModeCategoryBaseConfiguration", + "name": "category", + "type": "tuple" + } + ], + "name": "configureEModeCategory", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint8", "name": "id", "type": "uint8" }, + { "internalType": "uint128", "name": "borrowableBitmap", "type": "uint128" } + ], + "name": "configureEModeCategoryBorrowableBitmap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint8", "name": "id", "type": "uint8" }, + { "internalType": "uint128", "name": "collateralBitmap", "type": "uint128" } + ], + "name": "configureEModeCategoryCollateralBitmap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "deposit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "dropReserve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "address", "name": "from", "type": "address" }, + { "internalType": "address", "name": "to", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "balanceFromBefore", "type": "uint256" }, + { "internalType": "uint256", "name": "balanceToBefore", "type": "uint256" } + ], + "name": "finalizeTransfer", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "receiverAddress", "type": "address" }, + { "internalType": "address[]", "name": "assets", "type": "address[]" }, + { "internalType": "uint256[]", "name": "amounts", "type": "uint256[]" }, + { "internalType": "uint256[]", "name": "interestRateModes", "type": "uint256[]" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "internalType": "bytes", "name": "params", "type": "bytes" }, + { "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "flashLoan", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "receiverAddress", "type": "address" }, + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "bytes", "name": "params", "type": "bytes" }, + { "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "flashLoanSimple", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getBorrowLogic", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "getBridgeLogic", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getConfiguration", + "outputs": [ + { + "components": [{ "internalType": "uint256", "name": "data", "type": "uint256" }], + "internalType": "struct DataTypes.ReserveConfigurationMap", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint8", "name": "id", "type": "uint8" }], + "name": "getEModeCategoryBorrowableBitmap", + "outputs": [{ "internalType": "uint128", "name": "", "type": "uint128" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint8", "name": "id", "type": "uint8" }], + "name": "getEModeCategoryCollateralBitmap", + "outputs": [{ "internalType": "uint128", "name": "", "type": "uint128" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint8", "name": "id", "type": "uint8" }], + "name": "getEModeCategoryCollateralConfig", + "outputs": [ + { + "components": [ + { "internalType": "uint16", "name": "ltv", "type": "uint16" }, + { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, + { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" } + ], + "internalType": "struct DataTypes.CollateralConfig", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint8", "name": "id", "type": "uint8" }], + "name": "getEModeCategoryData", + "outputs": [ + { + "components": [ + { "internalType": "uint16", "name": "ltv", "type": "uint16" }, + { "internalType": "uint16", "name": "liquidationThreshold", "type": "uint16" }, + { "internalType": "uint16", "name": "liquidationBonus", "type": "uint16" }, + { "internalType": "address", "name": "priceSource", "type": "address" }, + { "internalType": "string", "name": "label", "type": "string" } + ], + "internalType": "struct DataTypes.EModeCategoryLegacy", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint8", "name": "id", "type": "uint8" }], + "name": "getEModeCategoryLabel", + "outputs": [{ "internalType": "string", "name": "", "type": "string" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getEModeLogic", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "getFlashLoanLogic", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getLiquidationGracePeriod", + "outputs": [{ "internalType": "uint40", "name": "", "type": "uint40" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getLiquidationLogic", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "getPoolLogic", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint16", "name": "id", "type": "uint16" }], + "name": "getReserveAddressById", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveData", + "outputs": [ + { + "components": [ + { + "components": [{ "internalType": "uint256", "name": "data", "type": "uint256" }], + "internalType": "struct DataTypes.ReserveConfigurationMap", + "name": "configuration", + "type": "tuple" + }, + { "internalType": "uint128", "name": "liquidityIndex", "type": "uint128" }, + { "internalType": "uint128", "name": "currentLiquidityRate", "type": "uint128" }, + { "internalType": "uint128", "name": "variableBorrowIndex", "type": "uint128" }, + { "internalType": "uint128", "name": "currentVariableBorrowRate", "type": "uint128" }, + { "internalType": "uint128", "name": "currentStableBorrowRate", "type": "uint128" }, + { "internalType": "uint40", "name": "lastUpdateTimestamp", "type": "uint40" }, + { "internalType": "uint16", "name": "id", "type": "uint16" }, + { "internalType": "address", "name": "aTokenAddress", "type": "address" }, + { "internalType": "address", "name": "stableDebtTokenAddress", "type": "address" }, + { "internalType": "address", "name": "variableDebtTokenAddress", "type": "address" }, + { "internalType": "address", "name": "interestRateStrategyAddress", "type": "address" }, + { "internalType": "uint128", "name": "accruedToTreasury", "type": "uint128" }, + { "internalType": "uint128", "name": "unbacked", "type": "uint128" }, + { "internalType": "uint128", "name": "isolationModeTotalDebt", "type": "uint128" } + ], + "internalType": "struct DataTypes.ReserveDataLegacy", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveDataExtended", + "outputs": [ + { + "components": [ + { + "components": [{ "internalType": "uint256", "name": "data", "type": "uint256" }], + "internalType": "struct DataTypes.ReserveConfigurationMap", + "name": "configuration", + "type": "tuple" + }, + { "internalType": "uint128", "name": "liquidityIndex", "type": "uint128" }, + { "internalType": "uint128", "name": "currentLiquidityRate", "type": "uint128" }, + { "internalType": "uint128", "name": "variableBorrowIndex", "type": "uint128" }, + { "internalType": "uint128", "name": "currentVariableBorrowRate", "type": "uint128" }, + { "internalType": "uint128", "name": "__deprecatedStableBorrowRate", "type": "uint128" }, + { "internalType": "uint40", "name": "lastUpdateTimestamp", "type": "uint40" }, + { "internalType": "uint16", "name": "id", "type": "uint16" }, + { "internalType": "uint40", "name": "liquidationGracePeriodUntil", "type": "uint40" }, + { "internalType": "address", "name": "aTokenAddress", "type": "address" }, + { + "internalType": "address", + "name": "__deprecatedStableDebtTokenAddress", + "type": "address" + }, + { "internalType": "address", "name": "variableDebtTokenAddress", "type": "address" }, + { "internalType": "address", "name": "interestRateStrategyAddress", "type": "address" }, + { "internalType": "uint128", "name": "accruedToTreasury", "type": "uint128" }, + { "internalType": "uint128", "name": "unbacked", "type": "uint128" }, + { "internalType": "uint128", "name": "isolationModeTotalDebt", "type": "uint128" }, + { "internalType": "uint128", "name": "virtualUnderlyingBalance", "type": "uint128" } + ], + "internalType": "struct DataTypes.ReserveData", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveNormalizedIncome", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveNormalizedVariableDebt", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getReservesCount", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getReservesList", + "outputs": [{ "internalType": "address[]", "name": "", "type": "address[]" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getSupplyLogic", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "user", "type": "address" }], + "name": "getUserAccountData", + "outputs": [ + { "internalType": "uint256", "name": "totalCollateralBase", "type": "uint256" }, + { "internalType": "uint256", "name": "totalDebtBase", "type": "uint256" }, + { "internalType": "uint256", "name": "availableBorrowsBase", "type": "uint256" }, + { "internalType": "uint256", "name": "currentLiquidationThreshold", "type": "uint256" }, + { "internalType": "uint256", "name": "ltv", "type": "uint256" }, + { "internalType": "uint256", "name": "healthFactor", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "user", "type": "address" }], + "name": "getUserConfiguration", + "outputs": [ + { + "components": [{ "internalType": "uint256", "name": "data", "type": "uint256" }], + "internalType": "struct DataTypes.UserConfigurationMap", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "user", "type": "address" }], + "name": "getUserEMode", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getVirtualUnderlyingBalance", + "outputs": [{ "internalType": "uint128", "name": "", "type": "uint128" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "address", "name": "aTokenAddress", "type": "address" }, + { "internalType": "address", "name": "variableDebtAddress", "type": "address" }, + { "internalType": "address", "name": "interestRateStrategyAddress", "type": "address" } + ], + "name": "initReserve", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "contract IPoolAddressesProvider", "name": "provider", "type": "address" } + ], + "name": "initialize", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "collateralAsset", "type": "address" }, + { "internalType": "address", "name": "debtAsset", "type": "address" }, + { "internalType": "address", "name": "user", "type": "address" }, + { "internalType": "uint256", "name": "debtToCover", "type": "uint256" }, + { "internalType": "bool", "name": "receiveAToken", "type": "bool" } + ], + "name": "liquidationCall", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address[]", "name": "assets", "type": "address[]" }], + "name": "mintToTreasury", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "mintUnbacked", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "interestRateMode", "type": "uint256" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" } + ], + "name": "repay", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "interestRateMode", "type": "uint256" } + ], + "name": "repayWithATokens", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "uint256", "name": "interestRateMode", "type": "uint256" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "internalType": "uint256", "name": "deadline", "type": "uint256" }, + { "internalType": "uint8", "name": "permitV", "type": "uint8" }, + { "internalType": "bytes32", "name": "permitR", "type": "bytes32" }, + { "internalType": "bytes32", "name": "permitS", "type": "bytes32" } + ], + "name": "repayWithPermit", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "token", "type": "address" }, + { "internalType": "address", "name": "to", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" } + ], + "name": "rescueTokens", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "resetIsolationModeTotalDebt", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { + "components": [{ "internalType": "uint256", "name": "data", "type": "uint256" }], + "internalType": "struct DataTypes.ReserveConfigurationMap", + "name": "configuration", + "type": "tuple" + } + ], + "name": "setConfiguration", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint40", "name": "until", "type": "uint40" } + ], + "name": "setLiquidationGracePeriod", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "address", "name": "rateStrategyAddress", "type": "address" } + ], + "name": "setReserveInterestRateStrategyAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint8", "name": "categoryId", "type": "uint8" }], + "name": "setUserEMode", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "bool", "name": "useAsCollateral", "type": "bool" } + ], + "name": "setUserUseReserveAsCollateral", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "internalType": "uint16", "name": "referralCode", "type": "uint16" } + ], + "name": "supply", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "address", "name": "onBehalfOf", "type": "address" }, + { "internalType": "uint16", "name": "referralCode", "type": "uint16" }, + { "internalType": "uint256", "name": "deadline", "type": "uint256" }, + { "internalType": "uint8", "name": "permitV", "type": "uint8" }, + { "internalType": "bytes32", "name": "permitR", "type": "bytes32" }, + { "internalType": "bytes32", "name": "permitS", "type": "bytes32" } + ], + "name": "supplyWithPermit", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "syncIndexesState", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "syncRatesState", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint256", "name": "protocolFee", "type": "uint256" }], + "name": "updateBridgeProtocolFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "uint128", "name": "flashLoanPremiumTotal", "type": "uint128" }, + { "internalType": "uint128", "name": "flashLoanPremiumToProtocol", "type": "uint128" } + ], + "name": "updateFlashloanPremiums", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "uint256", "name": "amount", "type": "uint256" }, + { "internalType": "address", "name": "to", "type": "address" } + ], + "name": "withdraw", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "nonpayable", + "type": "function" + } +] diff --git a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts index f10bd968..dc0ebe77 100644 --- a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts +++ b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts @@ -170,7 +170,6 @@ export async function getAaveV3ProtocolData({ // If either the collateral or debt is not valid in this eMode, // treat it as if the user is not in an eMode for this specific token pair if (!isCollateralValidInEMode || !isDebtValidInEMode) { - userEModeCategory = 0 eModeCategoryData = undefined } } From ba1e8b4c9fad8253c99f5beef5af016e52c7fb31 Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 14:33:27 +0100 Subject: [PATCH 07/15] v0.6.11-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index 6fece8b4..d3281443 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.10-auto", + "version": "0.6.11-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From 7b73560efa3ed6c84e8b02a276fec81abad2631b Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 15:27:42 +0100 Subject: [PATCH 08/15] chore: update ABIs once more and drop in missing morpho addresses --- .../configs/base.conf.ts | 6 +- .../configs/mainnet.conf.ts | 703 +++++++++--------- .../src/utils/abis/get-abi-for-contract.ts | 4 +- 3 files changed, 356 insertions(+), 357 deletions(-) diff --git a/packages/deploy-configurations/configs/base.conf.ts b/packages/deploy-configurations/configs/base.conf.ts index 461aa612..d00e589a 100644 --- a/packages/deploy-configurations/configs/base.conf.ts +++ b/packages/deploy-configurations/configs/base.conf.ts @@ -326,7 +326,7 @@ export const config: SystemConfig = { OneInchAggregator5: { name: 'OneInchAggregator5', address: '0x1111111254EEB25477B68fb85Ed929f73A960582', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5 + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5, }, GnosisSafe: { name: 'GnosisSafe', @@ -1319,12 +1319,12 @@ export const config: SystemConfig = { morphoblue: { MorphoBlue: { name: 'MorphoBlue', - address: '0x0000000000000000000000000000000000000000', + address: '0xBBBBBbbBBb9cC5e90e3b3Af64bdAF62C37EEFFCb', serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, AdaptiveCurveIrm: { name: 'AdaptiveCurveIrm', - address: '0x0000000000000000000000000000000000000000' + address: '0x46415998764C29aB2a25CbeA6254146D50D22687', }, }, } diff --git a/packages/deploy-configurations/configs/mainnet.conf.ts b/packages/deploy-configurations/configs/mainnet.conf.ts index 64a96280..ddf89f80 100644 --- a/packages/deploy-configurations/configs/mainnet.conf.ts +++ b/packages/deploy-configurations/configs/mainnet.conf.ts @@ -11,8 +11,8 @@ export const config: SystemConfig = { name: 'ServiceRegistry', deploy: false, address: '0x5e81a7515f956ab642eb698821a449fe8fe7498e', - history: [ '0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA' ], - constructorArgs: [ 0 ] + history: ['0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA'], + constructorArgs: [0], }, OperationsRegistry: { name: 'OperationsRegistry', @@ -23,9 +23,9 @@ export const config: SystemConfig = { '0x5fF55bB17Aad315f82B7F45649995dE563e3395e', '0x01871C3cCfeDE29d2b998E7D1BF0eEEBD26d9c49', '0x563d2689fE89c78259dD7F694146BB93f6388A55', - '0xe76d0308be45fc54dcfb06aff778785f884e3736' + '0xe76d0308be45fc54dcfb06aff778785f884e3736', ], - constructorArgs: [] + constructorArgs: [], }, OperationExecutor: { name: 'OperationExecutor', @@ -36,14 +36,14 @@ export const config: SystemConfig = { '0xD4554D1c818a99D23f29aA6dabB02FE810972b12', '0xc1cd3654ab3b37e0bc26bafb5ae4c096892d0b0c', '0xcA71C36D26f515AD0cce1D806B231CBC1185CdfC', - '0x7d81740b28ea699ee84031d3562a93f481b3f1a7' + '0x7d81740b28ea699ee84031d3562a93f481b3f1a7', ], constructorArgs: [ 'address:ServiceRegistry', 'address:OperationsRegistry', '0x4B323Eb2ece7fc1D81F1819c26A7cBD29975f75f', - '0xBA12222222228d8Ba445958a75a0704d566BF2C8' - ] + '0xBA12222222228d8Ba445958a75a0704d566BF2C8', + ], }, OperationStorage: { name: 'OperationStorage', @@ -54,9 +54,9 @@ export const config: SystemConfig = { '0x1D77919C04f31312105995984B92e878A6213a39', '0x66081bcDb3760f1Bf765B4D9800d0a059BBec73F', '0xa67c8ED81562085894172746E9CC28b7c21F2277', - '0x4E883C730B9CF973aBC47726eA52e107DC70fa68' + '0x4E883C730B9CF973aBC47726eA52e107DC70fa68', ], - constructorArgs: [ 'address:ServiceRegistry', 'address:OperationExecutor' ] + constructorArgs: ['address:ServiceRegistry', 'address:OperationExecutor'], }, DSProxyFactory: { name: 'DSProxyFactory', @@ -64,7 +64,7 @@ export const config: SystemConfig = { address: '0xA26e15C895EFc0616177B7c1e7270A4C7D51C997', serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_FACTORY, history: [], - constructorArgs: [] + constructorArgs: [], }, DSProxyRegistry: { name: 'DSProxyRegistry', @@ -72,7 +72,7 @@ export const config: SystemConfig = { address: '0x4678f0a6958e4D2Bc4F1BAF7Bc52E8F3564f3fE4', serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_PROXY_REGISTRY, history: [], - constructorArgs: [ 'address:DSProxyFactory' ] + constructorArgs: ['address:DSProxyFactory'], }, DSGuardFactory: { name: 'DSGuardFactory', @@ -80,21 +80,21 @@ export const config: SystemConfig = { address: '0x5a15566417e6C1c9546523066500bDDBc53F88C7', serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DS_GUARD_FACTORY, history: [], - constructorArgs: [] + constructorArgs: [], }, AccountGuard: { name: 'AccountGuard', deploy: false, address: '0xCe91349d2A4577BBd0fC91Fe6019600e047f2847', history: [], - constructorArgs: [] + constructorArgs: [], }, AccountFactory: { name: 'AccountFactory', deploy: false, address: '0xF7B75183A2829843dB06266c114297dfbFaeE2b6', history: [], - constructorArgs: [ 'address:AccountGuard' ] + constructorArgs: ['address:AccountGuard'], }, ChainLogView: { name: 'ChainLogView', @@ -102,21 +102,21 @@ export const config: SystemConfig = { address: '0x4B323Eb2ece7fc1D81F1819c26A7cBD29975f75f', serviceRegistryName: SERVICE_REGISTRY_NAMES.common.CHAINLOG_VIEWER, history: [], - constructorArgs: [ '0xdA0Ab1e0017DEbCd72Be8599041a2aa3bA7e740F' ] + constructorArgs: ['0xdA0Ab1e0017DEbCd72Be8599041a2aa3bA7e740F'], }, Swap: { name: 'Swap', deploy: false, address: '0xFe5d44e8D5313E09cF6d9E30ABc594Ec31fEeC06', serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SWAP, - history: [ '0x826E9f2E79cEEA850dF4d4757e0D12115A720D74' ], + history: ['0x826E9f2E79cEEA850dF4d4757e0D12115A720D74'], constructorArgs: [ '0xAb1a4Ae0F851700CC42442c588f458B553cB2620', '0xC7b548AD9Cf38721810246C079b2d8083aba8909', 20, - 'address:ServiceRegistry' - ] - } + 'address:ServiceRegistry', + ], + }, }, actions: { PositionCreated: { @@ -124,8 +124,8 @@ export const config: SystemConfig = { deploy: false, address: '0x83FF13979C0B82934C3916532453A5d6be492e2E', serviceRegistryName: SERVICE_REGISTRY_NAMES.common.POSITION_CREATED, - history: [ '0xA0Cb87300aB07D00468704cD8f016F8dE47D8E0A' ], - constructorArgs: [] + history: ['0xA0Cb87300aB07D00468704cD8f016F8dE47D8E0A'], + constructorArgs: [], }, SwapAction: { name: 'SwapAction', @@ -136,9 +136,9 @@ export const config: SystemConfig = { '0x76064cCF2EF1E98Cc60Ddd512E0A8B794d61FAB5', '0x7E7EB65A93441a2D2Bf0941216b4c1116B554d85', '0x313617D9CcBd96d66b2374c9bcB44b372D29b530', - '0x716d7230b092c96f88c95b8266e2d4155a61BF0C' + '0x716d7230b092c96f88c95b8266e2d4155a61BF0C', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, TakeFlashloan: { name: 'TakeFlashloan', @@ -149,25 +149,25 @@ export const config: SystemConfig = { '0xdF2cc941f0D856121cf2e25DACBE55e349f3f6Bc', '0x0eD12441616ca97F5729Fff519F5e8d13d8De15F', '0xbd4233fe84387b4070ef8947ae2816023fb21fed', - '0xb2e2a088d9705cd412CE6BF94e765743Ec26b1e4' + '0xb2e2a088d9705cd412CE6BF94e765743Ec26b1e4', ], constructorArgs: [ 'address:ServiceRegistry', '0x6B175474E89094C44Da98b954EedeAC495271d0F', - '0x5a15566417e6C1c9546523066500bDDBc53F88C7' - ] + '0x5a15566417e6C1c9546523066500bDDBc53F88C7', + ], }, TakeFlashloanBalancer: { name: 'TakeFlashloanBalancer', deploy: false, address: '0xfE5eDCaCC91561ddEE37464BC3670A281E1D9fBC', serviceRegistryName: SERVICE_REGISTRY_NAMES.common.TAKE_A_FLASHLOAN_BALANCER, - history: [ '0x03644F489Bf16B1eAFa68F495955eb5a78189314' ], + history: ['0x03644F489Bf16B1eAFa68F495955eb5a78189314'], constructorArgs: [ 'address:ServiceRegistry', '0x6B175474E89094C44Da98b954EedeAC495271d0F', - '0x5a15566417e6C1c9546523066500bDDBc53F88C7' - ] + '0x5a15566417e6C1c9546523066500bDDBc53F88C7', + ], }, SetApproval: { name: 'SetApproval', @@ -178,9 +178,9 @@ export const config: SystemConfig = { '0x5d93bf7B3a1cD4d0e935Db79B0ec616DfAFDD6D4', '0xcEA79d9132d6446f0B59F194b22DB2a93dB4146c', '0x3cf2e1ccd3cb586e19382fb1fbd720df7353dba5', - '0x655C194245EE8b70C286b50D7a04AEe5087b1b81' + '0x655C194245EE8b70C286b50D7a04AEe5087b1b81', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, PullToken: { name: 'PullToken', @@ -191,9 +191,9 @@ export const config: SystemConfig = { '0x0bE3B9c118eD4eF2002Fd58d0d8cc8f7c76e168C', '0x73835b6c3179a7788df7fb6272fd69bba97907be', '0x1631FAF05bfFA2200698d71893667C9De1E221fc', - '0x22e3922fE7E51006c3e37b50F0ea1c9d368853bF' + '0x22e3922fE7E51006c3e37b50F0ea1c9d368853bF', ], - constructorArgs: [] + constructorArgs: [], }, SendToken: { name: 'SendToken', @@ -204,9 +204,9 @@ export const config: SystemConfig = { '0xAa4C55A8dd5b0e923056676D544FC20bb5D5e3A3', '0xbf21f58e9c0dac0c3f9b26432d875ff8146ab255', '0x50dD506a115a689d0a2a8E43228ecD16fEcB353a', - '0xEece0010A715bA9c46E0F4fc53b3DA5988e5F043' + '0xEece0010A715bA9c46E0F4fc53b3DA5988e5F043', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, SendTokenAuto: { name: 'SendTokenAuto', @@ -215,9 +215,9 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.common.SEND_TOKEN_AUTO, history: [ '0xCD4E7711716cC02209c4035b702dB3fEbb20780d', - '0xCD4E7711716cC02209c4035b702dB3fEbb20780d' + '0xCD4E7711716cC02209c4035b702dB3fEbb20780d', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, WrapEth: { name: 'WrapEth', @@ -228,9 +228,9 @@ export const config: SystemConfig = { '0xafdD2e556Cef33C5C0033beB76E09b7Bd8d14Dec', '0x50db3ff917002c57e1494c376851620747aeba0b', '0x5977B1a4fc0eC3f423c6e64f5373c7fC122D6A9A', - '0x8A78E3C115398D7f727670cD9cB23780cc87ac8c' + '0x8A78E3C115398D7f727670cD9cB23780cc87ac8c', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, UnwrapEth: { name: 'UnwrapEth', @@ -241,9 +241,9 @@ export const config: SystemConfig = { '0xAC0B1652388Ea425884e6b60e2eD30155f43D50b', '0xc394d69580BA02baF457a47478E00A3f27a00B1a', '0x175D1AfD63b6babc410C757F6DE34f9510BECe4b', - '0x66eb4243684d7530481e5557A893240773452715' + '0x66eb4243684d7530481e5557A893240773452715', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, ReturnFunds: { name: 'ReturnFunds', @@ -254,9 +254,9 @@ export const config: SystemConfig = { '0x645325494A37d35cf6baFc82C3e6bcE4473F2685', '0xce74169AF94f67eB0eC48D5151012943fCa11Db4', '0x8Fb0993AcaE8e8d85E82293FE727c6501C20f3d6', - '0xb6E6e38ad9840b7ACAB968abBED5eEf7289BfB19' + '0xb6E6e38ad9840b7ACAB968abBED5eEf7289BfB19', ], - constructorArgs: [] + constructorArgs: [], }, CollectFee: { name: 'CollectFee', @@ -265,45 +265,45 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.common.COLLECT_FEE, history: [ '0x7c31665154caC48EB37a92dA52f63CEA78f3BA6C', - '0x7c31665154caC48EB37a92dA52f63CEA78f3BA6C' + '0x7c31665154caC48EB37a92dA52f63CEA78f3BA6C', ], constructorArgs: [ 'address:ServiceRegistry', 20, - '0xC7b548AD9Cf38721810246C079b2d8083aba8909' - ] + '0xC7b548AD9Cf38721810246C079b2d8083aba8909', + ], }, AaveBorrow: { name: 'AaveBorrow', deploy: false, address: '0x0199E5B28FeFeDe94CfC7ec754e58F173219b4Cf', serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.BORROW, - history: [ '0x6166B1587be6B954e660A71e4B083A5e0a5bF1b6' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0x6166B1587be6B954e660A71e4B083A5e0a5bF1b6'], + constructorArgs: ['address:ServiceRegistry'], }, AaveWithdraw: { name: 'AaveWithdraw', deploy: false, address: '0x7833fE8d3614a8248fd4762eE7FdFa9Bb24C0Ce9', serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WITHDRAW, - history: [ '0xECf6CaB5cD20F5f889e95A1A40d46607aa0F41Cf' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0xECf6CaB5cD20F5f889e95A1A40d46607aa0F41Cf'], + constructorArgs: ['address:ServiceRegistry'], }, AaveDeposit: { name: 'AaveDeposit', deploy: false, address: '0xFdE9C559F877ff48350710946fe978dD16Ad35E9', serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.DEPOSIT, - history: [ '0xFAf9D0B7B92e8B281CaF10b42970179B45CA6412' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0xFAf9D0B7B92e8B281CaF10b42970179B45CA6412'], + constructorArgs: ['address:ServiceRegistry'], }, AavePayback: { name: 'AavePayback', deploy: false, address: '0x45A19f6cea7aF9DF2833B0ce859616B10f6ADC7A', serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.PAYBACK, - history: [ '0xeB54C366512c4d59A222A251ea7316568859E08C' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0xeB54C366512c4d59A222A251ea7316568859E08C'], + constructorArgs: ['address:ServiceRegistry'], }, AaveV3Borrow: { name: 'AaveV3Borrow', @@ -314,9 +314,9 @@ export const config: SystemConfig = { '0x18ca8bE41D32727383bC0F98705f7662ed0B7E28', '0x8a8c9Bad73369Fc12e6BF1EA09c76d37466C08d8', '0x35BD299d8E40078056DA8Aa87F9d217acce4D2E8', - '0x0b1A4822784648b8aD1D16926Db2a20eb9A41B41' + '0x0b1A4822784648b8aD1D16926Db2a20eb9A41B41', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, AaveV3Withdraw: { name: 'AaveV3Withdraw', @@ -327,9 +327,9 @@ export const config: SystemConfig = { '0x414958801DC53E840501f507D7A0FEBE55806200', '0xDA39737E1b15619D6eAC2eeFa2990277c9898ACE', '0xbA06eb5D30Ec7D6B47e5FC30457D7b2Be5AB784a', - '0x7c7CC7C433bfb1939151151347E0206BbBE698B0' + '0x7c7CC7C433bfb1939151151347E0206BbBE698B0', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, AaveV3WithdrawAuto: { name: 'AaveV3WithdrawAuto', @@ -338,9 +338,9 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.WITHDRAW_AUTO, history: [ '0xB186178E3076CE299b187c1d2c12544F6db52f8f', - '0xB94675A4115744E79Ff3732325d468C16F5d04b4' + '0xB94675A4115744E79Ff3732325d468C16F5d04b4', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, AaveV3Deposit: { name: 'AaveV3Deposit', @@ -351,9 +351,9 @@ export const config: SystemConfig = { '0x852c56859840487DcED2aF501fC06f7462C4f2a8', '0xf70895f820551d5596A1c6Dd0999153d04FBC889', '0x61C45e7bF23eF18d546449186DEFd9A591937D62', - '0x3A2756376b9a949f7Eca58e73A2D27015AFC594B' + '0x3A2756376b9a949f7Eca58e73A2D27015AFC594B', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, AaveV3Payback: { name: 'AaveV3Payback', @@ -364,9 +364,9 @@ export const config: SystemConfig = { '0xdB736d13CE851Ee81ac2109DF37EBAb8Ce525C42', '0xeAc4F77ddA4Fe5396674a69a7f7865d87Fd7D5d1', '0xf514afA5D493aF34D0D96D73c065ebc1c0Edd8C2', - '0xA227a60F2b2CB426A838115b15738B39ed051D7F' + '0xA227a60F2b2CB426A838115b15738B39ed051D7F', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, AaveV3SetEMode: { name: 'AaveV3SetEMode', @@ -377,9 +377,9 @@ export const config: SystemConfig = { '0xd4DB3799DEe98Fe752d952Ba6F84Bb99Af829920', '0xc6630a586211c3e47527e687Bd07fAE504149116', '0x0f57A087d7138DE78F2a727C62c06a779450aE68', - '0xDA06CC7e416c97324BbCe79896f807Aaff6cF5D3' + '0xDA06CC7e416c97324BbCe79896f807Aaff6cF5D3', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, AjnaDepositBorrow: { name: 'AjnaDepositBorrow', @@ -387,7 +387,7 @@ export const config: SystemConfig = { address: '0x4D6F457C8305A1E6f688a8a05C7341DD959cB681', serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.DEPOSIT_BORROW, history: [], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, AjnaRepayWithdraw: { name: 'AjnaRepayWithdraw', @@ -395,55 +395,55 @@ export const config: SystemConfig = { address: '0xc0BAFEa22AD2A2D92BF54B1d76eA175785aa9Eb1', serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.REPAY_WITHDRAW, history: [], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, SparkBorrow: { name: 'SparkBorrow', deploy: false, address: '0x8E6c0131D9F67209Ae540bBD90dBa2223D1f74Ca', serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.BORROW, - history: [ '0x0000000000000000000000000000000000000000' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0x0000000000000000000000000000000000000000'], + constructorArgs: ['address:ServiceRegistry'], }, SparkWithdraw: { name: 'SparkWithdraw', deploy: false, address: '0xCeEb07b5F147094AF1b492560BC4cA0f20867df5', serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.WITHDRAW, - history: [ '0x0000000000000000000000000000000000000000' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0x0000000000000000000000000000000000000000'], + constructorArgs: ['address:ServiceRegistry'], }, SparkWithdrawAuto: { name: 'SparkWithdrawAuto', deploy: false, address: '0xE018AeA83728a037D8B6f76cCA0E8331cDAb937a', serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.WITHDRAW_AUTO, - history: [ '', '0xE018AeA83728a037D8B6f76cCA0E8331cDAb937a' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['', '0xE018AeA83728a037D8B6f76cCA0E8331cDAb937a'], + constructorArgs: ['address:ServiceRegistry'], }, SparkDeposit: { name: 'SparkDeposit', deploy: false, address: '0x347fedF00Dce16Bbb03CFDC75b2aBC342d96Be9A', serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.DEPOSIT, - history: [ '0x0000000000000000000000000000000000000000' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0x0000000000000000000000000000000000000000'], + constructorArgs: ['address:ServiceRegistry'], }, SparkPayback: { name: 'SparkPayback', deploy: false, address: '0x8e810D5a9De2dBc846F78F2B61745f3c4801Af51', serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.PAYBACK, - history: [ '0x0000000000000000000000000000000000000000' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0x0000000000000000000000000000000000000000'], + constructorArgs: ['address:ServiceRegistry'], }, SparkSetEMode: { name: 'SparkSetEMode', deploy: false, address: '0xC4E599220775220c610e8Bba607310096711ba5e', serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.SET_EMODE, - history: [ '0x0000000000000000000000000000000000000000' ], - constructorArgs: [ 'address:ServiceRegistry' ] + history: ['0x0000000000000000000000000000000000000000'], + constructorArgs: ['address:ServiceRegistry'], }, MorphoBlueBorrow: { name: 'MorphoBlueBorrow', @@ -452,9 +452,9 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.BORROW, history: [ '0x0000000000000000000000000000000000000000', - '0x0000000000000000000000000000000000000000' + '0x0000000000000000000000000000000000000000', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, MorphoBlueWithdraw: { name: 'MorphoBlueWithdraw', @@ -463,9 +463,9 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.WITHDRAW, history: [ '0x0000000000000000000000000000000000000000', - '0x0000000000000000000000000000000000000000' + '0x0000000000000000000000000000000000000000', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, MorphoBlueWithdrawAuto: { name: 'MorphoBlueWithdrawAuto', @@ -474,9 +474,9 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.WITHDRAW_AUTO, history: [ '0x0000000000000000000000000000000000000000', - '0x0000000000000000000000000000000000000000' + '0x0000000000000000000000000000000000000000', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, MorphoBlueDeposit: { name: 'MorphoBlueDeposit', @@ -485,9 +485,9 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.DEPOSIT, history: [ '0x0000000000000000000000000000000000000000', - '0x0000000000000000000000000000000000000000' + '0x0000000000000000000000000000000000000000', ], - constructorArgs: [ 'address:ServiceRegistry' ] + constructorArgs: ['address:ServiceRegistry'], }, MorphoBluePayback: { name: 'MorphoBluePayback', @@ -496,1029 +496,1028 @@ export const config: SystemConfig = { serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.PAYBACK, history: [ '0x0000000000000000000000000000000000000000', - '0x0000000000000000000000000000000000000000' + '0x0000000000000000000000000000000000000000', ], - constructorArgs: [ 'address:ServiceRegistry' ] - } - } + constructorArgs: ['address:ServiceRegistry'], + }, + }, }, common: { OneInchAggregator5: { name: 'OneInchAggregator5', address: '0x1111111254EEB25477B68fb85Ed929f73A960582', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5 + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR5, }, - "USDC.E": { + 'USDC.E': { name: 'USDC.E', address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC_E + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC_E, }, GnosisSafe: { name: 'GnosisSafe', - address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc' + address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc', }, UniswapRouterV3: { name: 'UniswapRouterV3', address: '0xe592427a0aece92de3edee1f18e0157c05861564', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.UNISWAP_ROUTER + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.UNISWAP_ROUTER, }, BalancerVault: { name: 'BalancerVault', address: '0xBA12222222228d8Ba445958a75a0704d566BF2C8', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.BALANCER_VAULT + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.BALANCER_VAULT, }, OneInchAggregator: { name: 'OneInchAggregator', address: '0x1111111254fb6c44bac0bed2854e76f90643097d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.ONE_INCH_AGGREGATOR, }, AuthorizedCaller: { name: 'AuthorizedCaller', - address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc' + address: '0x85f9b7408afE6CEb5E46223451f5d4b832B522dc', }, FeeRecipient: { name: 'FeeRecipient', - address: '0xC7b548AD9Cf38721810246C079b2d8083aba8909' + address: '0xC7b548AD9Cf38721810246C079b2d8083aba8909', }, MerkleRedeemer: { name: 'MerkleRedeemer', - address: '0xd9fabf81Ed15ea71FBAd0C1f77529a4755a38054' + address: '0xd9fabf81Ed15ea71FBAd0C1f77529a4755a38054', }, DssCharter: { name: 'DssCharter', address: '0x0000123' }, DssProxyActions: { name: 'DssProxyActions', - address: '0x82ecD135Dce65Fbc6DbdD0e4237E0AF93FFD5038' + address: '0x82ecD135Dce65Fbc6DbdD0e4237E0AF93FFD5038', }, DssProxyActionsCharter: { name: 'DssProxyActionsCharter', address: '0x0000' }, DssMultiplyProxyActions: { name: 'DssMultiplyProxyActions', - address: '0x2a49eae5cca3f050ebec729cf90cc910fadaf7a2' + address: '0x2a49eae5cca3f050ebec729cf90cc910fadaf7a2', }, DssCropper: { name: 'DssCropper', - address: '0x8377CD01a5834a6EaD3b7efb482f678f2092b77e' + address: '0x8377CD01a5834a6EaD3b7efb482f678f2092b77e', }, DssProxyActionsCropjoin: { name: 'DssProxyActionsCropjoin', - address: '0xa2f69F8B9B341CFE9BfBb3aaB5fe116C89C95bAF' + address: '0xa2f69F8B9B341CFE9BfBb3aaB5fe116C89C95bAF', }, DssProxyActionsDsr: { name: 'DssProxyActionsDsr', - address: '0x07ee93aEEa0a36FfF2A9B95dd22Bd6049EE54f26' + address: '0x07ee93aEEa0a36FfF2A9B95dd22Bd6049EE54f26', }, Otc: { name: 'Otc', - address: '0x794e6e91555438aFc3ccF1c5076A74F42133d08D' + address: '0x794e6e91555438aFc3ccF1c5076A74F42133d08D', }, OtcSupportMethods: { name: 'OtcSupportMethods', - address: '0x9b3f075b12513afe56ca2ed838613b7395f57839' + address: '0x9b3f075b12513afe56ca2ed838613b7395f57839', }, ServiceRegistry: { name: 'ServiceRegistry', - address: '0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA' + address: '0x9b4Ae7b164d195df9C4Da5d08Be88b2848b2EaDA', }, GuniProxyActions: { name: 'GuniProxyActions', - address: '0xed3a954c0adfc8e3f85d92729c051ff320648e30' + address: '0xed3a954c0adfc8e3f85d92729c051ff320648e30', }, GuniResolver: { name: 'GuniResolver', - address: '0x0317650Af6f184344D7368AC8bB0bEbA5EDB214a' + address: '0x0317650Af6f184344D7368AC8bB0bEbA5EDB214a', }, GuniRouter: { name: 'GuniRouter', - address: '0x14E6D67F824C3a7b4329d3228807f8654294e4bd' + address: '0x14E6D67F824C3a7b4329d3228807f8654294e4bd', }, CdpRegistry: { name: 'CdpRegistry', - address: '0xBe0274664Ca7A68d6b5dF826FB3CcB7c620bADF3' + address: '0xBe0274664Ca7A68d6b5dF826FB3CcB7c620bADF3', }, DefaultExchange: { name: 'DefaultExchange', - address: '0xb5eB8cB6cED6b6f8E13bcD502fb489Db4a726C7B' + address: '0xb5eB8cB6cED6b6f8E13bcD502fb489Db4a726C7B', }, NoFeesExchange: { name: 'NoFeesExchange', - address: '0x99e4484dac819aa74b347208752306615213d324' + address: '0x99e4484dac819aa74b347208752306615213d324', }, LowerFeesExchange: { name: 'LowerFeesExchange', - address: '0xf22f17b1d2354b4f4f52e4d164e4eb5e1f0a6ba6' + address: '0xf22f17b1d2354b4f4f52e4d164e4eb5e1f0a6ba6', }, LidoCrvLiquidityFarmingReward: { name: 'LidoCrvLiquidityFarmingReward', - address: '0x99ac10631f69c753ddb595d074422a0922d9056b' + address: '0x99ac10631f69c753ddb595d074422a0922d9056b', }, ChainlinkPriceOracle_USDCUSD: { name: 'ChainlinkPriceOracle_USDCUSD', - address: '0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6' + address: '0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6', }, ChainlinkPriceOracle_ETHUSD: { name: 'ChainlinkPriceOracle_ETHUSD', - address: '0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419' + address: '0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419', }, SdaiOracle: { name: 'SdaiOracle', - address: '0xb9E6DBFa4De19CCed908BcbFe1d015190678AB5f' + address: '0xb9E6DBFa4De19CCed908BcbFe1d015190678AB5f', }, AAVE: { name: 'AAVE', - address: '0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9' + address: '0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9', }, ADAI: { name: 'ADAI', - address: '0x028171bCA77440897B824Ca71D1c56caC55b68A3' + address: '0x028171bCA77440897B824Ca71D1c56caC55b68A3', }, BAL: { name: 'BAL', - address: '0xba100000625a3754423978a60c9317c58a424e3D' + address: '0xba100000625a3754423978a60c9317c58a424e3D', }, BAT: { name: 'BAT', - address: '0x0D8775F648430679A709E98d2b0Cb6250d2887EF' + address: '0x0D8775F648430679A709E98d2b0Cb6250d2887EF', }, CBETH: { name: 'CBETH', - address: '0xbe9895146f7af43049ca1c1ae358b0541ea49704' + address: '0xbe9895146f7af43049ca1c1ae358b0541ea49704', }, COMP: { name: 'COMP', - address: '0xc00e94Cb662C3520282E6f5717214004A7f26888' + address: '0xc00e94Cb662C3520282E6f5717214004A7f26888', }, CRVV1ETHSTETH: { name: 'CRVV1ETHSTETH', - address: '0x06325440D014e39736583c165C2963BA99fAf14E' + address: '0x06325440D014e39736583c165C2963BA99fAf14E', }, DAI: { name: 'DAI', address: '0x6B175474E89094C44Da98b954EedeAC495271d0F', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DAI + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.DAI, }, ETH: { name: 'ETH', - address: '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE' + address: '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE', }, FRAX: { name: 'FRAX', - address: '0x853d955acef822db058eb8505911ed77f175b99e' + address: '0x853d955acef822db058eb8505911ed77f175b99e', }, GHO: { name: 'GHO', - address: '0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f' + address: '0x40D16FC0246aD3160Ccc09B8D0D3A2cD28aE6C2f', }, GNO: { name: 'GNO', - address: '0x6810e776880C02933D47DB1b9fc05908e5386b96' + address: '0x6810e776880C02933D47DB1b9fc05908e5386b96', }, GUNIV3DAIUSDC1: { name: 'GUNIV3DAIUSDC1', - address: '0xAbDDAfB225e10B90D798bB8A886238Fb835e2053' + address: '0xAbDDAfB225e10B90D798bB8A886238Fb835e2053', }, GUNIV3DAIUSDC2: { name: 'GUNIV3DAIUSDC2', - address: '0x50379f632ca68D36E50cfBC8F78fe16bd1499d1e' + address: '0x50379f632ca68D36E50cfBC8F78fe16bd1499d1e', }, GUSD: { name: 'GUSD', - address: '0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd' + address: '0x056Fd409E1d7A124BD7017459dFEa2F387b6d5Cd', }, KNC: { name: 'KNC', - address: '0xdd974D5C2e2928deA5F71b9825b8b646686BD200' + address: '0xdd974D5C2e2928deA5F71b9825b8b646686BD200', }, LDO: { name: 'LDO', - address: '0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32' + address: '0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32', }, LINK: { name: 'LINK', - address: '0x514910771AF9Ca656af840dff83E8264EcF986CA' + address: '0x514910771AF9Ca656af840dff83E8264EcF986CA', }, LRC: { name: 'LRC', - address: '0xBBbbCA6A901c926F240b89EacB641d8Aec7AEafD' + address: '0xBBbbCA6A901c926F240b89EacB641d8Aec7AEafD', }, LUSD: { name: 'LUSD', - address: '0x5f98805A4E8be255a32880FDeC7F6728C6568bA0' + address: '0x5f98805A4E8be255a32880FDeC7F6728C6568bA0', }, MANA: { name: 'MANA', - address: '0x0F5D2fB29fb7d3CFeE444a200298f468908cC942' + address: '0x0F5D2fB29fb7d3CFeE444a200298f468908cC942', }, MATIC: { name: 'MATIC', - address: '0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0' + address: '0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0', }, PAX: { name: 'PAX', - address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1' + address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1', }, PAXUSD: { name: 'PAXUSD', - address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1' + address: '0x8E870D67F660D95d5be530380D0eC0bd388289E1', }, RENBTC: { name: 'RENBTC', - address: '0xEB4C2781e4ebA804CE9a9803C67d0893436bB27D' + address: '0xEB4C2781e4ebA804CE9a9803C67d0893436bB27D', }, RETH: { name: 'RETH', - address: '0xae78736cd615f374d3085123a210448e74fc6393' + address: '0xae78736cd615f374d3085123a210448e74fc6393', }, RWA001: { name: 'RWA001', - address: '0x10b2aA5D77Aa6484886d8e244f0686aB319a270d' + address: '0x10b2aA5D77Aa6484886d8e244f0686aB319a270d', }, RWA002: { name: 'RWA002', - address: '0xAAA760c2027817169D7C8DB0DC61A2fb4c19AC23' + address: '0xAAA760c2027817169D7C8DB0DC61A2fb4c19AC23', }, RWA003: { name: 'RWA003', - address: '0x07F0A80aD7AeB7BfB7f139EA71B3C8f7E17156B9' + address: '0x07F0A80aD7AeB7BfB7f139EA71B3C8f7E17156B9', }, RWA004: { name: 'RWA004', - address: '0x873F2101047A62F84456E3B2B13df2287925D3F9' + address: '0x873F2101047A62F84456E3B2B13df2287925D3F9', }, RWA005: { name: 'RWA005', - address: '0x6DB236515E90fC831D146f5829407746EDdc5296' + address: '0x6DB236515E90fC831D146f5829407746EDdc5296', }, RWA006: { name: 'RWA006', - address: '0x4EE03cfBF6E784c462839f5954d60f7C2B60b113' + address: '0x4EE03cfBF6E784c462839f5954d60f7C2B60b113', }, SDAI: { name: 'SDAI', - address: '0x83f20f44975d03b1b09e64809b757c47f942beea' + address: '0x83f20f44975d03b1b09e64809b757c47f942beea', }, STETH: { name: 'STETH', address: '0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.STETH + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.STETH, }, TBTC: { name: 'TBTC', - address: '0x18084fbA666a33d37592fA2633fD49a74DD93a88' + address: '0x18084fbA666a33d37592fA2633fD49a74DD93a88', }, TUSD: { name: 'TUSD', - address: '0x0000000000085d4780B73119b644AE5ecd22b376' + address: '0x0000000000085d4780B73119b644AE5ecd22b376', }, UNI: { name: 'UNI', - address: '0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984' + address: '0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984', }, UNIV2AAVEETH: { name: 'UNIV2AAVEETH', - address: '0xDFC14d2Af169B0D36C4EFF567Ada9b2E0CAE044f' + address: '0xDFC14d2Af169B0D36C4EFF567Ada9b2E0CAE044f', }, UNIV2DAIETH: { name: 'UNIV2DAIETH', - address: '0xA478c2975Ab1Ea89e8196811F51A7B7Ade33eB11' + address: '0xA478c2975Ab1Ea89e8196811F51A7B7Ade33eB11', }, UNIV2DAIUSDC: { name: 'UNIV2DAIUSDC', - address: '0xAE461cA67B15dc8dc81CE7615e0320dA1A9aB8D5' + address: '0xAE461cA67B15dc8dc81CE7615e0320dA1A9aB8D5', }, UNIV2DAIUSDT: { name: 'UNIV2DAIUSDT', - address: '0xB20bd5D04BE54f870D5C0d3cA85d82b34B836405' + address: '0xB20bd5D04BE54f870D5C0d3cA85d82b34B836405', }, UNIV2ETHUSDT: { name: 'UNIV2ETHUSDT', - address: '0x0d4a11d5EEaaC28EC3F61d100daF4d40471f1852' + address: '0x0d4a11d5EEaaC28EC3F61d100daF4d40471f1852', }, UNIV2LINKETH: { name: 'UNIV2LINKETH', - address: '0xa2107FA5B38d9bbd2C461D6EDf11B11A50F6b974' + address: '0xa2107FA5B38d9bbd2C461D6EDf11B11A50F6b974', }, UNIV2UNIETH: { name: 'UNIV2UNIETH', - address: '0xd3d2E2692501A5c9Ca623199D38826e513033a17' + address: '0xd3d2E2692501A5c9Ca623199D38826e513033a17', }, UNIV2USDCETH: { name: 'UNIV2USDCETH', - address: '0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc' + address: '0xB4e16d0168e52d35CaCD2c6185b44281Ec28C9Dc', }, UNIV2WBTCDAI: { name: 'UNIV2WBTCDAI', - address: '0x231B7589426Ffe1b75405526fC32aC09D44364c4' + address: '0x231B7589426Ffe1b75405526fC32aC09D44364c4', }, UNIV2WBTCETH: { name: 'UNIV2WBTCETH', - address: '0xBb2b8038a1640196FbE3e38816F3e67Cba72D940' + address: '0xBb2b8038a1640196FbE3e38816F3e67Cba72D940', }, USDC: { name: 'USDC', address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.USDC, }, USDBC: { name: 'USDBC', - address: '0x0000000000000000000000000000000000000000' + address: '0x0000000000000000000000000000000000000000', }, USDT: { name: 'USDT', - address: '0xdAC17F958D2ee523a2206206994597C13D831ec7' + address: '0xdAC17F958D2ee523a2206206994597C13D831ec7', }, WBTC: { name: 'WBTC', address: '0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WBTC + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WBTC, }, WETH: { name: 'WETH', address: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WETH + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WETH, }, WLD: { name: 'WLD', - address: '0x163f8c2467924be0ae7b5347228cabf260318753' + address: '0x163f8c2467924be0ae7b5347228cabf260318753', }, WSTETH: { name: 'WSTETH', address: '0x7f39c581f595b53c5cb19bd0b3f8da6c935e2ca0', - serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WSTETH + serviceRegistryName: SERVICE_REGISTRY_NAMES.common.WSTETH, }, YIELDBTC: { name: 'YIELDBTC', - address: '0x0274a704a6d9129f90a62ddc6f6024b33ecdad36' + address: '0x0274a704a6d9129f90a62ddc6f6024b33ecdad36', }, YIELDETH: { name: 'YIELDETH', - address: '0xb5b29320d2dde5ba5bafa1ebcd270052070483ec' + address: '0xb5b29320d2dde5ba5bafa1ebcd270052070483ec', }, YFI: { name: 'YFI', - address: '0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e' + address: '0x0bc529c00C6401aEF6D220BE8C6Ea1667F6Ad93e', }, ZRX: { name: 'ZRX', - address: '0xE41d2489571d322189246DaFA5ebDe1F4699F498' - } + address: '0xE41d2489571d322189246DaFA5ebDe1F4699F498', + }, }, aave: { v2: { Oracle: { name: 'Oracle', - address: '0xa50ba011c48153de246e5192c8f9258a2ba79ca9' + address: '0xa50ba011c48153de246e5192c8f9258a2ba79ca9', }, LendingPool: { name: 'LendingPool', address: '0x7d2768dE32b0b80b7a3454c06BdAc94A69DDc7A9', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.LENDING_POOL + serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.LENDING_POOL, }, PoolDataProvider: { name: 'PoolDataProvider', - address: '0x057835Ad21a177dbdd3090bB1CAE03EaCF78Fc6d' + address: '0x057835Ad21a177dbdd3090bB1CAE03EaCF78Fc6d', }, WETHGateway: { name: 'WETHGateway', address: '0xcc9a0B7c43DC2a5F023Bb9b738E45B0Ef6B06E04', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WETH_GATEWAY - } + serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v2.WETH_GATEWAY, + }, }, v3: { Oracle: { name: 'Oracle', - address: '0x54586bE62E3c3580375aE3723C145253060Ca0C2' + address: '0x54586bE62E3c3580375aE3723C145253060Ca0C2', }, LendingPool: { name: 'LendingPool', address: '0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2', - serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.AAVE_POOL + serviceRegistryName: SERVICE_REGISTRY_NAMES.aave.v3.AAVE_POOL, }, PoolDataProvider: { name: 'PoolDataProvider', - address: '0x41393e5e337606dc3821075Af65AeE84D7688CBD' + address: '0x41393e5e337606dc3821075Af65AeE84D7688CBD', }, L2Encoder: { name: 'L2Encoder', - address: '0x0000000000000000000000000000000000000000' - } - } + address: '0x0000000000000000000000000000000000000000', + }, + }, }, spark: { Oracle: { name: 'Oracle', - address: '0x8105f69D9C41644c6A0803fDA7D03Aa70996cFD9' + address: '0x8105f69D9C41644c6A0803fDA7D03Aa70996cFD9', }, LendingPool: { name: 'LendingPool', address: '0xC13e21B648A5Ee794902342038FF3aDAB66BE987', - serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.LENDING_POOL + serviceRegistryName: SERVICE_REGISTRY_NAMES.spark.LENDING_POOL, }, PoolDataProvider: { name: 'PoolDataProvider', - address: '0xFc21d6d146E6086B8359705C8b28512a983db0cb' - } + address: '0xFc21d6d146E6086B8359705C8b28512a983db0cb', + }, }, maker: { common: { FlashMintModule: { name: 'FlashMintModule', address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA', - serviceRegistryName: SERVICE_REGISTRY_NAMES.maker.FLASH_MINT_MODULE + serviceRegistryName: SERVICE_REGISTRY_NAMES.maker.FLASH_MINT_MODULE, }, Chainlog: { name: 'Chainlog', - address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA' + address: '0x60744434d6339a6B27d73d9Eda62b6F66a0a04FA', }, CdpManager: { name: 'CdpManager', - address: '0x5ef30b9986345249bc32d8928B7ee64DE9435E39' + address: '0x5ef30b9986345249bc32d8928B7ee64DE9435E39', }, GetCdps: { name: 'GetCdps', - address: '0x36a724Bd100c39f0Ea4D3A20F7097eE01A8Ff573' + address: '0x36a724Bd100c39f0Ea4D3A20F7097eE01A8Ff573', }, Jug: { name: 'Jug', - address: '0x19c0976f590D67707E62397C87829d896Dc0f1F1' + address: '0x19c0976f590D67707E62397C87829d896Dc0f1F1', }, Pot: { name: 'Pot', - address: '0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7' + address: '0x197E90f9FAD81970bA7976f33CbD77088E5D7cf7', }, End: { name: 'End', - address: '0xBB856d1742fD182a90239D7AE85706C2FE4e5922' + address: '0xBB856d1742fD182a90239D7AE85706C2FE4e5922', }, Spot: { name: 'Spot', - address: '0x65C79fcB50Ca1594B025960e539eD7A9a6D434A3' + address: '0x65C79fcB50Ca1594B025960e539eD7A9a6D434A3', }, Dog: { name: 'Dog', - address: '0x135954d155898D42C90D2a57824C690e0c7BEf1B' + address: '0x135954d155898D42C90D2a57824C690e0c7BEf1B', }, Vat: { name: 'Vat', - address: '0x35D1b3F3D7966A1DFe207aa4514C12a259A0492B' + address: '0x35D1b3F3D7966A1DFe207aa4514C12a259A0492B', }, McdGov: { name: 'McdGov', - address: '0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2' - } + address: '0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2', + }, }, joins: { MCD_JOIN_DAI: { name: 'MCD_JOIN_DAI', - address: '0x9759A6Ac90977b93B58547b4A71c78317f391A28' + address: '0x9759A6Ac90977b93B58547b4A71c78317f391A28', }, MCD_JOIN_ETH_A: { name: 'MCD_JOIN_ETH_A', - address: '0x2F0b23f53734252Bda2277357e97e1517d6B042A' + address: '0x2F0b23f53734252Bda2277357e97e1517d6B042A', }, MCD_JOIN_ETH_B: { name: 'MCD_JOIN_ETH_B', - address: '0x08638eF1A205bE6762A8b935F5da9b700Cf7322c' + address: '0x08638eF1A205bE6762A8b935F5da9b700Cf7322c', }, MCD_JOIN_ETH_C: { name: 'MCD_JOIN_ETH_C', - address: '0xF04a5cC80B1E94C69B48f5ee68a08CD2F09A7c3E' + address: '0xF04a5cC80B1E94C69B48f5ee68a08CD2F09A7c3E', }, MCD_JOIN_BAT_A: { name: 'MCD_JOIN_BAT_A', - address: '0x3D0B1912B66114d4096F48A8CEe3A56C231772cA' + address: '0x3D0B1912B66114d4096F48A8CEe3A56C231772cA', }, MCD_JOIN_USDC_A: { name: 'MCD_JOIN_USDC_A', - address: '0xA191e578a6736167326d05c119CE0c90849E84B7' + address: '0xA191e578a6736167326d05c119CE0c90849E84B7', }, MCD_JOIN_USDC_B: { name: 'MCD_JOIN_USDC_B', - address: '0x2600004fd1585f7270756DDc88aD9cfA10dD0428' + address: '0x2600004fd1585f7270756DDc88aD9cfA10dD0428', }, MCD_JOIN_PSM_USDC_A: { name: 'MCD_JOIN_PSM_USDC_A', - address: '0x0A59649758aa4d66E25f08Dd01271e891fe52199' + address: '0x0A59649758aa4d66E25f08Dd01271e891fe52199', }, MCD_JOIN_WBTC_A: { name: 'MCD_JOIN_WBTC_A', - address: '0xBF72Da2Bd84c5170618Fbe5914B0ECA9638d5eb5' + address: '0xBF72Da2Bd84c5170618Fbe5914B0ECA9638d5eb5', }, MCD_JOIN_WBTC_B: { name: 'MCD_JOIN_WBTC_B', - address: '0xfA8c996e158B80D77FbD0082BB437556A65B96E0' + address: '0xfA8c996e158B80D77FbD0082BB437556A65B96E0', }, MCD_JOIN_WBTC_C: { name: 'MCD_JOIN_WBTC_C', - address: '0x7f62f9592b823331E012D3c5DdF2A7714CfB9de2' + address: '0x7f62f9592b823331E012D3c5DdF2A7714CfB9de2', }, MCD_JOIN_TUSD_A: { name: 'MCD_JOIN_TUSD_A', - address: '0x4454aF7C8bb9463203b66C816220D41ED7837f44' + address: '0x4454aF7C8bb9463203b66C816220D41ED7837f44', }, MCD_JOIN_ZRX_A: { name: 'MCD_JOIN_ZRX_A', - address: '0xc7e8Cd72BDEe38865b4F5615956eF47ce1a7e5D0' + address: '0xc7e8Cd72BDEe38865b4F5615956eF47ce1a7e5D0', }, MCD_JOIN_KNC_A: { name: 'MCD_JOIN_KNC_A', - address: '0x475F1a89C1ED844A08E8f6C50A00228b5E59E4A9' + address: '0x475F1a89C1ED844A08E8f6C50A00228b5E59E4A9', }, MCD_JOIN_MANA_A: { name: 'MCD_JOIN_MANA_A', - address: '0xA6EA3b9C04b8a38Ff5e224E7c3D6937ca44C0ef9' + address: '0xA6EA3b9C04b8a38Ff5e224E7c3D6937ca44C0ef9', }, MCD_JOIN_USDT_A: { name: 'MCD_JOIN_USDT_A', - address: '0x0Ac6A1D74E84C2dF9063bDDc31699FF2a2BB22A2' + address: '0x0Ac6A1D74E84C2dF9063bDDc31699FF2a2BB22A2', }, MCD_JOIN_PAXUSD_A: { name: 'MCD_JOIN_PAXUSD_A', - address: '0x7e62B7E279DFC78DEB656E34D6a435cC08a44666' + address: '0x7e62B7E279DFC78DEB656E34D6a435cC08a44666', }, MCD_JOIN_PSM_PAX_A: { name: 'MCD_JOIN_PSM_PAX_A', - address: '0x7bbd8cA5e413bCa521C2c80D8d1908616894Cf21' + address: '0x7bbd8cA5e413bCa521C2c80D8d1908616894Cf21', }, MCD_JOIN_COMP_A: { name: 'MCD_JOIN_COMP_A', - address: '0xBEa7cDfB4b49EC154Ae1c0D731E4DC773A3265aA' + address: '0xBEa7cDfB4b49EC154Ae1c0D731E4DC773A3265aA', }, MCD_JOIN_LRC_A: { name: 'MCD_JOIN_LRC_A', - address: '0x6C186404A7A238D3d6027C0299D1822c1cf5d8f1' + address: '0x6C186404A7A238D3d6027C0299D1822c1cf5d8f1', }, MCD_JOIN_LINK_A: { name: 'MCD_JOIN_LINK_A', - address: '0xdFccAf8fDbD2F4805C174f856a317765B49E4a50' + address: '0xdFccAf8fDbD2F4805C174f856a317765B49E4a50', }, MCD_JOIN_BAL_A: { name: 'MCD_JOIN_BAL_A', - address: '0x4a03Aa7fb3973d8f0221B466EefB53D0aC195f55' + address: '0x4a03Aa7fb3973d8f0221B466EefB53D0aC195f55', }, MCD_JOIN_YFI_A: { name: 'MCD_JOIN_YFI_A', - address: '0x3ff33d9162aD47660083D7DC4bC02Fb231c81677' + address: '0x3ff33d9162aD47660083D7DC4bC02Fb231c81677', }, MCD_JOIN_GUSD_A: { name: 'MCD_JOIN_GUSD_A', - address: '0xe29A14bcDeA40d83675aa43B72dF07f649738C8b' + address: '0xe29A14bcDeA40d83675aa43B72dF07f649738C8b', }, MCD_JOIN_PSM_GUSD_A: { name: 'MCD_JOIN_PSM_GUSD_A', - address: '0x79A0FA989fb7ADf1F8e80C93ee605Ebb94F7c6A5' + address: '0x79A0FA989fb7ADf1F8e80C93ee605Ebb94F7c6A5', }, MCD_JOIN_UNI_A: { name: 'MCD_JOIN_UNI_A', - address: '0x3BC3A58b4FC1CbE7e98bB4aB7c99535e8bA9b8F1' + address: '0x3BC3A58b4FC1CbE7e98bB4aB7c99535e8bA9b8F1', }, MCD_JOIN_RENBTC_A: { name: 'MCD_JOIN_RENBTC_A', - address: '0xFD5608515A47C37afbA68960c1916b79af9491D0' + address: '0xFD5608515A47C37afbA68960c1916b79af9491D0', }, MCD_JOIN_AAVE_A: { name: 'MCD_JOIN_AAVE_A', - address: '0x24e459F61cEAa7b1cE70Dbaea938940A7c5aD46e' + address: '0x24e459F61cEAa7b1cE70Dbaea938940A7c5aD46e', }, MCD_JOIN_MATIC_A: { name: 'MCD_JOIN_MATIC_A', - address: '0x885f16e177d45fC9e7C87e1DA9fd47A9cfcE8E13' + address: '0x885f16e177d45fC9e7C87e1DA9fd47A9cfcE8E13', }, MCD_JOIN_WSTETH_A: { name: 'MCD_JOIN_WSTETH_A', - address: '0x10CD5fbe1b404B7E19Ef964B63939907bdaf42E2' + address: '0x10CD5fbe1b404B7E19Ef964B63939907bdaf42E2', }, MCD_JOIN_WSTETH_B: { name: 'MCD_JOIN_WSTETH_B', - address: '0x248cCBf4864221fC0E840F29BB042ad5bFC89B5c' + address: '0x248cCBf4864221fC0E840F29BB042ad5bFC89B5c', }, MCD_JOIN_DIRECT_AAVEV2_DAI: { name: 'MCD_JOIN_DIRECT_AAVEV2_DAI', - address: '0xa13C0c8eB109F5A13c6c90FC26AFb23bEB3Fb04a' + address: '0xa13C0c8eB109F5A13c6c90FC26AFb23bEB3Fb04a', }, MCD_JOIN_UNIV2DAIETH_A: { name: 'MCD_JOIN_UNIV2DAIETH_A', - address: '0x2502F65D77cA13f183850b5f9272270454094A08' + address: '0x2502F65D77cA13f183850b5f9272270454094A08', }, MCD_JOIN_UNIV2WBTCETH_A: { name: 'MCD_JOIN_UNIV2WBTCETH_A', - address: '0xDc26C9b7a8fe4F5dF648E314eC3E6Dc3694e6Dd2' + address: '0xDc26C9b7a8fe4F5dF648E314eC3E6Dc3694e6Dd2', }, MCD_JOIN_UNIV2USDCETH_A: { name: 'MCD_JOIN_UNIV2USDCETH_A', - address: '0x03Ae53B33FeeAc1222C3f372f32D37Ba95f0F099' + address: '0x03Ae53B33FeeAc1222C3f372f32D37Ba95f0F099', }, MCD_JOIN_UNIV2DAIUSDC_A: { name: 'MCD_JOIN_UNIV2DAIUSDC_A', - address: '0xA81598667AC561986b70ae11bBE2dd5348ed4327' + address: '0xA81598667AC561986b70ae11bBE2dd5348ed4327', }, MCD_JOIN_UNIV2ETHUSDT_A: { name: 'MCD_JOIN_UNIV2ETHUSDT_A', - address: '0x4aAD139a88D2dd5e7410b408593208523a3a891d' + address: '0x4aAD139a88D2dd5e7410b408593208523a3a891d', }, MCD_JOIN_UNIV2LINKETH_A: { name: 'MCD_JOIN_UNIV2LINKETH_A', - address: '0xDae88bDe1FB38cF39B6A02b595930A3449e593A6' + address: '0xDae88bDe1FB38cF39B6A02b595930A3449e593A6', }, MCD_JOIN_UNIV2UNIETH_A: { name: 'MCD_JOIN_UNIV2UNIETH_A', - address: '0xf11a98339FE1CdE648e8D1463310CE3ccC3d7cC1' + address: '0xf11a98339FE1CdE648e8D1463310CE3ccC3d7cC1', }, MCD_JOIN_UNIV2WBTCDAI_A: { name: 'MCD_JOIN_UNIV2WBTCDAI_A', - address: '0xD40798267795Cbf3aeEA8E9F8DCbdBA9b5281fcC' + address: '0xD40798267795Cbf3aeEA8E9F8DCbdBA9b5281fcC', }, MCD_JOIN_UNIV2AAVEETH_A: { name: 'MCD_JOIN_UNIV2AAVEETH_A', - address: '0x42AFd448Df7d96291551f1eFE1A590101afB1DfF' + address: '0x42AFd448Df7d96291551f1eFE1A590101afB1DfF', }, MCD_JOIN_UNIV2DAIUSDT_A: { name: 'MCD_JOIN_UNIV2DAIUSDT_A', - address: '0xAf034D882169328CAf43b823a4083dABC7EEE0F4' + address: '0xAf034D882169328CAf43b823a4083dABC7EEE0F4', }, MCD_JOIN_GUNIV3DAIUSDC1_A: { name: 'MCD_JOIN_GUNIV3DAIUSDC1_A', - address: '0xbFD445A97e7459b0eBb34cfbd3245750Dba4d7a4' + address: '0xbFD445A97e7459b0eBb34cfbd3245750Dba4d7a4', }, MCD_JOIN_GUNIV3DAIUSDC2_A: { name: 'MCD_JOIN_GUNIV3DAIUSDC2_A', - address: '0xA7e4dDde3cBcEf122851A7C8F7A55f23c0Daf335' + address: '0xA7e4dDde3cBcEf122851A7C8F7A55f23c0Daf335', }, MCD_JOIN_CRVV1ETHSTETH_A: { name: 'MCD_JOIN_CRVV1ETHSTETH_A', - address: '0x82D8bfDB61404C796385f251654F6d7e92092b5D' + address: '0x82D8bfDB61404C796385f251654F6d7e92092b5D', }, MCD_JOIN_RWA001_A: { name: 'MCD_JOIN_RWA001_A', - address: '0x476b81c12Dc71EDfad1F64B9E07CaA60F4b156E2' + address: '0x476b81c12Dc71EDfad1F64B9E07CaA60F4b156E2', }, MCD_JOIN_RWA002_A: { name: 'MCD_JOIN_RWA002_A', - address: '0xe72C7e90bc26c11d45dBeE736F0acf57fC5B7152' + address: '0xe72C7e90bc26c11d45dBeE736F0acf57fC5B7152', }, MCD_JOIN_RWA003_A: { name: 'MCD_JOIN_RWA003_A', - address: '0x1Fe789BBac5b141bdD795A3Bc5E12Af29dDB4b86' + address: '0x1Fe789BBac5b141bdD795A3Bc5E12Af29dDB4b86', }, MCD_JOIN_RWA004_A: { name: 'MCD_JOIN_RWA004_A', - address: '0xD50a8e9369140539D1c2D113c4dC1e659c6242eB' + address: '0xD50a8e9369140539D1c2D113c4dC1e659c6242eB', }, MCD_JOIN_RWA005_A: { name: 'MCD_JOIN_RWA005_A', - address: '0xA4fD373b93aD8e054970A3d6cd4Fd4C31D08192e' + address: '0xA4fD373b93aD8e054970A3d6cd4Fd4C31D08192e', }, MCD_JOIN_RWA006_A: { name: 'MCD_JOIN_RWA006_A', - address: '0x5E11E34b6745FeBa9449Ae53c185413d6EdC66BE' + address: '0x5E11E34b6745FeBa9449Ae53c185413d6EdC66BE', }, MCD_JOIN_RETH_A: { name: 'MCD_JOIN_RETH_A', - address: '0xc6424e862f1462281b0a5fac078e4b63006bdebf' + address: '0xc6424e862f1462281b0a5fac078e4b63006bdebf', }, MCD_JOIN_GNO_A: { name: 'MCD_JOIN_GNO_A', - address: '0x7bD3f01e24E0f0838788bC8f573CEA43A80CaBB5' - } + address: '0x7bD3f01e24E0f0838788bC8f573CEA43A80CaBB5', + }, }, pips: { PIP_ETH: { name: 'PIP_ETH', - address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763' + address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763', }, PIP_BAT: { name: 'PIP_BAT', - address: '0xB4eb54AF9Cc7882DF0121d26c5b97E802915ABe6' + address: '0xB4eb54AF9Cc7882DF0121d26c5b97E802915ABe6', }, PIP_USDC: { name: 'PIP_USDC', - address: '0x77b68899b99b686F415d074278a9a16b336085A0' + address: '0x77b68899b99b686F415d074278a9a16b336085A0', }, PIP_WBTC: { name: 'PIP_WBTC', - address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42' + address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42', }, PIP_TUSD: { name: 'PIP_TUSD', - address: '0xeE13831ca96d191B688A670D47173694ba98f1e5' + address: '0xeE13831ca96d191B688A670D47173694ba98f1e5', }, PIP_ZRX: { name: 'PIP_ZRX', - address: '0x7382c066801E7Acb2299aC8562847B9883f5CD3c' + address: '0x7382c066801E7Acb2299aC8562847B9883f5CD3c', }, PIP_KNC: { name: 'PIP_KNC', - address: '0xf36B79BD4C0904A5F350F1e4f776B81208c13069' + address: '0xf36B79BD4C0904A5F350F1e4f776B81208c13069', }, PIP_MANA: { name: 'PIP_MANA', - address: '0x8067259EA630601f319FccE477977E55C6078C13' + address: '0x8067259EA630601f319FccE477977E55C6078C13', }, PIP_USDT: { name: 'PIP_USDT', - address: '0x7a5918670B0C390aD25f7beE908c1ACc2d314A3C' + address: '0x7a5918670B0C390aD25f7beE908c1ACc2d314A3C', }, PIP_PAXUSD: { name: 'PIP_PAXUSD', - address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC' + address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC', }, PIP_PAX: { name: 'PIP_PAX', - address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC' + address: '0x043B963E1B2214eC90046167Ea29C2c8bDD7c0eC', }, PIP_COMP: { name: 'PIP_COMP', - address: '0xBED0879953E633135a48a157718Aa791AC0108E4' + address: '0xBED0879953E633135a48a157718Aa791AC0108E4', }, PIP_LRC: { name: 'PIP_LRC', - address: '0x9eb923339c24c40Bef2f4AF4961742AA7C23EF3a' + address: '0x9eb923339c24c40Bef2f4AF4961742AA7C23EF3a', }, PIP_LINK: { name: 'PIP_LINK', - address: '0x9B0C694C6939b5EA9584e9b61C7815E8d97D9cC7' + address: '0x9B0C694C6939b5EA9584e9b61C7815E8d97D9cC7', }, PIP_BAL: { name: 'PIP_BAL', - address: '0x3ff860c0F28D69F392543A16A397D0dAe85D16dE' + address: '0x3ff860c0F28D69F392543A16A397D0dAe85D16dE', }, PIP_YFI: { name: 'PIP_YFI', - address: '0x5F122465bCf86F45922036970Be6DD7F58820214' + address: '0x5F122465bCf86F45922036970Be6DD7F58820214', }, PIP_GUSD: { name: 'PIP_GUSD', - address: '0xf45Ae69CcA1b9B043dAE2C83A5B65Bc605BEc5F5' + address: '0xf45Ae69CcA1b9B043dAE2C83A5B65Bc605BEc5F5', }, PIP_UNI: { name: 'PIP_UNI', - address: '0xf363c7e351C96b910b92b45d34190650df4aE8e7' + address: '0xf363c7e351C96b910b92b45d34190650df4aE8e7', }, PIP_RENBTC: { name: 'PIP_RENBTC', - address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42' + address: '0xf185d0682d50819263941e5f4EacC763CC5C6C42', }, PIP_AAVE: { name: 'PIP_AAVE', - address: '0x8Df8f06DC2dE0434db40dcBb32a82A104218754c' + address: '0x8Df8f06DC2dE0434db40dcBb32a82A104218754c', }, PIP_MATIC: { name: 'PIP_MATIC', - address: '0x8874964279302e6d4e523Fb1789981C39a1034Ba' + address: '0x8874964279302e6d4e523Fb1789981C39a1034Ba', }, PIP_WSTETH: { name: 'PIP_WSTETH', - address: '0xFe7a2aC0B945f12089aEEB6eCebf4F384D9f043F' + address: '0xFe7a2aC0B945f12089aEEB6eCebf4F384D9f043F', }, PIP_ADAI: { name: 'PIP_ADAI', - address: '0x6A858592fC4cBdf432Fc9A1Bc8A0422B99330bdF' + address: '0x6A858592fC4cBdf432Fc9A1Bc8A0422B99330bdF', }, PIP_UNIV2DAIETH: { name: 'PIP_UNIV2DAIETH', - address: '0xFc8137E1a45BAF0030563EC4F0F851bd36a85b7D' + address: '0xFc8137E1a45BAF0030563EC4F0F851bd36a85b7D', }, PIP_UNIV2WBTCETH: { name: 'PIP_UNIV2WBTCETH', - address: '0x8400D2EDb8B97f780356Ef602b1BdBc082c2aD07' + address: '0x8400D2EDb8B97f780356Ef602b1BdBc082c2aD07', }, PIP_UNIV2USDCETH: { name: 'PIP_UNIV2USDCETH', - address: '0xf751f24DD9cfAd885984D1bA68860F558D21E52A' + address: '0xf751f24DD9cfAd885984D1bA68860F558D21E52A', }, PIP_UNIV2DAIUSDC: { name: 'PIP_UNIV2DAIUSDC', - address: '0x25D03C2C928ADE19ff9f4FFECc07d991d0df054B' + address: '0x25D03C2C928ADE19ff9f4FFECc07d991d0df054B', }, PIP_UNIV2ETHUSDT: { name: 'PIP_UNIV2ETHUSDT', - address: '0x5f6dD5B421B8d92c59dC6D907C9271b1DBFE3016' + address: '0x5f6dD5B421B8d92c59dC6D907C9271b1DBFE3016', }, PIP_UNIV2LINKETH: { name: 'PIP_UNIV2LINKETH', - address: '0xd7d31e62AE5bfC3bfaa24Eda33e8c32D31a1746F' + address: '0xd7d31e62AE5bfC3bfaa24Eda33e8c32D31a1746F', }, PIP_UNIV2UNIETH: { name: 'PIP_UNIV2UNIETH', - address: '0x8462A88f50122782Cc96108F476deDB12248f931' + address: '0x8462A88f50122782Cc96108F476deDB12248f931', }, PIP_UNIV2WBTCDAI: { name: 'PIP_UNIV2WBTCDAI', - address: '0x5bB72127a196392cf4aC00Cf57aB278394d24e55' + address: '0x5bB72127a196392cf4aC00Cf57aB278394d24e55', }, PIP_UNIV2AAVEETH: { name: 'PIP_UNIV2AAVEETH', - address: '0x32d8416e8538Ac36272c44b0cd962cD7E0198489' + address: '0x32d8416e8538Ac36272c44b0cd962cD7E0198489', }, PIP_UNIV2DAIUSDT: { name: 'PIP_UNIV2DAIUSDT', - address: '0x9A1CD705dc7ac64B50777BcEcA3529E58B1292F1' + address: '0x9A1CD705dc7ac64B50777BcEcA3529E58B1292F1', }, PIP_GUNIV3DAIUSDC1: { name: 'PIP_GUNIV3DAIUSDC1', - address: '0x7F6d78CC0040c87943a0e0c140De3F77a273bd58' + address: '0x7F6d78CC0040c87943a0e0c140De3F77a273bd58', }, PIP_GUNIV3DAIUSDC2: { name: 'PIP_GUNIV3DAIUSDC2', - address: '0xcCBa43231aC6eceBd1278B90c3a44711a00F4e93' + address: '0xcCBa43231aC6eceBd1278B90c3a44711a00F4e93', }, PIP_CRVV1ETHSTETH: { name: 'PIP_CRVV1ETHSTETH', - address: '0xEa508F82728927454bd3ce853171b0e2705880D4' + address: '0xEa508F82728927454bd3ce853171b0e2705880D4', }, PIP_RWA001: { name: 'PIP_RWA001', - address: '0x76A9f30B45F4ebFD60Ce8a1c6e963b1605f7cB6d' + address: '0x76A9f30B45F4ebFD60Ce8a1c6e963b1605f7cB6d', }, PIP_RWA002: { name: 'PIP_RWA002', - address: '0xd2473237E20Bd52F8E7cE0FD79403A6a82fbAEC8' + address: '0xd2473237E20Bd52F8E7cE0FD79403A6a82fbAEC8', }, PIP_RWA003: { name: 'PIP_RWA003', - address: '0xDeF7E88447F7D129420FC881B2a854ABB52B73B8' + address: '0xDeF7E88447F7D129420FC881B2a854ABB52B73B8', }, PIP_RWA004: { name: 'PIP_RWA004', - address: '0x5eEE1F3d14850332A75324514CcbD2DBC8Bbc566' + address: '0x5eEE1F3d14850332A75324514CcbD2DBC8Bbc566', }, PIP_RWA005: { name: 'PIP_RWA005', - address: '0x8E6039C558738eb136833aB50271ae065c700d2B' + address: '0x8E6039C558738eb136833aB50271ae065c700d2B', }, PIP_RWA006: { name: 'PIP_RWA006', - address: '0xB8AeCF04Fdf22Ef6C0c6b6536896e1F2870C41D3' + address: '0xB8AeCF04Fdf22Ef6C0c6b6536896e1F2870C41D3', }, PIP_RETH: { name: 'PIP_RETH', - address: '0xee7f0b350aa119b3d05dc733a4621a81972f7d47' + address: '0xee7f0b350aa119b3d05dc733a4621a81972f7d47', }, PIP_GNO: { name: 'PIP_GNO', - address: '0xd800ca44fFABecd159c7889c3bf64a217361AEc8' + address: '0xd800ca44fFABecd159c7889c3bf64a217361AEc8', }, PIP_WETH: { name: 'PIP_WETH', - address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763' - } - } + address: '0x81FE72B5A8d1A857d176C3E7d5Bd2679A9B85763', + }, + }, }, automation: { AutomationBot: { name: 'AutomationBot', - address: '0x6E87a7A0A03E51A741075fDf4D1FCce39a4Df01b' + address: '0x6E87a7A0A03E51A741075fDf4D1FCce39a4Df01b', }, AutomationBotV2: { name: 'AutomationBotV2', - address: '0x5743b5606e94fb534a31e1cefb3242c8a9422e5e' + address: '0x5743b5606e94fb534a31e1cefb3242c8a9422e5e', }, AutomationBotAggregator: { name: 'AutomationBotAggregator', - address: '0x5f1d184204775fBB351C4b2C61a2fD4aAbd3fB76' - } + address: '0x5f1d184204775fBB351C4b2C61a2fD4aAbd3fB76', + }, }, ajna: { AjnaPoolInfo: { name: 'AjnaPoolInfo', address: '0x154FFf344f426F99E328bacf70f4Eb632210ecdc', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.AJNA_POOL_UTILS_INFO + serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.AJNA_POOL_UTILS_INFO, }, AjnaProxyActions: { name: 'AjnaProxyActions', - address: '0xFBcB0bf3A7BcD1a368e8e8Ad2Ab601160088b39C' + address: '0xFBcB0bf3A7BcD1a368e8e8Ad2Ab601160088b39C', }, AjnaPoolPairs_ETHDAI: { name: 'AjnaPoolPairs_ETHDAI', - address: '0x6C383DE992196d1Ac349CcdF58Ecb6026e45144E' + address: '0x6C383DE992196d1Ac349CcdF58Ecb6026e45144E', }, AjnaPoolPairs_ETHUSDC: { name: 'AjnaPoolPairs_ETHUSDC', - address: '0x1C50ce3550D1846134F3B7c09785e7005F6A1566' + address: '0x1C50ce3550D1846134F3B7c09785e7005F6A1566', }, AjnaPoolPairs_RETHDAI: { name: 'AjnaPoolPairs_RETHDAI', - address: '0x42d3f9C4dF0b98c3974Fd539A7EA9d0847F37Ef5' + address: '0x42d3f9C4dF0b98c3974Fd539A7EA9d0847F37Ef5', }, AjnaPoolPairs_RETHETH: { name: 'AjnaPoolPairs_RETHETH', - address: '0xa2fFdC7EFeF98469d11370d91c0A17DC83EC2BDA' + address: '0xa2fFdC7EFeF98469d11370d91c0A17DC83EC2BDA', }, AjnaPoolPairs_RETHUSDC: { name: 'AjnaPoolPairs_RETHUSDC', - address: '0xee056B440F78e692C9a49ed0640146452F881240' + address: '0xee056B440F78e692C9a49ed0640146452F881240', }, AjnaPoolPairs_USDCETH: { name: 'AjnaPoolPairs_USDCETH', - address: '0x0Bc54b36d4Fa082eDe775Dd45f69FBbe360DDeb6' + address: '0x0Bc54b36d4Fa082eDe775Dd45f69FBbe360DDeb6', }, AjnaPoolPairs_USDCWBTC: { name: 'AjnaPoolPairs_USDCWBTC', - address: '0x1a9Cea49DaEB8c36EA707A9171EbDF4097796dD4' + address: '0x1a9Cea49DaEB8c36EA707A9171EbDF4097796dD4', }, AjnaPoolPairs_USDCDAI: { name: 'AjnaPoolPairs_USDCDAI', address: '' }, AjnaPoolPairs_WBTCDAI: { name: 'AjnaPoolPairs_WBTCDAI', - address: '0xdB30a08Ebc49af1BaF87f57824f85056cEd33d5F' + address: '0xdB30a08Ebc49af1BaF87f57824f85056cEd33d5F', }, AjnaPoolPairs_WBTCUSDC: { name: 'AjnaPoolPairs_WBTCUSDC', - address: '0x65374cD7db203e0c9EA8B7DA28A25dC770bEcB9e' + address: '0x65374cD7db203e0c9EA8B7DA28A25dC770bEcB9e', }, AjnaPoolPairs_WSTETHDAI: { name: 'AjnaPoolPairs_WSTETHDAI', - address: '0x8519bE08b8d83baEb11eBa52A7889967dCeD9Ae0' + address: '0x8519bE08b8d83baEb11eBa52A7889967dCeD9Ae0', }, AjnaPoolPairs_WSTETHETH: { name: 'AjnaPoolPairs_WSTETHETH', - address: '0x37d3a44C905663d7B77C9b574b941D4FbF713A91' + address: '0x37d3a44C905663d7B77C9b574b941D4FbF713A91', }, AjnaPoolPairs_WSTETHUSDC: { name: 'AjnaPoolPairs_WSTETHUSDC', - address: '0xE0FFABEa66627a588EFB6C870677Baa23a53b948' + address: '0xE0FFABEa66627a588EFB6C870677Baa23a53b948', }, AjnaPoolPairs_CBETHETH: { name: 'AjnaPoolPairs_CBETHETH', - address: '0xad24FC773e125Edb223C38a39657cB64bc7C178e' + address: '0xad24FC773e125Edb223C38a39657cB64bc7C178e', }, AjnaPoolPairs_TBTCWBTC: { name: 'AjnaPoolPairs_TBTCWBTC', - address: '0x74da6fc4e456583b88d622b19ef6addfb726c0d7' + address: '0x74da6fc4e456583b88d622b19ef6addfb726c0d7', }, AjnaPoolPairs_TBTCUSDC: { name: 'AjnaPoolPairs_TBTCUSDC', - address: '0xe0cdc238a7bbb2c96c57595163a8f6d2d4b42546' + address: '0xe0cdc238a7bbb2c96c57595163a8f6d2d4b42546', }, AjnaPoolPairs_ETHGHO: { name: 'AjnaPoolPairs_ETHGHO', - address: '0x15838515903b3843e02f9283b4492833f138e8de' + address: '0x15838515903b3843e02f9283b4492833f138e8de', }, AjnaPoolPairs_WSTETHGHO: { name: 'AjnaPoolPairs_WSTETHGHO', - address: '0x33567e358a64924b2247c490fd08d18facac4a14' + address: '0x33567e358a64924b2247c490fd08d18facac4a14', }, AjnaPoolPairs_GHODAI: { name: 'AjnaPoolPairs_GHODAI', - address: '0x9a98d5e8b9b2f85ca9f1566630c448a87ac7e6c4' + address: '0x9a98d5e8b9b2f85ca9f1566630c448a87ac7e6c4', }, AjnaPoolPairs_RETHGHO: { name: 'AjnaPoolPairs_RETHGHO', - address: '0xb60f9a764b0c08053dbb187726dc9afb126e8e19' + address: '0xb60f9a764b0c08053dbb187726dc9afb126e8e19', }, AjnaPoolPairs_WBTCGHO: { name: 'AjnaPoolPairs_WBTCGHO', - address: '0x3fec883aaaa6896a600b99748e5d5d5c93df6aa1' + address: '0x3fec883aaaa6896a600b99748e5d5d5c93df6aa1', }, AjnaPoolPairs_CBETHGHO: { name: 'AjnaPoolPairs_CBETHGHO', - address: '0x15acb60c3b1868d6ddc6e1b9fbdcc9531547438b' + address: '0x15acb60c3b1868d6ddc6e1b9fbdcc9531547438b', }, AjnaPoolPairs_WLDUSDC: { name: 'AjnaPoolPairs_WLDUSDC', - address: '0x29c1459e3fc8d4fde275bee5df5edaf984978f29' + address: '0x29c1459e3fc8d4fde275bee5df5edaf984978f29', }, AjnaPoolPairs_USDCWLD: { name: 'AjnaPoolPairs_USDCWLD', - address: '0xe4418e421d179d33f2f16cecef89b72e46c099bf' + address: '0xe4418e421d179d33f2f16cecef89b72e46c099bf', }, AjnaPoolPairs_SDAIUSDC: { name: 'AjnaPoolPairs_SDAIUSDC', - address: '0xf4ab415e00ff0ed4f25d31d7e9140f3c75b69e7d' + address: '0xf4ab415e00ff0ed4f25d31d7e9140f3c75b69e7d', }, AjnaPoolPairs_YFIDAI: { name: 'AjnaPoolPairs_YFIDAI', - address: '0x5b14144da6fd5e3b158d6df7b6ed8345829aab78' + address: '0x5b14144da6fd5e3b158d6df7b6ed8345829aab78', }, AjnaPoolPairs_YIELDETHETH: { name: 'AjnaPoolPairs_YIELDETHETH', - address: '0x25d63c91a85d0a21dc84021df01a800cd3cda797' + address: '0x25d63c91a85d0a21dc84021df01a800cd3cda797', }, AjnaPoolPairs_YIELDBTCWBTC: { name: 'AjnaPoolPairs_YIELDBTCWBTC', - address: '0x67a64e974bfeaded23cf479e27654d8face82126' + address: '0x67a64e974bfeaded23cf479e27654d8face82126', }, AjnaRewardsManager: { name: 'AjnaRewardsManager', - address: '0xaF9bc1F09fe561CbD00018fC352507fD23cD46E2' + address: '0xaF9bc1F09fe561CbD00018fC352507fD23cD46E2', }, AjnaRewardsClaimer: { name: 'AjnaRewardsClaimer', - address: '0xFb6EdFC7ADc67645423c233332efD6E6804e72F5' + address: '0xFb6EdFC7ADc67645423c233332efD6E6804e72F5', }, ERC20PoolFactory: { name: 'ERC20PoolFactory', address: '0xe6f4d9711121e5304b30ac2aae57e3b085ad3c4d', - serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.ERC20_POOL_FACTORY - } + serviceRegistryName: SERVICE_REGISTRY_NAMES.ajna.ERC20_POOL_FACTORY, + }, }, morphoblue: { MorphoBlue: { name: 'MorphoBlue', - address: '0x0000000000000000000000000000000000000000', - serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE + address: '0xBBBBBbbBBb9cC5e90e3b3Af64bdAF62C37EEFFCb', + serviceRegistryName: SERVICE_REGISTRY_NAMES.morphoblue.MORPHO_BLUE, }, AdaptiveCurveIrm: { name: 'AdaptiveCurveIrm', - address: '0x0000000000000000000000000000000000000000', - - } - } -} \ No newline at end of file + address: '0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC', + }, + }, +} diff --git a/packages/dma-library/src/utils/abis/get-abi-for-contract.ts b/packages/dma-library/src/utils/abis/get-abi-for-contract.ts index b797be88..e72ecd72 100644 --- a/packages/dma-library/src/utils/abis/get-abi-for-contract.ts +++ b/packages/dma-library/src/utils/abis/get-abi-for-contract.ts @@ -66,8 +66,8 @@ const abiByContractName: Partial< }, [Network.OPTIMISM]: { AAVE_V3: { - PoolDataProvider: aaveV3ProtocolDataProviderOptimismABI, - LendingPool: aaveV3PoolOptimismABI, + PoolDataProvider: aaveV3PoolABI, + LendingPool: aaveV3ProtocolDataProviderABI, Oracle: aaveV3PriceOracleOptimismABI, }, Spark: { From bc2ced12aa1d293287bbb9092e35f216fcd89fdc Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 15:28:49 +0100 Subject: [PATCH 09/15] v0.1.22-automation --- packages/addresses/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/addresses/package.json b/packages/addresses/package.json index 4c3fafe9..e4b0ef20 100644 --- a/packages/addresses/package.json +++ b/packages/addresses/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/addresses", - "version": "0.1.21-automation", + "version": "0.1.22-automation", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From 1541003f1b4cf7714ce729bbefac25bd6ce66898 Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 15:29:49 +0100 Subject: [PATCH 10/15] v0.6.12-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index d3281443..c5aa642d 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.11-auto", + "version": "0.6.12-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From bc309e767aef777cbc84f796c456f6018888d8da Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 15:47:38 +0100 Subject: [PATCH 11/15] v0.6.13-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index c5aa642d..d34f7ead 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.12-auto", + "version": "0.6.13-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From c8d843068ae568534d9a68b553769cca50dea48f Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 16:03:11 +0100 Subject: [PATCH 12/15] v0.6.14-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index d34f7ead..245e42bd 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.13-auto", + "version": "0.6.14-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From 675de9000e8a7c35e0f01dba532bf37b0e8010cd Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 16:16:39 +0100 Subject: [PATCH 13/15] v0.6.15-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index 245e42bd..9fe07ef9 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.14-auto", + "version": "0.6.15-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From ce8e5a920407157b96ee4ab77623c71bba5accce Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Wed, 9 Oct 2024 16:35:09 +0100 Subject: [PATCH 14/15] v0.6.16-auto --- packages/dma-library/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/dma-library/package.json b/packages/dma-library/package.json index 9fe07ef9..193ecc05 100644 --- a/packages/dma-library/package.json +++ b/packages/dma-library/package.json @@ -1,6 +1,6 @@ { "name": "@oasisdex/dma-library", - "version": "0.6.15-auto", + "version": "0.6.16-auto", "typings": "lib/index.d.ts", "types": "lib/index.d.ts", "main": "lib/index.js", From 3b6837af6356f2c8849fee6492a0b56c01ea6c40 Mon Sep 17 00:00:00 2001 From: James Tuckett Date: Fri, 11 Oct 2024 11:13:04 +0100 Subject: [PATCH 15/15] chore: remove logging --- .../aave/v3-l2/aaveProtocolDataProvider.json | 206 +++++++++++++++++- .../src/protocols/aave-like/utils.ts | 1 + .../protocols/aave/get-aave-protocol-data.ts | 13 +- .../src/utils/abis/get-abi-for-contract.ts | 31 ++- 4 files changed, 228 insertions(+), 23 deletions(-) diff --git a/packages/abis/external/protocols/aave/v3-l2/aaveProtocolDataProvider.json b/packages/abis/external/protocols/aave/v3-l2/aaveProtocolDataProvider.json index d0d9e250..7493578e 100644 --- a/packages/abis/external/protocols/aave/v3-l2/aaveProtocolDataProvider.json +++ b/packages/abis/external/protocols/aave/v3-l2/aaveProtocolDataProvider.json @@ -1 +1,205 @@ -[{"inputs":[{"internalType":"contract IPoolAddressesProvider","name":"addressesProvider","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"ADDRESSES_PROVIDER","outputs":[{"internalType":"contract IPoolAddressesProvider","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getATokenTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllATokens","outputs":[{"components":[{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address","name":"tokenAddress","type":"address"}],"internalType":"struct AaveProtocolDataProvider.TokenData[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllReservesTokens","outputs":[{"components":[{"internalType":"string","name":"symbol","type":"string"},{"internalType":"address","name":"tokenAddress","type":"address"}],"internalType":"struct AaveProtocolDataProvider.TokenData[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getDebtCeiling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getDebtCeilingDecimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getInterestRateStrategyAddress","outputs":[{"internalType":"address","name":"irStrategyAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getLiquidationProtocolFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getPaused","outputs":[{"internalType":"bool","name":"isPaused","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveCaps","outputs":[{"internalType":"uint256","name":"borrowCap","type":"uint256"},{"internalType":"uint256","name":"supplyCap","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveConfigurationData","outputs":[{"internalType":"uint256","name":"decimals","type":"uint256"},{"internalType":"uint256","name":"ltv","type":"uint256"},{"internalType":"uint256","name":"liquidationThreshold","type":"uint256"},{"internalType":"uint256","name":"liquidationBonus","type":"uint256"},{"internalType":"uint256","name":"reserveFactor","type":"uint256"},{"internalType":"bool","name":"usageAsCollateralEnabled","type":"bool"},{"internalType":"bool","name":"borrowingEnabled","type":"bool"},{"internalType":"bool","name":"stableBorrowRateEnabled","type":"bool"},{"internalType":"bool","name":"isActive","type":"bool"},{"internalType":"bool","name":"isFrozen","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveData","outputs":[{"internalType":"uint256","name":"unbacked","type":"uint256"},{"internalType":"uint256","name":"accruedToTreasuryScaled","type":"uint256"},{"internalType":"uint256","name":"totalAToken","type":"uint256"},{"internalType":"uint256","name":"totalStableDebt","type":"uint256"},{"internalType":"uint256","name":"totalVariableDebt","type":"uint256"},{"internalType":"uint256","name":"liquidityRate","type":"uint256"},{"internalType":"uint256","name":"variableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"stableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"averageStableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"liquidityIndex","type":"uint256"},{"internalType":"uint256","name":"variableBorrowIndex","type":"uint256"},{"internalType":"uint40","name":"lastUpdateTimestamp","type":"uint40"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveEModeCategory","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getReserveTokensAddresses","outputs":[{"internalType":"address","name":"aTokenAddress","type":"address"},{"internalType":"address","name":"stableDebtTokenAddress","type":"address"},{"internalType":"address","name":"variableDebtTokenAddress","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getSiloedBorrowing","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getTotalDebt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"}],"name":"getUnbackedMintCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"asset","type":"address"},{"internalType":"address","name":"user","type":"address"}],"name":"getUserReserveData","outputs":[{"internalType":"uint256","name":"currentATokenBalance","type":"uint256"},{"internalType":"uint256","name":"currentStableDebt","type":"uint256"},{"internalType":"uint256","name":"currentVariableDebt","type":"uint256"},{"internalType":"uint256","name":"principalStableDebt","type":"uint256"},{"internalType":"uint256","name":"scaledVariableDebt","type":"uint256"},{"internalType":"uint256","name":"stableBorrowRate","type":"uint256"},{"internalType":"uint256","name":"liquidityRate","type":"uint256"},{"internalType":"uint40","name":"stableRateLastUpdated","type":"uint40"},{"internalType":"bool","name":"usageAsCollateralEnabled","type":"bool"}],"stateMutability":"view","type":"function"}] \ No newline at end of file +[ + { + "inputs": [ + { + "internalType": "contract IPoolAddressesProvider", + "name": "addressesProvider", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "ADDRESSES_PROVIDER", + "outputs": [ + { "internalType": "contract IPoolAddressesProvider", "name": "", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getATokenTotalSupply", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAllATokens", + "outputs": [ + { + "components": [ + { "internalType": "string", "name": "symbol", "type": "string" }, + { "internalType": "address", "name": "tokenAddress", "type": "address" } + ], + "internalType": "struct AaveProtocolDataProvider.TokenData[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getAllReservesTokens", + "outputs": [ + { + "components": [ + { "internalType": "string", "name": "symbol", "type": "string" }, + { "internalType": "address", "name": "tokenAddress", "type": "address" } + ], + "internalType": "struct AaveProtocolDataProvider.TokenData[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getDebtCeiling", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getDebtCeilingDecimals", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getInterestRateStrategyAddress", + "outputs": [{ "internalType": "address", "name": "irStrategyAddress", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getLiquidationProtocolFee", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getPaused", + "outputs": [{ "internalType": "bool", "name": "isPaused", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveCaps", + "outputs": [ + { "internalType": "uint256", "name": "borrowCap", "type": "uint256" }, + { "internalType": "uint256", "name": "supplyCap", "type": "uint256" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveConfigurationData", + "outputs": [ + { "internalType": "uint256", "name": "decimals", "type": "uint256" }, + { "internalType": "uint256", "name": "ltv", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidationThreshold", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidationBonus", "type": "uint256" }, + { "internalType": "uint256", "name": "reserveFactor", "type": "uint256" }, + { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" }, + { "internalType": "bool", "name": "borrowingEnabled", "type": "bool" }, + { "internalType": "bool", "name": "stableBorrowRateEnabled", "type": "bool" }, + { "internalType": "bool", "name": "isActive", "type": "bool" }, + { "internalType": "bool", "name": "isFrozen", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveData", + "outputs": [ + { "internalType": "uint256", "name": "unbacked", "type": "uint256" }, + { "internalType": "uint256", "name": "accruedToTreasuryScaled", "type": "uint256" }, + { "internalType": "uint256", "name": "totalAToken", "type": "uint256" }, + { "internalType": "uint256", "name": "totalStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "totalVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { "internalType": "uint256", "name": "variableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "averageStableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityIndex", "type": "uint256" }, + { "internalType": "uint256", "name": "variableBorrowIndex", "type": "uint256" }, + { "internalType": "uint40", "name": "lastUpdateTimestamp", "type": "uint40" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveEModeCategory", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getReserveTokensAddresses", + "outputs": [ + { "internalType": "address", "name": "aTokenAddress", "type": "address" }, + { "internalType": "address", "name": "stableDebtTokenAddress", "type": "address" }, + { "internalType": "address", "name": "variableDebtTokenAddress", "type": "address" } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getSiloedBorrowing", + "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getTotalDebt", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "address", "name": "asset", "type": "address" }], + "name": "getUnbackedMintCap", + "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { "internalType": "address", "name": "asset", "type": "address" }, + { "internalType": "address", "name": "user", "type": "address" } + ], + "name": "getUserReserveData", + "outputs": [ + { "internalType": "uint256", "name": "currentATokenBalance", "type": "uint256" }, + { "internalType": "uint256", "name": "currentStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "currentVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "principalStableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "scaledVariableDebt", "type": "uint256" }, + { "internalType": "uint256", "name": "stableBorrowRate", "type": "uint256" }, + { "internalType": "uint256", "name": "liquidityRate", "type": "uint256" }, + { "internalType": "uint40", "name": "stableRateLastUpdated", "type": "uint40" }, + { "internalType": "bool", "name": "usageAsCollateralEnabled", "type": "bool" } + ], + "stateMutability": "view", + "type": "function" + } +] diff --git a/packages/dma-library/src/protocols/aave-like/utils.ts b/packages/dma-library/src/protocols/aave-like/utils.ts index 45e63323..9b0ac5b7 100644 --- a/packages/dma-library/src/protocols/aave-like/utils.ts +++ b/packages/dma-library/src/protocols/aave-like/utils.ts @@ -66,5 +66,6 @@ export async function getAaveLikeSystemContracts( protocol, ) const pool = await getContract(addresses.lendingPool, 'LendingPool', provider, protocol) + return { oracle, poolDataProvider, pool } } diff --git a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts index dc0ebe77..fc6313e4 100644 --- a/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts +++ b/packages/dma-library/src/protocols/aave/get-aave-protocol-data.ts @@ -148,8 +148,9 @@ export async function getAaveV3ProtocolData({ pool.getReserveData(debtTokenAddress), ]) - const collateralReserveIndex = collateralReserveData.id.toNumber() - const debtReserveIndex = debtReserveData.id.toNumber() + // Use the id directly as it's already a uint16 + const collateralReserveIndex = collateralReserveData.id + const debtReserveIndex = debtReserveData.id // Fetch the collateral and borrowable bitmaps for the user's eMode const [eModeCategoryCollateralBitmap, eModeCategoryBorrowableBitmap] = await Promise.all([ @@ -159,11 +160,11 @@ export async function getAaveV3ProtocolData({ // Check if the collateral and debt tokens are enabled in the user's eMode const isCollateralValidInEMode = isReserveEnabledOnBitmap( - eModeCategoryCollateralBitmap, + new BigNumber(eModeCategoryCollateralBitmap.toString()), collateralReserveIndex, ) const isDebtValidInEMode = isReserveEnabledOnBitmap( - eModeCategoryBorrowableBitmap, + new BigNumber(eModeCategoryBorrowableBitmap.toString()), debtReserveIndex, ) @@ -175,7 +176,7 @@ export async function getAaveV3ProtocolData({ } } - return { + const result = { flashloanAssetPriceInEth: flashloanPrice, debtTokenPriceInEth: debtPrice, collateralTokenPriceInEth: collateralPrice, @@ -185,6 +186,8 @@ export async function getAaveV3ProtocolData({ userReserveDataForCollateral: userCollateralData, eModeCategoryData, } + + return result } /** diff --git a/packages/dma-library/src/utils/abis/get-abi-for-contract.ts b/packages/dma-library/src/utils/abis/get-abi-for-contract.ts index e72ecd72..4cbffd48 100644 --- a/packages/dma-library/src/utils/abis/get-abi-for-contract.ts +++ b/packages/dma-library/src/utils/abis/get-abi-for-contract.ts @@ -6,12 +6,9 @@ import aaveV2PoolDataProviderABI from '@abis/external/protocols/aave/v2/protocol import aaveV3PriceOracleABI from '@abis/external/protocols/aave/v3/aaveOracle.json' import aaveV3ProtocolDataProviderABI from '@abis/external/protocols/aave/v3/aaveProtocolDataProvider.json' import aaveV3PoolABI from '@abis/external/protocols/aave/v3/pool.json' -// ABIs for AAVE V3 Optimism -import aaveV3PriceOracleOptimismABI from '@abis/external/protocols/aave/v3-l2/aaveOracle.json' -import aaveV3ProtocolDataProviderOptimismABI from '@abis/external/protocols/aave/v3-l2/aaveProtocolDataProvider.json' -import aaveV3PoolOptimismABI from '@abis/external/protocols/aave/v3-l2/pool.json' -import sparkPoolABI from '@abis/external/protocols/spark/lendingPool.json' // ABIs for Spark +import sparkProtocolDataProviderABI from '@abis/external/protocols/aave/v3-l2/aaveProtocolDataProvider.json' +import sparkPoolABI from '@abis/external/protocols/spark/lendingPool.json' import sparkOracleABI from '@abis/external/protocols/spark/oracle.json' import sparkPoolDataProviderABI from '@abis/external/protocols/spark/poolDataProvider.json' // Other imports @@ -66,28 +63,28 @@ const abiByContractName: Partial< }, [Network.OPTIMISM]: { AAVE_V3: { - PoolDataProvider: aaveV3PoolABI, - LendingPool: aaveV3ProtocolDataProviderABI, - Oracle: aaveV3PriceOracleOptimismABI, + LendingPool: aaveV3PoolABI, + PoolDataProvider: aaveV3ProtocolDataProviderABI, + Oracle: aaveV3PriceOracleABI, }, Spark: { - PoolDataProvider: aaveV3ProtocolDataProviderOptimismABI, - LendingPool: aaveV3PoolOptimismABI, - Oracle: aaveV3PriceOracleOptimismABI, + PoolDataProvider: sparkProtocolDataProviderABI, + LendingPool: sparkPoolABI, + Oracle: sparkOracleABI, }, }, [Network.ARBITRUM]: { AAVE_V3: { - PoolDataProvider: aaveV3ProtocolDataProviderOptimismABI, - LendingPool: aaveV3PoolOptimismABI, - Oracle: aaveV3PriceOracleOptimismABI, + LendingPool: aaveV3PoolABI, + PoolDataProvider: aaveV3ProtocolDataProviderABI, + Oracle: aaveV3PriceOracleABI, }, }, [Network.BASE]: { AAVE_V3: { - PoolDataProvider: aaveV3ProtocolDataProviderOptimismABI, - LendingPool: aaveV3PoolOptimismABI, - Oracle: aaveV3PriceOracleOptimismABI, + LendingPool: aaveV3PoolABI, + PoolDataProvider: aaveV3ProtocolDataProviderABI, + Oracle: aaveV3PriceOracleABI, }, }, }