@morpho-org/blue-sdk 5.16.0 → 5.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/{addresses.d.ts → cjs/addresses.d.ts} +12 -0
- package/lib/{addresses.js → cjs/addresses.js} +6 -0
- package/lib/cjs/package.json +1 -0
- package/lib/{position → cjs/position}/PreLiquidationPosition.d.ts +3 -3
- package/lib/{position → cjs/position}/PreLiquidationPosition.js +16 -16
- package/lib/{preLiquidation.d.ts → cjs/preLiquidation.d.ts} +1 -1
- package/lib/{preLiquidation.js → cjs/preLiquidation.js} +2 -2
- package/lib/{vault → cjs/vault}/index.d.ts +1 -1
- package/lib/{vault → cjs/vault}/index.js +1 -1
- package/lib/{vault → cjs/vault}/v2/VaultV2.d.ts +5 -5
- package/lib/{vault → cjs/vault}/v2/VaultV2.js +25 -25
- package/lib/{vault → cjs/vault}/v2/VaultV2Adapter.d.ts +2 -2
- package/lib/{vault → cjs/vault}/v2/VaultV2MorphoMarketV1Adapter.d.ts +7 -7
- package/lib/{vault → cjs/vault}/v2/VaultV2MorphoMarketV1Adapter.js +9 -9
- package/lib/{vault → cjs/vault}/v2/VaultV2MorphoMarketV1AdapterV2.d.ts +6 -6
- package/lib/{vault → cjs/vault}/v2/VaultV2MorphoMarketV1AdapterV2.js +8 -8
- package/lib/{vault → cjs/vault}/v2/VaultV2MorphoVaultV1Adapter.d.ts +6 -6
- package/lib/{vault → cjs/vault}/v2/VaultV2MorphoVaultV1Adapter.js +2 -2
- package/lib/esm/addresses.d.ts +2243 -0
- package/lib/esm/addresses.js +1315 -0
- package/lib/esm/chain.d.ts +405 -0
- package/lib/esm/chain.js +276 -0
- package/lib/esm/constants.d.ts +20 -0
- package/lib/esm/constants.js +21 -0
- package/lib/esm/errors.d.ts +101 -0
- package/lib/esm/errors.js +192 -0
- package/lib/esm/holding/AssetBalances.d.ts +48 -0
- package/lib/esm/holding/AssetBalances.js +38 -0
- package/lib/esm/holding/Holding.d.ts +63 -0
- package/lib/esm/holding/Holding.js +63 -0
- package/lib/esm/holding/index.d.ts +2 -0
- package/lib/esm/holding/index.js +2 -0
- package/lib/esm/index.d.ts +14 -0
- package/lib/esm/index.js +14 -0
- package/lib/esm/market/Market.d.ts +424 -0
- package/lib/esm/market/Market.js +576 -0
- package/lib/esm/market/MarketParams.d.ts +74 -0
- package/lib/esm/market/MarketParams.js +91 -0
- package/lib/esm/market/MarketUtils.d.ts +273 -0
- package/lib/esm/market/MarketUtils.js +323 -0
- package/lib/esm/market/index.d.ts +3 -0
- package/lib/esm/market/index.js +3 -0
- package/lib/esm/math/AdaptiveCurveIrmLib.d.ts +40 -0
- package/lib/esm/math/AdaptiveCurveIrmLib.js +133 -0
- package/lib/esm/math/MathLib.d.ts +102 -0
- package/lib/esm/math/MathLib.js +168 -0
- package/lib/esm/math/SharesMath.d.ts +12 -0
- package/lib/esm/math/SharesMath.js +18 -0
- package/lib/esm/math/index.d.ts +3 -0
- package/lib/esm/math/index.js +3 -0
- package/lib/esm/package.json +1 -0
- package/lib/esm/position/Position.d.ts +147 -0
- package/lib/esm/position/Position.js +237 -0
- package/lib/esm/position/PreLiquidationPosition.d.ts +60 -0
- package/lib/esm/position/PreLiquidationPosition.js +97 -0
- package/lib/esm/position/index.d.ts +2 -0
- package/lib/esm/position/index.js +2 -0
- package/lib/esm/preLiquidation.d.ts +15 -0
- package/lib/esm/preLiquidation.js +91 -0
- package/lib/esm/token/ConstantWrappedToken.d.ts +17 -0
- package/lib/esm/token/ConstantWrappedToken.js +30 -0
- package/lib/esm/token/Eip5267Domain.d.ts +55 -0
- package/lib/esm/token/Eip5267Domain.js +66 -0
- package/lib/esm/token/ExchangeRateWrappedToken.d.ts +11 -0
- package/lib/esm/token/ExchangeRateWrappedToken.js +17 -0
- package/lib/esm/token/Token.d.ts +52 -0
- package/lib/esm/token/Token.js +62 -0
- package/lib/esm/token/VaultToken.d.ts +23 -0
- package/lib/esm/token/VaultToken.js +27 -0
- package/lib/esm/token/WrappedToken.d.ts +17 -0
- package/lib/esm/token/WrappedToken.js +29 -0
- package/lib/esm/token/index.d.ts +6 -0
- package/lib/esm/token/index.js +6 -0
- package/lib/esm/types.d.ts +26 -0
- package/lib/esm/types.js +13 -0
- package/lib/esm/user/User.d.ts +20 -0
- package/lib/esm/user/User.js +19 -0
- package/lib/esm/user/index.d.ts +1 -0
- package/lib/esm/user/index.js +1 -0
- package/lib/esm/utils.d.ts +13 -0
- package/lib/esm/utils.js +10 -0
- package/lib/esm/vault/Vault.d.ts +214 -0
- package/lib/esm/vault/Vault.js +289 -0
- package/lib/esm/vault/VaultConfig.d.ts +11 -0
- package/lib/esm/vault/VaultConfig.js +10 -0
- package/lib/esm/vault/VaultMarketAllocation.d.ts +20 -0
- package/lib/esm/vault/VaultMarketAllocation.js +27 -0
- package/lib/esm/vault/VaultMarketConfig.d.ts +43 -0
- package/lib/esm/vault/VaultMarketConfig.js +39 -0
- package/lib/esm/vault/VaultMarketPublicAllocatorConfig.d.ts +29 -0
- package/lib/esm/vault/VaultMarketPublicAllocatorConfig.js +24 -0
- package/lib/esm/vault/VaultUser.d.ts +26 -0
- package/lib/esm/vault/VaultUser.js +24 -0
- package/lib/esm/vault/VaultUtils.d.ts +16 -0
- package/lib/esm/vault/VaultUtils.js +17 -0
- package/lib/esm/vault/index.d.ts +8 -0
- package/lib/esm/vault/index.js +8 -0
- package/lib/esm/vault/v2/VaultV2.d.ts +87 -0
- package/lib/esm/vault/v2/VaultV2.js +154 -0
- package/lib/esm/vault/v2/VaultV2Adapter.d.ts +29 -0
- package/lib/esm/vault/v2/VaultV2Adapter.js +12 -0
- package/lib/esm/vault/v2/VaultV2MorphoMarketV1Adapter.d.ts +30 -0
- package/lib/esm/vault/v2/VaultV2MorphoMarketV1Adapter.js +54 -0
- package/lib/esm/vault/v2/VaultV2MorphoMarketV1AdapterV2.d.ts +33 -0
- package/lib/esm/vault/v2/VaultV2MorphoMarketV1AdapterV2.js +63 -0
- package/lib/esm/vault/v2/VaultV2MorphoVaultV1Adapter.d.ts +24 -0
- package/lib/esm/vault/v2/VaultV2MorphoVaultV1Adapter.js +36 -0
- package/lib/esm/vault/v2/index.d.ts +5 -0
- package/lib/esm/vault/v2/index.js +5 -0
- package/package.json +16 -7
- package/src/index.ts +14 -0
- /package/lib/{chain.d.ts → cjs/chain.d.ts} +0 -0
- /package/lib/{chain.js → cjs/chain.js} +0 -0
- /package/lib/{constants.d.ts → cjs/constants.d.ts} +0 -0
- /package/lib/{constants.js → cjs/constants.js} +0 -0
- /package/lib/{errors.d.ts → cjs/errors.d.ts} +0 -0
- /package/lib/{errors.js → cjs/errors.js} +0 -0
- /package/lib/{holding → cjs/holding}/AssetBalances.d.ts +0 -0
- /package/lib/{holding → cjs/holding}/AssetBalances.js +0 -0
- /package/lib/{holding → cjs/holding}/Holding.d.ts +0 -0
- /package/lib/{holding → cjs/holding}/Holding.js +0 -0
- /package/lib/{holding → cjs/holding}/index.d.ts +0 -0
- /package/lib/{holding → cjs/holding}/index.js +0 -0
- /package/lib/{index.d.ts → cjs/index.d.ts} +0 -0
- /package/lib/{index.js → cjs/index.js} +0 -0
- /package/lib/{market → cjs/market}/Market.d.ts +0 -0
- /package/lib/{market → cjs/market}/Market.js +0 -0
- /package/lib/{market → cjs/market}/MarketParams.d.ts +0 -0
- /package/lib/{market → cjs/market}/MarketParams.js +0 -0
- /package/lib/{market → cjs/market}/MarketUtils.d.ts +0 -0
- /package/lib/{market → cjs/market}/MarketUtils.js +0 -0
- /package/lib/{market → cjs/market}/index.d.ts +0 -0
- /package/lib/{market → cjs/market}/index.js +0 -0
- /package/lib/{math → cjs/math}/AdaptiveCurveIrmLib.d.ts +0 -0
- /package/lib/{math → cjs/math}/AdaptiveCurveIrmLib.js +0 -0
- /package/lib/{math → cjs/math}/MathLib.d.ts +0 -0
- /package/lib/{math → cjs/math}/MathLib.js +0 -0
- /package/lib/{math → cjs/math}/SharesMath.d.ts +0 -0
- /package/lib/{math → cjs/math}/SharesMath.js +0 -0
- /package/lib/{math → cjs/math}/index.d.ts +0 -0
- /package/lib/{math → cjs/math}/index.js +0 -0
- /package/lib/{position → cjs/position}/Position.d.ts +0 -0
- /package/lib/{position → cjs/position}/Position.js +0 -0
- /package/lib/{position → cjs/position}/index.d.ts +0 -0
- /package/lib/{position → cjs/position}/index.js +0 -0
- /package/lib/{token → cjs/token}/ConstantWrappedToken.d.ts +0 -0
- /package/lib/{token → cjs/token}/ConstantWrappedToken.js +0 -0
- /package/lib/{token → cjs/token}/Eip5267Domain.d.ts +0 -0
- /package/lib/{token → cjs/token}/Eip5267Domain.js +0 -0
- /package/lib/{token → cjs/token}/ExchangeRateWrappedToken.d.ts +0 -0
- /package/lib/{token → cjs/token}/ExchangeRateWrappedToken.js +0 -0
- /package/lib/{token → cjs/token}/Token.d.ts +0 -0
- /package/lib/{token → cjs/token}/Token.js +0 -0
- /package/lib/{token → cjs/token}/VaultToken.d.ts +0 -0
- /package/lib/{token → cjs/token}/VaultToken.js +0 -0
- /package/lib/{token → cjs/token}/WrappedToken.d.ts +0 -0
- /package/lib/{token → cjs/token}/WrappedToken.js +0 -0
- /package/lib/{token → cjs/token}/index.d.ts +0 -0
- /package/lib/{token → cjs/token}/index.js +0 -0
- /package/lib/{types.d.ts → cjs/types.d.ts} +0 -0
- /package/lib/{types.js → cjs/types.js} +0 -0
- /package/lib/{user → cjs/user}/User.d.ts +0 -0
- /package/lib/{user → cjs/user}/User.js +0 -0
- /package/lib/{user → cjs/user}/index.d.ts +0 -0
- /package/lib/{user → cjs/user}/index.js +0 -0
- /package/lib/{utils.d.ts → cjs/utils.d.ts} +0 -0
- /package/lib/{utils.js → cjs/utils.js} +0 -0
- /package/lib/{vault → cjs/vault}/Vault.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/Vault.js +0 -0
- /package/lib/{vault → cjs/vault}/VaultConfig.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/VaultConfig.js +0 -0
- /package/lib/{vault → cjs/vault}/VaultMarketAllocation.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/VaultMarketAllocation.js +0 -0
- /package/lib/{vault → cjs/vault}/VaultMarketConfig.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/VaultMarketConfig.js +0 -0
- /package/lib/{vault → cjs/vault}/VaultMarketPublicAllocatorConfig.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/VaultMarketPublicAllocatorConfig.js +0 -0
- /package/lib/{vault → cjs/vault}/VaultUser.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/VaultUser.js +0 -0
- /package/lib/{vault → cjs/vault}/VaultUtils.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/VaultUtils.js +0 -0
- /package/lib/{vault → cjs/vault}/v2/VaultV2Adapter.js +0 -0
- /package/lib/{vault → cjs/vault}/v2/index.d.ts +0 -0
- /package/lib/{vault → cjs/vault}/v2/index.js +0 -0
|
@@ -0,0 +1,1315 @@
|
|
|
1
|
+
import { deepFreeze, entries, } from "@morpho-org/morpho-ts";
|
|
2
|
+
import isPlainObject from "lodash.isplainobject";
|
|
3
|
+
import mergeWith from "lodash.mergewith";
|
|
4
|
+
import { ChainId } from "./chain.js";
|
|
5
|
+
import { UnsupportedChainIdError } from "./errors.js";
|
|
6
|
+
/** Address used to replicate an erc20-behaviour for native token.
|
|
7
|
+
*
|
|
8
|
+
* NB: data might differ from expected onchain native token data
|
|
9
|
+
*/
|
|
10
|
+
export const NATIVE_ADDRESS = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
|
|
11
|
+
const _addressesRegistry = {
|
|
12
|
+
[ChainId.EthMainnet]: {
|
|
13
|
+
morpho: "0xBBBBBbbBBb9cC5e90e3b3Af64bdAF62C37EEFFCb",
|
|
14
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
15
|
+
bundler3: {
|
|
16
|
+
bundler3: "0x6566194141eefa99Af43Bb5Aa71460Ca2Dc90245",
|
|
17
|
+
generalAdapter1: "0x4A6c312ec70E8747a587EE860a0353cd42Be0aE0",
|
|
18
|
+
paraswapAdapter: "0x03b5259Bd204BfD4A616E5B79b0B786d90c6C38f",
|
|
19
|
+
erc20WrapperAdapter: "0xf83D17dFE160597b19e4FdD8ea61A23e9a87F962",
|
|
20
|
+
compoundV2MigrationAdapter: "0x9B89c07f480Df1945279031b5fC6fF241b8f1101",
|
|
21
|
+
compoundV3MigrationAdapter: "0xdBa5bdE29eA030Bfa6A608592dFcA1D02CB26773",
|
|
22
|
+
aaveV2MigrationAdapter: "0x40288815C399709dFC0875A384B637fFe387961B",
|
|
23
|
+
aaveV3CoreMigrationAdapter: "0xb09e40EbE31b738fbf20289270a397118707D475",
|
|
24
|
+
aaveV3PrimeMigrationAdapter: "0x2CC8d502a65824B4cF9A58DB03490bA024BDB806",
|
|
25
|
+
aaveV3EtherFiMigrationAdapter: "0x4011dc6581fA05F9B0c7A12AdCd676e2b1a59ca3",
|
|
26
|
+
aaveV3OptimizerMigrationAdapter: "0x9e2ea2d5785598a163D569D795f286F5C55ad972",
|
|
27
|
+
},
|
|
28
|
+
adaptiveCurveIrm: "0x870aC11D48B15DB9a138Cf899d20F13F79Ba00BC",
|
|
29
|
+
publicAllocator: "0xfd32fA2ca22c76dD6E550706Ad913FC6CE91c75D",
|
|
30
|
+
metaMorphoFactory: "0x1897A8997241C1cD4bD0698647e4EB7213535c24",
|
|
31
|
+
vaultV2Factory: "0xA1D94F746dEfa1928926b84fB2596c06926C0405",
|
|
32
|
+
morphoMarketV1AdapterFactory: "0xb049465969ac6355127cDf9E88deE63d25204d5D",
|
|
33
|
+
morphoMarketV1AdapterV2Factory: "0x32BB1c0D48D8b1B3363e86eeB9A0300BAd61ccc1",
|
|
34
|
+
morphoVaultV1AdapterFactory: "0xD1B8E2dee25c2b89DCD2f98448a7ce87d6F63394",
|
|
35
|
+
registryList: "0x3696c5eAe4a7Ffd04Ea163564571E9CD8Ed9364e",
|
|
36
|
+
chainlinkOracleFactory: "0x3A7bB36Ee3f3eE32A60e9f2b33c1e5f2E83ad766",
|
|
37
|
+
preLiquidationFactory: "0x6FF33615e792E35ed1026ea7cACCf42D9BF83476",
|
|
38
|
+
wNative: "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
|
|
39
|
+
morphoToken: "0x9994E35Db50125E0DF82e4c2dde62496CE330999",
|
|
40
|
+
// Must implement DAI specific permit (otherwise breaks permit signatures).
|
|
41
|
+
dai: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
|
|
42
|
+
sDai: "0x83F20F44975D03b1b09e64809B757c47f942BEeA",
|
|
43
|
+
mkr: "0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2",
|
|
44
|
+
stEth: "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
|
|
45
|
+
wstEth: "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",
|
|
46
|
+
osEth: "0xf1C9acDc66974dFB6dEcB12aA385b9cD01190E38",
|
|
47
|
+
bIB01: "0xCA30c93B02514f86d5C86a6e375E3A330B435Fb5",
|
|
48
|
+
// If we want to change the wbIB01 address, we have to check if the new one has simple permit or not.
|
|
49
|
+
// Currently, wbIB01 is considered to have simple permit.
|
|
50
|
+
wbIB01: "0xcA2A7068e551d5C4482eb34880b194E4b945712F",
|
|
51
|
+
bC3M: "0x2F123cF3F37CE3328CC9B5b8415f9EC5109b45e7",
|
|
52
|
+
// If we want to change the wbC3M address, we have to check if the new one has simple permit or not.
|
|
53
|
+
// Currently, wbC3M is considered to have simple permit.
|
|
54
|
+
wbC3M: "0x95D7337d43340E2721960Dc402D9b9117f0d81a2",
|
|
55
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
56
|
+
usdc: "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
|
|
57
|
+
// Must implement EURC permit version 2 (otherwise breaks permit signatures).
|
|
58
|
+
eurc: "0x1aBaEA1f7C830bD89Acc67eC4af516284b1bC33c",
|
|
59
|
+
usdt: "0xdAC17F958D2ee523a2206206994597C13D831ec7",
|
|
60
|
+
crvUsd: "0xf939E0A03FB07F59A73314E73794Be0E57ac1b4E",
|
|
61
|
+
"stkcvxcrvUSDTWBTCWETH-morpho": "0xb0Ce26C88e4e7DCa51968b6047f44646f5064278",
|
|
62
|
+
crvUSDTWBTCWETH: "0xf5f5B97624542D72A9E06f04804Bf81baA15e2B4",
|
|
63
|
+
"stkcvxcrvUSDCWBTCWETH-morpho": "0x0ea1a65A2c255f24Ee8D81eA6AaC54Decd9d269e",
|
|
64
|
+
crvUSDCWBTCWETH: "0x7F86Bf177Dd4F3494b841a37e810A34dD56c829B",
|
|
65
|
+
"stkcvxcrvCRVUSDTBTCWSTETH-morpho": "0x3ce8Ec9f3d89aD0A2DdbCC3FDB8991BD241Fc82E",
|
|
66
|
+
crvCRVUSDTBTCWSTETH: "0x2889302a794dA87fBF1D6Db415C1492194663D13",
|
|
67
|
+
"stkcvxTryLSD-morpho": "0x6BA072F0d22806F2C52e9792AF47f2D59103BEBE",
|
|
68
|
+
tryLSD: "0x2570f1bD5D2735314FC102eb12Fc1aFe9e6E7193",
|
|
69
|
+
"stkcvxcrvUSDETHCRV-morpho": "0xAc904BAfBb5FB04Deb2b6198FdCEedE75a78Ce5a",
|
|
70
|
+
crvUSDETHCRV: "0x4eBdF703948ddCEA3B11f675B4D1Fba9d2414A14",
|
|
71
|
+
"stkcvx2BTC-f-morpho": "0x385E12cf4040543Bc8C18e05C1298Be5B04f3f5e",
|
|
72
|
+
"2BTC-f": "0xB7ECB2AA52AA64a717180E030241bC75Cd946726",
|
|
73
|
+
},
|
|
74
|
+
[ChainId.BaseMainnet]: {
|
|
75
|
+
morpho: "0xBBBBBbbBBb9cC5e90e3b3Af64bdAF62C37EEFFCb",
|
|
76
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
77
|
+
bundler3: {
|
|
78
|
+
bundler3: "0x6BFd8137e702540E7A42B74178A4a49Ba43920C4",
|
|
79
|
+
generalAdapter1: "0xb98c948CFA24072e58935BC004a8A7b376AE746A",
|
|
80
|
+
paraswapAdapter: "0x6abE8ABd0275E5564ed1336F0243A52C32562F71",
|
|
81
|
+
erc20WrapperAdapter: "0xdeEf55F0A7366cC3Baf5E04313269389Fe17E9AE",
|
|
82
|
+
compoundV3MigrationAdapter: "0x85D4812Ef92c040d4270eD8547b6835e41FbbB70",
|
|
83
|
+
aaveV3CoreMigrationAdapter: "0xb27Aa2a964eAd5ed661D86974b37e4fB995b36f5",
|
|
84
|
+
},
|
|
85
|
+
adaptiveCurveIrm: "0x46415998764C29aB2a25CbeA6254146D50D22687",
|
|
86
|
+
publicAllocator: "0xA090dD1a701408Df1d4d0B85b716c87565f90467",
|
|
87
|
+
metaMorphoFactory: "0xFf62A7c278C62eD665133147129245053Bbf5918",
|
|
88
|
+
vaultV2Factory: "0x4501125508079A99ebBebCE205DeC9593C2b5857",
|
|
89
|
+
morphoMarketV1AdapterFactory: "0x133baC94306B99f6dAD85c381a5be851d8DD717c",
|
|
90
|
+
morphoMarketV1AdapterV2Factory: "0x9a1B378C43BA535cDB89934230F0D3890c51C0EB",
|
|
91
|
+
morphoVaultV1AdapterFactory: "0xF42D9c36b34c9c2CF3Bc30eD2a52a90eEB604642",
|
|
92
|
+
registryList: "0x5C2531Cbd2cf112Cf687da3Cd536708aDd7DB10a",
|
|
93
|
+
chainlinkOracleFactory: "0x2DC205F24BCb6B311E5cdf0745B0741648Aebd3d",
|
|
94
|
+
preLiquidationFactory: "0x8cd16b62E170Ee0bA83D80e1F80E6085367e2aef",
|
|
95
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
96
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
97
|
+
usdc: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
|
|
98
|
+
// Must implement EURC permit version 2 (otherwise breaks permit signatures).
|
|
99
|
+
eurc: "0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42",
|
|
100
|
+
verUsdc: "0x59aaF835D34b1E3dF2170e4872B785f11E2a964b",
|
|
101
|
+
testUsdc: "0xBC77067f829979812d795d516E523C4033b66409",
|
|
102
|
+
},
|
|
103
|
+
[ChainId.PolygonMainnet]: {
|
|
104
|
+
morpho: "0x1bF0c2541F820E775182832f06c0B7Fc27A25f67",
|
|
105
|
+
bundler3: {
|
|
106
|
+
bundler3: "0x2d9C3A9E67c966C711208cc78b34fB9E9f8db589",
|
|
107
|
+
generalAdapter1: "0xB261B51938A9767406ef83bbFbaAFE16691b7047",
|
|
108
|
+
paraswapAdapter: "0x5F2617F12D1fDd1e43e72Cb80C92dFcE8124Db8d",
|
|
109
|
+
compoundV3MigrationAdapter: "0xB34D2f54139bA12defC315C0822aDf9A5eB9A9b7",
|
|
110
|
+
aaveV2MigrationAdapter: "0x43980Ae597f12Ff64690506b2AEEFFb4D8BeAF2a",
|
|
111
|
+
aaveV3CoreMigrationAdapter: "0xEcB1662a1dff5C20650CF98c3334d2fddcD50742",
|
|
112
|
+
},
|
|
113
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
114
|
+
adaptiveCurveIrm: "0xe675A2161D4a6E2de2eeD70ac98EEBf257FBF0B0",
|
|
115
|
+
publicAllocator: "0xfac15aff53ADd2ff80C2962127C434E8615Df0d3",
|
|
116
|
+
metaMorphoFactory: "0xa9c87daB340631C34BB738625C70499e29ddDC98",
|
|
117
|
+
vaultV2Factory: "0xC11a53eE9B1eCc7a068D8e40F8F17926584F97Cf",
|
|
118
|
+
morphoMarketV1AdapterFactory: "0xD1A0C86F28ecD1657Ad06415c2B230cC89D9b6dd",
|
|
119
|
+
morphoMarketV1AdapterV2Factory: "0xc0006f52B38625C283dd2f972dD9B779A5851Dd0",
|
|
120
|
+
morphoVaultV1AdapterFactory: "0xEb174FEA51Da241eB3B516959B216e013de2888a",
|
|
121
|
+
registryList: "0xb70a43821d2707fA9d0EDd9511CC499F468Ba564",
|
|
122
|
+
chainlinkOracleFactory: "0x1ff7895Eb842794c5d07C4c547b6730e61295215",
|
|
123
|
+
preLiquidationFactory: "0xeDadDe37D76c72b98725614d0b41C20Fe612d304",
|
|
124
|
+
wNative: "0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270",
|
|
125
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
126
|
+
usdc: "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359",
|
|
127
|
+
},
|
|
128
|
+
[ChainId.ArbitrumMainnet]: {
|
|
129
|
+
morpho: "0x6c247b1F6182318877311737BaC0844bAa518F5e",
|
|
130
|
+
bundler3: {
|
|
131
|
+
bundler3: "0x1FA4431bC113D308beE1d46B0e98Cb805FB48C13",
|
|
132
|
+
generalAdapter1: "0x9954aFB60BB5A222714c478ac86990F221788B88",
|
|
133
|
+
paraswapAdapter: "0xAA5c30C1482c189cA0d56057D3ac4dD7Af1e4726",
|
|
134
|
+
aaveV3CoreMigrationAdapter: "0x1923670d4F4eB7435d865E7477d28FEAFfA40C93",
|
|
135
|
+
compoundV3MigrationAdapter: "0x86Ca77a4a37A9CDBe9bBf4975F6d69531B96444b",
|
|
136
|
+
},
|
|
137
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
138
|
+
adaptiveCurveIrm: "0x66F30587FB8D4206918deb78ecA7d5eBbafD06DA",
|
|
139
|
+
publicAllocator: "0x769583Af5e9D03589F159EbEC31Cc2c23E8C355E",
|
|
140
|
+
metaMorphoFactory: "0x878988f5f561081deEa117717052164ea1Ef0c82",
|
|
141
|
+
vaultV2Factory: "0x6b46fa3cc9EBF8aB230aBAc664E37F2966Bf7971",
|
|
142
|
+
morphoMarketV1AdapterFactory: "0x96456Bf888D4de607Bf3ca0b3C8e4DF9b0d0Ad47",
|
|
143
|
+
morphoMarketV1AdapterV2Factory: "0xeF84b1ecEbe43283ec5AF95D7a5c4D7dE0a9859b",
|
|
144
|
+
morphoVaultV1AdapterFactory: "0xD8Fc8a85779551e78B516da9f74061cb3b086793",
|
|
145
|
+
registryList: "0xc00eb3c7aD1aE986A7f05F5A9d71aCa39c763C65",
|
|
146
|
+
chainlinkOracleFactory: "0x98Ce5D183DC0c176f54D37162F87e7eD7f2E41b5",
|
|
147
|
+
preLiquidationFactory: "0x635c31B5DF1F7EFbCbC07E302335Ef4230758e3d",
|
|
148
|
+
wNative: "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1",
|
|
149
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
150
|
+
usdc: "0xaf88d065e77c8cC2239327C5EDb3A432268e5831",
|
|
151
|
+
},
|
|
152
|
+
[ChainId.OptimismMainnet]: {
|
|
153
|
+
morpho: "0xce95AfbB8EA029495c66020883F87aaE8864AF92",
|
|
154
|
+
bundler3: {
|
|
155
|
+
bundler3: "0xFBCd3C258feB131D8E038F2A3a670A7bE0507C05",
|
|
156
|
+
generalAdapter1: "0x79481C87f24A3C4332442A2E9faaf675e5F141f0",
|
|
157
|
+
paraswapAdapter: "0x31F539f4Ed14fA1fd18781e93f6739249692aDC5",
|
|
158
|
+
},
|
|
159
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
160
|
+
adaptiveCurveIrm: "0x8cD70A8F399428456b29546BC5dBe10ab6a06ef6",
|
|
161
|
+
publicAllocator: "0x0d68a97324E602E02799CD83B42D337207B40658",
|
|
162
|
+
metaMorphoFactory: "0x3Bb6A6A0Bc85b367EFE0A5bAc81c5E52C892839a",
|
|
163
|
+
vaultV2Factory: "0x6128b680b277Bf4Df80DFE9D8c55A498660870ef",
|
|
164
|
+
morphoMarketV1AdapterFactory: "0x65956d5Ba4974983ecCe111612FC0A0c22650A11",
|
|
165
|
+
morphoMarketV1AdapterV2Factory: "0x71B299bDb52b6396429cd1E11c418324502CB434",
|
|
166
|
+
morphoVaultV1AdapterFactory: "0xEe9F7C64dD827ED7b5CAA2272936366FAca00CF3",
|
|
167
|
+
registryList: "0xD1346be260cd22Eab9E6163010b0D5CbfAAAD32b",
|
|
168
|
+
chainlinkOracleFactory: "0x1ec408D4131686f727F3Fd6245CF85Bc5c9DAD70",
|
|
169
|
+
preLiquidationFactory: "0x3d05C01EE8e97361b9E19D172128255eaE5F98B9",
|
|
170
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
171
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
172
|
+
usdc: "0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85",
|
|
173
|
+
},
|
|
174
|
+
[ChainId.WorldChainMainnet]: {
|
|
175
|
+
morpho: "0xE741BC7c34758b4caE05062794E8Ae24978AF432",
|
|
176
|
+
bundler3: {
|
|
177
|
+
bundler3: "0x3D07BF2FFb23248034bF704F3a4786F1ffE2a448",
|
|
178
|
+
generalAdapter1: "0x30fa9A3cF56931ACEea42E28D35519a97D90aA67",
|
|
179
|
+
},
|
|
180
|
+
adaptiveCurveIrm: "0x34E99D604751a72cF8d0CFDf87069292d82De472",
|
|
181
|
+
publicAllocator: "0xef9889B4e443DEd35FA0Bd060f2104Cca94e6A43",
|
|
182
|
+
metaMorphoFactory: "0x4DBB3a642a2146d5413750Cca3647086D9ba5F12",
|
|
183
|
+
vaultV2Factory: "0x6846EA318B6B987Ee6b28eBFd87c3409F1d13108",
|
|
184
|
+
morphoMarketV1AdapterFactory: "0xAf93F2d8508053432659d509b0210fdF1472493D",
|
|
185
|
+
morphoMarketV1AdapterV2Factory: "0xEd0b06fcdDB6dD0985e2de9D22ad034d313b7dBd",
|
|
186
|
+
morphoVaultV1AdapterFactory: "0xbF7DEa3756668C7E396C655D646C039826ba8416",
|
|
187
|
+
registryList: "0x06A47994B4890dcA28C076969cedE1151d86EFCF",
|
|
188
|
+
chainlinkOracleFactory: "0xd706690BA1Fe26b70c4AD89e60ff62cEB3A2eD02",
|
|
189
|
+
preLiquidationFactory: "0xe3cE2051a24e58DBFC0eFBe4c2d9e89c5eAe4695",
|
|
190
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
191
|
+
// Must implement EURC permit version 2 (otherwise breaks permit signatures).
|
|
192
|
+
eurc: "0x1C60ba0A0eD1019e8Eb035E6daF4155A5cE2380B",
|
|
193
|
+
},
|
|
194
|
+
[ChainId.FraxtalMainnet]: {
|
|
195
|
+
morpho: "0xa6030627d724bA78a59aCf43Be7550b4C5a0653b",
|
|
196
|
+
bundler3: {
|
|
197
|
+
bundler3: "0xA7a414823Ef0F8CFb2c4f67f2F445DA940641d91",
|
|
198
|
+
generalAdapter1: "0x228dDF333DDf6D1895dA1dE8a846EDD27F1284eD",
|
|
199
|
+
},
|
|
200
|
+
adaptiveCurveIrm: "0xA0D4D77b5D9933073572E19C172BFE866312673b",
|
|
201
|
+
publicAllocator: "0x37a888192165fC39884f87c64E2476BfD2C09675",
|
|
202
|
+
metaMorphoFactory: "0x27D4Af0AC9E7FDfA6D0853236f249CC27AE79488",
|
|
203
|
+
chainlinkOracleFactory: "0x39d8622C607A691D7705E8842fbB12E3c38dCD41",
|
|
204
|
+
preLiquidationFactory: "0x373ccddcd3F09D2e1430B3F2b290B9bF56Ae7336",
|
|
205
|
+
wNative: "0xFC00000000000000000000000000000000000006",
|
|
206
|
+
},
|
|
207
|
+
[ChainId.ScrollMainnet]: {
|
|
208
|
+
morpho: "0x2d012EdbAdc37eDc2BC62791B666f9193FDF5a55",
|
|
209
|
+
bundler3: {
|
|
210
|
+
bundler3: "0x60F9159d4dCd724e743212416FD57d8aC0B60768",
|
|
211
|
+
generalAdapter1: "0xD2780fae0869cDc06EE202152304A39653361525",
|
|
212
|
+
},
|
|
213
|
+
adaptiveCurveIrm: "0xa5EA7500A27C0079961D93366A6e93aafF18CB90",
|
|
214
|
+
publicAllocator: "0x8a7f671E45E51dE245649Cf916cA0256FB8a9927",
|
|
215
|
+
metaMorphoFactory: "0x56b65742ade55015e6480959808229Ad6dbc9295",
|
|
216
|
+
chainlinkOracleFactory: "0xb5961902E60b188b1c665B7b72Ef616656A9e24E",
|
|
217
|
+
preLiquidationFactory: "0xeD960178e4aDA0296786Fa79D84e8FDF7bd44B25",
|
|
218
|
+
wNative: "0x5300000000000000000000000000000000000004",
|
|
219
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
220
|
+
usdc: "0x06eFdBFf2a14a7c8E15944D1F4A48F9F95F663A4",
|
|
221
|
+
},
|
|
222
|
+
[ChainId.InkMainnet]: {
|
|
223
|
+
morpho: "0x857f3EefE8cbda3Bc49367C996cd664A880d3042",
|
|
224
|
+
bundler3: {
|
|
225
|
+
bundler3: "0x7db0F1E2bf1f47ec82220090F388d75D8B9BB6BC",
|
|
226
|
+
generalAdapter1: "0xB8B2aDdCDe1cdC94AaE18a0F8A19df03D8683610",
|
|
227
|
+
},
|
|
228
|
+
adaptiveCurveIrm: "0x9515407b1512F53388ffE699524100e7270Ee57B",
|
|
229
|
+
publicAllocator: "0x85416891752a6B81106c1C2999AE1AF5d8Cd3357",
|
|
230
|
+
metaMorphoFactory: "0xd3f39505d0c48AFED3549D625982FdC38Ea9904b",
|
|
231
|
+
chainlinkOracleFactory: "0x3FFFE273ee348b9E1ef89533025C7f165B17B439",
|
|
232
|
+
preLiquidationFactory: "0x30607fEa77168d2c0401B6f60F0B40E32F9339E3",
|
|
233
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
234
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
235
|
+
usdc: "0xF1815bd50389c46847f0Bda824eC8da914045D14",
|
|
236
|
+
},
|
|
237
|
+
[ChainId.Unichain]: {
|
|
238
|
+
morpho: "0x8f5ae9CddB9f68de460C77730b018Ae7E04a140A",
|
|
239
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
240
|
+
bundler3: {
|
|
241
|
+
bundler3: "0x7DD85759182495AF7F6757DA75036d24A9B58bc3",
|
|
242
|
+
generalAdapter1: "0xC11329d19C2275c9E759867e879ECFcEeD7e30A0",
|
|
243
|
+
paraswapAdapter: "0xAa870Da2a9F611A3A53d0D2AEe5664B3700a59c9",
|
|
244
|
+
compoundV3MigrationAdapter: "0x617f8d7885CCE689115Af04576F7cB6F2534fA9a",
|
|
245
|
+
},
|
|
246
|
+
adaptiveCurveIrm: "0x9a6061d51743B31D2c3Be75D83781Fa423f53F0E",
|
|
247
|
+
publicAllocator: "0xB0c9a107fA17c779B3378210A7a593e88938C7C9",
|
|
248
|
+
metaMorphoFactory: "0xe9EdE3929F43a7062a007C3e8652e4ACa610Bdc0",
|
|
249
|
+
vaultV2Factory: "0xC9b34c108014B44e5a189A830e7e04c56704a0c9",
|
|
250
|
+
morphoMarketV1AdapterFactory: "0x117b92Ab1C025B175ED38a0CDe5A067a745224a0",
|
|
251
|
+
morphoMarketV1AdapterV2Factory: "0x9a13bdA35F98811fbAcf097966b2C838f3F9c58C",
|
|
252
|
+
morphoVaultV1AdapterFactory: "0xf1Ab9e885C0faa0cbCEd407498BBA895537aD754",
|
|
253
|
+
registryList: "0xB9130D2A87d7c60ED7E7e4b25bdA6e3E6841becB",
|
|
254
|
+
chainlinkOracleFactory: "0x43269546e1D586a1f7200a0AC07e26f9631f7539",
|
|
255
|
+
preLiquidationFactory: "0xb04e4D3D59Ee47Ca9BA192707AF13A7D02969911",
|
|
256
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
257
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
258
|
+
usdc: "0x078D782b760474a361dDA0AF3839290b0EF57AD6",
|
|
259
|
+
},
|
|
260
|
+
[ChainId.SonicMainnet]: {
|
|
261
|
+
morpho: "0xd6c916eB7542D0Ad3f18AEd0FCBD50C582cfa95f",
|
|
262
|
+
bundler3: {
|
|
263
|
+
bundler3: "0xB06F1Ad8c908b958E596c42973f67F2f1d9a9afF",
|
|
264
|
+
generalAdapter1: "0x31D5aee8D75EEab548cfA0d11C4f9843a5201eaf",
|
|
265
|
+
},
|
|
266
|
+
adaptiveCurveIrm: "0xDEfCf242226425f93d8DD0e314735C28517C473F",
|
|
267
|
+
publicAllocator: "0x6Cef2EDC70D87E8f1623f3096efF05d066E59B36",
|
|
268
|
+
metaMorphoFactory: "0x0cE9e3512CB4df8ae7e265e62Fb9258dc14f12e8",
|
|
269
|
+
chainlinkOracleFactory: "0x7DA59Fa482F1F49fADc486d8e47BADc506fEb86d",
|
|
270
|
+
preLiquidationFactory: "0xc72129DA4CC808e955699111b8c22B22Ca8A10b8",
|
|
271
|
+
wNative: "0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38",
|
|
272
|
+
},
|
|
273
|
+
[ChainId.HemiMainnet]: {
|
|
274
|
+
morpho: "0xa4Ca2c2e25b97DA19879201bA49422bc6f181f42",
|
|
275
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
276
|
+
bundler3: {
|
|
277
|
+
bundler3: "0x8eDa6E01a20E3Cd90B3B2AF6F790cB8FADEf3Ea8",
|
|
278
|
+
generalAdapter1: "0x9623090C3943ad63F7d794378273610Dd0deeFD4",
|
|
279
|
+
},
|
|
280
|
+
adaptiveCurveIrm: "0xdEbdEa31624552DF904A065221cD14088ABDeD70",
|
|
281
|
+
publicAllocator: "0x4107Ea1746909028d6212B315dE5fE9538F9eb39",
|
|
282
|
+
metaMorphoFactory: "0x8e52179BeB18E882040b01632440d8Ca0f01da82",
|
|
283
|
+
chainlinkOracleFactory: "0xB3cb32E6185446a6Bc7A047E4FfA138fA939e133",
|
|
284
|
+
preLiquidationFactory: "0x40F2896C551194e364F7C846046C34d8a9FE97e4",
|
|
285
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
286
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
287
|
+
usdc: "0xad11a8BEb98bbf61dbb1aa0F6d6F2ECD87b35afA",
|
|
288
|
+
},
|
|
289
|
+
[ChainId.ModeMainnet]: {
|
|
290
|
+
morpho: "0xd85cE6BD68487E0AaFb0858FDE1Cd18c76840564",
|
|
291
|
+
bundler3: {
|
|
292
|
+
bundler3: "0xFEA0edFa081C8D5960Ec9Bf6684981dB1834305d",
|
|
293
|
+
generalAdapter1: "0xF53925b95Cc409447066cd5c1A7756084b2Ee0a4",
|
|
294
|
+
},
|
|
295
|
+
adaptiveCurveIrm: "0xE3d46Ae190Cb39ccA3655E966DcEF96b4eAe1d1c",
|
|
296
|
+
publicAllocator: "0xEE868Bf3359DA30c10ea472EAEBFC0a06E8F0120",
|
|
297
|
+
metaMorphoFactory: "0xae5b0884bfff430493D6C844B9fd052Af7d79278",
|
|
298
|
+
chainlinkOracleFactory: "0xf9380f7898423Bd7FDe3C9fDD1b2671A2471f39D",
|
|
299
|
+
preLiquidationFactory: "0x249E4808264c545861e43728186a731dE7c7D745",
|
|
300
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
301
|
+
},
|
|
302
|
+
[ChainId.CornMainnet]: {
|
|
303
|
+
morpho: "0xc2B1E031540e3F3271C5F3819F0cC7479a8DdD90",
|
|
304
|
+
bundler3: {
|
|
305
|
+
bundler3: "0x086889F9bdE8349512dD77088A7114E6C1c42Af7",
|
|
306
|
+
generalAdapter1: "0x464a402244bCDdc0c2091D5193E8ffdb2be54Ca9",
|
|
307
|
+
},
|
|
308
|
+
adaptiveCurveIrm: "0x58a42117d753a0e69694545DfA19d64c2fB759fB",
|
|
309
|
+
publicAllocator: "0xDFde06e2B2A2D718eE5560b73dA4F830E56A2f10",
|
|
310
|
+
metaMorphoFactory: "0xe430821595602eA5DD0cD350f86987437c7362fA",
|
|
311
|
+
chainlinkOracleFactory: "0x16278156D366fC91536b6b81482ffaC47EEa06D6",
|
|
312
|
+
preLiquidationFactory: "0xb9065AC18d3EBdb3263B77B587f9c5CD570545D1",
|
|
313
|
+
wNative: "0xda5dDd7270381A7C2717aD10D1c0ecB19e3CDFb2",
|
|
314
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
315
|
+
usdc: "0xDF0B24095e15044538866576754F3C964e902Ee6",
|
|
316
|
+
},
|
|
317
|
+
[ChainId.PlumeMainnet]: {
|
|
318
|
+
morpho: "0x42b18785CE0Aed7BF7Ca43a39471ED4C0A3e0bB5",
|
|
319
|
+
bundler3: {
|
|
320
|
+
bundler3: "0x5437C8788f4CFbaA55be6FBf30379bc7dd7f69C3",
|
|
321
|
+
generalAdapter1: "0x65ff368930Cb7eB4CA5C5eBC58bb69E6Ed198BA5",
|
|
322
|
+
},
|
|
323
|
+
adaptiveCurveIrm: "0x7420302Ddd469031Cd2282cd64225cCd46F581eA",
|
|
324
|
+
publicAllocator: "0x58485338D93F4e3b4Bf2Af1C9f9C0aDF087AEf1C",
|
|
325
|
+
metaMorphoFactory: "0x2525D453D9BA13921D5aB5D8c12F9202b0e19456",
|
|
326
|
+
vaultV2Factory: "0x4f0a370bb367843CFd914c4d9972523aD2f8FCc9",
|
|
327
|
+
morphoMarketV1AdapterFactory: "0x1675357fdA9e6784DdAD7AD5b3C3DF1fdD4dc4C9",
|
|
328
|
+
morphoMarketV1AdapterV2Factory: "0xB7c243AfACb25870775ADFdAe9D0EAc2324dD152",
|
|
329
|
+
morphoVaultV1AdapterFactory: "0x5935fFcD1C5D269840ae7c685bC957A73E04AEDB",
|
|
330
|
+
registryList: "0x60d3184BDD31BAE7De973894B3bA0b3B6900B79a",
|
|
331
|
+
chainlinkOracleFactory: "0x133F742c0D36864F37e15C33a18bA6fdc950ED0f",
|
|
332
|
+
preLiquidationFactory: "0xF184156Cf6Ad4D3dA7F6449D40755A0f9de97ef3",
|
|
333
|
+
usdc: "0xc98E8c6cB80AC48E4bbD3B56f5895DD64dA7d10a",
|
|
334
|
+
wNative: "0xEa237441c92CAe6FC17Caaf9a7acB3f953be4bd1",
|
|
335
|
+
},
|
|
336
|
+
[ChainId.CampMainnet]: {
|
|
337
|
+
morpho: "0xc7CAd9B1377Eb8103397Cb07Cb5c4f03eb2eBEa8",
|
|
338
|
+
bundler3: {
|
|
339
|
+
bundler3: "0xc1A86b3a552C5a34e1ecc910341A64Cc89b2CB01",
|
|
340
|
+
generalAdapter1: "0x86eaf48Fd73c1Aa30E801D01d0efFd731c3E5E85",
|
|
341
|
+
},
|
|
342
|
+
adaptiveCurveIrm: "0xeEccdD33c0C06d7DDa31E3C4a1Cdb35a2A756246",
|
|
343
|
+
publicAllocator: "0x1e145648DA9aC9d831B4F7931C06e9828083BD40",
|
|
344
|
+
metaMorphoFactory: "0xa8CD521d42b716821D7ddD2Ca6a237087aA5b487",
|
|
345
|
+
chainlinkOracleFactory: "0x24Bc64f44B429EEA86c8B1f9C03F54Ab0C6c0C15",
|
|
346
|
+
preLiquidationFactory: "0x6C0155CC30f760DC49138B389F5B69F56eD08841",
|
|
347
|
+
wNative: "0x1aE9c40eCd2DD6ad5858E5430A556d7aff28A44b",
|
|
348
|
+
},
|
|
349
|
+
[ChainId.KatanaMainnet]: {
|
|
350
|
+
morpho: "0xD50F2DffFd62f94Ee4AEd9ca05C61d0753268aBc",
|
|
351
|
+
bundler3: {
|
|
352
|
+
bundler3: "0xA8C5e23C9C0DF2b6fF716486c6bBEBB6661548C8",
|
|
353
|
+
generalAdapter1: "0x916Aa175C36E845db45fF6DDB886AE437d403B61",
|
|
354
|
+
},
|
|
355
|
+
adaptiveCurveIrm: "0x4F708C0ae7deD3d74736594C2109C2E3c065B428",
|
|
356
|
+
publicAllocator: "0x39EB6Da5e88194C82B13491Df2e8B3E213eD2412",
|
|
357
|
+
metaMorphoFactory: "0x1c8De6889acee12257899BFeAa2b7e534de32E16",
|
|
358
|
+
vaultV2Factory: "0xFcb8b57E56787bB29e130Fca67f3c5a1232975D1",
|
|
359
|
+
morphoMarketV1AdapterFactory: "0x2e6BE3a3A27fb45c6AbA2D1833eeA48E8788538e",
|
|
360
|
+
morphoMarketV1AdapterV2Factory: "0x6d6A3ba62836d6B40277767dCAc8fd390d4BcedC",
|
|
361
|
+
morphoVaultV1AdapterFactory: "0xc8D22B1adD3D176600E9952e7876e9249254cAAF",
|
|
362
|
+
registryList: "0xA9132a09838fD20304dF2B2892679d06A4cc6371",
|
|
363
|
+
chainlinkOracleFactory: "0x7D047fB910Bc187C18C81a69E30Fa164f8c536eC",
|
|
364
|
+
preLiquidationFactory: "0x678EB53A3bB79111263f47B84989d16D81c36D85",
|
|
365
|
+
wNative: "0xEE7D8BCFb72bC1880D0Cf19822eB0A2e6577aB62",
|
|
366
|
+
},
|
|
367
|
+
[ChainId.EtherlinkMainnet]: {
|
|
368
|
+
morpho: "0xbCE7364E63C3B13C73E9977a83c9704E2aCa876e",
|
|
369
|
+
bundler3: {
|
|
370
|
+
bundler3: "0x69dc8086191437b55775b79C730BB3876397e7D1",
|
|
371
|
+
generalAdapter1: "0xEabdAC78A7f0a9B3dF0e23D69A5a5fF7f580a910",
|
|
372
|
+
},
|
|
373
|
+
adaptiveCurveIrm: "0xC1523BE776e66ba07b609b1914D0925278f21FE5",
|
|
374
|
+
publicAllocator: "0x8b8B1bd41d36c06253203CD21463994aB752c1e6",
|
|
375
|
+
metaMorphoFactory: "0x997a79c3C04c5B9eb27d343ae126bcCFb5D74781",
|
|
376
|
+
chainlinkOracleFactory: "0x12FA40f687a35611720E1DcB59976B6e51247298",
|
|
377
|
+
preLiquidationFactory: "0xd1c37fDd941256FC184eF3A07Be540a90b81Ec21",
|
|
378
|
+
wNative: "0xc9B53AB2679f573e480d01e0f49e2B5CFB7a3EAb",
|
|
379
|
+
},
|
|
380
|
+
[ChainId.TacMainnet]: {
|
|
381
|
+
morpho: "0x918B9F2E4B44E20c6423105BB6cCEB71473aD35c",
|
|
382
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
383
|
+
bundler3: {
|
|
384
|
+
bundler3: "0x84b189823D0f84c36728Bb3335dD8C833564e72f",
|
|
385
|
+
generalAdapter1: "0x6D94E7dCA6d8FAE2CF954633C2Cf9c286258E0af",
|
|
386
|
+
},
|
|
387
|
+
adaptiveCurveIrm: "0x7E82b16496fA8CC04935528dA7F5A2C684A3C7A3",
|
|
388
|
+
publicAllocator: "0x414247afcf1fE3b94C617e7E3A7adB81D8D3208F",
|
|
389
|
+
metaMorphoFactory: "0xcDA78f4979d17Ec93052A84A12001fe0088AD734",
|
|
390
|
+
chainlinkOracleFactory: "0xbf10eD52dD60C60E901BF022c3675303ad4a56b1",
|
|
391
|
+
preLiquidationFactory: "0x5851C1e423A2F93aFb821834a63cA052D19ae4Ef",
|
|
392
|
+
wNative: "0xB63B9f0eb4A6E6f191529D71d4D88cc8900Df2C9",
|
|
393
|
+
},
|
|
394
|
+
[ChainId.LiskMainnet]: {
|
|
395
|
+
morpho: "0x00cD58DEEbd7A2F1C55dAec715faF8aed5b27BF8",
|
|
396
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
397
|
+
bundler3: {
|
|
398
|
+
bundler3: "0xD96E5e02580C4EAfE15B5537b25eE3dEe5861e00",
|
|
399
|
+
generalAdapter1: "0x76cFE4BF840C7b461772fE7CDE399f58c4173584",
|
|
400
|
+
},
|
|
401
|
+
adaptiveCurveIrm: "0x5576629f21D528A8c3e06C338dDa907B94563902",
|
|
402
|
+
publicAllocator: "0xb1E5B1De2a54ab55C412B5ee1E38e46799588103",
|
|
403
|
+
metaMorphoFactory: "0x01dD876130690469F685a65C2B295A90a81BaD91",
|
|
404
|
+
chainlinkOracleFactory: "0x2eb4D17C2AAf1EA62Bf83Fb49Dd1128b14AF4D93",
|
|
405
|
+
preLiquidationFactory: "0xF2c325F26691b6556e6f66451bb38bDa37FEbaa7",
|
|
406
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
407
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
408
|
+
usdc: "0xF242275d3a6527d877f2c927a82D9b057609cc71",
|
|
409
|
+
},
|
|
410
|
+
[ChainId.HyperliquidMainnet]: {
|
|
411
|
+
morpho: "0x68e37dE8d93d3496ae143F2E900490f6280C57cD",
|
|
412
|
+
bundler3: {
|
|
413
|
+
bundler3: "0xa3F50477AfA601C771874260A3B34B40e244Fa0e",
|
|
414
|
+
generalAdapter1: "0xD7F48aDE56613E8605863832B7B8A1985B934aE4",
|
|
415
|
+
},
|
|
416
|
+
adaptiveCurveIrm: "0xD4a426F010986dCad727e8dd6eed44cA4A9b7483",
|
|
417
|
+
publicAllocator: "0x517505be22D9068687334e69ae7a02fC77edf4Fc",
|
|
418
|
+
metaMorphoFactory: "0xec051b19d654C48c357dC974376DeB6272f24e53",
|
|
419
|
+
vaultV2Factory: "0xD7217E5687FF1071356C780b5fe4803D9D967da7",
|
|
420
|
+
morphoMarketV1AdapterFactory: "0xc6b8B565C715134b0Ca3D6fa3D29B25759D0b9e2",
|
|
421
|
+
morphoMarketV1AdapterV2Factory: "0xaEff6Ef4B7bbfbAadB18b634A8F11392CBeB72Be",
|
|
422
|
+
morphoVaultV1AdapterFactory: "0xdf5202e29654e02011611A086f15477880580CAc",
|
|
423
|
+
registryList: "0x857B55cEb57dA0C2A83EE08a8dB529B931089aee",
|
|
424
|
+
chainlinkOracleFactory: "0xeb476f124FaD625178759d13557A72394A6f9aF5",
|
|
425
|
+
preLiquidationFactory: "0x1b6782Ac7A859503cE953FBf4736311CC335B8f0",
|
|
426
|
+
wNative: "0x5555555555555555555555555555555555555555",
|
|
427
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
428
|
+
usdc: "0xb88339CB7199b77E23DB6E890353E22632Ba630f",
|
|
429
|
+
},
|
|
430
|
+
[ChainId.SeiMainnet]: {
|
|
431
|
+
morpho: "0xc9cDAc20FCeAAF616f7EB0bb6Cd2c69dcfa9094c",
|
|
432
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
433
|
+
bundler3: {
|
|
434
|
+
bundler3: "0xF9457356F18A3349Bb317Ac144c3Bcc62e5761aD",
|
|
435
|
+
generalAdapter1: "0x02e0e71e145f254820B9D89c9E6068f08256F601",
|
|
436
|
+
},
|
|
437
|
+
adaptiveCurveIrm: "0x6eFA8e3Aa8279eB2fd46b6083A9E52dA72EA56c4",
|
|
438
|
+
publicAllocator: "0xD878509446bE2C601f0f032F501851001B159D6B",
|
|
439
|
+
metaMorphoFactory: "0x8Dea49ec5bd5AeAc8bcf96B3E187F59354118291",
|
|
440
|
+
chainlinkOracleFactory: "0x4bD68c2FF3274207EC07ED281C915758b6F23F07",
|
|
441
|
+
preLiquidationFactory: "0x65eD61058cEB4895B7d62437BaCEA39b04f6D27B",
|
|
442
|
+
wNative: "0xE30feDd158A2e3b13e9badaeABaFc5516e95e8C7",
|
|
443
|
+
usdc: "0xe15fC38F6D8c56aF07bbCBe3BAf5708A2Bf42392",
|
|
444
|
+
},
|
|
445
|
+
[ChainId.ZeroGMainnet]: {
|
|
446
|
+
morpho: "0x9CDD13a2212D94C4f12190cA30783B743E83C89e",
|
|
447
|
+
bundler3: {
|
|
448
|
+
bundler3: "0xbDaFC7ceF85C5fF69164330F521089C9E15DDDae",
|
|
449
|
+
generalAdapter1: "0xFaD987d0EedfbAC709EC27ee4a94f36A1300a054",
|
|
450
|
+
},
|
|
451
|
+
adaptiveCurveIrm: "0xf52e20C42FEc624819D4184226C4777D7cbd767e",
|
|
452
|
+
publicAllocator: "0x28a80F3713735CAD44bD9d7E1da9Fa16b0244497",
|
|
453
|
+
metaMorphoFactory: "0x41528AadC7314658b07Ca6e7213B9b77289B477f",
|
|
454
|
+
chainlinkOracleFactory: "0x5115c1a74ABf096150593EecF3e20F016fc9dB43",
|
|
455
|
+
preLiquidationFactory: "0x534858821653467c2ae231dc027aa1F2c8D91802",
|
|
456
|
+
wNative: "0x1Cd0690fF9a693f5EF2dD976660a8dAFc81A109c",
|
|
457
|
+
},
|
|
458
|
+
[ChainId.LineaMainnet]: {
|
|
459
|
+
morpho: "0x6B0D716aC0A45536172308e08fC2C40387262c9F",
|
|
460
|
+
bundler3: {
|
|
461
|
+
bundler3: "0x1Ee8Ec299E8014760D50A4E3CfC3b44Cc2242625",
|
|
462
|
+
generalAdapter1: "0x454dAb6ce9891245696b239b4845a1cDC268255d",
|
|
463
|
+
},
|
|
464
|
+
adaptiveCurveIrm: "0x85C2Ef4Bd69f42D7Da19Fb9dcdD7Fb8d0F59cDeE",
|
|
465
|
+
publicAllocator: "0x2d4cf00e18D48fD030d9b1E2FAAE6e0384C7610B",
|
|
466
|
+
metaMorphoFactory: "0xA148a8223B622A72dC36472DE1492aBb5c089BA7",
|
|
467
|
+
vaultV2Factory: "0x5DC11CF8BA4C39d1194F91218D35008d9F52A5d0",
|
|
468
|
+
morphoMarketV1AdapterFactory: "0x3267BbdC94274B4BE081c01ffc6123dA12E8c043",
|
|
469
|
+
morphoVaultV1AdapterFactory: "0x6FaF26DD640e22457cA4fd5DA702BA3E169eEd87",
|
|
470
|
+
registryList: "0x122Ea8ff8888C29F8736665d576e3fAEF15D27D5",
|
|
471
|
+
chainlinkOracleFactory: "0x3FFF726062B03BfD5BC485eeEEcc92CF1d8F0105",
|
|
472
|
+
preLiquidationFactory: "0x05a0Ff4E564ED1ba6B42247E19edFf83545C3C40",
|
|
473
|
+
wNative: "0xe5D7C2a44FfDDf6b295A15c148167daaAf5Cf34f",
|
|
474
|
+
usdc: "0x176211869cA2b568f2A7D4EE941E073a821EE1ff",
|
|
475
|
+
},
|
|
476
|
+
[ChainId.MonadMainnet]: {
|
|
477
|
+
morpho: "0xD5D960E8C380B724a48AC59E2DfF1b2CB4a1eAee",
|
|
478
|
+
bundler3: {
|
|
479
|
+
bundler3: "0x82b684483e844422FD339df0b67b3B111F02c66E",
|
|
480
|
+
generalAdapter1: "0x725AB8CAd931BCb80Fdbf10955a806765cCe00e5",
|
|
481
|
+
},
|
|
482
|
+
adaptiveCurveIrm: "0x09475a3D6eA8c314c592b1a3799bDE044E2F400F",
|
|
483
|
+
publicAllocator: "0xfd70575B732F9482F4197FE1075492e114E97302",
|
|
484
|
+
metaMorphoFactory: "0x33f20973275B2F574488b18929cd7DCBf1AbF275",
|
|
485
|
+
vaultV2Factory: "0x8B2F922162FBb60A6a072cC784A2E4168fB0bb0c",
|
|
486
|
+
morphoMarketV1AdapterFactory: "0x8Da54fbF89B3D6fC6DCC92F31CF75a211ACF3d46",
|
|
487
|
+
morphoMarketV1AdapterV2Factory: "0xa00666E86C7e2FA8d2c78d9481E687e098340180",
|
|
488
|
+
morphoVaultV1AdapterFactory: "0x9f3c0999425656fD189C69a8aD68cB64986D644A",
|
|
489
|
+
registryList: "0x6a42f8b46224baA4DbBBc2F860F4675eeA7bd52B",
|
|
490
|
+
chainlinkOracleFactory: "0xC8659Bcd5279DB664Be973aEFd752a5326653739",
|
|
491
|
+
preLiquidationFactory: "0xB5b3e541abD19799E0c65905a5a42BD37d6c94c0",
|
|
492
|
+
wNative: "0x3bd359C1119dA7Da1D913D1C4D2B7c461115433A",
|
|
493
|
+
usdc: "0x754704Bc059F8C67012fEd69BC8A327a5aafb603",
|
|
494
|
+
},
|
|
495
|
+
[ChainId.StableMainnet]: {
|
|
496
|
+
morpho: "0xa40103088A899514E3fe474cD3cc5bf811b1102e",
|
|
497
|
+
bundler3: {
|
|
498
|
+
bundler3: "0xA0bb114F927dF03d9a1a639b9c71F71B0FaFDf1B",
|
|
499
|
+
generalAdapter1: "0x59b1F4376a81e39c466A0A218447E4D36f39A96b",
|
|
500
|
+
},
|
|
501
|
+
adaptiveCurveIrm: "0x41e846FC8108b8527C1D4EDB4c9564E56442940f",
|
|
502
|
+
publicAllocator: "0xbCB063D4B6D479b209C186e462828CBACaC82DbE",
|
|
503
|
+
metaMorphoFactory: "0xb4ae5673c48621189E2bEfBA96F31912032DD1AE",
|
|
504
|
+
vaultV2Factory: "0x7fc35488803D49D00a94b206A223f7661898BE3a",
|
|
505
|
+
morphoMarketV1AdapterFactory: "0x2A5F218FE4Dac3b1f4E096e8ae83074bB1713833",
|
|
506
|
+
morphoMarketV1AdapterV2Factory: "0x9282DBa3d1788f4f02B5DdFc4fc5985e70197620",
|
|
507
|
+
morphoVaultV1AdapterFactory: "0x4EF83ACD552598a1196c1aBDD0bA2EdE6f2237B4",
|
|
508
|
+
registryList: "0xCe93fcB2849EB886F1e81d45D2747dF803f843C3",
|
|
509
|
+
chainlinkOracleFactory: "0xF24C6eAB91e43EacE18a4e893a48565C09132505",
|
|
510
|
+
preLiquidationFactory: "0x741A6604e974FeAF35a5FBb1416B3e01c33e5C0e",
|
|
511
|
+
// There is no wrapped native token because the native token USDT0 is already an ERC20.
|
|
512
|
+
},
|
|
513
|
+
[ChainId.CronosMainnet]: {
|
|
514
|
+
morpho: "0xDF9a1DC07e5dEe5ccCCaBeC35e446C70fAF7434e",
|
|
515
|
+
bundler3: {
|
|
516
|
+
bundler3: "0xb1c59fE6A0DCE25b804F6113C441Bf4F3a4Ab6bC",
|
|
517
|
+
generalAdapter1: "0xCa470cBBc3de56FDe336466f2107cC969174d513",
|
|
518
|
+
},
|
|
519
|
+
adaptiveCurveIrm: "0x1Db002C086439d55B9f33E6c0693Eb850F7c0607",
|
|
520
|
+
publicAllocator: "0xFEAbEf95f3C937Ff4d5fD70005CF3392f8Ca02d5",
|
|
521
|
+
metaMorphoFactory: "0xEA67e5566Ca2c0176d9db172A7f9A1e1F22E9D3A",
|
|
522
|
+
vaultV2Factory: "0x05519a0835a1bFD90f110aA7ca46e9A5F81Ed3b4",
|
|
523
|
+
morphoMarketV1AdapterFactory: "0xaCFf4ad3B357F5A43A20570cF3eb9Ba0086d4e9a",
|
|
524
|
+
morphoMarketV1AdapterV2Factory: "0xE39f6B5Dd03F4ce8C201b946E662E653d94fA121",
|
|
525
|
+
morphoVaultV1AdapterFactory: "0x8840F99Bb2D4f69fb02b2d019384C5c98a11746c",
|
|
526
|
+
registryList: "0x295e0aB80f8234398cd0E51C85D873ee69E5F0DD",
|
|
527
|
+
chainlinkOracleFactory: "0x44b2c8e4474751EF2BBC57B92928aFB99DA785De",
|
|
528
|
+
preLiquidationFactory: "0x8bedC738f5F0D54dF7E003297AAc6692b870F3Ed",
|
|
529
|
+
wNative: "0x5C7F8A570d578ED84E63fdFA7b1eE72dEae1AE23",
|
|
530
|
+
},
|
|
531
|
+
[ChainId.CeloMainnet]: {
|
|
532
|
+
morpho: "0xd24ECdD8C1e0E57a4E26B1a7bbeAa3e95466A569",
|
|
533
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
534
|
+
bundler3: {
|
|
535
|
+
bundler3: "0xbd142f98f847c170D51d8B23e5FEBc51FC9a67D9",
|
|
536
|
+
generalAdapter1: "0x3E7544a07157D03a49359eE89f2fCac9a6467230",
|
|
537
|
+
},
|
|
538
|
+
adaptiveCurveIrm: "0x683CAAADdfA2F42e24880E202676526d501a5dED",
|
|
539
|
+
publicAllocator: "0x3Fe12193D178B76BaF4e23a083A64e49ACDE3188",
|
|
540
|
+
metaMorphoFactory: "0x6870aA9f66C1e5Efe8Dbe8730e86E9e91f688275",
|
|
541
|
+
chainlinkOracleFactory: "0x3a4849b5174Dc6828c6Dc9BBD87e61Ed1ebE9fFA",
|
|
542
|
+
preLiquidationFactory: "0x717a3eF7D366F5ce4636011924D0Bd65ea5eCE2f",
|
|
543
|
+
// No wrapped native is provided as the native asset CELO is already an ERC20.
|
|
544
|
+
usdc: "0xcebA9300f2b948710d2653dD7B07f33A8B32118C",
|
|
545
|
+
},
|
|
546
|
+
[ChainId.AbstractMainnet]: {
|
|
547
|
+
morpho: "0xc85CE8ffdA27b646D269516B8d0Fa6ec2E958B55",
|
|
548
|
+
bundler3: {
|
|
549
|
+
bundler3: "0xc13A3Ca3B0120EE6121d1E0ca9Da22fDD7ed28Cd",
|
|
550
|
+
generalAdapter1: "0x3716AA06304D1bC70f553Da44904d13086A4a791",
|
|
551
|
+
},
|
|
552
|
+
adaptiveCurveIrm: "0xd334eb112CfD1EB4a50FB871b7D9895EBB955C43",
|
|
553
|
+
publicAllocator: "0x609f3DF49806B5617A0Bd3301f04Ac3CB26d9e82",
|
|
554
|
+
metaMorphoFactory: "0x83A7f60c9fc57cEf1e8001bda98783AA1A53E4b1",
|
|
555
|
+
chainlinkOracleFactory: "0x3585E3fD72F8d1b02250E1F6496b706c6e092884",
|
|
556
|
+
preLiquidationFactory: "0x1058DA51242dF63bA3A61c838A61405ea6Edb083",
|
|
557
|
+
wNative: "0x3439153EB7AF838Ad19d56E1571FBD09333C2809",
|
|
558
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
559
|
+
usdc: "0x84A71ccD554Cc1b02749b35d22F684CC8ec987e1",
|
|
560
|
+
},
|
|
561
|
+
[ChainId.BitlayerMainnet]: {
|
|
562
|
+
morpho: "0xAeA7eFF1bD3c875c18ef50F0387892dF181431C6",
|
|
563
|
+
bundler3: {
|
|
564
|
+
bundler3: "0x82b3ea7558Fc383b949fa42Db7ee3eB101447B96",
|
|
565
|
+
generalAdapter1: "0xa87F1422Df88B5f490203D71e2f8e7244843E62F",
|
|
566
|
+
},
|
|
567
|
+
adaptiveCurveIrm: "0xefB565442B9Eb740B50Cf928C14d21c0111254F9",
|
|
568
|
+
publicAllocator: "0x3A1db0038361528756bED147abe3d41255c7128c",
|
|
569
|
+
metaMorphoFactory: "0xb95De4a9C81Ba6240378F383f88592d30937d048",
|
|
570
|
+
chainlinkOracleFactory: "0xfDc69d06De855701731D142F28bD401802DA4daF",
|
|
571
|
+
preLiquidationFactory: "0x4E28CAE07A008FF2D7D345992C969118eb253CD6",
|
|
572
|
+
wNative: "0xfF204e2681A6fA0e2C3FaDe68a1B28fb90E4Fc5F",
|
|
573
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
574
|
+
usdc: "0xf8C374CE88A3BE3d374e8888349C7768B607c755",
|
|
575
|
+
},
|
|
576
|
+
[ChainId.BscMainnet]: {
|
|
577
|
+
morpho: "0x01b0Bd309AA75547f7a37Ad7B1219A898E67a83a",
|
|
578
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
579
|
+
bundler3: {
|
|
580
|
+
bundler3: "0x16D40b9DF1497468195BFAfeb2718e486E15bF91",
|
|
581
|
+
generalAdapter1: "0x87c93660ECe6E68C6492EabBbBdbaafA102ae3a3",
|
|
582
|
+
},
|
|
583
|
+
adaptiveCurveIrm: "0x7112D95cB5f6b13bF5F5B94a373bB3b2B381F979",
|
|
584
|
+
publicAllocator: "0x842bEccF8eBC11006c4bE96DEfE09b60326D0495",
|
|
585
|
+
metaMorphoFactory: "0x92983687e672cA6d96530f9Dbe11a196cE905d72",
|
|
586
|
+
chainlinkOracleFactory: "0xDf2035fC15919588526dBb5560863C812F135236",
|
|
587
|
+
preLiquidationFactory: "0xEB8871F0FA8aB787AbCD28d1095f7B486d241D42",
|
|
588
|
+
wNative: "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c",
|
|
589
|
+
},
|
|
590
|
+
[ChainId.SoneiumMainnet]: {
|
|
591
|
+
morpho: "0xE75Fc5eA6e74B824954349Ca351eb4e671ADA53a",
|
|
592
|
+
permit2: "0x000000000022D473030F116dDEE9F6B43aC78BA3",
|
|
593
|
+
bundler3: {
|
|
594
|
+
bundler3: "0x461378B79d400c963F48F57b3a99416bc3C5c6a6",
|
|
595
|
+
generalAdapter1: "0xA47EeDE3Aac741B830E394B2e291f6774BD8bb48",
|
|
596
|
+
},
|
|
597
|
+
adaptiveCurveIrm: "0x68F9b666b984527A7c145Db4103Cc6d3171C797F",
|
|
598
|
+
publicAllocator: "0x76f93A21573014Ab7d634D3204818922A234249e",
|
|
599
|
+
metaMorphoFactory: "0x7026b436f294e560b3C26E731f5cac5992cA2B33",
|
|
600
|
+
chainlinkOracleFactory: "0x669F1A4cE3127740eCdB3E36adFC5Df6Db1EA74b",
|
|
601
|
+
preLiquidationFactory: "0xcBD0710425613d666C5Ffb4dE2eE73554F21c34B",
|
|
602
|
+
wNative: "0x4200000000000000000000000000000000000006",
|
|
603
|
+
// Must implement USDC permit version 2 (otherwise breaks permit signatures).
|
|
604
|
+
usdc: "0xbA9986D2381edf1DA03B0B9c1f8b00dc4AacC369",
|
|
605
|
+
},
|
|
606
|
+
};
|
|
607
|
+
const _deployments = {
|
|
608
|
+
[ChainId.EthMainnet]: {
|
|
609
|
+
morpho: 18883124n,
|
|
610
|
+
permit2: 15986406n,
|
|
611
|
+
bundler3: {
|
|
612
|
+
bundler3: 21643807n,
|
|
613
|
+
generalAdapter1: 21872136n,
|
|
614
|
+
paraswapAdapter: 21643807n,
|
|
615
|
+
erc20WrapperAdapter: 21872136n,
|
|
616
|
+
compoundV2MigrationAdapter: 21643807n,
|
|
617
|
+
compoundV3MigrationAdapter: 21643807n,
|
|
618
|
+
aaveV2MigrationAdapter: 21643807n,
|
|
619
|
+
aaveV3CoreMigrationAdapter: 21643807n,
|
|
620
|
+
aaveV3PrimeMigrationAdapter: 21643807n,
|
|
621
|
+
aaveV3EtherFiMigrationAdapter: 21643807n,
|
|
622
|
+
aaveV3OptimizerMigrationAdapter: 21643807n,
|
|
623
|
+
},
|
|
624
|
+
adaptiveCurveIrm: 18883124n,
|
|
625
|
+
publicAllocator: 19375099n,
|
|
626
|
+
metaMorphoFactory: 21439510n,
|
|
627
|
+
vaultV2Factory: 23375073n,
|
|
628
|
+
morphoMarketV1AdapterFactory: 23375073n,
|
|
629
|
+
morphoMarketV1AdapterV2Factory: 23981459n,
|
|
630
|
+
morphoVaultV1AdapterFactory: 23375073n,
|
|
631
|
+
registryList: 23375119n,
|
|
632
|
+
chainlinkOracleFactory: 19375066n,
|
|
633
|
+
preLiquidationFactory: 21414664n,
|
|
634
|
+
},
|
|
635
|
+
[ChainId.BaseMainnet]: {
|
|
636
|
+
morpho: 13977148n,
|
|
637
|
+
permit2: 1425180n,
|
|
638
|
+
bundler3: {
|
|
639
|
+
bundler3: 25161671n,
|
|
640
|
+
generalAdapter1: 26539234n,
|
|
641
|
+
paraswapAdapter: 25161671n,
|
|
642
|
+
erc20WrapperAdapter: 26539234n,
|
|
643
|
+
compoundV3MigrationAdapter: 25161671n,
|
|
644
|
+
aaveV3CoreMigrationAdapter: 25161671n,
|
|
645
|
+
},
|
|
646
|
+
adaptiveCurveIrm: 13977152n,
|
|
647
|
+
publicAllocator: 13979545n,
|
|
648
|
+
metaMorphoFactory: 23928808n,
|
|
649
|
+
vaultV2Factory: 35615206n,
|
|
650
|
+
morphoMarketV1AdapterFactory: 35615206n,
|
|
651
|
+
morphoMarketV1AdapterV2Factory: 39285528n,
|
|
652
|
+
morphoVaultV1AdapterFactory: 35615206n,
|
|
653
|
+
registryList: 35615358n,
|
|
654
|
+
chainlinkOracleFactory: 13978286n,
|
|
655
|
+
preLiquidationFactory: 23779056n,
|
|
656
|
+
},
|
|
657
|
+
[ChainId.PolygonMainnet]: {
|
|
658
|
+
morpho: 66931042n,
|
|
659
|
+
bundler3: {
|
|
660
|
+
bundler3: 68074185n,
|
|
661
|
+
generalAdapter1: 68074185n,
|
|
662
|
+
paraswapAdapter: 68074185n,
|
|
663
|
+
compoundV3MigrationAdapter: 68690465n,
|
|
664
|
+
aaveV2MigrationAdapter: 68690465n,
|
|
665
|
+
aaveV3CoreMigrationAdapter: 68690465n,
|
|
666
|
+
},
|
|
667
|
+
permit2: 35701901n,
|
|
668
|
+
adaptiveCurveIrm: 66931042n,
|
|
669
|
+
publicAllocator: 66931042n,
|
|
670
|
+
metaMorphoFactory: 66931042n,
|
|
671
|
+
vaultV2Factory: 77371907n,
|
|
672
|
+
morphoMarketV1AdapterFactory: 77371907n,
|
|
673
|
+
morphoMarketV1AdapterV2Factory: 80128162n,
|
|
674
|
+
morphoVaultV1AdapterFactory: 77371907n,
|
|
675
|
+
registryList: 77372020n,
|
|
676
|
+
chainlinkOracleFactory: 66931042n,
|
|
677
|
+
preLiquidationFactory: 68074185n,
|
|
678
|
+
},
|
|
679
|
+
[ChainId.ArbitrumMainnet]: {
|
|
680
|
+
morpho: 296446593n,
|
|
681
|
+
bundler3: {
|
|
682
|
+
bundler3: 307326238n,
|
|
683
|
+
generalAdapter1: 307326238n,
|
|
684
|
+
paraswapAdapter: 307326988n,
|
|
685
|
+
aaveV3CoreMigrationAdapter: 358694526n,
|
|
686
|
+
compoundV3MigrationAdapter: 358693964n,
|
|
687
|
+
},
|
|
688
|
+
permit2: 38692735n,
|
|
689
|
+
adaptiveCurveIrm: 296446593n,
|
|
690
|
+
publicAllocator: 296446593n,
|
|
691
|
+
metaMorphoFactory: 296447195n,
|
|
692
|
+
vaultV2Factory: 387016724n,
|
|
693
|
+
morphoMarketV1AdapterFactory: 387016724n,
|
|
694
|
+
morphoMarketV1AdapterV2Factory: 409152917n,
|
|
695
|
+
morphoVaultV1AdapterFactory: 387016724n,
|
|
696
|
+
registryList: 387017701n,
|
|
697
|
+
chainlinkOracleFactory: 296447195n,
|
|
698
|
+
preLiquidationFactory: 307326238n,
|
|
699
|
+
},
|
|
700
|
+
[ChainId.OptimismMainnet]: {
|
|
701
|
+
morpho: 130770075n,
|
|
702
|
+
bundler3: {
|
|
703
|
+
bundler3: 132139369n,
|
|
704
|
+
generalAdapter1: 132139369n,
|
|
705
|
+
paraswapAdapter: 132139438n,
|
|
706
|
+
},
|
|
707
|
+
permit2: 38854427n,
|
|
708
|
+
adaptiveCurveIrm: 130770075n,
|
|
709
|
+
publicAllocator: 130770075n,
|
|
710
|
+
metaMorphoFactory: 130770189n,
|
|
711
|
+
vaultV2Factory: 142122059n,
|
|
712
|
+
morphoMarketV1AdapterFactory: 142122059n,
|
|
713
|
+
morphoMarketV1AdapterV2Factory: 144881071n,
|
|
714
|
+
morphoVaultV1AdapterFactory: 142122059n,
|
|
715
|
+
registryList: 142122170n,
|
|
716
|
+
chainlinkOracleFactory: 130770189n,
|
|
717
|
+
preLiquidationFactory: 132139369n,
|
|
718
|
+
},
|
|
719
|
+
[ChainId.WorldChainMainnet]: {
|
|
720
|
+
morpho: 9025669n,
|
|
721
|
+
bundler3: {
|
|
722
|
+
bundler3: 10273494n,
|
|
723
|
+
generalAdapter1: 10273494n,
|
|
724
|
+
},
|
|
725
|
+
adaptiveCurveIrm: 9025669n,
|
|
726
|
+
publicAllocator: 9025669n,
|
|
727
|
+
metaMorphoFactory: 9025733n,
|
|
728
|
+
vaultV2Factory: 20253005n,
|
|
729
|
+
morphoMarketV1AdapterFactory: 20253005n,
|
|
730
|
+
morphoMarketV1AdapterV2Factory: 23013012n,
|
|
731
|
+
morphoVaultV1AdapterFactory: 20253005n,
|
|
732
|
+
registryList: 20253132n,
|
|
733
|
+
chainlinkOracleFactory: 9025733n,
|
|
734
|
+
preLiquidationFactory: 10273494n,
|
|
735
|
+
},
|
|
736
|
+
[ChainId.FraxtalMainnet]: {
|
|
737
|
+
morpho: 15317931n,
|
|
738
|
+
bundler3: {
|
|
739
|
+
bundler3: 16536231n,
|
|
740
|
+
generalAdapter1: 16536231n,
|
|
741
|
+
},
|
|
742
|
+
adaptiveCurveIrm: 15317931n,
|
|
743
|
+
publicAllocator: 15317931n,
|
|
744
|
+
metaMorphoFactory: 15318007n,
|
|
745
|
+
chainlinkOracleFactory: 15318007n,
|
|
746
|
+
preLiquidationFactory: 16536231n,
|
|
747
|
+
},
|
|
748
|
+
[ChainId.ScrollMainnet]: {
|
|
749
|
+
morpho: 12842868n,
|
|
750
|
+
bundler3: {
|
|
751
|
+
bundler3: 13504587n,
|
|
752
|
+
generalAdapter1: 13504587n,
|
|
753
|
+
},
|
|
754
|
+
adaptiveCurveIrm: 12842868n,
|
|
755
|
+
publicAllocator: 12842868n,
|
|
756
|
+
metaMorphoFactory: 12842903n,
|
|
757
|
+
chainlinkOracleFactory: 12842903n,
|
|
758
|
+
preLiquidationFactory: 13504587n,
|
|
759
|
+
},
|
|
760
|
+
[ChainId.InkMainnet]: {
|
|
761
|
+
morpho: 4078776n,
|
|
762
|
+
bundler3: {
|
|
763
|
+
bundler3: 6385077n,
|
|
764
|
+
generalAdapter1: 6385077n,
|
|
765
|
+
},
|
|
766
|
+
adaptiveCurveIrm: 4078776n,
|
|
767
|
+
publicAllocator: 4078776n,
|
|
768
|
+
metaMorphoFactory: 4078830n,
|
|
769
|
+
chainlinkOracleFactory: 4078830n,
|
|
770
|
+
preLiquidationFactory: 6385077n,
|
|
771
|
+
},
|
|
772
|
+
[ChainId.Unichain]: {
|
|
773
|
+
morpho: 9139027n,
|
|
774
|
+
permit2: 0n,
|
|
775
|
+
bundler3: {
|
|
776
|
+
bundler3: 9381237n,
|
|
777
|
+
generalAdapter1: 9381237n,
|
|
778
|
+
paraswapAdapter: 20872902n,
|
|
779
|
+
compoundV3MigrationAdapter: 22019479n,
|
|
780
|
+
},
|
|
781
|
+
adaptiveCurveIrm: 9139027n,
|
|
782
|
+
publicAllocator: 9139027n,
|
|
783
|
+
metaMorphoFactory: 9316789n,
|
|
784
|
+
vaultV2Factory: 29092109n,
|
|
785
|
+
morphoMarketV1AdapterFactory: 29092109n,
|
|
786
|
+
morphoMarketV1AdapterV2Factory: 34613548n,
|
|
787
|
+
morphoVaultV1AdapterFactory: 29092109n,
|
|
788
|
+
registryList: 29092328n,
|
|
789
|
+
chainlinkOracleFactory: 9316789n,
|
|
790
|
+
preLiquidationFactory: 9381237n,
|
|
791
|
+
},
|
|
792
|
+
[ChainId.SonicMainnet]: {
|
|
793
|
+
morpho: 9100931n,
|
|
794
|
+
bundler3: {
|
|
795
|
+
bundler3: 9102286n,
|
|
796
|
+
generalAdapter1: 9102286n,
|
|
797
|
+
},
|
|
798
|
+
adaptiveCurveIrm: 9100931n,
|
|
799
|
+
publicAllocator: 9100931n,
|
|
800
|
+
metaMorphoFactory: 9101319n,
|
|
801
|
+
chainlinkOracleFactory: 9101319n,
|
|
802
|
+
preLiquidationFactory: 9102286n,
|
|
803
|
+
},
|
|
804
|
+
[ChainId.HemiMainnet]: {
|
|
805
|
+
morpho: 1188872n,
|
|
806
|
+
bundler3: {
|
|
807
|
+
bundler3: 1188907n,
|
|
808
|
+
generalAdapter1: 1188907n,
|
|
809
|
+
},
|
|
810
|
+
adaptiveCurveIrm: 1188872n,
|
|
811
|
+
publicAllocator: 1188872n,
|
|
812
|
+
metaMorphoFactory: 1188885n,
|
|
813
|
+
chainlinkOracleFactory: 1188885n,
|
|
814
|
+
preLiquidationFactory: 1188907n,
|
|
815
|
+
},
|
|
816
|
+
[ChainId.ModeMainnet]: {
|
|
817
|
+
morpho: 19983370n,
|
|
818
|
+
bundler3: {
|
|
819
|
+
bundler3: 19983599n,
|
|
820
|
+
generalAdapter1: 19983599n,
|
|
821
|
+
},
|
|
822
|
+
adaptiveCurveIrm: 19983370n,
|
|
823
|
+
publicAllocator: 19983370n,
|
|
824
|
+
metaMorphoFactory: 19983443n,
|
|
825
|
+
chainlinkOracleFactory: 19983443n,
|
|
826
|
+
preLiquidationFactory: 19983599n,
|
|
827
|
+
},
|
|
828
|
+
[ChainId.CornMainnet]: {
|
|
829
|
+
morpho: 251401n,
|
|
830
|
+
bundler3: {
|
|
831
|
+
bundler3: 253107n,
|
|
832
|
+
generalAdapter1: 253107n,
|
|
833
|
+
},
|
|
834
|
+
adaptiveCurveIrm: 251401n,
|
|
835
|
+
publicAllocator: 251401n,
|
|
836
|
+
metaMorphoFactory: 253027n,
|
|
837
|
+
chainlinkOracleFactory: 253027n,
|
|
838
|
+
preLiquidationFactory: 253107n,
|
|
839
|
+
},
|
|
840
|
+
[ChainId.PlumeMainnet]: {
|
|
841
|
+
morpho: 765994n,
|
|
842
|
+
bundler3: {
|
|
843
|
+
bundler3: 789925n,
|
|
844
|
+
generalAdapter1: 789925n,
|
|
845
|
+
},
|
|
846
|
+
adaptiveCurveIrm: 765994n,
|
|
847
|
+
publicAllocator: 765994n,
|
|
848
|
+
metaMorphoFactory: 766078n,
|
|
849
|
+
vaultV2Factory: 32235414n,
|
|
850
|
+
morphoMarketV1AdapterFactory: 32235414n,
|
|
851
|
+
morphoMarketV1AdapterV2Factory: 41965167n,
|
|
852
|
+
morphoVaultV1AdapterFactory: 32235414n,
|
|
853
|
+
registryList: 32235782n,
|
|
854
|
+
chainlinkOracleFactory: 766078n,
|
|
855
|
+
preLiquidationFactory: 789925n,
|
|
856
|
+
},
|
|
857
|
+
[ChainId.CampMainnet]: {
|
|
858
|
+
morpho: 4804080n,
|
|
859
|
+
bundler3: {
|
|
860
|
+
bundler3: 4804690n,
|
|
861
|
+
generalAdapter1: 4804690n,
|
|
862
|
+
},
|
|
863
|
+
adaptiveCurveIrm: 4804080n,
|
|
864
|
+
publicAllocator: 4804080n,
|
|
865
|
+
metaMorphoFactory: 4804270n,
|
|
866
|
+
chainlinkOracleFactory: 4804270n,
|
|
867
|
+
preLiquidationFactory: 4804690n,
|
|
868
|
+
},
|
|
869
|
+
[ChainId.KatanaMainnet]: {
|
|
870
|
+
morpho: 2741069n,
|
|
871
|
+
bundler3: {
|
|
872
|
+
bundler3: 2741993n,
|
|
873
|
+
generalAdapter1: 2741993n,
|
|
874
|
+
},
|
|
875
|
+
adaptiveCurveIrm: 2741069n,
|
|
876
|
+
publicAllocator: 2741069n,
|
|
877
|
+
metaMorphoFactory: 2741420n,
|
|
878
|
+
vaultV2Factory: 13096629n,
|
|
879
|
+
morphoMarketV1AdapterFactory: 13096629n,
|
|
880
|
+
morphoMarketV1AdapterV2Factory: 18619527n,
|
|
881
|
+
morphoVaultV1AdapterFactory: 13096629n,
|
|
882
|
+
registryList: 13096853n,
|
|
883
|
+
chainlinkOracleFactory: 2741420n,
|
|
884
|
+
preLiquidationFactory: 2741993n,
|
|
885
|
+
},
|
|
886
|
+
[ChainId.EtherlinkMainnet]: {
|
|
887
|
+
morpho: 21047448n,
|
|
888
|
+
bundler3: {
|
|
889
|
+
bundler3: 21050766n,
|
|
890
|
+
generalAdapter1: 21050766n,
|
|
891
|
+
},
|
|
892
|
+
adaptiveCurveIrm: 21047448n,
|
|
893
|
+
publicAllocator: 21047448n,
|
|
894
|
+
metaMorphoFactory: 21050315n,
|
|
895
|
+
chainlinkOracleFactory: 21050315n,
|
|
896
|
+
preLiquidationFactory: 21050766n,
|
|
897
|
+
},
|
|
898
|
+
[ChainId.TacMainnet]: {
|
|
899
|
+
morpho: 853025n,
|
|
900
|
+
permit2: 553679n,
|
|
901
|
+
bundler3: {
|
|
902
|
+
bundler3: 978967n,
|
|
903
|
+
generalAdapter1: 978967n,
|
|
904
|
+
},
|
|
905
|
+
adaptiveCurveIrm: 853025n,
|
|
906
|
+
publicAllocator: 853025n,
|
|
907
|
+
metaMorphoFactory: 978654n,
|
|
908
|
+
chainlinkOracleFactory: 978654n,
|
|
909
|
+
preLiquidationFactory: 978967n,
|
|
910
|
+
},
|
|
911
|
+
[ChainId.LiskMainnet]: {
|
|
912
|
+
morpho: 15731231n,
|
|
913
|
+
bundler3: {
|
|
914
|
+
bundler3: 15731595n,
|
|
915
|
+
generalAdapter1: 15731595n,
|
|
916
|
+
},
|
|
917
|
+
adaptiveCurveIrm: 15731231n,
|
|
918
|
+
publicAllocator: 15731231n,
|
|
919
|
+
metaMorphoFactory: 15731333n,
|
|
920
|
+
chainlinkOracleFactory: 15731333n,
|
|
921
|
+
preLiquidationFactory: 15731595n,
|
|
922
|
+
},
|
|
923
|
+
[ChainId.HyperliquidMainnet]: {
|
|
924
|
+
morpho: 1988429n,
|
|
925
|
+
bundler3: {
|
|
926
|
+
bundler3: 1988956n,
|
|
927
|
+
generalAdapter1: 1988956n,
|
|
928
|
+
},
|
|
929
|
+
adaptiveCurveIrm: 1988429n,
|
|
930
|
+
publicAllocator: 1988429n,
|
|
931
|
+
metaMorphoFactory: 1988677n,
|
|
932
|
+
vaultV2Factory: 14188393n,
|
|
933
|
+
morphoMarketV1AdapterFactory: 14188393n,
|
|
934
|
+
morphoMarketV1AdapterV2Factory: 21460330n,
|
|
935
|
+
morphoVaultV1AdapterFactory: 14188393n,
|
|
936
|
+
registryList: 14188698n,
|
|
937
|
+
chainlinkOracleFactory: 1988677n,
|
|
938
|
+
preLiquidationFactory: 1988956n,
|
|
939
|
+
},
|
|
940
|
+
[ChainId.SeiMainnet]: {
|
|
941
|
+
morpho: 166036723n,
|
|
942
|
+
bundler3: {
|
|
943
|
+
bundler3: 168897284n,
|
|
944
|
+
generalAdapter1: 168897284n,
|
|
945
|
+
},
|
|
946
|
+
permit2: 118721449n,
|
|
947
|
+
adaptiveCurveIrm: 166036723n,
|
|
948
|
+
publicAllocator: 166036723n,
|
|
949
|
+
metaMorphoFactory: 168896078n,
|
|
950
|
+
chainlinkOracleFactory: 168896078n,
|
|
951
|
+
preLiquidationFactory: 168897284n,
|
|
952
|
+
usdc: 154131168n,
|
|
953
|
+
},
|
|
954
|
+
[ChainId.ZeroGMainnet]: {
|
|
955
|
+
morpho: 7526486n,
|
|
956
|
+
bundler3: {
|
|
957
|
+
bundler3: 7527649n,
|
|
958
|
+
generalAdapter1: 7527649n,
|
|
959
|
+
},
|
|
960
|
+
adaptiveCurveIrm: 7526486n,
|
|
961
|
+
publicAllocator: 7526486n,
|
|
962
|
+
metaMorphoFactory: 7526768n,
|
|
963
|
+
chainlinkOracleFactory: 7526768n,
|
|
964
|
+
preLiquidationFactory: 7527649n,
|
|
965
|
+
},
|
|
966
|
+
[ChainId.LineaMainnet]: {
|
|
967
|
+
morpho: 25072608n,
|
|
968
|
+
bundler3: {
|
|
969
|
+
bundler3: 25072853n,
|
|
970
|
+
generalAdapter1: 25072853n,
|
|
971
|
+
},
|
|
972
|
+
adaptiveCurveIrm: 25072608n,
|
|
973
|
+
publicAllocator: 25072608n,
|
|
974
|
+
metaMorphoFactory: 25072665n,
|
|
975
|
+
vaultV2Factory: 25072951n,
|
|
976
|
+
morphoMarketV1AdapterFactory: 25072951n,
|
|
977
|
+
morphoVaultV1AdapterFactory: 25072951n,
|
|
978
|
+
registryList: 25073088n,
|
|
979
|
+
chainlinkOracleFactory: 25072665n,
|
|
980
|
+
preLiquidationFactory: 25072853n,
|
|
981
|
+
},
|
|
982
|
+
[ChainId.MonadMainnet]: {
|
|
983
|
+
morpho: 31907457n,
|
|
984
|
+
bundler3: {
|
|
985
|
+
bundler3: 32321504n,
|
|
986
|
+
generalAdapter1: 32321504n,
|
|
987
|
+
},
|
|
988
|
+
adaptiveCurveIrm: 31907457n,
|
|
989
|
+
publicAllocator: 31907457n,
|
|
990
|
+
metaMorphoFactory: 32320327n,
|
|
991
|
+
vaultV2Factory: 32321811n,
|
|
992
|
+
morphoMarketV1AdapterFactory: 32321811n,
|
|
993
|
+
morphoMarketV1AdapterV2Factory: 41103883n,
|
|
994
|
+
morphoVaultV1AdapterFactory: 32321811n,
|
|
995
|
+
registryList: 32322465n,
|
|
996
|
+
chainlinkOracleFactory: 32320327n,
|
|
997
|
+
preLiquidationFactory: 32321504n,
|
|
998
|
+
usdc: 22909616n,
|
|
999
|
+
},
|
|
1000
|
+
[ChainId.StableMainnet]: {
|
|
1001
|
+
morpho: 1504506n,
|
|
1002
|
+
bundler3: {
|
|
1003
|
+
bundler3: 1741861n,
|
|
1004
|
+
generalAdapter1: 1741861n,
|
|
1005
|
+
},
|
|
1006
|
+
adaptiveCurveIrm: 1504506n,
|
|
1007
|
+
publicAllocator: 1504506n,
|
|
1008
|
+
metaMorphoFactory: 1504774n,
|
|
1009
|
+
vaultV2Factory: 1506182n,
|
|
1010
|
+
morphoMarketV1AdapterFactory: 1506182n,
|
|
1011
|
+
morphoVaultV1AdapterFactory: 1506182n,
|
|
1012
|
+
morphoMarketV1AdapterV2Factory: 5110812n,
|
|
1013
|
+
registryList: 1506877n,
|
|
1014
|
+
chainlinkOracleFactory: 1504774n,
|
|
1015
|
+
preLiquidationFactory: 1741861n,
|
|
1016
|
+
},
|
|
1017
|
+
[ChainId.CronosMainnet]: {
|
|
1018
|
+
morpho: 38459435n,
|
|
1019
|
+
bundler3: {
|
|
1020
|
+
bundler3: 38460388n,
|
|
1021
|
+
generalAdapter1: 38460388n,
|
|
1022
|
+
},
|
|
1023
|
+
adaptiveCurveIrm: 38459435n,
|
|
1024
|
+
publicAllocator: 38459435n,
|
|
1025
|
+
metaMorphoFactory: 38459727n,
|
|
1026
|
+
vaultV2Factory: 38461643n,
|
|
1027
|
+
morphoMarketV1AdapterFactory: 38461643n,
|
|
1028
|
+
morphoMarketV1AdapterV2Factory: 44236918n,
|
|
1029
|
+
morphoVaultV1AdapterFactory: 38461643n,
|
|
1030
|
+
registryList: 38461812n,
|
|
1031
|
+
chainlinkOracleFactory: 38459727n,
|
|
1032
|
+
preLiquidationFactory: 38460388n,
|
|
1033
|
+
},
|
|
1034
|
+
[ChainId.CeloMainnet]: {
|
|
1035
|
+
morpho: 40249329n,
|
|
1036
|
+
bundler3: {
|
|
1037
|
+
bundler3: 41808392n,
|
|
1038
|
+
generalAdapter1: 41808392n,
|
|
1039
|
+
},
|
|
1040
|
+
adaptiveCurveIrm: 40249329n,
|
|
1041
|
+
publicAllocator: 40249329n,
|
|
1042
|
+
metaMorphoFactory: 40259931n,
|
|
1043
|
+
chainlinkOracleFactory: 40259931n,
|
|
1044
|
+
preLiquidationFactory: 41808392n,
|
|
1045
|
+
usdc: 23412006n,
|
|
1046
|
+
},
|
|
1047
|
+
[ChainId.AbstractMainnet]: {
|
|
1048
|
+
morpho: 13947713n,
|
|
1049
|
+
bundler3: {
|
|
1050
|
+
bundler3: 13949482n,
|
|
1051
|
+
generalAdapter1: 13949482n,
|
|
1052
|
+
},
|
|
1053
|
+
adaptiveCurveIrm: 13947713n,
|
|
1054
|
+
publicAllocator: 13947713n,
|
|
1055
|
+
metaMorphoFactory: 13949369n,
|
|
1056
|
+
chainlinkOracleFactory: 13949369n,
|
|
1057
|
+
preLiquidationFactory: 13949482n,
|
|
1058
|
+
usdc: 53247n,
|
|
1059
|
+
},
|
|
1060
|
+
[ChainId.BitlayerMainnet]: {
|
|
1061
|
+
morpho: 13516997n,
|
|
1062
|
+
bundler3: {
|
|
1063
|
+
bundler3: 13638316n,
|
|
1064
|
+
generalAdapter1: 13638316n,
|
|
1065
|
+
},
|
|
1066
|
+
adaptiveCurveIrm: 13516997n,
|
|
1067
|
+
publicAllocator: 13516997n,
|
|
1068
|
+
metaMorphoFactory: 13638155n,
|
|
1069
|
+
chainlinkOracleFactory: 13638155n,
|
|
1070
|
+
preLiquidationFactory: 13638316n,
|
|
1071
|
+
usdc: 4041175n,
|
|
1072
|
+
},
|
|
1073
|
+
[ChainId.BscMainnet]: {
|
|
1074
|
+
morpho: 54344680n,
|
|
1075
|
+
permit2: 25343783n,
|
|
1076
|
+
bundler3: {
|
|
1077
|
+
bundler3: 54346080n,
|
|
1078
|
+
generalAdapter1: 54346080n,
|
|
1079
|
+
},
|
|
1080
|
+
adaptiveCurveIrm: 54344680n,
|
|
1081
|
+
publicAllocator: 54344680n,
|
|
1082
|
+
metaMorphoFactory: 54344985n,
|
|
1083
|
+
chainlinkOracleFactory: 54344985n,
|
|
1084
|
+
preLiquidationFactory: 54346080n,
|
|
1085
|
+
},
|
|
1086
|
+
[ChainId.SoneiumMainnet]: {
|
|
1087
|
+
morpho: 6440817n,
|
|
1088
|
+
bundler3: {
|
|
1089
|
+
bundler3: 6443359n,
|
|
1090
|
+
generalAdapter1: 6443359n,
|
|
1091
|
+
},
|
|
1092
|
+
adaptiveCurveIrm: 6440817n,
|
|
1093
|
+
publicAllocator: 6440817n,
|
|
1094
|
+
metaMorphoFactory: 6440899n,
|
|
1095
|
+
chainlinkOracleFactory: 6440899n,
|
|
1096
|
+
preLiquidationFactory: 6443359n,
|
|
1097
|
+
},
|
|
1098
|
+
};
|
|
1099
|
+
export const getChainAddresses = (chainId) => {
|
|
1100
|
+
const chainAddresses = addresses[chainId];
|
|
1101
|
+
if (chainAddresses == null)
|
|
1102
|
+
throw new UnsupportedChainIdError(chainId);
|
|
1103
|
+
return chainAddresses;
|
|
1104
|
+
};
|
|
1105
|
+
/**
|
|
1106
|
+
* Assumptions:
|
|
1107
|
+
* - unwrapped token has same number of decimals than wrapped tokens.
|
|
1108
|
+
*/
|
|
1109
|
+
const _unwrappedTokensMapping = {
|
|
1110
|
+
[ChainId.EthMainnet]: {
|
|
1111
|
+
[_addressesRegistry[ChainId.EthMainnet].wbIB01]: _addressesRegistry[ChainId.EthMainnet].bIB01,
|
|
1112
|
+
[_addressesRegistry[ChainId.EthMainnet].wbC3M]: _addressesRegistry[ChainId.EthMainnet].bC3M,
|
|
1113
|
+
[_addressesRegistry[ChainId.EthMainnet].wNative]: NATIVE_ADDRESS,
|
|
1114
|
+
[_addressesRegistry[ChainId.EthMainnet].stEth]: NATIVE_ADDRESS,
|
|
1115
|
+
[_addressesRegistry[ChainId.EthMainnet].wstEth]: _addressesRegistry[ChainId.EthMainnet].stEth,
|
|
1116
|
+
[_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvUSDTWBTCWETH-morpho"]]: _addressesRegistry[ChainId.EthMainnet].crvUSDTWBTCWETH,
|
|
1117
|
+
[_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvUSDCWBTCWETH-morpho"]]: _addressesRegistry[ChainId.EthMainnet].crvUSDCWBTCWETH,
|
|
1118
|
+
[_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvCRVUSDTBTCWSTETH-morpho"]]: _addressesRegistry[ChainId.EthMainnet].crvCRVUSDTBTCWSTETH,
|
|
1119
|
+
[_addressesRegistry[ChainId.EthMainnet]["stkcvxTryLSD-morpho"]]: _addressesRegistry[ChainId.EthMainnet].tryLSD,
|
|
1120
|
+
[_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvUSDETHCRV-morpho"]]: _addressesRegistry[ChainId.EthMainnet].crvUSDETHCRV,
|
|
1121
|
+
[_addressesRegistry[ChainId.EthMainnet]["stkcvx2BTC-f-morpho"]]: _addressesRegistry[ChainId.EthMainnet]["2BTC-f"],
|
|
1122
|
+
},
|
|
1123
|
+
[ChainId.BaseMainnet]: {
|
|
1124
|
+
[_addressesRegistry[ChainId.BaseMainnet].wNative]: NATIVE_ADDRESS,
|
|
1125
|
+
[_addressesRegistry[ChainId.BaseMainnet].verUsdc]: _addressesRegistry[ChainId.BaseMainnet].usdc,
|
|
1126
|
+
[_addressesRegistry[ChainId.BaseMainnet].testUsdc]: _addressesRegistry[ChainId.BaseMainnet].usdc,
|
|
1127
|
+
},
|
|
1128
|
+
[ChainId.PolygonMainnet]: {
|
|
1129
|
+
[_addressesRegistry[ChainId.PolygonMainnet].wNative]: NATIVE_ADDRESS,
|
|
1130
|
+
},
|
|
1131
|
+
[ChainId.OptimismMainnet]: {
|
|
1132
|
+
[_addressesRegistry[ChainId.OptimismMainnet].wNative]: NATIVE_ADDRESS,
|
|
1133
|
+
},
|
|
1134
|
+
[ChainId.WorldChainMainnet]: {
|
|
1135
|
+
[_addressesRegistry[ChainId.WorldChainMainnet].wNative]: NATIVE_ADDRESS,
|
|
1136
|
+
},
|
|
1137
|
+
[ChainId.ScrollMainnet]: {
|
|
1138
|
+
[_addressesRegistry[ChainId.ScrollMainnet].wNative]: NATIVE_ADDRESS,
|
|
1139
|
+
},
|
|
1140
|
+
[ChainId.InkMainnet]: {
|
|
1141
|
+
[_addressesRegistry[ChainId.InkMainnet].wNative]: NATIVE_ADDRESS,
|
|
1142
|
+
},
|
|
1143
|
+
[ChainId.Unichain]: {
|
|
1144
|
+
[_addressesRegistry[ChainId.Unichain].wNative]: NATIVE_ADDRESS,
|
|
1145
|
+
},
|
|
1146
|
+
[ChainId.SonicMainnet]: {
|
|
1147
|
+
[_addressesRegistry[ChainId.SonicMainnet].wNative]: NATIVE_ADDRESS,
|
|
1148
|
+
},
|
|
1149
|
+
[ChainId.HemiMainnet]: {
|
|
1150
|
+
[_addressesRegistry[ChainId.HemiMainnet].wNative]: NATIVE_ADDRESS,
|
|
1151
|
+
},
|
|
1152
|
+
[ChainId.ModeMainnet]: {
|
|
1153
|
+
[_addressesRegistry[ChainId.ModeMainnet].wNative]: NATIVE_ADDRESS,
|
|
1154
|
+
},
|
|
1155
|
+
[ChainId.CornMainnet]: {
|
|
1156
|
+
[_addressesRegistry[ChainId.CornMainnet].wNative]: NATIVE_ADDRESS,
|
|
1157
|
+
},
|
|
1158
|
+
[ChainId.PlumeMainnet]: {
|
|
1159
|
+
[_addressesRegistry[ChainId.PlumeMainnet].wNative]: NATIVE_ADDRESS,
|
|
1160
|
+
},
|
|
1161
|
+
[ChainId.CampMainnet]: {
|
|
1162
|
+
[_addressesRegistry[ChainId.CampMainnet].wNative]: NATIVE_ADDRESS,
|
|
1163
|
+
},
|
|
1164
|
+
[ChainId.KatanaMainnet]: {
|
|
1165
|
+
[_addressesRegistry[ChainId.KatanaMainnet].wNative]: NATIVE_ADDRESS,
|
|
1166
|
+
},
|
|
1167
|
+
[ChainId.ArbitrumMainnet]: {
|
|
1168
|
+
[_addressesRegistry[ChainId.ArbitrumMainnet].wNative]: NATIVE_ADDRESS,
|
|
1169
|
+
},
|
|
1170
|
+
[ChainId.EtherlinkMainnet]: {
|
|
1171
|
+
[_addressesRegistry[ChainId.EtherlinkMainnet].wNative]: NATIVE_ADDRESS,
|
|
1172
|
+
},
|
|
1173
|
+
[ChainId.TacMainnet]: {
|
|
1174
|
+
[_addressesRegistry[ChainId.TacMainnet].wNative]: NATIVE_ADDRESS,
|
|
1175
|
+
},
|
|
1176
|
+
[ChainId.LiskMainnet]: {
|
|
1177
|
+
[_addressesRegistry[ChainId.LiskMainnet].wNative]: NATIVE_ADDRESS,
|
|
1178
|
+
},
|
|
1179
|
+
[ChainId.HyperliquidMainnet]: {
|
|
1180
|
+
[_addressesRegistry[ChainId.HyperliquidMainnet].wNative]: NATIVE_ADDRESS,
|
|
1181
|
+
},
|
|
1182
|
+
[ChainId.SeiMainnet]: {
|
|
1183
|
+
[_addressesRegistry[ChainId.SeiMainnet].wNative]: NATIVE_ADDRESS,
|
|
1184
|
+
},
|
|
1185
|
+
[ChainId.ZeroGMainnet]: {
|
|
1186
|
+
[_addressesRegistry[ChainId.ZeroGMainnet].wNative]: NATIVE_ADDRESS,
|
|
1187
|
+
},
|
|
1188
|
+
[ChainId.LineaMainnet]: {
|
|
1189
|
+
[_addressesRegistry[ChainId.LineaMainnet].wNative]: NATIVE_ADDRESS,
|
|
1190
|
+
},
|
|
1191
|
+
[ChainId.MonadMainnet]: {
|
|
1192
|
+
[_addressesRegistry[ChainId.MonadMainnet].wNative]: NATIVE_ADDRESS,
|
|
1193
|
+
},
|
|
1194
|
+
[ChainId.CronosMainnet]: {
|
|
1195
|
+
[_addressesRegistry[ChainId.CronosMainnet].wNative]: NATIVE_ADDRESS,
|
|
1196
|
+
},
|
|
1197
|
+
[ChainId.AbstractMainnet]: {
|
|
1198
|
+
[_addressesRegistry[ChainId.AbstractMainnet].wNative]: NATIVE_ADDRESS,
|
|
1199
|
+
},
|
|
1200
|
+
[ChainId.BitlayerMainnet]: {
|
|
1201
|
+
[_addressesRegistry[ChainId.BitlayerMainnet].wNative]: NATIVE_ADDRESS,
|
|
1202
|
+
},
|
|
1203
|
+
[ChainId.BscMainnet]: {
|
|
1204
|
+
[_addressesRegistry[ChainId.BscMainnet].wNative]: NATIVE_ADDRESS,
|
|
1205
|
+
},
|
|
1206
|
+
[ChainId.SoneiumMainnet]: {
|
|
1207
|
+
[_addressesRegistry[ChainId.SoneiumMainnet].wNative]: NATIVE_ADDRESS,
|
|
1208
|
+
},
|
|
1209
|
+
};
|
|
1210
|
+
export function getUnwrappedToken(wrappedToken, chainId) {
|
|
1211
|
+
return unwrappedTokensMapping[chainId]?.[wrappedToken];
|
|
1212
|
+
}
|
|
1213
|
+
/**
|
|
1214
|
+
* The registry of all known ERC20Wrapper tokens.
|
|
1215
|
+
*/
|
|
1216
|
+
export const erc20WrapperTokens = {};
|
|
1217
|
+
/**
|
|
1218
|
+
* The registry of all known PermissionedERC20Wrapper with a `hasPermission` getter.
|
|
1219
|
+
* All permissioned wrapper tokens are considered ERC20Wrapper and automatically added to the erc20WrapperTokens registry.
|
|
1220
|
+
*/
|
|
1221
|
+
export const permissionedWrapperTokens = {
|
|
1222
|
+
[ChainId.BaseMainnet]: new Set([
|
|
1223
|
+
_addressesRegistry[ChainId.BaseMainnet].testUsdc,
|
|
1224
|
+
]),
|
|
1225
|
+
};
|
|
1226
|
+
/**
|
|
1227
|
+
* The registry of all known permissioned wrapped Backed tokens.
|
|
1228
|
+
* All permissioned Backed tokens are considered ERC20Wrapper and automatically added to the erc20WrapperTokens registry.
|
|
1229
|
+
*/
|
|
1230
|
+
export const permissionedBackedTokens = {
|
|
1231
|
+
[ChainId.EthMainnet]: new Set([
|
|
1232
|
+
_addressesRegistry[ChainId.EthMainnet].wbIB01,
|
|
1233
|
+
_addressesRegistry[ChainId.EthMainnet].wbC3M,
|
|
1234
|
+
]),
|
|
1235
|
+
};
|
|
1236
|
+
/**
|
|
1237
|
+
* The registry of all known permissioned wrapped tokens that require a Coinbase attestation.
|
|
1238
|
+
* All permissioned Coinbase tokens are considered PermissionedERC20Wrapper and automatically added to the permissionedWrapperTokens registry.
|
|
1239
|
+
*/
|
|
1240
|
+
export const permissionedCoinbaseTokens = {
|
|
1241
|
+
[ChainId.BaseMainnet]: new Set([
|
|
1242
|
+
_addressesRegistry[ChainId.BaseMainnet].verUsdc,
|
|
1243
|
+
]),
|
|
1244
|
+
};
|
|
1245
|
+
export const getPermissionedCoinbaseTokens = (chainId) => permissionedCoinbaseTokens[chainId] ?? new Set();
|
|
1246
|
+
entries(permissionedBackedTokens).forEach(([chainId, tokens]) => {
|
|
1247
|
+
tokens.forEach((token) => (erc20WrapperTokens[chainId] ??= new Set()).add(token));
|
|
1248
|
+
});
|
|
1249
|
+
entries(permissionedCoinbaseTokens).forEach(([chainId, tokens]) => {
|
|
1250
|
+
tokens.forEach((token) => (permissionedWrapperTokens[chainId] ??= new Set()).add(token));
|
|
1251
|
+
});
|
|
1252
|
+
entries(permissionedWrapperTokens).forEach(([chainId, tokens]) => {
|
|
1253
|
+
tokens.forEach((token) => (erc20WrapperTokens[chainId] ??= new Set()).add(token));
|
|
1254
|
+
});
|
|
1255
|
+
/** /!\ These tokens can not be listed in `erc20WrapperTokens` because the following specs are different:
|
|
1256
|
+
* - calling `depositFor` supplies on blue instead of minting wrapped token to the user
|
|
1257
|
+
*/
|
|
1258
|
+
export const convexWrapperTokens = {
|
|
1259
|
+
[ChainId.EthMainnet]: new Set([
|
|
1260
|
+
_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvUSDTWBTCWETH-morpho"],
|
|
1261
|
+
_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvUSDCWBTCWETH-morpho"],
|
|
1262
|
+
_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvCRVUSDTBTCWSTETH-morpho"],
|
|
1263
|
+
_addressesRegistry[ChainId.EthMainnet]["stkcvxTryLSD-morpho"],
|
|
1264
|
+
_addressesRegistry[ChainId.EthMainnet]["stkcvxcrvUSDETHCRV-morpho"],
|
|
1265
|
+
_addressesRegistry[ChainId.EthMainnet]["stkcvx2BTC-f-morpho"],
|
|
1266
|
+
]),
|
|
1267
|
+
};
|
|
1268
|
+
export let addressesRegistry = deepFreeze(_addressesRegistry);
|
|
1269
|
+
export let addresses = addressesRegistry;
|
|
1270
|
+
export let deployments = deepFreeze(_deployments);
|
|
1271
|
+
export let unwrappedTokensMapping = deepFreeze(_unwrappedTokensMapping);
|
|
1272
|
+
/**
|
|
1273
|
+
* Registers custom addresses and unwrapped token mappings to extend
|
|
1274
|
+
* the default address registry (on ewisting or unknown chains).
|
|
1275
|
+
*
|
|
1276
|
+
* @param options - Optional configuration object
|
|
1277
|
+
* @param options.unwrappedTokens - A mapping of chain IDs to token address maps,
|
|
1278
|
+
* where each entry maps wrapped tokens to their unwrapped equivalents.
|
|
1279
|
+
* @param options.addresses - Custom address entries to merge into the default registry.
|
|
1280
|
+
* Can be a subset of `ChainAddresses` if chain is already known.
|
|
1281
|
+
* Must provide all required addresses if chain is unknown.
|
|
1282
|
+
* @param options.deployments - Custom deployment entries to merge into the default registry.
|
|
1283
|
+
* Can be a subset of `ChainDeployments` if chain is already known.
|
|
1284
|
+
* Must provide all required deployments if chain is unknown.
|
|
1285
|
+
*
|
|
1286
|
+
* @throws {Error} If attempting to override an existing address.
|
|
1287
|
+
*
|
|
1288
|
+
* @example
|
|
1289
|
+
* ```ts
|
|
1290
|
+
* registerCustomAddresses({
|
|
1291
|
+
* addresses: {
|
|
1292
|
+
* 1: { contract: "0xabc..." }
|
|
1293
|
+
* },
|
|
1294
|
+
* unwrappedTokens: {
|
|
1295
|
+
* 1: { "0xWrapped": "0xUnwrapped" }
|
|
1296
|
+
* }
|
|
1297
|
+
* });
|
|
1298
|
+
* ```
|
|
1299
|
+
*/
|
|
1300
|
+
export function registerCustomAddresses({ unwrappedTokens, addresses: customAddresses, deployments: customDeployments, } = {}) {
|
|
1301
|
+
const customizer = (type) =>
|
|
1302
|
+
// biome-ignore lint/suspicious/noExplicitAny: type is not trivial and not important here
|
|
1303
|
+
(objValue, srcValue, key) => {
|
|
1304
|
+
if (objValue !== undefined &&
|
|
1305
|
+
!isPlainObject(objValue) &&
|
|
1306
|
+
objValue !== srcValue)
|
|
1307
|
+
throw new Error(`Cannot override existing ${type}: ${key}`);
|
|
1308
|
+
};
|
|
1309
|
+
if (customAddresses)
|
|
1310
|
+
addresses = addressesRegistry = deepFreeze(mergeWith({}, addressesRegistry, customAddresses, customizer("address")));
|
|
1311
|
+
if (customDeployments)
|
|
1312
|
+
deployments = deepFreeze(mergeWith({}, deployments, customDeployments, customizer("deployment")));
|
|
1313
|
+
if (unwrappedTokens)
|
|
1314
|
+
unwrappedTokensMapping = deepFreeze(mergeWith({}, unwrappedTokensMapping, unwrappedTokens, customizer("unwrapped token")));
|
|
1315
|
+
}
|