From 30401bbcf798d4e7965c84487fecc6b89c6cf492 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Sun, 21 Sep 2025 09:07:30 +0000 Subject: [PATCH 01/27] (feat): abs,apt,arb,aur,ava,base,mov --- scripts/constants/abstract.ts | 11 +++++++++++ scripts/constants/aptos.ts | 15 +++++++++++++++ scripts/constants/arbitrum.ts | 12 ++++++++++++ scripts/constants/aurora.ts | 11 +++++++++++ scripts/constants/avalanche.ts | 12 ++++++++++++ scripts/constants/base.ts | 11 +++++++++++ scripts/constants/index.ts | 4 ++++ scripts/constants/movement.ts | 15 +++++++++++++++ scripts/generateConstants.ts | 4 ++++ 9 files changed, 95 insertions(+) create mode 100644 scripts/constants/abstract.ts create mode 100644 scripts/constants/aptos.ts create mode 100644 scripts/constants/aurora.ts create mode 100644 scripts/constants/base.ts create mode 100644 scripts/constants/movement.ts diff --git a/scripts/constants/abstract.ts b/scripts/constants/abstract.ts new file mode 100644 index 0000000..a39cc05 --- /dev/null +++ b/scripts/constants/abstract.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E"; +export const FRXETHOFT = "0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440"; +export const FRXUSDOFT = "0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d"; +export const SFRXETHOFT = "0xFD78FD3667DeF2F1097Ed221ec503AE477155394"; +export const SFRXUSDOFT = "0x9F87fbb47C33Cd0614E43500b9511018116F79eE"; +export const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; + +// FraxtalLZHop +export const REMOTEHOP = "0x0d01dc56dcaaca66ad901c959b4011ec"; +export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; \ No newline at end of file diff --git a/scripts/constants/aptos.ts b/scripts/constants/aptos.ts new file mode 100644 index 0000000..933ad7a --- /dev/null +++ b/scripts/constants/aptos.ts @@ -0,0 +1,15 @@ +// Canonicals +export const FPI = "0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2"; +export const FRXETH = "0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585"; +export const FRXUSD = "0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5"; +export const SFRXETH = "0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a"; +export const SFRXUSD = "0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2"; +export const WFRAX = "0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300"; + +// LayerZero +export const FPIOFT = "0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864"; +export const FRXETHOFT = "0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c"; +export const FRXUSDOFT = "0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b"; +export const SFRXETHOFT = "0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356"; +export const SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9"; +export const WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; diff --git a/scripts/constants/arbitrum.ts b/scripts/constants/arbitrum.ts index 0da206f..f599455 100644 --- a/scripts/constants/arbitrum.ts +++ b/scripts/constants/arbitrum.ts @@ -151,3 +151,15 @@ export const USDPLUSFRAXBP_GAUGE = "0x4645e6476D3A5595Be9Efd39426cc10586a8393D"; export const USDPLUSFRAXBP_POOL = "0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013"; export const VECHR = "0x9A01857f33aa382b1d5bb96C3180347862432B0d"; export const VERAM = "0xAAA343032aA79eE9a6897Dab03bef967c3289a06"; + +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A"; +export const REMOTEMINTREDEEMHOP = "0xa46A266dCBf199a71532c76967e200994C5A0D6d"; \ No newline at end of file diff --git a/scripts/constants/aurora.ts b/scripts/constants/aurora.ts new file mode 100644 index 0000000..03321e6 --- /dev/null +++ b/scripts/constants/aurora.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x53e36C8380Ff62D7964BFa4868A0045E58A52344"; +export const REMOTEMINTREDEEMHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; \ No newline at end of file diff --git a/scripts/constants/avalanche.ts b/scripts/constants/avalanche.ts index 295ead0..ec46876 100644 --- a/scripts/constants/avalanche.ts +++ b/scripts/constants/avalanche.ts @@ -60,3 +60,15 @@ export const PANGOLIN_CANFRAX_USDC_E = "0x0c8249757b8d66cB2b6155281A5e4f8F53C94c export const PANGOLIN_CANFRAX_WAVAX = "0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559"; export const PANGOLIN_CANFXS_USDC_E = "0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8"; export const TRADER_JOE_FRAX_WAVAX = "0x0d84595e8638dBc631076c51000B2d31120D8aa1"; + +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; +export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; diff --git a/scripts/constants/base.ts b/scripts/constants/base.ts new file mode 100644 index 0000000..945a9a0 --- /dev/null +++ b/scripts/constants/base.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B"; +export const FRXETHOFT = "0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA"; +export const FRXUSDOFT = "0xe5020A6d073a794B6E7f05678707dE47986Fb0b6"; +export const SFRXETHOFT = "0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA"; +export const SFRXUSDOFT = "0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e"; +export const WFRAXOFT = "0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf"; + +// FraxtalLZHop +export const REMOTEHOP = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const REMOTEMINTREDEEMHOP = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; \ No newline at end of file diff --git a/scripts/constants/index.ts b/scripts/constants/index.ts index 7b63f62..b9f4998 100644 --- a/scripts/constants/index.ts +++ b/scripts/constants/index.ts @@ -1,5 +1,9 @@ +export * as Abstract from "./abstract"; +export * as Aptos from "./aptos"; export * as Arbitrum from "./arbitrum"; +export * as Aurora from "./aurora"; export * as Avalanche from "./avalanche"; +export * as Base from "./base"; export * as BSC from "./bsc"; export * as Fantom from "./fantom"; export * as FraxtalL1Devnet from "./fraxtal-devnet-l1"; diff --git a/scripts/constants/movement.ts b/scripts/constants/movement.ts new file mode 100644 index 0000000..933ad7a --- /dev/null +++ b/scripts/constants/movement.ts @@ -0,0 +1,15 @@ +// Canonicals +export const FPI = "0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2"; +export const FRXETH = "0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585"; +export const FRXUSD = "0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5"; +export const SFRXETH = "0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a"; +export const SFRXUSD = "0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2"; +export const WFRAX = "0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300"; + +// LayerZero +export const FPIOFT = "0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864"; +export const FRXETHOFT = "0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c"; +export const FRXUSDOFT = "0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b"; +export const SFRXETHOFT = "0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356"; +export const SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9"; +export const WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; diff --git a/scripts/generateConstants.ts b/scripts/generateConstants.ts index 0fec963..369a25d 100644 --- a/scripts/generateConstants.ts +++ b/scripts/generateConstants.ts @@ -4,8 +4,12 @@ import path from "path"; import * as constants from "./constants"; const networkPrefixes = { + Abstract: "ABS", + Aptos: "APT", Arbitrum: "ARBI", + Aurora: "AUR", Avalanche: "AVAX", + BASE: "BASE", BSC: "BSC", Fantom: "FTM", FraxtalL1Devnet: "FXTL_L1_DN", From db8620b16d616e9fb565a557e529229f09b55417 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Sun, 21 Sep 2025 10:16:31 +0000 Subject: [PATCH 02/27] (feat): bera,blast,bsc,ethereum,fraxtal,hype,ink,katana,linea,mode,optimism,plumephoenix,polygonzk,polygon,scroll,sei,solana,uni,worldchain,xlayer,zksync --- scripts/constants/abstract.ts | 2 +- scripts/constants/bera.ts | 11 +++++++++++ scripts/constants/blast.ts | 11 +++++++++++ scripts/constants/bsc.ts | 12 ++++++++++++ scripts/constants/ethereum.ts | 20 ++++++++++++++++++++ scripts/constants/fraxtal-l2.ts | 20 ++++++++++++++++---- scripts/constants/hyperliquid.ts | 11 +++++++++++ scripts/constants/index.ts | 16 ++++++++++++++++ scripts/constants/ink.ts | 11 +++++++++++ scripts/constants/katana.ts | 11 +++++++++++ scripts/constants/linea.ts | 11 +++++++++++ scripts/constants/mode.ts | 11 +++++++++++ scripts/constants/optimism.ts | 12 ++++++++++++ scripts/constants/plumephoenix.ts | 11 +++++++++++ scripts/constants/polygon-zkevm.ts | 12 ++++++++++++ scripts/constants/polygon.ts | 12 ++++++++++++ scripts/constants/scroll.ts | 11 +++++++++++ scripts/constants/sei.ts | 11 +++++++++++ scripts/constants/solana.ts | 13 +++++++++++++ scripts/constants/sonic.ts | 11 +++++++++++ scripts/constants/unichain.ts | 11 +++++++++++ scripts/constants/worldchain.ts | 11 +++++++++++ scripts/constants/xlayer.ts | 11 +++++++++++ scripts/constants/zksync.ts | 11 +++++++++++ scripts/generateConstants.ts | 13 +++++++++++++ 25 files changed, 292 insertions(+), 5 deletions(-) create mode 100644 scripts/constants/bera.ts create mode 100644 scripts/constants/blast.ts create mode 100644 scripts/constants/ethereum.ts create mode 100644 scripts/constants/hyperliquid.ts create mode 100644 scripts/constants/ink.ts create mode 100644 scripts/constants/katana.ts create mode 100644 scripts/constants/linea.ts create mode 100644 scripts/constants/mode.ts create mode 100644 scripts/constants/plumephoenix.ts create mode 100644 scripts/constants/scroll.ts create mode 100644 scripts/constants/sei.ts create mode 100644 scripts/constants/solana.ts create mode 100644 scripts/constants/sonic.ts create mode 100644 scripts/constants/unichain.ts create mode 100644 scripts/constants/worldchain.ts create mode 100644 scripts/constants/xlayer.ts create mode 100644 scripts/constants/zksync.ts diff --git a/scripts/constants/abstract.ts b/scripts/constants/abstract.ts index a39cc05..c1dbf58 100644 --- a/scripts/constants/abstract.ts +++ b/scripts/constants/abstract.ts @@ -7,5 +7,5 @@ export const SFRXUSDOFT = "0x9F87fbb47C33Cd0614E43500b9511018116F79eE"; export const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; // FraxtalLZHop -export const REMOTEHOP = "0x0d01dc56dcaaca66ad901c959b4011ec"; +export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; \ No newline at end of file diff --git a/scripts/constants/bera.ts b/scripts/constants/bera.ts new file mode 100644 index 0000000..48b4cb8 --- /dev/null +++ b/scripts/constants/bera.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; +export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; \ No newline at end of file diff --git a/scripts/constants/blast.ts b/scripts/constants/blast.ts new file mode 100644 index 0000000..f6f399a --- /dev/null +++ b/scripts/constants/blast.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0xe93Cb38f97469eac2f284a87813D0d701b28E58e"; +export const REMOTEMINTREDEEMHOP = "0x85b1714b25f40FD5025423124c076476073180b3"; \ No newline at end of file diff --git a/scripts/constants/bsc.ts b/scripts/constants/bsc.ts index 01e8591..a2cff5a 100644 --- a/scripts/constants/bsc.ts +++ b/scripts/constants/bsc.ts @@ -56,3 +56,15 @@ export const APESWAP_CANFRAX_WBNB = "0x16BDb03E6074759943149eBB1526DDfD1AA5fc56" export const APESWAP_CANFRAX_USDC = "0x885BE9bCbCdcB70c59F56A78ae64A820e0448589"; export const APESWAP_CANFXS_USDC = "0x84f2781E4E60f97D2963260A7b20D883F04F0d20"; export const SADDLE_FRAX_BUSD = "0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3"; + +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; +export const REMOTEMINTREDEEMHOP = "0xdee45510b42Cb0678C8A61D043C698aF66b0d852"; \ No newline at end of file diff --git a/scripts/constants/ethereum.ts b/scripts/constants/ethereum.ts new file mode 100644 index 0000000..d85b055 --- /dev/null +++ b/scripts/constants/ethereum.ts @@ -0,0 +1,20 @@ +// Canonicals +export const FPI = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +export const FRXETH = "0x5E8422345238F34275888049021821E8E08CAa1f"; +export const FRXUSD = "0xCAcd6fd266aF91b8AeD52aCCc382b4e165586E29"; +export const SFRXETH = "0xac3E018457B222d93114458476f3E3416Abbe38F"; +export const SFRXUSD = "0xcf62F905562626CfcDD2261162a51fd02Fc9c5b6"; +export const FRAX = "0x853d955aCEf822Db058eb8505911ED77F175b99e"; +export const FXS = "0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0"; + +// LayerZero +export const FPIOFT = "0x9033BAD7aA130a2466060A2dA71fAe2219781B4b"; +export const FRXETHOFT = "0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6"; +export const FRXUSDOFT = "0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0"; +export const SFRXETHOFT = "0xbBc424e58ED38dd911309611ae2d7A23014Bd960"; +export const SFRXUSDOFT = "0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126"; +export const WFRAXOFT = "0x04ACaF8D2865c0714F79da09645C13FD2888977f"; + +// FraxtalLZHop +export const REMOTEHOP = "0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E"; +export const REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; \ No newline at end of file diff --git a/scripts/constants/fraxtal-l2.ts b/scripts/constants/fraxtal-l2.ts index 6e921a1..f10be7f 100644 --- a/scripts/constants/fraxtal-l2.ts +++ b/scripts/constants/fraxtal-l2.ts @@ -1,16 +1,16 @@ export const CHAIN_ID = 252; // Canonicals -export const FRAX = "0xFc00000000000000000000000000000000000001"; -export const FXS = "0xFc00000000000000000000000000000000000002"; +export const FRXUSD = "0xFc00000000000000000000000000000000000001"; +export const WFRAX = "0xFc00000000000000000000000000000000000002"; export const FPI = "0xFc00000000000000000000000000000000000003"; export const FPIS = "0xfc00000000000000000000000000000000000004"; export const SFRXETH = "0xFC00000000000000000000000000000000000005"; export const WFRXETH = "0xFC00000000000000000000000000000000000006"; export const FRXBTC = "0xfC00000000000000000000000000000000000007"; export const SFRAX = "0xfc00000000000000000000000000000000000008"; -export const FRAX_PROXY = FRAX; -export const FXS_PROXY = FXS; +export const FRXUSD_PROXY = FRXUSD; +export const WFRAX_PROXY = WFRAX; export const FPI_PROXY = FPI; export const FPIS_PROXY = FPIS; export const SFRXETH_PROXY = SFRXETH; @@ -186,3 +186,15 @@ export const CROSS_DOMAIN_MESSENGER = "0x420000000000000000000000000000000000000 export const ERC20_FACTORY_PROXY = "0x4200000000000000000000000000000000000012"; export const L2_STANDARD_BRIDGE_PROXY = "0x4200000000000000000000000000000000000010"; export const L2_TO_L1_MESSAGE_PASSER = "0x4200000000000000000000000000000000000016"; + +// LayerZero +export const FPIOFT = "0x75c38D46001b0F8108c4136216bd2694982C20FC"; +export const FRXETHOFT = "0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604"; +export const FRXUSDOFT = "0x96A394058E2b84A89bac9667B19661Ed003cF5D4"; +export const SFRXETHOFT = "0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168"; +export const SFRXUSDOFT = "0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361"; +export const WFRAXOFT = "0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A"; + +// FraxtalLZHop +export const FRAXTALHOP = "0x2A2019b30C157dB6c1C01306b8025167dBe1803B"; +export const FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; \ No newline at end of file diff --git a/scripts/constants/hyperliquid.ts b/scripts/constants/hyperliquid.ts new file mode 100644 index 0000000..572031b --- /dev/null +++ b/scripts/constants/hyperliquid.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = ""; +export const REMOTEMINTREDEEMHOP = ""; \ No newline at end of file diff --git a/scripts/constants/index.ts b/scripts/constants/index.ts index b9f4998..a500d51 100644 --- a/scripts/constants/index.ts +++ b/scripts/constants/index.ts @@ -4,7 +4,10 @@ export * as Arbitrum from "./arbitrum"; export * as Aurora from "./aurora"; export * as Avalanche from "./avalanche"; export * as Base from "./base"; +export * as Bera from "./bera"; +export * as Blast from "./blast"; export * as BSC from "./bsc"; +export * as Ethereum from "./ethereum"; export * as Fantom from "./fantom"; export * as FraxtalL1Devnet from "./fraxtal-devnet-l1"; export * as FraxtalL2Devnet from "./fraxtal-devnet-l2"; @@ -12,9 +15,22 @@ export * as FraxtalL2 from "./fraxtal-l2"; export * as FraxtalTestnetL1 from "./fraxtal-testnet-l1"; export * as FraxtalTestnetL2 from "./fraxtal-testnet-l2"; export * as Holesky from "./holesky"; +export * as Hyperliquid from "./hyperliquid"; +export * as Ink from "./ink"; +export * as Katana from "./katana"; +export * as Linea from "./linea" export * as Mainnet from "./mainnet"; +export * as Mode from "./mode"; export * as Moonbeam from "./moonbeam"; export * as Moonriver from "./moonriver"; export * as Optimism from "./optimism"; +export * as Plumephoenix from "./plumephoenix"; export * as Polygon from "./polygon"; export * as PolygonzkEVM from "./polygon-zkevm"; +export * as Scroll from "./scroll"; +export * as Solana from "./solana" +export * as Sonic from "./sonic" +export * as Unichain from "./unichain" +export * as Worldchain from "./worldchain" +export * as XLayer from "./xlayer" +export * as ZkSync from "./zksync" diff --git a/scripts/constants/ink.ts b/scripts/constants/ink.ts new file mode 100644 index 0000000..19273ee --- /dev/null +++ b/scripts/constants/ink.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; +export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; \ No newline at end of file diff --git a/scripts/constants/katana.ts b/scripts/constants/katana.ts new file mode 100644 index 0000000..ac818ab --- /dev/null +++ b/scripts/constants/katana.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c"; +export const REMOTEMINTREDEEMHOP = "0xF6f45CCB5E85D1400067ee66F9e168f83e86124E"; \ No newline at end of file diff --git a/scripts/constants/linea.ts b/scripts/constants/linea.ts new file mode 100644 index 0000000..7391dde --- /dev/null +++ b/scripts/constants/linea.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4"; +export const FRXETHOFT = "0xB1aFD04774c02AE84692619448B08BA79F19b1ff"; +export const FRXUSDOFT = "0xC7346783f5e645aa998B106Ef9E7f499528673D8"; +export const SFRXETHOFT = "0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2"; +export const SFRXUSDOFT = "0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6"; +export const WFRAXOFT = "0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5"; + +// FraxtalLZHop +export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; +export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; \ No newline at end of file diff --git a/scripts/constants/mode.ts b/scripts/constants/mode.ts new file mode 100644 index 0000000..652853a --- /dev/null +++ b/scripts/constants/mode.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x486cb4788f1be7cdef9301a7a637b451df3cf262"; +export const REMOTEMINTREDEEMHOP = "0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9"; \ No newline at end of file diff --git a/scripts/constants/optimism.ts b/scripts/constants/optimism.ts index 9dea4a9..d19245d 100644 --- a/scripts/constants/optimism.ts +++ b/scripts/constants/optimism.ts @@ -52,3 +52,15 @@ export const FPI_COMPTROLLER = "0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635"; // PoolRelatedTokens export const CURVE_4POOL = "0x3da3153E26A230d918bb9F9428A8d60349B73379"; export const KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = "0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197"; + +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x31D982ebd82Ad900358984bd049207A4c2468640"; +export const REMOTEMINTREDEEMHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; \ No newline at end of file diff --git a/scripts/constants/plumephoenix.ts b/scripts/constants/plumephoenix.ts new file mode 100644 index 0000000..1efb4e5 --- /dev/null +++ b/scripts/constants/plumephoenix.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; +export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; \ No newline at end of file diff --git a/scripts/constants/polygon-zkevm.ts b/scripts/constants/polygon-zkevm.ts index 0a9f1aa..2b4a666 100644 --- a/scripts/constants/polygon-zkevm.ts +++ b/scripts/constants/polygon-zkevm.ts @@ -36,3 +36,15 @@ export const COMBO_ORACLE = "0x030BD43af99cb72B51dA233A73F7697Cd2461C0b"; export const COMBO_ORACLE_UNIV2_UNIV3 = "0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D"; // PoolRelatedTokens + +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; +export const REMOTEMINTREDEEMHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; \ No newline at end of file diff --git a/scripts/constants/polygon.ts b/scripts/constants/polygon.ts index 4bedf7b..13a1816 100644 --- a/scripts/constants/polygon.ts +++ b/scripts/constants/polygon.ts @@ -56,3 +56,15 @@ export const DYSTOPIA_STABLEV1_AMM___USDC_FRAX = "0x53227c83a98Ba1035FEd912Da6cE export const DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = "0xfC2e89aabD257471a461dd506188609B2Bec53Fa"; export const FRAX3POOL = "0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac"; export const HOP_LP_USDC = "0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A"; + +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C"; +export const REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; \ No newline at end of file diff --git a/scripts/constants/scroll.ts b/scripts/constants/scroll.ts new file mode 100644 index 0000000..5db5344 --- /dev/null +++ b/scripts/constants/scroll.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; +export const REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; \ No newline at end of file diff --git a/scripts/constants/sei.ts b/scripts/constants/sei.ts new file mode 100644 index 0000000..294d513 --- /dev/null +++ b/scripts/constants/sei.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x3a6F28e8DDD232B02C72C491Bd1626F69D2fb329"; +export const REMOTEMINTREDEEMHOP = "0x0255a172d0a060F2bEab3e7c12334dD73cCC26ba"; \ No newline at end of file diff --git a/scripts/constants/solana.ts b/scripts/constants/solana.ts new file mode 100644 index 0000000..e430102 --- /dev/null +++ b/scripts/constants/solana.ts @@ -0,0 +1,13 @@ +// LayerZero +export const FPIOFT = "0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0"; +export const FRXETHOFT = "0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3"; +export const FRXUSDOFT = "0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad"; +export const SFRXETHOFT = "0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61"; +export const SFRXUSDOFT = "0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf"; +export const WFRAXOFT = "0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa"; +export const FPI = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH" +export const FRXETH = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf" +export const FRXUSD = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw" +export const SFRXETH = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv" +export const SFRXUSD = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45" +export const WFRAX = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga" \ No newline at end of file diff --git a/scripts/constants/sonic.ts b/scripts/constants/sonic.ts new file mode 100644 index 0000000..5b0d672 --- /dev/null +++ b/scripts/constants/sonic.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23"; +export const REMOTEMINTREDEEMHOP = "0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b"; \ No newline at end of file diff --git a/scripts/constants/unichain.ts b/scripts/constants/unichain.ts new file mode 100644 index 0000000..48b4cb8 --- /dev/null +++ b/scripts/constants/unichain.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; +export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; \ No newline at end of file diff --git a/scripts/constants/worldchain.ts b/scripts/constants/worldchain.ts new file mode 100644 index 0000000..4b82a1c --- /dev/null +++ b/scripts/constants/worldchain.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x938d99A81814f66b01010d19DDce92A633441699"; +export const REMOTEMINTREDEEMHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; \ No newline at end of file diff --git a/scripts/constants/xlayer.ts b/scripts/constants/xlayer.ts new file mode 100644 index 0000000..b4e7183 --- /dev/null +++ b/scripts/constants/xlayer.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396"; +export const REMOTEMINTREDEEMHOP = "0x45c6852a5188ce1905567ea83454329bd4982007"; \ No newline at end of file diff --git a/scripts/constants/zksync.ts b/scripts/constants/zksync.ts new file mode 100644 index 0000000..c1dbf58 --- /dev/null +++ b/scripts/constants/zksync.ts @@ -0,0 +1,11 @@ +// LayerZero +export const FPIOFT = "0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E"; +export const FRXETHOFT = "0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440"; +export const FRXUSDOFT = "0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d"; +export const SFRXETHOFT = "0xFD78FD3667DeF2F1097Ed221ec503AE477155394"; +export const SFRXUSDOFT = "0x9F87fbb47C33Cd0614E43500b9511018116F79eE"; +export const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; + +// FraxtalLZHop +export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; +export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; \ No newline at end of file diff --git a/scripts/generateConstants.ts b/scripts/generateConstants.ts index 369a25d..95adb7c 100644 --- a/scripts/generateConstants.ts +++ b/scripts/generateConstants.ts @@ -10,7 +10,10 @@ const networkPrefixes = { Aurora: "AUR", Avalanche: "AVAX", BASE: "BASE", + BERA: "BERA", + BLAST: "BLAST", BSC: "BSC", + Ethereum: "ETH", Fantom: "FTM", FraxtalL1Devnet: "FXTL_L1_DN", FraxtalL2Devnet: "FXTL_L2_DN", @@ -18,12 +21,22 @@ const networkPrefixes = { FraxtalTestnetL1: "FXTL_TN_L1", FraxtalTestnetL2: "FXTL_TN_L2", Holesky: "HOLESKY", + Hyperliquid: "HYPE", + Katana: "KTN", Mainnet: "ETH", Moonbeam: "MNBM", Moonriver: "MOVR", Optimism: "OPTI", Polygon: "POLY", PolygonzkEVM: "POLY_ZKEVM", + Scroll: "SCROLL", + Sei: "SEI", + Solana: "SOL", + Sonic: "SONIC", + Unichain: "UNI", + Worldchain: "WRLD", + Linea: "LINEA", + Zksync:"ZKSYNC" }; const REMOVE_DUPLICATE_LABELS = false; From a375cc908730325b88fc9d719a65d689aa1edfb4 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 23 Sep 2025 07:50:58 +0000 Subject: [PATCH 03/27] (chore): gen cosntants gile --- package.json | 3 +- pnpm-lock.yaml | 1282 +++-- scripts/constants/TEMPLATE.ts | 4 + scripts/constants/ethereum.ts | 20 - scripts/constants/index.ts | 1 - scripts/constants/mainnet.ts | 12 + scripts/constants/solana.ts | 24 +- scripts/generateConstants.ts | 43 +- src/Constants.sol | 1843 ++++---- src/Constants1.sol | 4145 +++++++++++++++++ src/contracts/chain-constants/Abstract.sol | 34 + src/contracts/chain-constants/Aptos.sol | 42 + src/contracts/chain-constants/Arbitrum.sol | 16 + src/contracts/chain-constants/Aurora.sol | 34 + src/contracts/chain-constants/Avalanche.sol | 16 + src/contracts/chain-constants/BSC.sol | 104 +- src/contracts/chain-constants/Base.sol | 34 + src/contracts/chain-constants/Bera.sol | 34 + src/contracts/chain-constants/Blast.sol | 34 + src/contracts/chain-constants/FraxtalL2.sol | 44 +- .../chain-constants/FraxtalTestnetL1.sol | 2 +- src/contracts/chain-constants/Holesky.sol | 2 +- src/contracts/chain-constants/Hyperliquid.sol | 34 + src/contracts/chain-constants/Ink.sol | 34 + src/contracts/chain-constants/Katana.sol | 34 + src/contracts/chain-constants/Linea.sol | 34 + src/contracts/chain-constants/Mainnet.sol | 16 + src/contracts/chain-constants/Mode.sol | 34 + src/contracts/chain-constants/Optimism.sol | 16 + .../chain-constants/Plumephoenix.sol | 34 + src/contracts/chain-constants/Polygon.sol | 16 + .../chain-constants/PolygonzkEVM.sol | 16 + src/contracts/chain-constants/Scroll.sol | 34 + src/contracts/chain-constants/Solana.sol | 42 + src/contracts/chain-constants/Sonic.sol | 34 + src/contracts/chain-constants/Unichain.sol | 34 + src/contracts/chain-constants/Worldchain.sol | 34 + src/contracts/chain-constants/XLayer.sol | 34 + src/contracts/chain-constants/ZkSync.sol | 34 + 39 files changed, 6673 insertions(+), 1614 deletions(-) delete mode 100644 scripts/constants/ethereum.ts create mode 100644 src/Constants1.sol create mode 100644 src/contracts/chain-constants/Abstract.sol create mode 100644 src/contracts/chain-constants/Aptos.sol create mode 100644 src/contracts/chain-constants/Aurora.sol create mode 100644 src/contracts/chain-constants/Base.sol create mode 100644 src/contracts/chain-constants/Bera.sol create mode 100644 src/contracts/chain-constants/Blast.sol create mode 100644 src/contracts/chain-constants/Hyperliquid.sol create mode 100644 src/contracts/chain-constants/Ink.sol create mode 100644 src/contracts/chain-constants/Katana.sol create mode 100644 src/contracts/chain-constants/Linea.sol create mode 100644 src/contracts/chain-constants/Mode.sol create mode 100644 src/contracts/chain-constants/Plumephoenix.sol create mode 100644 src/contracts/chain-constants/Scroll.sol create mode 100644 src/contracts/chain-constants/Solana.sol create mode 100644 src/contracts/chain-constants/Sonic.sol create mode 100644 src/contracts/chain-constants/Unichain.sol create mode 100644 src/contracts/chain-constants/Worldchain.sol create mode 100644 src/contracts/chain-constants/XLayer.sol create mode 100644 src/contracts/chain-constants/ZkSync.sol diff --git a/package.json b/package.json index e057a27..72a9b01 100644 --- a/package.json +++ b/package.json @@ -34,6 +34,7 @@ "ds-test": "github:dapphub/ds-test", "forge-std": "github:foundry-rs/forge-std#60acb7aaadcce2d68e52986a0a66fe79f07d138f", "frax-standard-solidity": "github:FraxFinance/frax-standard-solidity", - "solidity-bytes-utils": "github:GNSPS/solidity-bytes-utils" + "solidity-bytes-utils": "github:GNSPS/solidity-bytes-utils", + "viem": "^2.37.8" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 398b933..56ddd76 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,10 +1,11 @@ -lockfileVersion: "9.0" +lockfileVersion: '9.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false importers: + .: dependencies: ds-test: @@ -19,8 +20,11 @@ importers: solidity-bytes-utils: specifier: github:GNSPS/solidity-bytes-utils version: https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9 + viem: + specifier: ^2.37.8 + version: 2.37.8(typescript@5.8.3) devDependencies: - "@openzeppelin/contracts": + '@openzeppelin/contracts': specifier: ^5.4.0 version: 5.4.0 husky: @@ -52,1180 +56,1049 @@ importers: version: 5.8.3 packages: - "@ampproject/remapping@2.3.0": - resolution: - { integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw== } - engines: { node: ">=6.0.0" } - - "@babel/code-frame@7.27.1": - resolution: - { integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg== } - engines: { node: ">=6.9.0" } - - "@babel/helper-validator-identifier@7.27.1": - resolution: - { integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow== } - engines: { node: ">=6.9.0" } - - "@babel/runtime@7.28.2": - resolution: - { integrity: sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA== } - engines: { node: ">=6.9.0" } - - "@cspotcode/source-map-support@0.8.1": - resolution: - { integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw== } - engines: { node: ">=12" } - - "@jridgewell/gen-mapping@0.3.12": - resolution: - { integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg== } - - "@jridgewell/resolve-uri@3.1.2": - resolution: - { integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw== } - engines: { node: ">=6.0.0" } - - "@jridgewell/sourcemap-codec@1.5.4": - resolution: - { integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw== } - - "@jridgewell/trace-mapping@0.3.29": - resolution: - { integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ== } - - "@jridgewell/trace-mapping@0.3.9": - resolution: - { integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== } - - "@openzeppelin/contracts@5.4.0": - resolution: - { integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A== } - - "@prettier/sync@0.3.0": - resolution: - { integrity: sha512-3dcmCyAxIcxy036h1I7MQU/uEEBq8oLwf1CE3xeze+MPlgkdlb/+w6rGR/1dhp6Hqi17fRS6nvwnOzkESxEkOw== } + + '@adraffy/ens-normalize@1.11.1': + resolution: {integrity: sha512-nhCBV3quEgesuf7c7KYfperqSS14T8bYuvJ8PcLJp6znkZpFc0AuW4qBtr8eKVyPPe/8RSr7sglCWPU5eaxwKQ==} + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@babel/code-frame@7.27.1': + resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + engines: {node: '>=6.9.0'} + + '@babel/runtime@7.28.2': + resolution: {integrity: sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==} + engines: {node: '>=6.9.0'} + + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + + '@jridgewell/gen-mapping@0.3.12': + resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.5.4': + resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==} + + '@jridgewell/trace-mapping@0.3.29': + resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==} + + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + + '@noble/ciphers@1.3.0': + resolution: {integrity: sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==} + engines: {node: ^14.21.3 || >=16} + + '@noble/curves@1.9.1': + resolution: {integrity: sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} + + '@openzeppelin/contracts@5.4.0': + resolution: {integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==} + + '@prettier/sync@0.3.0': + resolution: {integrity: sha512-3dcmCyAxIcxy036h1I7MQU/uEEBq8oLwf1CE3xeze+MPlgkdlb/+w6rGR/1dhp6Hqi17fRS6nvwnOzkESxEkOw==} peerDependencies: prettier: ^3.0.0 - "@solidity-parser/parser@0.16.2": - resolution: - { integrity: sha512-PI9NfoA3P8XK2VBkK5oIfRgKDsicwDZfkVq9ZTBCQYGOP1N2owgY2dyLGyU5/J/hQs8KRk55kdmvTLjy3Mu3vg== } + '@scure/base@1.2.6': + resolution: {integrity: sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==} + + '@scure/bip32@1.7.0': + resolution: {integrity: sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==} - "@solidity-parser/parser@0.20.2": - resolution: - { integrity: sha512-rbu0bzwNvMcwAjH86hiEAcOeRI2EeK8zCkHDrFykh/Al8mvJeFmjy3UrE7GYQjNwOgbGUUtCn5/k8CB8zIu7QA== } + '@scure/bip39@1.6.0': + resolution: {integrity: sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==} - "@sveltejs/acorn-typescript@1.0.5": - resolution: - { integrity: sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ== } + '@solidity-parser/parser@0.16.2': + resolution: {integrity: sha512-PI9NfoA3P8XK2VBkK5oIfRgKDsicwDZfkVq9ZTBCQYGOP1N2owgY2dyLGyU5/J/hQs8KRk55kdmvTLjy3Mu3vg==} + + '@solidity-parser/parser@0.20.2': + resolution: {integrity: sha512-rbu0bzwNvMcwAjH86hiEAcOeRI2EeK8zCkHDrFykh/Al8mvJeFmjy3UrE7GYQjNwOgbGUUtCn5/k8CB8zIu7QA==} + + '@sveltejs/acorn-typescript@1.0.5': + resolution: {integrity: sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ==} peerDependencies: acorn: ^8.9.0 - "@tsconfig/node10@1.0.11": - resolution: - { integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw== } + '@tsconfig/node10@1.0.11': + resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} - "@tsconfig/node12@1.0.11": - resolution: - { integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag== } + '@tsconfig/node12@1.0.11': + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - "@tsconfig/node14@1.0.3": - resolution: - { integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow== } + '@tsconfig/node14@1.0.3': + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - "@tsconfig/node16@1.0.4": - resolution: - { integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== } + '@tsconfig/node16@1.0.4': + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - "@types/estree@1.0.8": - resolution: - { integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== } + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} - "@types/fs-extra@11.0.4": - resolution: - { integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ== } + '@types/fs-extra@11.0.4': + resolution: {integrity: sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==} - "@types/jsonfile@6.1.4": - resolution: - { integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ== } + '@types/jsonfile@6.1.4': + resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==} - "@types/node@18.19.120": - resolution: - { integrity: sha512-WtCGHFXnVI8WHLxDAt5TbnCM4eSE+nI0QN2NJtwzcgMhht2eNz6V9evJrk+lwC8bCY8OWV5Ym8Jz7ZEyGnKnMA== } + '@types/node@18.19.120': + resolution: {integrity: sha512-WtCGHFXnVI8WHLxDAt5TbnCM4eSE+nI0QN2NJtwzcgMhht2eNz6V9evJrk+lwC8bCY8OWV5Ym8Jz7ZEyGnKnMA==} + + abitype@1.1.0: + resolution: {integrity: sha512-6Vh4HcRxNMLA0puzPjM5GBgT4aAcFGKZzSgAXvuZ27shJP6NEpielTuqbBmZILR5/xd0PizkBGy5hReKz9jl5A==} + peerDependencies: + typescript: '>=5.0.4' + zod: ^3.22.0 || ^4.0.0 + peerDependenciesMeta: + typescript: + optional: true + zod: + optional: true acorn-walk@8.3.4: - resolution: - { integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g== } - engines: { node: ">=0.4.0" } + resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} + engines: {node: '>=0.4.0'} acorn@8.15.0: - resolution: - { integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== } - engines: { node: ">=0.4.0" } + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + engines: {node: '>=0.4.0'} hasBin: true ajv@6.12.6: - resolution: - { integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== } + resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} ajv@8.17.1: - resolution: - { integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== } + resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} ansi-escapes@5.0.0: - resolution: - { integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA== } - engines: { node: ">=12" } + resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} + engines: {node: '>=12'} ansi-escapes@7.0.0: - resolution: - { integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw== } - engines: { node: ">=18" } + resolution: {integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==} + engines: {node: '>=18'} ansi-regex@5.0.1: - resolution: - { integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== } - engines: { node: ">=8" } + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} ansi-regex@6.1.0: - resolution: - { integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA== } - engines: { node: ">=12" } + resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} + engines: {node: '>=12'} ansi-styles@4.3.0: - resolution: - { integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== } - engines: { node: ">=8" } + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} ansi-styles@6.2.1: - resolution: - { integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== } - engines: { node: ">=12" } + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} antlr4@4.13.2: - resolution: - { integrity: sha512-QiVbZhyy4xAZ17UPEuG3YTOt8ZaoeOR1CvEAqrEsDBsOqINslaB147i9xqljZqoyf5S+EUlGStaj+t22LT9MOg== } - engines: { node: ">=16" } + resolution: {integrity: sha512-QiVbZhyy4xAZ17UPEuG3YTOt8ZaoeOR1CvEAqrEsDBsOqINslaB147i9xqljZqoyf5S+EUlGStaj+t22LT9MOg==} + engines: {node: '>=16'} antlr4ts@0.5.0-alpha.4: - resolution: - { integrity: sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ== } + resolution: {integrity: sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==} arg@4.1.3: - resolution: - { integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA== } + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} argparse@2.0.1: - resolution: - { integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== } + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} aria-query@5.3.2: - resolution: - { integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==} + engines: {node: '>= 0.4'} ast-parents@0.0.1: - resolution: - { integrity: sha512-XHusKxKz3zoYk1ic8Un640joHbFMhbqneyoZfoKnEGtf2ey9Uh/IdpcQplODdO/kENaMIWsD0nJm4+wX3UNLHA== } + resolution: {integrity: sha512-XHusKxKz3zoYk1ic8Un640joHbFMhbqneyoZfoKnEGtf2ey9Uh/IdpcQplODdO/kENaMIWsD0nJm4+wX3UNLHA==} astral-regex@2.0.0: - resolution: - { integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== } - engines: { node: ">=8" } + resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} + engines: {node: '>=8'} axobject-query@4.1.0: - resolution: - { integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} + engines: {node: '>= 0.4'} balanced-match@1.0.2: - resolution: - { integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== } + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} brace-expansion@2.0.2: - resolution: - { integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ== } + resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} braces@3.0.3: - resolution: - { integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== } - engines: { node: ">=8" } + resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} + engines: {node: '>=8'} callsites@3.1.0: - resolution: - { integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== } - engines: { node: ">=6" } + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} camel-case@4.1.2: - resolution: - { integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== } + resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==} capital-case@1.0.4: - resolution: - { integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A== } + resolution: {integrity: sha512-ds37W8CytHgwnhGGTi88pcPyR15qoNkOpYwmMMfnWqqWgESapLqvDx6huFjQ5vqWSn2Z06173XNA7LtMOeUh1A==} chalk@4.1.2: - resolution: - { integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== } - engines: { node: ">=10" } + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} chalk@5.3.0: - resolution: - { integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w== } - engines: { node: ^12.17.0 || ^14.13 || >=16.0.0 } + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} chalk@5.4.1: - resolution: - { integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w== } - engines: { node: ^12.17.0 || ^14.13 || >=16.0.0 } + resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} change-case@4.1.2: - resolution: - { integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A== } + resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==} cli-cursor@4.0.0: - resolution: - { integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg== } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} cli-cursor@5.0.0: - resolution: - { integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw== } - engines: { node: ">=18" } + resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} + engines: {node: '>=18'} cli-truncate@3.1.0: - resolution: - { integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA== } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} cli-truncate@4.0.0: - resolution: - { integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA== } - engines: { node: ">=18" } + resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} + engines: {node: '>=18'} clsx@2.1.1: - resolution: - { integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA== } - engines: { node: ">=6" } + resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} + engines: {node: '>=6'} color-convert@2.0.1: - resolution: - { integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== } - engines: { node: ">=7.0.0" } + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} color-name@1.1.4: - resolution: - { integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== } + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} colorette@2.0.20: - resolution: - { integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w== } + resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} command-exists@1.2.9: - resolution: - { integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== } + resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} commander@10.0.1: - resolution: - { integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== } - engines: { node: ">=14" } + resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} + engines: {node: '>=14'} commander@11.0.0: - resolution: - { integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ== } - engines: { node: ">=16" } + resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} + engines: {node: '>=16'} commander@14.0.0: - resolution: - { integrity: sha512-2uM9rYjPvyq39NwLRqaiLtWHyDC1FvryJDa2ATTVims5YAS4PupsEQsDvP14FqhFr0P49CYDugi59xaxJlTXRA== } - engines: { node: ">=20" } + resolution: {integrity: sha512-2uM9rYjPvyq39NwLRqaiLtWHyDC1FvryJDa2ATTVims5YAS4PupsEQsDvP14FqhFr0P49CYDugi59xaxJlTXRA==} + engines: {node: '>=20'} commander@8.3.0: - resolution: - { integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== } - engines: { node: ">= 12" } + resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==} + engines: {node: '>= 12'} constant-case@3.0.4: - resolution: - { integrity: sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ== } + resolution: {integrity: sha512-I2hSBi7Vvs7BEuJDr5dDHfzb/Ruj3FyvFyh7KLilAjNQw3Be+xgqUBA2W6scVEcL0hL1dwPRtIqEPVUCKkSsyQ==} cosmiconfig@8.3.6: - resolution: - { integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA== } - engines: { node: ">=14" } + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} peerDependencies: - typescript: ">=4.9.5" + typescript: '>=4.9.5' peerDependenciesMeta: typescript: optional: true create-require@1.1.1: - resolution: - { integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== } + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} cross-spawn@7.0.6: - resolution: - { integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== } - engines: { node: ">= 8" } + resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} + engines: {node: '>= 8'} date-fns@2.30.0: - resolution: - { integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw== } - engines: { node: ">=0.11" } + resolution: {integrity: sha512-fnULvOpxnC5/Vg3NCiWelDsLiUc9bRwAPs/+LfTLNvetFCtCTN+yQz15C/fs4AwX1R9K5GLtLfn8QW+dWisaAw==} + engines: {node: '>=0.11'} debug@4.3.4: - resolution: - { integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== } - engines: { node: ">=6.0" } + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} peerDependencies: - supports-color: "*" + supports-color: '*' peerDependenciesMeta: supports-color: optional: true debug@4.4.1: - resolution: - { integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== } - engines: { node: ">=6.0" } + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} peerDependencies: - supports-color: "*" + supports-color: '*' peerDependenciesMeta: supports-color: optional: true diff@4.0.2: - resolution: - { integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== } - engines: { node: ">=0.3.1" } + resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} + engines: {node: '>=0.3.1'} dot-case@3.0.4: - resolution: - { integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== } + resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} ds-test@https://codeload.github.com/dapphub/ds-test/tar.gz/e282159d5170298eb2455a6c05280ab5a73a4ef0: - resolution: { tarball: https://codeload.github.com/dapphub/ds-test/tar.gz/e282159d5170298eb2455a6c05280ab5a73a4ef0 } + resolution: {tarball: https://codeload.github.com/dapphub/ds-test/tar.gz/e282159d5170298eb2455a6c05280ab5a73a4ef0} version: 1.0.0 eastasianwidth@0.2.0: - resolution: - { integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== } + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} emoji-regex@10.4.0: - resolution: - { integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw== } + resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} emoji-regex@8.0.0: - resolution: - { integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== } + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} emoji-regex@9.2.2: - resolution: - { integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== } + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} environment@1.1.0: - resolution: - { integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q== } - engines: { node: ">=18" } + resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} + engines: {node: '>=18'} error-ex@1.3.2: - resolution: - { integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== } + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} esm-env@1.2.2: - resolution: - { integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA== } + resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} esrap@2.1.0: - resolution: - { integrity: sha512-yzmPNpl7TBbMRC5Lj2JlJZNPml0tzqoqP5B1JXycNUwtqma9AKCO0M2wHrdgsHcy1WRW7S9rJknAMtByg3usgA== } + resolution: {integrity: sha512-yzmPNpl7TBbMRC5Lj2JlJZNPml0tzqoqP5B1JXycNUwtqma9AKCO0M2wHrdgsHcy1WRW7S9rJknAMtByg3usgA==} eventemitter3@5.0.1: - resolution: - { integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== } + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} execa@7.2.0: - resolution: - { integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA== } - engines: { node: ^14.18.0 || ^16.14.0 || >=18.0.0 } + resolution: {integrity: sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==} + engines: {node: ^14.18.0 || ^16.14.0 || >=18.0.0} fast-deep-equal@3.1.3: - resolution: - { integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== } + resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} fast-diff@1.3.0: - resolution: - { integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== } + resolution: {integrity: sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==} fast-json-stable-stringify@2.1.0: - resolution: - { integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== } + resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} fast-uri@3.0.6: - resolution: - { integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw== } + resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} fill-range@7.1.1: - resolution: - { integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== } - engines: { node: ">=8" } + resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} + engines: {node: '>=8'} follow-redirects@1.15.9: - resolution: - { integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ== } - engines: { node: ">=4.0" } + resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + engines: {node: '>=4.0'} peerDependencies: - debug: "*" + debug: '*' peerDependenciesMeta: debug: optional: true forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/60acb7aaadcce2d68e52986a0a66fe79f07d138f: - resolution: - { tarball: https://codeload.github.com/foundry-rs/forge-std/tar.gz/60acb7aaadcce2d68e52986a0a66fe79f07d138f } + resolution: {tarball: https://codeload.github.com/foundry-rs/forge-std/tar.gz/60acb7aaadcce2d68e52986a0a66fe79f07d138f} version: 1.9.7 frax-standard-solidity@https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d: - resolution: - { - tarball: https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d, - } + resolution: {tarball: https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d} version: 1.1.0 fs-extra@11.3.0: - resolution: - { integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew== } - engines: { node: ">=14.14" } + resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==} + engines: {node: '>=14.14'} fs.realpath@1.0.0: - resolution: - { integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== } + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} get-east-asian-width@1.3.0: - resolution: - { integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ== } - engines: { node: ">=18" } + resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} + engines: {node: '>=18'} get-stream@6.0.1: - resolution: - { integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== } - engines: { node: ">=10" } + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} glob@8.1.0: - resolution: - { integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} deprecated: Glob versions prior to v9 are no longer supported graceful-fs@4.2.11: - resolution: - { integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== } + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} has-flag@4.0.0: - resolution: - { integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== } - engines: { node: ">=8" } + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} header-case@2.0.4: - resolution: - { integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q== } + resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==} human-signals@4.3.1: - resolution: - { integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ== } - engines: { node: ">=14.18.0" } + resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} + engines: {node: '>=14.18.0'} husky@8.0.3: - resolution: - { integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg== } - engines: { node: ">=14" } + resolution: {integrity: sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==} + engines: {node: '>=14'} hasBin: true ignore@5.3.2: - resolution: - { integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g== } - engines: { node: ">= 4" } + resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} + engines: {node: '>= 4'} import-fresh@3.3.1: - resolution: - { integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ== } - engines: { node: ">=6" } + resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} + engines: {node: '>=6'} inflight@1.0.6: - resolution: - { integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== } + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} deprecated: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful. inherits@2.0.4: - resolution: - { integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== } + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} is-arrayish@0.2.1: - resolution: - { integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== } + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} is-fullwidth-code-point@3.0.0: - resolution: - { integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== } - engines: { node: ">=8" } + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} is-fullwidth-code-point@4.0.0: - resolution: - { integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} + engines: {node: '>=12'} is-fullwidth-code-point@5.0.0: - resolution: - { integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA== } - engines: { node: ">=18" } + resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} + engines: {node: '>=18'} is-number@7.0.0: - resolution: - { integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== } - engines: { node: ">=0.12.0" } + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} is-reference@3.0.3: - resolution: - { integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw== } + resolution: {integrity: sha512-ixkJoqQvAP88E6wLydLGGqCJsrFUnqoH6HnaczB8XmDH1oaWU+xxdptvikTgaEhtZ53Ky6YXiBuUI2WXLMCwjw==} is-stream@3.0.0: - resolution: - { integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA== } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} isexe@2.0.0: - resolution: - { integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== } + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + isows@1.0.7: + resolution: {integrity: sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==} + peerDependencies: + ws: '*' js-sha3@0.8.0: - resolution: - { integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== } + resolution: {integrity: sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==} js-tokens@4.0.0: - resolution: - { integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== } + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} js-yaml@4.1.0: - resolution: - { integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== } + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true json-parse-even-better-errors@2.3.1: - resolution: - { integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== } + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} json-schema-traverse@0.4.1: - resolution: - { integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== } + resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} json-schema-traverse@1.0.0: - resolution: - { integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== } + resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} jsonfile@6.1.0: - resolution: - { integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== } + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} lilconfig@2.1.0: - resolution: - { integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ== } - engines: { node: ">=10" } + resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} + engines: {node: '>=10'} lilconfig@3.1.3: - resolution: - { integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw== } - engines: { node: ">=14" } + resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} + engines: {node: '>=14'} lines-and-columns@1.2.4: - resolution: - { integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== } + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} lint-staged@13.3.0: - resolution: - { integrity: sha512-mPRtrYnipYYv1FEE134ufbWpeggNTo+O/UPzngoaKzbzHAthvR55am+8GfHTnqNRQVRRrYQLGW9ZyUoD7DsBHQ== } - engines: { node: ^16.14.0 || >=18.0.0 } + resolution: {integrity: sha512-mPRtrYnipYYv1FEE134ufbWpeggNTo+O/UPzngoaKzbzHAthvR55am+8GfHTnqNRQVRRrYQLGW9ZyUoD7DsBHQ==} + engines: {node: ^16.14.0 || >=18.0.0} hasBin: true lint-staged@16.1.2: - resolution: - { integrity: sha512-sQKw2Si2g9KUZNY3XNvRuDq4UJqpHwF0/FQzZR2M7I5MvtpWvibikCjUVJzZdGE0ByurEl3KQNvsGetd1ty1/Q== } - engines: { node: ">=20.17" } + resolution: {integrity: sha512-sQKw2Si2g9KUZNY3XNvRuDq4UJqpHwF0/FQzZR2M7I5MvtpWvibikCjUVJzZdGE0ByurEl3KQNvsGetd1ty1/Q==} + engines: {node: '>=20.17'} hasBin: true listr2@6.6.1: - resolution: - { integrity: sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg== } - engines: { node: ">=16.0.0" } + resolution: {integrity: sha512-+rAXGHh0fkEWdXBmX+L6mmfmXmXvDGEKzkjxO+8mP3+nI/r/CWznVBvsibXdxda9Zz0OW2e2ikphN3OwCT/jSg==} + engines: {node: '>=16.0.0'} peerDependencies: - enquirer: ">= 2.3.0 < 3" + enquirer: '>= 2.3.0 < 3' peerDependenciesMeta: enquirer: optional: true listr2@8.3.3: - resolution: - { integrity: sha512-LWzX2KsqcB1wqQ4AHgYb4RsDXauQiqhjLk+6hjbaeHG4zpjjVAB6wC/gz6X0l+Du1cN3pUB5ZlrvTbhGSNnUQQ== } - engines: { node: ">=18.0.0" } + resolution: {integrity: sha512-LWzX2KsqcB1wqQ4AHgYb4RsDXauQiqhjLk+6hjbaeHG4zpjjVAB6wC/gz6X0l+Du1cN3pUB5ZlrvTbhGSNnUQQ==} + engines: {node: '>=18.0.0'} locate-character@3.0.0: - resolution: - { integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA== } + resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} lodash.truncate@4.4.2: - resolution: - { integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw== } + resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} lodash@4.17.21: - resolution: - { integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== } + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} log-update@5.0.1: - resolution: - { integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw== } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} log-update@6.1.0: - resolution: - { integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w== } - engines: { node: ">=18" } + resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} + engines: {node: '>=18'} lower-case@2.0.2: - resolution: - { integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== } + resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} magic-string@0.30.17: - resolution: - { integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA== } + resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} make-error@1.3.6: - resolution: - { integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== } + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} memorystream@0.3.1: - resolution: - { integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw== } - engines: { node: ">= 0.10.0" } + resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} + engines: {node: '>= 0.10.0'} merge-stream@2.0.0: - resolution: - { integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== } + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} micromatch@4.0.5: - resolution: - { integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== } - engines: { node: ">=8.6" } + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + engines: {node: '>=8.6'} micromatch@4.0.8: - resolution: - { integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== } - engines: { node: ">=8.6" } + resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} + engines: {node: '>=8.6'} mimic-fn@2.1.0: - resolution: - { integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== } - engines: { node: ">=6" } + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} mimic-fn@4.0.0: - resolution: - { integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw== } - engines: { node: ">=12" } + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} mimic-function@5.0.1: - resolution: - { integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA== } - engines: { node: ">=18" } + resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} + engines: {node: '>=18'} minimatch@5.1.6: - resolution: - { integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== } - engines: { node: ">=10" } + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} ms@2.1.2: - resolution: - { integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== } + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} ms@2.1.3: - resolution: - { integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== } + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} nano-spawn@1.0.2: - resolution: - { integrity: sha512-21t+ozMQDAL/UGgQVBbZ/xXvNO10++ZPuTmKRO8k9V3AClVRht49ahtDjfY8l1q6nSHOrE5ASfthzH3ol6R/hg== } - engines: { node: ">=20.17" } + resolution: {integrity: sha512-21t+ozMQDAL/UGgQVBbZ/xXvNO10++ZPuTmKRO8k9V3AClVRht49ahtDjfY8l1q6nSHOrE5ASfthzH3ol6R/hg==} + engines: {node: '>=20.17'} no-case@3.0.4: - resolution: - { integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== } + resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} npm-run-path@5.3.0: - resolution: - { integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ== } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} once@1.4.0: - resolution: - { integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== } + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} onetime@5.1.2: - resolution: - { integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== } - engines: { node: ">=6" } + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} onetime@6.0.0: - resolution: - { integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} onetime@7.0.0: - resolution: - { integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ== } - engines: { node: ">=18" } + resolution: {integrity: sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==} + engines: {node: '>=18'} os-tmpdir@1.0.2: - resolution: - { integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g== } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} + engines: {node: '>=0.10.0'} + + ox@0.9.6: + resolution: {integrity: sha512-8SuCbHPvv2eZLYXrNmC0EC12rdzXQLdhnOMlHDW2wiCPLxBrOOJwX5L5E61by+UjTPOryqQiRSnjIKCI+GykKg==} + peerDependencies: + typescript: '>=5.4.0' + peerDependenciesMeta: + typescript: + optional: true param-case@3.0.4: - resolution: - { integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== } + resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==} parent-module@1.0.1: - resolution: - { integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== } - engines: { node: ">=6" } + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} parse-json@5.2.0: - resolution: - { integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== } - engines: { node: ">=8" } + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} pascal-case@3.1.2: - resolution: - { integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== } + resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==} path-case@3.0.4: - resolution: - { integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg== } + resolution: {integrity: sha512-qO4qCFjXqVTrcbPt/hQfhTQ+VhFsqNKOPtytgNKkKxSoEp3XPUQ8ObFuePylOIok5gjn69ry8XiULxCwot3Wfg==} path-key@3.1.1: - resolution: - { integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== } - engines: { node: ">=8" } + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} path-key@4.0.0: - resolution: - { integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} path-type@4.0.0: - resolution: - { integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== } - engines: { node: ">=8" } + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} picocolors@1.1.1: - resolution: - { integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== } + resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==} picomatch@2.3.1: - resolution: - { integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== } - engines: { node: ">=8.6" } + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} pidtree@0.6.0: - resolution: - { integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g== } - engines: { node: ">=0.10" } + resolution: {integrity: sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==} + engines: {node: '>=0.10'} hasBin: true pluralize@8.0.0: - resolution: - { integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA== } - engines: { node: ">=4" } + resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} + engines: {node: '>=4'} prettier-linter-helpers@1.0.0: - resolution: - { integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== } - engines: { node: ">=6.0.0" } + resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + engines: {node: '>=6.0.0'} prettier-plugin-solidity@1.4.3: - resolution: - { integrity: sha512-Mrr/iiR9f9IaeGRMZY2ApumXcn/C5Gs3S7B7hWB3gigBFML06C0yEyW86oLp0eqiA0qg+46FaChgLPJCj/pIlg== } - engines: { node: ">=18" } + resolution: {integrity: sha512-Mrr/iiR9f9IaeGRMZY2ApumXcn/C5Gs3S7B7hWB3gigBFML06C0yEyW86oLp0eqiA0qg+46FaChgLPJCj/pIlg==} + engines: {node: '>=18'} peerDependencies: - prettier: ">=2.3.0" + prettier: '>=2.3.0' prettier-plugin-svelte@3.4.0: - resolution: - { integrity: sha512-pn1ra/0mPObzqoIQn/vUTR3ZZI6UuZ0sHqMK5x2jMLGrs53h0sXhkVuDcrlssHwIMk7FYrMjHBPoUSyyEEDlBQ== } + resolution: {integrity: sha512-pn1ra/0mPObzqoIQn/vUTR3ZZI6UuZ0sHqMK5x2jMLGrs53h0sXhkVuDcrlssHwIMk7FYrMjHBPoUSyyEEDlBQ==} peerDependencies: prettier: ^3.0.0 svelte: ^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0 prettier@2.8.8: - resolution: - { integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q== } - engines: { node: ">=10.13.0" } + resolution: {integrity: sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==} + engines: {node: '>=10.13.0'} hasBin: true prettier@3.6.2: - resolution: - { integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ== } - engines: { node: ">=14" } + resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==} + engines: {node: '>=14'} hasBin: true punycode@2.3.1: - resolution: - { integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== } - engines: { node: ">=6" } + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} require-from-string@2.0.2: - resolution: - { integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} + engines: {node: '>=0.10.0'} resolve-from@4.0.0: - resolution: - { integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== } - engines: { node: ">=4" } + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} restore-cursor@4.0.0: - resolution: - { integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg== } - engines: { node: ^12.20.0 || ^14.13.1 || >=16.0.0 } + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} restore-cursor@5.1.0: - resolution: - { integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA== } - engines: { node: ">=18" } + resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} + engines: {node: '>=18'} rfdc@1.4.1: - resolution: - { integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA== } + resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} semver@5.7.2: - resolution: - { integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== } + resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true semver@7.7.2: - resolution: - { integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== } - engines: { node: ">=10" } + resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + engines: {node: '>=10'} hasBin: true sentence-case@3.0.4: - resolution: - { integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg== } + resolution: {integrity: sha512-8LS0JInaQMCRoQ7YUytAo/xUu5W2XnQxV2HI/6uM6U7CITS1RqPElr30V6uIqyMKM9lJGRVFy5/4CuzcixNYSg==} shebang-command@2.0.0: - resolution: - { integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== } - engines: { node: ">=8" } + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} shebang-regex@3.0.0: - resolution: - { integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== } - engines: { node: ">=8" } + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} signal-exit@3.0.7: - resolution: - { integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== } + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} signal-exit@4.1.0: - resolution: - { integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== } - engines: { node: ">=14" } + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} slice-ansi@4.0.0: - resolution: - { integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== } - engines: { node: ">=10" } + resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} + engines: {node: '>=10'} slice-ansi@5.0.0: - resolution: - { integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} + engines: {node: '>=12'} slice-ansi@7.1.0: - resolution: - { integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg== } - engines: { node: ">=18" } + resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} + engines: {node: '>=18'} snake-case@3.0.4: - resolution: - { integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg== } + resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} solc@0.8.30: - resolution: - { integrity: sha512-9Srk/gndtBmoUbg4CE6ypAzPQlElv8ntbnl6SigUBAzgXKn35v87sj04uZeoZWjtDkdzT0qKFcIo/wl63UMxdw== } - engines: { node: ">=12.0.0" } + resolution: {integrity: sha512-9Srk/gndtBmoUbg4CE6ypAzPQlElv8ntbnl6SigUBAzgXKn35v87sj04uZeoZWjtDkdzT0qKFcIo/wl63UMxdw==} + engines: {node: '>=12.0.0'} hasBin: true solhint-plugin-prettier@0.1.0: - resolution: - { integrity: sha512-SDOTSM6tZxZ6hamrzl3GUgzF77FM6jZplgL2plFBclj/OjKP8Z3eIPojKU73gRr0MvOS8ACZILn8a5g0VTz/Gw== } + resolution: {integrity: sha512-SDOTSM6tZxZ6hamrzl3GUgzF77FM6jZplgL2plFBclj/OjKP8Z3eIPojKU73gRr0MvOS8ACZILn8a5g0VTz/Gw==} peerDependencies: prettier: ^3.0.0 prettier-plugin-solidity: ^1.0.0 solhint@3.6.2: - resolution: - { integrity: sha512-85EeLbmkcPwD+3JR7aEMKsVC9YrRSxd4qkXuMzrlf7+z2Eqdfm1wHWq1ffTuo5aDhoZxp2I9yF3QkxZOxOL7aQ== } + resolution: {integrity: sha512-85EeLbmkcPwD+3JR7aEMKsVC9YrRSxd4qkXuMzrlf7+z2Eqdfm1wHWq1ffTuo5aDhoZxp2I9yF3QkxZOxOL7aQ==} hasBin: true solidity-bytes-utils@0.8.4: - resolution: - { integrity: sha512-/bjac5YR12i0plOKvGlhE51F5IWGP6rI8DJetCQlXcnwKWz/Hgf/vr+Qlk1BWz56xVcwVhmhCaDkTMnx5xvt0g== } + resolution: {integrity: sha512-/bjac5YR12i0plOKvGlhE51F5IWGP6rI8DJetCQlXcnwKWz/Hgf/vr+Qlk1BWz56xVcwVhmhCaDkTMnx5xvt0g==} solidity-bytes-utils@https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9: - resolution: - { - tarball: https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9, - } + resolution: {tarball: https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9} version: 0.8.4 string-argv@0.3.2: - resolution: - { integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== } - engines: { node: ">=0.6.19" } + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} + engines: {node: '>=0.6.19'} string-width@4.2.3: - resolution: - { integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== } - engines: { node: ">=8" } + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} string-width@5.1.2: - resolution: - { integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== } - engines: { node: ">=12" } + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} string-width@7.2.0: - resolution: - { integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ== } - engines: { node: ">=18" } + resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} + engines: {node: '>=18'} strip-ansi@6.0.1: - resolution: - { integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== } - engines: { node: ">=8" } + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} strip-ansi@7.1.0: - resolution: - { integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} strip-final-newline@3.0.0: - resolution: - { integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw== } - engines: { node: ">=12" } + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} supports-color@7.2.0: - resolution: - { integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== } - engines: { node: ">=8" } + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} svelte@5.36.16: - resolution: - { integrity: sha512-C7HnyISfvZEofs7T4p7+bmjrbQlhd6lZfgV2tLYg6Eb3nUFM/Zu9dGlSg+GWbUBU/WPw6zDPOFNZAx9qXsoCkg== } - engines: { node: ">=18" } + resolution: {integrity: sha512-C7HnyISfvZEofs7T4p7+bmjrbQlhd6lZfgV2tLYg6Eb3nUFM/Zu9dGlSg+GWbUBU/WPw6zDPOFNZAx9qXsoCkg==} + engines: {node: '>=18'} table@6.9.0: - resolution: - { integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A== } - engines: { node: ">=10.0.0" } + resolution: {integrity: sha512-9kY+CygyYM6j02t5YFHbNz2FN5QmYGv9zAjVp4lCDjlCw7amdckXlEt/bjMhUIfj4ThGRE4gCUH5+yGnNuPo5A==} + engines: {node: '>=10.0.0'} text-table@0.2.0: - resolution: - { integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== } + resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} tmp@0.0.33: - resolution: - { integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== } - engines: { node: ">=0.6.0" } + resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} + engines: {node: '>=0.6.0'} to-regex-range@5.0.1: - resolution: - { integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== } - engines: { node: ">=8.0" } + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} toml@3.0.0: - resolution: - { integrity: sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== } + resolution: {integrity: sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==} ts-node@10.9.2: - resolution: - { integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== } + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true peerDependencies: - "@swc/core": ">=1.2.50" - "@swc/wasm": ">=1.2.50" - "@types/node": "*" - typescript: ">=2.7" + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' peerDependenciesMeta: - "@swc/core": + '@swc/core': optional: true - "@swc/wasm": + '@swc/wasm': optional: true tslib@2.8.1: - resolution: - { integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== } + resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} type-fest@1.4.0: - resolution: - { integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA== } - engines: { node: ">=10" } + resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} + engines: {node: '>=10'} typescript@5.8.3: - resolution: - { integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ== } - engines: { node: ">=14.17" } + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + engines: {node: '>=14.17'} hasBin: true undici-types@5.26.5: - resolution: - { integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA== } + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} universalify@2.0.1: - resolution: - { integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw== } - engines: { node: ">= 10.0.0" } + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} upper-case-first@2.0.2: - resolution: - { integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg== } + resolution: {integrity: sha512-514ppYHBaKwfJRK/pNC6c/OxfGa0obSnAl106u97Ed0I625Nin96KAjttZF6ZL3e1XLtphxnqrOi9iWgm+u+bg==} upper-case@2.0.2: - resolution: - { integrity: sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg== } + resolution: {integrity: sha512-KgdgDGJt2TpuwBUIjgG6lzw2GWFRCW9Qkfkiv0DxqHHLYJHmtmdUIKcZd8rHgFSjopVTlw6ggzCm1b8MFQwikg==} uri-js@4.4.1: - resolution: - { integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== } + resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} v8-compile-cache-lib@3.0.1: - resolution: - { integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg== } + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + + viem@2.37.8: + resolution: {integrity: sha512-mL+5yvCQbRIR6QvngDQMfEiZTfNWfd+/QL5yFaOoYbpH3b1Q2ddwF7YG2eI2AcYSh9LE1gtUkbzZLFUAVyj4oQ==} + peerDependencies: + typescript: '>=5.0.4' + peerDependenciesMeta: + typescript: + optional: true which@2.0.2: - resolution: - { integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== } - engines: { node: ">= 8" } + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} hasBin: true wrap-ansi@8.1.0: - resolution: - { integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} wrap-ansi@9.0.0: - resolution: - { integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q== } - engines: { node: ">=18" } + resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} + engines: {node: '>=18'} wrappy@1.0.2: - resolution: - { integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== } + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true yaml@2.3.1: - resolution: - { integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ== } - engines: { node: ">= 14" } + resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} + engines: {node: '>= 14'} yaml@2.8.0: - resolution: - { integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ== } - engines: { node: ">= 14.6" } + resolution: {integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==} + engines: {node: '>= 14.6'} hasBin: true yn@3.1.1: - resolution: - { integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q== } - engines: { node: ">=6" } + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} zimmerframe@1.1.2: - resolution: - { integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w== } + resolution: {integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==} snapshots: - "@ampproject/remapping@2.3.0": + + '@adraffy/ens-normalize@1.11.1': {} + + '@ampproject/remapping@2.3.0': dependencies: - "@jridgewell/gen-mapping": 0.3.12 - "@jridgewell/trace-mapping": 0.3.29 + '@jridgewell/gen-mapping': 0.3.12 + '@jridgewell/trace-mapping': 0.3.29 - "@babel/code-frame@7.27.1": + '@babel/code-frame@7.27.1': dependencies: - "@babel/helper-validator-identifier": 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 js-tokens: 4.0.0 picocolors: 1.1.1 - "@babel/helper-validator-identifier@7.27.1": {} + '@babel/helper-validator-identifier@7.27.1': {} - "@babel/runtime@7.28.2": {} + '@babel/runtime@7.28.2': {} - "@cspotcode/source-map-support@0.8.1": + '@cspotcode/source-map-support@0.8.1': dependencies: - "@jridgewell/trace-mapping": 0.3.9 + '@jridgewell/trace-mapping': 0.3.9 - "@jridgewell/gen-mapping@0.3.12": + '@jridgewell/gen-mapping@0.3.12': dependencies: - "@jridgewell/sourcemap-codec": 1.5.4 - "@jridgewell/trace-mapping": 0.3.29 + '@jridgewell/sourcemap-codec': 1.5.4 + '@jridgewell/trace-mapping': 0.3.29 - "@jridgewell/resolve-uri@3.1.2": {} + '@jridgewell/resolve-uri@3.1.2': {} - "@jridgewell/sourcemap-codec@1.5.4": {} + '@jridgewell/sourcemap-codec@1.5.4': {} - "@jridgewell/trace-mapping@0.3.29": + '@jridgewell/trace-mapping@0.3.29': dependencies: - "@jridgewell/resolve-uri": 3.1.2 - "@jridgewell/sourcemap-codec": 1.5.4 + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.4 - "@jridgewell/trace-mapping@0.3.9": + '@jridgewell/trace-mapping@0.3.9': dependencies: - "@jridgewell/resolve-uri": 3.1.2 - "@jridgewell/sourcemap-codec": 1.5.4 + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.4 - "@openzeppelin/contracts@5.4.0": {} + '@noble/ciphers@1.3.0': {} - "@prettier/sync@0.3.0(prettier@3.6.2)": + '@noble/curves@1.9.1': + dependencies: + '@noble/hashes': 1.8.0 + + '@noble/hashes@1.8.0': {} + + '@openzeppelin/contracts@5.4.0': {} + + '@prettier/sync@0.3.0(prettier@3.6.2)': dependencies: prettier: 3.6.2 - "@solidity-parser/parser@0.16.2": + '@scure/base@1.2.6': {} + + '@scure/bip32@1.7.0': + dependencies: + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + + '@scure/bip39@1.6.0': + dependencies: + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + + '@solidity-parser/parser@0.16.2': dependencies: antlr4ts: 0.5.0-alpha.4 - "@solidity-parser/parser@0.20.2": {} + '@solidity-parser/parser@0.20.2': {} - "@sveltejs/acorn-typescript@1.0.5(acorn@8.15.0)": + '@sveltejs/acorn-typescript@1.0.5(acorn@8.15.0)': dependencies: acorn: 8.15.0 - "@tsconfig/node10@1.0.11": {} + '@tsconfig/node10@1.0.11': {} - "@tsconfig/node12@1.0.11": {} + '@tsconfig/node12@1.0.11': {} - "@tsconfig/node14@1.0.3": {} + '@tsconfig/node14@1.0.3': {} - "@tsconfig/node16@1.0.4": {} + '@tsconfig/node16@1.0.4': {} - "@types/estree@1.0.8": {} + '@types/estree@1.0.8': {} - "@types/fs-extra@11.0.4": + '@types/fs-extra@11.0.4': dependencies: - "@types/jsonfile": 6.1.4 - "@types/node": 18.19.120 + '@types/jsonfile': 6.1.4 + '@types/node': 18.19.120 - "@types/jsonfile@6.1.4": + '@types/jsonfile@6.1.4': dependencies: - "@types/node": 18.19.120 + '@types/node': 18.19.120 - "@types/node@18.19.120": + '@types/node@18.19.120': dependencies: undici-types: 5.26.5 + abitype@1.1.0(typescript@5.8.3): + optionalDependencies: + typescript: 5.8.3 + acorn-walk@8.3.4: dependencies: acorn: 8.15.0 @@ -1390,7 +1263,7 @@ snapshots: date-fns@2.30.0: dependencies: - "@babel/runtime": 7.28.2 + '@babel/runtime': 7.28.2 debug@4.3.4: dependencies: @@ -1427,7 +1300,7 @@ snapshots: esrap@2.1.0: dependencies: - "@jridgewell/sourcemap-codec": 1.5.4 + '@jridgewell/sourcemap-codec': 1.5.4 eventemitter3@5.0.1: {} @@ -1461,9 +1334,9 @@ snapshots: frax-standard-solidity@https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d: dependencies: - "@openzeppelin/contracts": 5.4.0 - "@types/fs-extra": 11.0.4 - "@types/node": 18.19.120 + '@openzeppelin/contracts': 5.4.0 + '@types/fs-extra': 11.0.4 + '@types/node': 18.19.120 change-case: 4.1.2 commander: 10.0.1 date-fns: 2.30.0 @@ -1482,8 +1355,8 @@ snapshots: ts-node: 10.9.2(@types/node@18.19.120)(typescript@5.8.3) typescript: 5.8.3 transitivePeerDependencies: - - "@swc/core" - - "@swc/wasm" + - '@swc/core' + - '@swc/wasm' - debug - supports-color @@ -1548,12 +1421,16 @@ snapshots: is-reference@3.0.3: dependencies: - "@types/estree": 1.0.8 + '@types/estree': 1.0.8 is-stream@3.0.0: {} isexe@2.0.0: {} + isows@1.0.7(ws@8.18.3): + dependencies: + ws: 8.18.3 + js-sha3@0.8.0: {} js-tokens@4.0.0: {} @@ -1657,7 +1534,7 @@ snapshots: magic-string@0.30.17: dependencies: - "@jridgewell/sourcemap-codec": 1.5.4 + '@jridgewell/sourcemap-codec': 1.5.4 make-error@1.3.6: {} @@ -1718,6 +1595,21 @@ snapshots: os-tmpdir@1.0.2: {} + ox@0.9.6(typescript@5.8.3): + dependencies: + '@adraffy/ens-normalize': 1.11.1 + '@noble/ciphers': 1.3.0 + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.1.0(typescript@5.8.3) + eventemitter3: 5.0.1 + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - zod + param-case@3.0.4: dependencies: dot-case: 3.0.4 @@ -1729,7 +1621,7 @@ snapshots: parse-json@5.2.0: dependencies: - "@babel/code-frame": 7.27.1 + '@babel/code-frame': 7.27.1 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -1764,7 +1656,7 @@ snapshots: prettier-plugin-solidity@1.4.3(prettier@3.6.2): dependencies: - "@solidity-parser/parser": 0.20.2 + '@solidity-parser/parser': 0.20.2 prettier: 3.6.2 semver: 7.7.2 @@ -1851,14 +1743,14 @@ snapshots: solhint-plugin-prettier@0.1.0(prettier-plugin-solidity@1.4.3(prettier@3.6.2))(prettier@3.6.2): dependencies: - "@prettier/sync": 0.3.0(prettier@3.6.2) + '@prettier/sync': 0.3.0(prettier@3.6.2) prettier: 3.6.2 prettier-linter-helpers: 1.0.0 prettier-plugin-solidity: 1.4.3(prettier@3.6.2) solhint@3.6.2(typescript@5.8.3): dependencies: - "@solidity-parser/parser": 0.16.2 + '@solidity-parser/parser': 0.16.2 ajv: 6.12.6 antlr4: 4.13.2 ast-parents: 0.0.1 @@ -1882,8 +1774,7 @@ snapshots: solidity-bytes-utils@0.8.4: {} - solidity-bytes-utils@https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9: - {} + solidity-bytes-utils@https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9: {} string-argv@0.3.2: {} @@ -1921,10 +1812,10 @@ snapshots: svelte@5.36.16: dependencies: - "@ampproject/remapping": 2.3.0 - "@jridgewell/sourcemap-codec": 1.5.4 - "@sveltejs/acorn-typescript": 1.0.5(acorn@8.15.0) - "@types/estree": 1.0.8 + '@ampproject/remapping': 2.3.0 + '@jridgewell/sourcemap-codec': 1.5.4 + '@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0) + '@types/estree': 1.0.8 acorn: 8.15.0 aria-query: 5.3.2 axobject-query: 4.1.0 @@ -1958,12 +1849,12 @@ snapshots: ts-node@10.9.2(@types/node@18.19.120)(typescript@5.8.3): dependencies: - "@cspotcode/source-map-support": 0.8.1 - "@tsconfig/node10": 1.0.11 - "@tsconfig/node12": 1.0.11 - "@tsconfig/node14": 1.0.3 - "@tsconfig/node16": 1.0.4 - "@types/node": 18.19.120 + '@cspotcode/source-map-support': 0.8.1 + '@tsconfig/node10': 1.0.11 + '@tsconfig/node12': 1.0.11 + '@tsconfig/node14': 1.0.3 + '@tsconfig/node16': 1.0.4 + '@types/node': 18.19.120 acorn: 8.15.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -1998,6 +1889,23 @@ snapshots: v8-compile-cache-lib@3.0.1: {} + viem@2.37.8(typescript@5.8.3): + dependencies: + '@noble/curves': 1.9.1 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.1.0(typescript@5.8.3) + isows: 1.0.7(ws@8.18.3) + ox: 0.9.6(typescript@5.8.3) + ws: 8.18.3 + optionalDependencies: + typescript: 5.8.3 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + - zod + which@2.0.2: dependencies: isexe: 2.0.0 @@ -2016,6 +1924,8 @@ snapshots: wrappy@1.0.2: {} + ws@8.18.3: {} + yaml@2.3.1: {} yaml@2.8.0: {} diff --git a/scripts/constants/TEMPLATE.ts b/scripts/constants/TEMPLATE.ts index f9570ee..07a0427 100644 --- a/scripts/constants/TEMPLATE.ts +++ b/scripts/constants/TEMPLATE.ts @@ -15,3 +15,7 @@ // Multisigs // PoolRelatedTokens + +// LayerZero + +// FraxtalLZHop \ No newline at end of file diff --git a/scripts/constants/ethereum.ts b/scripts/constants/ethereum.ts deleted file mode 100644 index d85b055..0000000 --- a/scripts/constants/ethereum.ts +++ /dev/null @@ -1,20 +0,0 @@ -// Canonicals -export const FPI = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; -export const FRXETH = "0x5E8422345238F34275888049021821E8E08CAa1f"; -export const FRXUSD = "0xCAcd6fd266aF91b8AeD52aCCc382b4e165586E29"; -export const SFRXETH = "0xac3E018457B222d93114458476f3E3416Abbe38F"; -export const SFRXUSD = "0xcf62F905562626CfcDD2261162a51fd02Fc9c5b6"; -export const FRAX = "0x853d955aCEf822Db058eb8505911ED77F175b99e"; -export const FXS = "0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0"; - -// LayerZero -export const FPIOFT = "0x9033BAD7aA130a2466060A2dA71fAe2219781B4b"; -export const FRXETHOFT = "0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6"; -export const FRXUSDOFT = "0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0"; -export const SFRXETHOFT = "0xbBc424e58ED38dd911309611ae2d7A23014Bd960"; -export const SFRXUSDOFT = "0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126"; -export const WFRAXOFT = "0x04ACaF8D2865c0714F79da09645C13FD2888977f"; - -// FraxtalLZHop -export const REMOTEHOP = "0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E"; -export const REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; \ No newline at end of file diff --git a/scripts/constants/index.ts b/scripts/constants/index.ts index a500d51..5c85db3 100644 --- a/scripts/constants/index.ts +++ b/scripts/constants/index.ts @@ -7,7 +7,6 @@ export * as Base from "./base"; export * as Bera from "./bera"; export * as Blast from "./blast"; export * as BSC from "./bsc"; -export * as Ethereum from "./ethereum"; export * as Fantom from "./fantom"; export * as FraxtalL1Devnet from "./fraxtal-devnet-l1"; export * as FraxtalL2Devnet from "./fraxtal-devnet-l2"; diff --git a/scripts/constants/mainnet.ts b/scripts/constants/mainnet.ts index 2bb2e38..a38094a 100644 --- a/scripts/constants/mainnet.ts +++ b/scripts/constants/mainnet.ts @@ -1032,3 +1032,15 @@ export const KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = "0x8Fd8Cb948965d9305999D767 export const NON_FUNGIBLE_POSITION_MANAGER = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88"; export const SWAPROUTER = "0xE592427A0AEce92De3Edee1F18E0157C05861564"; export const UNISWAP_V3_FACTORY = "0x1F98431c8aD98523631AE4a59f267346ea31F984"; + +// LayerZero +export const FPIOFT = "0x9033BAD7aA130a2466060A2dA71fAe2219781B4b"; +export const FRXETHOFT = "0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6"; +export const FRXUSDOFT = "0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0"; +export const SFRXETHOFT = "0xbBc424e58ED38dd911309611ae2d7A23014Bd960"; +export const SFRXUSDOFT = "0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126"; +export const WFRAXOFT = "0x04ACaF8D2865c0714F79da09645C13FD2888977f"; + +// FraxtalLZHop +export const REMOTEHOP = "0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E"; +export const REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; \ No newline at end of file diff --git a/scripts/constants/solana.ts b/scripts/constants/solana.ts index e430102..1d91148 100644 --- a/scripts/constants/solana.ts +++ b/scripts/constants/solana.ts @@ -1,13 +1,13 @@ // LayerZero -export const FPIOFT = "0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0"; -export const FRXETHOFT = "0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3"; -export const FRXUSDOFT = "0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad"; -export const SFRXETHOFT = "0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61"; -export const SFRXUSDOFT = "0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf"; -export const WFRAXOFT = "0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa"; -export const FPI = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH" -export const FRXETH = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf" -export const FRXUSD = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw" -export const SFRXETH = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv" -export const SFRXUSD = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45" -export const WFRAX = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga" \ No newline at end of file +export const FPIOFT = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH" +export const FRXETHOFT = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf" +export const FRXUSDOFT = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw" +export const SFRXETHOFT = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv" +export const SFRXUSDOFT = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45" +export const WFRAXOFT = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga" +export const FPIOFT_BYTES32 = "0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0"; +export const FRXETHOFT_BYTES32 = "0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3"; +export const FRXUSDOFT_BYTES32 = "0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad"; +export const SFRXETHOFT_BYTES32 = "0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61"; +export const SFRXUSDOFT_BYTES32 = "0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf"; +export const WFRAXOFT_BYTES32 = "0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa"; \ No newline at end of file diff --git a/scripts/generateConstants.ts b/scripts/generateConstants.ts index 95adb7c..b951e05 100644 --- a/scripts/generateConstants.ts +++ b/scripts/generateConstants.ts @@ -1,5 +1,6 @@ import * as fs from "fs/promises"; import path from "path"; +import { isAddress } from "viem" import * as constants from "./constants"; @@ -9,11 +10,10 @@ const networkPrefixes = { Arbitrum: "ARBI", Aurora: "AUR", Avalanche: "AVAX", - BASE: "BASE", - BERA: "BERA", - BLAST: "BLAST", - BSC: "BSC", - Ethereum: "ETH", + Base: "BASE", + Bera: "BERA", + Blast: "BLAST", + Bsc: "BSC", Fantom: "FTM", FraxtalL1Devnet: "FXTL_L1_DN", FraxtalL2Devnet: "FXTL_L2_DN", @@ -22,11 +22,13 @@ const networkPrefixes = { FraxtalTestnetL2: "FXTL_TN_L2", Holesky: "HOLESKY", Hyperliquid: "HYPE", + Ink: "INK", Katana: "KTN", Mainnet: "ETH", Moonbeam: "MNBM", Moonriver: "MOVR", Optimism: "OPTI", + Plumephoenix: "PLUME", Polygon: "POLY", PolygonzkEVM: "POLY_ZKEVM", Scroll: "SCROLL", @@ -36,7 +38,8 @@ const networkPrefixes = { Unichain: "UNI", Worldchain: "WRLD", Linea: "LINEA", - Zksync:"ZKSYNC" + XLayer: "XLAYER", + Zksync: "ZKSYNC" }; const REMOVE_DUPLICATE_LABELS = false; @@ -48,22 +51,27 @@ async function main() { // Prepare seen/duplicate values const seenValues = []; - // Generate the files - for (let n = 0; n < networks.length; n++) { - const networkName = networks[n]; - const outputString = await handleSingleNetwork(networkName, constants[networkName], seenValues); - - const finalString = - `// SPDX-License-Identifier: ISC + const headerString = `// SPDX-License-Identifier: ISC pragma solidity >=0.8.0; // **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. import { TestBase } from "forge-std/Test.sol"; - ` + outputString; + ` + + let finalConstantsString = headerString; + + // Generate the files + for (let n = 0; n < networks.length; n++) { + const networkName = networks[n]; + const outputString = await handleSingleNetwork(networkName, constants[networkName], seenValues); + + const finalString = headerString + outputString; + finalConstantsString = finalConstantsString + outputString; await fs.writeFile(path.resolve("src/contracts/chain-constants", `${networkName}.sol`), finalString); } + await fs.writeFile(path.resolve("src/", `Constants.sol`), finalConstantsString); } async function handleSingleNetwork(networkName, constants, seenValues) { @@ -73,7 +81,12 @@ async function handleSingleNetwork(networkName, constants, seenValues) { if (typeof value === "string") { // Determine whether it is an address or a string if (value.startsWith("0x")) { - return ` address internal constant ${key} = ${value};`; + if (isAddress(value)) { return ` address internal constant ${key} = ${value};`; } + else if (value.length === 66) { + return ` bytes32 internal constant ${key} = ${value};`; + } else { + throw new Error("Unidentifed constant type") + } } return ` string internal constant ${key} = "${value}";`; } else { diff --git a/src/Constants.sol b/src/Constants.sol index d8f41bf..0d0571b 100644 --- a/src/Constants.sol +++ b/src/Constants.sol @@ -5,6 +5,68 @@ pragma solidity >=0.8.0; import { TestBase } from "forge-std/Test.sol"; + library Abstract { + address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; + address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; + address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; + address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; + address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; + address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; + address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; + address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; +} + +abstract contract AddressHelperAbstract is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.ABS_FPIOFT"); + vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.ABS_FRXETHOFT"); + vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.ABS_FRXUSDOFT"); + vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.ABS_SFRXETHOFT"); + vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.ABS_SFRXUSDOFT"); + vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.ABS_WFRAXOFT"); + vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.ABS_REMOTEHOP"); + vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.ABS_REMOTEMINTREDEEMHOP"); + } +} +library Aptos { + bytes32 internal constant FPI = 0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2; + bytes32 internal constant FRXETH = 0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585; + bytes32 internal constant FRXUSD = 0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5; + bytes32 internal constant SFRXETH = 0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a; + bytes32 internal constant SFRXUSD = 0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2; + bytes32 internal constant WFRAX = 0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300; + bytes32 internal constant FPIOFT = 0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864; + bytes32 internal constant FRXETHOFT = 0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c; + bytes32 internal constant FRXUSDOFT = 0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b; + bytes32 internal constant SFRXETHOFT = 0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356; + bytes32 internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; + bytes32 internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; +} + +abstract contract AddressHelperAptos is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2, "Constants.APT_FPI"); + vm.label(0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585, "Constants.APT_FRXETH"); + vm.label(0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5, "Constants.APT_FRXUSD"); + vm.label(0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a, "Constants.APT_SFRXETH"); + vm.label(0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2, "Constants.APT_SFRXUSD"); + vm.label(0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300, "Constants.APT_WFRAX"); + vm.label(0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864, "Constants.APT_FPIOFT"); + vm.label(0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c, "Constants.APT_FRXETHOFT"); + vm.label(0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b, "Constants.APT_FRXUSDOFT"); + vm.label(0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356, "Constants.APT_SFRXETHOFT"); + vm.label(0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9, "Constants.APT_SFRXUSDOFT"); + vm.label(0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2, "Constants.APT_WFRAXOFT"); + } +} library Arbitrum { address internal constant FRAX = 0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F; address internal constant FXS = 0x9d2F299715D94d8A7E6F5eaa8E654E8c74a988A7; @@ -52,20 +114,13 @@ library Arbitrum { address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FERRY_TO_POLYGON = 0xe57314D4405289FfC91306E4574C28b7394c4822; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = - 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = - 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = - 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = - 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = - 0x078Dd77De4e0f480D7442495d55707cE071B4B09; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = - 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = - 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = 0x078Dd77De4e0f480D7442495d55707cE071B4B09; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; address internal constant FRAXLEND_WHITELIST_ADDRESS = 0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079; address internal constant FRAXLEND_HOT_WALLET = 0xdB3388e770F49A604E11f1a2084B39279492a61f; address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d; @@ -149,6 +204,14 @@ library Arbitrum { address internal constant USDPLUSFRAXBP_POOL = 0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013; address internal constant VECHR = 0x9A01857f33aa382b1d5bb96C3180347862432B0d; address internal constant VERAM = 0xAAA343032aA79eE9a6897Dab03bef967c3289a06; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A; + address internal constant REMOTEMINTREDEEMHOP = 0xa46A266dCBf199a71532c76967e200994C5A0D6d; } abstract contract AddressHelperArbitrum is TestBase { @@ -203,34 +266,13 @@ abstract contract AddressHelperArbitrum is TestBase { vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_CREWMEMBER"); vm.label(0xe57314D4405289FfC91306E4574C28b7394c4822, "Constants.ARBI_FERRY_TO_POLYGON"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_FIRST_OFFICER"); - vm.label( - 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, - "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE" - ); - vm.label( - 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, - "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE" - ); - vm.label( - 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, - "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE" - ); - vm.label( - 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, - "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE" - ); - vm.label( - 0x078Dd77De4e0f480D7442495d55707cE071B4B09, - "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE" - ); - vm.label( - 0x1B0b9991Df27a4F2847478127d51Fb29883882f5, - "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE" - ); - vm.label( - 0xf1C16E1c01e62716884ef947063e9C7D44eC287F, - "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE" - ); + vm.label(0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE"); + vm.label(0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE"); + vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE"); + vm.label(0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE"); + vm.label(0x078Dd77De4e0f480D7442495d55707cE071B4B09, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE"); + vm.label(0x1B0b9991Df27a4F2847478127d51Fb29883882f5, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE"); + vm.label(0xf1C16E1c01e62716884ef947063e9C7D44eC287F, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE"); vm.label(0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079, "Constants.ARBI_FRAXLEND_WHITELIST_ADDRESS"); vm.label(0xdB3388e770F49A604E11f1a2084B39279492a61f, "Constants.ARBI_FRAXLEND_HOT_WALLET"); vm.label(0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d, "Constants.ARBI_FRAXLEND_PAIR_REGISTRY_ADDRESS"); @@ -314,9 +356,43 @@ abstract contract AddressHelperArbitrum is TestBase { vm.label(0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013, "Constants.ARBI_USDPLUSFRAXBP_POOL"); vm.label(0x9A01857f33aa382b1d5bb96C3180347862432B0d, "Constants.ARBI_VECHR"); vm.label(0xAAA343032aA79eE9a6897Dab03bef967c3289a06, "Constants.ARBI_VERAM"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.ARBI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.ARBI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.ARBI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.ARBI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.ARBI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.ARBI_WFRAXOFT"); + vm.label(0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A, "Constants.ARBI_REMOTEHOP"); + vm.label(0xa46A266dCBf199a71532c76967e200994C5A0D6d, "Constants.ARBI_REMOTEMINTREDEEMHOP"); } } +library Aurora { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x53e36C8380Ff62D7964BFa4868A0045E58A52344; + address internal constant REMOTEMINTREDEEMHOP = 0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2; +} + +abstract contract AddressHelperAurora is TestBase { + constructor() { + labelConstants(); + } + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AUR_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AUR_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AUR_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AUR_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AUR_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AUR_WFRAXOFT"); + vm.label(0x53e36C8380Ff62D7964BFa4868A0045E58A52344, "Constants.AUR_REMOTEHOP"); + vm.label(0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2, "Constants.AUR_REMOTEMINTREDEEMHOP"); + } +} library Avalanche { address internal constant FRAX = 0xD24C2Ad096400B6FBcd2ad8B24E7acBc21A1da64; address internal constant FXS = 0x214DB107654fF987AD859F34125307783fC8e387; @@ -331,20 +407,13 @@ library Avalanche { address internal constant TRADER_JOE_FRAX_AVAX = 0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89; address internal constant TRADER_JOE_FRAX_GOHM = 0x3E6Be71dE004363379d864006AAC37C9F55F8329; address internal constant TRADER_JOE_FXS_AVAX = 0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = - 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = - 0xC311b600bc926a3a8aC39945471427DFd9196930; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = - 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = - 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = - 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = - 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = - 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = 0xC311b600bc926a3a8aC39945471427DFd9196930; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -370,6 +439,14 @@ library Avalanche { address internal constant PANGOLIN_CANFRAX_WAVAX = 0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559; address internal constant PANGOLIN_CANFXS_USDC_E = 0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8; address internal constant TRADER_JOE_FRAX_WAVAX = 0x0d84595e8638dBc631076c51000B2d31120D8aa1; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; + address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; } abstract contract AddressHelperAvalanche is TestBase { @@ -391,34 +468,13 @@ abstract contract AddressHelperAvalanche is TestBase { vm.label(0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89, "Constants.AVAX_TRADER_JOE_FRAX_AVAX"); vm.label(0x3E6Be71dE004363379d864006AAC37C9F55F8329, "Constants.AVAX_TRADER_JOE_FRAX_GOHM"); vm.label(0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2, "Constants.AVAX_TRADER_JOE_FXS_AVAX"); - vm.label( - 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, - "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE" - ); - vm.label( - 0xC311b600bc926a3a8aC39945471427DFd9196930, - "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE" - ); - vm.label( - 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, - "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE" - ); - vm.label( - 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, - "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE" - ); - vm.label( - 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, - "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE" - ); - vm.label( - 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, - "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE" - ); - vm.label( - 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, - "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE" - ); + vm.label(0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE"); + vm.label(0xC311b600bc926a3a8aC39945471427DFd9196930, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE"); + vm.label(0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE"); + vm.label(0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE"); + vm.label(0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE"); + vm.label(0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE"); + vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CREWMEMBER"); @@ -444,9 +500,97 @@ abstract contract AddressHelperAvalanche is TestBase { vm.label(0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559, "Constants.AVAX_PANGOLIN_CANFRAX_WAVAX"); vm.label(0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8, "Constants.AVAX_PANGOLIN_CANFXS_USDC_E"); vm.label(0x0d84595e8638dBc631076c51000B2d31120D8aa1, "Constants.AVAX_TRADER_JOE_FRAX_WAVAX"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AVAX_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AVAX_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AVAX_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AVAX_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AVAX_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AVAX_WFRAXOFT"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.AVAX_REMOTEHOP"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.AVAX_REMOTEMINTREDEEMHOP"); + } +} +library Base { + address internal constant FPIOFT = 0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B; + address internal constant FRXETHOFT = 0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA; + address internal constant FRXUSDOFT = 0xe5020A6d073a794B6E7f05678707dE47986Fb0b6; + address internal constant SFRXETHOFT = 0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA; + address internal constant SFRXUSDOFT = 0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e; + address internal constant WFRAXOFT = 0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf; + address internal constant REMOTEHOP = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant REMOTEMINTREDEEMHOP = 0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE; +} + +abstract contract AddressHelperBase is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B, "Constants.BASE_FPIOFT"); + vm.label(0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA, "Constants.BASE_FRXETHOFT"); + vm.label(0xe5020A6d073a794B6E7f05678707dE47986Fb0b6, "Constants.BASE_FRXUSDOFT"); + vm.label(0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA, "Constants.BASE_SFRXETHOFT"); + vm.label(0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e, "Constants.BASE_SFRXUSDOFT"); + vm.label(0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf, "Constants.BASE_WFRAXOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BASE_REMOTEHOP"); + vm.label(0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE, "Constants.BASE_REMOTEMINTREDEEMHOP"); } } +library Bera { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; + address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; +} + +abstract contract AddressHelperBera is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BERA_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BERA_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BERA_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BERA_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BERA_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BERA_WFRAXOFT"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.BERA_REMOTEHOP"); + vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.BERA_REMOTEMINTREDEEMHOP"); + } +} +library Blast { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xe93Cb38f97469eac2f284a87813D0d701b28E58e; + address internal constant REMOTEMINTREDEEMHOP = 0x85b1714b25f40FD5025423124c076476073180b3; +} +abstract contract AddressHelperBlast is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BLAST_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BLAST_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BLAST_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BLAST_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BLAST_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BLAST_WFRAXOFT"); + vm.label(0xe93Cb38f97469eac2f284a87813D0d701b28E58e, "Constants.BLAST_REMOTEHOP"); + vm.label(0x85b1714b25f40FD5025423124c076476073180b3, "Constants.BLAST_REMOTEMINTREDEEMHOP"); + } +} library BSC { address internal constant FRAX = 0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40; address internal constant FXS = 0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE; @@ -465,8 +609,7 @@ library BSC { address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE = 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE = 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE = 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = - 0x612015939f70C87E2041cc5daD909101c1A2383F; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = 0x612015939f70C87E2041cc5daD909101c1A2383F; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE = 0x5E8422345238F34275888049021821E8E08CAa1f; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -490,6 +633,14 @@ library BSC { address internal constant APESWAP_CANFRAX_USDC = 0x885BE9bCbCdcB70c59F56A78ae64A820e0448589; address internal constant APESWAP_CANFXS_USDC = 0x84f2781E4E60f97D2963260A7b20D883F04F0d20; address internal constant SADDLE_FRAX_BUSD = 0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; + address internal constant REMOTEMINTREDEEMHOP = 0xdee45510b42Cb0678C8A61D043C698aF66b0d852; } abstract contract AddressHelperBSC is TestBase { @@ -498,65 +649,57 @@ abstract contract AddressHelperBSC is TestBase { } function labelConstants() public { - vm.label(0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40, "Constants.BSC_FRAX"); - vm.label(0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE, "Constants.BSC_FXS"); - vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.BSC_FPI"); - vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.BSC_FPIS"); - vm.label(0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e, "Constants.BSC_FRXETH"); - vm.label(0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53, "Constants.BSC_SFRXETH"); - vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.BSC_SFRAX"); - vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.BSC_APESWAP_CANFRAX_BUSD"); - vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.BSC_APESWAP_CANFXS_WBNB"); - vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.BSC_IMPOSSIBLE_FRAX_IF"); - vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.BSC_IMPOSSIBLE_FRAX_FXS"); - vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.BSC_PLANET_FINANCE_FRAX_LENDING"); - vm.label( - 0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, - "Constants.BSC_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE" - ); - vm.label(0x5CD3d6465cd21b645F15175840f4659228C6195c, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE"); - vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE"); - vm.label( - 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE" - ); - vm.label( - 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE" - ); - vm.label( - 0x612015939f70C87E2041cc5daD909101c1A2383F, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE" - ); - vm.label( - 0x5E8422345238F34275888049021821E8E08CAa1f, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE" - ); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_CREWMEMBER"); - vm.label(0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A, "Constants.BSC_COMBO_ORACLE"); - vm.label(0x8159D9CD28B7A140Fd92311C1E5c667d97176727, "Constants.BSC_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.BSC_FRAXSWAP_FACTORY_V1"); - vm.label(0xf89e6CA06121B6d4370f4B196Ae458e8b969A011, "Constants.BSC_FRAXSWAP_FACTORY_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.BSC_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37, "Constants.BSC_FRAXSWAP_ROUTER_V1"); - vm.label(0x67F755137E0AE2a2aa0323c047715Bf6523116E5, "Constants.BSC_FRAXSWAP_ROUTER_V2"); - vm.label(0xC86B106F76ef5b9A085071365eD5355592A7aFa4, "Constants.BSC_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D, "Constants.BSC_FRAXSWAP_V1_FRAX_WBNB"); - vm.label(0xF51709f61447E2647528CCC9030d6FE492C30D63, "Constants.BSC_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0x14732123c443f8E815D5c64f3C7ecb63bCeEab74, "Constants.BSC_FRAXSWAP_V2_FRAX_WBNB"); - vm.label(0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a, "Constants.BSC_COMPTROLLER"); - vm.label(0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456, "Constants.BSC_FPI_COMPTROLLER"); - vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.BSC_GFRAX"); - vm.label(0x489c8fF79245f14AEEE9520d28209844790cB979, "Constants.BSC_APESWAP_CANFRAX_CANFXS"); - vm.label(0x16BDb03E6074759943149eBB1526DDfD1AA5fc56, "Constants.BSC_APESWAP_CANFRAX_WBNB"); - vm.label(0x885BE9bCbCdcB70c59F56A78ae64A820e0448589, "Constants.BSC_APESWAP_CANFRAX_USDC"); - vm.label(0x84f2781E4E60f97D2963260A7b20D883F04F0d20, "Constants.BSC_APESWAP_CANFXS_USDC"); - vm.label(0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3, "Constants.BSC_SADDLE_FRAX_BUSD"); + vm.label(0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40, "Constants.undefined_FRAX"); + vm.label(0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE, "Constants.undefined_FXS"); + vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.undefined_FPI"); + vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.undefined_FPIS"); + vm.label(0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e, "Constants.undefined_FRXETH"); + vm.label(0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53, "Constants.undefined_SFRXETH"); + vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.undefined_SFRAX"); + vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFRAX_BUSD"); + vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFXS_WBNB"); + vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.undefined_IMPOSSIBLE_FRAX_IF"); + vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.undefined_IMPOSSIBLE_FRAX_FXS"); + vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_PLANET_FINANCE_FRAX_LENDING"); + vm.label(0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, "Constants.undefined_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE"); + vm.label(0x5CD3d6465cd21b645F15175840f4659228C6195c, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE"); + vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE"); + vm.label(0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE"); + vm.label(0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE"); + vm.label(0x612015939f70C87E2041cc5daD909101c1A2383F, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE"); + vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CREWMEMBER"); + vm.label(0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A, "Constants.undefined_COMBO_ORACLE"); + vm.label(0x8159D9CD28B7A140Fd92311C1E5c667d97176727, "Constants.undefined_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.undefined_FRAXSWAP_FACTORY_V1"); + vm.label(0xf89e6CA06121B6d4370f4B196Ae458e8b969A011, "Constants.undefined_FRAXSWAP_FACTORY_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.undefined_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37, "Constants.undefined_FRAXSWAP_ROUTER_V1"); + vm.label(0x67F755137E0AE2a2aa0323c047715Bf6523116E5, "Constants.undefined_FRAXSWAP_ROUTER_V2"); + vm.label(0xC86B106F76ef5b9A085071365eD5355592A7aFa4, "Constants.undefined_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D, "Constants.undefined_FRAXSWAP_V1_FRAX_WBNB"); + vm.label(0xF51709f61447E2647528CCC9030d6FE492C30D63, "Constants.undefined_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0x14732123c443f8E815D5c64f3C7ecb63bCeEab74, "Constants.undefined_FRAXSWAP_V2_FRAX_WBNB"); + vm.label(0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a, "Constants.undefined_COMPTROLLER"); + vm.label(0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456, "Constants.undefined_FPI_COMPTROLLER"); + vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_GFRAX"); + vm.label(0x489c8fF79245f14AEEE9520d28209844790cB979, "Constants.undefined_APESWAP_CANFRAX_CANFXS"); + vm.label(0x16BDb03E6074759943149eBB1526DDfD1AA5fc56, "Constants.undefined_APESWAP_CANFRAX_WBNB"); + vm.label(0x885BE9bCbCdcB70c59F56A78ae64A820e0448589, "Constants.undefined_APESWAP_CANFRAX_USDC"); + vm.label(0x84f2781E4E60f97D2963260A7b20D883F04F0d20, "Constants.undefined_APESWAP_CANFXS_USDC"); + vm.label(0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3, "Constants.undefined_SADDLE_FRAX_BUSD"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.undefined_REMOTEHOP"); + vm.label(0xdee45510b42Cb0678C8A61D043C698aF66b0d852, "Constants.undefined_REMOTEMINTREDEEMHOP"); } } - library Fantom { address internal constant FRAX = 0xdc301622e621166BD8E82f2cA0A26c13Ad0BE355; address internal constant FXS = 0x7d016eec9c25232b01F23EF992D98ca97fc2AF5a; @@ -569,13 +712,10 @@ library Fantom { address internal constant SPIRITSWAP_FRAX_FXS = 0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381; address internal constant SPIRITSWAP_FRAX_USDC = 0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d; address internal constant VEDAO_FRAX = 0xE04C26444d37fE103B9cc8033c99b09D47056f51; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = - 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE = 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = - 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = - 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -628,22 +768,10 @@ abstract contract AddressHelperFantom is TestBase { vm.label(0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381, "Constants.FTM_SPIRITSWAP_FRAX_FXS"); vm.label(0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d, "Constants.FTM_SPIRITSWAP_FRAX_USDC"); vm.label(0xE04C26444d37fE103B9cc8033c99b09D47056f51, "Constants.FTM_VEDAO_FRAX"); - vm.label( - 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, - "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE" - ); - vm.label( - 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, - "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE" - ); - vm.label( - 0x12b6a8178C67B2835E280E1Ed709F64446cddb08, - "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE" - ); - vm.label( - 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, - "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE" - ); + vm.label(0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE"); + vm.label(0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE"); + vm.label(0x12b6a8178C67B2835E280E1Ed709F64446cddb08, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE"); + vm.label(0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CREWMEMBER"); @@ -679,7 +807,6 @@ abstract contract AddressHelperFantom is TestBase { vm.label(0xB269A9969A437e778A8BFdB48A720aD366742554, "Constants.FTM_SPIRITSWAP_CANFXS_ANYUSDC"); } } - library FraxtalL1Devnet { address internal constant FRAX = 0x114a0318Da080A2Ee3380269d796E93DF767D24F; address internal constant FXS = 0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0; @@ -700,19 +827,18 @@ abstract contract AddressHelperFraxtalL1Devnet is TestBase { } function labelConstants() public { - vm.label(0x114a0318Da080A2Ee3380269d796E93DF767D24F, "Constants.FXTLL1DN_FRAX"); - vm.label(0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0, "Constants.FXTLL1DN_FXS"); - vm.label(0xfC75d8fD01fD999D2A4731a01d87131b40A8a645, "Constants.FXTLL1DN_FPI"); - vm.label(0x9445aD9a63def63CA9D23cfd7cd72538BbF1780A, "Constants.FXTLL1DN_FPIS"); - vm.label(0x2a2acd879050aC8910d80dccb428a0AEf77fFA36, "Constants.FXTLL1DN_FRXBTC"); - vm.label(0x51Ed07ceB785d2983e56CF00CAf65499dae5df3B, "Constants.FXTLL1DN_FRXETH"); - vm.label(0x2787eC65f085acbbE94F1bB7E099dF06B56b6DaC, "Constants.FXTLL1DN_SFRXETH"); - vm.label(0xB26fDD0FF10A287a73EFaa0b18A0e57fd8168835, "Constants.FXTLL1DN_SFRAX"); - vm.label(0x890205b3397a1F273BaD55476F2856886964E788, "Constants.FXTLL1DN_FRXETH_MINTER"); - vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTLL1DN_COMPTROLLER"); + vm.label(0x114a0318Da080A2Ee3380269d796E93DF767D24F, "Constants.FXTL_L1_DN_FRAX"); + vm.label(0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0, "Constants.FXTL_L1_DN_FXS"); + vm.label(0xfC75d8fD01fD999D2A4731a01d87131b40A8a645, "Constants.FXTL_L1_DN_FPI"); + vm.label(0x9445aD9a63def63CA9D23cfd7cd72538BbF1780A, "Constants.FXTL_L1_DN_FPIS"); + vm.label(0x2a2acd879050aC8910d80dccb428a0AEf77fFA36, "Constants.FXTL_L1_DN_FRXBTC"); + vm.label(0x51Ed07ceB785d2983e56CF00CAf65499dae5df3B, "Constants.FXTL_L1_DN_FRXETH"); + vm.label(0x2787eC65f085acbbE94F1bB7E099dF06B56b6DaC, "Constants.FXTL_L1_DN_SFRXETH"); + vm.label(0xB26fDD0FF10A287a73EFaa0b18A0e57fd8168835, "Constants.FXTL_L1_DN_SFRAX"); + vm.label(0x890205b3397a1F273BaD55476F2856886964E788, "Constants.FXTL_L1_DN_FRXETH_MINTER"); + vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_L1_DN_COMPTROLLER"); } } - library FraxtalL2Devnet { address internal constant FRAX = 0xFc00000000000000000000000000000000000001; address internal constant FXS = 0xFc00000000000000000000000000000000000002; @@ -737,35 +863,34 @@ abstract contract AddressHelperFraxtalL2Devnet is TestBase { } function labelConstants() public { - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTLL2DN_FRAX"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTLL2DN_FXS"); - vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTLL2DN_FPI"); - vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTLL2DN_FPIS"); - vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTLL2DN_FRXBTC"); - vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTLL2DN_WFRXETH"); - vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTLL2DN_SFRXETH"); - vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTLL2DN_SFRAX"); - vm.label(0xfC00000000000000000000000000000000000009, "Constants.FXTLL2DN_PROXY_ADMIN"); - vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTLL2DN_COMPTROLLER"); - vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTLL2DN_CROSS_DOMAIN_MESSENGER"); - vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTLL2DN_ERC20_FACTORY_PROXY"); - vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTLL2DN_L2_STANDARD_BRIDGE_PROXY"); - vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTLL2DN_L2_TO_L1_MESSAGE_PASSER"); + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_L2_DN_FRAX"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_L2_DN_FXS"); + vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_L2_DN_FPI"); + vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_L2_DN_FPIS"); + vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_L2_DN_FRXBTC"); + vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_L2_DN_WFRXETH"); + vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_L2_DN_SFRXETH"); + vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_L2_DN_SFRAX"); + vm.label(0xfC00000000000000000000000000000000000009, "Constants.FXTL_L2_DN_PROXY_ADMIN"); + vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_L2_DN_COMPTROLLER"); + vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_L2_DN_CROSS_DOMAIN_MESSENGER"); + vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_L2_DN_ERC20_FACTORY_PROXY"); + vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_L2_DN_L2_STANDARD_BRIDGE_PROXY"); + vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_L2_DN_L2_TO_L1_MESSAGE_PASSER"); } } - library FraxtalL2 { uint256 internal constant CHAIN_ID = 252; - address internal constant FRAX = 0xFc00000000000000000000000000000000000001; - address internal constant FXS = 0xFc00000000000000000000000000000000000002; + address internal constant FRXUSD = 0xFc00000000000000000000000000000000000001; + address internal constant WFRAX = 0xFc00000000000000000000000000000000000002; address internal constant FPI = 0xFc00000000000000000000000000000000000003; address internal constant FPIS = 0xfc00000000000000000000000000000000000004; address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; address internal constant FRXBTC = 0xfC00000000000000000000000000000000000007; address internal constant SFRAX = 0xfc00000000000000000000000000000000000008; - address internal constant FRAX_PROXY = 0xFc00000000000000000000000000000000000001; - address internal constant FXS_PROXY = 0xFc00000000000000000000000000000000000002; + address internal constant FRXUSD_PROXY = 0xFc00000000000000000000000000000000000001; + address internal constant WFRAX_PROXY = 0xFc00000000000000000000000000000000000002; address internal constant FPI_PROXY = 0xFc00000000000000000000000000000000000003; address internal constant FPIS_PROXY = 0xfc00000000000000000000000000000000000004; address internal constant SFRXETH_PROXY = 0xFC00000000000000000000000000000000000005; @@ -783,18 +908,15 @@ library FraxtalL2 { address internal constant FXB_20261231 = 0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e; address internal constant FXB_20241231 = 0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba; address internal constant FXB_20240630 = 0x758094A71a39De49626FE25B86631ED944558653; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = - 0x00160baF84b3D2014837cc12e838ea399f8b8478; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = - 0x24e927daC110Aab7189a4F864d41680e4F7865FB; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = - 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = - 0xcD3A040f05769d7628582B403063e61B7D212F91; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = - 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = - 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; + address internal constant FXB_20551231 = 0xc38173d34afaea88bc482813b3cd267bc8a1ea83; + address internal constant FXB_20291231 = 0xf1e2b576af4c6a7ee966b14c810b772391e92153; + address internal constant FXB_20251231 = 0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = 0xcD3A040f05769d7628582B403063e61B7D212F91; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -811,6 +933,9 @@ library FraxtalL2 { address internal constant FXB_20240630_ORACLE = 0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7; address internal constant FXB_20241231_ORACLE = 0x01480a0C134CeCC309015a564C7e292ba6E0F358; address internal constant FXB_20261231_ORACLE = 0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3; + address internal constant FXB_20551231_ORACLE = 0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6; + address internal constant FXB_20291231_ORACLE = 0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b; + address internal constant FXB_20251231_ORACLE = 0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18; address internal constant FXB_VARIABLE_RATE_2 = 0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f; address internal constant FXS_DUAL_ORACLE_REDSTONE = 0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2; address internal constant SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE = 0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c; @@ -818,9 +943,11 @@ library FraxtalL2 { address internal constant TIMELOCK_ADDRESS = 0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2; address internal constant VARIABLE_RATE_2_ADDRESS = 0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652; address internal constant VARIABLE_RATE_2_ADDRESS_50 = 0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2; - address internal constant FRAXLEND_PAIR_FXB12312026_FRAX = 0x032578d99b1070682a5E171012BE1756a50a17d4; - address internal constant FRAXLEND_PAIR_FXB12312024_FRAX = 0x6154334A7D0E7f5f0479599D15F462B200C721E1; - address internal constant FRAXLEND_PAIR_FXB06302024 = 0x57b709e214B239821A78dFCF09c89f52bA3D80aD; + address internal constant FRAXLEND_PAIR_FXB_20261231_FRAX = 0x032578d99b1070682a5E171012BE1756a50a17d4; + address internal constant FRAXLEND_PAIR_FXB_20241231_FRAX = 0x6154334A7D0E7f5f0479599D15F462B200C721E1; + address internal constant FRAXLEND_PAIR_FXB_20240630_FRAX = 0x57b709e214B239821A78dFCF09c89f52bA3D80aD; + address internal constant FRAXLEND_PAIR_FXB_20291231_FRAX = 0x3e92765eE2B009b104A8A7baf3759B159c19AbA1; + address internal constant FRAXLEND_PAIR_FXB_20251231_FRAX = 0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5; address internal constant FRAXLEND_PAIR_SFRXETH_FRAX = 0x4F968317721B9c300afBff3FD37365637318271D; address internal constant FRAXLEND_PAIR_FXS_FRAX = 0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2; address internal constant FRAXLEND_PAIR_SFRAX_SFRXETH = 0xB71E4829e81f72f7F36A0d858e58109f5948A713; @@ -881,12 +1008,11 @@ library FraxtalL2 { address internal constant L1VEFXS_PROXY = 0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F; address internal constant L1VEFXS_TOTAL_SUPPLY_ORACLE = 0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8; address internal constant FXB_AMO = 0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313; - address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = - 0x111ddab65Af5fF96b674400246699ED40F550De1; + address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = 0x111ddab65Af5fF96b674400246699ED40F550De1; address internal constant VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = 0x691d1AaFB550c35B24e09bb991AEC9612342eD93; address internal constant VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = 0x39333a540bbea6262e405E1A6d435Bd2e776561E; - address internal constant YIELD_DISTRIBUTOR_PROXY = 0x2673fD26dD56D22e85A7Cb6A8fDe1dEaB151f93b; - address internal constant YIELD_DISTRIBUTOR_IMPL = 0x5CA7cc32be0E03fde68057d04c1a7eE8ff379AF3; + address internal constant YIELD_DISTRIBUTOR_PROXY = 0x21359d1697e610e25C8229B2C57907378eD09A2E; + address internal constant YIELD_DISTRIBUTOR_IMPL = 0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B; address internal constant VESTEDFXS_UTILS = 0xC540f05BF5a09336078634D65E46242DFBa55030; address internal constant VESTEDFXS_IMPL_V1 = 0x54bd5c72645fed784C117cA83533e0584b24Ee5c; address internal constant VESTEDFXS_PROXY = 0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF; @@ -904,6 +1030,14 @@ library FraxtalL2 { address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; + address internal constant FPIOFT = 0x75c38D46001b0F8108c4136216bd2694982C20FC; + address internal constant FRXETHOFT = 0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604; + address internal constant FRXUSDOFT = 0x96A394058E2b84A89bac9667B19661Ed003cF5D4; + address internal constant SFRXETHOFT = 0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168; + address internal constant SFRXUSDOFT = 0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361; + address internal constant WFRAXOFT = 0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A; + address internal constant FRAXTALHOP = 0x2A2019b30C157dB6c1C01306b8025167dBe1803B; + address internal constant FRAXTALMINTREDEEMHOP = 0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC; } abstract contract AddressHelperFraxtalL2 is TestBase { @@ -912,16 +1046,16 @@ abstract contract AddressHelperFraxtalL2 is TestBase { } function labelConstants() public { - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRAX"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_FXS"); + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX"); vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI"); vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS"); vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH"); vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_WFRXETH"); vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_FRXBTC"); vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_SFRAX"); - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRAX_PROXY"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_FXS_PROXY"); + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD_PROXY"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX_PROXY"); vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI_PROXY"); vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS_PROXY"); vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH_PROXY"); @@ -939,30 +1073,15 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e, "Constants.FXTL_FXB_20261231"); vm.label(0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba, "Constants.FXTL_FXB_20241231"); vm.label(0x758094A71a39De49626FE25B86631ED944558653, "Constants.FXTL_FXB_20240630"); - vm.label( - 0x00160baF84b3D2014837cc12e838ea399f8b8478, - "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE" - ); - vm.label( - 0x24e927daC110Aab7189a4F864d41680e4F7865FB, - "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE" - ); - vm.label( - 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, - "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE" - ); - vm.label( - 0xcD3A040f05769d7628582B403063e61B7D212F91, - "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE" - ); - vm.label( - 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, - "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE" - ); - vm.label( - 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, - "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE" - ); + vm.label(0xc38173d34afaea88bc482813b3cd267bc8a1ea83, "Constants.FXTL_FXB_20551231"); + vm.label(0xf1e2b576af4c6a7ee966b14c810b772391e92153, "Constants.FXTL_FXB_20291231"); + vm.label(0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca, "Constants.FXTL_FXB_20251231"); + vm.label(0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE"); + vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE"); + vm.label(0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE"); + vm.label(0xcD3A040f05769d7628582B403063e61B7D212F91, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE"); + vm.label(0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE"); + vm.label(0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CREWMEMBER"); @@ -979,6 +1098,9 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7, "Constants.FXTL_FXB_20240630_ORACLE"); vm.label(0x01480a0C134CeCC309015a564C7e292ba6E0F358, "Constants.FXTL_FXB_20241231_ORACLE"); vm.label(0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3, "Constants.FXTL_FXB_20261231_ORACLE"); + vm.label(0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6, "Constants.FXTL_FXB_20551231_ORACLE"); + vm.label(0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b, "Constants.FXTL_FXB_20291231_ORACLE"); + vm.label(0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18, "Constants.FXTL_FXB_20251231_ORACLE"); vm.label(0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f, "Constants.FXTL_FXB_VARIABLE_RATE_2"); vm.label(0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2, "Constants.FXTL_FXS_DUAL_ORACLE_REDSTONE"); vm.label(0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c, "Constants.FXTL_SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE"); @@ -986,9 +1108,11 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2, "Constants.FXTL_TIMELOCK_ADDRESS"); vm.label(0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652, "Constants.FXTL_VARIABLE_RATE_2_ADDRESS"); vm.label(0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2, "Constants.FXTL_VARIABLE_RATE_2_ADDRESS_50"); - vm.label(0x032578d99b1070682a5E171012BE1756a50a17d4, "Constants.FXTL_FRAXLEND_PAIR_FXB12312026_FRAX"); - vm.label(0x6154334A7D0E7f5f0479599D15F462B200C721E1, "Constants.FXTL_FRAXLEND_PAIR_FXB12312024_FRAX"); - vm.label(0x57b709e214B239821A78dFCF09c89f52bA3D80aD, "Constants.FXTL_FRAXLEND_PAIR_FXB06302024"); + vm.label(0x032578d99b1070682a5E171012BE1756a50a17d4, "Constants.FXTL_FRAXLEND_PAIR_FXB_20261231_FRAX"); + vm.label(0x6154334A7D0E7f5f0479599D15F462B200C721E1, "Constants.FXTL_FRAXLEND_PAIR_FXB_20241231_FRAX"); + vm.label(0x57b709e214B239821A78dFCF09c89f52bA3D80aD, "Constants.FXTL_FRAXLEND_PAIR_FXB_20240630_FRAX"); + vm.label(0x3e92765eE2B009b104A8A7baf3759B159c19AbA1, "Constants.FXTL_FRAXLEND_PAIR_FXB_20291231_FRAX"); + vm.label(0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5, "Constants.FXTL_FRAXLEND_PAIR_FXB_20251231_FRAX"); vm.label(0x4F968317721B9c300afBff3FD37365637318271D, "Constants.FXTL_FRAXLEND_PAIR_SFRXETH_FRAX"); vm.label(0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2, "Constants.FXTL_FRAXLEND_PAIR_FXS_FRAX"); vm.label(0xB71E4829e81f72f7F36A0d858e58109f5948A713, "Constants.FXTL_FRAXLEND_PAIR_SFRAX_SFRXETH"); @@ -1049,14 +1173,11 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F, "Constants.FXTL_L1VEFXS_PROXY"); vm.label(0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8, "Constants.FXTL_L1VEFXS_TOTAL_SUPPLY_ORACLE"); vm.label(0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313, "Constants.FXTL_FXB_AMO"); - vm.label( - 0x111ddab65Af5fF96b674400246699ED40F550De1, - "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1" - ); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1"); vm.label(0x691d1AaFB550c35B24e09bb991AEC9612342eD93, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_IMPL_V1"); vm.label(0x39333a540bbea6262e405E1A6d435Bd2e776561E, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_PROXY_V1"); - vm.label(0x2673fD26dD56D22e85A7Cb6A8fDe1dEaB151f93b, "Constants.FXTL_YIELD_DISTRIBUTOR_PROXY"); - vm.label(0x5CA7cc32be0E03fde68057d04c1a7eE8ff379AF3, "Constants.FXTL_YIELD_DISTRIBUTOR_IMPL"); + vm.label(0x21359d1697e610e25C8229B2C57907378eD09A2E, "Constants.FXTL_YIELD_DISTRIBUTOR_PROXY"); + vm.label(0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B, "Constants.FXTL_YIELD_DISTRIBUTOR_IMPL"); vm.label(0xC540f05BF5a09336078634D65E46242DFBa55030, "Constants.FXTL_VESTEDFXS_UTILS"); vm.label(0x54bd5c72645fed784C117cA83533e0584b24Ee5c, "Constants.FXTL_VESTEDFXS_IMPL_V1"); vm.label(0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF, "Constants.FXTL_VESTEDFXS_PROXY"); @@ -1074,11 +1195,18 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_ERC20_FACTORY_PROXY"); vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_L2_STANDARD_BRIDGE_PROXY"); vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_L2_TO_L1_MESSAGE_PASSER"); + vm.label(0x75c38D46001b0F8108c4136216bd2694982C20FC, "Constants.FXTL_FPIOFT"); + vm.label(0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604, "Constants.FXTL_FRXETHOFT"); + vm.label(0x96A394058E2b84A89bac9667B19661Ed003cF5D4, "Constants.FXTL_FRXUSDOFT"); + vm.label(0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168, "Constants.FXTL_SFRXETHOFT"); + vm.label(0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361, "Constants.FXTL_SFRXUSDOFT"); + vm.label(0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A, "Constants.FXTL_WFRAXOFT"); + vm.label(0x2A2019b30C157dB6c1C01306b8025167dBe1803B, "Constants.FXTL_FRAXTALHOP"); + vm.label(0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC, "Constants.FXTL_FRAXTALMINTREDEEMHOP"); } } - library FraxtalTestnetL1 { - uint256 internal constant CHAIN_ID = 17_000; + uint256 internal constant CHAIN_ID = 17000; address internal constant PROXY_ADMIN = 0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e; address internal constant COMPTROLLER = 0x88699c59E413e8A47117820D15d8D33b09B21edD; address internal constant ADDRESS_MANAGER = 0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6; @@ -1097,22 +1225,18 @@ abstract contract AddressHelperFraxtalTestnetL1 is TestBase { } function labelConstants() public { - vm.label(0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e, "Constants.FXTLTNL1_PROXY_ADMIN"); - vm.label(0x88699c59E413e8A47117820D15d8D33b09B21edD, "Constants.FXTLTNL1_COMPTROLLER"); - vm.label(0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6, "Constants.FXTLTNL1_ADDRESS_MANAGER"); - vm.label(0x45A98115D5722C6cfC48D711e0053758E7C0b8ad, "Constants.FXTLTNL1_L1_CROSS_DOMAIN_MESSENGER_PROXY"); - vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.FXTLTNL1_L1_ERC721_BRIDGE_PROXY"); - vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.FXTLTNL1_L1_STANDARD_BRIDGE_PROXY"); - vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.FXTLTNL1_L2_OUTPUT_ORACLE_PROXY"); - vm.label( - 0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, - "Constants.FXTLTNL1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY" - ); - vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.FXTLTNL1_OPTIMISM_PORTAL_PROXY"); - vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.FXTLTNL1_SYSTEM_CONFIG_PROXY"); + vm.label(0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e, "Constants.FXTL_TN_L1_PROXY_ADMIN"); + vm.label(0x88699c59E413e8A47117820D15d8D33b09B21edD, "Constants.FXTL_TN_L1_COMPTROLLER"); + vm.label(0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6, "Constants.FXTL_TN_L1_ADDRESS_MANAGER"); + vm.label(0x45A98115D5722C6cfC48D711e0053758E7C0b8ad, "Constants.FXTL_TN_L1_L1_CROSS_DOMAIN_MESSENGER_PROXY"); + vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.FXTL_TN_L1_L1_ERC721_BRIDGE_PROXY"); + vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.FXTL_TN_L1_L1_STANDARD_BRIDGE_PROXY"); + vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.FXTL_TN_L1_L2_OUTPUT_ORACLE_PROXY"); + vm.label(0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, "Constants.FXTL_TN_L1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); + vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.FXTL_TN_L1_OPTIMISM_PORTAL_PROXY"); + vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.FXTL_TN_L1_SYSTEM_CONFIG_PROXY"); } } - library FraxtalTestnetL2 { uint256 internal constant CHAIN_ID = 2522; address internal constant FRAX = 0xFc00000000000000000000000000000000000001; @@ -1138,26 +1262,25 @@ abstract contract AddressHelperFraxtalTestnetL2 is TestBase { } function labelConstants() public { - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTLTNL2_FRAX"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTLTNL2_FXS"); - vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTLTNL2_FPI"); - vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTLTNL2_FPIS"); - vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTLTNL2_SFRXETH"); - vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTLTNL2_WFRXETH"); - vm.label(0xbc679bdd1bA59654bD50DEB03fd80dC97c713fF2, "Constants.FXTLTNL2_FRAXSWAP_FACTORY"); - vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.FXTLTNL2_FRAXSWAP_ROUTER"); - vm.label(0x509728dC748586214Fa30cEF61359f136523F24d, "Constants.FXTLTNL2_FRAXSWAP_ROUTER_MULTIHOP"); - vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTLTNL2_COMPTROLLER"); - vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTLTNL2_PROXY_ADMIN"); - vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTLTNL2_CROSS_DOMAIN_MESSENGER"); - vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTLTNL2_ERC20_FACTORY_PROXY"); - vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTLTNL2_L2_STANDARD_BRIDGE_PROXY"); - vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTLTNL2_L2_TO_L1_MESSAGE_PASSER"); + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_TN_L2_FRAX"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_TN_L2_FXS"); + vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_TN_L2_FPI"); + vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_TN_L2_FPIS"); + vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_TN_L2_SFRXETH"); + vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_TN_L2_WFRXETH"); + vm.label(0xbc679bdd1bA59654bD50DEB03fd80dC97c713fF2, "Constants.FXTL_TN_L2_FRAXSWAP_FACTORY"); + vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.FXTL_TN_L2_FRAXSWAP_ROUTER"); + vm.label(0x509728dC748586214Fa30cEF61359f136523F24d, "Constants.FXTL_TN_L2_FRAXSWAP_ROUTER_MULTIHOP"); + vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_TN_L2_COMPTROLLER"); + vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_TN_L2_PROXY_ADMIN"); + vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_TN_L2_CROSS_DOMAIN_MESSENGER"); + vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_TN_L2_ERC20_FACTORY_PROXY"); + vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_TN_L2_L2_STANDARD_BRIDGE_PROXY"); + vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_TN_L2_L2_TO_L1_MESSAGE_PASSER"); } } - library Holesky { - uint256 internal constant CHAIN_ID = 17_000; + uint256 internal constant CHAIN_ID = 17000; address internal constant FRAX = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; address internal constant FXS = 0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF; address internal constant FPI = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; @@ -1218,8 +1341,116 @@ abstract contract AddressHelperHolesky is TestBase { vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.HOLESKY_FRXETH_MINTER"); } } +library Hyperliquid { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + string internal constant REMOTEHOP = ""; + string internal constant REMOTEMINTREDEEMHOP = ""; +} + +abstract contract AddressHelperHyperliquid is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.HYPE_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.HYPE_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.HYPE_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.HYPE_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.HYPE_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.HYPE_WFRAXOFT"); + vm.label(, "Constants.HYPE_REMOTEHOP"); + vm.label(, "Constants.HYPE_REMOTEMINTREDEEMHOP"); + } +} +library Ink { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; + address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; +} + +abstract contract AddressHelperInk is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.INK_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.INK_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.INK_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.INK_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.INK_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.INK_WFRAXOFT"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.INK_REMOTEHOP"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.INK_REMOTEMINTREDEEMHOP"); + } +} +library Katana { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c; + address internal constant REMOTEMINTREDEEMHOP = 0xF6f45CCB5E85D1400067ee66F9e168f83e86124E; +} + +abstract contract AddressHelperKatana is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.KTN_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.KTN_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.KTN_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.KTN_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.KTN_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.KTN_WFRAXOFT"); + vm.label(0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c, "Constants.KTN_REMOTEHOP"); + vm.label(0xF6f45CCB5E85D1400067ee66F9e168f83e86124E, "Constants.KTN_REMOTEMINTREDEEMHOP"); + } +} +library Linea { + address internal constant FPIOFT = 0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4; + address internal constant FRXETHOFT = 0xB1aFD04774c02AE84692619448B08BA79F19b1ff; + address internal constant FRXUSDOFT = 0xC7346783f5e645aa998B106Ef9E7f499528673D8; + address internal constant SFRXETHOFT = 0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2; + address internal constant SFRXUSDOFT = 0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6; + address internal constant WFRAXOFT = 0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5; + address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; + address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; +} +abstract contract AddressHelperLinea is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4, "Constants.LINEA_FPIOFT"); + vm.label(0xB1aFD04774c02AE84692619448B08BA79F19b1ff, "Constants.LINEA_FRXETHOFT"); + vm.label(0xC7346783f5e645aa998B106Ef9E7f499528673D8, "Constants.LINEA_FRXUSDOFT"); + vm.label(0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2, "Constants.LINEA_SFRXETHOFT"); + vm.label(0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6, "Constants.LINEA_SFRXUSDOFT"); + vm.label(0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5, "Constants.LINEA_WFRAXOFT"); + vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.LINEA_REMOTEHOP"); + vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.LINEA_REMOTEMINTREDEEMHOP"); + } +} library Mainnet { + uint256 internal constant CHAIN_ID = 1; address internal constant FRAX = 0x853d955aCEf822Db058eb8505911ED77F175b99e; address internal constant FXS = 0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0; address internal constant FPI = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; @@ -1382,133 +1613,80 @@ library Mainnet { address internal constant CURVE_20240630_MAINNET_POOL = 0x4ef4c7519023F30A78647EEab321d6cFabC2513c; address internal constant FXB_20241231 = 0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09; address internal constant AUCTION_20241231 = 0xc9aa98788a675FF0846E8856cb83F19452f3b0c8; - address internal constant ORACLE_20241231 = 0x08a0748cF885F46e20fA30A50a035808eab293D3; + address internal constant FXB_20241231_ORACLE = 0x08a0748cF885F46e20fA30A50a035808eab293D3; address internal constant CURVE_20241231_MAINNET_POOL = 0x6307E6688819951Cf8D6B6066018243D2496952F; address internal constant CURVE_20241231_ARBITRUM_POOL = 0xE920eEdAff6c3BEd1Ef61010B64d46986634E908; address internal constant CURVE_20241231_ARBITRUM_GAUGE = 0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68; address internal constant FXB_20261231 = 0x76237BCfDbe8e06FB774663add96216961df4ff3; address internal constant AUCTION_20261231 = 0x63981f5E690eaF7E8795c42832664e8848F532fB; - address internal constant ORACLE_20261231 = 0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707; + address internal constant FXB_20261231_ORACLE = 0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707; address internal constant CURVE_20261231_MAINNET_POOL = 0xe035e27A8eD6842b478933820f90093D205F7098; address internal constant CURVE_20261231_ARBITRUM_POOL = 0x946adc524BD312D036776798c46ceDD948DD0A0f; address internal constant CURVE_20261231_ARBITRUM_GAUGE = 0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = - 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = - 0x4b8792aF00eaE944484bF572bc33029B2184a50C; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = - 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = - 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = - 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = - 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = - 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; - address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = - 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = - 0xA381d58e96eC3818c825E1fb264099448945CF8b; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = - 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = - 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = - 0x18A5ca670dC42D0551f00E11A730074f6787f17F; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = - 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = - 0xF380200B115Caa22D49e6C115b758d6130377620; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = - 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = 0x4b8792aF00eaE944484bF572bc33029B2184a50C; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; + address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = 0xA381d58e96eC3818c825E1fb264099448945CF8b; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = 0x18A5ca670dC42D0551f00E11A730074f6787f17F; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = 0xF380200B115Caa22D49e6C115b758d6130377620; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; address internal constant FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE = 0x3eF1d856EA62A2292B8690855042095a7aC48B4b; address internal constant FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE = 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE = 0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE = 0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE = 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE = 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = - 0x621D0e62f26314387f338A2509aFA3Ae3414661A; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = 0x621D0e62f26314387f338A2509aFA3Ae3414661A; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE = 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9; address internal constant FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE = 0x2d2261f970F605C813f160E8BAEd455E9004A842; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = - 0xfB788F9E20ef426a32A67986654750172A6c1788; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = 0xfB788F9E20ef426a32A67986654750172A6c1788; address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE = 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = - 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = - 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = - 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = - 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = - 0x9A576A3d39c589A861B46864C253288bcA428a6c; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = - 0x958815f476cD07354c0BC034EE5077B20fD93003; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = - 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = - 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = - 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = - 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = - 0x228567c10b7533C88057c10dDeA6349360F122c5; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = - 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = - 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = - 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = - 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = - 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = - 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = - 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = - 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = - 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = - 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = - 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = - 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = - 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = - 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = - 0x86E71075e55F0aaD27D700017E0783458310c98a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = - 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = - 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = - 0xF887C4cFAAfB43d1AA7De204344895591016772c; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = - 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = - 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = - 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = - 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = 0x9A576A3d39c589A861B46864C253288bcA428a6c; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = 0x958815f476cD07354c0BC034EE5077B20fD93003; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = 0x228567c10b7533C88057c10dDeA6349360F122c5; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = 0x86E71075e55F0aaD27D700017E0783458310c98a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = 0xF887C4cFAAfB43d1AA7De204344895591016772c; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE = 0x27E97F35D80514D5DD1Caa730e22a292E912a214; address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE = 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = - 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = - 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = - 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; address internal constant FRAXFERRY_CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FRAXFERRY_FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FRAXFERRY_CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -1529,7 +1707,7 @@ library Mainnet { address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC = 0x734fd1fD1f3720379f52cB9d8168d76Cd1ca4A73; address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xc3a483Bb5F96bC4E6104325aa1A229A8E29166B3; address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x1cBE07F3b3bf3BDe44d363cecAecfe9a98EC2dff; - address internal constant COMPTROLLER_ADDRESS = 0x168200cF227D4543302686124ac28aE0eaf2cA0B; + address internal constant FRAXLEND_COMPTROLLER_ADDRESS = 0x168200cF227D4543302686124ac28aE0eaf2cA0B; address internal constant CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP = 0x8A2112B42AF1F997002FBAfF77dd09F42A281e8d; address internal constant CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP = 0x45127c7fA0c3Ce6A18fEc9604D96eDfBBc8A9700; address internal constant CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD = 0x54a3A6aFd87F10Eea4Acc2A067A2C0b612B6D315; @@ -1651,9 +1829,9 @@ library Mainnet { address internal constant FRAXLEND_PAIR_MKR_FRAX = 0x82Ec28636B77661a95f021090F6bE0C8d379DD5D; address internal constant FRAXLEND_PAIR_UNI_FRAX = 0xc6CadA314389430d396C7b0C70c6281e99ca7fe8; address internal constant FRAXLEND_PAIR_AAVE_FRAX = 0xc779fEE076EB04b9F8EA424ec19DE27Efd17A68d; - address internal constant FRAXLEND_PAIR_FXB06302024_FRAX = 0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF; - address internal constant FRAXLEND_PAIR_FXB12312024_FRAX = 0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a; - address internal constant FRAXLEND_PAIR_FXB12312026_FRAX = 0x1c0C222989a37247D974937782cebc8bF4f25733; + address internal constant FRAXLEND_PAIR_FXB_20240630_FRAX = 0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF; + address internal constant FRAXLEND_PAIR_FXB_20241231_FRAX = 0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a; + address internal constant FRAXLEND_PAIR_FXB_20261231_FRAX = 0x1c0C222989a37247D974937782cebc8bF4f25733; address internal constant FRAXLEND_PAIR_SFRXETH_USDC = 0xeE847a804b67f4887c9E8fe559A2dA4278deFB52; address internal constant FRAXLEND_PAIR_LINK_FRAX = 0x7093F6141293F7C4F67E5efD922aC934402E452d; address internal constant FRAXLEND_PAIR_WSTETH_FRAX = 0xb5a46f712F03808aE5c4B885C6F598fA06442684; @@ -1833,6 +2011,7 @@ library Mainnet { address internal constant ADVISORS_MULTISIG = 0x874a873e4891fB760EdFDae0D26cA2c00922C404; address internal constant BEE_USER = 0x733371d7C15ACECF9e120dd037D6BcDb6E069148; address internal constant COMMUNITY_MULTISIG = 0x63278bF9AcdFC9fA65CFa2940b89A34ADfbCb4A1; + address internal constant COMPTROLLER = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; address internal constant COMPTROLLER_MULTISIG = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; address internal constant CURVEAMO_OPERATOR_ADDRESS = 0x8D8Cb63BcB8AD89Aa750B9f80Aa8Fa4CfBcC8E0C; address internal constant FPI_COMPTROLLER_MULTISIG = 0x6A7efa964Cf6D9Ab3BC3c47eBdDB853A8853C502; @@ -2278,6 +2457,14 @@ library Mainnet { address internal constant NON_FUNGIBLE_POSITION_MANAGER = 0xC36442b4a4522E871399CD717aBDD847Ab11FE88; address internal constant SWAPROUTER = 0xE592427A0AEce92De3Edee1F18E0157C05861564; address internal constant UNISWAP_V3_FACTORY = 0x1F98431c8aD98523631AE4a59f267346ea31F984; + address internal constant FPIOFT = 0x9033BAD7aA130a2466060A2dA71fAe2219781B4b; + address internal constant FRXETHOFT = 0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6; + address internal constant FRXUSDOFT = 0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0; + address internal constant SFRXETHOFT = 0xbBc424e58ED38dd911309611ae2d7A23014Bd960; + address internal constant SFRXUSDOFT = 0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126; + address internal constant WFRAXOFT = 0x04ACaF8D2865c0714F79da09645C13FD2888977f; + address internal constant REMOTEHOP = 0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E; + address internal constant REMOTEMINTREDEEMHOP = 0x99B5587ab54A49e3F827D10175Caf69C0187bfA8; } abstract contract AddressHelperMainnet is TestBase { @@ -2448,266 +2635,80 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0x4ef4c7519023F30A78647EEab321d6cFabC2513c, "Constants.ETH_CURVE_20240630_MAINNET_POOL"); vm.label(0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09, "Constants.ETH_FXB_20241231"); vm.label(0xc9aa98788a675FF0846E8856cb83F19452f3b0c8, "Constants.ETH_AUCTION_20241231"); - vm.label(0x08a0748cF885F46e20fA30A50a035808eab293D3, "Constants.ETH_ORACLE_20241231"); + vm.label(0x08a0748cF885F46e20fA30A50a035808eab293D3, "Constants.ETH_FXB_20241231_ORACLE"); vm.label(0x6307E6688819951Cf8D6B6066018243D2496952F, "Constants.ETH_CURVE_20241231_MAINNET_POOL"); vm.label(0xE920eEdAff6c3BEd1Ef61010B64d46986634E908, "Constants.ETH_CURVE_20241231_ARBITRUM_POOL"); vm.label(0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68, "Constants.ETH_CURVE_20241231_ARBITRUM_GAUGE"); vm.label(0x76237BCfDbe8e06FB774663add96216961df4ff3, "Constants.ETH_FXB_20261231"); vm.label(0x63981f5E690eaF7E8795c42832664e8848F532fB, "Constants.ETH_AUCTION_20261231"); - vm.label(0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707, "Constants.ETH_ORACLE_20261231"); + vm.label(0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707, "Constants.ETH_FXB_20261231_ORACLE"); vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_CURVE_20261231_MAINNET_POOL"); vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ETH_CURVE_20261231_ARBITRUM_POOL"); vm.label(0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9, "Constants.ETH_CURVE_20261231_ARBITRUM_GAUGE"); - vm.label( - 0x85c5f05Ae4CB68190C695a22b292C3bA90696128, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE" - ); - vm.label( - 0x4b8792aF00eaE944484bF572bc33029B2184a50C, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE" - ); - vm.label( - 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE" - ); - vm.label( - 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE" - ); - vm.label( - 0x505603e2440b44C1602b44D0Eb8385399b3F7bab, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE" - ); - vm.label( - 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE" - ); - vm.label( - 0x6ac96F65156281a9383455D704b58A74ea9C9eC4, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE" - ); - vm.label( - 0xA381d58e96eC3818c825E1fb264099448945CF8b, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE" - ); - vm.label( - 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE" - ); - vm.label( - 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE" - ); - vm.label( - 0x18A5ca670dC42D0551f00E11A730074f6787f17F, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE" - ); - vm.label( - 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE" - ); - vm.label( - 0xF380200B115Caa22D49e6C115b758d6130377620, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE" - ); - vm.label( - 0x3eF1d856EA62A2292B8690855042095a7aC48B4b, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE" - ); - vm.label( - 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE" - ); + vm.label(0x85c5f05Ae4CB68190C695a22b292C3bA90696128, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE"); + vm.label(0x4b8792aF00eaE944484bF572bc33029B2184a50C, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE"); + vm.label(0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE"); + vm.label(0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE"); + vm.label(0x505603e2440b44C1602b44D0Eb8385399b3F7bab, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE"); + vm.label(0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE"); + vm.label(0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE"); + vm.label(0x6ac96F65156281a9383455D704b58A74ea9C9eC4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE"); + vm.label(0xA381d58e96eC3818c825E1fb264099448945CF8b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE"); + vm.label(0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE"); + vm.label(0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE"); + vm.label(0x18A5ca670dC42D0551f00E11A730074f6787f17F, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE"); + vm.label(0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE"); + vm.label(0xF380200B115Caa22D49e6C115b758d6130377620, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE"); + vm.label(0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE"); + vm.label(0x3eF1d856EA62A2292B8690855042095a7aC48B4b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE"); + vm.label(0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE"); vm.label(0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE"); vm.label(0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE"); - vm.label( - 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE" - ); - vm.label( - 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE" - ); - vm.label( - 0x621D0e62f26314387f338A2509aFA3Ae3414661A, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE" - ); - vm.label( - 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE" - ); - vm.label( - 0x2d2261f970F605C813f160E8BAEd455E9004A842, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE" - ); - vm.label( - 0xfB788F9E20ef426a32A67986654750172A6c1788, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE" - ); - vm.label( - 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE" - ); - vm.label( - 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE" - ); - vm.label( - 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE" - ); - vm.label( - 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE" - ); - vm.label( - 0x9A576A3d39c589A861B46864C253288bcA428a6c, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE" - ); - vm.label( - 0x958815f476cD07354c0BC034EE5077B20fD93003, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE" - ); - vm.label( - 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE" - ); - vm.label( - 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE" - ); - vm.label( - 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE" - ); - vm.label( - 0x228567c10b7533C88057c10dDeA6349360F122c5, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE" - ); - vm.label( - 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE" - ); - vm.label( - 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE" - ); - vm.label( - 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE" - ); - vm.label( - 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE" - ); - vm.label( - 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE" - ); - vm.label( - 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE" - ); - vm.label( - 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE" - ); - vm.label( - 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE" - ); - vm.label( - 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, - "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE" - ); - vm.label( - 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE" - ); - vm.label( - 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE" - ); - vm.label( - 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x86E71075e55F0aaD27D700017E0783458310c98a, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE" - ); - vm.label( - 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE" - ); - vm.label( - 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE" - ); - vm.label( - 0xF887C4cFAAfB43d1AA7De204344895591016772c, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE" - ); - vm.label( - 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE" - ); - vm.label( - 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE" - ); - vm.label( - 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE" - ); - vm.label( - 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE" - ); - vm.label( - 0x27E97F35D80514D5DD1Caa730e22a292E912a214, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE" - ); - vm.label( - 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE" - ); - vm.label( - 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE" - ); - vm.label( - 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE" - ); - vm.label( - 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, - "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE" - ); + vm.label(0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE"); + vm.label(0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE"); + vm.label(0x621D0e62f26314387f338A2509aFA3Ae3414661A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE"); + vm.label(0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE"); + vm.label(0x2d2261f970F605C813f160E8BAEd455E9004A842, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE"); + vm.label(0xfB788F9E20ef426a32A67986654750172A6c1788, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE"); + vm.label(0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE"); + vm.label(0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE"); + vm.label(0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE"); + vm.label(0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE"); + vm.label(0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE"); + vm.label(0x9A576A3d39c589A861B46864C253288bcA428a6c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE"); + vm.label(0x958815f476cD07354c0BC034EE5077B20fD93003, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE"); + vm.label(0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE"); + vm.label(0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE"); + vm.label(0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE"); + vm.label(0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE"); + vm.label(0x228567c10b7533C88057c10dDeA6349360F122c5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE"); + vm.label(0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE"); + vm.label(0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE"); + vm.label(0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE"); + vm.label(0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE"); + vm.label(0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE"); + vm.label(0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE"); + vm.label(0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE"); + vm.label(0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE"); + vm.label(0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE"); + vm.label(0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE"); + vm.label(0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE"); + vm.label(0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE"); + vm.label(0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE"); + vm.label(0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE"); + vm.label(0x86E71075e55F0aaD27D700017E0783458310c98a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE"); + vm.label(0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE"); + vm.label(0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE"); + vm.label(0xF887C4cFAAfB43d1AA7De204344895591016772c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE"); + vm.label(0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE"); + vm.label(0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE"); + vm.label(0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE"); + vm.label(0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE"); + vm.label(0x27E97F35D80514D5DD1Caa730e22a292E912a214, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE"); + vm.label(0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE"); + vm.label(0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE"); + vm.label(0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE"); + vm.label(0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CREWMEMBER"); @@ -2728,7 +2729,7 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0x734fd1fD1f3720379f52cB9d8168d76Cd1ca4A73, "Constants.ETH_COMBO_ORACLE_KYBERSWAP_ELASTIC"); vm.label(0xc3a483Bb5F96bC4E6104325aa1A229A8E29166B3, "Constants.ETH_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); vm.label(0x1cBE07F3b3bf3BDe44d363cecAecfe9a98EC2dff, "Constants.ETH_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0x168200cF227D4543302686124ac28aE0eaf2cA0B, "Constants.ETH_COMPTROLLER_ADDRESS"); + vm.label(0x168200cF227D4543302686124ac28aE0eaf2cA0B, "Constants.ETH_FRAXLEND_COMPTROLLER_ADDRESS"); vm.label(0x8A2112B42AF1F997002FBAfF77dd09F42A281e8d, "Constants.ETH_CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP"); vm.label(0x45127c7fA0c3Ce6A18fEc9604D96eDfBBc8A9700, "Constants.ETH_CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP"); vm.label(0x54a3A6aFd87F10Eea4Acc2A067A2C0b612B6D315, "Constants.ETH_CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD"); @@ -2770,10 +2771,7 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_CURVE_POOL_NOT_LP"); vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_PLAIN_POOL"); vm.label(0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD, "Constants.ETH_FRAX_USD_CHAINLINK_ORACLE"); - vm.label( - 0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, - "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS" - ); + vm.label(0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS"); vm.label(0xf43211935C781D5ca1a41d2041F397B8A7366C7A, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_ERC20"); vm.label(0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577, "Constants.ETH_FRXETH_ETH_CURVE_POOL_NOT_LP"); vm.label(0xb12c19C838499E3447AFd9e59274B1BE56b1546A, "Constants.ETH_FRXETH_ETH_DUAL_ORACLE_ADDRESS"); @@ -2833,16 +2831,10 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0x9599033315C29Be9690b716bFE409381426dAD41, "Constants.ETH_VARIABLE_RATE_STABLE_ADDRESS"); vm.label(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599, "Constants.ETH_WBTC_ERC20"); vm.label(0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC, "Constants.ETH_WBTC_SFRAX_INVERSE_DUAL_ORACLE"); - vm.label( - 0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, - "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK" - ); + vm.label(0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); vm.label(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, "Constants.ETH_WETH_ERC20"); vm.label(0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A, "Constants.ETH_WETH_FRAX_V3_POOL"); - vm.label( - 0x1cA1350F67575B0beE44EC9DC6725A4032431F33, - "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK" - ); + vm.label(0x1cA1350F67575B0beE44EC9DC6725A4032431F33, "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); vm.label(0xE0554a476A092703abdB3Ef35c80e0D76d32939F, "Constants.ETH_WETH_USDC_V3_POOL"); vm.label(0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0, "Constants.ETH_WSTETH_ERC20"); vm.label(0xe73375f36A1b17A21d7Aa0fDa092195431e7017a, "Constants.ETH_WSTETH_USD_DUAL_ORACLE_ADDRESS"); @@ -2859,9 +2851,9 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0x82Ec28636B77661a95f021090F6bE0C8d379DD5D, "Constants.ETH_FRAXLEND_PAIR_MKR_FRAX"); vm.label(0xc6CadA314389430d396C7b0C70c6281e99ca7fe8, "Constants.ETH_FRAXLEND_PAIR_UNI_FRAX"); vm.label(0xc779fEE076EB04b9F8EA424ec19DE27Efd17A68d, "Constants.ETH_FRAXLEND_PAIR_AAVE_FRAX"); - vm.label(0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF, "Constants.ETH_FRAXLEND_PAIR_FXB06302024_FRAX"); - vm.label(0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a, "Constants.ETH_FRAXLEND_PAIR_FXB12312024_FRAX"); - vm.label(0x1c0C222989a37247D974937782cebc8bF4f25733, "Constants.ETH_FRAXLEND_PAIR_FXB12312026_FRAX"); + vm.label(0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF, "Constants.ETH_FRAXLEND_PAIR_FXB_20240630_FRAX"); + vm.label(0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a, "Constants.ETH_FRAXLEND_PAIR_FXB_20241231_FRAX"); + vm.label(0x1c0C222989a37247D974937782cebc8bF4f25733, "Constants.ETH_FRAXLEND_PAIR_FXB_20261231_FRAX"); vm.label(0xeE847a804b67f4887c9E8fe559A2dA4278deFB52, "Constants.ETH_FRAXLEND_PAIR_SFRXETH_USDC"); vm.label(0x7093F6141293F7C4F67E5efD922aC934402E452d, "Constants.ETH_FRAXLEND_PAIR_LINK_FRAX"); vm.label(0xb5a46f712F03808aE5c4B885C6F598fA06442684, "Constants.ETH_FRAXLEND_PAIR_WSTETH_FRAX"); @@ -3041,6 +3033,7 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0x874a873e4891fB760EdFDae0D26cA2c00922C404, "Constants.ETH_ADVISORS_MULTISIG"); vm.label(0x733371d7C15ACECF9e120dd037D6BcDb6E069148, "Constants.ETH_BEE_USER"); vm.label(0x63278bF9AcdFC9fA65CFa2940b89A34ADfbCb4A1, "Constants.ETH_COMMUNITY_MULTISIG"); + vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_COMPTROLLER"); vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_COMPTROLLER_MULTISIG"); vm.label(0x8D8Cb63BcB8AD89Aa750B9f80Aa8Fa4CfBcC8E0C, "Constants.ETH_CURVEAMO_OPERATOR_ADDRESS"); vm.label(0x6A7efa964Cf6D9Ab3BC3c47eBdDB853A8853C502, "Constants.ETH_FPI_COMPTROLLER_MULTISIG"); @@ -3486,22 +3479,52 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0xC36442b4a4522E871399CD717aBDD847Ab11FE88, "Constants.ETH_NON_FUNGIBLE_POSITION_MANAGER"); vm.label(0xE592427A0AEce92De3Edee1F18E0157C05861564, "Constants.ETH_SWAPROUTER"); vm.label(0x1F98431c8aD98523631AE4a59f267346ea31F984, "Constants.ETH_UNISWAP_V3_FACTORY"); + vm.label(0x9033BAD7aA130a2466060A2dA71fAe2219781B4b, "Constants.ETH_FPIOFT"); + vm.label(0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6, "Constants.ETH_FRXETHOFT"); + vm.label(0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0, "Constants.ETH_FRXUSDOFT"); + vm.label(0xbBc424e58ED38dd911309611ae2d7A23014Bd960, "Constants.ETH_SFRXETHOFT"); + vm.label(0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126, "Constants.ETH_SFRXUSDOFT"); + vm.label(0x04ACaF8D2865c0714F79da09645C13FD2888977f, "Constants.ETH_WFRAXOFT"); + vm.label(0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E, "Constants.ETH_REMOTEHOP"); + vm.label(0x99B5587ab54A49e3F827D10175Caf69C0187bfA8, "Constants.ETH_REMOTEMINTREDEEMHOP"); } } +library Mode { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x486cb4788f1be7cdef9301a7a637b451df3cf262; + address internal constant REMOTEMINTREDEEMHOP = 0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9; +} + +abstract contract AddressHelperMode is TestBase { + constructor() { + labelConstants(); + } + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); + vm.label(0x486cb4788f1be7cdef9301a7a637b451df3cf262, "Constants.undefined_REMOTEHOP"); + vm.label(0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9, "Constants.undefined_REMOTEMINTREDEEMHOP"); + } +} library Moonbeam { address internal constant FRAX = 0x322E86852e492a7Ee17f28a78c663da38FB33bfb; address internal constant FXS = 0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C; address internal constant FRXETH = 0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99; address internal constant SFRXETH = 0xecf91116348aF1cfFe335e9807f0051332BE128D; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = - 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = - 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = - 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = - 0x78348E58582d0D1789da1621B79Fc62012485CAe; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = 0x78348E58582d0D1789da1621B79Fc62012485CAe; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3532,22 +3555,10 @@ abstract contract AddressHelperMoonbeam is TestBase { vm.label(0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C, "Constants.MNBM_FXS"); vm.label(0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99, "Constants.MNBM_FRXETH"); vm.label(0xecf91116348aF1cfFe335e9807f0051332BE128D, "Constants.MNBM_SFRXETH"); - vm.label( - 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, - "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE" - ); - vm.label( - 0x1E87990678f640BFfe5A118c331fEc296DDC8d89, - "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE" - ); - vm.label( - 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, - "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE" - ); - vm.label( - 0x78348E58582d0D1789da1621B79Fc62012485CAe, - "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE" - ); + vm.label(0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE"); + vm.label(0x1E87990678f640BFfe5A118c331fEc296DDC8d89, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE"); + vm.label(0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE"); + vm.label(0x78348E58582d0D1789da1621B79Fc62012485CAe, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CREWMEMBER"); @@ -3568,14 +3579,11 @@ abstract contract AddressHelperMoonbeam is TestBase { vm.label(0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04, "Constants.MNBM_ZENLINK_CANFRAX_WGLMR"); } } - library Moonriver { address internal constant FRAX = 0x1A93B23281CC1CDE4C4741353F3064709A16197d; address internal constant FXS = 0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = - 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = - 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3609,14 +3617,8 @@ abstract contract AddressHelperMoonriver is TestBase { function labelConstants() public { vm.label(0x1A93B23281CC1CDE4C4741353F3064709A16197d, "Constants.MOVR_FRAX"); vm.label(0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98, "Constants.MOVR_FXS"); - vm.label( - 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, - "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE" - ); - vm.label( - 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, - "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE" - ); + vm.label(0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE"); + vm.label(0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CREWMEMBER"); @@ -3642,7 +3644,6 @@ abstract contract AddressHelperMoonriver is TestBase { vm.label(0xc0EAB66DaDC825c95cA1951A2B02BC56073Fc7B2, "Constants.MOVR_SUSHI_CANFXS_ANYUSDC"); } } - library Optimism { address internal constant FRAX = 0x2E3D870790dC77A83DD1d18184Acc7439A53f475; address internal constant FXS = 0x67CCEA5bb16181E7b4109c9c2143c24a1c2205Be; @@ -3651,20 +3652,13 @@ library Optimism { address internal constant FRXETH = 0x6806411765Af15Bddd26f8f544A34cC40cb9838B; address internal constant SFRXETH = 0x484c2D6e3cDd945a8B2DF735e079178C1036578c; address internal constant SFRAX = 0x2Dd1B4D4548aCCeA497050619965f91f78b3b532; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = - 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = - 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = - 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = - 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = - 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = - 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = - 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3688,6 +3682,14 @@ library Optimism { address internal constant FPI_COMPTROLLER = 0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635; address internal constant CURVE_4POOL = 0x3da3153E26A230d918bb9F9428A8d60349B73379; address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = 0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x31D982ebd82Ad900358984bd049207A4c2468640; + address internal constant REMOTEMINTREDEEMHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; } abstract contract AddressHelperOptimism is TestBase { @@ -3703,34 +3705,13 @@ abstract contract AddressHelperOptimism is TestBase { vm.label(0x6806411765Af15Bddd26f8f544A34cC40cb9838B, "Constants.OPTI_FRXETH"); vm.label(0x484c2D6e3cDd945a8B2DF735e079178C1036578c, "Constants.OPTI_SFRXETH"); vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.OPTI_SFRAX"); - vm.label( - 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, - "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE" - ); - vm.label( - 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, - "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE" - ); - vm.label( - 0x053F082f3bC0C48B8409970c017b4F2a6f673e16, - "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE" - ); - vm.label( - 0xB84E29042Bfb489439949a79aed8a0e156169Ae5, - "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE" - ); - vm.label( - 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, - "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE" - ); - vm.label( - 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, - "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE" - ); - vm.label( - 0xD1738eB733A636d1b8665f48bC8a24dA889c2562, - "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE" - ); + vm.label(0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE"); + vm.label(0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE"); + vm.label(0x053F082f3bC0C48B8409970c017b4F2a6f673e16, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE"); + vm.label(0xB84E29042Bfb489439949a79aed8a0e156169Ae5, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE"); + vm.label(0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE"); + vm.label(0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE"); + vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CREWMEMBER"); @@ -3754,9 +3735,43 @@ abstract contract AddressHelperOptimism is TestBase { vm.label(0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635, "Constants.OPTI_FPI_COMPTROLLER"); vm.label(0x3da3153E26A230d918bb9F9428A8d60349B73379, "Constants.OPTI_CURVE_4POOL"); vm.label(0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197, "Constants.OPTI_KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.OPTI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.OPTI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.OPTI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.OPTI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.OPTI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.OPTI_WFRAXOFT"); + vm.label(0x31D982ebd82Ad900358984bd049207A4c2468640, "Constants.OPTI_REMOTEHOP"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.OPTI_REMOTEMINTREDEEMHOP"); } } +library Plumephoenix { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; + address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; +} +abstract contract AddressHelperPlumephoenix is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.PLUME_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.PLUME_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.PLUME_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.PLUME_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.PLUME_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.PLUME_WFRAXOFT"); + vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.PLUME_REMOTEHOP"); + vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.PLUME_REMOTEMINTREDEEMHOP"); + } +} library Polygon { address internal constant FRAX = 0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89; address internal constant FXS = 0x1a3acf6D19267E2d3e7f898f42803e90C9219062; @@ -3772,14 +3787,10 @@ library Polygon { address internal constant DUMMY_TKN = 0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89; address internal constant FERRY_TO_ARBITRUM = 0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = - 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = - 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = - 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = - 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; address internal constant COMBO_ORACLE = 0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3; address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020; address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; @@ -3803,6 +3814,14 @@ library Polygon { address internal constant DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = 0xfC2e89aabD257471a461dd506188609B2Bec53Fa; address internal constant FRAX3POOL = 0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac; address internal constant HOP_LP_USDC = 0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C; + address internal constant REMOTEMINTREDEEMHOP = 0x5658e82E330e094627D9b362ed0E137eA06673C4; } abstract contract AddressHelperPolygon is TestBase { @@ -3825,22 +3844,10 @@ abstract contract AddressHelperPolygon is TestBase { vm.label(0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89, "Constants.POLY_DUMMY_TKN"); vm.label(0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0, "Constants.POLY_FERRY_TO_ARBITRUM"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_FIRST_OFFICER"); - vm.label( - 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, - "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE" - ); - vm.label( - 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, - "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE" - ); - vm.label( - 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, - "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE" - ); - vm.label( - 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, - "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE" - ); + vm.label(0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE"); + vm.label(0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE"); + vm.label(0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE"); + vm.label(0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE"); vm.label(0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3, "Constants.POLY_COMBO_ORACLE"); vm.label(0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020, "Constants.POLY_COMBO_ORACLE_UNIV2_UNIV3"); vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.POLY_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); @@ -3864,9 +3871,16 @@ abstract contract AddressHelperPolygon is TestBase { vm.label(0xfC2e89aabD257471a461dd506188609B2Bec53Fa, "Constants.POLY_DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX"); vm.label(0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac, "Constants.POLY_FRAX3POOL"); vm.label(0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A, "Constants.POLY_HOP_LP_USDC"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_WFRAXOFT"); + vm.label(0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C, "Constants.POLY_REMOTEHOP"); + vm.label(0x5658e82E330e094627D9b362ed0E137eA06673C4, "Constants.POLY_REMOTEMINTREDEEMHOP"); } } - library PolygonzkEVM { address internal constant FRAX = 0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D; address internal constant FXS = 0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE; @@ -3875,25 +3889,26 @@ library PolygonzkEVM { address internal constant FRXETH = 0xCf7eceE185f19e2E970a301eE37F93536ed66179; address internal constant SFRXETH = 0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04; address internal constant SFRAX = 0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = - 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = - 0x96720C1E893bB69C14291d8a85475ED9BC484b26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = - 0xA31001fbe938C520C27204b984817d998bAeA885; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = - 0x3d1bc21F8991091538FfEf535Fe96A449794461C; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = - 0xA711F85672899331900359e5b89848A30BeEBDBe; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = - 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = - 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = 0x96720C1E893bB69C14291d8a85475ED9BC484b26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = 0xA31001fbe938C520C27204b984817d998bAeA885; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = 0x3d1bc21F8991091538FfEf535Fe96A449794461C; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = 0xA711F85672899331900359e5b89848A30BeEBDBe; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant COMBO_ORACLE = 0x030BD43af99cb72B51dA233A73F7697Cd2461C0b; address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; + address internal constant REMOTEMINTREDEEMHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; } abstract contract AddressHelperPolygonzkEVM is TestBase { @@ -3902,45 +3917,229 @@ abstract contract AddressHelperPolygonzkEVM is TestBase { } function labelConstants() public { - vm.label(0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D, "Constants.POLYZKEVM_FRAX"); - vm.label(0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE, "Constants.POLYZKEVM_FXS"); - vm.label(0x7E5845b1bFc9e6620893e48346bdB8541995a8D9, "Constants.POLYZKEVM_FPI"); - vm.label(0xdE7df9036801676aF0cB73661d93a098c0085fba, "Constants.POLYZKEVM_FPIS"); - vm.label(0xCf7eceE185f19e2E970a301eE37F93536ed66179, "Constants.POLYZKEVM_FRXETH"); - vm.label(0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04, "Constants.POLYZKEVM_SFRXETH"); - vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.POLYZKEVM_SFRAX"); - vm.label( - 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, - "Constants.POLYZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE" - ); - vm.label( - 0x96720C1E893bB69C14291d8a85475ED9BC484b26, - "Constants.POLYZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE" - ); - vm.label( - 0xA31001fbe938C520C27204b984817d998bAeA885, - "Constants.POLYZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE" - ); - vm.label( - 0x3d1bc21F8991091538FfEf535Fe96A449794461C, - "Constants.POLYZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE" - ); - vm.label( - 0xA711F85672899331900359e5b89848A30BeEBDBe, - "Constants.POLYZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE" - ); - vm.label( - 0x4DB406906835ca0B28bFbef344c7d2C707BC4947, - "Constants.POLYZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE" - ); - vm.label( - 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, - "Constants.POLYZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE" - ); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLYZKEVM_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLYZKEVM_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLYZKEVM_CREWMEMBER"); - vm.label(0x030BD43af99cb72B51dA233A73F7697Cd2461C0b, "Constants.POLYZKEVM_COMBO_ORACLE"); - vm.label(0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D, "Constants.POLYZKEVM_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D, "Constants.POLY_ZKEVM_FRAX"); + vm.label(0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE, "Constants.POLY_ZKEVM_FXS"); + vm.label(0x7E5845b1bFc9e6620893e48346bdB8541995a8D9, "Constants.POLY_ZKEVM_FPI"); + vm.label(0xdE7df9036801676aF0cB73661d93a098c0085fba, "Constants.POLY_ZKEVM_FPIS"); + vm.label(0xCf7eceE185f19e2E970a301eE37F93536ed66179, "Constants.POLY_ZKEVM_FRXETH"); + vm.label(0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04, "Constants.POLY_ZKEVM_SFRXETH"); + vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.POLY_ZKEVM_SFRAX"); + vm.label(0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE"); + vm.label(0x96720C1E893bB69C14291d8a85475ED9BC484b26, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE"); + vm.label(0xA31001fbe938C520C27204b984817d998bAeA885, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE"); + vm.label(0x3d1bc21F8991091538FfEf535Fe96A449794461C, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE"); + vm.label(0xA711F85672899331900359e5b89848A30BeEBDBe, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE"); + vm.label(0x4DB406906835ca0B28bFbef344c7d2C707BC4947, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE"); + vm.label(0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CREWMEMBER"); + vm.label(0x030BD43af99cb72B51dA233A73F7697Cd2461C0b, "Constants.POLY_ZKEVM_COMBO_ORACLE"); + vm.label(0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D, "Constants.POLY_ZKEVM_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_ZKEVM_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_ZKEVM_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_ZKEVM_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_ZKEVM_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_ZKEVM_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_ZKEVM_WFRAXOFT"); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.POLY_ZKEVM_REMOTEHOP"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.POLY_ZKEVM_REMOTEMINTREDEEMHOP"); + } +} +library Scroll { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xf6f45ccb5e85d1400067ee66f9e168f83e86124e; + address internal constant REMOTEMINTREDEEMHOP = 0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558; +} + +abstract contract AddressHelperScroll is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SCROLL_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SCROLL_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SCROLL_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SCROLL_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SCROLL_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SCROLL_WFRAXOFT"); + vm.label(0xf6f45ccb5e85d1400067ee66f9e168f83e86124e, "Constants.SCROLL_REMOTEHOP"); + vm.label(0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558, "Constants.SCROLL_REMOTEMINTREDEEMHOP"); + } +} +library Solana { + string internal constant FPIOFT = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH"; + string internal constant FRXETHOFT = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf"; + string internal constant FRXUSDOFT = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw"; + string internal constant SFRXETHOFT = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv"; + string internal constant SFRXUSDOFT = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45"; + string internal constant WFRAXOFT = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga"; + bytes32 internal constant FPIOFT_BYTES32 = 0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0; + bytes32 internal constant FRXETHOFT_BYTES32 = 0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3; + bytes32 internal constant FRXUSDOFT_BYTES32 = 0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad; + bytes32 internal constant SFRXETHOFT_BYTES32 = 0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61; + bytes32 internal constant SFRXUSDOFT_BYTES32 = 0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf; + bytes32 internal constant WFRAXOFT_BYTES32 = 0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa; +} + +abstract contract AddressHelperSolana is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH, "Constants.SOL_FPIOFT"); + vm.label(5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf, "Constants.SOL_FRXETHOFT"); + vm.label(GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw, "Constants.SOL_FRXUSDOFT"); + vm.label(58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv, "Constants.SOL_SFRXETHOFT"); + vm.label(DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45, "Constants.SOL_SFRXUSDOFT"); + vm.label(zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga, "Constants.SOL_WFRAXOFT"); + vm.label(0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0, "Constants.SOL_FPIOFT_BYTES32"); + vm.label(0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3, "Constants.SOL_FRXETHOFT_BYTES32"); + vm.label(0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad, "Constants.SOL_FRXUSDOFT_BYTES32"); + vm.label(0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61, "Constants.SOL_SFRXETHOFT_BYTES32"); + vm.label(0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf, "Constants.SOL_SFRXUSDOFT_BYTES32"); + vm.label(0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa, "Constants.SOL_WFRAXOFT_BYTES32"); + } +} +library Sonic { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23; + address internal constant REMOTEMINTREDEEMHOP = 0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b; +} + +abstract contract AddressHelperSonic is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SONIC_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SONIC_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SONIC_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SONIC_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SONIC_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SONIC_WFRAXOFT"); + vm.label(0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23, "Constants.SONIC_REMOTEHOP"); + vm.label(0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b, "Constants.SONIC_REMOTEMINTREDEEMHOP"); + } +} +library Unichain { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; + address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; +} + +abstract contract AddressHelperUnichain is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.UNI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.UNI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.UNI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.UNI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.UNI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.UNI_WFRAXOFT"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.UNI_REMOTEHOP"); + vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.UNI_REMOTEMINTREDEEMHOP"); + } +} +library Worldchain { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x938d99A81814f66b01010d19DDce92A633441699; + address internal constant REMOTEMINTREDEEMHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; +} + +abstract contract AddressHelperWorldchain is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.WRLD_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.WRLD_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.WRLD_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.WRLD_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.WRLD_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.WRLD_WFRAXOFT"); + vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.WRLD_REMOTEHOP"); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.WRLD_REMOTEMINTREDEEMHOP"); + } +} +library XLayer { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396; + address internal constant REMOTEMINTREDEEMHOP = 0x45c6852a5188ce1905567ea83454329bd4982007; +} + +abstract contract AddressHelperXLayer is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.XLAYER_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.XLAYER_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.XLAYER_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.XLAYER_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.XLAYER_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.XLAYER_WFRAXOFT"); + vm.label(0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396, "Constants.XLAYER_REMOTEHOP"); + vm.label(0x45c6852a5188ce1905567ea83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); + } +} +library ZkSync { + address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; + address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; + address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; + address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; + address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; + address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; + address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; + address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; +} + +abstract contract AddressHelperZkSync is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.undefined_FPIOFT"); + vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.undefined_FRXETHOFT"); + vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.undefined_FRXUSDOFT"); + vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.undefined_SFRXETHOFT"); + vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.undefined_SFRXUSDOFT"); + vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.undefined_WFRAXOFT"); + vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.undefined_REMOTEHOP"); + vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.undefined_REMOTEMINTREDEEMHOP"); } } diff --git a/src/Constants1.sol b/src/Constants1.sol new file mode 100644 index 0000000..219fe9d --- /dev/null +++ b/src/Constants1.sol @@ -0,0 +1,4145 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + + library Abstract { + address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; + address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; + address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; + address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; + address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; + address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; + address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; + address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; +} + +abstract contract AddressHelperAbstract is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.ABS_FPIOFT"); + vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.ABS_FRXETHOFT"); + vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.ABS_FRXUSDOFT"); + vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.ABS_SFRXETHOFT"); + vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.ABS_SFRXUSDOFT"); + vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.ABS_WFRAXOFT"); + vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.ABS_REMOTEHOP"); + vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.ABS_REMOTEMINTREDEEMHOP"); + } +} +library Aptos { + address internal constant FPI = 0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2; + address internal constant FRXETH = 0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585; + address internal constant FRXUSD = 0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5; + address internal constant SFRXETH = 0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a; + address internal constant SFRXUSD = 0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2; + address internal constant WFRAX = 0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300; + address internal constant FPIOFT = 0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864; + address internal constant FRXETHOFT = 0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c; + address internal constant FRXUSDOFT = 0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b; + address internal constant SFRXETHOFT = 0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356; + address internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; + address internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; +} + +abstract contract AddressHelperAptos is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2, "Constants.APT_FPI"); + vm.label(0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585, "Constants.APT_FRXETH"); + vm.label(0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5, "Constants.APT_FRXUSD"); + vm.label(0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a, "Constants.APT_SFRXETH"); + vm.label(0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2, "Constants.APT_SFRXUSD"); + vm.label(0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300, "Constants.APT_WFRAX"); + vm.label(0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864, "Constants.APT_FPIOFT"); + vm.label(0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c, "Constants.APT_FRXETHOFT"); + vm.label(0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b, "Constants.APT_FRXUSDOFT"); + vm.label(0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356, "Constants.APT_SFRXETHOFT"); + vm.label(0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9, "Constants.APT_SFRXUSDOFT"); + vm.label(0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2, "Constants.APT_WFRAXOFT"); + } +} +library Arbitrum { + address internal constant FRAX = 0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F; + address internal constant FXS = 0x9d2F299715D94d8A7E6F5eaa8E654E8c74a988A7; + address internal constant FPI = 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09; + address internal constant FPIS = 0x3405E88af759992937b84E58F2Fe691EF0EeA320; + address internal constant FRXETH = 0x178412e79c25968a32e89b11f63B33F733770c2A; + address internal constant SFRXETH = 0x95aB45875cFFdba1E5f451B950bC2E42c0053f39; + address internal constant SFRAX = 0xe3b3FE7bcA19cA77Ad877A5Bebab186bEcfAD906; + address internal constant ARBIDEX_FRAX_DAI_PLUS = 0x56328f7138C3A4ebD2Bb1D126d28f62FcD5bac5d; + address internal constant ARBIDEX_FRAX_FRXETH = 0x436eE91dB228267c6a19b2A3F158fffCe5a4489c; + address internal constant ARBIDEX_FRAX_USD_PLUS = 0xe876230251cc14Ec0027b2a4aFc46B4c262d13D0; + address internal constant ARBIDEX_FRAX_USDCE = 0x11205af33F2F7006bB932953b10Ab5EeD78105Ca; + address internal constant ARBIDEX_FRAX_WETH = 0xf0677E33Fa38A023ec798F97D195d85d19823e7C; + address internal constant ARBIDEX_FRXETH_WETH = 0xc74c0Fcb777521F3D8747f338a024e9F3fD91608; + address internal constant CHRONOS_SAMM_FRAX_MAI = 0x1371512f45d85e6247aBfA2926Ac5213324a6BEB; + address internal constant CHRONOS_SAMM_FRAX_USD_PLUS = 0xaF618E6F5EF781e3aCFe00708BD005E0cc9A2e6F; + address internal constant CHRONOS_SAMM_FRXETH_SFRXETH = 0x548e0D4Fcb6b82a025E6770066b4127C5FCcBF07; + address internal constant CHRONOS_SAMM_FRXETH_WETH = 0x9A028F3Dd7067479b51ee89CDb0Db594744ebfAd; + address internal constant CONVEX_FRAXBP_ARBITRUM = 0x421Efd53FA0d90687db5ef370D5DCD7f89CbD9dE; + address internal constant CONVEX_FRAX_FXB_20241231_ARBITRUM = 0xB8c52da3db9EdF9Da6a20959410B007a2387E5a2; + address internal constant CONVEX_FRAX_FXB_20261231_ARBITRUM = 0xA81F4b86B412CcB51C7420000F59a639F3459f49; + address internal constant CONVEX_FRXETH_WETH_ARBITRUM = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; + address internal constant CONVEX_HFXB_FRAX_ARBITRUM = 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; + address internal constant CONVEX_USD_PLUS_FRAXBP = 0x56390acF12bce9675ab3922060D8d955149BE286; + address internal constant CURVE_VSTFRAX_F = 0x127963A74c07f72D862F2Bdc225226c3251BD117; + address internal constant DFORCE_FRAX_LENDING_ARBITRUM = 0xb3ab7148cCCAf66686AD6C1bE24D83e58E6a504e; + address internal constant HUNDRED_FRAX_LENDING_ARBITRUM = 0xd7f3Bf2085AD32ff95E1bCC408d37F10f6949270; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = 0xbAFA44EFE7901E04E39Dad13167D089C559c1138; + address internal constant RAMSES_CRAMM_FRAX_DOLA = 0xF8719BC4a1A81969F00233a8D9409755d4366d28; + address internal constant RAMSES_CRAMM_FRAX_MAI = 0x385E1c3f90C52f5253EaBb015576E95a4886E552; + address internal constant RAMSES_CRAMM_FRAX_USDC = 0x22B6C54dC1cCD6CDF53723BEc88327c908258367; + address internal constant RAMSES_CRAMM_FRXETH_SFRXETH = 0x11C1060e12F3Ec480D47AD867583353496a1B0b8; + address internal constant RAMSES_CRAMM_FRXETH_WETH = 0x148Ca200d452AD9F310501ca3fd5C3bD4a5aBe81; + address internal constant RAMSES_VRAMM_FRAX_AGEUR = 0x0A923435Eb4C3FC740bbA0c000F16Cb1F6cd7Afb; + address internal constant RAMSES_VRAMM_FRAX_FXS = 0xdf725A7315d3d246a39C8887870f6cb0Fe73e36d; + address internal constant SADDLE_ARBUSD_V2_ARBITRUM = 0x6e1af6FB2B4006603c65dD8FC7796Ccff09c86a1; + address internal constant SADDLE_FRAXBP_USDS_ARBITRUM = 0x289532cA1DccE36D05e19Af468EC46fc9CB1390E; + address internal constant SADDLE_FRAXBP_USDT_ARBITRUM = 0xb306b7E9D895748A2779586C83112035D8223C7F; + address internal constant SADDLE_FRAXBP_USX_ARBITRUM = 0x0A18D5679C5c8b56Da0D87E308DB9EE2db701BaC; + address internal constant SADDLE_FRAX_USDC_BP_ARBITRUM = 0xBBcaeA4e732173C0De28397421c17A595372C9CF; + address internal constant SADDLE_L2D4_ARBITRUM = 0xd1dF24e8D225b20F9c8f4912BE88cCCec93f36E5; + address internal constant SENTIMENT_LFRAX = 0xcdE7054e7a232938CdDe8BF40faf827e6f377f54; + address internal constant STARGATE_BRIDGE_LIQUIDITY_FRAX_ARBITRUM = 0xeA8DfEE1898a7e0a59f7527F076106d7e44c2176; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FERRY_TO_POLYGON = 0xe57314D4405289FfC91306E4574C28b7394c4822; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = 0x078Dd77De4e0f480D7442495d55707cE071B4B09; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; + address internal constant FRAXLEND_WHITELIST_ADDRESS = 0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079; + address internal constant FRAXLEND_HOT_WALLET = 0xdB3388e770F49A604E11f1a2084B39279492a61f; + address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d; + address internal constant FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = 0xc70CC721d19dC7e627B81fEacb6a357Fb11200Af; + address internal constant FRAXLEND_PAIR_ARB_FRAX = 0x2D0483FefAbA4325c7521539a3DFaCf94A19C472; + address internal constant ARBITRUM_DUAL_ORACLE_ADDRESS = 0x5985FBb03b6A5EA390871c2bB9742cD406575667; + address internal constant ARB_ETH_UNI_V3_POOL = 0xC6F780497A95e246EB9449f5e4770916DCd6396A; + address internal constant ARB_USD_CHAINLINK_ORACLE = 0xb2A824043730FE05F3DA2efaFa1CBbe83fa548D6; + address internal constant ETH_USD_CHAINLINK_ORACLE = 0x639Fe6ab55C921f74e7fac1ee960C0B6293ba612; + address internal constant ARB_ERC20 = 0x912CE59144191C1204E64559FE8253a0e49E6548; + address internal constant WETH_ERC20 = 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1; + address internal constant FRAX_ERC20 = 0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F; + address internal constant VARIABLE_RATE_V2 = 0x6c1b76Ca12d74970d40Aec4d6f2E3A653CC58685; + address internal constant FRAXLEND_PAIR_GMX_FRAX = 0x6076ebDFE17555ed3E6869CF9C373Bbd9aD55d38; + address internal constant GMX_DUAL_ORACLE_ADDRESS = 0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3; + address internal constant GMX_ERC20 = 0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a; + address internal constant FRAXLENDPAIR_WBTC_FRAX = 0x9168AC3a83A31bd85c93F4429a84c05db2CaEF08; + address internal constant WBTC_DUAL_ORACLE_ADDRESS = 0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617; + address internal constant WBTC_ERC20 = 0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f; + address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; + address internal constant FRAXSWAP_FACTORY_V2 = 0x8374A74A728f06bEa6B7259C68AA7BBB732bfeaD; + address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; + address internal constant FRAXSWAP_ROUTER_V2 = 0xCAAaB0A72f781B92bA63Af27477aA46aB8F653E7; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; + address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; + address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; + address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; + address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; + address internal constant FRAX_AMO_MINTER_LAYER_2 = 0x1c5400491fE82EE8FC21489C51e402B3c8a2fB81; + address internal constant FRAXLEND_AMO = 0xCDeE1B853AD2E96921250775b7A60D6ff78fD8B4; + address internal constant CIRCUIT_BREAKER_ADDRESS = 0xDF85346111C0F9680a77d4c496b6fd5278516fa6; + address internal constant FPI_COMPTROLLER = 0xF0D5007dB0393c9D5F6A88A5F82Df520EA483fDb; + address internal constant FRAXLEND_COMPTROLLER_ADDRESS = 0x0B6A2B7fc025ce864A7CBF9df6e940C614C31f74; + address internal constant FRAX_MASTER_MULTISIG_ADDRESS = 0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10; + address internal constant MAIN_COMPTROLLER = 0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10; + address internal constant TIMELOCK_ADDRESS = 0xB426B13372B7c967C4a2371B5e95FC7dc37545Db; + address internal constant CURVE4POOL = 0x1C5ffa4FB4907B681c61B8c82b28C4672ceb1974; + address internal constant CVXFRAXBP = 0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0; + address internal constant CVXFRAXBP_REWARDER = 0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0; + address internal constant CVXFRAXFXB_20241231_ARBITRUM = 0xCDA69af1077765a89eA156aCe7a6f8b476e4aF12; + address internal constant CVXFRAXFXB_20261231_ARBITRUM = 0x2026681d569f80aE0A86D7c90bc81065D9A3AD42; + address internal constant CVXFRXETHWETH = 0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3; + address internal constant CVXFRXETHWETH_REWARDER = 0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3; + address internal constant CVXHFXBFRAX = 0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6; + address internal constant CVXHFXBFRAX_REWARDER = 0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6; + address internal constant CVXUSDPLUSFRAXBP = 0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9; + address internal constant CVXUSDPLUSFRAXBP_REWARDER = 0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9; + address internal constant FRAX2POOL = 0xf07d553B195080F84F582e88ecdD54bAa122b279; + address internal constant FRAXBP = 0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5; + address internal constant FRAXBP_GAUGE = 0x95285Ea6fF14F80A2fD3989a6bAb993Bd6b5fA13; + address internal constant FRAXBP_POOL = 0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5; + address internal constant FRAXFXB_20241231 = 0xE920eEdAff6c3BEd1Ef61010B64d46986634E908; + address internal constant FRAXFXB_20241231_GAUGE = 0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68; + address internal constant FRAXFXB_20241231_POOL = 0xE920eEdAff6c3BEd1Ef61010B64d46986634E908; + address internal constant FRAXFXB_20261231 = 0x946adc524BD312D036776798c46ceDD948DD0A0f; + address internal constant FRAXFXB_20261231_GAUGE = 0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9; + address internal constant FRAXFXB_20261231_POOL = 0x946adc524BD312D036776798c46ceDD948DD0A0f; + address internal constant FRXETHWETH = 0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523; + address internal constant FRXETHWETH_GAUGE = 0x46FEc59Eb30C2D610917ebf4CE5114f7425b2c4A; + address internal constant FRXETHWETH_POOL = 0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523; + address internal constant HFRAX = 0xb1c4426C86082D91a6c097fC588E5D5d8dD1f5a8; + address internal constant HFXBFRAX = 0x8f5d46267EB52F3aA6E141004A781469D445888c; + address internal constant HFXBFRAX_GAUGE = 0x725E997571F4fD144bB741762E8fA9f1D11761a7; + address internal constant HFXBFRAX_POOL = 0x8f5d46267EB52F3aA6E141004A781469D445888c; + address internal constant LFRAX = 0x2E9963ae673A885b6bfeDa2f80132CE28b784C40; + address internal constant SADDLEARBUSDV2 = 0x0a20c2FFa10cD43F67D06170422505b7D6fC0953; + address internal constant SADDLEL2D4 = 0x147D0Af556C6D89640BFa915D2b9619d7b55947a; + address internal constant SADDLEL2D4_PERMISSIONLESS_SWAP = 0xF2839E0b30B5e96083085F498b14bbc12530b734; + address internal constant SDL_ARBUSDV2 = 0x0a20c2FFa10cD43F67D06170422505b7D6fC0953; + address internal constant SDL_ARBUSDV2_POOL = 0xfeEa4D1BacB0519E8f952460A70719944fe56Ee0; + address internal constant SDL_FRAXBP = 0x896935B02D3cBEb152192774e4F1991bb1D2ED3f; + address internal constant SDL_FRAXBP_POOL = 0x401AFbc31ad2A3Bc0eD8960d63eFcDEA749b4849; + address internal constant SDL_USDSFRAXBP = 0x1e491122f3C096392b40a4EA27aa1a29360d38a1; + address internal constant SDL_USDSFRAXBP_POOL = 0xa5bD85ed9fA27ba23BfB702989e7218E44fd4706; + address internal constant SDL_USDTFRAXBP = 0x166680852ae9Dec3d63374c5eBf89E974448BFE9; + address internal constant SDL_USDTFRAXBP_POOL = 0xf8504e92428d65E56e495684A38f679C1B1DC30b; + address internal constant SDL_USXFRAXBP = 0x721DaC7d5ACc8Aa62946fd583C1F999e1570b97D; + address internal constant SDL_USXFRAXBP_POOL = 0xb2a2764D0DCAB445E24f4b813bE3f6ef8AE5f84D; + address internal constant USDPLUSFRAXBP = 0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013; + address internal constant USDPLUSFRAXBP_GAUGE = 0x4645e6476D3A5595Be9Efd39426cc10586a8393D; + address internal constant USDPLUSFRAXBP_POOL = 0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013; + address internal constant VECHR = 0x9A01857f33aa382b1d5bb96C3180347862432B0d; + address internal constant VERAM = 0xAAA343032aA79eE9a6897Dab03bef967c3289a06; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A; + address internal constant REMOTEMINTREDEEMHOP = 0xa46A266dCBf199a71532c76967e200994C5A0D6d; +} + +abstract contract AddressHelperArbitrum is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F, "Constants.ARBI_FRAX"); + vm.label(0x9d2F299715D94d8A7E6F5eaa8E654E8c74a988A7, "Constants.ARBI_FXS"); + vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.ARBI_FPI"); + vm.label(0x3405E88af759992937b84E58F2Fe691EF0EeA320, "Constants.ARBI_FPIS"); + vm.label(0x178412e79c25968a32e89b11f63B33F733770c2A, "Constants.ARBI_FRXETH"); + vm.label(0x95aB45875cFFdba1E5f451B950bC2E42c0053f39, "Constants.ARBI_SFRXETH"); + vm.label(0xe3b3FE7bcA19cA77Ad877A5Bebab186bEcfAD906, "Constants.ARBI_SFRAX"); + vm.label(0x56328f7138C3A4ebD2Bb1D126d28f62FcD5bac5d, "Constants.ARBI_ARBIDEX_FRAX_DAI_PLUS"); + vm.label(0x436eE91dB228267c6a19b2A3F158fffCe5a4489c, "Constants.ARBI_ARBIDEX_FRAX_FRXETH"); + vm.label(0xe876230251cc14Ec0027b2a4aFc46B4c262d13D0, "Constants.ARBI_ARBIDEX_FRAX_USD_PLUS"); + vm.label(0x11205af33F2F7006bB932953b10Ab5EeD78105Ca, "Constants.ARBI_ARBIDEX_FRAX_USDCE"); + vm.label(0xf0677E33Fa38A023ec798F97D195d85d19823e7C, "Constants.ARBI_ARBIDEX_FRAX_WETH"); + vm.label(0xc74c0Fcb777521F3D8747f338a024e9F3fD91608, "Constants.ARBI_ARBIDEX_FRXETH_WETH"); + vm.label(0x1371512f45d85e6247aBfA2926Ac5213324a6BEB, "Constants.ARBI_CHRONOS_SAMM_FRAX_MAI"); + vm.label(0xaF618E6F5EF781e3aCFe00708BD005E0cc9A2e6F, "Constants.ARBI_CHRONOS_SAMM_FRAX_USD_PLUS"); + vm.label(0x548e0D4Fcb6b82a025E6770066b4127C5FCcBF07, "Constants.ARBI_CHRONOS_SAMM_FRXETH_SFRXETH"); + vm.label(0x9A028F3Dd7067479b51ee89CDb0Db594744ebfAd, "Constants.ARBI_CHRONOS_SAMM_FRXETH_WETH"); + vm.label(0x421Efd53FA0d90687db5ef370D5DCD7f89CbD9dE, "Constants.ARBI_CONVEX_FRAXBP_ARBITRUM"); + vm.label(0xB8c52da3db9EdF9Da6a20959410B007a2387E5a2, "Constants.ARBI_CONVEX_FRAX_FXB_20241231_ARBITRUM"); + vm.label(0xA81F4b86B412CcB51C7420000F59a639F3459f49, "Constants.ARBI_CONVEX_FRAX_FXB_20261231_ARBITRUM"); + vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.ARBI_CONVEX_FRXETH_WETH_ARBITRUM"); + vm.label(0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, "Constants.ARBI_CONVEX_HFXB_FRAX_ARBITRUM"); + vm.label(0x56390acF12bce9675ab3922060D8d955149BE286, "Constants.ARBI_CONVEX_USD_PLUS_FRAXBP"); + vm.label(0x127963A74c07f72D862F2Bdc225226c3251BD117, "Constants.ARBI_CURVE_VSTFRAX_F"); + vm.label(0xb3ab7148cCCAf66686AD6C1bE24D83e58E6a504e, "Constants.ARBI_DFORCE_FRAX_LENDING_ARBITRUM"); + vm.label(0xd7f3Bf2085AD32ff95E1bCC408d37F10f6949270, "Constants.ARBI_HUNDRED_FRAX_LENDING_ARBITRUM"); + vm.label(0xbAFA44EFE7901E04E39Dad13167D089C559c1138, "Constants.ARBI_KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM"); + vm.label(0xF8719BC4a1A81969F00233a8D9409755d4366d28, "Constants.ARBI_RAMSES_CRAMM_FRAX_DOLA"); + vm.label(0x385E1c3f90C52f5253EaBb015576E95a4886E552, "Constants.ARBI_RAMSES_CRAMM_FRAX_MAI"); + vm.label(0x22B6C54dC1cCD6CDF53723BEc88327c908258367, "Constants.ARBI_RAMSES_CRAMM_FRAX_USDC"); + vm.label(0x11C1060e12F3Ec480D47AD867583353496a1B0b8, "Constants.ARBI_RAMSES_CRAMM_FRXETH_SFRXETH"); + vm.label(0x148Ca200d452AD9F310501ca3fd5C3bD4a5aBe81, "Constants.ARBI_RAMSES_CRAMM_FRXETH_WETH"); + vm.label(0x0A923435Eb4C3FC740bbA0c000F16Cb1F6cd7Afb, "Constants.ARBI_RAMSES_VRAMM_FRAX_AGEUR"); + vm.label(0xdf725A7315d3d246a39C8887870f6cb0Fe73e36d, "Constants.ARBI_RAMSES_VRAMM_FRAX_FXS"); + vm.label(0x6e1af6FB2B4006603c65dD8FC7796Ccff09c86a1, "Constants.ARBI_SADDLE_ARBUSD_V2_ARBITRUM"); + vm.label(0x289532cA1DccE36D05e19Af468EC46fc9CB1390E, "Constants.ARBI_SADDLE_FRAXBP_USDS_ARBITRUM"); + vm.label(0xb306b7E9D895748A2779586C83112035D8223C7F, "Constants.ARBI_SADDLE_FRAXBP_USDT_ARBITRUM"); + vm.label(0x0A18D5679C5c8b56Da0D87E308DB9EE2db701BaC, "Constants.ARBI_SADDLE_FRAXBP_USX_ARBITRUM"); + vm.label(0xBBcaeA4e732173C0De28397421c17A595372C9CF, "Constants.ARBI_SADDLE_FRAX_USDC_BP_ARBITRUM"); + vm.label(0xd1dF24e8D225b20F9c8f4912BE88cCCec93f36E5, "Constants.ARBI_SADDLE_L2D4_ARBITRUM"); + vm.label(0xcdE7054e7a232938CdDe8BF40faf827e6f377f54, "Constants.ARBI_SENTIMENT_LFRAX"); + vm.label(0xeA8DfEE1898a7e0a59f7527F076106d7e44c2176, "Constants.ARBI_STARGATE_BRIDGE_LIQUIDITY_FRAX_ARBITRUM"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_CREWMEMBER"); + vm.label(0xe57314D4405289FfC91306E4574C28b7394c4822, "Constants.ARBI_FERRY_TO_POLYGON"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_FIRST_OFFICER"); + vm.label(0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE"); + vm.label(0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE"); + vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE"); + vm.label(0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE"); + vm.label(0x078Dd77De4e0f480D7442495d55707cE071B4B09, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE"); + vm.label(0x1B0b9991Df27a4F2847478127d51Fb29883882f5, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE"); + vm.label(0xf1C16E1c01e62716884ef947063e9C7D44eC287F, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE"); + vm.label(0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079, "Constants.ARBI_FRAXLEND_WHITELIST_ADDRESS"); + vm.label(0xdB3388e770F49A604E11f1a2084B39279492a61f, "Constants.ARBI_FRAXLEND_HOT_WALLET"); + vm.label(0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d, "Constants.ARBI_FRAXLEND_PAIR_REGISTRY_ADDRESS"); + vm.label(0xc70CC721d19dC7e627B81fEacb6a357Fb11200Af, "Constants.ARBI_FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS"); + vm.label(0x2D0483FefAbA4325c7521539a3DFaCf94A19C472, "Constants.ARBI_FRAXLEND_PAIR_ARB_FRAX"); + vm.label(0x5985FBb03b6A5EA390871c2bB9742cD406575667, "Constants.ARBI_ARBITRUM_DUAL_ORACLE_ADDRESS"); + vm.label(0xC6F780497A95e246EB9449f5e4770916DCd6396A, "Constants.ARBI_ARB_ETH_UNI_V3_POOL"); + vm.label(0xb2A824043730FE05F3DA2efaFa1CBbe83fa548D6, "Constants.ARBI_ARB_USD_CHAINLINK_ORACLE"); + vm.label(0x639Fe6ab55C921f74e7fac1ee960C0B6293ba612, "Constants.ARBI_ETH_USD_CHAINLINK_ORACLE"); + vm.label(0x912CE59144191C1204E64559FE8253a0e49E6548, "Constants.ARBI_ARB_ERC20"); + vm.label(0x82aF49447D8a07e3bd95BD0d56f35241523fBab1, "Constants.ARBI_WETH_ERC20"); + vm.label(0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F, "Constants.ARBI_FRAX_ERC20"); + vm.label(0x6c1b76Ca12d74970d40Aec4d6f2E3A653CC58685, "Constants.ARBI_VARIABLE_RATE_V2"); + vm.label(0x6076ebDFE17555ed3E6869CF9C373Bbd9aD55d38, "Constants.ARBI_FRAXLEND_PAIR_GMX_FRAX"); + vm.label(0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3, "Constants.ARBI_GMX_DUAL_ORACLE_ADDRESS"); + vm.label(0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a, "Constants.ARBI_GMX_ERC20"); + vm.label(0x9168AC3a83A31bd85c93F4429a84c05db2CaEF08, "Constants.ARBI_FRAXLENDPAIR_WBTC_FRAX"); + vm.label(0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617, "Constants.ARBI_WBTC_DUAL_ORACLE_ADDRESS"); + vm.label(0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f, "Constants.ARBI_WBTC_ERC20"); + vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.ARBI_FRAXSWAP_FACTORY_V1"); + vm.label(0x8374A74A728f06bEa6B7259C68AA7BBB732bfeaD, "Constants.ARBI_FRAXSWAP_FACTORY_V2"); + vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.ARBI_FRAXSWAP_ROUTER_V1"); + vm.label(0xCAAaB0A72f781B92bA63Af27477aA46aB8F653E7, "Constants.ARBI_FRAXSWAP_ROUTER_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.ARBI_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.ARBI_KYBERSWAP_ELASTIC_FACTORY_V2"); + vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.ARBI_KYBERSWAP_ELASTIC_POS_MGR_V2"); + vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.ARBI_KYBERSWAP_ELASTIC_ROUTER_V2"); + vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.ARBI_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); + vm.label(0x1c5400491fE82EE8FC21489C51e402B3c8a2fB81, "Constants.ARBI_FRAX_AMO_MINTER_LAYER_2"); + vm.label(0xCDeE1B853AD2E96921250775b7A60D6ff78fD8B4, "Constants.ARBI_FRAXLEND_AMO"); + vm.label(0xDF85346111C0F9680a77d4c496b6fd5278516fa6, "Constants.ARBI_CIRCUIT_BREAKER_ADDRESS"); + vm.label(0xF0D5007dB0393c9D5F6A88A5F82Df520EA483fDb, "Constants.ARBI_FPI_COMPTROLLER"); + vm.label(0x0B6A2B7fc025ce864A7CBF9df6e940C614C31f74, "Constants.ARBI_FRAXLEND_COMPTROLLER_ADDRESS"); + vm.label(0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10, "Constants.ARBI_FRAX_MASTER_MULTISIG_ADDRESS"); + vm.label(0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10, "Constants.ARBI_MAIN_COMPTROLLER"); + vm.label(0xB426B13372B7c967C4a2371B5e95FC7dc37545Db, "Constants.ARBI_TIMELOCK_ADDRESS"); + vm.label(0x1C5ffa4FB4907B681c61B8c82b28C4672ceb1974, "Constants.ARBI_CURVE4POOL"); + vm.label(0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0, "Constants.ARBI_CVXFRAXBP"); + vm.label(0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0, "Constants.ARBI_CVXFRAXBP_REWARDER"); + vm.label(0xCDA69af1077765a89eA156aCe7a6f8b476e4aF12, "Constants.ARBI_CVXFRAXFXB_20241231_ARBITRUM"); + vm.label(0x2026681d569f80aE0A86D7c90bc81065D9A3AD42, "Constants.ARBI_CVXFRAXFXB_20261231_ARBITRUM"); + vm.label(0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3, "Constants.ARBI_CVXFRXETHWETH"); + vm.label(0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3, "Constants.ARBI_CVXFRXETHWETH_REWARDER"); + vm.label(0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6, "Constants.ARBI_CVXHFXBFRAX"); + vm.label(0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6, "Constants.ARBI_CVXHFXBFRAX_REWARDER"); + vm.label(0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9, "Constants.ARBI_CVXUSDPLUSFRAXBP"); + vm.label(0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9, "Constants.ARBI_CVXUSDPLUSFRAXBP_REWARDER"); + vm.label(0xf07d553B195080F84F582e88ecdD54bAa122b279, "Constants.ARBI_FRAX2POOL"); + vm.label(0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5, "Constants.ARBI_FRAXBP"); + vm.label(0x95285Ea6fF14F80A2fD3989a6bAb993Bd6b5fA13, "Constants.ARBI_FRAXBP_GAUGE"); + vm.label(0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5, "Constants.ARBI_FRAXBP_POOL"); + vm.label(0xE920eEdAff6c3BEd1Ef61010B64d46986634E908, "Constants.ARBI_FRAXFXB_20241231"); + vm.label(0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68, "Constants.ARBI_FRAXFXB_20241231_GAUGE"); + vm.label(0xE920eEdAff6c3BEd1Ef61010B64d46986634E908, "Constants.ARBI_FRAXFXB_20241231_POOL"); + vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ARBI_FRAXFXB_20261231"); + vm.label(0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9, "Constants.ARBI_FRAXFXB_20261231_GAUGE"); + vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ARBI_FRAXFXB_20261231_POOL"); + vm.label(0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523, "Constants.ARBI_FRXETHWETH"); + vm.label(0x46FEc59Eb30C2D610917ebf4CE5114f7425b2c4A, "Constants.ARBI_FRXETHWETH_GAUGE"); + vm.label(0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523, "Constants.ARBI_FRXETHWETH_POOL"); + vm.label(0xb1c4426C86082D91a6c097fC588E5D5d8dD1f5a8, "Constants.ARBI_HFRAX"); + vm.label(0x8f5d46267EB52F3aA6E141004A781469D445888c, "Constants.ARBI_HFXBFRAX"); + vm.label(0x725E997571F4fD144bB741762E8fA9f1D11761a7, "Constants.ARBI_HFXBFRAX_GAUGE"); + vm.label(0x8f5d46267EB52F3aA6E141004A781469D445888c, "Constants.ARBI_HFXBFRAX_POOL"); + vm.label(0x2E9963ae673A885b6bfeDa2f80132CE28b784C40, "Constants.ARBI_LFRAX"); + vm.label(0x0a20c2FFa10cD43F67D06170422505b7D6fC0953, "Constants.ARBI_SADDLEARBUSDV2"); + vm.label(0x147D0Af556C6D89640BFa915D2b9619d7b55947a, "Constants.ARBI_SADDLEL2D4"); + vm.label(0xF2839E0b30B5e96083085F498b14bbc12530b734, "Constants.ARBI_SADDLEL2D4_PERMISSIONLESS_SWAP"); + vm.label(0x0a20c2FFa10cD43F67D06170422505b7D6fC0953, "Constants.ARBI_SDL_ARBUSDV2"); + vm.label(0xfeEa4D1BacB0519E8f952460A70719944fe56Ee0, "Constants.ARBI_SDL_ARBUSDV2_POOL"); + vm.label(0x896935B02D3cBEb152192774e4F1991bb1D2ED3f, "Constants.ARBI_SDL_FRAXBP"); + vm.label(0x401AFbc31ad2A3Bc0eD8960d63eFcDEA749b4849, "Constants.ARBI_SDL_FRAXBP_POOL"); + vm.label(0x1e491122f3C096392b40a4EA27aa1a29360d38a1, "Constants.ARBI_SDL_USDSFRAXBP"); + vm.label(0xa5bD85ed9fA27ba23BfB702989e7218E44fd4706, "Constants.ARBI_SDL_USDSFRAXBP_POOL"); + vm.label(0x166680852ae9Dec3d63374c5eBf89E974448BFE9, "Constants.ARBI_SDL_USDTFRAXBP"); + vm.label(0xf8504e92428d65E56e495684A38f679C1B1DC30b, "Constants.ARBI_SDL_USDTFRAXBP_POOL"); + vm.label(0x721DaC7d5ACc8Aa62946fd583C1F999e1570b97D, "Constants.ARBI_SDL_USXFRAXBP"); + vm.label(0xb2a2764D0DCAB445E24f4b813bE3f6ef8AE5f84D, "Constants.ARBI_SDL_USXFRAXBP_POOL"); + vm.label(0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013, "Constants.ARBI_USDPLUSFRAXBP"); + vm.label(0x4645e6476D3A5595Be9Efd39426cc10586a8393D, "Constants.ARBI_USDPLUSFRAXBP_GAUGE"); + vm.label(0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013, "Constants.ARBI_USDPLUSFRAXBP_POOL"); + vm.label(0x9A01857f33aa382b1d5bb96C3180347862432B0d, "Constants.ARBI_VECHR"); + vm.label(0xAAA343032aA79eE9a6897Dab03bef967c3289a06, "Constants.ARBI_VERAM"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.ARBI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.ARBI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.ARBI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.ARBI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.ARBI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.ARBI_WFRAXOFT"); + vm.label(0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A, "Constants.ARBI_REMOTEHOP"); + vm.label(0xa46A266dCBf199a71532c76967e200994C5A0D6d, "Constants.ARBI_REMOTEMINTREDEEMHOP"); + } +} +library Aurora { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x53e36C8380Ff62D7964BFa4868A0045E58A52344; + address internal constant REMOTEMINTREDEEMHOP = 0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2; +} + +abstract contract AddressHelperAurora is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AUR_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AUR_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AUR_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AUR_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AUR_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AUR_WFRAXOFT"); + vm.label(0x53e36C8380Ff62D7964BFa4868A0045E58A52344, "Constants.AUR_REMOTEHOP"); + vm.label(0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2, "Constants.AUR_REMOTEMINTREDEEMHOP"); + } +} +library Avalanche { + address internal constant FRAX = 0xD24C2Ad096400B6FBcd2ad8B24E7acBc21A1da64; + address internal constant FXS = 0x214DB107654fF987AD859F34125307783fC8e387; + address internal constant FPI = 0xF530904FD8F9ce55F40b7cc78382A13B0cd5C48c; + address internal constant FPIS = 0xee7cBa1403A2B0C53181B3980D52f9C5EdEEcC9e; + address internal constant FRXETH = 0x2018B0CA0eDcE80800851958bD094dD4a8DA1fc4; + address internal constant SFRXETH = 0x6D3B126ae28f3E39894070148B377624F6Ab4a45; + address internal constant SFRAX = 0x3405E88af759992937b84E58F2Fe691EF0EeA320; + address internal constant PANGOLIN_FRAX_AVAX = 0x1f806f7C8dED893fd3caE279191ad7Aa3798E928; + address internal constant PANGOLIN_FXS_AVAX = 0x76Ad5c64Fe6B26b6aD9aaAA19eBa00e9eCa31FE1; + address internal constant SNOWBALL_S4D = 0x0bd7964E2E03bdb9703658A1e88F4Dc786FfA551; + address internal constant TRADER_JOE_FRAX_AVAX = 0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89; + address internal constant TRADER_JOE_FRAX_GOHM = 0x3E6Be71dE004363379d864006AAC37C9F55F8329; + address internal constant TRADER_JOE_FXS_AVAX = 0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = 0xC311b600bc926a3a8aC39945471427DFd9196930; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant COMBO_ORACLE = 0xf22460b939F1490b485005C0fe4643951724f822; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0xfD1a5eD9FaE84f06Ab2e846851F256D4d07B1A17; + address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; + address internal constant FRAXSWAP_FACTORY_V2 = 0xf77ca9B635898980fb219b4F4605C50e4ba58afF; + address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; + address internal constant FRAXSWAP_ROUTER_V2 = 0x5977b16AA9aBC4D1281058C73B789C65Bf9ab3d3; + address internal constant FRAXSWAP_V1_FRAX_FXS = 0xEa9345507c4055b2aC73c67e56f7207702FE66Cc; + address internal constant FRAXSWAP_V1_FRAX_WAVAX = 0x48A7d7d9b6d6529a3d191E434b71CDB874f29011; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0x27cc2Be95D1492bbA726E10Eba57968A065F05eC; + address internal constant FRAXSWAP_V2_FRAX_WAVAX = 0xC725819a7c2A5d3DA243e02eb886b4C5f2B4dc6A; + address internal constant COMPTROLLER = 0xc036Caff65c1A31eAa53e60F6E17f1E6689937AA; + address internal constant FPI_COMPTROLLER = 0xB3e03c9C1820C6216953FB1BBC6fFd232ac12a19; + address internal constant AXIAL_AC4D_TSD_MIM_FRAX_DAI_E = 0x4da067E13974A4d32D342d86fBBbE4fb0f95f382; + address internal constant CURVE4POOL = 0xcb11EE4B70d73e38a383b8691cAFb221059669cC; + address internal constant CURVE_4POOL = 0xcb11EE4B70d73e38a383b8691cAFb221059669cC; + address internal constant FRAX3CRV_F = 0xE013593CEA239E445d2271106836b00C9E7356ae; + address internal constant GOHM = 0x321E7092a180BB43555132ec53AaA65a5bF84251; + address internal constant PANGOLIN_CANFRAX_CANFXS = 0xe0CC7ed0666B29e60a21aF8636bBC69b21eDc434; + address internal constant PANGOLIN_CANFRAX_USDC_E = 0x0c8249757b8d66cB2b6155281A5e4f8F53C94c05; + address internal constant PANGOLIN_CANFRAX_WAVAX = 0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559; + address internal constant PANGOLIN_CANFXS_USDC_E = 0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8; + address internal constant TRADER_JOE_FRAX_WAVAX = 0x0d84595e8638dBc631076c51000B2d31120D8aa1; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; + address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; +} + +abstract contract AddressHelperAvalanche is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xD24C2Ad096400B6FBcd2ad8B24E7acBc21A1da64, "Constants.AVAX_FRAX"); + vm.label(0x214DB107654fF987AD859F34125307783fC8e387, "Constants.AVAX_FXS"); + vm.label(0xF530904FD8F9ce55F40b7cc78382A13B0cd5C48c, "Constants.AVAX_FPI"); + vm.label(0xee7cBa1403A2B0C53181B3980D52f9C5EdEEcC9e, "Constants.AVAX_FPIS"); + vm.label(0x2018B0CA0eDcE80800851958bD094dD4a8DA1fc4, "Constants.AVAX_FRXETH"); + vm.label(0x6D3B126ae28f3E39894070148B377624F6Ab4a45, "Constants.AVAX_SFRXETH"); + vm.label(0x3405E88af759992937b84E58F2Fe691EF0EeA320, "Constants.AVAX_SFRAX"); + vm.label(0x1f806f7C8dED893fd3caE279191ad7Aa3798E928, "Constants.AVAX_PANGOLIN_FRAX_AVAX"); + vm.label(0x76Ad5c64Fe6B26b6aD9aaAA19eBa00e9eCa31FE1, "Constants.AVAX_PANGOLIN_FXS_AVAX"); + vm.label(0x0bd7964E2E03bdb9703658A1e88F4Dc786FfA551, "Constants.AVAX_SNOWBALL_S4D"); + vm.label(0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89, "Constants.AVAX_TRADER_JOE_FRAX_AVAX"); + vm.label(0x3E6Be71dE004363379d864006AAC37C9F55F8329, "Constants.AVAX_TRADER_JOE_FRAX_GOHM"); + vm.label(0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2, "Constants.AVAX_TRADER_JOE_FXS_AVAX"); + vm.label(0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE"); + vm.label(0xC311b600bc926a3a8aC39945471427DFd9196930, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE"); + vm.label(0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE"); + vm.label(0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE"); + vm.label(0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE"); + vm.label(0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE"); + vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CREWMEMBER"); + vm.label(0xf22460b939F1490b485005C0fe4643951724f822, "Constants.AVAX_COMBO_ORACLE"); + vm.label(0xfD1a5eD9FaE84f06Ab2e846851F256D4d07B1A17, "Constants.AVAX_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.AVAX_FRAXSWAP_FACTORY_V1"); + vm.label(0xf77ca9B635898980fb219b4F4605C50e4ba58afF, "Constants.AVAX_FRAXSWAP_FACTORY_V2"); + vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.AVAX_FRAXSWAP_ROUTER_V1"); + vm.label(0x5977b16AA9aBC4D1281058C73B789C65Bf9ab3d3, "Constants.AVAX_FRAXSWAP_ROUTER_V2"); + vm.label(0xEa9345507c4055b2aC73c67e56f7207702FE66Cc, "Constants.AVAX_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x48A7d7d9b6d6529a3d191E434b71CDB874f29011, "Constants.AVAX_FRAXSWAP_V1_FRAX_WAVAX"); + vm.label(0x27cc2Be95D1492bbA726E10Eba57968A065F05eC, "Constants.AVAX_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0xC725819a7c2A5d3DA243e02eb886b4C5f2B4dc6A, "Constants.AVAX_FRAXSWAP_V2_FRAX_WAVAX"); + vm.label(0xc036Caff65c1A31eAa53e60F6E17f1E6689937AA, "Constants.AVAX_COMPTROLLER"); + vm.label(0xB3e03c9C1820C6216953FB1BBC6fFd232ac12a19, "Constants.AVAX_FPI_COMPTROLLER"); + vm.label(0x4da067E13974A4d32D342d86fBBbE4fb0f95f382, "Constants.AVAX_AXIAL_AC4D_TSD_MIM_FRAX_DAI_E"); + vm.label(0xcb11EE4B70d73e38a383b8691cAFb221059669cC, "Constants.AVAX_CURVE4POOL"); + vm.label(0xcb11EE4B70d73e38a383b8691cAFb221059669cC, "Constants.AVAX_CURVE_4POOL"); + vm.label(0xE013593CEA239E445d2271106836b00C9E7356ae, "Constants.AVAX_FRAX3CRV_F"); + vm.label(0x321E7092a180BB43555132ec53AaA65a5bF84251, "Constants.AVAX_GOHM"); + vm.label(0xe0CC7ed0666B29e60a21aF8636bBC69b21eDc434, "Constants.AVAX_PANGOLIN_CANFRAX_CANFXS"); + vm.label(0x0c8249757b8d66cB2b6155281A5e4f8F53C94c05, "Constants.AVAX_PANGOLIN_CANFRAX_USDC_E"); + vm.label(0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559, "Constants.AVAX_PANGOLIN_CANFRAX_WAVAX"); + vm.label(0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8, "Constants.AVAX_PANGOLIN_CANFXS_USDC_E"); + vm.label(0x0d84595e8638dBc631076c51000B2d31120D8aa1, "Constants.AVAX_TRADER_JOE_FRAX_WAVAX"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AVAX_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AVAX_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AVAX_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AVAX_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AVAX_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AVAX_WFRAXOFT"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.AVAX_REMOTEHOP"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.AVAX_REMOTEMINTREDEEMHOP"); + } +} +library Base { + address internal constant FPIOFT = 0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B; + address internal constant FRXETHOFT = 0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA; + address internal constant FRXUSDOFT = 0xe5020A6d073a794B6E7f05678707dE47986Fb0b6; + address internal constant SFRXETHOFT = 0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA; + address internal constant SFRXUSDOFT = 0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e; + address internal constant WFRAXOFT = 0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf; + address internal constant REMOTEHOP = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant REMOTEMINTREDEEMHOP = 0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE; +} + +abstract contract AddressHelperBase is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B, "Constants.BASE_FPIOFT"); + vm.label(0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA, "Constants.BASE_FRXETHOFT"); + vm.label(0xe5020A6d073a794B6E7f05678707dE47986Fb0b6, "Constants.BASE_FRXUSDOFT"); + vm.label(0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA, "Constants.BASE_SFRXETHOFT"); + vm.label(0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e, "Constants.BASE_SFRXUSDOFT"); + vm.label(0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf, "Constants.BASE_WFRAXOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BASE_REMOTEHOP"); + vm.label(0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE, "Constants.BASE_REMOTEMINTREDEEMHOP"); + } +} +library Bera { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; + address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; +} + +abstract contract AddressHelperBera is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BERA_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BERA_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BERA_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BERA_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BERA_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BERA_WFRAXOFT"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.BERA_REMOTEHOP"); + vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.BERA_REMOTEMINTREDEEMHOP"); + } +} +library Blast { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xe93Cb38f97469eac2f284a87813D0d701b28E58e; + address internal constant REMOTEMINTREDEEMHOP = 0x85b1714b25f40FD5025423124c076476073180b3; +} + +abstract contract AddressHelperBlast is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BLAST_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BLAST_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BLAST_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BLAST_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BLAST_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BLAST_WFRAXOFT"); + vm.label(0xe93Cb38f97469eac2f284a87813D0d701b28E58e, "Constants.BLAST_REMOTEHOP"); + vm.label(0x85b1714b25f40FD5025423124c076476073180b3, "Constants.BLAST_REMOTEMINTREDEEMHOP"); + } +} +library BSC { + address internal constant FRAX = 0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40; + address internal constant FXS = 0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE; + address internal constant FPI = 0x2Dd1B4D4548aCCeA497050619965f91f78b3b532; + address internal constant FPIS = 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; + address internal constant FRXETH = 0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e; + address internal constant SFRXETH = 0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53; + address internal constant SFRAX = 0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3; + address internal constant APESWAP_CANFRAX_BUSD = 0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9; + address internal constant APESWAP_CANFXS_WBNB = 0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9; + address internal constant IMPOSSIBLE_FRAX_IF = 0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5; + address internal constant IMPOSSIBLE_FRAX_FXS = 0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32; + address internal constant PLANET_FINANCE_FRAX_LENDING = 0x6022bA7e5A70E1bAA98d47a566F3495A26511b25; + address internal constant FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE = 0x10Ef54F944639764d2d5Efa272262f06cfaF09AE; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE = 0x5CD3d6465cd21b645F15175840f4659228C6195c; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE = 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE = 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE = 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = 0x612015939f70C87E2041cc5daD909101c1A2383F; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE = 0x5E8422345238F34275888049021821E8E08CAa1f; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant COMBO_ORACLE = 0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x8159D9CD28B7A140Fd92311C1E5c667d97176727; + address internal constant FRAXSWAP_FACTORY_V1 = 0xa007a9716dba05289df85A90d0Fd9D39BEE808dE; + address internal constant FRAXSWAP_FACTORY_V2 = 0xf89e6CA06121B6d4370f4B196Ae458e8b969A011; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; + address internal constant FRAXSWAP_ROUTER_V1 = 0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37; + address internal constant FRAXSWAP_ROUTER_V2 = 0x67F755137E0AE2a2aa0323c047715Bf6523116E5; + address internal constant FRAXSWAP_V1_FRAX_FXS = 0xC86B106F76ef5b9A085071365eD5355592A7aFa4; + address internal constant FRAXSWAP_V1_FRAX_WBNB = 0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0xF51709f61447E2647528CCC9030d6FE492C30D63; + address internal constant FRAXSWAP_V2_FRAX_WBNB = 0x14732123c443f8E815D5c64f3C7ecb63bCeEab74; + address internal constant COMPTROLLER = 0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a; + address internal constant FPI_COMPTROLLER = 0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456; + address internal constant GFRAX = 0x6022bA7e5A70E1bAA98d47a566F3495A26511b25; + address internal constant APESWAP_CANFRAX_CANFXS = 0x489c8fF79245f14AEEE9520d28209844790cB979; + address internal constant APESWAP_CANFRAX_WBNB = 0x16BDb03E6074759943149eBB1526DDfD1AA5fc56; + address internal constant APESWAP_CANFRAX_USDC = 0x885BE9bCbCdcB70c59F56A78ae64A820e0448589; + address internal constant APESWAP_CANFXS_USDC = 0x84f2781E4E60f97D2963260A7b20D883F04F0d20; + address internal constant SADDLE_FRAX_BUSD = 0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; + address internal constant REMOTEMINTREDEEMHOP = 0xdee45510b42Cb0678C8A61D043C698aF66b0d852; +} + +abstract contract AddressHelperBSC is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40, "Constants.undefined_FRAX"); + vm.label(0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE, "Constants.undefined_FXS"); + vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.undefined_FPI"); + vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.undefined_FPIS"); + vm.label(0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e, "Constants.undefined_FRXETH"); + vm.label(0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53, "Constants.undefined_SFRXETH"); + vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.undefined_SFRAX"); + vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFRAX_BUSD"); + vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFXS_WBNB"); + vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.undefined_IMPOSSIBLE_FRAX_IF"); + vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.undefined_IMPOSSIBLE_FRAX_FXS"); + vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_PLANET_FINANCE_FRAX_LENDING"); + vm.label(0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, "Constants.undefined_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE"); + vm.label(0x5CD3d6465cd21b645F15175840f4659228C6195c, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE"); + vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE"); + vm.label(0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE"); + vm.label(0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE"); + vm.label(0x612015939f70C87E2041cc5daD909101c1A2383F, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE"); + vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CREWMEMBER"); + vm.label(0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A, "Constants.undefined_COMBO_ORACLE"); + vm.label(0x8159D9CD28B7A140Fd92311C1E5c667d97176727, "Constants.undefined_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.undefined_FRAXSWAP_FACTORY_V1"); + vm.label(0xf89e6CA06121B6d4370f4B196Ae458e8b969A011, "Constants.undefined_FRAXSWAP_FACTORY_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.undefined_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37, "Constants.undefined_FRAXSWAP_ROUTER_V1"); + vm.label(0x67F755137E0AE2a2aa0323c047715Bf6523116E5, "Constants.undefined_FRAXSWAP_ROUTER_V2"); + vm.label(0xC86B106F76ef5b9A085071365eD5355592A7aFa4, "Constants.undefined_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D, "Constants.undefined_FRAXSWAP_V1_FRAX_WBNB"); + vm.label(0xF51709f61447E2647528CCC9030d6FE492C30D63, "Constants.undefined_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0x14732123c443f8E815D5c64f3C7ecb63bCeEab74, "Constants.undefined_FRAXSWAP_V2_FRAX_WBNB"); + vm.label(0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a, "Constants.undefined_COMPTROLLER"); + vm.label(0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456, "Constants.undefined_FPI_COMPTROLLER"); + vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_GFRAX"); + vm.label(0x489c8fF79245f14AEEE9520d28209844790cB979, "Constants.undefined_APESWAP_CANFRAX_CANFXS"); + vm.label(0x16BDb03E6074759943149eBB1526DDfD1AA5fc56, "Constants.undefined_APESWAP_CANFRAX_WBNB"); + vm.label(0x885BE9bCbCdcB70c59F56A78ae64A820e0448589, "Constants.undefined_APESWAP_CANFRAX_USDC"); + vm.label(0x84f2781E4E60f97D2963260A7b20D883F04F0d20, "Constants.undefined_APESWAP_CANFXS_USDC"); + vm.label(0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3, "Constants.undefined_SADDLE_FRAX_BUSD"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.undefined_REMOTEHOP"); + vm.label(0xdee45510b42Cb0678C8A61D043C698aF66b0d852, "Constants.undefined_REMOTEMINTREDEEMHOP"); + } +} +library Fantom { + address internal constant FRAX = 0xdc301622e621166BD8E82f2cA0A26c13Ad0BE355; + address internal constant FXS = 0x7d016eec9c25232b01F23EF992D98ca97fc2AF5a; + address internal constant FPI = 0xAb069E73f1AA50c37A7171D16dCc3614c705101B; + address internal constant FPIS = 0x3bb6B72dC07D7bFDa981F70C631482e9517CF6EE; + address internal constant FRXETH = 0x9E73F99EE061C8807F69f9c6CCc44ea3d8c373ee; + address internal constant SFRXETH = 0xb90CCD563918fF900928dc529aA01046795ccb4A; + address internal constant LIQUID_DRIVER_FRAX_FTM = 0x6e2ad6527901c9664f016466b8DA1357a004db0f; + address internal constant SPIRITSWAP_FRAX_FTM = 0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D; + address internal constant SPIRITSWAP_FRAX_FXS = 0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381; + address internal constant SPIRITSWAP_FRAX_USDC = 0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d; + address internal constant VEDAO_FRAX = 0xE04C26444d37fE103B9cc8033c99b09D47056f51; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE = 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant COMBO_ORACLE = 0x496E5c8F169C2930Dd67B821d8DdDDC78542f290; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x689C5BC12B0A80a8aa33dc38dfDFB7E858A49601; + address internal constant FRAXSWAP_FACTORY_V1 = 0xF55C563148cA0c0F1626834ec1B8651844D76792; + address internal constant FRAXSWAP_FACTORY_V2 = 0xDc745E09fC459aDC295E2e7baACe881354dB7F64; + address internal constant FRAXSWAP_ROUTER_V1 = 0xa007a9716dba05289df85A90d0Fd9D39BEE808dE; + address internal constant FRAXSWAP_ROUTER_V2 = 0x7D21C651Dd333306B35F2FeAC2a19FA1e1241545; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; + address internal constant FRAXSWAP_V1_FRAX_FXS = 0xB186ad077cA69e860476B2C84ecD0DE3572A10F5; + address internal constant FRAXSWAP_V1_FRAX_WFTM = 0xc736279b8371c736f027cCC3F77755D7931F8845; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0x4ac3de029F4C11ab40a51336F7229d67cd1e92A5; + address internal constant FRAXSWAP_V2_FRAX_WFTM = 0x173F3e43F0414F903620948F9d2094F9dbD92F15; + address internal constant COMPTROLLER = 0xE838c61635dd1D41952c68E47159329443283d90; + address internal constant FPI_COMPTROLLER = 0xe722B0fA594e290a8E53bFB5654cE4Ad8a4BE811; + address internal constant CURVE4POOL = 0x9dc516a18775d492c9f061211C8a3FDCd476558d; + address internal constant CURVE_4POOL = 0x9dc516a18775d492c9f061211C8a3FDCd476558d; + address internal constant FRAX2POOL = 0x7a656B342E14F745e2B164890E88017e27AE7320; + address internal constant HFRAX = 0xb4300e088a3AE4e624EE5C71Bc1822F68BB5f2bc; + address internal constant OFRAX = 0x88c05534566f3bD6b6D704c9259408fF1F1a3F00; + address internal constant OXSOLID = 0xDA0053F0bEfCbcaC208A3f867BB243716734D809; + address internal constant OX_VAMM_FXS_FRAX_DEPOSIT = 0x9601f81F35B2F00549a654E3f2E5D7c87F733530; + address internal constant SADDLE_FRAX_USDC = 0xc969dD0A7AB0F8a0C5A69C0839dB39b6C928bC08; + address internal constant SCFRAX = 0x4E6854EA84884330207fB557D1555961D85Fc17E; + address internal constant SEX_SAMM_USDC_FRAX_DEPOSIT = 0xF3E57E9cba43F9998559161DDd40aaeB2225E700; + address internal constant SEX_VAMM_FXS_FRAX_DEPOSIT = 0xa5944150136aCF58e4e9752703Fcf7B13e8579E7; + address internal constant SOLIDLY_STABLEV1_AMM___USDC_FRAX = 0x154eA0E896695824C87985a52230674C2BE7731b; + address internal constant SOLIDLY_VOLATILEV1_AMM___FXS_FRAX = 0x4bBd8467ccd49D5360648CE14830f43a7fEB6e45; + address internal constant SPIRITSWAP_CANFRAX_ANYUSDC = 0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d; + address internal constant SPIRITSWAP_CANFRAX_CANFXS = 0x7a2aD237e389De505DE7a89768143337E516C6Ce; + address internal constant SPIRITSWAP_CANFRAX_FTM = 0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D; + address internal constant SPIRITSWAP_CANFXS_ANYUSDC = 0xB269A9969A437e778A8BFdB48A720aD366742554; +} + +abstract contract AddressHelperFantom is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xdc301622e621166BD8E82f2cA0A26c13Ad0BE355, "Constants.FTM_FRAX"); + vm.label(0x7d016eec9c25232b01F23EF992D98ca97fc2AF5a, "Constants.FTM_FXS"); + vm.label(0xAb069E73f1AA50c37A7171D16dCc3614c705101B, "Constants.FTM_FPI"); + vm.label(0x3bb6B72dC07D7bFDa981F70C631482e9517CF6EE, "Constants.FTM_FPIS"); + vm.label(0x9E73F99EE061C8807F69f9c6CCc44ea3d8c373ee, "Constants.FTM_FRXETH"); + vm.label(0xb90CCD563918fF900928dc529aA01046795ccb4A, "Constants.FTM_SFRXETH"); + vm.label(0x6e2ad6527901c9664f016466b8DA1357a004db0f, "Constants.FTM_LIQUID_DRIVER_FRAX_FTM"); + vm.label(0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D, "Constants.FTM_SPIRITSWAP_FRAX_FTM"); + vm.label(0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381, "Constants.FTM_SPIRITSWAP_FRAX_FXS"); + vm.label(0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d, "Constants.FTM_SPIRITSWAP_FRAX_USDC"); + vm.label(0xE04C26444d37fE103B9cc8033c99b09D47056f51, "Constants.FTM_VEDAO_FRAX"); + vm.label(0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE"); + vm.label(0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE"); + vm.label(0x12b6a8178C67B2835E280E1Ed709F64446cddb08, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE"); + vm.label(0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CREWMEMBER"); + vm.label(0x496E5c8F169C2930Dd67B821d8DdDDC78542f290, "Constants.FTM_COMBO_ORACLE"); + vm.label(0x689C5BC12B0A80a8aa33dc38dfDFB7E858A49601, "Constants.FTM_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0xF55C563148cA0c0F1626834ec1B8651844D76792, "Constants.FTM_FRAXSWAP_FACTORY_V1"); + vm.label(0xDc745E09fC459aDC295E2e7baACe881354dB7F64, "Constants.FTM_FRAXSWAP_FACTORY_V2"); + vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.FTM_FRAXSWAP_ROUTER_V1"); + vm.label(0x7D21C651Dd333306B35F2FeAC2a19FA1e1241545, "Constants.FTM_FRAXSWAP_ROUTER_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.FTM_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0xB186ad077cA69e860476B2C84ecD0DE3572A10F5, "Constants.FTM_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0xc736279b8371c736f027cCC3F77755D7931F8845, "Constants.FTM_FRAXSWAP_V1_FRAX_WFTM"); + vm.label(0x4ac3de029F4C11ab40a51336F7229d67cd1e92A5, "Constants.FTM_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0x173F3e43F0414F903620948F9d2094F9dbD92F15, "Constants.FTM_FRAXSWAP_V2_FRAX_WFTM"); + vm.label(0xE838c61635dd1D41952c68E47159329443283d90, "Constants.FTM_COMPTROLLER"); + vm.label(0xe722B0fA594e290a8E53bFB5654cE4Ad8a4BE811, "Constants.FTM_FPI_COMPTROLLER"); + vm.label(0x9dc516a18775d492c9f061211C8a3FDCd476558d, "Constants.FTM_CURVE4POOL"); + vm.label(0x9dc516a18775d492c9f061211C8a3FDCd476558d, "Constants.FTM_CURVE_4POOL"); + vm.label(0x7a656B342E14F745e2B164890E88017e27AE7320, "Constants.FTM_FRAX2POOL"); + vm.label(0xb4300e088a3AE4e624EE5C71Bc1822F68BB5f2bc, "Constants.FTM_HFRAX"); + vm.label(0x88c05534566f3bD6b6D704c9259408fF1F1a3F00, "Constants.FTM_OFRAX"); + vm.label(0xDA0053F0bEfCbcaC208A3f867BB243716734D809, "Constants.FTM_OXSOLID"); + vm.label(0x9601f81F35B2F00549a654E3f2E5D7c87F733530, "Constants.FTM_OX_VAMM_FXS_FRAX_DEPOSIT"); + vm.label(0xc969dD0A7AB0F8a0C5A69C0839dB39b6C928bC08, "Constants.FTM_SADDLE_FRAX_USDC"); + vm.label(0x4E6854EA84884330207fB557D1555961D85Fc17E, "Constants.FTM_SCFRAX"); + vm.label(0xF3E57E9cba43F9998559161DDd40aaeB2225E700, "Constants.FTM_SEX_SAMM_USDC_FRAX_DEPOSIT"); + vm.label(0xa5944150136aCF58e4e9752703Fcf7B13e8579E7, "Constants.FTM_SEX_VAMM_FXS_FRAX_DEPOSIT"); + vm.label(0x154eA0E896695824C87985a52230674C2BE7731b, "Constants.FTM_SOLIDLY_STABLEV1_AMM___USDC_FRAX"); + vm.label(0x4bBd8467ccd49D5360648CE14830f43a7fEB6e45, "Constants.FTM_SOLIDLY_VOLATILEV1_AMM___FXS_FRAX"); + vm.label(0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d, "Constants.FTM_SPIRITSWAP_CANFRAX_ANYUSDC"); + vm.label(0x7a2aD237e389De505DE7a89768143337E516C6Ce, "Constants.FTM_SPIRITSWAP_CANFRAX_CANFXS"); + vm.label(0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D, "Constants.FTM_SPIRITSWAP_CANFRAX_FTM"); + vm.label(0xB269A9969A437e778A8BFdB48A720aD366742554, "Constants.FTM_SPIRITSWAP_CANFXS_ANYUSDC"); + } +} +library FraxtalL1Devnet { + address internal constant FRAX = 0x114a0318Da080A2Ee3380269d796E93DF767D24F; + address internal constant FXS = 0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0; + address internal constant FPI = 0xfC75d8fD01fD999D2A4731a01d87131b40A8a645; + address internal constant FPIS = 0x9445aD9a63def63CA9D23cfd7cd72538BbF1780A; + address internal constant FRXBTC = 0x2a2acd879050aC8910d80dccb428a0AEf77fFA36; + address internal constant FRXETH = 0x51Ed07ceB785d2983e56CF00CAf65499dae5df3B; + address internal constant SFRXETH = 0x2787eC65f085acbbE94F1bB7E099dF06B56b6DaC; + address internal constant SFRAX = 0xB26fDD0FF10A287a73EFaa0b18A0e57fd8168835; + uint256 internal constant CHAIN_ID = 2520; + address internal constant FRXETH_MINTER = 0x890205b3397a1F273BaD55476F2856886964E788; + address internal constant COMPTROLLER = 0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160; +} + +abstract contract AddressHelperFraxtalL1Devnet is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x114a0318Da080A2Ee3380269d796E93DF767D24F, "Constants.FXTL_L1_DN_FRAX"); + vm.label(0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0, "Constants.FXTL_L1_DN_FXS"); + vm.label(0xfC75d8fD01fD999D2A4731a01d87131b40A8a645, "Constants.FXTL_L1_DN_FPI"); + vm.label(0x9445aD9a63def63CA9D23cfd7cd72538BbF1780A, "Constants.FXTL_L1_DN_FPIS"); + vm.label(0x2a2acd879050aC8910d80dccb428a0AEf77fFA36, "Constants.FXTL_L1_DN_FRXBTC"); + vm.label(0x51Ed07ceB785d2983e56CF00CAf65499dae5df3B, "Constants.FXTL_L1_DN_FRXETH"); + vm.label(0x2787eC65f085acbbE94F1bB7E099dF06B56b6DaC, "Constants.FXTL_L1_DN_SFRXETH"); + vm.label(0xB26fDD0FF10A287a73EFaa0b18A0e57fd8168835, "Constants.FXTL_L1_DN_SFRAX"); + vm.label(0x890205b3397a1F273BaD55476F2856886964E788, "Constants.FXTL_L1_DN_FRXETH_MINTER"); + vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_L1_DN_COMPTROLLER"); + } +} +library FraxtalL2Devnet { + address internal constant FRAX = 0xFc00000000000000000000000000000000000001; + address internal constant FXS = 0xFc00000000000000000000000000000000000002; + address internal constant FPI = 0xFc00000000000000000000000000000000000003; + address internal constant FPIS = 0xfc00000000000000000000000000000000000004; + address internal constant FRXBTC = 0xfC00000000000000000000000000000000000007; + address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; + address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; + address internal constant SFRAX = 0xfc00000000000000000000000000000000000008; + uint256 internal constant CHAIN_ID = 2521; + address internal constant PROXY_ADMIN = 0xfC00000000000000000000000000000000000009; + address internal constant COMPTROLLER = 0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160; + address internal constant CROSS_DOMAIN_MESSENGER = 0x4200000000000000000000000000000000000007; + address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; + address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; + address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; +} + +abstract contract AddressHelperFraxtalL2Devnet is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_L2_DN_FRAX"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_L2_DN_FXS"); + vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_L2_DN_FPI"); + vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_L2_DN_FPIS"); + vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_L2_DN_FRXBTC"); + vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_L2_DN_WFRXETH"); + vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_L2_DN_SFRXETH"); + vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_L2_DN_SFRAX"); + vm.label(0xfC00000000000000000000000000000000000009, "Constants.FXTL_L2_DN_PROXY_ADMIN"); + vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_L2_DN_COMPTROLLER"); + vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_L2_DN_CROSS_DOMAIN_MESSENGER"); + vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_L2_DN_ERC20_FACTORY_PROXY"); + vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_L2_DN_L2_STANDARD_BRIDGE_PROXY"); + vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_L2_DN_L2_TO_L1_MESSAGE_PASSER"); + } +} +library FraxtalL2 { + uint256 internal constant CHAIN_ID = 252; + address internal constant FRXUSD = 0xFc00000000000000000000000000000000000001; + address internal constant WFRAX = 0xFc00000000000000000000000000000000000002; + address internal constant FPI = 0xFc00000000000000000000000000000000000003; + address internal constant FPIS = 0xfc00000000000000000000000000000000000004; + address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; + address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; + address internal constant FRXBTC = 0xfC00000000000000000000000000000000000007; + address internal constant SFRAX = 0xfc00000000000000000000000000000000000008; + address internal constant FRXUSD_PROXY = 0xFc00000000000000000000000000000000000001; + address internal constant WFRAX_PROXY = 0xFc00000000000000000000000000000000000002; + address internal constant FPI_PROXY = 0xFc00000000000000000000000000000000000003; + address internal constant FPIS_PROXY = 0xfc00000000000000000000000000000000000004; + address internal constant SFRXETH_PROXY = 0xFC00000000000000000000000000000000000005; + address internal constant WFRXETH_PROXY = 0xFC00000000000000000000000000000000000006; + address internal constant FRXBTC_PROXY = 0xfC00000000000000000000000000000000000007; + address internal constant SFRAX_PROXY = 0xfc00000000000000000000000000000000000008; + address internal constant CONVEX_SQUID_WFRXETH_FRAXTAL = 0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc; + address internal constant FLE_FRAX_FXS_FRAXTAL = 0xCe70630b4b2E889AdC558b58B2980437f58003D4; + address internal constant FLE_FXS_WFRXETH_FRAXTAL = 0x7A6BE195f9931341c1f4c4230fc48F8B9b9dE91b; + address internal constant FRAXSWAP_V2_FRAX_FPI_FRAXTAL = 0x7b8848f10A016341c9B2427e8541C19F31C2D243; + address internal constant FRAXSWAP_V2_FRAX_FXS_FRAXTAL = 0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25; + address internal constant FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = 0xe402a39F788f90607A50254fAf56316E6a78231A; + address internal constant FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = 0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7; + address internal constant FXB_TIMED_LOCKER_20261231 = 0x00a5b34d4b436E3276695a1EaA8242FA2FC11dC5; + address internal constant FXB_20261231 = 0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e; + address internal constant FXB_20241231 = 0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba; + address internal constant FXB_20240630 = 0x758094A71a39De49626FE25B86631ED944558653; + address internal constant FXB_20551231 = 0xc38173d34afaea88bc482813b3cd267bc8a1ea83; + address internal constant FXB_20291231 = 0xf1e2b576af4c6a7ee966b14c810b772391e92153; + address internal constant FXB_20251231 = 0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = 0xcD3A040f05769d7628582B403063e61B7D212F91; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CHAINLINK_ETH_USD_ORACLE = 0xA6cBe9aB6075d8b1049Db7528f2fCf22FC7d051B; + address internal constant CIRCUIT_BREAKER_ADDRESS = 0x0eD01ea3B95e0f68DF2c9CD67F138ff3547b311C; + address internal constant FRAXLEND_DEPLOYER_V4 = 0x4C3B0e85CD8C12E049E07D9a4d68C441196E6a12; + address internal constant FRAXLEND_HOT_WALLET = 0x31562ae726AFEBe25417df01bEdC72EF489F45b3; + address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0x8c22EBc8f9B96cEac97EA21c53F3B27ef2F45e57; + address internal constant FRAXLEND_WHITELIST_ADDRESS = 0x64F85076665dcE1FbEfC23391b8BFB2595c250f6; + address internal constant FRAXTAL_BLOCKHASH_PROVIDER = 0x4200000000000000000000000000000000000015; + address internal constant FRAXTAL_MERKLE_PRICE_SOURCE = 0x9990eb28E58380122AA3AdF64ea6f874df51114C; + address internal constant FRAXTAL_STATE_ROOT_ORACLE = 0xeD403d48e2bC946438B5686AA1AD65056Ccf9512; + address internal constant FRXETH_DUAL_ORACLE_REDSTONE = 0x4b0Ca693e29e5FD2AA39332a0387BBCD0f91a527; + address internal constant FXB_20240630_ORACLE = 0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7; + address internal constant FXB_20241231_ORACLE = 0x01480a0C134CeCC309015a564C7e292ba6E0F358; + address internal constant FXB_20261231_ORACLE = 0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3; + address internal constant FXB_20551231_ORACLE = 0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6; + address internal constant FXB_20291231_ORACLE = 0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b; + address internal constant FXB_20251231_ORACLE = 0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18; + address internal constant FXB_VARIABLE_RATE_2 = 0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f; + address internal constant FXS_DUAL_ORACLE_REDSTONE = 0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2; + address internal constant SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE = 0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c; + address internal constant SFRXETH_DUAL_ORACLE_REDSTONE = 0xfbcDf41Cc692ed529b9a8cC1A5867B9524FD0164; + address internal constant TIMELOCK_ADDRESS = 0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2; + address internal constant VARIABLE_RATE_2_ADDRESS = 0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652; + address internal constant VARIABLE_RATE_2_ADDRESS_50 = 0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2; + address internal constant FRAXLEND_PAIR_FXB_20261231_FRAX = 0x032578d99b1070682a5E171012BE1756a50a17d4; + address internal constant FRAXLEND_PAIR_FXB_20241231_FRAX = 0x6154334A7D0E7f5f0479599D15F462B200C721E1; + address internal constant FRAXLEND_PAIR_FXB_20240630_FRAX = 0x57b709e214B239821A78dFCF09c89f52bA3D80aD; + address internal constant FRAXLEND_PAIR_FXB_20291231_FRAX = 0x3e92765eE2B009b104A8A7baf3759B159c19AbA1; + address internal constant FRAXLEND_PAIR_FXB_20251231_FRAX = 0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5; + address internal constant FRAXLEND_PAIR_SFRXETH_FRAX = 0x4F968317721B9c300afBff3FD37365637318271D; + address internal constant FRAXLEND_PAIR_FXS_FRAX = 0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2; + address internal constant FRAXLEND_PAIR_SFRAX_SFRXETH = 0xB71E4829e81f72f7F36A0d858e58109f5948A713; + address internal constant SDAI_ERC4626_ORACLE = 0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838; + address internal constant SDAI_ORACLE_MERKLE_PRICE_SOURCE = 0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a; + address internal constant SFRAX_ERC4626_ORACLE = 0xF750636E1df115e3B334eD06E5b45c375107FC60; + address internal constant SFRAX_MERKLE_PRICE_SOURCE = 0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5; + address internal constant SFRXETH_ERC4626_ORACLE = 0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5; + address internal constant SFRXETH_MERKLE_PRICE_SOURCE = 0xa560E014501f96752726f65c27E96C3e9127Ce32; + address internal constant SUSDE_ERC4626_ORACLE = 0xd295936C8Bb465ADd1eC756a51698127CB4F4910; + address internal constant SUSDE_MERKLE_PRICE_SOURCE = 0xc2B984E37D1CAf5Eef82D9D892287361058955E9; + address internal constant FRAXSWAP_FACTORY = 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; + address internal constant FRAXSWAP_FRAX_FPIS_PAIR = 0x78d264E25781f31343352A0f91875B655c79B843; + address internal constant FRAXSWAP_FRAX_FPI_FARM = 0x7b8848f10A016341c9B2427e8541C19F31C2D243; + address internal constant FRAXSWAP_FRAX_FPI_PAIR = 0x0EFFABede4e31101DE5209096611D073981A817b; + address internal constant FRAXSWAP_FRAX_FXS_FARM = 0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25; + address internal constant FRAXSWAP_FRAX_FXS_PAIR = 0xb4dA8dA10ffF1F6127ab71395053Aa1d499b503F; + address internal constant FRAXSWAP_FRAX_SFRXETH_FARM = 0xe402a39F788f90607A50254fAf56316E6a78231A; + address internal constant FRAXSWAP_FRAX_SFRXETH_PAIR = 0xEBD293F2173082320d88533316F5964298dE316E; + address internal constant FRAXSWAP_FRAX_WFRXETH_FARM = 0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7; + address internal constant FRAXSWAP_ROUTER = 0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6; + address internal constant FRAXSWAP_ROUTER_MULTIHOP = 0x67E04873691258950299Bd8610403D69bA0A1e10; + address internal constant FRAXSWAP_WFRX_ETH_PAIR = 0x4527bcEd9d41706D1436507e9a6e354d3FF44ff9; + address internal constant BALANCE_CHECKER = 0x219356ef2f11a314Dd0D8bfd7f4B0B951Cb16c3a; + address internal constant DELEGATION_REGISTRY = 0x098c837FeF2e146e96ceAF58A10F68Fc6326DC4C; + address internal constant FPIS_LOCKER_PROXY = 0x437E9F65cA234eCfed12149109587139d435AD35; + address internal constant FPIS_LOCKER_IMPL = 0x2b72DF3116cEb8E8a7391024f69A0BfF2718389D; + address internal constant FPIS_LOCKER_UTILS = 0x9E461cF6773F168A991A7aD73E2aD89ecD737745; + address internal constant FRAXTAL_POINTS_FXTL = 0xaB4b7c5C9A7C8EbB97877085A6C3550ad4Ed3f97; + address internal constant SFRAX_ERC4626_MINT_REDEEMER_PROXY = 0xBFc4D34Db83553725eC6c768da71D2D9c1456B55; + address internal constant SFRAX_ERC4626_MINT_REDEEMER_IMPL = 0x0aF57786D6B2447EA2E04F9FAB36a239c2E8C9d5; + address internal constant FRAXFERRY_ETHEREUM_FRAX = 0x00160baF84b3D2014837cc12e838ea399f8b8478; + address internal constant FRAXFERRY_ETHEREUM_FXS = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; + address internal constant FRAXFERRY_ETHEREUM_FPI = 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; + address internal constant FRAXFERRY_ETHEREUM_FPIS = 0xcD3A040f05769d7628582B403063e61B7D212F91; + address internal constant FRAXFERRY_ETHEREUM_SFRXETH = 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; + address internal constant FRAXFERRY_ETHEREUM_SFRAX = 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; + address internal constant BLOCKHASH_PROVIDER = 0x4200000000000000000000000000000000000015; + address internal constant STATE_ROOT_ORACLE = 0xeD403d48e2bC946438B5686AA1AD65056Ccf9512; + address internal constant MERKLE_PRICE_SOURCE = 0x9990eb28E58380122AA3AdF64ea6f874df51114C; + address internal constant CHAINLINK_MERKLE_PRICE_SOURCE = 0x4AD728706bFe28A3F090b3f1D8Ac3A8515805B41; + address internal constant SFRXETH_L2_RATE_ORACLE = 0xEE095b7d9191603126Da584a1179BB403a027c3A; + address internal constant SFRAX_L2_RATE_ORACLE = 0x1B680F4385f24420D264D78cab7C58365ED3F1FF; + address internal constant SDAI_L2_RATE_ORACLE = 0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838; + address internal constant SUSDE_L2_RATE_ORACLE = 0xd295936C8Bb465ADd1eC756a51698127CB4F4910; + address internal constant SFRXETH_L2_RATE_ORACLE_OLD = 0x8865435777730eAAbAAF2d1F55F115a87AbCf91A; + address internal constant SFRAX_L2_RATE_ORACLE_OLD = 0xF750636E1df115e3B334eD06E5b45c375107FC60; + address internal constant FRAXTAL_SDAI_MERKLE_PRICE_SOURCE = 0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a; + address internal constant FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE = 0xE25D8aaa6dF41B94A415EE39cCEE0DF6673B9bDb; + address internal constant FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE = 0xabca0b314d15B3e28F24AC0ee84A63001d1b44Db; + address internal constant FRAXTAL_SUSDE_MERKLE_PRICE_SOURCE = 0xc2B984E37D1CAf5Eef82D9D892287361058955E9; + address internal constant FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE_OLD = 0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5; + address internal constant FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE_OLD = 0xa560E014501f96752726f65c27E96C3e9127Ce32; + address internal constant L1VEFXS_IMPLEMENTATION_OWNER = 0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6; + address internal constant L1VEFXS_PROXY_ADMIN_OWNER = 0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6; + address internal constant L1VEFXS_PROXY_ADMIN = 0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F; + address internal constant L1VEFXS_IMPL_V1 = 0xBDB5088A8e89e9ec83e82caA01EC20Ed976459eD; + address internal constant L1VEFXS_PROXY = 0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F; + address internal constant L1VEFXS_TOTAL_SUPPLY_ORACLE = 0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8; + address internal constant FXB_AMO = 0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313; + address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = 0x111ddab65Af5fF96b674400246699ED40F550De1; + address internal constant VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = 0x691d1AaFB550c35B24e09bb991AEC9612342eD93; + address internal constant VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = 0x39333a540bbea6262e405E1A6d435Bd2e776561E; + address internal constant YIELD_DISTRIBUTOR_PROXY = 0x21359d1697e610e25C8229B2C57907378eD09A2E; + address internal constant YIELD_DISTRIBUTOR_IMPL = 0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B; + address internal constant VESTEDFXS_UTILS = 0xC540f05BF5a09336078634D65E46242DFBa55030; + address internal constant VESTEDFXS_IMPL_V1 = 0x54bd5c72645fed784C117cA83533e0584b24Ee5c; + address internal constant VESTEDFXS_PROXY = 0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF; + address internal constant VEFXS_AGGREGATOR_PROXY = 0x176A4e081653EbB8a2246BAfbfCf663782426531; + address internal constant VEFXS_AGGREGATOR_IMPL = 0xF9Ca1Dc83B16C72b3359CEcD1d3Fc96d80dC4Fa6; + address internal constant COMPTROLLERS = 0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6; + address internal constant PROPOSER_MULTI_SIG = 0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE; + address internal constant GOV_PROPOSER_MSIG = 0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE; + address internal constant CVXSQUIDWFRXETH = 0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d; + address internal constant CVXSQUIDWFRXETH_REWARDER = 0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d; + address internal constant SQUIDWFRXETH = 0x277FA53c8a53C880E0625c92C92a62a9F60f3f04; + address internal constant SQUIDWFRXETH_GAUGE = 0xe5E5ed1B50AE33E66ca69dF17Aa6381FDe4e9C7e; + address internal constant SQUIDWFRXETH_POOL = 0x277FA53c8a53C880E0625c92C92a62a9F60f3f04; + address internal constant CROSS_DOMAIN_MESSENGER = 0x4200000000000000000000000000000000000007; + address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; + address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; + address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; + address internal constant FPIOFT = 0x75c38D46001b0F8108c4136216bd2694982C20FC; + address internal constant FRXETHOFT = 0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604; + address internal constant FRXUSDOFT = 0x96A394058E2b84A89bac9667B19661Ed003cF5D4; + address internal constant SFRXETHOFT = 0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168; + address internal constant SFRXUSDOFT = 0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361; + address internal constant WFRAXOFT = 0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A; + address internal constant FRAXTALHOP = 0x2A2019b30C157dB6c1C01306b8025167dBe1803B; + address internal constant FRAXTALMINTREDEEMHOP = 0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC; +} + +abstract contract AddressHelperFraxtalL2 is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX"); + vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI"); + vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS"); + vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH"); + vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_WFRXETH"); + vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_FRXBTC"); + vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_SFRAX"); + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD_PROXY"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX_PROXY"); + vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI_PROXY"); + vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS_PROXY"); + vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH_PROXY"); + vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_WFRXETH_PROXY"); + vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_FRXBTC_PROXY"); + vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_SFRAX_PROXY"); + vm.label(0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc, "Constants.FXTL_CONVEX_SQUID_WFRXETH_FRAXTAL"); + vm.label(0xCe70630b4b2E889AdC558b58B2980437f58003D4, "Constants.FXTL_FLE_FRAX_FXS_FRAXTAL"); + vm.label(0x7A6BE195f9931341c1f4c4230fc48F8B9b9dE91b, "Constants.FXTL_FLE_FXS_WFRXETH_FRAXTAL"); + vm.label(0x7b8848f10A016341c9B2427e8541C19F31C2D243, "Constants.FXTL_FRAXSWAP_V2_FRAX_FPI_FRAXTAL"); + vm.label(0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25, "Constants.FXTL_FRAXSWAP_V2_FRAX_FXS_FRAXTAL"); + vm.label(0xe402a39F788f90607A50254fAf56316E6a78231A, "Constants.FXTL_FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL"); + vm.label(0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7, "Constants.FXTL_FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL"); + vm.label(0x00a5b34d4b436E3276695a1EaA8242FA2FC11dC5, "Constants.FXTL_FXB_TIMED_LOCKER_20261231"); + vm.label(0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e, "Constants.FXTL_FXB_20261231"); + vm.label(0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba, "Constants.FXTL_FXB_20241231"); + vm.label(0x758094A71a39De49626FE25B86631ED944558653, "Constants.FXTL_FXB_20240630"); + vm.label(0xc38173d34afaea88bc482813b3cd267bc8a1ea83, "Constants.FXTL_FXB_20551231"); + vm.label(0xf1e2b576af4c6a7ee966b14c810b772391e92153, "Constants.FXTL_FXB_20291231"); + vm.label(0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca, "Constants.FXTL_FXB_20251231"); + vm.label(0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE"); + vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE"); + vm.label(0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE"); + vm.label(0xcD3A040f05769d7628582B403063e61B7D212F91, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE"); + vm.label(0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE"); + vm.label(0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CREWMEMBER"); + vm.label(0xA6cBe9aB6075d8b1049Db7528f2fCf22FC7d051B, "Constants.FXTL_CHAINLINK_ETH_USD_ORACLE"); + vm.label(0x0eD01ea3B95e0f68DF2c9CD67F138ff3547b311C, "Constants.FXTL_CIRCUIT_BREAKER_ADDRESS"); + vm.label(0x4C3B0e85CD8C12E049E07D9a4d68C441196E6a12, "Constants.FXTL_FRAXLEND_DEPLOYER_V4"); + vm.label(0x31562ae726AFEBe25417df01bEdC72EF489F45b3, "Constants.FXTL_FRAXLEND_HOT_WALLET"); + vm.label(0x8c22EBc8f9B96cEac97EA21c53F3B27ef2F45e57, "Constants.FXTL_FRAXLEND_PAIR_REGISTRY_ADDRESS"); + vm.label(0x64F85076665dcE1FbEfC23391b8BFB2595c250f6, "Constants.FXTL_FRAXLEND_WHITELIST_ADDRESS"); + vm.label(0x4200000000000000000000000000000000000015, "Constants.FXTL_FRAXTAL_BLOCKHASH_PROVIDER"); + vm.label(0x9990eb28E58380122AA3AdF64ea6f874df51114C, "Constants.FXTL_FRAXTAL_MERKLE_PRICE_SOURCE"); + vm.label(0xeD403d48e2bC946438B5686AA1AD65056Ccf9512, "Constants.FXTL_FRAXTAL_STATE_ROOT_ORACLE"); + vm.label(0x4b0Ca693e29e5FD2AA39332a0387BBCD0f91a527, "Constants.FXTL_FRXETH_DUAL_ORACLE_REDSTONE"); + vm.label(0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7, "Constants.FXTL_FXB_20240630_ORACLE"); + vm.label(0x01480a0C134CeCC309015a564C7e292ba6E0F358, "Constants.FXTL_FXB_20241231_ORACLE"); + vm.label(0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3, "Constants.FXTL_FXB_20261231_ORACLE"); + vm.label(0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6, "Constants.FXTL_FXB_20551231_ORACLE"); + vm.label(0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b, "Constants.FXTL_FXB_20291231_ORACLE"); + vm.label(0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18, "Constants.FXTL_FXB_20251231_ORACLE"); + vm.label(0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f, "Constants.FXTL_FXB_VARIABLE_RATE_2"); + vm.label(0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2, "Constants.FXTL_FXS_DUAL_ORACLE_REDSTONE"); + vm.label(0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c, "Constants.FXTL_SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE"); + vm.label(0xfbcDf41Cc692ed529b9a8cC1A5867B9524FD0164, "Constants.FXTL_SFRXETH_DUAL_ORACLE_REDSTONE"); + vm.label(0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2, "Constants.FXTL_TIMELOCK_ADDRESS"); + vm.label(0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652, "Constants.FXTL_VARIABLE_RATE_2_ADDRESS"); + vm.label(0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2, "Constants.FXTL_VARIABLE_RATE_2_ADDRESS_50"); + vm.label(0x032578d99b1070682a5E171012BE1756a50a17d4, "Constants.FXTL_FRAXLEND_PAIR_FXB_20261231_FRAX"); + vm.label(0x6154334A7D0E7f5f0479599D15F462B200C721E1, "Constants.FXTL_FRAXLEND_PAIR_FXB_20241231_FRAX"); + vm.label(0x57b709e214B239821A78dFCF09c89f52bA3D80aD, "Constants.FXTL_FRAXLEND_PAIR_FXB_20240630_FRAX"); + vm.label(0x3e92765eE2B009b104A8A7baf3759B159c19AbA1, "Constants.FXTL_FRAXLEND_PAIR_FXB_20291231_FRAX"); + vm.label(0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5, "Constants.FXTL_FRAXLEND_PAIR_FXB_20251231_FRAX"); + vm.label(0x4F968317721B9c300afBff3FD37365637318271D, "Constants.FXTL_FRAXLEND_PAIR_SFRXETH_FRAX"); + vm.label(0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2, "Constants.FXTL_FRAXLEND_PAIR_FXS_FRAX"); + vm.label(0xB71E4829e81f72f7F36A0d858e58109f5948A713, "Constants.FXTL_FRAXLEND_PAIR_SFRAX_SFRXETH"); + vm.label(0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838, "Constants.FXTL_SDAI_ERC4626_ORACLE"); + vm.label(0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a, "Constants.FXTL_SDAI_ORACLE_MERKLE_PRICE_SOURCE"); + vm.label(0xF750636E1df115e3B334eD06E5b45c375107FC60, "Constants.FXTL_SFRAX_ERC4626_ORACLE"); + vm.label(0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5, "Constants.FXTL_SFRAX_MERKLE_PRICE_SOURCE"); + vm.label(0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5, "Constants.FXTL_SFRXETH_ERC4626_ORACLE"); + vm.label(0xa560E014501f96752726f65c27E96C3e9127Ce32, "Constants.FXTL_SFRXETH_MERKLE_PRICE_SOURCE"); + vm.label(0xd295936C8Bb465ADd1eC756a51698127CB4F4910, "Constants.FXTL_SUSDE_ERC4626_ORACLE"); + vm.label(0xc2B984E37D1CAf5Eef82D9D892287361058955E9, "Constants.FXTL_SUSDE_MERKLE_PRICE_SOURCE"); + vm.label(0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, "Constants.FXTL_FRAXSWAP_FACTORY"); + vm.label(0x78d264E25781f31343352A0f91875B655c79B843, "Constants.FXTL_FRAXSWAP_FRAX_FPIS_PAIR"); + vm.label(0x7b8848f10A016341c9B2427e8541C19F31C2D243, "Constants.FXTL_FRAXSWAP_FRAX_FPI_FARM"); + vm.label(0x0EFFABede4e31101DE5209096611D073981A817b, "Constants.FXTL_FRAXSWAP_FRAX_FPI_PAIR"); + vm.label(0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25, "Constants.FXTL_FRAXSWAP_FRAX_FXS_FARM"); + vm.label(0xb4dA8dA10ffF1F6127ab71395053Aa1d499b503F, "Constants.FXTL_FRAXSWAP_FRAX_FXS_PAIR"); + vm.label(0xe402a39F788f90607A50254fAf56316E6a78231A, "Constants.FXTL_FRAXSWAP_FRAX_SFRXETH_FARM"); + vm.label(0xEBD293F2173082320d88533316F5964298dE316E, "Constants.FXTL_FRAXSWAP_FRAX_SFRXETH_PAIR"); + vm.label(0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7, "Constants.FXTL_FRAXSWAP_FRAX_WFRXETH_FARM"); + vm.label(0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6, "Constants.FXTL_FRAXSWAP_ROUTER"); + vm.label(0x67E04873691258950299Bd8610403D69bA0A1e10, "Constants.FXTL_FRAXSWAP_ROUTER_MULTIHOP"); + vm.label(0x4527bcEd9d41706D1436507e9a6e354d3FF44ff9, "Constants.FXTL_FRAXSWAP_WFRX_ETH_PAIR"); + vm.label(0x219356ef2f11a314Dd0D8bfd7f4B0B951Cb16c3a, "Constants.FXTL_BALANCE_CHECKER"); + vm.label(0x098c837FeF2e146e96ceAF58A10F68Fc6326DC4C, "Constants.FXTL_DELEGATION_REGISTRY"); + vm.label(0x437E9F65cA234eCfed12149109587139d435AD35, "Constants.FXTL_FPIS_LOCKER_PROXY"); + vm.label(0x2b72DF3116cEb8E8a7391024f69A0BfF2718389D, "Constants.FXTL_FPIS_LOCKER_IMPL"); + vm.label(0x9E461cF6773F168A991A7aD73E2aD89ecD737745, "Constants.FXTL_FPIS_LOCKER_UTILS"); + vm.label(0xaB4b7c5C9A7C8EbB97877085A6C3550ad4Ed3f97, "Constants.FXTL_FRAXTAL_POINTS_FXTL"); + vm.label(0xBFc4D34Db83553725eC6c768da71D2D9c1456B55, "Constants.FXTL_SFRAX_ERC4626_MINT_REDEEMER_PROXY"); + vm.label(0x0aF57786D6B2447EA2E04F9FAB36a239c2E8C9d5, "Constants.FXTL_SFRAX_ERC4626_MINT_REDEEMER_IMPL"); + vm.label(0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_ETHEREUM_FRAX"); + vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.FXTL_FRAXFERRY_ETHEREUM_FXS"); + vm.label(0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, "Constants.FXTL_FRAXFERRY_ETHEREUM_FPI"); + vm.label(0xcD3A040f05769d7628582B403063e61B7D212F91, "Constants.FXTL_FRAXFERRY_ETHEREUM_FPIS"); + vm.label(0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, "Constants.FXTL_FRAXFERRY_ETHEREUM_SFRXETH"); + vm.label(0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, "Constants.FXTL_FRAXFERRY_ETHEREUM_SFRAX"); + vm.label(0x4200000000000000000000000000000000000015, "Constants.FXTL_BLOCKHASH_PROVIDER"); + vm.label(0xeD403d48e2bC946438B5686AA1AD65056Ccf9512, "Constants.FXTL_STATE_ROOT_ORACLE"); + vm.label(0x9990eb28E58380122AA3AdF64ea6f874df51114C, "Constants.FXTL_MERKLE_PRICE_SOURCE"); + vm.label(0x4AD728706bFe28A3F090b3f1D8Ac3A8515805B41, "Constants.FXTL_CHAINLINK_MERKLE_PRICE_SOURCE"); + vm.label(0xEE095b7d9191603126Da584a1179BB403a027c3A, "Constants.FXTL_SFRXETH_L2_RATE_ORACLE"); + vm.label(0x1B680F4385f24420D264D78cab7C58365ED3F1FF, "Constants.FXTL_SFRAX_L2_RATE_ORACLE"); + vm.label(0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838, "Constants.FXTL_SDAI_L2_RATE_ORACLE"); + vm.label(0xd295936C8Bb465ADd1eC756a51698127CB4F4910, "Constants.FXTL_SUSDE_L2_RATE_ORACLE"); + vm.label(0x8865435777730eAAbAAF2d1F55F115a87AbCf91A, "Constants.FXTL_SFRXETH_L2_RATE_ORACLE_OLD"); + vm.label(0xF750636E1df115e3B334eD06E5b45c375107FC60, "Constants.FXTL_SFRAX_L2_RATE_ORACLE_OLD"); + vm.label(0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a, "Constants.FXTL_FRAXTAL_SDAI_MERKLE_PRICE_SOURCE"); + vm.label(0xE25D8aaa6dF41B94A415EE39cCEE0DF6673B9bDb, "Constants.FXTL_FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE"); + vm.label(0xabca0b314d15B3e28F24AC0ee84A63001d1b44Db, "Constants.FXTL_FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE"); + vm.label(0xc2B984E37D1CAf5Eef82D9D892287361058955E9, "Constants.FXTL_FRAXTAL_SUSDE_MERKLE_PRICE_SOURCE"); + vm.label(0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5, "Constants.FXTL_FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE_OLD"); + vm.label(0xa560E014501f96752726f65c27E96C3e9127Ce32, "Constants.FXTL_FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE_OLD"); + vm.label(0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6, "Constants.FXTL_L1VEFXS_IMPLEMENTATION_OWNER"); + vm.label(0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6, "Constants.FXTL_L1VEFXS_PROXY_ADMIN_OWNER"); + vm.label(0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F, "Constants.FXTL_L1VEFXS_PROXY_ADMIN"); + vm.label(0xBDB5088A8e89e9ec83e82caA01EC20Ed976459eD, "Constants.FXTL_L1VEFXS_IMPL_V1"); + vm.label(0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F, "Constants.FXTL_L1VEFXS_PROXY"); + vm.label(0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8, "Constants.FXTL_L1VEFXS_TOTAL_SUPPLY_ORACLE"); + vm.label(0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313, "Constants.FXTL_FXB_AMO"); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1"); + vm.label(0x691d1AaFB550c35B24e09bb991AEC9612342eD93, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_IMPL_V1"); + vm.label(0x39333a540bbea6262e405E1A6d435Bd2e776561E, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_PROXY_V1"); + vm.label(0x21359d1697e610e25C8229B2C57907378eD09A2E, "Constants.FXTL_YIELD_DISTRIBUTOR_PROXY"); + vm.label(0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B, "Constants.FXTL_YIELD_DISTRIBUTOR_IMPL"); + vm.label(0xC540f05BF5a09336078634D65E46242DFBa55030, "Constants.FXTL_VESTEDFXS_UTILS"); + vm.label(0x54bd5c72645fed784C117cA83533e0584b24Ee5c, "Constants.FXTL_VESTEDFXS_IMPL_V1"); + vm.label(0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF, "Constants.FXTL_VESTEDFXS_PROXY"); + vm.label(0x176A4e081653EbB8a2246BAfbfCf663782426531, "Constants.FXTL_VEFXS_AGGREGATOR_PROXY"); + vm.label(0xF9Ca1Dc83B16C72b3359CEcD1d3Fc96d80dC4Fa6, "Constants.FXTL_VEFXS_AGGREGATOR_IMPL"); + vm.label(0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6, "Constants.FXTL_COMPTROLLERS"); + vm.label(0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE, "Constants.FXTL_PROPOSER_MULTI_SIG"); + vm.label(0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE, "Constants.FXTL_GOV_PROPOSER_MSIG"); + vm.label(0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d, "Constants.FXTL_CVXSQUIDWFRXETH"); + vm.label(0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d, "Constants.FXTL_CVXSQUIDWFRXETH_REWARDER"); + vm.label(0x277FA53c8a53C880E0625c92C92a62a9F60f3f04, "Constants.FXTL_SQUIDWFRXETH"); + vm.label(0xe5E5ed1B50AE33E66ca69dF17Aa6381FDe4e9C7e, "Constants.FXTL_SQUIDWFRXETH_GAUGE"); + vm.label(0x277FA53c8a53C880E0625c92C92a62a9F60f3f04, "Constants.FXTL_SQUIDWFRXETH_POOL"); + vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_CROSS_DOMAIN_MESSENGER"); + vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_ERC20_FACTORY_PROXY"); + vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_L2_STANDARD_BRIDGE_PROXY"); + vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_L2_TO_L1_MESSAGE_PASSER"); + vm.label(0x75c38D46001b0F8108c4136216bd2694982C20FC, "Constants.FXTL_FPIOFT"); + vm.label(0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604, "Constants.FXTL_FRXETHOFT"); + vm.label(0x96A394058E2b84A89bac9667B19661Ed003cF5D4, "Constants.FXTL_FRXUSDOFT"); + vm.label(0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168, "Constants.FXTL_SFRXETHOFT"); + vm.label(0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361, "Constants.FXTL_SFRXUSDOFT"); + vm.label(0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A, "Constants.FXTL_WFRAXOFT"); + vm.label(0x2A2019b30C157dB6c1C01306b8025167dBe1803B, "Constants.FXTL_FRAXTALHOP"); + vm.label(0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC, "Constants.FXTL_FRAXTALMINTREDEEMHOP"); + } +} +library FraxtalTestnetL1 { + uint256 internal constant CHAIN_ID = 17000; + address internal constant PROXY_ADMIN = 0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e; + address internal constant COMPTROLLER = 0x88699c59E413e8A47117820D15d8D33b09B21edD; + address internal constant ADDRESS_MANAGER = 0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6; + address internal constant L1_CROSS_DOMAIN_MESSENGER_PROXY = 0x45A98115D5722C6cfC48D711e0053758E7C0b8ad; + address internal constant L1_ERC721_BRIDGE_PROXY = 0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53; + address internal constant L1_STANDARD_BRIDGE_PROXY = 0x0BaafC217162f64930909aD9f2B27125121d6332; + address internal constant L2_OUTPUT_ORACLE_PROXY = 0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32; + address internal constant OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = 0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6; + address internal constant OPTIMISM_PORTAL_PROXY = 0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d; + address internal constant SYSTEM_CONFIG_PROXY = 0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db; +} + +abstract contract AddressHelperFraxtalTestnetL1 is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e, "Constants.FXTL_TN_L1_PROXY_ADMIN"); + vm.label(0x88699c59E413e8A47117820D15d8D33b09B21edD, "Constants.FXTL_TN_L1_COMPTROLLER"); + vm.label(0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6, "Constants.FXTL_TN_L1_ADDRESS_MANAGER"); + vm.label(0x45A98115D5722C6cfC48D711e0053758E7C0b8ad, "Constants.FXTL_TN_L1_L1_CROSS_DOMAIN_MESSENGER_PROXY"); + vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.FXTL_TN_L1_L1_ERC721_BRIDGE_PROXY"); + vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.FXTL_TN_L1_L1_STANDARD_BRIDGE_PROXY"); + vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.FXTL_TN_L1_L2_OUTPUT_ORACLE_PROXY"); + vm.label(0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, "Constants.FXTL_TN_L1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); + vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.FXTL_TN_L1_OPTIMISM_PORTAL_PROXY"); + vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.FXTL_TN_L1_SYSTEM_CONFIG_PROXY"); + } +} +library FraxtalTestnetL2 { + uint256 internal constant CHAIN_ID = 2522; + address internal constant FRAX = 0xFc00000000000000000000000000000000000001; + address internal constant FXS = 0xFc00000000000000000000000000000000000002; + address internal constant FPI = 0xFc00000000000000000000000000000000000003; + address internal constant FPIS = 0xfc00000000000000000000000000000000000004; + address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; + address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; + address internal constant FRAXSWAP_FACTORY = 0xbc679bdd1bA59654bD50DEB03fd80dC97c713fF2; + address internal constant FRAXSWAP_ROUTER = 0x938d99A81814f66b01010d19DDce92A633441699; + address internal constant FRAXSWAP_ROUTER_MULTIHOP = 0x509728dC748586214Fa30cEF61359f136523F24d; + address internal constant COMPTROLLER = 0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160; + address internal constant PROXY_ADMIN = 0xfC00000000000000000000000000000000000007; + address internal constant CROSS_DOMAIN_MESSENGER = 0x4200000000000000000000000000000000000007; + address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; + address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; + address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; +} + +abstract contract AddressHelperFraxtalTestnetL2 is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_TN_L2_FRAX"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_TN_L2_FXS"); + vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_TN_L2_FPI"); + vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_TN_L2_FPIS"); + vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_TN_L2_SFRXETH"); + vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_TN_L2_WFRXETH"); + vm.label(0xbc679bdd1bA59654bD50DEB03fd80dC97c713fF2, "Constants.FXTL_TN_L2_FRAXSWAP_FACTORY"); + vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.FXTL_TN_L2_FRAXSWAP_ROUTER"); + vm.label(0x509728dC748586214Fa30cEF61359f136523F24d, "Constants.FXTL_TN_L2_FRAXSWAP_ROUTER_MULTIHOP"); + vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_TN_L2_COMPTROLLER"); + vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_TN_L2_PROXY_ADMIN"); + vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_TN_L2_CROSS_DOMAIN_MESSENGER"); + vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_TN_L2_ERC20_FACTORY_PROXY"); + vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_TN_L2_L2_STANDARD_BRIDGE_PROXY"); + vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_TN_L2_L2_TO_L1_MESSAGE_PASSER"); + } +} +library Holesky { + uint256 internal constant CHAIN_ID = 17000; + address internal constant FRAX = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FXS = 0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF; + address internal constant FPI = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; + address internal constant FPIS = 0x0363a32D18c25a3FD19a0d00B02106C03d8b8182; + address internal constant FRXETH = 0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e; + address internal constant SFRXETH = 0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3; + address internal constant FPI_ERC20 = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; + address internal constant FPIS_ERC20 = 0x0363a32D18c25a3FD19a0d00B02106C03d8b8182; + address internal constant FRAX_ERC20 = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FXS_ERC20 = 0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF; + address internal constant SFRXETH_ERC20 = 0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3; + address internal constant FRXETH_ERC20 = 0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e; + address internal constant ADDRESS_MANAGER = 0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6; + address internal constant FRAXTAL_COMPTROLLER = 0x88699c59E413e8A47117820D15d8D33b09B21edD; + address internal constant L1_CROSS_DOMAIN_MESSENGER_PROXY = 0x45A98115D5722C6cfC48D711e0053758E7C0b8ad; + address internal constant L1_ERC721_BRIDGE_PROXY = 0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53; + address internal constant L1_STANDARD_BRIDGE_PROXY = 0x0BaafC217162f64930909aD9f2B27125121d6332; + address internal constant L2_OUTPUT_ORACLE_PROXY = 0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32; + address internal constant OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = 0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6; + address internal constant OPTIMISM_PORTAL_PROXY = 0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d; + address internal constant PROTOCOL_VERSIONS_PROXY = 0x0D2d3D6540638291C50db5521527d4115c8eddB7; + address internal constant PROXY_ADMIN = 0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e; + address internal constant SUPERCHAIN_CONFIG_PROXY = 0x089065000De745708B5EE76Be5dF236Eb6453b82; + address internal constant SYSTEM_CONFIG_PROXY = 0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db; + address internal constant FRXETH_MINTER = 0x5E8422345238F34275888049021821E8E08CAa1f; +} + +abstract contract AddressHelperHolesky is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.HOLESKY_FRAX"); + vm.label(0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF, "Constants.HOLESKY_FXS"); + vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.HOLESKY_FPI"); + vm.label(0x0363a32D18c25a3FD19a0d00B02106C03d8b8182, "Constants.HOLESKY_FPIS"); + vm.label(0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e, "Constants.HOLESKY_FRXETH"); + vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.HOLESKY_SFRXETH"); + vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.HOLESKY_FPI_ERC20"); + vm.label(0x0363a32D18c25a3FD19a0d00B02106C03d8b8182, "Constants.HOLESKY_FPIS_ERC20"); + vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.HOLESKY_FRAX_ERC20"); + vm.label(0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF, "Constants.HOLESKY_FXS_ERC20"); + vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.HOLESKY_SFRXETH_ERC20"); + vm.label(0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e, "Constants.HOLESKY_FRXETH_ERC20"); + vm.label(0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6, "Constants.HOLESKY_ADDRESS_MANAGER"); + vm.label(0x88699c59E413e8A47117820D15d8D33b09B21edD, "Constants.HOLESKY_FRAXTAL_COMPTROLLER"); + vm.label(0x45A98115D5722C6cfC48D711e0053758E7C0b8ad, "Constants.HOLESKY_L1_CROSS_DOMAIN_MESSENGER_PROXY"); + vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.HOLESKY_L1_ERC721_BRIDGE_PROXY"); + vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.HOLESKY_L1_STANDARD_BRIDGE_PROXY"); + vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.HOLESKY_L2_OUTPUT_ORACLE_PROXY"); + vm.label(0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, "Constants.HOLESKY_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); + vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.HOLESKY_OPTIMISM_PORTAL_PROXY"); + vm.label(0x0D2d3D6540638291C50db5521527d4115c8eddB7, "Constants.HOLESKY_PROTOCOL_VERSIONS_PROXY"); + vm.label(0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e, "Constants.HOLESKY_PROXY_ADMIN"); + vm.label(0x089065000De745708B5EE76Be5dF236Eb6453b82, "Constants.HOLESKY_SUPERCHAIN_CONFIG_PROXY"); + vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.HOLESKY_SYSTEM_CONFIG_PROXY"); + vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.HOLESKY_FRXETH_MINTER"); + } +} +library Hyperliquid { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + string internal constant REMOTEHOP = ""; + string internal constant REMOTEMINTREDEEMHOP = ""; +} + +abstract contract AddressHelperHyperliquid is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.HYPE_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.HYPE_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.HYPE_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.HYPE_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.HYPE_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.HYPE_WFRAXOFT"); + vm.label(, "Constants.HYPE_REMOTEHOP"); + vm.label(, "Constants.HYPE_REMOTEMINTREDEEMHOP"); + } +} +library Ink { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; + address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; +} + +abstract contract AddressHelperInk is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.INK_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.INK_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.INK_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.INK_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.INK_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.INK_WFRAXOFT"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.INK_REMOTEHOP"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.INK_REMOTEMINTREDEEMHOP"); + } +} +library Katana { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c; + address internal constant REMOTEMINTREDEEMHOP = 0xF6f45CCB5E85D1400067ee66F9e168f83e86124E; +} + +abstract contract AddressHelperKatana is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.KTN_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.KTN_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.KTN_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.KTN_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.KTN_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.KTN_WFRAXOFT"); + vm.label(0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c, "Constants.KTN_REMOTEHOP"); + vm.label(0xF6f45CCB5E85D1400067ee66F9e168f83e86124E, "Constants.KTN_REMOTEMINTREDEEMHOP"); + } +} +library Linea { + address internal constant FPIOFT = 0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4; + address internal constant FRXETHOFT = 0xB1aFD04774c02AE84692619448B08BA79F19b1ff; + address internal constant FRXUSDOFT = 0xC7346783f5e645aa998B106Ef9E7f499528673D8; + address internal constant SFRXETHOFT = 0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2; + address internal constant SFRXUSDOFT = 0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6; + address internal constant WFRAXOFT = 0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5; + address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; + address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; +} + +abstract contract AddressHelperLinea is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4, "Constants.LINEA_FPIOFT"); + vm.label(0xB1aFD04774c02AE84692619448B08BA79F19b1ff, "Constants.LINEA_FRXETHOFT"); + vm.label(0xC7346783f5e645aa998B106Ef9E7f499528673D8, "Constants.LINEA_FRXUSDOFT"); + vm.label(0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2, "Constants.LINEA_SFRXETHOFT"); + vm.label(0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6, "Constants.LINEA_SFRXUSDOFT"); + vm.label(0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5, "Constants.LINEA_WFRAXOFT"); + vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.LINEA_REMOTEHOP"); + vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.LINEA_REMOTEMINTREDEEMHOP"); + } +} +library Mainnet { + uint256 internal constant CHAIN_ID = 1; + address internal constant FRAX = 0x853d955aCEf822Db058eb8505911ED77F175b99e; + address internal constant FXS = 0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0; + address internal constant FPI = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; + address internal constant FPIS = 0xc2544A32872A91F4A553b404C6950e89De901fdb; + address internal constant FRXETH = 0x5E8422345238F34275888049021821E8E08CAa1f; + address internal constant SFRXETH = 0xac3E018457B222d93114458476f3E3416Abbe38F; + address internal constant SFRAX = 0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32; + address internal constant FRAX_ERC20 = 0x853d955aCEf822Db058eb8505911ED77F175b99e; + address internal constant FXS_ERC20 = 0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0; + address internal constant FRXETH_ERC20 = 0x5E8422345238F34275888049021821E8E08CAa1f; + address internal constant SFRXETH_ERC20 = 0xac3E018457B222d93114458476f3E3416Abbe38F; + address internal constant AAVE_AFRAX = 0x02577b426F223A6B4f2351315A19ecD6F357d65c; + address internal constant ANGLE_FRAX_AGEUR_STAKING = 0xb40432243E4F317cE287398e72Ab8f0312fc2FE8; + address internal constant AURA_FRXETH_PXETH_DEPOSIT = 0x60aaA9b33e712A76F9421E46a75ec47fBDc8d4CB; + address internal constant BALANCER_FRXETH_PXETH_GAUGE_DEPRECATED = 0x1e64E373c143810524BDb1Ac8Dce35977d12e55d; + address internal constant BALANCER_SFRXETH_STETH_RETH_BPT = 0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a; + address internal constant BUNNI_FRAX_USDC_GAUGE = 0x50B4cDb17D3e10C9BC88b3744F3fD7c25695EEE7; + address internal constant BUNNI_FRXETH_WETH_GAUGE = 0xcbcCBA2FA84606Df153B593dD01c37a50ac8427C; + address internal constant CONVEX_STKCVXAGEURFRAXBP = 0xd1f21322bBDd3586dC1151ADCcaA2684641c2b31; + address internal constant CONVEX_STKCVXALCXFRAXBP = 0xA0657642224Fc53dAB4a3d2069430afe157BEc5D; + address internal constant CONVEX_STKCVXALUSDFRAXBP = 0x711d650Cd10dF656C2c28D375649689f137005fA; + address internal constant CONVEX_STKCVXAPEUSDFRAXBP = 0xa810D1268cEF398EC26095c27094596374262826; + address internal constant CONVEX_STKCVXBADGERFRAXBP = 0x5a92EF27f4baA7C766aee6d751f754EBdEBd9fae; + address internal constant CONVEX_STKCVXBUSDFRAXBP = 0xaCf54f101B86f9e55d35C0674Ebd8C854E5f80e4; + address internal constant CONVEX_STKCVXCLEVUSDFRAXBP = 0x5745506D56b0088f800085b1227B3f1F7d419c89; + address internal constant CONVEX_STKCVXCOILFRAXBP = 0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6; + address internal constant CONVEX_STKCVXCOILFRAXBP_DEPRECATED = 0x94c491e298625b1226a89DDA091B3932c59FAbc1; + address internal constant CONVEX_STKCVXCRVUSDFRAX = 0x67CC47cF82785728DD5E3AE9900873a074328658; + address internal constant CONVEX_STKCVXCVGFRAXBP = 0x1ee8D379e374A4A00e7d79AF4Bf2eD2b591561c2; + address internal constant CONVEX_STKCVXCVXCRVFRAXBP = 0x57c9F019B25AaAF822926f4Cacf0a860f61eDd8D; + address internal constant CONVEX_STKCVXCVXFRAXBP = 0xeC670c5e0A8A8d5ae5639158565D840DE44CA03f; + address internal constant CONVEX_STKCVXCVXFXSFRAXBP = 0x2F9504988675c91787E188Ed928D6E042d9052e9; + address internal constant CONVEX_STKCVXDOLAFRAXBP = 0xE7211E87D60177575846936F2123b5FA6f0ce8Ab; + address internal constant CONVEX_STKCVXDOLAFRAXPYUSD = 0x972d92f4563Ac9581c730A13A47Ae9d6dCdf18b7; + address internal constant CONVEX_STKCVXEUSDFRAXBP = 0x4c9AD8c53d0a001E7fF08a3E5E26dE6795bEA5ac; + address internal constant CONVEX_STKCVXFPIFRAX = 0x0a08673E3d7c454E1c6b27acD059C50Df6727FC9; + address internal constant CONVEX_STKCVXFRAXBP = 0x963f487796d54d2f27bA6F3Fbe91154cA103b199; + address internal constant CONVEX_STKCVXFRAXFPI_NG = 0x7d69b887751Af59fB4b56BC98fcA0234096Eb267; + address internal constant CONVEX_STKCVXFRAXFXB_20240630 = 0x6D54747fC8e32cA1A91bA2fd36aB673bD84E2e7b; + address internal constant CONVEX_STKCVXFRAXFXB_20241231 = 0x9D7eB7Ec34283D93C6677AE30F3983399Ab72A2f; + address internal constant CONVEX_STKCVXFRAXFXB_20261231 = 0x9A95396eC04B55de54859C06fd75dFb8466F4653; + address internal constant CONVEX_STKCVXFRAXPYUSD = 0x18FEFE5Db2D63aCaa8b5520AFde32507216d39e1; + address internal constant CONVEX_STKCVXFRAXSDAI = 0x90EB2F13Acf1bc35c2c40c0EBaff2De4d2Eb0d6b; + address internal constant CONVEX_STKCVXFRAXUSDP = 0x2A5b8C7DFE489CeB00ec80524C0bA0C1b78433A9; + address internal constant CONVEX_STKCVXFRXETHALETH = 0x56790e4A08eD17aa3b7b4B1b23A6a84D731Fd77e; + address internal constant CONVEX_STKCVXFRXETHANKRETH = 0x854B98dC1F76c92b22F75d1f33D23FEb64D8087F; + address internal constant CONVEX_STKCVXFRXETHCBETH = 0x16e55917849aC7fA4341470FA3A22bB503D5cACD; + address internal constant CONVEX_STKCVXFRXETHCRV = 0xDA0622cBa8cC821ee0d4AfA366Df95E948b43297; + address internal constant CONVEX_STKCVXFRXETHCVX = 0xb01BaB994b52A37a231551f00a1B7cAcd43bc8C9; + address internal constant CONVEX_STKCVXFRXETHETH = 0xa537d64881b84faffb9Ae43c951EEbF368b71cdA; + address internal constant CONVEX_STKCVXFRXETHMSETH = 0x2816Ab1F4Db656602b6B0041c006652A4F5D0437; + address internal constant CONVEX_STKCVXFRXETHPETH = 0xD591A551bC1776A7Ce066a5Df7640266afc850bF; + address internal constant CONVEX_STKCVXFRXETHPXETH = 0xC68A0174401AE002D6DbA8C9788C6dF4c807BD52; + address internal constant CONVEX_STKCVXFRXETHRETH = 0x719505cB97DF15565255eb1bDe65586271dB873C; + address internal constant CONVEX_STKCVXFRXETHRETH_STAFI = 0x76CF35aB1450D3A6c84EdDB8A960A5F65B76e706; + address internal constant CONVEX_STKCVXFRXETHSETH = 0xd79Ae34eD6D11A235629A48aeA9F661a241faD4f; + address internal constant CONVEX_STKCVXFRXETHSTETH = 0x68921998fbc43B360D3cF14a03aF4273CB0cFA44; + address internal constant CONVEX_STKCVXFRXETHWETH = 0xB4fdD7444E1d86b2035c97124C46b1528802DA35; + address internal constant CONVEX_STKCVXFRXETHZETH = 0x882B9fad02D1a7436449dcdE9934Eeb9E287909c; + address internal constant CONVEX_STKCVXFRXETHZUNETH = 0xE2E998A68C6f1D10c41884931457B7C302C6fA97; + address internal constant CONVEX_STKCVXGRAIFRAXBP = 0x5684d5566bb438D8Ef7B3C1E5da9450cD19C1b9f; + address internal constant CONVEX_STKCVXGUSDFRAXBP = 0xF0Ffe16810B7f412c52C1610e3BC9819A7Dcb366; + address internal constant CONVEX_STKCVXLUSDFRAXBP = 0xF0A9b6F6593b4Bf96E1Ab13921A8a3FbFd9d4F16; + address internal constant CONVEX_STKCVXMAIFRAXBP = 0xdE5684F85a78F6CcCFFB4b9301ad0944eb5CE3eE; + address internal constant CONVEX_STKCVXMKUSDFRAXBP = 0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc; + address internal constant CONVEX_STKCVXMSUSDFRAXBP = 0xfB2CCc82755A734C53C8B45f260fFc2df026fe87; + address internal constant CONVEX_STKCVXOHMFRAXBP = 0xc96e1a26264D965078bd01eaceB129A65C09FFE7; + address internal constant CONVEX_STKCVXPUSDFRAXBP = 0x40b42E4ab3c044e67CBFb0bD99C9E975dcB83668; + address internal constant CONVEX_STKCVXRSRFRAXBP = 0xF22D3C85e41Ef4b5Ac8Cb8B89a14718e290a0561; + address internal constant CONVEX_STKCVXSDTFRAXBP = 0x9C8d9667d5726aEcA4d24171958BeE9F46861bed; + address internal constant CONVEX_STKCVXSTGFRAXBP = 0xd600A3E4F57E718A7ad6A0cbb10c2A92c57827e6; + address internal constant CONVEX_STKCVXSUSDFRAXBP = 0x560c7668459221e33ED515D1D17c09ECda1996f5; + address internal constant CONVEX_STKCVXSWETHFRXETH = 0x7b8848f10A016341c9B2427e8541C19F31C2D243; + address internal constant CONVEX_STKCVXTRICRYPTOFRAX = 0x5C0238c4C8f13370001632806C87066B90F1E383; + address internal constant CONVEX_STKCVXTRISDT = 0x50Cde910D1f8b6C787b7903d23082542593E0710; + address internal constant CONVEX_STKCVXTUSDFRAXBP = 0xb324b2BD8a3Dc55b04111E84d5cce0c3771F8889; + address internal constant CONVEX_STKCVXUSDDFRAXBP = 0xF7242A1cE383174802818febB36B6eebb56d5BFb; + address internal constant CONVEX_STKCVXUZDFRAXBP = 0xb8ebc210BCF78be8Ef3F09Dd0d8e85Fa5e252e86; + address internal constant CONVEX_STKCVXUZDFRAXBP_DEPRECATED = 0x7838d18AD75372061a1e71e1499b7E90832c1508; + address internal constant CONVEX_STKCVXUZDFRAXBP_DEPRECATED_OLD = 0x7677D1AADcd42dC40E758115FfDE5e1E10B7f30b; + address internal constant CONVEX_STKCVXXAIFRAXBP = 0x4edF7C64dAD8c256f6843AcFe56876024b54A1b6; + address internal constant CONVEX_STKCVXZUSDFRAXBP = 0x107a33019910E57533Ad4F75762d6A958630cA3d; + address internal constant CURVE_FRAX3CRV_F_2 = 0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC; + address internal constant DFORCE_FRAX_LENDING_ETHEREUM = 0x71173e3c6999c2C72ccf363f4Ae7b67BCc7E8F63; + address internal constant FLUX_FINANCE_FFRAX = 0x1C9A2d6b33B4826757273D47ebEe0e2DddcD978B; + address internal constant FRAXLEND_V1_FRAX_FXS = 0x73e1e624C6d3E027b8674e6C72F104F1429FC17E; + address internal constant FRAXSWAP_V1_FRAX_IQ = 0x5e15E40A3AA06bECA711EdE9F3F76E1d80C34490; + address internal constant FRAXSWAP_V1_FRAX_IQ_V2 = 0xBF33B67F243a4DAbED494Ff5840f113B2E202a0d; + address internal constant FRAXSWAP_V1_FRAX_IQ_V3 = 0x35678017e1D252dA1CdD6745b147E3e75d1f9C27; + address internal constant FRAXSWAP_V1_FRAX_PITCHFXS = 0x9E66E7811fEacf5402B65021475d1A293f7ea797; + address internal constant FRAXSWAP_V1_FRAX_PITCHFXS_V2 = 0x899Aa575E0e46344D18471f69337663C48b76e35; + address internal constant FRAXSWAP_V1_FRAX_PITCHFXS_V3 = 0x24C66Ba25ca2A53bB97B452B9F45DD075b07Cf55; + address internal constant FRAXSWAP_V1_FRAX_SYN = 0xE8453a2e8E97cba69365A1d727Fde3768b18d814; + address internal constant FRAXSWAP_V2_FRAX_FPIS = 0x9d46C0584C5C89e14fb1143e2414712feF36f00F; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0x3F2E53B1A3036Fd33F3c2f3cC49daB26A88DF2e0; + address internal constant FRAXSWAP_V2_FRAX_IQ = 0x7af00CF8D3a8A75210a5Ed74f2254E2EC43B5B5b; + address internal constant FRAXSWAP_V2_FRAX_OHM = 0xf562B2f33b3c90d5D273f88Cdf0CeD866E17092e; + address internal constant FRAXSWAP_V2_FRAX_PITCHFXS = 0xa632Fab76Fe013199c8271Ac22b466b9D11BFe88; + address internal constant FRAXSWAP_V2_FRAX_SDL = 0x8875A328EaDb1e142f4021Fc2098096796a30cf8; + address internal constant FRAXSWAP_V2_FRAX_SYN = 0x788E44b6424A0e4160Ae4766E86640EC5a6baD5b; + address internal constant FRAXSWAP_V2_FRAX_ZZ = 0x38950D42CD549842B3Fc862a45F00eB24331F462; + address internal constant GEARBOX_DFRAX = 0x8A1112AFef7F4FC7c066a77AABBc01b3Fff31D47; + address internal constant GELATO_UNISWAP_FRAX_DAI = 0xcdfc491804A420b677f8e788B5157856910E2F6f; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC = 0x21AF9DBa45989512468B08d13978e9040cc0cEF6; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_DEPRECATED = 0x90d52cdc60B7FF7994095Aa184694225035E8A60; + address internal constant KYBERSWAP_ELASTIC_FRXETH_ETH = 0x6b96465F5e51C01134e0e64bff19f922fA7337C7; + address internal constant KYBERSWAP_ELASTIC_FRXETH_ETH_DEPRECATED = 0x0cF99bbc8794e09e713769c4352eB3318e25c975; + address internal constant KYBERSWAP_ELASTIC_FRXETH_FRAX = 0xaDf48a504b7E7262FE9BFC62Ab11894187590BB7; + address internal constant MONOLITH_MO_SAMM_FRAX_USDT = 0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264; + address internal constant MONOLITH_MO_SAMM_FRXETH_WETH = 0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96; + address internal constant MONOLITH_MO_VAMM_FXS_FRXETH = 0x520b8e754768EEed9a37d78de76Cd5d75456b92F; + address internal constant PICKLE_FINANCE_CURVE_CVXFXS_FXS = 0x6667c53D631410649B1826D21cFdf41E7a7aE6b1; + address internal constant PICKLE_FINANCE_PVEFXS_BRINERY = 0x62826760CC53AE076a7523Fd9dCF4f8Dbb1dA140; + address internal constant PICKLE_FINANCE_SADDLE_D4 = 0x08cb0A0ba8e4f143e4e6F7BED65E02b6dFb9A16C; + address internal constant PICKLE_FINANCE_UNIV3_FRAX_DAI = 0xA50e005c3f2f3Cd1f56B09DF558816CfCe25E934; + address internal constant PICKLE_FINANCE_UNIV3_FRAX_USDC = 0x6092cdE5762FA9F5c8D081fb0c5eD23601f0F400; + address internal constant SADDLE_ALUSD_FEI_FRAX_LUSD = 0x0639076265e9f88542C91DCdEda65127974A5CA5; + address internal constant SOLIDLY_SAMM_FRAX_USDC = 0x810E190Be9592615D75c514C0f9D8c9b79eB8056; + address internal constant SOLIDLY_SAMM_FRAX_USDT = 0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264; + address internal constant SOLIDLY_SAMM_FRXETH_WETH = 0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96; + address internal constant SOLIDLY_VAMM_FRAX_FRXETH = 0xFae2B6Cac80635Cf768c9B68A4f453DB00BC79F0; + address internal constant SOLIDLY_VAMM_FXS_FRXETH = 0x520b8e754768EEed9a37d78de76Cd5d75456b92F; + address internal constant SOMMELIER_FRAXIMAL = 0x290a42E913083Edf5AEFb241f8A12B306C19f8f9; + address internal constant STAKEDAO_CVXFXS_FXS = 0xAB1927160EC7414C6Fa71763E2a9f3D107c126dd; + address internal constant STAKEDAO_FRAX3CRV = 0x72E158d38dbd50A483501c24f792bDAAA3e7D55C; + address internal constant STAKEDAO_FRAX_USDC = 0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503; + address internal constant STAKEDAO_FRXETHCRV = 0x2932a86df44Fe8D2A706d8e9c5d51c24883423F5; + address internal constant STAKEDAO_SANFRAX = 0xb40432243E4F317cE287398e72Ab8f0312fc2FE8; + address internal constant STAKEDAO_SDETH_FRAXPUT = 0x0A53544b2194Dd8Ebc62c779043fc0624705BB56; + address internal constant STAKEDAO_SDFRAX3CRV_F = 0xEB81b86248d3C2b618CcB071ADB122109DA96Da2; + address internal constant STAKEDAO_SDFXS = 0xF3C6e8fbB946260e8c2a55d48a5e01C82fD63106; + address internal constant STAKEDAO_SDFXS_FXS = 0xa9A9BC60fc80478059A83f516D5215185eeC2fc0; + address internal constant STAKEDAO_SFRXETH_STETH_RETH_BPT = 0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a; + address internal constant STARGATE_BRIDGE_LIQUIDITY_FRAX_ETHEREUM = 0xB0D502E938ed5f4df2E681fE6E419ff29631d62b; + address internal constant SUSHI_FRAX_SUSHI = 0xb4Ab0dE6581FBD3A02cF8f9f265138691c3A7d5D; + address internal constant TEMPLE_FRAX_TEMPLE = 0x10460d02226d6ef7B2419aE150E6377BdbB7Ef16; + address internal constant TOKEMAK_FRAX_STAKING = 0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2; + address internal constant TOKEMAK_FXS_STAKING = 0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655; + address internal constant UNISWAP_FEI_TRIBE = 0x9928e4046d7c6513326cCeA028cD3e7a91c7590A; + address internal constant UNISWAP_FRAX_FXS = 0xda2c338350a0E59Ce71CDCED9679A3A590Dd9BEC; + address internal constant UNISWAP_FRAX_IQ = 0xF37057823910653a554d996B49E3399DC87fAE1b; + address internal constant UNISWAP_FRAX_OHM = 0xfC77A420f56Dec53e3b91D7FC936902e132335FF; + address internal constant UNISWAP_FRAX_USDC = 0xa29367a3f057F3191b62bd4055845a33411892b6; + address internal constant UNISWAP_FRAX_WETH = 0xD875628B942f8970De3CcEaf6417005F68540d4f; + address internal constant UNISWAP_FXS_WETH = 0xDc65f3514725206Dd83A8843AAE2aC3D99771C88; + address internal constant UNISWAP_V3_FRAX_AGEUR = 0xf8caEd1943B15B877D7105B9906a618c154f69E8; + address internal constant UNISWAP_V3_FRAX_DAI = 0xF22471AC2156B489CC4a59092c56713F813ff53e; + address internal constant UNISWAP_V3_FRAX_USDC = 0x3EF26504dbc8Dd7B7aa3E97Bc9f3813a9FC0B4B0; + address internal constant VEFPIS_FPIS_STAKING = 0x574C154C83432B0A45BA3ad2429C3fA242eD7359; + address internal constant VEFXS_FXS_STAKING = 0xc8418aF6358FFddA74e09Ca9CC3Fe03Ca6aDC5b0; + address internal constant VESPER_ORBIT_FRAX = 0x698137C473bc1F0Ea9b85adE45Caf64ef2DF48d6; + address internal constant YEARN_CRVFRAX_VAULT_V3 = 0x1A5ebfF0E881Aec34837845e4D0EB430a1B4b737; + address internal constant SLIPPAGE_AUCTION_FACTORY = 0xc9268c7F59850B26567b0f5d3Dcc317cEDC43490; + address internal constant FXB_FACTORY = 0xa8478781D9605E17c3b4c9C79e7127c4597116E4; + address internal constant FXB_AMO = 0x452420df4AC1e3db5429b5FD629f3047482C543C; + address internal constant FXB_AMO_TIMELOCK = 0x831822660572bd54ebaa065C2acef662a6277D40; + address internal constant FXB_20240630 = 0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e; + address internal constant AUCTION_20240630 = 0xC92067D8DDb1970ecB93202DA31a3C45cC2c1F44; + address internal constant ORACLE_20240630 = 0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97; + address internal constant CURVE_20240630_MAINNET_POOL = 0x4ef4c7519023F30A78647EEab321d6cFabC2513c; + address internal constant FXB_20241231 = 0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09; + address internal constant AUCTION_20241231 = 0xc9aa98788a675FF0846E8856cb83F19452f3b0c8; + address internal constant FXB_20241231_ORACLE = 0x08a0748cF885F46e20fA30A50a035808eab293D3; + address internal constant CURVE_20241231_MAINNET_POOL = 0x6307E6688819951Cf8D6B6066018243D2496952F; + address internal constant CURVE_20241231_ARBITRUM_POOL = 0xE920eEdAff6c3BEd1Ef61010B64d46986634E908; + address internal constant CURVE_20241231_ARBITRUM_GAUGE = 0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68; + address internal constant FXB_20261231 = 0x76237BCfDbe8e06FB774663add96216961df4ff3; + address internal constant AUCTION_20261231 = 0x63981f5E690eaF7E8795c42832664e8848F532fB; + address internal constant FXB_20261231_ORACLE = 0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707; + address internal constant CURVE_20261231_MAINNET_POOL = 0xe035e27A8eD6842b478933820f90093D205F7098; + address internal constant CURVE_20261231_ARBITRUM_POOL = 0x946adc524BD312D036776798c46ceDD948DD0A0f; + address internal constant CURVE_20261231_ARBITRUM_GAUGE = 0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = 0x4b8792aF00eaE944484bF572bc33029B2184a50C; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; + address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = 0xA381d58e96eC3818c825E1fb264099448945CF8b; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = 0x18A5ca670dC42D0551f00E11A730074f6787f17F; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = 0xF380200B115Caa22D49e6C115b758d6130377620; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; + address internal constant FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE = 0x3eF1d856EA62A2292B8690855042095a7aC48B4b; + address internal constant FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE = 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE = 0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE = 0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE = 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE = 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = 0x621D0e62f26314387f338A2509aFA3Ae3414661A; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE = 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9; + address internal constant FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE = 0x2d2261f970F605C813f160E8BAEd455E9004A842; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = 0xfB788F9E20ef426a32A67986654750172A6c1788; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE = 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = 0x9A576A3d39c589A861B46864C253288bcA428a6c; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = 0x958815f476cD07354c0BC034EE5077B20fD93003; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = 0x228567c10b7533C88057c10dDeA6349360F122c5; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = 0x86E71075e55F0aaD27D700017E0783458310c98a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = 0xF887C4cFAAfB43d1AA7De204344895591016772c; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE = 0x27E97F35D80514D5DD1Caa730e22a292E912a214; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE = 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; + address internal constant FRAXFERRY_CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FRAXFERRY_FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FRAXFERRY_CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FRAX_POOL_USDC = 0x3C2982CA260e870eee70c423818010DfeF212659; + address internal constant FRAX_POOL_USDC_V2 = 0x1864Ca3d47AaB98Ee78D11fc9DCC5E7bADdA1c0d; + address internal constant FRAX_POOL_USDT = 0x7d3FCd3825AE54E8E8FFD3d0ce95882330d54968; + address internal constant FRAX_POOL_V3 = 0x2fE065e6FFEf9ac95ab39E5042744d695F560729; + address internal constant AAVE_ERC20 = 0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9; + address internal constant AAVE_TOKEN_DUAL_ORACLE_ADDRESS = 0x3284E1BCEaf70767A7575d0e1e10fAFbC4618B52; + address internal constant AAVE_USD_CHAINLINK_ORACLE = 0x547a514d5e3769680Ce22B2361c10Ea13619e8a9; + address internal constant APECOIN_DUAL_ORACLE_ADDRESS = 0x2CDF5812F4ebcF3BD533E8918D47Bd3e65514520; + address internal constant APE_ERC20 = 0x4d224452801ACEd8B2F0aebE155379bb5D594381; + address internal constant APE_USD_CHAINLINK_ORACLE = 0xD10aBbC76679a20055E167BB80A24ac851b37056; + address internal constant BTC_USD_CHAINLINK_ORACLE = 0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c; + address internal constant CHAIN_LINK_TOKEN_DUAL_ORACLE = 0x7F09c398740518F8e34556D8C1A1FBE1cb1F6Db0; + address internal constant CIRCUIT_BREAKER_ADDRESS = 0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c; + address internal constant COMBO_ORACLE = 0x878f2059435a19C79c20318ee57657bF4543B6d4; + address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC = 0x734fd1fD1f3720379f52cB9d8168d76Cd1ca4A73; + address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xc3a483Bb5F96bC4E6104325aa1A229A8E29166B3; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x1cBE07F3b3bf3BDe44d363cecAecfe9a98EC2dff; + address internal constant FRAXLEND_COMPTROLLER_ADDRESS = 0x168200cF227D4543302686124ac28aE0eaf2cA0B; + address internal constant CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP = 0x8A2112B42AF1F997002FBAfF77dd09F42A281e8d; + address internal constant CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP = 0x45127c7fA0c3Ce6A18fEc9604D96eDfBBc8A9700; + address internal constant CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD = 0x54a3A6aFd87F10Eea4Acc2A067A2C0b612B6D315; + address internal constant CONVEX_WRAPPER_FRXETH_ETH_FRAXLEND_LP_OLD = 0xd1b222AAEdf2877CeEB3c66BDaA6858200eb48fC; + address internal constant CPI_TRACKER_ORACLE = 0x7086F2aCB5558043fF9cE3df346D8E3FB4F4f452; + address internal constant CPI_TRACKER_ORACLE_V2 = 0x66B7DFF2Ac66dc4d6FBB3Db1CB627BBb01fF3146; + address internal constant CRV_ERC20 = 0xD533a949740bb3306d119CC777fa900bA034cd52; + address internal constant CRV_USD_CHAINLINK_ORACLE = 0xCd627aA160A6fA45Eb793D19Ef54f5062F20f33f; + address internal constant CVX_ERC20 = 0x4e3FBD56CD56c3e72c1403e103b45Db9da5B9D2B; + address internal constant CVX_USD_CHAINLINK_ORACLE = 0xd962fC30A72A84cE50161031391756Bf2876Af5D; + address internal constant ETH_USD_CHAINLINK_ORACLE = 0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419; + address internal constant EZETHETH_DUAL_ORACLE = 0x8216AE38454cCe2d52dEcf0442042250Ea6A2510; + address internal constant EZETH_DUAL_ORACLE = 0xB020ab0E609d907578f6899a9469E3CbD79e4e70; + address internal constant EZETH_ERC20 = 0xbf5495Efe5DB9ce00f80364C8B423567e58d2110; + address internal constant FIL_ERC20 = 0xB8B01cec5CEd05C457654Fc0fda0948f859883CA; + address internal constant FIL_ETH_CHAINLINK_ORACLE = 0x0606Be69451B1C9861Ac6b3626b99093b713E801; + address internal constant FIL_USD_CHAINLINK_ORACLE = 0x1A31D42149e82Eb99777f903C08A2E41A00085d3; + address internal constant FPIS_ERC20 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; + address internal constant FPI_CONTROLLER_POOL_ADDRESS = 0x2397321b301B80A1C0911d6f9ED4b6033d43cF51; + address internal constant FPI_ERC20 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; + address internal constant FPI_ORACLE = 0xd2516e709a2e9D64F66B4c4009efE4F74F5FA40D; + address internal constant FPI_ORACLE_V2 = 0x2469757756ebA7Bea6B7F054896e3Db74103A962; + address internal constant FRAXBP_CURVE_LP_DUAL_ORACLE = 0x251d4fE77eD73126583Ee347041258ABeEcB7C66; + address internal constant FRAXLEND_DEPLOYER_ADDRESS_V0 = 0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044; + address internal constant FRAXLEND_PAIRDEPLOYER = 0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044; + address internal constant FRAXLEND_PAIRHELPER = 0x26fa88b783cE712a2Fa10E91296Caf3daAE0AB37; + address internal constant FRAXLEND_PAIR_DEPLOYER_ADDRESS = 0x38488dE975B77dc1b0D4B8569f596f6FD6ca0B92; + address internal constant FRAXLEND_PAIR_DEPLOYER_CONVEX_ADDRESS = 0xC4e34AD5908c4D2508a26C20c8687Ff64CB9e05b; + address internal constant FRAXLEND_PAIR_DEPLOYER_V3_ADDRESS = 0xaa913C26dD7723Fcae9dBD2036d28171a56C6251; + address internal constant FRAXLEND_PAIR_DEPLOYER_V41_ADDRESS = 0xEb8816BAEB70690660ce6C0eDA2b07A21493e664; + address internal constant FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = 0x7AB788d0483551428f2291232477F1818952998C; + address internal constant FRAXLEND_PAIR_HELPER = 0x1b0bCeD6dd26a7c234506E261BC68C9A3A4031b7; + address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0xD6E9D27C75Afd88ad24Cd5EdccdC76fd2fc3A751; + address internal constant FRAXLEND_WHITELIST_ADDRESS = 0x118C1462AA28bF2ea304f78f49C3388cfd93234e; + address internal constant FRAXSWAP_ROUTER_ADDRESS = 0xC14d550632db8592D1243Edc8B95b0Ad06703867; + address internal constant FRAX_HOT_WALLET = 0xdB3388e770F49A604E11f1a2084B39279492a61f; + address internal constant FRAX_USDC_CURVE_LP_DUAL_ORACLE_ADDRESS = 0x2Ad35cce2a690E0bF1e6dCAC2F9175389F31D7F4; + address internal constant FRAX_USDC_CURVE_POOL_LP_ERC20 = 0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC; + address internal constant FRAX_USDC_CURVE_POOL_NOT_LP = 0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2; + address internal constant FRAX_USDC_PLAIN_POOL = 0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2; + address internal constant FRAX_USD_CHAINLINK_ORACLE = 0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD; + address internal constant FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS = 0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB; + address internal constant FRXETH_ETH_CURVE_POOL_LP_ERC20 = 0xf43211935C781D5ca1a41d2041F397B8A7366C7A; + address internal constant FRXETH_ETH_CURVE_POOL_NOT_LP = 0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577; + address internal constant FRXETH_ETH_DUAL_ORACLE_ADDRESS = 0xb12c19C838499E3447AFd9e59274B1BE56b1546A; + address internal constant FRXETH_FRAX_ORACLE_ADDRESS = 0xC58F3385FBc1C8AD2c0C9a061D7c13b141D7A5Df; + address internal constant FXB_20240630_ERC20 = 0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e; + address internal constant FXB_20240630_ORACLE = 0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97; + address internal constant FXB_20241231_ERC20 = 0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09; + address internal constant FXB_20241231_ORACLE_ADAPTER = 0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617; + address internal constant FXB_20261231_ERC20 = 0x76237BCfDbe8e06FB774663add96216961df4ff3; + address internal constant FXB_20261231_ORACLE_ADAPTER = 0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3; + address internal constant FXB_VARIABLE_RATE_2 = 0x01480a0C134CeCC309015a564C7e292ba6E0F358; + address internal constant FXS_USD_CHAINLINK_ORACLE = 0x6Ebc52C8C1089be9eB3945C4350B68B8E4C2233f; + address internal constant GOHM_ERC20 = 0x0ab87046fBb341D058F17CBC4c1133F25a20a52f; + address internal constant GOHM_ORACLE = 0xe893297a9d4310976424fD0B25f53aC2B6464fe3; + address internal constant LDO_DUAL_ORACLE = 0x883Aa2E1E46b53648520E0F6857e2ee1798F3e5d; + address internal constant LDO_ERC20 = 0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32; + address internal constant LDO_ETH_CHAINLINK_ORACLE = 0x4e844125952D32AcdF339BE976c98E22F6F318dB; + address internal constant LDO_ETH_CURVE_V2_POOL = 0x9409280DC1e6D33AB7A8C6EC03e5763FB61772B5; + address internal constant LINEAR_INTEREST_RATE = 0x2f3511C5E960040369F68508ebb366DF58DF1BF2; + address internal constant LINEAR_RATE_ADDRESS = 0x2f3511C5E960040369F68508ebb366DF58DF1BF2; + address internal constant LINK_ERC20 = 0x514910771AF9Ca656af840dff83E8264EcF986CA; + address internal constant LINK_USD_CHAINLINK_ORACLE = 0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c; + address internal constant MAKER_DUAL_ORACLE_ADDRESS = 0x4c7b43EcE8958D7f6b184B3833DD1D383db1f83b; + address internal constant MKR_ERC20 = 0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2; + address internal constant MKR_ETH_CHAINLINK_ORACLE = 0x24551a8Fb2A7211A25a17B1481f043A8a8adC7f2; + address internal constant MKR_USD_CHAINLINK_ORACLE = 0xec1D1B3b0443256cc3860e24a46F108e699484Aa; + address internal constant OHMV2_ETH_CHAINLINK_ORACLE = 0x9a72298ae3886221820B1c878d12D872087D3a23; + address internal constant RETH_DUAL_ORACLE = 0x8161EDD2208247066FA213EDA909B0D351543b3d; + address internal constant RETH_ERC20 = 0xae78736Cd615f374D3085123A210448E74Fc6393; + address internal constant RSETHETH_DUAL_ORACLE = 0x16BAb4C46b36587609093633550816fc828817Ba; + address internal constant RSETH_ERC20 = 0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7; + address internal constant SFRAX_ERC20 = 0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32; + address internal constant SFRXETH_DUAL_ORACLE_ADDRESS = 0xd2F0fa7f2E6a60EEcf4b78c5b6D81002b9789F2c; + address internal constant SFRXETH_ETH_DUAL_ORACLE_ADDRESS = 0x1473F3e4d236CBBe3412b9f65B4c210756BE2C0E; + address internal constant SFRXETH_FRAX_ORACLE_ADDRESS = 0xB9af7723CfBd4469A7E8aa60B93428D648Bda99d; + address internal constant SFRXETH_ORACLE = 0x27942aFe4EcB7F9945168094e0749CAC749aC97B; + address internal constant SFRXETH_ORACLE_V2 = 0x807502C8EAdAc82C3227249f8aCf54d9d98F76d1; + address internal constant SFRXETH_SFRAX_INVERSE_ORACLE_ADAPTER = 0xAfBcCB0a8d301AA8c18eBb4Ac94aB32d394fDCeC; + address internal constant SFRXETH_USDC_ORACLE_V2_ADAPTER = 0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f; + address internal constant SFRXETH_USD_ORACLE_V2 = 0x3d3D868522b5a4035ADcb67BF0846D61597A6a6F; + address internal constant SUSDE_ERC20 = 0x9D39A5DE30e57443BfF2A8307A4256c8797A3497; + address internal constant SUSDE_ORACLE = 0x8Eb7a4Fa315620CC342073326acC206961F4BB62; + address internal constant UNISWAP_DUAL_ORACLE_ADDRESS = 0x33A9D662d9F7cb2153e3a5102615B08865BeAbdB; + address internal constant UNIV2_ROUTER = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; + address internal constant UNI_ERC20 = 0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984; + address internal constant UNI_USD_CHAINLINK_ORACLE = 0x553303d460EE0afB37EdFf9bE42922D8FF63220e; + address internal constant USDC_ERC20 = 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48; + address internal constant USDC_USD_CHAINLINK_ORACLE = 0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6; + address internal constant USDE_CURVE_PAIR = 0x5dc1BF6f1e983C0b21EfB003c105133736fA0743; + address internal constant USDE_ERC20 = 0x4c9EDD5852cd905f086C759E8383e09bff1E68B3; + address internal constant USDE_ORACLE = 0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838; + address internal constant VARIABLE_RATE_2_ADDRESS = 0x18500cB1f2fE7a40eBdA393383A0B8548a31F261; + address internal constant VARIABLE_RATE_2_ADDRESS_50 = 0x576E23b6E2665A91DdF301DcfF53d1fFA2972bB5; + address internal constant VARIABLE_RATE_50BP_ADDRESS = 0xFf7846bAcB63FE97406a1E1e48CAf1595f66A98c; + address internal constant VARIABLE_RATE_ADDRESS = 0x9327058a739089869B7DC3436E074C6d56051C7A; + address internal constant VARIABLE_RATE_ADDRESS_OLD = 0x3da1bf0Be175B7cAa38d67A6E78371947d2F51f7; + address internal constant VARIABLE_RATE_STABLE_ADDRESS = 0x9599033315C29Be9690b716bFE409381426dAD41; + address internal constant WBTC_ERC20 = 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599; + address internal constant WBTC_SFRAX_INVERSE_DUAL_ORACLE = 0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC; + address internal constant WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = 0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b; + address internal constant WETH_ERC20 = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; + address internal constant WETH_FRAX_V3_POOL = 0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A; + address internal constant WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = 0x1cA1350F67575B0beE44EC9DC6725A4032431F33; + address internal constant WETH_USDC_V3_POOL = 0xE0554a476A092703abdB3Ef35c80e0D76d32939F; + address internal constant WSTETH_ERC20 = 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0; + address internal constant WSTETH_USD_DUAL_ORACLE_ADDRESS = 0xe73375f36A1b17A21d7Aa0fDa092195431e7017a; + address internal constant FRAXLEND_PAIR_WETH_FRAX = 0x794F6B13FBd7EB7ef10d1ED205c9a416910207Ff; + address internal constant FRAXLEND_PAIR_WBTC_FRAX = 0x32467a5fc2d72D21E8DCe990906547A2b012f382; + address internal constant FRAXLEND_PAIR_SFRXETH_FRAX = 0x78bB3aEC3d855431bd9289fD98dA13F9ebB7ef15; + address internal constant FRAXLEND_PAIR_CRVETHFRXETH_FRAX = 0x281E6CB341a552E4faCCc6b4eEF1A6fCC523682d; + address internal constant FRAXLEND_PAIR_FXS_FRAX = 0xDbe88DBAc39263c47629ebbA02b3eF4cf0752A72; + address internal constant FRAXLEND_PAIR_FPI_FRAX = 0x74F82Bd9D0390A4180DaaEc92D64cf0708751759; + address internal constant FRAXLEND_PAIR_APE_FRAX = 0x3a25B9aB8c07FfEFEe614531C75905E810d8A239; + address internal constant FRAXLEND_PAIR_CVX_FRAX = 0xa1D100a5bf6BFd2736837c97248853D989a9ED84; + address internal constant FRAXLEND_PAIR_CRV_FRAX = 0x3835a58CA93Cdb5f912519ad366826aC9a752510; + address internal constant FRAXLEND_PAIR_GOHM_FRAX = 0x66bf36dBa79d4606039f04b32946A260BCd3FF52; + address internal constant FRAXLEND_PAIR_MKR_FRAX = 0x82Ec28636B77661a95f021090F6bE0C8d379DD5D; + address internal constant FRAXLEND_PAIR_UNI_FRAX = 0xc6CadA314389430d396C7b0C70c6281e99ca7fe8; + address internal constant FRAXLEND_PAIR_AAVE_FRAX = 0xc779fEE076EB04b9F8EA424ec19DE27Efd17A68d; + address internal constant FRAXLEND_PAIR_FXB_20240630_FRAX = 0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF; + address internal constant FRAXLEND_PAIR_FXB_20241231_FRAX = 0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a; + address internal constant FRAXLEND_PAIR_FXB_20261231_FRAX = 0x1c0C222989a37247D974937782cebc8bF4f25733; + address internal constant FRAXLEND_PAIR_SFRXETH_USDC = 0xeE847a804b67f4887c9E8fe559A2dA4278deFB52; + address internal constant FRAXLEND_PAIR_LINK_FRAX = 0x7093F6141293F7C4F67E5efD922aC934402E452d; + address internal constant FRAXLEND_PAIR_WSTETH_FRAX = 0xb5a46f712F03808aE5c4B885C6F598fA06442684; + address internal constant FRAXLEND_PAIR_LDO_FRAX = 0x0601B72bEF2b3F09E9f48B7d60a8d7D2D3800C6e; + address internal constant FRAXLEND_PAIR_RETH_FRAX = 0xa4Ddd4770588EF97A3a03E4B7E3885d824159bAA; + address internal constant FRAXLEND_PAIR_SUSDE_FRAX = 0xb5Ae5b75C0DF5632c572A657109375646Ce66f90; + address internal constant FRAXLEND_PAIR_SFRAX_WBTC = 0xb67Bd04f74BD79a505c5167675E8812355270eD5; + address internal constant FRAXLEND_PAIR_SFRAX_SFRXETH = 0x501256B1DC7bb99CdE57AF188a69307BCC7E00E8; + address internal constant FRAXLEND_PAIR_EZETH_FRXETH = 0x1eE17BE9B788bcf3EB86C08D0E2b049e036F6eb1; + address internal constant FRAXLEND_PAIR_RSETH_FRXETH = 0xCfE3550206ea801c3F7Dc7997376F09E0b7e4B81; + address internal constant FRAXLEND_WRAPPER_FACTORY = 0xe5Ca8CB440A6f9F6fA1D535D94A839CED59D9942; + address internal constant FRAXSWAP_FACTORY_V1 = 0xB076b06F669e682609fb4a8C6646D2619717Be4b; + address internal constant FRAXSWAP_FACTORY_V2 = 0x43eC799eAdd63848443E2347C49f5f52e8Fe0F6f; + address internal constant FRAXSWAP_ROUTER_V1 = 0x1C6cA5DEe97C8C368Ca559892CCce2454c8C35C7; + address internal constant FRAXSWAP_ROUTER_V2 = 0xC14d550632db8592D1243Edc8B95b0Ad06703867; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x25e9acA5951262241290841b6f863d59D37DC4f0; + address internal constant FRAXSWAP_PAIR_FRAX_FPI = 0x5A1eA0130Dc4DC38420AA77929f992f1FBd482Bb; + address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_FPI = 0xd79886841026a39cFF99321140B3c4D31314782B; + address internal constant FRAXSWAP_PAIR_FRAX_FXS = 0x8206412c107eF1aDb70B9277974f5163760E128E; + address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_FXS = 0x03B59Bd1c8B9F6C265bA0c3421923B93f15036Fa; + address internal constant FRAXSWAP_PAIR_FRAX_FPIS = 0x99887AC15eBCcbad52FA2c9ceDc9D91A91e36051; + address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_FPIS = 0x56695c26b3Cdb528815cd22fF7B47510ab821EFd; + address internal constant FRAXSWAP_PAIR_FPI_FPIS = 0xD3542ec999ceA6C79f09483fF88833f154a5e92f; + address internal constant FRAXSWAP_PAIR_FS_V2_FPI_FPIS = 0xF14766a7C44EFb7F71441B7114d5Dd295B637175; + address internal constant FRAXSWAP_PAIR_FPI_FXS = 0x843B5Ae5861362F20A3aC185A2dD2393D7526C65; + address internal constant FRAXSWAP_PAIR_FS_V2_FPI_FXS = 0x3ECfdA4EfF6184cD8563772D6d024cB0Fb9cBf80; + address internal constant FRAXSWAP_PAIR_FXS_FPIS = 0x1306b420B4B5f99cBeE938E369f06863a0f419A5; + address internal constant FRAXSWAP_PAIR_FS_V2_FXS_FPIS = 0x7a9Bd205B55cCB1Cc1c5B99FF5Db87a6e7B2C38b; + address internal constant FRAXSWAP_PAIR_FS_V2_FXS_FRXETH = 0x49FD21C5C8813B1bAE4e5507C556391D6Dd9e9f1; + address internal constant FRAXSWAP_PAIR_FRAX_WETH = 0x8300f0528e00Ad33b218bb05D396F61A9FDd68Cd; + address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_WETH = 0x31351Bf3fba544863FBff44DDC27bA880916A199; + address internal constant FRAXSWAP_PAIR_FRAX_PITCHFXS = 0x0a92aC70B5A187fB509947916a8F63DD31600F80; + address internal constant FRAXSWAP_PAIR_FRAX_PITCHFXS_V2 = 0x2bac101F9769AEfF63c63EFfB4189152e833649F; + address internal constant FRAXSWAP_PAIR_FRAX_IQ = 0xcB0bC7C879bb3E9CFEB9d8EFef653F33B3d242e9; + address internal constant FRAXSWAP_PAIR_FRAX_IQ_V2 = 0x07AF6BB51d6Ad0Cf126E3eD2DeE6EaC34BF094F8; + address internal constant FRAXSWAP_PAIR_FRAX_OHM = 0x38633ed142BCc8128b45aB04A2e4A6e53774699F; + address internal constant FRAXSWAP_PAIR_FRAX_OHM_V2 = 0x5769071665eb8Db80e7e9226F92336Bb2897DCFA; + address internal constant FRAXSWAP_PAIR_FRAX_SDL_V2 = 0xCCB26b5CC4e1Ce29521DA281a0107A6672bfe099; + address internal constant FRAXSWAP_PAIR_FRAX_SYN_V2 = 0x832c6f546Bf34A552DeB8773216a93bf6801028c; + address internal constant FRAXSWAP_PAIR_FRAX_ZZ_V2 = 0x5E8c1aD4c3D04f059d5c1A2Ce4593e53be270bca; + address internal constant ADDRESS_MANAGER = 0x8c5D64d10394cFa070066e70Ec19E67398b4dABE; + address internal constant BASE_FEE_VAULT_RECIPIENT = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; + address internal constant BATCH_INBOX = 0xfF000000000000000000000000000000000420fC; + address internal constant BATCH_SENDER = 0x6017f75108f251a488B045A7ce2a7C15b179d1f2; + address internal constant DISPUTE_GAME_FACTORY_PROXY = 0x3AA7e876880CB34371c01f1510B1e0A932dCb8C1; + address internal constant FINAL_SYSTEM_OWNER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant FRAXTAL_COMPTROLLER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant FRAXTAL_DEPLOYER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant L1_CROSS_DOMAIN_MESSENGER_IMPL_V2 = 0xC6e4ECE5576dC96846bb11eD8910f3dF3CE516b8; + address internal constant L1_CROSS_DOMAIN_MESSENGER_PROXY = 0x126bcc31Bc076B3d515f60FBC81FddE0B0d542Ed; + address internal constant L1_CROSS_DOMAIN_MESSENGER__IMPL_V1 = 0x31c25985E6b10CF335FC01cf9790aF4890d0505c; + address internal constant L1_ERC721_BRIDGE_IMPL_V2 = 0x7eE1637C33Ed0DFEE6403f3301B6d404106018e4; + address internal constant L1_ERC721_BRIDGE_PROXY = 0xa9B5Fb84B7aeAF0D51C95DB04a76B1D4738D0eC5; + address internal constant L1_ERC721_BRIDGE__IMPL_V1 = 0x23A0478996241F9f966b7054c06FdeB96Ddf3475; + address internal constant L1_STANDARD_BRIDGE_IMPL_V2_ADDR = 0x30Cd695249394eED44C576f2caEC5304be6455F9; + address internal constant L1_STANDARD_BRIDGE_PROXY = 0x34C0bD5877A5Ee7099D0f5688D65F4bB9158BDE2; + address internal constant L1_STANDARD_BRIDGE__IMPL_V1_ADDR = 0xCC26248B71284B812Ff7825e005560DB01a874C7; + address internal constant L2_OUTPUT_ORACLE_CHALLENGER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant L2_OUTPUT_ORACLE_IMPL_V2 = 0x6f3CcC8C9DAf8B9b39aDe481213Ff7A626a42B65; + address internal constant L2_OUTPUT_ORACLE_PROPOSER = 0xFb90465f3064fF63FC460F01A6307eC73d64bc50; + address internal constant L2_OUTPUT_ORACLE_PROXY = 0x66CC916Ed5C6C2FA97014f7D1cD141528Ae171e4; + address internal constant L2_OUTPUT_ORACLE__IMPL_V1 = 0xA30ADd78D5be6B2B55C934666bb4fF2C4429d800; + address internal constant OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = 0x11FE3be54aC01C13Dd985cE2BdD10eD77e1376cc; + address internal constant OPTIMISM_PORTAL_IMPL_V2_ADDR = 0x47Ec03B67ba4f3C71a4320D2947f2173E0B45a23; + address internal constant OPTIMISM_PORTAL_PROXY = 0x36cb65c1967A0Fb0EEE11569C51C2f2aA1Ca6f6D; + address internal constant OPTIMISM_PORTAL__IMPL_V1_ADDR = 0x59B6903044Fa9439a5D621D3605789A6E654b1D6; + address internal constant P2P_SEQUENCER_ADDRESS = 0xc88138f5c82DD1bD327708C7F1c15E44Ce7FdA0C; + address internal constant PORTAL_GUARDIAN = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant PROTOCOL_VERSIONS_IMPL_V2 = 0xeE1d28b0FB299BcE1E164aCc001c15e283082bA2; + address internal constant PROTOCOL_VERSIONS_PROXY = 0x3c7EA1c10Eb783fE86e4eEd202324dCFEEca9043; + address internal constant PROXY_ADMIN = 0x13Fe62cB24aEa5afd179F20D362c056c3881ABcA; + address internal constant PROXY_ADMIN_OWNER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant STORAGE_SETTER = 0x7a6b7F35D032c9b122C69F01EA4523e028f6ef4A; + address internal constant SUPERCHAIN_CONFIG_GUARDIAN = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant SUPERCHAIN_CONFIG_IMPL_V2 = 0x0d9C39c64CF8eDA1EdFeBD78AFa895bAA797eFc4; + address internal constant SUPERCHAIN_CONFIG_PROXY = 0x61ca43CB037aC9181d8Fa5CD0073dC314065Ccc4; + address internal constant SYSTEM_CONFIG_IMPL_V2_ADDR = 0x4D7A1a16d0DA89B50FBd8b524508FC393A6Dc367; + address internal constant SYSTEM_CONFIG_PROXY = 0x34a9f273cbD847d49c3De015FC26c3E66825f8b2; + address internal constant SYSTEM_CONFIG__IMPL_V1_ADDR = 0x22052c592f763CA14a090D9974c5Bf9Fd3a44b8c; + address internal constant SYSTEM_OWNER_SAFE = 0xe0d7755252873c4eF5788f7f45764E0e17610508; + address internal constant BALANCER_FRXETH_BB_A_WETH_GAUGE = 0xE3f4e2b79f1a8bf3b14d9100323Fca24D923f796; + address internal constant CONVEX_FRAXBP_ARBITRUM = 0x636A9d7686bFA0a2ddd93b37A1E33bCdE6C31e8D; + address internal constant CONVEX_FRAX_FXB_20241231_ARBITRUM = 0xba1ED260F9a81088Ecb7602F790a67C773817BDA; + address internal constant CONVEX_FRAX_FXB_20261231_ARBITRUM = 0x2A8499c4a86F7c07e311c73E36575A0Dc2D362C3; + address internal constant CONVEX_FRXETH_WETH_ARBITRUM = 0x5608051D98377419d7D861531728DFB869dDc054; + address internal constant CONVEX_HFXB_FRAX_ARBITRUM = 0x53e78a6e12146565c7d7307d07A3C1ABacf3E20F; + address internal constant CONVEX_SQUID_WFRXETH_FRAXTAL = 0xE096E62B4b23C46a748828083458e22b014640f3; + address internal constant CONVEX_USD_FRAXBP = 0x840f20ffED887c61435E81fd1231CB923df39d3d; + address internal constant CURVE_VSTFRAX_F = 0x127963A74c07f72D862F2Bdc225226c3251BD117; + address internal constant FLE_FXS_WFRXETH_FRAXTAL = 0x6f82A6551cc351Bc295602C3ea99C78EdACF590C; + address internal constant FLE_FRAX_FXS_FRAXTAL = 0x83Dc6775c1B0fc7AaA46680D78B04b4a3d4f5650; + address internal constant FRAXSWAP_V2_FRAX_FPI_FRAXTAL = 0x3B78BdC7575896701C4e32f9D070AA387fcEB22b; + address internal constant FRAXSWAP_V2_FRAX_FXS_FRAXTAL = 0x99FA1928A9Fea45b8d1395e870a92a0675A10E6E; + address internal constant FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = 0x007c874a4240f8C31B4BfE6D91f47b903e2E3BE1; + address internal constant FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = 0x8Fa7B006538F0710BD5fEfBd5737eBDD8B487166; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = 0x0884c9Bb52348fa76d4e1c6Ea042A2EaF0b72c6C; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = 0x9c9e8E8ccD7dAF6AfAB436829992B3Cf408319B4; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = 0x11c9C6F9e983bf6E10296A9ce09D4572F664FF25; + address internal constant MSTABLE_FRAX_MUSD = 0x3e14f6EEDCC5Bc1d0Fc7B20B45eAE7B1F74a6AeC; + address internal constant SADDLE_L2D4_ARBITRUM = 0x9B8AEd182B8A9430C14e97Bf2C02F129f2b36854; + address internal constant SENTIMENT_LFRAX = 0x86c0A521807f43A646978e9f302BAF693350eAa3; + address internal constant SNOWBALL_S4D = 0x66fD216bCBeb566EF038A116B7270f241005e186; + address internal constant SPIRITSWAP_FRAX_FXS = 0xebF993690F65B23862E10F489656529ac06A27B8; + address internal constant AAVE_AMO = 0x66635DC1EdEfF19e839f152a67278151Aa6e1B61; + address internal constant AMO_MINTER = 0xcf37B62109b537fa0Cb9A90Af4CA72f6fb85E241; + address internal constant AMO_MINTER_OLD = 0x36a0B6a5F7b318A2B4Af75FFFb1b51a5C78dEB8C; + address internal constant BALANCE_CHECKER = 0x0be27F994E24F8C3E5f6D0C28AbB5732256ee205; + address internal constant BUNDLE_UTILS = 0xD1a7b80a954e56bfd7bd889aF6e2BE8674719F5d; + address internal constant CONVEX_AMO = 0x49ee75278820f409ecd67063D8D717B38d66bd71; + address internal constant CONVEX_AMO_ADMIN = 0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A; + address internal constant CRVFRAX_VAULT = 0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139; + address internal constant CURVE_AMO = 0x72170Cdc48C33a6AE6B3E83CD387ca3Fb9105da2; + address internal constant CURVE_AMO_IMPL_V1 = 0x5840Db064e17480f8e8E74fD6714C9c316f7DdFE; + address internal constant CURVE_AMO_V1 = 0xbd061885260F176e05699fED9C5a4604fc7F2BDC; + address internal constant CURVE_AMO_V2 = 0xD103FEf74D05FbC20B5184FE85c7187735355DB3; + address internal constant CURVE_AMO_V5 = 0xf8a4ffe7C980fD50B160b7B86dCd5e9eb7E281a9; + address internal constant CURVE_AMO_ADMIN = 0x900909C07c2761d84C5d863FF5905102916DF69C; + address internal constant CURVE_METAPOOL_LOCKER = 0x70F55767B11c047C8397285E852919F5f6c8DC60; + address internal constant CURVE_METAPOOL_LOCKER_2 = 0xE4BD0461AE7fdc76c61CE286a80c9B55d83B204a; + address internal constant CURVE_VOTER_PROXY = 0x847FA1A5337C7f24D7066E467F2e2A0f969Ca79F; + address internal constant CVX_LOCKER_AMO = 0x7038C406e7e2C9F81571557190d26704bB39B8f3; + address internal constant CVX_LOCKER_AMO_V2 = 0x72a19342e8F1838460eBFCCEf09F6585e32db86E; + address internal constant DEPOSIT_CONTRACT_ADDRESS = 0x00000000219ab540356cBB839Cbe05303d7705Fa; + address internal constant ETH_ADDRESS = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; + address internal constant FPI_CONTROLLER_AMO = 0x2397321b301B80A1C0911d6f9ED4b6033d43cF51; + address internal constant FRAX3CRV_CURVE_FXS_DISTRIBUTOR = 0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC; + address internal constant FRAX3CRV_CURVE_REWARDS_DISTRIBUTOR_EOA = 0x73f9F84B04584227b4f0bafFd8B37D6D0C11a23c; + address internal constant FRAX_GAUGE_CONTROLLER = 0x44ade9AA409B0C29463fF7fcf07c9d3c939166ce; + address internal constant FRAX_GAUGE_CONTROLLER_V2 = 0x3669C421b77340B2979d1A00a792CC2ee0FcE737; + address internal constant FRAX_GAUGE_REWARDS_DISTRIBUTOR = 0x278dC748edA1d8eFEf1aDFB518542612b49Fcd34; + address internal constant FRAX_GAUGE_NOOP_REWARDS_DISTRIBUTOR = 0x48D9A9e67e9deCfD493efE2B3D3B5291fc802e5F; + address internal constant FRAX_GAUGE_V2 = 0x72E158d38dbd50A483501c24f792bDAAA3e7D55C; + address internal constant FRAXLEND_AMO = 0x0Ed8fA7FC63A8eb5487E7F87CAF1aB3914eA4eCa; + address internal constant FRAXLEND_AMO_V3 = 0xf6E697e95D4008f81044337A749ECF4d15C30Ea6; + address internal constant FRXETH_MINTER = 0xbAFA44EFE7901E04E39Dad13167D089C559c1138; + address internal constant FXS_1559_AMO = 0x9C6a04871D11b33645ab592f68C41bb2B41F51EE; + address internal constant FXS_1559_AMO_V2 = 0xC80C48862E4254F37047235298eDb6AA35717C24; + address internal constant FXS_1559_AMO_V2_ADMIN = 0xCaa487D113ad1C34Ce128c4f3a2A437614C6a692; + address internal constant FXS_1559_AMO_V2_IMPL_V1 = 0xCDe9A4e885B87a893b8817D136FD2F404B54294f; + address internal constant FXS_1559_AMO_V3 = 0xb524622901b3f7b5DeA6501E9830700C847C7DC5; + address internal constant INVESTOR_AMO = 0xB8315Af919729c823B2d996B1A6DDE381E7444f1; + address internal constant INVESTOR_AMO_V1 = 0xEE5825d5185a1D512706f9068E69146A54B6e076; + address internal constant INVESTOR_AMO_ADMIN = 0x069c24600c2A03147D4E1D9b04d193151676F577; + address internal constant INVESTOR_AMO_IMPL_V1 = 0xdE3C8aA7f53a69c595b7720045000A68Cb9CB341; + address internal constant LENDING_AMO = 0x9507189f5B6D820cd93d970d67893006968825ef; + address internal constant MANUAL_TOKEN_TRACKER_AMO = 0xEc8672dd770D59FaD9a811591a5Edd40e8F6A413; + address internal constant MIGRATION_BUNDLE_UTILS = 0x239c957d42343B3d91FABc7c16E7F1e30Bc32E5B; + address internal constant MIGRATION_HELPER = 0xe16723A08Ae054a8F20BDc0395389569011e78D6; + address internal constant MIM_CONVEX_AMO = 0x31183a2CCe8d1BFBBFE140Ea1A1264A454Fc821E; + address internal constant MINT_UTILITIES = 0xE054C1ab5D548E0144ab3F89a8f5809137819906; + address internal constant MSIG_HELPER = 0x977eaDb6fa9b8E1a2A950CcDE1A75a7b527a8cBB; + address internal constant MULTICALL_OZ_DELEGATECALL = 0x1EA632b997B7c7068ac48aDe8040652a8AF9FbbB; + address internal constant MULTISIG = 0xFa27873EA2F0eA9DcD2052848C4A7F8ADE8a3936; + address internal constant OHM_AMO = 0x5699d20732a2EFa9A895EF04bb210aa751C4dB96; + address internal constant OHM_AMO_ADMIN = 0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A; + address internal constant RARI_AMO = 0x96665d63c1B53f8335e3c9287Ee255f306C93c45; + address internal constant RAGEQUITTER_TEMPLE = 0xB12C76b92936d136Fd8264F6EFcBb06458338D97; + address internal constant STAKEDAO_AMO = 0x375278D3C65f29C1A90E8550888f1439cFeFe465; + address internal constant STAKING_UTILITIES = 0xE4de6E1DF1FE135D6462554d0Fd36A14d787f689; + address internal constant TIMELOCK = 0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA; + address internal constant TOKEMAK_AMO = 0x4e710B33c87CEDF832Cd82E11d743A011864f733; + address internal constant TOKEN_TRACKER_AMO = 0x3F702a8F6c9f9F7ABdfEA67f89d33F18e0368600; + address internal constant TOKEN_TRACKER_V2 = 0x37336AD1F3A145C710247E6a14C9AcC7f34D09eE; + address internal constant TWAMM_AMO = 0x11Fc7df1fb0E51f9c9AB8f575d9bbaDC92FA425B; + address internal constant TWAMM_AMO_V2 = 0x629C473e0E698FD101496E5fbDA4bcB58DA78dC4; + address internal constant UNIV2_TO_UNIV3_MIGRATOR_ADDRESS = 0x7b50137E8996A1717a6D97a0527e4c5D2D133405; + address internal constant UNIV3_LIQUIDITY_AMO = 0x3814307b86b54b1d8e7B2Ac34662De9125F8f4E6; + address internal constant UNIV3_LIQUIDITY_AMO_V2 = 0xc91Bb4b0696e3b48c0C501B4ce8E7244Fc363A79; + address internal constant VEFXS_SMART_WALLET_CHECKER = 0x53c13BA8834a1567474b19822aAD85c6F90D9f9F; + address internal constant VEFXS_YIELD_DISTRIBUTOR = 0x19a0a70a68fbC604Bf20A03b787df8f7AC1d50f0; + address internal constant VEFXS_YIELD_DISTRIBUTOR_V2 = 0x62C4cf364078C98fA08AfDB4D3d8D87e780Ebd45; + address internal constant VEFXS_YIELD_DISTRIBUTOR_V3 = 0xed2647Bbf875b2936AAF95a3F5bbc82819e3d3FE; + address internal constant VEFXS_YIELD_DISTRIBUTOR_V4 = 0xc6764e58b36e26b08Fd1d2AeD4538c02171fA872; + address internal constant VEFPIS_YIELD_DISTRIBUTOR_V4 = 0xE6D31C144BA99Af564bE7E81261f7bD951b802F6; + address internal constant VEFPIS_SMART_WALLET_CHECKER = 0x81903F6f9675f7b500eAFE20681bD2D7BAb7C71b; + address internal constant YIELDSPACE_AMO = 0x8971946467a77b798762823434c0f407d20F9df9; + address internal constant ADVISORS_MULTISIG = 0x874a873e4891fB760EdFDae0D26cA2c00922C404; + address internal constant BEE_USER = 0x733371d7C15ACECF9e120dd037D6BcDb6E069148; + address internal constant COMMUNITY_MULTISIG = 0x63278bF9AcdFC9fA65CFa2940b89A34ADfbCb4A1; + address internal constant COMPTROLLER = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; + address internal constant COMPTROLLER_MULTISIG = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; + address internal constant CURVEAMO_OPERATOR_ADDRESS = 0x8D8Cb63BcB8AD89Aa750B9f80Aa8Fa4CfBcC8E0C; + address internal constant FPI_COMPTROLLER_MULTISIG = 0x6A7efa964Cf6D9Ab3BC3c47eBdDB853A8853C502; + address internal constant FPI_CORE_CONTRIBUTORS_TEAM_MULTISIG = 0x708695db8dF61e646571E78b9b3e2BAd7D6c42E3; + address internal constant FPI_TREASURY_MULTISIG = 0x5181C3c36bD52F783e6E1771d80b1e3AdCB36019; + address internal constant FRAXLEND_MAIN_MULTISIG = 0x168200cF227D4543302686124ac28aE0eaf2cA0B; + address internal constant FRAXLEND_OPERATOR_MULTISIG = 0xa4EC124e09D6D1A092c6BD16aFac9CD83f73E3c3; + address internal constant FRAXLEND_CIRCUIT_BREAKER_MULTISIG = 0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c; + address internal constant FRXETH_COMPTROLLER = 0x8306300ffd616049FD7e4b0354a64Da835c1A81C; + address internal constant FRXETH_OWNER = 0x8306300ffd616049FD7e4b0354a64Da835c1A81C; + address internal constant FXB_MULTISIG = 0x831822660572bd54ebaa065C2acef662a6277D40; + address internal constant INVESTORS_MULTISIG = 0xa95f86fE0409030136D6b82491822B3D70F890b3; + address internal constant TEAM_MULTISIG = 0x8D4392F55bC76A046E443eb3bab99887F4366BB0; + address internal constant TIMELOCK_ADDRESS = 0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA; + address internal constant TREASURY_MULTISIG = 0x9AA7Db8E488eE3ffCC9CdFD4f2EaECC8ABeDCB48; + address internal constant WALLET_WITH_CRVFRAX = 0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503; + address internal constant WALLET_WITH_USDC = 0xD6216fC19DB775Df9774a6E33526131dA7D19a2c; + address internal constant WALLET_WITH_WETH = 0x8EB8a3b98659Cce290402893d0123abb75E3ab28; + address internal constant AFRAX = 0xd4937682df3C8aEF4FE912A96A74121C0829E664; + address internal constant AGEURFRAXBP = 0x22e859Ee894c2068920858A60b51DC03ac5581c1; + address internal constant AGEURFRAXBP_POOL = 0x58257e4291F95165184b4beA7793a1d6F8e7b627; + address internal constant ALCXFRAXBP = 0xf985005a3793DbA4cCe241B3C19ddcd3Fe069ff4; + address internal constant ALCXFRAXBP_POOL = 0x4149d1038575CE235E03E03B39487a80FD709D31; + address internal constant ALETHFRXETH = 0x97Ba76a574bC5709b944bB1887691301c72337Ca; + address internal constant ALETHFRXETH_POOL = 0x97Ba76a574bC5709b944bB1887691301c72337Ca; + address internal constant ALUSDFRAXBP = 0xB30dA2376F63De30b42dC055C93fa474F31330A5; + address internal constant ALUSDFRAXBP_POOL = 0xB30dA2376F63De30b42dC055C93fa474F31330A5; + address internal constant ANKRETHFRXETH = 0xa8e14F03124Ea156A4fc416537c82ff91a647D50; + address internal constant ANKRETHFRXETH_POOL = 0x41eA4045de2676727883aa0B4E43D7e32261f559; + address internal constant APEUSDFRAXBP = 0x04b727C7e246CA70d496ecF52E6b6280f3c8077D; + address internal constant APEUSDFRAXBP_POOL = 0x04b727C7e246CA70d496ecF52E6b6280f3c8077D; + address internal constant AUSDC = 0xBcca60bB61934080951369a648Fb03DF4F96263C; + address internal constant BADGERFRAXBP = 0x09b2E090531228d1b8E3d948C73b990Cb6e60720; + address internal constant BADGERFRAXBP_POOL = 0x13B876C26Ad6d21cb87AE459EaF6d7A1b788A113; + address internal constant BUSDFRAXBP = 0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190; + address internal constant BUSDFRAXBP_POOL = 0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190; + address internal constant CAAVE = 0xe65cdB6479BaC1e22340E4E755fAE7E509EcD06c; + address internal constant CBETHFRXETH = 0x548E063CE6F3BaC31457E4f5b4e2345286274257; + address internal constant CBETHFRXETH_POOL = 0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D; + address internal constant CLEVUSDFRAXBP = 0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C; + address internal constant CLEVUSDFRAXBP_POOL = 0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C; + address internal constant COILFRAXBP = 0xb85010193FD15aF8390dbD62790Da70F46c1126B; + address internal constant COILFRAXBP_POOL = 0xAF4264916B467e2c9C8aCF07Acc22b9EDdDaDF33; + address internal constant CRVFRAX = 0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC; + address internal constant CRVFRAX_GAUGE = 0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503; + address internal constant CRVFRXETH = 0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974; + address internal constant CRVFRXETH_POOL = 0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a; + address internal constant CRVUSDFRAX = 0x0CD6f267b2086bea681E922E19D40512511BE538; + address internal constant CRVUSDFRAX_GAUGE = 0x96424E6b5eaafe0c3B36CA82068d574D44BE4e3c; + address internal constant CRVUSDFRAX_POOL = 0x0CD6f267b2086bea681E922E19D40512511BE538; + address internal constant CURVE4POOL = 0x4e0915C88bC70750D68C481540F081fEFaF22273; + address internal constant CUSDC = 0x39AA39c021dfbaE8faC545936693aC917d5E7563; + address internal constant CVGFRAXBP = 0x421E13b4e805993A0d50aD8c6c47A4F693f04424; + address internal constant CVGFRAXBP_GAUGE = 0x8A111B47B31bBa40C2F0D2f9a8Cf6B6C4B50114E; + address internal constant CVGFRAXBP_POOL = 0xa7B0E924c2dBB9B4F576CCE96ac80657E42c3e42; + address internal constant CVXAGEURFRAXBP = 0x9e187393cBc76c8Bf8e8a06bD7737a7cabe9d66C; + address internal constant CVXAGEURFRAXBP_REWARDER = 0x17962aB30c7F291b125A0A38d0ad220ab22F8a5B; + address internal constant CVXALCXFRAXBP = 0xCf9fC20189755354edDdED66C9ED9DFADAFd7a2E; + address internal constant CVXALCXFRAXBP_REWARDER = 0xC10fD95fd3B56535668426B2c8681AD1E15Be608; + address internal constant CVXALUSDFRAXBP = 0x5BcAfc77f19F72bCf1420cC1722c3e06E16Ec29a; + address internal constant CVXALUSDFRAXBP_REWARDER = 0x26598e3E511ADFadefD70ab2C3475Ff741741104; + address internal constant CVXAPEUSDFRAXBP = 0x04b727C7e246CA70d496ecF52E6b6280f3c8077D; + address internal constant CVXAPEUSDFRAXBP_REWARDER = 0x51e6B84968D56a1E5BC93Ee264e95b1Ea577339c; + address internal constant CVXBADGERFRAXBP = 0x25f0b7c3A7A43b409634a5759526560cC3313d75; + address internal constant CVXBADGERFRAXBP_REWARDER = 0xe0705A91984b076C250d410A41f615380aF1C2ed; + address internal constant CVXBUSDFRAXBP = 0xf203A94e59d071062a0dd31f396bCb19a38809A4; + address internal constant CVXBUSDFRAXBP_REWARDER = 0x9e6Daf019767D5cEAdE416ce77E8d187b5B254F3; + address internal constant CVXCLEVUSDFRAXBP = 0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C; + address internal constant CVXCLEVUSDFRAXBP_REWARDER = 0x710e85B2793b3AE88Cb1Da3cb25b3d62D810d180; + address internal constant CVXCOILFRAXBP = 0x624cEFdBe30507EEAc71882C9e42Ca0900D5B6a1; + address internal constant CVXCOILFRAXBP_REWARDER = 0xAE0b6b66378C7DEFc0514D7cBc6E4e92Cf56b0af; + address internal constant CVXCRVFRAX = 0x117A0bab81F25e60900787d98061cCFae023560c; + address internal constant CVXCRVFRAXBP = 0x527331F3F550f6f85ACFEcAB9Cc0889180C6f1d5; + address internal constant CVXCRVFRAXBP_POOL = 0x31c325A01861c7dBd331a9270296a31296D797A0; + address internal constant CVXCRVFRAX_REWARDER = 0x7e880867363A7e321f5d260Cade2B0Bb2F717B02; + address internal constant CVXCRVUSDFRAX = 0x01CcDe1dFb6c84e1Cc13a6Bf777aa2160ABd11BA; + address internal constant CVXCRVUSDFRAX_REWARDER = 0x3CfB4B26dc96B124D15A6f360503d028cF2a3c00; + address internal constant CVXCRV_REWARDER = 0x3Fe65692bfCD0e6CF84cB1E7d24108E434A7587e; + address internal constant CVXCVGFRAXBP = 0x3cB8E5cac768D6Dd3E7683dBC78E255aae66EDBB; + address internal constant CVXCVGFRAXBP_REWARDER = 0x0736b746F53826A1eEC888a05EBF592AF68946Db; + address internal constant CVXCVXCRVFRAXBP = 0x2aE739F40Cda5F053F9dbecE7E177Fcbdc4A07D9; + address internal constant CVXCVXCRVFRAXBP_REWARDER = 0xdEbc7B51043b4D0dd4f3310C68A12382b8843ceE; + address internal constant CVXCVXFRAXBP = 0x123dC033d6fF314211F7953eD31bC805f85C13d5; + address internal constant CVXCVXFRAXBP_REWARDER = 0xf02B3A77b1e7775de10294d78a4c3d77772B484A; + address internal constant CVXCVXFXSFRAXBP = 0xDad9DB2c7c96a1496493E6D48d131a2667f284f9; + address internal constant CVXCVXFXSFRAXBP_REWARDER = 0x19eA715F854dB2196C6f45A174541a5Ac884D2f9; + address internal constant CVXDOLAFRAXBP = 0xf7eCC27CC9DB5d28110AF2d89b176A6623c7E351; + address internal constant CVXDOLAFRAXBP_REWARDER = 0x0404d05F3992347d2f0dC3a97bdd147D77C85c1c; + address internal constant CVXDOLAFRAXPYUSD = 0x430bE19e180fd8c2199eC5FAEabE2F5CDba68C94; + address internal constant CVXDOLAFRAXPYUSD_REWARDER = 0xE8cBdBFD4A1D776AB1146B63ABD1718b2F92a823; + address internal constant CVXEUSDFRAXBP = 0x8e074d44aaBC1b3b4406fE03Da7ceF787ea85938; + address internal constant CVXEUSDFRAXBP_REWARDER = 0xB468dB2E478885B87D7ce0C8DA1D4373A756C138; + address internal constant CVXFPIFRAX_F = 0x28ebAb5Ecbc3efB4116205c2D3237d8b16976B06; + address internal constant CVXFRAXBP = 0x7F17A6C77C3938D235b014818092eb6305BdA110; + address internal constant CVXFRAXBP_POOL = 0xBEc570d92AFB7fFc553bdD9d4B4638121000b10D; + address internal constant CVXFRAXFPI_NG = 0xBA927A88eb7B7902ffC5cd99b94fA2964d1a1E03; + address internal constant CVXFRAXFPI_NG_REWARDER = 0x062450B06EB92F1C4E227C41c987ed97c93Ae232; + address internal constant CVXFRAXFXB_20240630 = 0x5A82ae31C1a36833B9E148d01E967c1b05eDb346; + address internal constant CVXFRAXFXB_20240630_REWARDER = 0x830a71574E3c8AE9da477cE1B7F12849E9f7c8c8; + address internal constant CVXFRAXFXB_20241231 = 0x06382622D0FafB372dA64b765EAd3d082a8BCabB; + address internal constant CVXFRAXFXB_20241231_REWARDER = 0x249cE0b1a682AD7b02e43271f9f0C9ac85Ec47e8; + address internal constant CVXFRAXFXB_20261231 = 0x7Ce2F444D0B034f44EeA4FE77608f0c680966D20; + address internal constant CVXFRAXFXB_20261231_REWARDER = 0xC9F6D73fD06b8EEB0A4E87cAd407219E10F31712; + address internal constant CVXFRAXPYUSD = 0x839CF70a09f1CB104b4eb0B48E26B855A0F7e855; + address internal constant CVXFRAXPYUSD_REWARDER = 0xB10a6e39Ed8a66fEd3aAef3866a95611a49B9a95; + address internal constant CVXFRAXSDAI = 0xAb4feFd9cabC03D935cAD345b7626C3180238fb3; + address internal constant CVXFRAXSDAI_REWARDER = 0xE627082369689b2B86D948c377A4aE4e739C59eE; + address internal constant CVXFRAXUSDP = 0x29c22337E3ce362Ce4ad8ecc9CE11fE5A08DBA3c; + address internal constant CVXFRAXUSDP_REWARDER = 0x6991C1CD588c4e6f6f1de3A0bac5B8BbAb7aAF6d; + address internal constant CVXFRXETH = 0xBb2568deeb365b8B89ef7F9B53E86B34cd5D0490; + address internal constant CVXFRXETHALETH = 0x112E8f4b685475CcEd5C38142Cd7A2aE41ef6737; + address internal constant CVXFRXETHALETH_REWARDER = 0xe0DbbCF08A5465db7c7401C86cce89030e11aB67; + address internal constant CVXFRXETHANKRETH = 0xc18695D5824C49cF50E054953B3A5910c45597A0; + address internal constant CVXFRXETHANKRETH_REWARDER = 0xc18695D5824C49cF50E054953B3A5910c45597A0; + address internal constant CVXFRXETHCBETH = 0x39E1Ea9CB87a352CfFd43e0b19D573d12cf110CC; + address internal constant CVXFRXETHCBETH_REWARDER = 0x0080d49D4a4921dF0F3853c5e4533462A51fbb29; + address internal constant CVXFRXETHCRV = 0x41603dA2DD26E6fe29CAe074fC6772053A39C2A9; + address internal constant CVXFRXETHCRV_REWARDER = 0xd5dC65ec6948845C1C428fb60BE38FE59B50BD13; + address internal constant CVXFRXETHCVX = 0xAc4b1295F9Aeb1DB29acB37902bE349a79a66403; + address internal constant CVXFRXETHCVX_REWARDER = 0xA064C1EeEbECD1DF41432f4B7264F508F005aF0C; + address internal constant CVXFRXETHETH = 0xC07e540DbFecCF7431EA2478Eb28A03918c1C30E; + address internal constant CVXFRXETHETH_REWARDER = 0xbD5445402B0a287cbC77cb67B2a52e2FC635dce4; + address internal constant CVXFRXETHMSETH = 0x29889a5fE8e467da8af697C5f1eB901F4911Ab50; + address internal constant CVXFRXETHMSETH_REWARDER = 0x15507737f44446EB0A86147E2C72Aa6A111A64B2; + address internal constant CVXFRXETHPETH = 0x1941da8D12A6B39B76bd54c865c8cD3a4553E9C3; + address internal constant CVXFRXETHPETH_REWARDER = 0x42aaC689261723d06d2a8f356448bd8249f831Bc; + address internal constant CVXFRXETHPXETH = 0xDE183818eb02AfEa367C1AAFF1BFdeDecE6B2B05; + address internal constant CVXFRXETHPXETH_REWARDER = 0x72b99E2cf3f9A2bbDA1Cc76894E4554d7aA8FE2E; + address internal constant CVXFRXETHRETH = 0xeEC515BE690BF445c8C4d1625FD82FA75Bc38bf6; + address internal constant CVXFRXETHRETH_REWARDER = 0x84754821b5484A69DB3164eF4eDC5A5657318039; + address internal constant CVXFRXETHRETH_STAFI = 0x02a2206268b49A9b3ee5DD51577E5bDa0072d5F1; + address internal constant CVXFRXETHRETH_STAFI_REWARDER = 0xf011aD8E91D1dc8625e5548755AEa1F6Fff81089; + address internal constant CVXFRXETHSETH = 0xf67FEC3D0A32418813bE2BcdD78e058BCFa33AE8; + address internal constant CVXFRXETHSETH_REWARDER = 0x55cdF6c7E6d04b83835E4702ed395D0263237DA2; + address internal constant CVXFRXETHSTETH = 0x01492A2cB0Bd14034710475197B4169501B49Ead; + address internal constant CVXFRXETHSTETH_REWARDER = 0xC3D0B8170E105d6476fE407934492930CAc3BDAC; + address internal constant CVXFRXETHWETH = 0xAA71e0065A29F2529aBC0F615874009287966229; + address internal constant CVXFRXETHWETH_REWARDER = 0xFafDE12dC476C4913e29F47B4747860C148c5E4f; + address internal constant CVXFRXETHZETH = 0x52EdB08ab81e4Cc32cf318aed17dB11c09C3E8B9; + address internal constant CVXFRXETHZETH_REWARDER = 0x98B662443695f7328F6A7fDe9894CC0E88630269; + address internal constant CVXFRXETHZUNETH = 0xCB5d9126402cC17eF47b81BD48B43D52bF474Cd4; + address internal constant CVXFRXETHZUNETH_REWARDER = 0x756d67A10974Fa0e0cE63F82AF4E7ef0d46d452D; + address internal constant CVXFRXETH_POOL = 0x6E855d08f2984516c40C4246A385bA4A2eDFcd0A; + address internal constant CVXFXSFRAXBP = 0xF57ccaD8122B898A147Cc8601B1ECA88B1662c7E; + address internal constant CVXFXSFRAXBP_POOL = 0x21d158d95C2e150e144c36FC64E3653B8D6c6267; + address internal constant CVXGRAIFRAXBP = 0x6CceedbC3551B619da21e552623Dc7C64Ae15168; + address internal constant CVXGRAIFRAXBP_REWARDER = 0xC4581E043F676b95Eb1430474C69f3559a758086; + address internal constant CVXGUSD3CRV_FREE = 0x15c2471ef46Fa721990730cfa526BcFb45574576; + address internal constant CVXGUSDFRAXBP = 0xfbd79471A12929De8379a6CbaF320E150f139ac4; + address internal constant CVXGUSDFRAXBP_REWARDER = 0x47809eE386D1dEC29c0b13f21ba30F564517538B; + address internal constant CVXLUSDFRAXBP = 0xE8a371b5D32344033589A2F0a2712dBD12130b18; + address internal constant CVXLUSDFRAXBP_REWARDER = 0x053e1dad223A206e6BCa24C77786bb69a10e427d; + address internal constant CVXMAIFRAXBP = 0xe79914274Ea1332222793d7ba931647531E10a5b; + address internal constant CVXMAIFRAXBP_REWARDER = 0xD3C412C3cEdbEC604425B23DCd79Aa1ac810622f; + address internal constant CVXMKUSDFRAXBP = 0x187601595F6D5746566BC0361a48d13066F11C71; + address internal constant CVXMKUSDFRAXBP_REWARDER = 0x35FbE5520E70768DCD6E3215Ed54E14CBccA10D2; + address internal constant CVXMSUSDFRAXBP = 0xc3b19502F8c02be75F3f77fd673503520DEB51dD; + address internal constant CVXMSUSDFRAXBP_REWARDER = 0xF189A4a1E845Fd62944F93De497409798523B397; + address internal constant CVXOHMFRAXBP = 0x5271045F7B73c17825A7A7aee6917eE46b0B7520; + address internal constant CVXOHMFRAXBP_REWARDER = 0x27A8c58e3DE84280826d615D80ddb33930383fE9; + address internal constant CVXPUSDFRAXBP = 0xB17255D92892F1322d023befddaB85f172E36f67; + address internal constant CVXPUSDFRAXBP_REWARDER = 0x6d096C99Cc2Ea52490355311b73D86365Acf087f; + address internal constant CVXRSRFRAXBP = 0x022600684e9492dA82f0da11Bf039c11109d0935; + address internal constant CVXRSRFRAXBP_REWARDER = 0x28441fb9b8b026487A6174Ff39Be015810611C0F; + address internal constant CVXSDTFRAXBP = 0x95B051E97957f1D48C622Bf73225E3d4c2B189fb; + address internal constant CVXSDTFRAXBP_REWARDER = 0xc3df9cC2B8FFdB801E8e6E8FF9C1245E2dEcdA98; + address internal constant CVXSTGFRAXBP = 0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8; + address internal constant CVXSTGFRAXBP_REWARDER = 0xAa57A289Bb22a1A0C583db306F6566AE2c0CAf21; + address internal constant CVXSUSDFRAXBP = 0x8E2A6e9390CbD4C3895D07E4Cb171C0527990dF6; + address internal constant CVXSUSDFRAXBP_REWARDER = 0x3fABBDfe05487De1720a9420fE2e16d2c3e79A9D; + address internal constant CVXSWETHFRXETH = 0x1fb9115929b32D4456C37B80536a2C9434061296; + address internal constant CVXSWETHFRXETH_REWARDER = 0x91362eBf6DbFA5c0FD45CE4cF46DfFd4A8899c7C; + address internal constant CVXTRICRYPTOFRAX = 0xa0821fDc8d62413757B9da2357b0e5371f45335e; + address internal constant CVXTRICRYPTOFRAX_REWARDER = 0x4af50A690062970DAf1d2f0Fa9042C6f5a5495E3; + address internal constant CVXTRISDT = 0x5C2c6E21e141Dd3D13C34754A20d620A1bb731B5; + address internal constant CVXTRISDT_REWARDER = 0x1f2a117314e6e8655E0A1C97669b7B836e2cDb91; + address internal constant CVXTUSDFRAXBP = 0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893; + address internal constant CVXTUSDFRAXBP_REWARDER = 0x4a744870fD705971c8c00aC510eAc2206C93d5bb; + address internal constant CVXUSDDFRAXBP = 0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20; + address internal constant CVXUSDDFRAXBP_REWARDER = 0x546cd3B917c1d8A6525b4A312bB0014BE031Eb28; + address internal constant CVXUZDFRAXBP = 0xe6c0fAA19A7fB6A0a2C01e0BBC1a782b9e4a7B48; + address internal constant CVXUZDFRAXBP_REWARDER = 0x820Fad75512c8C3E57Ad021d016846CEEB5F7105; + address internal constant CVXXAIFRAXBP = 0xEbB0Dd1AfE63813AdD4c38EEbd71CE7354dd9b7e; + address internal constant CVXXAIFRAXBP_REWARDER = 0x4a866fE20A442Dff55FAA010684A5C1379151458; + address internal constant CVXZUSDFRAXBP = 0xd48494c36F98BE491f6Cfd6841617e847C819806; + address internal constant CVXZUSDFRAXBP_REWARDER = 0xFd3A7636694259b32B3896f59436997AD25380cA; + address internal constant D3POOL = 0xBaaa1F5DbA42C3389bDbc2c9D2dE134F5cD0Dc89; + address internal constant DOLAFRAXBP = 0xE57180685E3348589E9521aa53Af0BCD497E884d; + address internal constant DOLAFRAXBP_POOL = 0xE57180685E3348589E9521aa53Af0BCD497E884d; + address internal constant DOLAFRAXPYUSD = 0xef484de8C07B6e2d732A92B5F78e81B38f99f95E; + address internal constant DOLAFRAXPYUSD_GAUGE = 0x4B092818708A721cB187dFACF41f440ADb79044D; + address internal constant DOLAFRAXPYUSD_POOL = 0xef484de8C07B6e2d732A92B5F78e81B38f99f95E; + address internal constant EUSDFRAXBP = 0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F; + address internal constant EUSDFRAXBP_POOL = 0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F; + address internal constant FPIFRAX_F = 0x4704aB1fb693ce163F7c9D3A31b3FF4eaF797714; + address internal constant FPIFRAX_F_POOL = 0xf861483fa7E511fbc37487D91B6FAa803aF5d37c; + address internal constant FRAX3CRV_F = 0xd632f22692FaC7611d2AA1C0D552930D43CAEd3B; + address internal constant FRAXBP = 0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC; + address internal constant FRAXBP_POOL = 0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2; + address internal constant FRAXFPI = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; + address internal constant FRAXFPI_NG = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; + address internal constant FRAXFPI_NG_GAUGE = 0x107E4c1302403095e5A4Bc5e815982aa732e95BD; + address internal constant FRAXFPI_NG_POOL = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; + address internal constant FRAXFPI_POOL = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; + address internal constant FRAXFXB_20240630 = 0x4ef4c7519023F30A78647EEab321d6cFabC2513c; + address internal constant FRAXFXB_20240630_GAUGE = 0x35aD1ACf0C4BE5d4Ba11342128D440fDb9e189eb; + address internal constant FRAXFXB_20240630_POOL = 0x4ef4c7519023F30A78647EEab321d6cFabC2513c; + address internal constant FRAXFXB_20241231 = 0x6307E6688819951Cf8D6B6066018243D2496952F; + address internal constant FRAXFXB_20241231_GAUGE = 0xC2FE9D3c761994897594Df63B33b6D843Ab7b1cF; + address internal constant FRAXFXB_20241231_POOL = 0x6307E6688819951Cf8D6B6066018243D2496952F; + address internal constant FRAXFXB_20261231 = 0xe035e27A8eD6842b478933820f90093D205F7098; + address internal constant FRAXFXB_20261231_GAUGE = 0x0E83dF148F69965BfE752250835854b0dBeeaf01; + address internal constant FRAXFXB_20261231_POOL = 0xe035e27A8eD6842b478933820f90093D205F7098; + address internal constant FRAXPYUSD = 0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb; + address internal constant FRAXPYUSD_GAUGE = 0xdc6d319FAc1498125e871ccEdF7f1B9998ebA3C5; + address internal constant FRAXPYUSD_POOL = 0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb; + address internal constant FRAXSDAI = 0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7; + address internal constant FRAXSDAI_GAUGE = 0xb9BDcDcD7c3C1A3255402D44639cb6c7281833cF; + address internal constant FRAXSDAI_POOL = 0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7; + address internal constant FRAXUSDP = 0xFC2838a17D8e8B1D5456E0a351B0708a09211147; + address internal constant FRAXUSDP_POOL = 0xaE34574AC03A15cd58A92DC79De7B1A0800F1CE3; + address internal constant FRXETHALETH = 0xB657B895B265C38c53FFF00166cF7F6A3C70587d; + address internal constant FRXETHALETH_GAUGE = 0x415F30505368fa1dB82Feea02EB778be04e75907; + address internal constant FRXETHALETH_POOL = 0xB657B895B265C38c53FFF00166cF7F6A3C70587d; + address internal constant FRXETHANKRETH = 0xa8e14F03124Ea156A4fc416537c82ff91a647D50; + address internal constant FRXETHANKRETH_GAUGE = 0x86f8d7Ced9A8F5563C1198466968B02238E05917; + address internal constant FRXETHANKRETH_POOL = 0x41eA4045de2676727883aa0B4E43D7e32261f559; + address internal constant FRXETHCBETH = 0x548E063CE6F3BaC31457E4f5b4e2345286274257; + address internal constant FRXETHCBETH_GAUGE = 0xD10C17D82053DD0AB65851a9A93a0abE0C4F4794; + address internal constant FRXETHCBETH_POOL = 0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D; + address internal constant FRXETHCRV = 0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974; + address internal constant FRXETHCRV_GAUGE = 0x266cE172a1180134cf6C7836C516bd6A58b1f619; + address internal constant FRXETHCRV_POOL = 0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a; + address internal constant FRXETHCVX = 0x6e52cCe4EaFDf77091dD1c82183b2D97b776b397; + address internal constant FRXETHCVX_GAUGE = 0xc2075702490F0426E84E00d8B328119027813AC5; + address internal constant FRXETHCVX_POOL = 0x47D5E1679Fe5f0D9f0A657c6715924e33Ce05093; + address internal constant FRXETHETH = 0xf43211935C781D5ca1a41d2041F397B8A7366C7A; + address internal constant FRXETHETH_POOL = 0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577; + address internal constant FRXETHMSETH = 0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A; + address internal constant FRXETHMSETH_GAUGE = 0xB7A3C519889a916C5ecB54101E69ECf11DE60d0b; + address internal constant FRXETHMSETH_POOL = 0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A; + address internal constant FRXETHPETH = 0x320B564Fb9CF36933eC507a846ce230008631fd3; + address internal constant FRXETHPETH_GAUGE = 0x57e1947e1134F6e733A4a694dE6A163eF23EDf54; + address internal constant FRXETHPETH_POOL = 0x320B564Fb9CF36933eC507a846ce230008631fd3; + address internal constant FRXETHPXETH = 0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987; + address internal constant FRXETHPXETH_GAUGE = 0x277d1424a84B35ec0a8108482551b00b4fc1539b; + address internal constant FRXETHPXETH_POOL = 0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987; + address internal constant FRXETHRETH = 0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1; + address internal constant FRXETHRETH_GAUGE = 0xF20bd4D5A4112d5f9c64aDF53726F3ef1b7d0D61; + address internal constant FRXETHRETH_POOL = 0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9; + address internal constant FRXETHRETH_STAFI = 0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B; + address internal constant FRXETHRETH_STAFI_GAUGE = 0xb0549599d8446A196541dE11008eF5e79fA14F57; + address internal constant FRXETHRETH_STAFI_POOL = 0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B; + address internal constant FRXETHSETH = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; + address internal constant FRXETHSETH_GAUGE = 0x77ef5D544FF6C739E7E10a549f64Dd08055538d1; + address internal constant FRXETHSETH_POOL = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; + address internal constant FRXETHSTETH = 0x4d9f9D15101EEC665F77210cB999639f760F831E; + address internal constant FRXETHSTETH_GAUGE = 0x821529Bb07c83803C9CC7763e5974386e9eFEdC7; + address internal constant FRXETHSTETH_POOL = 0x4d9f9D15101EEC665F77210cB999639f760F831E; + address internal constant FRXETHWETH = 0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc; + address internal constant FRXETHWETH_GAUGE = 0x4E21418095d32d15c6e2B96A9910772613A50d50; + address internal constant FRXETHWETH_POOL = 0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc; + address internal constant FRXETHZETH = 0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018; + address internal constant FRXETHZETH_GAUGE = 0xB3627140BEacb97f9CA52b34090352FdAfC77d72; + address internal constant FRXETHZETH_POOL = 0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018; + address internal constant FRXETHZUNETH = 0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA; + address internal constant FRXETHZUNETH_GAUGE = 0x44f30D79f62a3D5340030d64806cD73239889F07; + address internal constant FRXETHZUNETH_POOL = 0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA; + address internal constant FTRIBE_8 = 0xFd3300A9a74b3250F1b2AbC12B47611171910b07; + address internal constant FUSDC_18 = 0x6f95d4d251053483f41c8718C30F4F3C404A8cf2; + address internal constant FXSFRXETH = 0x970FAA9aFBC5Feb3EC53059BA330DEe71E22B55B; + address internal constant FXSFRXETH_POOL = 0x5133Da6Ba0474368Ad0398d953c8D31c1B75b82B; + address internal constant GOHM = 0x0ab87046fBb341D058F17CBC4c1133F25a20a52f; + address internal constant GRAIFRAXBP = 0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc; + address internal constant GRAIFRAXBP_GAUGE = 0x8d5AF1F5DD3dC4B73e3A9Af682aDC3641FADE9a5; + address internal constant GRAIFRAXBP_POOL = 0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc; + address internal constant GUSD3CRV = 0xD2967f45c4f384DEEa880F807Be904762a3DeA07; + address internal constant GUSDFRAXBP = 0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93; + address internal constant GUSDFRAXBP_POOL = 0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93; + address internal constant LUSDFRAXBP = 0x497CE58F34605B9944E6b15EcafE6b001206fd25; + address internal constant LUSDFRAXBP_POOL = 0x497CE58F34605B9944E6b15EcafE6b001206fd25; + address internal constant MAIFRAXBP = 0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9; + address internal constant MAIFRAXBP_POOL = 0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9; + address internal constant MKUSDFRAXBP = 0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5; + address internal constant MKUSDFRAXBP_GAUGE = 0xF184d80915Ba7d835D941BA70cDdf93DE36517ee; + address internal constant MKUSDFRAXBP_POOL = 0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5; + address internal constant MSUSDFRAXBP = 0xc3b19502F8c02be75F3f77fd673503520DEB51dD; + address internal constant MSUSDFRAXBP_POOL = 0xc3b19502F8c02be75F3f77fd673503520DEB51dD; + address internal constant OGTEMPLE = 0x654590F810f01B51dc7B86915D4632977e49EA33; + address internal constant OHMFRAXBP = 0x5271045F7B73c17825A7A7aee6917eE46b0B7520; + address internal constant OHMFRAXBP_POOL = 0xFc1e8bf3E81383Ef07Be24c3FD146745719DE48D; + address internal constant PITCHFXS = 0x11EBe21e9d7BF541A18e1E3aC94939018Ce88F0b; + address internal constant PUSDFRAXBP = 0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B; + address internal constant PUSDFRAXBP_POOL = 0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B; + address internal constant RETHFRXETH = 0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1; + address internal constant RETHFRXETH_POOL = 0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9; + address internal constant RSRFRAXBP = 0x3F436954afb722F5D14D868762a23faB6b0DAbF0; + address internal constant RSRFRAXBP_POOL = 0x6a6283aB6e31C2AeC3fA08697A8F806b740660b2; + address internal constant SADDLED4 = 0xd48cF4D7FB0824CC8bAe055dF3092584d0a1726A; + address internal constant SADDLED4_POOL = 0xC69DDcd4DFeF25D8a793241834d4cc4b3668EAD6; + address internal constant SDFRAX3CRV_F = 0x5af15DA84A4a6EDf2d9FA6720De921E1026E37b7; + address internal constant SDL_ALUSDFRAXBP = 0x3cF7b9479a01eeB3bbfC43581fa3bb21cd888e2A; + address internal constant SDL_ALUSDFRAXBP_GAUGE = 0x953693DCB2E9DDC0c1398C1b540b81b63ceA5e16; + address internal constant SDL_ALUSDFRAXBP_POOL = 0xFB516cF3710fC6901F2266aAEB8834cF5e4E9558; + address internal constant SDL_FRAX3POOL = 0x0785aDDf5F7334aDB7ec40cD785EBF39bfD91520; + address internal constant SDL_FRAX3POOL_GAUGE = 0x13Ba45c2B686c6db7C2E28BD3a9E8EDd24B894eD; + address internal constant SDL_FRAX3POOL_POOL = 0x8cAEa59f3Bf1F341f89c51607E4919841131e47a; + address internal constant SDL_FRAXBP = 0x927E6f04609A45B107C789aF34BA90Ebbf479f7f; + address internal constant SDL_FRAXBP_GAUGE = 0xB2Ac3382dA625eb41Fc803b57743f941a484e2a6; + address internal constant SDL_FRAXBP_POOL = 0x13Cc34Aa8037f722405285AD2C82FE570bfa2bdc; + address internal constant SDL_SUSDFRAXBP = 0x6Ac7a4cB3BFa90DC651CD53EB098e23c88d04e77; + address internal constant SDL_SUSDFRAXBP_GAUGE = 0x104F44551386d603217450822443456229F73aE4; + address internal constant SDL_SUSDFRAXBP_POOL = 0x69baA0d7c2e864b74173922Ca069Ac79d3be1556; + address internal constant SDL_USDTFRAXBP = 0x486DFCfdbF9025c062110E8c0344a15279aD0a85; + address internal constant SDL_USDTFRAXBP_GAUGE = 0x6EC5DD7D8E396973588f0dEFD79dCA04F844d57C; + address internal constant SDL_USDTFRAXBP_POOL = 0xC765Cd3d015626244AD63B5FB63a97c5634643b9; + address internal constant SDL_VESPERFRAXEARNPOOLFRAXBP = 0xA3beCa25Bd2bDd67272556666A7791d772C36571; + address internal constant SDL_VESPERFRAXEARNPOOLFRAXBP_GAUGE = 0x9980C9b35844946cF3451cC0B43D9b6501F4a96E; + address internal constant SDL_VESPERFRAXEARNPOOLFRAXBP_POOL = 0x9AC17f026f0599F77b3513a0A35f0258B0ec77f3; + address internal constant SDTFRAXBP = 0x893DA8A02b487FEF2F7e3F35DF49d7625aE549a3; + address internal constant SDTFRAXBP_POOL = 0x3e3C6c7db23cdDEF80B694679aaF1bCd9517D0Ae; + address internal constant SETHFRXETH = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; + address internal constant SETHFRXETH_POOL = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; + address internal constant SOHM = 0x04F2694C8fcee23e8Fd0dfEA1d4f5Bb8c352111F; + address internal constant STETHFRXETH = 0x4d9f9D15101EEC665F77210cB999639f760F831E; + address internal constant STETHFRXETH_POOL = 0x4d9f9D15101EEC665F77210cB999639f760F831E; + address internal constant STGFRAXBP = 0x9de1c3D446237ab9BaFF74127eb4F303802a2683; + address internal constant STGFRAXBP_POOL = 0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8; + address internal constant STKAAVE = 0x4da27a545c0c5B758a6BA100e3a049001de870f5; + address internal constant STKCVXAGEURFRAXBP = 0x78b74C93c726B6e29d0Ef5A01764fA19eCCF0C1c; + address internal constant STKCVXALCXFRAXBP = 0xAF1b82809296E52A42B3452c52e301369Ce20554; + address internal constant STKCVXALUSDFRAXBP = 0xBE1C919cA137299715e9c929BC7126Af14f76091; + address internal constant STKCVXAPEUSDFRAXBP = 0x6a20FC1654A2167d00614332A5aFbB7EBcD9d414; + address internal constant STKCVXBADGERFRAXBP = 0xb92e3fD365Fc5E038aa304Afe919FeE158359C88; + address internal constant STKCVXBUSDFRAXBP = 0x20c5177504A3f9Bad59c430791feA853EeAD4CCE; + address internal constant STKCVXCLEVUSDFRAXBP = 0x3199a1ed1Ad4cb1d1b57939809c8ee79eafE9934; + address internal constant STKCVXCOILFRAXBP = 0xa5B6f8Ec4122c5Fe0dBc4Ead8Bfe66A412aE427C; + address internal constant STKCVXCOILFRAXBP_DEPRECATED = 0xdA69CeC36AE581C1b2a2EEb77C527Fb7c1331310; + address internal constant STKCVXCRV = 0xaa0C3f5F7DFD688C6E646F66CD2a6B66ACdbE434; + address internal constant STKCVXCRVUSDFRAX = 0xb6F63cc2066e7626fA47fCC37E78Df9fe89F1663; + address internal constant STKCVXCVGFRAXBP = 0x7B465174A93a6d0602fD4ea99eEc86C07e5E1568; + address internal constant STKCVXCVXCRVFRAXBP = 0xa103a6ca0C4D4072BA59a55FD453BFE4197A095B; + address internal constant STKCVXCVXFRAXBP = 0x93D1De20eaBB21686CFe716f78F67E51ee578185; + address internal constant STKCVXCVXFXSFRAXBP = 0xA6A8F315b1a8C9B05433d206b8fECfbF0fC96217; + address internal constant STKCVXDOLAFRAXBP = 0xF06c8696730cf760619e4fA0eDd0f79ea50531A9; + address internal constant STKCVXDOLAFRAXPYUSD = 0x8aAa49650C4908156efAc3B47e00745a319c806c; + address internal constant STKCVXEUSDFRAXBP = 0x49BF6f9B860fAF73B0b515c06Be1Bcbf4A0db3dF; + address internal constant STKCVXFPIFRAX = 0x7287488F8Df7dddc5f373142D4827aAF92AAC845; + address internal constant STKCVXFRAXBP = 0x8a53ee42FB458D4897e15cc7dEa3F75D0F1c3475; + address internal constant STKCVXFRAXFPI_NG = 0x562E4d6C958333a5f0988FFedA11e45C27722994; + address internal constant STKCVXFRAXFXB_20240630 = 0x6E804b00fe562707E3a86bBbcC53Eb73c36c0cf6; + address internal constant STKCVXFRAXFXB_20241231 = 0xBb16610CF051AAc4bBEF9c53e2fc99b77BCE4A8c; + address internal constant STKCVXFRAXFXB_20261231 = 0x8aa015CE081505064a9cB8e7816deE3Bd7a45a12; + address internal constant STKCVXFRAXPYUSD = 0x59Ae4E430be0bF47e758F7E022E9a50A8C7D09d6; + address internal constant STKCVXFRAXSDAI = 0x2EB43dBF8C0013712fEc7B2A57453e41B9907e95; + address internal constant STKCVXFRAXUSDP = 0x5385AE7dC08F5C3799691E5b387cB01108B76627; + address internal constant STKCVXFRXETHALETH = 0x8A59781B415288f9E633b948618726CB6E47e980; + address internal constant STKCVXFRXETHANKRETH = 0x75A439b3F8106428b86198D8c306c57E9e7Bb3dC; + address internal constant STKCVXFRXETHCBETH = 0x4e9D8323603E69c1310E5e04Db172bD5aB07df95; + address internal constant STKCVXFRXETHCRV = 0x194aA54376886dAd3d08e71F47D189A88251D8Da; + address internal constant STKCVXFRXETHCVX = 0x5B31bf2988E5388Edae2960504d96Bc142742dCb; + address internal constant STKCVXFRXETHETH = 0x4659d5fF63A1E1EDD6D5DD9CC315e063c95947d0; + address internal constant STKCVXFRXETHMSETH = 0x09bFD0c760E4a1bFc970cdaAAD240307C917Aa6c; + address internal constant STKCVXFRXETHPETH = 0xeCF134dF5DE1e0E12A441D446ff81994Cb0301A2; + address internal constant STKCVXFRXETHPXETH = 0x51521Da84Cbce1B4A930B55d8D896b590532f7A6; + address internal constant STKCVXFRXETHRETH = 0xE0c65F74728Ff26219C6adddCEfB215484bb08DF; + address internal constant STKCVXFRXETHRETH_STAFI = 0xffAFA5aA5b0a9C0C8e05ec8b89056F018EE2Bad6; + address internal constant STKCVXFRXETHSETH = 0x44b51F7F92D761Cf2FC46011AD6b74Ce56447924; + address internal constant STKCVXFRXETHSTETH = 0xc2eC3d1209FD1Fc512950825f34281EaF9aB13A2; + address internal constant STKCVXFRXETHWETH = 0x08061feC3FC09Aa2Eb4B4B72EA618034CBFD22b0; + address internal constant STKCVXFRXETHZETH = 0xd69068777d1b2dc74522117efA75AA195c0b57DB; + address internal constant STKCVXFRXETHZUNETH = 0xD893522D2CCd40eA6C1414815e3eAD1B58a83D51; + address internal constant STKCVXGRAIFRAXBP = 0xDf9BB26ba5a05fcFc2637dC763AA4eb735911568; + address internal constant STKCVXGUSDFRAXBP = 0x16e9eaC2A9e29aF3c53d24ed0F07fc403E098b64; + address internal constant STKCVXLUSDFRAXBP = 0x8C402989a966D37B96f60401A6158D5D49f1381D; + address internal constant STKCVXMAIFRAXBP = 0x787eB52b94c4610ABE2C9C5eE95c3a4a16533344; + address internal constant STKCVXMKUSDFRAXBP = 0xd529a0FD4249f0b48171140873b1b13a1ad5286d; + address internal constant STKCVXMSUSDFRAXBP = 0x227b7F44468A0EC0FDdfc3FB0cE09b294E62f875; + address internal constant STKCVXOHMFRAXBP = 0x81b0dCDa53482A2EA9eb496342dC787643323e95; + address internal constant STKCVXPUSDFRAXBP = 0x7AEF5bDC573dCbfb40EC68b0BAAB03abB846C9c6; + address internal constant STKCVXRSRFRAXBP = 0xF37007f2b9DE656115e1B977Bb1fd38A99B8a2a6; + address internal constant STKCVXSDTFRAXBP = 0xE6Aa75F98e6c105b821a2dba9Fbbd886b421F06b; + address internal constant STKCVXSTGFRAXBP = 0xAe1bA2Cf0eBF00C5052309992d7B6c94e3EfcBEf; + address internal constant STKCVXSUSDFRAXBP = 0x9f0C2673a33b7087e367253f196A7E823fBc2341; + address internal constant STKCVXSWETHFRXETH = 0xa3ae006Cc863423F690ca01C2a8F692B97c93c3b; + address internal constant STKCVXTRICRYPTOFRAX = 0x0643d5C29498149D31bAd69a5bE2771b5440C58d; + address internal constant STKCVXTRISDT = 0xAD059ccF041e344eA52A3152Bbf654c605d68473; + address internal constant STKCVXTUSDFRAXBP = 0x32fA492Ac1F729E0eE9eDdfCBacc3ef72B234e27; + address internal constant STKCVXUSDDFRAXBP = 0x507e41A64eB7AE47ee303e3B16237ab757F6C06c; + address internal constant STKCVXUZDFRAXBP = 0xaa236bd1302755937Aa46D6f3423655BbC654B02; + address internal constant STKCVXUZDFRAXBP_DEPRECATED = 0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316; + address internal constant STKCVXUZDFRAXBP_DEPRECATED_OLD = 0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316; + address internal constant STKCVXXAIFRAXBP = 0x19f0a60f4635d3E2c48647822Eda5332BA094fd3; + address internal constant STKCVXZUSDFRAXBP = 0xFD2d7847E0f450d8B00d3D697D720C687E622a7B; + address internal constant STKMTA = 0x8f2326316eC696F6d023E37A9931c2b2C177a3D7; + address internal constant SUSDFRAXBP = 0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF; + address internal constant SUSDFRAXBP_POOL = 0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF; + address internal constant SWETHFRXETH = 0xe49AdDc2D1A131c6b8145F0EBa1C946B7198e0BA; + address internal constant SWETHFRXETH_POOL = 0x67e0bDbe0A2C5999A60D048f50e794218056b767; + address internal constant TFRAX = 0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2; + address internal constant TFXS = 0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655; + address internal constant THREECRV_ERC20 = 0x6c3F90f043a72FA612cbac8115EE7e52BDe6E490; + address internal constant THREECRV_POOL = 0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7; + address internal constant TRICRYPTOFRAX = 0x4D1941a887eC788F059b3bfcC8eE1E97b968825B; + address internal constant TRICRYPTOFRAX_GAUGE = 0x4B43fEaB8f5ccD38Ac0831DD7eC797330114F058; + address internal constant TRISDT = 0x954313005C56b555bdC41B84D6c63B69049d7847; + address internal constant TRISDT_GAUGE = 0x2DD2b7E07dD433B758B98A3889a63cbF48ef0D99; + address internal constant TUSDFRAXBP = 0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893; + address internal constant TUSDFRAXBP_POOL = 0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893; + address internal constant USDDFRAXBP = 0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20; + address internal constant USDDFRAXBP_POOL = 0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20; + address internal constant UZDFRAXBP = 0x68934F60758243eafAf4D2cFeD27BF8010bede3a; + address internal constant UZDFRAXBP_POOL = 0x68934F60758243eafAf4D2cFeD27BF8010bede3a; + address internal constant VECRV = 0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2; + address internal constant VESDL = 0xD2751CdBED54B87777E805be36670D7aeAe73bb2; + address internal constant VLCVX = 0x72a19342e8F1838460eBFCCEf09F6585e32db86E; + address internal constant XAIFRAXBP = 0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669; + address internal constant XAIFRAXBP_POOL = 0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669; + address internal constant XSDT = 0xaC14864ce5A98aF3248Ffbf549441b04421247D3; + address internal constant YVUSDC = 0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE; + address internal constant ZUSDFRAXBP = 0x400d4C984779A747462e88373c3fE369EF9F5b50; + address internal constant ZUSDFRAXBP_GAUGE = 0x218E4678318ab5527e41135713193E5EAd73337f; + address internal constant ZUSDFRAXBP_POOL = 0x400d4C984779A747462e88373c3fE369EF9F5b50; + address internal constant AAVE_ETH_UNI_V3_POOL = 0x5aB53EE1d50eeF2C1DD3d5402789cd27bB52c1bB; + address internal constant APE_WETH_UNI_V3_POOL = 0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF; + address internal constant FRAX_DAI_V3_POOL = 0x97e7d56A0408570bA1a7852De36350f7713906ec; + address internal constant FRAX_USDC_V3_POOL = 0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52; + address internal constant FRAX_WETH_UNI_V3_POOL = 0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A; + address internal constant FRXETH_FRAX_V3_POOL = 0x36C060Cc4b088c830a561E959A679A58205D3F56; + address internal constant LINK_ETH_UNI_V3_POOL = 0xa6Cc3C2531FdaA6Ae1A3CA84c2855806728693e8; + address internal constant MKR_ETH_UNI_V3_POOL = 0xe8c6c9227491C0a8156A0106A0204d881BB7E531; + address internal constant STATIC_UNI_V3_ORACLE = 0xB210CE856631EeEB767eFa666EC7C1C57738d438; + address internal constant UNI_ETH_UNI_V3_POOL = 0x1d42064Fc4Beb5F8aAF85F4617AE8b3b5B8Bd801; + address internal constant USDC_WETH_UNI_V3_POOL = 0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640; + address internal constant KYBERSWAP_ELASTIC_FACTORY = 0x5F1dddbf348aC2fbe22a163e30F99F9ECE3DD50a; + address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; + address internal constant KYBERSWAP_ELASTIC_POS_MGR = 0x2B1c7b41f6A8F2b2bc45C3233a5d5FB3cD6dC9A8; + address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; + address internal constant KYBERSWAP_ELASTIC_ROUTER = 0xC1e7dFE73E1598E3910EF4C7845B68A9Ab6F4c83; + address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; + address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER = 0xD7ab1699280980E756C446769B4c0F04550f88c9; + address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; + address internal constant NON_FUNGIBLE_POSITION_MANAGER = 0xC36442b4a4522E871399CD717aBDD847Ab11FE88; + address internal constant SWAPROUTER = 0xE592427A0AEce92De3Edee1F18E0157C05861564; + address internal constant UNISWAP_V3_FACTORY = 0x1F98431c8aD98523631AE4a59f267346ea31F984; + address internal constant FPIOFT = 0x9033BAD7aA130a2466060A2dA71fAe2219781B4b; + address internal constant FRXETHOFT = 0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6; + address internal constant FRXUSDOFT = 0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0; + address internal constant SFRXETHOFT = 0xbBc424e58ED38dd911309611ae2d7A23014Bd960; + address internal constant SFRXUSDOFT = 0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126; + address internal constant WFRAXOFT = 0x04ACaF8D2865c0714F79da09645C13FD2888977f; + address internal constant REMOTEHOP = 0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E; + address internal constant REMOTEMINTREDEEMHOP = 0x99B5587ab54A49e3F827D10175Caf69C0187bfA8; +} + +abstract contract AddressHelperMainnet is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x853d955aCEf822Db058eb8505911ED77F175b99e, "Constants.ETH_FRAX"); + vm.label(0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0, "Constants.ETH_FXS"); + vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.ETH_FPI"); + vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.ETH_FPIS"); + vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.ETH_FRXETH"); + vm.label(0xac3E018457B222d93114458476f3E3416Abbe38F, "Constants.ETH_SFRXETH"); + vm.label(0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32, "Constants.ETH_SFRAX"); + vm.label(0x853d955aCEf822Db058eb8505911ED77F175b99e, "Constants.ETH_FRAX_ERC20"); + vm.label(0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0, "Constants.ETH_FXS_ERC20"); + vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.ETH_FRXETH_ERC20"); + vm.label(0xac3E018457B222d93114458476f3E3416Abbe38F, "Constants.ETH_SFRXETH_ERC20"); + vm.label(0x02577b426F223A6B4f2351315A19ecD6F357d65c, "Constants.ETH_AAVE_AFRAX"); + vm.label(0xb40432243E4F317cE287398e72Ab8f0312fc2FE8, "Constants.ETH_ANGLE_FRAX_AGEUR_STAKING"); + vm.label(0x60aaA9b33e712A76F9421E46a75ec47fBDc8d4CB, "Constants.ETH_AURA_FRXETH_PXETH_DEPOSIT"); + vm.label(0x1e64E373c143810524BDb1Ac8Dce35977d12e55d, "Constants.ETH_BALANCER_FRXETH_PXETH_GAUGE_DEPRECATED"); + vm.label(0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a, "Constants.ETH_BALANCER_SFRXETH_STETH_RETH_BPT"); + vm.label(0x50B4cDb17D3e10C9BC88b3744F3fD7c25695EEE7, "Constants.ETH_BUNNI_FRAX_USDC_GAUGE"); + vm.label(0xcbcCBA2FA84606Df153B593dD01c37a50ac8427C, "Constants.ETH_BUNNI_FRXETH_WETH_GAUGE"); + vm.label(0xd1f21322bBDd3586dC1151ADCcaA2684641c2b31, "Constants.ETH_CONVEX_STKCVXAGEURFRAXBP"); + vm.label(0xA0657642224Fc53dAB4a3d2069430afe157BEc5D, "Constants.ETH_CONVEX_STKCVXALCXFRAXBP"); + vm.label(0x711d650Cd10dF656C2c28D375649689f137005fA, "Constants.ETH_CONVEX_STKCVXALUSDFRAXBP"); + vm.label(0xa810D1268cEF398EC26095c27094596374262826, "Constants.ETH_CONVEX_STKCVXAPEUSDFRAXBP"); + vm.label(0x5a92EF27f4baA7C766aee6d751f754EBdEBd9fae, "Constants.ETH_CONVEX_STKCVXBADGERFRAXBP"); + vm.label(0xaCf54f101B86f9e55d35C0674Ebd8C854E5f80e4, "Constants.ETH_CONVEX_STKCVXBUSDFRAXBP"); + vm.label(0x5745506D56b0088f800085b1227B3f1F7d419c89, "Constants.ETH_CONVEX_STKCVXCLEVUSDFRAXBP"); + vm.label(0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6, "Constants.ETH_CONVEX_STKCVXCOILFRAXBP"); + vm.label(0x94c491e298625b1226a89DDA091B3932c59FAbc1, "Constants.ETH_CONVEX_STKCVXCOILFRAXBP_DEPRECATED"); + vm.label(0x67CC47cF82785728DD5E3AE9900873a074328658, "Constants.ETH_CONVEX_STKCVXCRVUSDFRAX"); + vm.label(0x1ee8D379e374A4A00e7d79AF4Bf2eD2b591561c2, "Constants.ETH_CONVEX_STKCVXCVGFRAXBP"); + vm.label(0x57c9F019B25AaAF822926f4Cacf0a860f61eDd8D, "Constants.ETH_CONVEX_STKCVXCVXCRVFRAXBP"); + vm.label(0xeC670c5e0A8A8d5ae5639158565D840DE44CA03f, "Constants.ETH_CONVEX_STKCVXCVXFRAXBP"); + vm.label(0x2F9504988675c91787E188Ed928D6E042d9052e9, "Constants.ETH_CONVEX_STKCVXCVXFXSFRAXBP"); + vm.label(0xE7211E87D60177575846936F2123b5FA6f0ce8Ab, "Constants.ETH_CONVEX_STKCVXDOLAFRAXBP"); + vm.label(0x972d92f4563Ac9581c730A13A47Ae9d6dCdf18b7, "Constants.ETH_CONVEX_STKCVXDOLAFRAXPYUSD"); + vm.label(0x4c9AD8c53d0a001E7fF08a3E5E26dE6795bEA5ac, "Constants.ETH_CONVEX_STKCVXEUSDFRAXBP"); + vm.label(0x0a08673E3d7c454E1c6b27acD059C50Df6727FC9, "Constants.ETH_CONVEX_STKCVXFPIFRAX"); + vm.label(0x963f487796d54d2f27bA6F3Fbe91154cA103b199, "Constants.ETH_CONVEX_STKCVXFRAXBP"); + vm.label(0x7d69b887751Af59fB4b56BC98fcA0234096Eb267, "Constants.ETH_CONVEX_STKCVXFRAXFPI_NG"); + vm.label(0x6D54747fC8e32cA1A91bA2fd36aB673bD84E2e7b, "Constants.ETH_CONVEX_STKCVXFRAXFXB_20240630"); + vm.label(0x9D7eB7Ec34283D93C6677AE30F3983399Ab72A2f, "Constants.ETH_CONVEX_STKCVXFRAXFXB_20241231"); + vm.label(0x9A95396eC04B55de54859C06fd75dFb8466F4653, "Constants.ETH_CONVEX_STKCVXFRAXFXB_20261231"); + vm.label(0x18FEFE5Db2D63aCaa8b5520AFde32507216d39e1, "Constants.ETH_CONVEX_STKCVXFRAXPYUSD"); + vm.label(0x90EB2F13Acf1bc35c2c40c0EBaff2De4d2Eb0d6b, "Constants.ETH_CONVEX_STKCVXFRAXSDAI"); + vm.label(0x2A5b8C7DFE489CeB00ec80524C0bA0C1b78433A9, "Constants.ETH_CONVEX_STKCVXFRAXUSDP"); + vm.label(0x56790e4A08eD17aa3b7b4B1b23A6a84D731Fd77e, "Constants.ETH_CONVEX_STKCVXFRXETHALETH"); + vm.label(0x854B98dC1F76c92b22F75d1f33D23FEb64D8087F, "Constants.ETH_CONVEX_STKCVXFRXETHANKRETH"); + vm.label(0x16e55917849aC7fA4341470FA3A22bB503D5cACD, "Constants.ETH_CONVEX_STKCVXFRXETHCBETH"); + vm.label(0xDA0622cBa8cC821ee0d4AfA366Df95E948b43297, "Constants.ETH_CONVEX_STKCVXFRXETHCRV"); + vm.label(0xb01BaB994b52A37a231551f00a1B7cAcd43bc8C9, "Constants.ETH_CONVEX_STKCVXFRXETHCVX"); + vm.label(0xa537d64881b84faffb9Ae43c951EEbF368b71cdA, "Constants.ETH_CONVEX_STKCVXFRXETHETH"); + vm.label(0x2816Ab1F4Db656602b6B0041c006652A4F5D0437, "Constants.ETH_CONVEX_STKCVXFRXETHMSETH"); + vm.label(0xD591A551bC1776A7Ce066a5Df7640266afc850bF, "Constants.ETH_CONVEX_STKCVXFRXETHPETH"); + vm.label(0xC68A0174401AE002D6DbA8C9788C6dF4c807BD52, "Constants.ETH_CONVEX_STKCVXFRXETHPXETH"); + vm.label(0x719505cB97DF15565255eb1bDe65586271dB873C, "Constants.ETH_CONVEX_STKCVXFRXETHRETH"); + vm.label(0x76CF35aB1450D3A6c84EdDB8A960A5F65B76e706, "Constants.ETH_CONVEX_STKCVXFRXETHRETH_STAFI"); + vm.label(0xd79Ae34eD6D11A235629A48aeA9F661a241faD4f, "Constants.ETH_CONVEX_STKCVXFRXETHSETH"); + vm.label(0x68921998fbc43B360D3cF14a03aF4273CB0cFA44, "Constants.ETH_CONVEX_STKCVXFRXETHSTETH"); + vm.label(0xB4fdD7444E1d86b2035c97124C46b1528802DA35, "Constants.ETH_CONVEX_STKCVXFRXETHWETH"); + vm.label(0x882B9fad02D1a7436449dcdE9934Eeb9E287909c, "Constants.ETH_CONVEX_STKCVXFRXETHZETH"); + vm.label(0xE2E998A68C6f1D10c41884931457B7C302C6fA97, "Constants.ETH_CONVEX_STKCVXFRXETHZUNETH"); + vm.label(0x5684d5566bb438D8Ef7B3C1E5da9450cD19C1b9f, "Constants.ETH_CONVEX_STKCVXGRAIFRAXBP"); + vm.label(0xF0Ffe16810B7f412c52C1610e3BC9819A7Dcb366, "Constants.ETH_CONVEX_STKCVXGUSDFRAXBP"); + vm.label(0xF0A9b6F6593b4Bf96E1Ab13921A8a3FbFd9d4F16, "Constants.ETH_CONVEX_STKCVXLUSDFRAXBP"); + vm.label(0xdE5684F85a78F6CcCFFB4b9301ad0944eb5CE3eE, "Constants.ETH_CONVEX_STKCVXMAIFRAXBP"); + vm.label(0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc, "Constants.ETH_CONVEX_STKCVXMKUSDFRAXBP"); + vm.label(0xfB2CCc82755A734C53C8B45f260fFc2df026fe87, "Constants.ETH_CONVEX_STKCVXMSUSDFRAXBP"); + vm.label(0xc96e1a26264D965078bd01eaceB129A65C09FFE7, "Constants.ETH_CONVEX_STKCVXOHMFRAXBP"); + vm.label(0x40b42E4ab3c044e67CBFb0bD99C9E975dcB83668, "Constants.ETH_CONVEX_STKCVXPUSDFRAXBP"); + vm.label(0xF22D3C85e41Ef4b5Ac8Cb8B89a14718e290a0561, "Constants.ETH_CONVEX_STKCVXRSRFRAXBP"); + vm.label(0x9C8d9667d5726aEcA4d24171958BeE9F46861bed, "Constants.ETH_CONVEX_STKCVXSDTFRAXBP"); + vm.label(0xd600A3E4F57E718A7ad6A0cbb10c2A92c57827e6, "Constants.ETH_CONVEX_STKCVXSTGFRAXBP"); + vm.label(0x560c7668459221e33ED515D1D17c09ECda1996f5, "Constants.ETH_CONVEX_STKCVXSUSDFRAXBP"); + vm.label(0x7b8848f10A016341c9B2427e8541C19F31C2D243, "Constants.ETH_CONVEX_STKCVXSWETHFRXETH"); + vm.label(0x5C0238c4C8f13370001632806C87066B90F1E383, "Constants.ETH_CONVEX_STKCVXTRICRYPTOFRAX"); + vm.label(0x50Cde910D1f8b6C787b7903d23082542593E0710, "Constants.ETH_CONVEX_STKCVXTRISDT"); + vm.label(0xb324b2BD8a3Dc55b04111E84d5cce0c3771F8889, "Constants.ETH_CONVEX_STKCVXTUSDFRAXBP"); + vm.label(0xF7242A1cE383174802818febB36B6eebb56d5BFb, "Constants.ETH_CONVEX_STKCVXUSDDFRAXBP"); + vm.label(0xb8ebc210BCF78be8Ef3F09Dd0d8e85Fa5e252e86, "Constants.ETH_CONVEX_STKCVXUZDFRAXBP"); + vm.label(0x7838d18AD75372061a1e71e1499b7E90832c1508, "Constants.ETH_CONVEX_STKCVXUZDFRAXBP_DEPRECATED"); + vm.label(0x7677D1AADcd42dC40E758115FfDE5e1E10B7f30b, "Constants.ETH_CONVEX_STKCVXUZDFRAXBP_DEPRECATED_OLD"); + vm.label(0x4edF7C64dAD8c256f6843AcFe56876024b54A1b6, "Constants.ETH_CONVEX_STKCVXXAIFRAXBP"); + vm.label(0x107a33019910E57533Ad4F75762d6A958630cA3d, "Constants.ETH_CONVEX_STKCVXZUSDFRAXBP"); + vm.label(0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC, "Constants.ETH_CURVE_FRAX3CRV_F_2"); + vm.label(0x71173e3c6999c2C72ccf363f4Ae7b67BCc7E8F63, "Constants.ETH_DFORCE_FRAX_LENDING_ETHEREUM"); + vm.label(0x1C9A2d6b33B4826757273D47ebEe0e2DddcD978B, "Constants.ETH_FLUX_FINANCE_FFRAX"); + vm.label(0x73e1e624C6d3E027b8674e6C72F104F1429FC17E, "Constants.ETH_FRAXLEND_V1_FRAX_FXS"); + vm.label(0x5e15E40A3AA06bECA711EdE9F3F76E1d80C34490, "Constants.ETH_FRAXSWAP_V1_FRAX_IQ"); + vm.label(0xBF33B67F243a4DAbED494Ff5840f113B2E202a0d, "Constants.ETH_FRAXSWAP_V1_FRAX_IQ_V2"); + vm.label(0x35678017e1D252dA1CdD6745b147E3e75d1f9C27, "Constants.ETH_FRAXSWAP_V1_FRAX_IQ_V3"); + vm.label(0x9E66E7811fEacf5402B65021475d1A293f7ea797, "Constants.ETH_FRAXSWAP_V1_FRAX_PITCHFXS"); + vm.label(0x899Aa575E0e46344D18471f69337663C48b76e35, "Constants.ETH_FRAXSWAP_V1_FRAX_PITCHFXS_V2"); + vm.label(0x24C66Ba25ca2A53bB97B452B9F45DD075b07Cf55, "Constants.ETH_FRAXSWAP_V1_FRAX_PITCHFXS_V3"); + vm.label(0xE8453a2e8E97cba69365A1d727Fde3768b18d814, "Constants.ETH_FRAXSWAP_V1_FRAX_SYN"); + vm.label(0x9d46C0584C5C89e14fb1143e2414712feF36f00F, "Constants.ETH_FRAXSWAP_V2_FRAX_FPIS"); + vm.label(0x3F2E53B1A3036Fd33F3c2f3cC49daB26A88DF2e0, "Constants.ETH_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0x7af00CF8D3a8A75210a5Ed74f2254E2EC43B5B5b, "Constants.ETH_FRAXSWAP_V2_FRAX_IQ"); + vm.label(0xf562B2f33b3c90d5D273f88Cdf0CeD866E17092e, "Constants.ETH_FRAXSWAP_V2_FRAX_OHM"); + vm.label(0xa632Fab76Fe013199c8271Ac22b466b9D11BFe88, "Constants.ETH_FRAXSWAP_V2_FRAX_PITCHFXS"); + vm.label(0x8875A328EaDb1e142f4021Fc2098096796a30cf8, "Constants.ETH_FRAXSWAP_V2_FRAX_SDL"); + vm.label(0x788E44b6424A0e4160Ae4766E86640EC5a6baD5b, "Constants.ETH_FRAXSWAP_V2_FRAX_SYN"); + vm.label(0x38950D42CD549842B3Fc862a45F00eB24331F462, "Constants.ETH_FRAXSWAP_V2_FRAX_ZZ"); + vm.label(0x8A1112AFef7F4FC7c066a77AABBc01b3Fff31D47, "Constants.ETH_GEARBOX_DFRAX"); + vm.label(0xcdfc491804A420b677f8e788B5157856910E2F6f, "Constants.ETH_GELATO_UNISWAP_FRAX_DAI"); + vm.label(0x21AF9DBa45989512468B08d13978e9040cc0cEF6, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC"); + vm.label(0x90d52cdc60B7FF7994095Aa184694225035E8A60, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_DEPRECATED"); + vm.label(0x6b96465F5e51C01134e0e64bff19f922fA7337C7, "Constants.ETH_KYBERSWAP_ELASTIC_FRXETH_ETH"); + vm.label(0x0cF99bbc8794e09e713769c4352eB3318e25c975, "Constants.ETH_KYBERSWAP_ELASTIC_FRXETH_ETH_DEPRECATED"); + vm.label(0xaDf48a504b7E7262FE9BFC62Ab11894187590BB7, "Constants.ETH_KYBERSWAP_ELASTIC_FRXETH_FRAX"); + vm.label(0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264, "Constants.ETH_MONOLITH_MO_SAMM_FRAX_USDT"); + vm.label(0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96, "Constants.ETH_MONOLITH_MO_SAMM_FRXETH_WETH"); + vm.label(0x520b8e754768EEed9a37d78de76Cd5d75456b92F, "Constants.ETH_MONOLITH_MO_VAMM_FXS_FRXETH"); + vm.label(0x6667c53D631410649B1826D21cFdf41E7a7aE6b1, "Constants.ETH_PICKLE_FINANCE_CURVE_CVXFXS_FXS"); + vm.label(0x62826760CC53AE076a7523Fd9dCF4f8Dbb1dA140, "Constants.ETH_PICKLE_FINANCE_PVEFXS_BRINERY"); + vm.label(0x08cb0A0ba8e4f143e4e6F7BED65E02b6dFb9A16C, "Constants.ETH_PICKLE_FINANCE_SADDLE_D4"); + vm.label(0xA50e005c3f2f3Cd1f56B09DF558816CfCe25E934, "Constants.ETH_PICKLE_FINANCE_UNIV3_FRAX_DAI"); + vm.label(0x6092cdE5762FA9F5c8D081fb0c5eD23601f0F400, "Constants.ETH_PICKLE_FINANCE_UNIV3_FRAX_USDC"); + vm.label(0x0639076265e9f88542C91DCdEda65127974A5CA5, "Constants.ETH_SADDLE_ALUSD_FEI_FRAX_LUSD"); + vm.label(0x810E190Be9592615D75c514C0f9D8c9b79eB8056, "Constants.ETH_SOLIDLY_SAMM_FRAX_USDC"); + vm.label(0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264, "Constants.ETH_SOLIDLY_SAMM_FRAX_USDT"); + vm.label(0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96, "Constants.ETH_SOLIDLY_SAMM_FRXETH_WETH"); + vm.label(0xFae2B6Cac80635Cf768c9B68A4f453DB00BC79F0, "Constants.ETH_SOLIDLY_VAMM_FRAX_FRXETH"); + vm.label(0x520b8e754768EEed9a37d78de76Cd5d75456b92F, "Constants.ETH_SOLIDLY_VAMM_FXS_FRXETH"); + vm.label(0x290a42E913083Edf5AEFb241f8A12B306C19f8f9, "Constants.ETH_SOMMELIER_FRAXIMAL"); + vm.label(0xAB1927160EC7414C6Fa71763E2a9f3D107c126dd, "Constants.ETH_STAKEDAO_CVXFXS_FXS"); + vm.label(0x72E158d38dbd50A483501c24f792bDAAA3e7D55C, "Constants.ETH_STAKEDAO_FRAX3CRV"); + vm.label(0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503, "Constants.ETH_STAKEDAO_FRAX_USDC"); + vm.label(0x2932a86df44Fe8D2A706d8e9c5d51c24883423F5, "Constants.ETH_STAKEDAO_FRXETHCRV"); + vm.label(0xb40432243E4F317cE287398e72Ab8f0312fc2FE8, "Constants.ETH_STAKEDAO_SANFRAX"); + vm.label(0x0A53544b2194Dd8Ebc62c779043fc0624705BB56, "Constants.ETH_STAKEDAO_SDETH_FRAXPUT"); + vm.label(0xEB81b86248d3C2b618CcB071ADB122109DA96Da2, "Constants.ETH_STAKEDAO_SDFRAX3CRV_F"); + vm.label(0xF3C6e8fbB946260e8c2a55d48a5e01C82fD63106, "Constants.ETH_STAKEDAO_SDFXS"); + vm.label(0xa9A9BC60fc80478059A83f516D5215185eeC2fc0, "Constants.ETH_STAKEDAO_SDFXS_FXS"); + vm.label(0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a, "Constants.ETH_STAKEDAO_SFRXETH_STETH_RETH_BPT"); + vm.label(0xB0D502E938ed5f4df2E681fE6E419ff29631d62b, "Constants.ETH_STARGATE_BRIDGE_LIQUIDITY_FRAX_ETHEREUM"); + vm.label(0xb4Ab0dE6581FBD3A02cF8f9f265138691c3A7d5D, "Constants.ETH_SUSHI_FRAX_SUSHI"); + vm.label(0x10460d02226d6ef7B2419aE150E6377BdbB7Ef16, "Constants.ETH_TEMPLE_FRAX_TEMPLE"); + vm.label(0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2, "Constants.ETH_TOKEMAK_FRAX_STAKING"); + vm.label(0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655, "Constants.ETH_TOKEMAK_FXS_STAKING"); + vm.label(0x9928e4046d7c6513326cCeA028cD3e7a91c7590A, "Constants.ETH_UNISWAP_FEI_TRIBE"); + vm.label(0xda2c338350a0E59Ce71CDCED9679A3A590Dd9BEC, "Constants.ETH_UNISWAP_FRAX_FXS"); + vm.label(0xF37057823910653a554d996B49E3399DC87fAE1b, "Constants.ETH_UNISWAP_FRAX_IQ"); + vm.label(0xfC77A420f56Dec53e3b91D7FC936902e132335FF, "Constants.ETH_UNISWAP_FRAX_OHM"); + vm.label(0xa29367a3f057F3191b62bd4055845a33411892b6, "Constants.ETH_UNISWAP_FRAX_USDC"); + vm.label(0xD875628B942f8970De3CcEaf6417005F68540d4f, "Constants.ETH_UNISWAP_FRAX_WETH"); + vm.label(0xDc65f3514725206Dd83A8843AAE2aC3D99771C88, "Constants.ETH_UNISWAP_FXS_WETH"); + vm.label(0xf8caEd1943B15B877D7105B9906a618c154f69E8, "Constants.ETH_UNISWAP_V3_FRAX_AGEUR"); + vm.label(0xF22471AC2156B489CC4a59092c56713F813ff53e, "Constants.ETH_UNISWAP_V3_FRAX_DAI"); + vm.label(0x3EF26504dbc8Dd7B7aa3E97Bc9f3813a9FC0B4B0, "Constants.ETH_UNISWAP_V3_FRAX_USDC"); + vm.label(0x574C154C83432B0A45BA3ad2429C3fA242eD7359, "Constants.ETH_VEFPIS_FPIS_STAKING"); + vm.label(0xc8418aF6358FFddA74e09Ca9CC3Fe03Ca6aDC5b0, "Constants.ETH_VEFXS_FXS_STAKING"); + vm.label(0x698137C473bc1F0Ea9b85adE45Caf64ef2DF48d6, "Constants.ETH_VESPER_ORBIT_FRAX"); + vm.label(0x1A5ebfF0E881Aec34837845e4D0EB430a1B4b737, "Constants.ETH_YEARN_CRVFRAX_VAULT_V3"); + vm.label(0xc9268c7F59850B26567b0f5d3Dcc317cEDC43490, "Constants.ETH_SLIPPAGE_AUCTION_FACTORY"); + vm.label(0xa8478781D9605E17c3b4c9C79e7127c4597116E4, "Constants.ETH_FXB_FACTORY"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.ETH_FXB_AMO"); + vm.label(0x831822660572bd54ebaa065C2acef662a6277D40, "Constants.ETH_FXB_AMO_TIMELOCK"); + vm.label(0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e, "Constants.ETH_FXB_20240630"); + vm.label(0xC92067D8DDb1970ecB93202DA31a3C45cC2c1F44, "Constants.ETH_AUCTION_20240630"); + vm.label(0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97, "Constants.ETH_ORACLE_20240630"); + vm.label(0x4ef4c7519023F30A78647EEab321d6cFabC2513c, "Constants.ETH_CURVE_20240630_MAINNET_POOL"); + vm.label(0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09, "Constants.ETH_FXB_20241231"); + vm.label(0xc9aa98788a675FF0846E8856cb83F19452f3b0c8, "Constants.ETH_AUCTION_20241231"); + vm.label(0x08a0748cF885F46e20fA30A50a035808eab293D3, "Constants.ETH_FXB_20241231_ORACLE"); + vm.label(0x6307E6688819951Cf8D6B6066018243D2496952F, "Constants.ETH_CURVE_20241231_MAINNET_POOL"); + vm.label(0xE920eEdAff6c3BEd1Ef61010B64d46986634E908, "Constants.ETH_CURVE_20241231_ARBITRUM_POOL"); + vm.label(0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68, "Constants.ETH_CURVE_20241231_ARBITRUM_GAUGE"); + vm.label(0x76237BCfDbe8e06FB774663add96216961df4ff3, "Constants.ETH_FXB_20261231"); + vm.label(0x63981f5E690eaF7E8795c42832664e8848F532fB, "Constants.ETH_AUCTION_20261231"); + vm.label(0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707, "Constants.ETH_FXB_20261231_ORACLE"); + vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_CURVE_20261231_MAINNET_POOL"); + vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ETH_CURVE_20261231_ARBITRUM_POOL"); + vm.label(0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9, "Constants.ETH_CURVE_20261231_ARBITRUM_GAUGE"); + vm.label(0x85c5f05Ae4CB68190C695a22b292C3bA90696128, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE"); + vm.label(0x4b8792aF00eaE944484bF572bc33029B2184a50C, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE"); + vm.label(0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE"); + vm.label(0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE"); + vm.label(0x505603e2440b44C1602b44D0Eb8385399b3F7bab, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE"); + vm.label(0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE"); + vm.label(0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE"); + vm.label(0x6ac96F65156281a9383455D704b58A74ea9C9eC4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE"); + vm.label(0xA381d58e96eC3818c825E1fb264099448945CF8b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE"); + vm.label(0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE"); + vm.label(0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE"); + vm.label(0x18A5ca670dC42D0551f00E11A730074f6787f17F, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE"); + vm.label(0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE"); + vm.label(0xF380200B115Caa22D49e6C115b758d6130377620, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE"); + vm.label(0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE"); + vm.label(0x3eF1d856EA62A2292B8690855042095a7aC48B4b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE"); + vm.label(0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE"); + vm.label(0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE"); + vm.label(0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE"); + vm.label(0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE"); + vm.label(0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE"); + vm.label(0x621D0e62f26314387f338A2509aFA3Ae3414661A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE"); + vm.label(0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE"); + vm.label(0x2d2261f970F605C813f160E8BAEd455E9004A842, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE"); + vm.label(0xfB788F9E20ef426a32A67986654750172A6c1788, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE"); + vm.label(0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE"); + vm.label(0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE"); + vm.label(0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE"); + vm.label(0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE"); + vm.label(0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE"); + vm.label(0x9A576A3d39c589A861B46864C253288bcA428a6c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE"); + vm.label(0x958815f476cD07354c0BC034EE5077B20fD93003, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE"); + vm.label(0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE"); + vm.label(0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE"); + vm.label(0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE"); + vm.label(0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE"); + vm.label(0x228567c10b7533C88057c10dDeA6349360F122c5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE"); + vm.label(0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE"); + vm.label(0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE"); + vm.label(0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE"); + vm.label(0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE"); + vm.label(0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE"); + vm.label(0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE"); + vm.label(0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE"); + vm.label(0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE"); + vm.label(0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE"); + vm.label(0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE"); + vm.label(0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE"); + vm.label(0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE"); + vm.label(0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE"); + vm.label(0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE"); + vm.label(0x86E71075e55F0aaD27D700017E0783458310c98a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE"); + vm.label(0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE"); + vm.label(0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE"); + vm.label(0xF887C4cFAAfB43d1AA7De204344895591016772c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE"); + vm.label(0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE"); + vm.label(0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE"); + vm.label(0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE"); + vm.label(0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE"); + vm.label(0x27E97F35D80514D5DD1Caa730e22a292E912a214, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE"); + vm.label(0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE"); + vm.label(0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE"); + vm.label(0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE"); + vm.label(0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CREWMEMBER"); + vm.label(0x3C2982CA260e870eee70c423818010DfeF212659, "Constants.ETH_FRAX_POOL_USDC"); + vm.label(0x1864Ca3d47AaB98Ee78D11fc9DCC5E7bADdA1c0d, "Constants.ETH_FRAX_POOL_USDC_V2"); + vm.label(0x7d3FCd3825AE54E8E8FFD3d0ce95882330d54968, "Constants.ETH_FRAX_POOL_USDT"); + vm.label(0x2fE065e6FFEf9ac95ab39E5042744d695F560729, "Constants.ETH_FRAX_POOL_V3"); + vm.label(0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9, "Constants.ETH_AAVE_ERC20"); + vm.label(0x3284E1BCEaf70767A7575d0e1e10fAFbC4618B52, "Constants.ETH_AAVE_TOKEN_DUAL_ORACLE_ADDRESS"); + vm.label(0x547a514d5e3769680Ce22B2361c10Ea13619e8a9, "Constants.ETH_AAVE_USD_CHAINLINK_ORACLE"); + vm.label(0x2CDF5812F4ebcF3BD533E8918D47Bd3e65514520, "Constants.ETH_APECOIN_DUAL_ORACLE_ADDRESS"); + vm.label(0x4d224452801ACEd8B2F0aebE155379bb5D594381, "Constants.ETH_APE_ERC20"); + vm.label(0xD10aBbC76679a20055E167BB80A24ac851b37056, "Constants.ETH_APE_USD_CHAINLINK_ORACLE"); + vm.label(0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c, "Constants.ETH_BTC_USD_CHAINLINK_ORACLE"); + vm.label(0x7F09c398740518F8e34556D8C1A1FBE1cb1F6Db0, "Constants.ETH_CHAIN_LINK_TOKEN_DUAL_ORACLE"); + vm.label(0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c, "Constants.ETH_CIRCUIT_BREAKER_ADDRESS"); + vm.label(0x878f2059435a19C79c20318ee57657bF4543B6d4, "Constants.ETH_COMBO_ORACLE"); + vm.label(0x734fd1fD1f3720379f52cB9d8168d76Cd1ca4A73, "Constants.ETH_COMBO_ORACLE_KYBERSWAP_ELASTIC"); + vm.label(0xc3a483Bb5F96bC4E6104325aa1A229A8E29166B3, "Constants.ETH_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); + vm.label(0x1cBE07F3b3bf3BDe44d363cecAecfe9a98EC2dff, "Constants.ETH_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x168200cF227D4543302686124ac28aE0eaf2cA0B, "Constants.ETH_FRAXLEND_COMPTROLLER_ADDRESS"); + vm.label(0x8A2112B42AF1F997002FBAfF77dd09F42A281e8d, "Constants.ETH_CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP"); + vm.label(0x45127c7fA0c3Ce6A18fEc9604D96eDfBBc8A9700, "Constants.ETH_CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP"); + vm.label(0x54a3A6aFd87F10Eea4Acc2A067A2C0b612B6D315, "Constants.ETH_CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD"); + vm.label(0xd1b222AAEdf2877CeEB3c66BDaA6858200eb48fC, "Constants.ETH_CONVEX_WRAPPER_FRXETH_ETH_FRAXLEND_LP_OLD"); + vm.label(0x7086F2aCB5558043fF9cE3df346D8E3FB4F4f452, "Constants.ETH_CPI_TRACKER_ORACLE"); + vm.label(0x66B7DFF2Ac66dc4d6FBB3Db1CB627BBb01fF3146, "Constants.ETH_CPI_TRACKER_ORACLE_V2"); + vm.label(0xD533a949740bb3306d119CC777fa900bA034cd52, "Constants.ETH_CRV_ERC20"); + vm.label(0xCd627aA160A6fA45Eb793D19Ef54f5062F20f33f, "Constants.ETH_CRV_USD_CHAINLINK_ORACLE"); + vm.label(0x4e3FBD56CD56c3e72c1403e103b45Db9da5B9D2B, "Constants.ETH_CVX_ERC20"); + vm.label(0xd962fC30A72A84cE50161031391756Bf2876Af5D, "Constants.ETH_CVX_USD_CHAINLINK_ORACLE"); + vm.label(0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419, "Constants.ETH_ETH_USD_CHAINLINK_ORACLE"); + vm.label(0x8216AE38454cCe2d52dEcf0442042250Ea6A2510, "Constants.ETH_EZETHETH_DUAL_ORACLE"); + vm.label(0xB020ab0E609d907578f6899a9469E3CbD79e4e70, "Constants.ETH_EZETH_DUAL_ORACLE"); + vm.label(0xbf5495Efe5DB9ce00f80364C8B423567e58d2110, "Constants.ETH_EZETH_ERC20"); + vm.label(0xB8B01cec5CEd05C457654Fc0fda0948f859883CA, "Constants.ETH_FIL_ERC20"); + vm.label(0x0606Be69451B1C9861Ac6b3626b99093b713E801, "Constants.ETH_FIL_ETH_CHAINLINK_ORACLE"); + vm.label(0x1A31D42149e82Eb99777f903C08A2E41A00085d3, "Constants.ETH_FIL_USD_CHAINLINK_ORACLE"); + vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.ETH_FPIS_ERC20"); + vm.label(0x2397321b301B80A1C0911d6f9ED4b6033d43cF51, "Constants.ETH_FPI_CONTROLLER_POOL_ADDRESS"); + vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.ETH_FPI_ERC20"); + vm.label(0xd2516e709a2e9D64F66B4c4009efE4F74F5FA40D, "Constants.ETH_FPI_ORACLE"); + vm.label(0x2469757756ebA7Bea6B7F054896e3Db74103A962, "Constants.ETH_FPI_ORACLE_V2"); + vm.label(0x251d4fE77eD73126583Ee347041258ABeEcB7C66, "Constants.ETH_FRAXBP_CURVE_LP_DUAL_ORACLE"); + vm.label(0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044, "Constants.ETH_FRAXLEND_DEPLOYER_ADDRESS_V0"); + vm.label(0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044, "Constants.ETH_FRAXLEND_PAIRDEPLOYER"); + vm.label(0x26fa88b783cE712a2Fa10E91296Caf3daAE0AB37, "Constants.ETH_FRAXLEND_PAIRHELPER"); + vm.label(0x38488dE975B77dc1b0D4B8569f596f6FD6ca0B92, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_ADDRESS"); + vm.label(0xC4e34AD5908c4D2508a26C20c8687Ff64CB9e05b, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_CONVEX_ADDRESS"); + vm.label(0xaa913C26dD7723Fcae9dBD2036d28171a56C6251, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_V3_ADDRESS"); + vm.label(0xEb8816BAEB70690660ce6C0eDA2b07A21493e664, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_V41_ADDRESS"); + vm.label(0x7AB788d0483551428f2291232477F1818952998C, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS"); + vm.label(0x1b0bCeD6dd26a7c234506E261BC68C9A3A4031b7, "Constants.ETH_FRAXLEND_PAIR_HELPER"); + vm.label(0xD6E9D27C75Afd88ad24Cd5EdccdC76fd2fc3A751, "Constants.ETH_FRAXLEND_PAIR_REGISTRY_ADDRESS"); + vm.label(0x118C1462AA28bF2ea304f78f49C3388cfd93234e, "Constants.ETH_FRAXLEND_WHITELIST_ADDRESS"); + vm.label(0xC14d550632db8592D1243Edc8B95b0Ad06703867, "Constants.ETH_FRAXSWAP_ROUTER_ADDRESS"); + vm.label(0xdB3388e770F49A604E11f1a2084B39279492a61f, "Constants.ETH_FRAX_HOT_WALLET"); + vm.label(0x2Ad35cce2a690E0bF1e6dCAC2F9175389F31D7F4, "Constants.ETH_FRAX_USDC_CURVE_LP_DUAL_ORACLE_ADDRESS"); + vm.label(0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC, "Constants.ETH_FRAX_USDC_CURVE_POOL_LP_ERC20"); + vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_CURVE_POOL_NOT_LP"); + vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_PLAIN_POOL"); + vm.label(0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD, "Constants.ETH_FRAX_USD_CHAINLINK_ORACLE"); + vm.label(0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS"); + vm.label(0xf43211935C781D5ca1a41d2041F397B8A7366C7A, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_ERC20"); + vm.label(0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577, "Constants.ETH_FRXETH_ETH_CURVE_POOL_NOT_LP"); + vm.label(0xb12c19C838499E3447AFd9e59274B1BE56b1546A, "Constants.ETH_FRXETH_ETH_DUAL_ORACLE_ADDRESS"); + vm.label(0xC58F3385FBc1C8AD2c0C9a061D7c13b141D7A5Df, "Constants.ETH_FRXETH_FRAX_ORACLE_ADDRESS"); + vm.label(0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e, "Constants.ETH_FXB_20240630_ERC20"); + vm.label(0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97, "Constants.ETH_FXB_20240630_ORACLE"); + vm.label(0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09, "Constants.ETH_FXB_20241231_ERC20"); + vm.label(0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617, "Constants.ETH_FXB_20241231_ORACLE_ADAPTER"); + vm.label(0x76237BCfDbe8e06FB774663add96216961df4ff3, "Constants.ETH_FXB_20261231_ERC20"); + vm.label(0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3, "Constants.ETH_FXB_20261231_ORACLE_ADAPTER"); + vm.label(0x01480a0C134CeCC309015a564C7e292ba6E0F358, "Constants.ETH_FXB_VARIABLE_RATE_2"); + vm.label(0x6Ebc52C8C1089be9eB3945C4350B68B8E4C2233f, "Constants.ETH_FXS_USD_CHAINLINK_ORACLE"); + vm.label(0x0ab87046fBb341D058F17CBC4c1133F25a20a52f, "Constants.ETH_GOHM_ERC20"); + vm.label(0xe893297a9d4310976424fD0B25f53aC2B6464fe3, "Constants.ETH_GOHM_ORACLE"); + vm.label(0x883Aa2E1E46b53648520E0F6857e2ee1798F3e5d, "Constants.ETH_LDO_DUAL_ORACLE"); + vm.label(0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32, "Constants.ETH_LDO_ERC20"); + vm.label(0x4e844125952D32AcdF339BE976c98E22F6F318dB, "Constants.ETH_LDO_ETH_CHAINLINK_ORACLE"); + vm.label(0x9409280DC1e6D33AB7A8C6EC03e5763FB61772B5, "Constants.ETH_LDO_ETH_CURVE_V2_POOL"); + vm.label(0x2f3511C5E960040369F68508ebb366DF58DF1BF2, "Constants.ETH_LINEAR_INTEREST_RATE"); + vm.label(0x2f3511C5E960040369F68508ebb366DF58DF1BF2, "Constants.ETH_LINEAR_RATE_ADDRESS"); + vm.label(0x514910771AF9Ca656af840dff83E8264EcF986CA, "Constants.ETH_LINK_ERC20"); + vm.label(0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c, "Constants.ETH_LINK_USD_CHAINLINK_ORACLE"); + vm.label(0x4c7b43EcE8958D7f6b184B3833DD1D383db1f83b, "Constants.ETH_MAKER_DUAL_ORACLE_ADDRESS"); + vm.label(0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2, "Constants.ETH_MKR_ERC20"); + vm.label(0x24551a8Fb2A7211A25a17B1481f043A8a8adC7f2, "Constants.ETH_MKR_ETH_CHAINLINK_ORACLE"); + vm.label(0xec1D1B3b0443256cc3860e24a46F108e699484Aa, "Constants.ETH_MKR_USD_CHAINLINK_ORACLE"); + vm.label(0x9a72298ae3886221820B1c878d12D872087D3a23, "Constants.ETH_OHMV2_ETH_CHAINLINK_ORACLE"); + vm.label(0x8161EDD2208247066FA213EDA909B0D351543b3d, "Constants.ETH_RETH_DUAL_ORACLE"); + vm.label(0xae78736Cd615f374D3085123A210448E74Fc6393, "Constants.ETH_RETH_ERC20"); + vm.label(0x16BAb4C46b36587609093633550816fc828817Ba, "Constants.ETH_RSETHETH_DUAL_ORACLE"); + vm.label(0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7, "Constants.ETH_RSETH_ERC20"); + vm.label(0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32, "Constants.ETH_SFRAX_ERC20"); + vm.label(0xd2F0fa7f2E6a60EEcf4b78c5b6D81002b9789F2c, "Constants.ETH_SFRXETH_DUAL_ORACLE_ADDRESS"); + vm.label(0x1473F3e4d236CBBe3412b9f65B4c210756BE2C0E, "Constants.ETH_SFRXETH_ETH_DUAL_ORACLE_ADDRESS"); + vm.label(0xB9af7723CfBd4469A7E8aa60B93428D648Bda99d, "Constants.ETH_SFRXETH_FRAX_ORACLE_ADDRESS"); + vm.label(0x27942aFe4EcB7F9945168094e0749CAC749aC97B, "Constants.ETH_SFRXETH_ORACLE"); + vm.label(0x807502C8EAdAc82C3227249f8aCf54d9d98F76d1, "Constants.ETH_SFRXETH_ORACLE_V2"); + vm.label(0xAfBcCB0a8d301AA8c18eBb4Ac94aB32d394fDCeC, "Constants.ETH_SFRXETH_SFRAX_INVERSE_ORACLE_ADAPTER"); + vm.label(0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f, "Constants.ETH_SFRXETH_USDC_ORACLE_V2_ADAPTER"); + vm.label(0x3d3D868522b5a4035ADcb67BF0846D61597A6a6F, "Constants.ETH_SFRXETH_USD_ORACLE_V2"); + vm.label(0x9D39A5DE30e57443BfF2A8307A4256c8797A3497, "Constants.ETH_SUSDE_ERC20"); + vm.label(0x8Eb7a4Fa315620CC342073326acC206961F4BB62, "Constants.ETH_SUSDE_ORACLE"); + vm.label(0x33A9D662d9F7cb2153e3a5102615B08865BeAbdB, "Constants.ETH_UNISWAP_DUAL_ORACLE_ADDRESS"); + vm.label(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, "Constants.ETH_UNIV2_ROUTER"); + vm.label(0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984, "Constants.ETH_UNI_ERC20"); + vm.label(0x553303d460EE0afB37EdFf9bE42922D8FF63220e, "Constants.ETH_UNI_USD_CHAINLINK_ORACLE"); + vm.label(0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48, "Constants.ETH_USDC_ERC20"); + vm.label(0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6, "Constants.ETH_USDC_USD_CHAINLINK_ORACLE"); + vm.label(0x5dc1BF6f1e983C0b21EfB003c105133736fA0743, "Constants.ETH_USDE_CURVE_PAIR"); + vm.label(0x4c9EDD5852cd905f086C759E8383e09bff1E68B3, "Constants.ETH_USDE_ERC20"); + vm.label(0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838, "Constants.ETH_USDE_ORACLE"); + vm.label(0x18500cB1f2fE7a40eBdA393383A0B8548a31F261, "Constants.ETH_VARIABLE_RATE_2_ADDRESS"); + vm.label(0x576E23b6E2665A91DdF301DcfF53d1fFA2972bB5, "Constants.ETH_VARIABLE_RATE_2_ADDRESS_50"); + vm.label(0xFf7846bAcB63FE97406a1E1e48CAf1595f66A98c, "Constants.ETH_VARIABLE_RATE_50BP_ADDRESS"); + vm.label(0x9327058a739089869B7DC3436E074C6d56051C7A, "Constants.ETH_VARIABLE_RATE_ADDRESS"); + vm.label(0x3da1bf0Be175B7cAa38d67A6E78371947d2F51f7, "Constants.ETH_VARIABLE_RATE_ADDRESS_OLD"); + vm.label(0x9599033315C29Be9690b716bFE409381426dAD41, "Constants.ETH_VARIABLE_RATE_STABLE_ADDRESS"); + vm.label(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599, "Constants.ETH_WBTC_ERC20"); + vm.label(0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC, "Constants.ETH_WBTC_SFRAX_INVERSE_DUAL_ORACLE"); + vm.label(0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); + vm.label(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, "Constants.ETH_WETH_ERC20"); + vm.label(0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A, "Constants.ETH_WETH_FRAX_V3_POOL"); + vm.label(0x1cA1350F67575B0beE44EC9DC6725A4032431F33, "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); + vm.label(0xE0554a476A092703abdB3Ef35c80e0D76d32939F, "Constants.ETH_WETH_USDC_V3_POOL"); + vm.label(0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0, "Constants.ETH_WSTETH_ERC20"); + vm.label(0xe73375f36A1b17A21d7Aa0fDa092195431e7017a, "Constants.ETH_WSTETH_USD_DUAL_ORACLE_ADDRESS"); + vm.label(0x794F6B13FBd7EB7ef10d1ED205c9a416910207Ff, "Constants.ETH_FRAXLEND_PAIR_WETH_FRAX"); + vm.label(0x32467a5fc2d72D21E8DCe990906547A2b012f382, "Constants.ETH_FRAXLEND_PAIR_WBTC_FRAX"); + vm.label(0x78bB3aEC3d855431bd9289fD98dA13F9ebB7ef15, "Constants.ETH_FRAXLEND_PAIR_SFRXETH_FRAX"); + vm.label(0x281E6CB341a552E4faCCc6b4eEF1A6fCC523682d, "Constants.ETH_FRAXLEND_PAIR_CRVETHFRXETH_FRAX"); + vm.label(0xDbe88DBAc39263c47629ebbA02b3eF4cf0752A72, "Constants.ETH_FRAXLEND_PAIR_FXS_FRAX"); + vm.label(0x74F82Bd9D0390A4180DaaEc92D64cf0708751759, "Constants.ETH_FRAXLEND_PAIR_FPI_FRAX"); + vm.label(0x3a25B9aB8c07FfEFEe614531C75905E810d8A239, "Constants.ETH_FRAXLEND_PAIR_APE_FRAX"); + vm.label(0xa1D100a5bf6BFd2736837c97248853D989a9ED84, "Constants.ETH_FRAXLEND_PAIR_CVX_FRAX"); + vm.label(0x3835a58CA93Cdb5f912519ad366826aC9a752510, "Constants.ETH_FRAXLEND_PAIR_CRV_FRAX"); + vm.label(0x66bf36dBa79d4606039f04b32946A260BCd3FF52, "Constants.ETH_FRAXLEND_PAIR_GOHM_FRAX"); + vm.label(0x82Ec28636B77661a95f021090F6bE0C8d379DD5D, "Constants.ETH_FRAXLEND_PAIR_MKR_FRAX"); + vm.label(0xc6CadA314389430d396C7b0C70c6281e99ca7fe8, "Constants.ETH_FRAXLEND_PAIR_UNI_FRAX"); + vm.label(0xc779fEE076EB04b9F8EA424ec19DE27Efd17A68d, "Constants.ETH_FRAXLEND_PAIR_AAVE_FRAX"); + vm.label(0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF, "Constants.ETH_FRAXLEND_PAIR_FXB_20240630_FRAX"); + vm.label(0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a, "Constants.ETH_FRAXLEND_PAIR_FXB_20241231_FRAX"); + vm.label(0x1c0C222989a37247D974937782cebc8bF4f25733, "Constants.ETH_FRAXLEND_PAIR_FXB_20261231_FRAX"); + vm.label(0xeE847a804b67f4887c9E8fe559A2dA4278deFB52, "Constants.ETH_FRAXLEND_PAIR_SFRXETH_USDC"); + vm.label(0x7093F6141293F7C4F67E5efD922aC934402E452d, "Constants.ETH_FRAXLEND_PAIR_LINK_FRAX"); + vm.label(0xb5a46f712F03808aE5c4B885C6F598fA06442684, "Constants.ETH_FRAXLEND_PAIR_WSTETH_FRAX"); + vm.label(0x0601B72bEF2b3F09E9f48B7d60a8d7D2D3800C6e, "Constants.ETH_FRAXLEND_PAIR_LDO_FRAX"); + vm.label(0xa4Ddd4770588EF97A3a03E4B7E3885d824159bAA, "Constants.ETH_FRAXLEND_PAIR_RETH_FRAX"); + vm.label(0xb5Ae5b75C0DF5632c572A657109375646Ce66f90, "Constants.ETH_FRAXLEND_PAIR_SUSDE_FRAX"); + vm.label(0xb67Bd04f74BD79a505c5167675E8812355270eD5, "Constants.ETH_FRAXLEND_PAIR_SFRAX_WBTC"); + vm.label(0x501256B1DC7bb99CdE57AF188a69307BCC7E00E8, "Constants.ETH_FRAXLEND_PAIR_SFRAX_SFRXETH"); + vm.label(0x1eE17BE9B788bcf3EB86C08D0E2b049e036F6eb1, "Constants.ETH_FRAXLEND_PAIR_EZETH_FRXETH"); + vm.label(0xCfE3550206ea801c3F7Dc7997376F09E0b7e4B81, "Constants.ETH_FRAXLEND_PAIR_RSETH_FRXETH"); + vm.label(0xe5Ca8CB440A6f9F6fA1D535D94A839CED59D9942, "Constants.ETH_FRAXLEND_WRAPPER_FACTORY"); + vm.label(0xB076b06F669e682609fb4a8C6646D2619717Be4b, "Constants.ETH_FRAXSWAP_FACTORY_V1"); + vm.label(0x43eC799eAdd63848443E2347C49f5f52e8Fe0F6f, "Constants.ETH_FRAXSWAP_FACTORY_V2"); + vm.label(0x1C6cA5DEe97C8C368Ca559892CCce2454c8C35C7, "Constants.ETH_FRAXSWAP_ROUTER_V1"); + vm.label(0xC14d550632db8592D1243Edc8B95b0Ad06703867, "Constants.ETH_FRAXSWAP_ROUTER_V2"); + vm.label(0x25e9acA5951262241290841b6f863d59D37DC4f0, "Constants.ETH_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0x5A1eA0130Dc4DC38420AA77929f992f1FBd482Bb, "Constants.ETH_FRAXSWAP_PAIR_FRAX_FPI"); + vm.label(0xd79886841026a39cFF99321140B3c4D31314782B, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_FPI"); + vm.label(0x8206412c107eF1aDb70B9277974f5163760E128E, "Constants.ETH_FRAXSWAP_PAIR_FRAX_FXS"); + vm.label(0x03B59Bd1c8B9F6C265bA0c3421923B93f15036Fa, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_FXS"); + vm.label(0x99887AC15eBCcbad52FA2c9ceDc9D91A91e36051, "Constants.ETH_FRAXSWAP_PAIR_FRAX_FPIS"); + vm.label(0x56695c26b3Cdb528815cd22fF7B47510ab821EFd, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_FPIS"); + vm.label(0xD3542ec999ceA6C79f09483fF88833f154a5e92f, "Constants.ETH_FRAXSWAP_PAIR_FPI_FPIS"); + vm.label(0xF14766a7C44EFb7F71441B7114d5Dd295B637175, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FPI_FPIS"); + vm.label(0x843B5Ae5861362F20A3aC185A2dD2393D7526C65, "Constants.ETH_FRAXSWAP_PAIR_FPI_FXS"); + vm.label(0x3ECfdA4EfF6184cD8563772D6d024cB0Fb9cBf80, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FPI_FXS"); + vm.label(0x1306b420B4B5f99cBeE938E369f06863a0f419A5, "Constants.ETH_FRAXSWAP_PAIR_FXS_FPIS"); + vm.label(0x7a9Bd205B55cCB1Cc1c5B99FF5Db87a6e7B2C38b, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FXS_FPIS"); + vm.label(0x49FD21C5C8813B1bAE4e5507C556391D6Dd9e9f1, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FXS_FRXETH"); + vm.label(0x8300f0528e00Ad33b218bb05D396F61A9FDd68Cd, "Constants.ETH_FRAXSWAP_PAIR_FRAX_WETH"); + vm.label(0x31351Bf3fba544863FBff44DDC27bA880916A199, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_WETH"); + vm.label(0x0a92aC70B5A187fB509947916a8F63DD31600F80, "Constants.ETH_FRAXSWAP_PAIR_FRAX_PITCHFXS"); + vm.label(0x2bac101F9769AEfF63c63EFfB4189152e833649F, "Constants.ETH_FRAXSWAP_PAIR_FRAX_PITCHFXS_V2"); + vm.label(0xcB0bC7C879bb3E9CFEB9d8EFef653F33B3d242e9, "Constants.ETH_FRAXSWAP_PAIR_FRAX_IQ"); + vm.label(0x07AF6BB51d6Ad0Cf126E3eD2DeE6EaC34BF094F8, "Constants.ETH_FRAXSWAP_PAIR_FRAX_IQ_V2"); + vm.label(0x38633ed142BCc8128b45aB04A2e4A6e53774699F, "Constants.ETH_FRAXSWAP_PAIR_FRAX_OHM"); + vm.label(0x5769071665eb8Db80e7e9226F92336Bb2897DCFA, "Constants.ETH_FRAXSWAP_PAIR_FRAX_OHM_V2"); + vm.label(0xCCB26b5CC4e1Ce29521DA281a0107A6672bfe099, "Constants.ETH_FRAXSWAP_PAIR_FRAX_SDL_V2"); + vm.label(0x832c6f546Bf34A552DeB8773216a93bf6801028c, "Constants.ETH_FRAXSWAP_PAIR_FRAX_SYN_V2"); + vm.label(0x5E8c1aD4c3D04f059d5c1A2Ce4593e53be270bca, "Constants.ETH_FRAXSWAP_PAIR_FRAX_ZZ_V2"); + vm.label(0x8c5D64d10394cFa070066e70Ec19E67398b4dABE, "Constants.ETH_ADDRESS_MANAGER"); + vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_BASE_FEE_VAULT_RECIPIENT"); + vm.label(0xfF000000000000000000000000000000000420fC, "Constants.ETH_BATCH_INBOX"); + vm.label(0x6017f75108f251a488B045A7ce2a7C15b179d1f2, "Constants.ETH_BATCH_SENDER"); + vm.label(0x3AA7e876880CB34371c01f1510B1e0A932dCb8C1, "Constants.ETH_DISPUTE_GAME_FACTORY_PROXY"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_FINAL_SYSTEM_OWNER"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_FRAXTAL_COMPTROLLER"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_FRAXTAL_DEPLOYER"); + vm.label(0xC6e4ECE5576dC96846bb11eD8910f3dF3CE516b8, "Constants.ETH_L1_CROSS_DOMAIN_MESSENGER_IMPL_V2"); + vm.label(0x126bcc31Bc076B3d515f60FBC81FddE0B0d542Ed, "Constants.ETH_L1_CROSS_DOMAIN_MESSENGER_PROXY"); + vm.label(0x31c25985E6b10CF335FC01cf9790aF4890d0505c, "Constants.ETH_L1_CROSS_DOMAIN_MESSENGER__IMPL_V1"); + vm.label(0x7eE1637C33Ed0DFEE6403f3301B6d404106018e4, "Constants.ETH_L1_ERC721_BRIDGE_IMPL_V2"); + vm.label(0xa9B5Fb84B7aeAF0D51C95DB04a76B1D4738D0eC5, "Constants.ETH_L1_ERC721_BRIDGE_PROXY"); + vm.label(0x23A0478996241F9f966b7054c06FdeB96Ddf3475, "Constants.ETH_L1_ERC721_BRIDGE__IMPL_V1"); + vm.label(0x30Cd695249394eED44C576f2caEC5304be6455F9, "Constants.ETH_L1_STANDARD_BRIDGE_IMPL_V2_ADDR"); + vm.label(0x34C0bD5877A5Ee7099D0f5688D65F4bB9158BDE2, "Constants.ETH_L1_STANDARD_BRIDGE_PROXY"); + vm.label(0xCC26248B71284B812Ff7825e005560DB01a874C7, "Constants.ETH_L1_STANDARD_BRIDGE__IMPL_V1_ADDR"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_L2_OUTPUT_ORACLE_CHALLENGER"); + vm.label(0x6f3CcC8C9DAf8B9b39aDe481213Ff7A626a42B65, "Constants.ETH_L2_OUTPUT_ORACLE_IMPL_V2"); + vm.label(0xFb90465f3064fF63FC460F01A6307eC73d64bc50, "Constants.ETH_L2_OUTPUT_ORACLE_PROPOSER"); + vm.label(0x66CC916Ed5C6C2FA97014f7D1cD141528Ae171e4, "Constants.ETH_L2_OUTPUT_ORACLE_PROXY"); + vm.label(0xA30ADd78D5be6B2B55C934666bb4fF2C4429d800, "Constants.ETH_L2_OUTPUT_ORACLE__IMPL_V1"); + vm.label(0x11FE3be54aC01C13Dd985cE2BdD10eD77e1376cc, "Constants.ETH_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); + vm.label(0x47Ec03B67ba4f3C71a4320D2947f2173E0B45a23, "Constants.ETH_OPTIMISM_PORTAL_IMPL_V2_ADDR"); + vm.label(0x36cb65c1967A0Fb0EEE11569C51C2f2aA1Ca6f6D, "Constants.ETH_OPTIMISM_PORTAL_PROXY"); + vm.label(0x59B6903044Fa9439a5D621D3605789A6E654b1D6, "Constants.ETH_OPTIMISM_PORTAL__IMPL_V1_ADDR"); + vm.label(0xc88138f5c82DD1bD327708C7F1c15E44Ce7FdA0C, "Constants.ETH_P2P_SEQUENCER_ADDRESS"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_PORTAL_GUARDIAN"); + vm.label(0xeE1d28b0FB299BcE1E164aCc001c15e283082bA2, "Constants.ETH_PROTOCOL_VERSIONS_IMPL_V2"); + vm.label(0x3c7EA1c10Eb783fE86e4eEd202324dCFEEca9043, "Constants.ETH_PROTOCOL_VERSIONS_PROXY"); + vm.label(0x13Fe62cB24aEa5afd179F20D362c056c3881ABcA, "Constants.ETH_PROXY_ADMIN"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_PROXY_ADMIN_OWNER"); + vm.label(0x7a6b7F35D032c9b122C69F01EA4523e028f6ef4A, "Constants.ETH_STORAGE_SETTER"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_SUPERCHAIN_CONFIG_GUARDIAN"); + vm.label(0x0d9C39c64CF8eDA1EdFeBD78AFa895bAA797eFc4, "Constants.ETH_SUPERCHAIN_CONFIG_IMPL_V2"); + vm.label(0x61ca43CB037aC9181d8Fa5CD0073dC314065Ccc4, "Constants.ETH_SUPERCHAIN_CONFIG_PROXY"); + vm.label(0x4D7A1a16d0DA89B50FBd8b524508FC393A6Dc367, "Constants.ETH_SYSTEM_CONFIG_IMPL_V2_ADDR"); + vm.label(0x34a9f273cbD847d49c3De015FC26c3E66825f8b2, "Constants.ETH_SYSTEM_CONFIG_PROXY"); + vm.label(0x22052c592f763CA14a090D9974c5Bf9Fd3a44b8c, "Constants.ETH_SYSTEM_CONFIG__IMPL_V1_ADDR"); + vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_SYSTEM_OWNER_SAFE"); + vm.label(0xE3f4e2b79f1a8bf3b14d9100323Fca24D923f796, "Constants.ETH_BALANCER_FRXETH_BB_A_WETH_GAUGE"); + vm.label(0x636A9d7686bFA0a2ddd93b37A1E33bCdE6C31e8D, "Constants.ETH_CONVEX_FRAXBP_ARBITRUM"); + vm.label(0xba1ED260F9a81088Ecb7602F790a67C773817BDA, "Constants.ETH_CONVEX_FRAX_FXB_20241231_ARBITRUM"); + vm.label(0x2A8499c4a86F7c07e311c73E36575A0Dc2D362C3, "Constants.ETH_CONVEX_FRAX_FXB_20261231_ARBITRUM"); + vm.label(0x5608051D98377419d7D861531728DFB869dDc054, "Constants.ETH_CONVEX_FRXETH_WETH_ARBITRUM"); + vm.label(0x53e78a6e12146565c7d7307d07A3C1ABacf3E20F, "Constants.ETH_CONVEX_HFXB_FRAX_ARBITRUM"); + vm.label(0xE096E62B4b23C46a748828083458e22b014640f3, "Constants.ETH_CONVEX_SQUID_WFRXETH_FRAXTAL"); + vm.label(0x840f20ffED887c61435E81fd1231CB923df39d3d, "Constants.ETH_CONVEX_USD_FRAXBP"); + vm.label(0x127963A74c07f72D862F2Bdc225226c3251BD117, "Constants.ETH_CURVE_VSTFRAX_F"); + vm.label(0x6f82A6551cc351Bc295602C3ea99C78EdACF590C, "Constants.ETH_FLE_FXS_WFRXETH_FRAXTAL"); + vm.label(0x83Dc6775c1B0fc7AaA46680D78B04b4a3d4f5650, "Constants.ETH_FLE_FRAX_FXS_FRAXTAL"); + vm.label(0x3B78BdC7575896701C4e32f9D070AA387fcEB22b, "Constants.ETH_FRAXSWAP_V2_FRAX_FPI_FRAXTAL"); + vm.label(0x99FA1928A9Fea45b8d1395e870a92a0675A10E6E, "Constants.ETH_FRAXSWAP_V2_FRAX_FXS_FRAXTAL"); + vm.label(0x007c874a4240f8C31B4BfE6D91f47b903e2E3BE1, "Constants.ETH_FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL"); + vm.label(0x8Fa7B006538F0710BD5fEfBd5737eBDD8B487166, "Constants.ETH_FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL"); + vm.label(0x0884c9Bb52348fa76d4e1c6Ea042A2EaF0b72c6C, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM"); + vm.label(0x9c9e8E8ccD7dAF6AfAB436829992B3Cf408319B4, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM"); + vm.label(0x11c9C6F9e983bf6E10296A9ce09D4572F664FF25, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON"); + vm.label(0x3e14f6EEDCC5Bc1d0Fc7B20B45eAE7B1F74a6AeC, "Constants.ETH_MSTABLE_FRAX_MUSD"); + vm.label(0x9B8AEd182B8A9430C14e97Bf2C02F129f2b36854, "Constants.ETH_SADDLE_L2D4_ARBITRUM"); + vm.label(0x86c0A521807f43A646978e9f302BAF693350eAa3, "Constants.ETH_SENTIMENT_LFRAX"); + vm.label(0x66fD216bCBeb566EF038A116B7270f241005e186, "Constants.ETH_SNOWBALL_S4D"); + vm.label(0xebF993690F65B23862E10F489656529ac06A27B8, "Constants.ETH_SPIRITSWAP_FRAX_FXS"); + vm.label(0x66635DC1EdEfF19e839f152a67278151Aa6e1B61, "Constants.ETH_AAVE_AMO"); + vm.label(0xcf37B62109b537fa0Cb9A90Af4CA72f6fb85E241, "Constants.ETH_AMO_MINTER"); + vm.label(0x36a0B6a5F7b318A2B4Af75FFFb1b51a5C78dEB8C, "Constants.ETH_AMO_MINTER_OLD"); + vm.label(0x0be27F994E24F8C3E5f6D0C28AbB5732256ee205, "Constants.ETH_BALANCE_CHECKER"); + vm.label(0xD1a7b80a954e56bfd7bd889aF6e2BE8674719F5d, "Constants.ETH_BUNDLE_UTILS"); + vm.label(0x49ee75278820f409ecd67063D8D717B38d66bd71, "Constants.ETH_CONVEX_AMO"); + vm.label(0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A, "Constants.ETH_CONVEX_AMO_ADMIN"); + vm.label(0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139, "Constants.ETH_CRVFRAX_VAULT"); + vm.label(0x72170Cdc48C33a6AE6B3E83CD387ca3Fb9105da2, "Constants.ETH_CURVE_AMO"); + vm.label(0x5840Db064e17480f8e8E74fD6714C9c316f7DdFE, "Constants.ETH_CURVE_AMO_IMPL_V1"); + vm.label(0xbd061885260F176e05699fED9C5a4604fc7F2BDC, "Constants.ETH_CURVE_AMO_V1"); + vm.label(0xD103FEf74D05FbC20B5184FE85c7187735355DB3, "Constants.ETH_CURVE_AMO_V2"); + vm.label(0xf8a4ffe7C980fD50B160b7B86dCd5e9eb7E281a9, "Constants.ETH_CURVE_AMO_V5"); + vm.label(0x900909C07c2761d84C5d863FF5905102916DF69C, "Constants.ETH_CURVE_AMO_ADMIN"); + vm.label(0x70F55767B11c047C8397285E852919F5f6c8DC60, "Constants.ETH_CURVE_METAPOOL_LOCKER"); + vm.label(0xE4BD0461AE7fdc76c61CE286a80c9B55d83B204a, "Constants.ETH_CURVE_METAPOOL_LOCKER_2"); + vm.label(0x847FA1A5337C7f24D7066E467F2e2A0f969Ca79F, "Constants.ETH_CURVE_VOTER_PROXY"); + vm.label(0x7038C406e7e2C9F81571557190d26704bB39B8f3, "Constants.ETH_CVX_LOCKER_AMO"); + vm.label(0x72a19342e8F1838460eBFCCEf09F6585e32db86E, "Constants.ETH_CVX_LOCKER_AMO_V2"); + vm.label(0x00000000219ab540356cBB839Cbe05303d7705Fa, "Constants.ETH_DEPOSIT_CONTRACT_ADDRESS"); + vm.label(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, "Constants.ETH_ETH_ADDRESS"); + vm.label(0x2397321b301B80A1C0911d6f9ED4b6033d43cF51, "Constants.ETH_FPI_CONTROLLER_AMO"); + vm.label(0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC, "Constants.ETH_FRAX3CRV_CURVE_FXS_DISTRIBUTOR"); + vm.label(0x73f9F84B04584227b4f0bafFd8B37D6D0C11a23c, "Constants.ETH_FRAX3CRV_CURVE_REWARDS_DISTRIBUTOR_EOA"); + vm.label(0x44ade9AA409B0C29463fF7fcf07c9d3c939166ce, "Constants.ETH_FRAX_GAUGE_CONTROLLER"); + vm.label(0x3669C421b77340B2979d1A00a792CC2ee0FcE737, "Constants.ETH_FRAX_GAUGE_CONTROLLER_V2"); + vm.label(0x278dC748edA1d8eFEf1aDFB518542612b49Fcd34, "Constants.ETH_FRAX_GAUGE_REWARDS_DISTRIBUTOR"); + vm.label(0x48D9A9e67e9deCfD493efE2B3D3B5291fc802e5F, "Constants.ETH_FRAX_GAUGE_NOOP_REWARDS_DISTRIBUTOR"); + vm.label(0x72E158d38dbd50A483501c24f792bDAAA3e7D55C, "Constants.ETH_FRAX_GAUGE_V2"); + vm.label(0x0Ed8fA7FC63A8eb5487E7F87CAF1aB3914eA4eCa, "Constants.ETH_FRAXLEND_AMO"); + vm.label(0xf6E697e95D4008f81044337A749ECF4d15C30Ea6, "Constants.ETH_FRAXLEND_AMO_V3"); + vm.label(0xbAFA44EFE7901E04E39Dad13167D089C559c1138, "Constants.ETH_FRXETH_MINTER"); + vm.label(0x9C6a04871D11b33645ab592f68C41bb2B41F51EE, "Constants.ETH_FXS_1559_AMO"); + vm.label(0xC80C48862E4254F37047235298eDb6AA35717C24, "Constants.ETH_FXS_1559_AMO_V2"); + vm.label(0xCaa487D113ad1C34Ce128c4f3a2A437614C6a692, "Constants.ETH_FXS_1559_AMO_V2_ADMIN"); + vm.label(0xCDe9A4e885B87a893b8817D136FD2F404B54294f, "Constants.ETH_FXS_1559_AMO_V2_IMPL_V1"); + vm.label(0xb524622901b3f7b5DeA6501E9830700C847C7DC5, "Constants.ETH_FXS_1559_AMO_V3"); + vm.label(0xB8315Af919729c823B2d996B1A6DDE381E7444f1, "Constants.ETH_INVESTOR_AMO"); + vm.label(0xEE5825d5185a1D512706f9068E69146A54B6e076, "Constants.ETH_INVESTOR_AMO_V1"); + vm.label(0x069c24600c2A03147D4E1D9b04d193151676F577, "Constants.ETH_INVESTOR_AMO_ADMIN"); + vm.label(0xdE3C8aA7f53a69c595b7720045000A68Cb9CB341, "Constants.ETH_INVESTOR_AMO_IMPL_V1"); + vm.label(0x9507189f5B6D820cd93d970d67893006968825ef, "Constants.ETH_LENDING_AMO"); + vm.label(0xEc8672dd770D59FaD9a811591a5Edd40e8F6A413, "Constants.ETH_MANUAL_TOKEN_TRACKER_AMO"); + vm.label(0x239c957d42343B3d91FABc7c16E7F1e30Bc32E5B, "Constants.ETH_MIGRATION_BUNDLE_UTILS"); + vm.label(0xe16723A08Ae054a8F20BDc0395389569011e78D6, "Constants.ETH_MIGRATION_HELPER"); + vm.label(0x31183a2CCe8d1BFBBFE140Ea1A1264A454Fc821E, "Constants.ETH_MIM_CONVEX_AMO"); + vm.label(0xE054C1ab5D548E0144ab3F89a8f5809137819906, "Constants.ETH_MINT_UTILITIES"); + vm.label(0x977eaDb6fa9b8E1a2A950CcDE1A75a7b527a8cBB, "Constants.ETH_MSIG_HELPER"); + vm.label(0x1EA632b997B7c7068ac48aDe8040652a8AF9FbbB, "Constants.ETH_MULTICALL_OZ_DELEGATECALL"); + vm.label(0xFa27873EA2F0eA9DcD2052848C4A7F8ADE8a3936, "Constants.ETH_MULTISIG"); + vm.label(0x5699d20732a2EFa9A895EF04bb210aa751C4dB96, "Constants.ETH_OHM_AMO"); + vm.label(0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A, "Constants.ETH_OHM_AMO_ADMIN"); + vm.label(0x96665d63c1B53f8335e3c9287Ee255f306C93c45, "Constants.ETH_RARI_AMO"); + vm.label(0xB12C76b92936d136Fd8264F6EFcBb06458338D97, "Constants.ETH_RAGEQUITTER_TEMPLE"); + vm.label(0x375278D3C65f29C1A90E8550888f1439cFeFe465, "Constants.ETH_STAKEDAO_AMO"); + vm.label(0xE4de6E1DF1FE135D6462554d0Fd36A14d787f689, "Constants.ETH_STAKING_UTILITIES"); + vm.label(0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA, "Constants.ETH_TIMELOCK"); + vm.label(0x4e710B33c87CEDF832Cd82E11d743A011864f733, "Constants.ETH_TOKEMAK_AMO"); + vm.label(0x3F702a8F6c9f9F7ABdfEA67f89d33F18e0368600, "Constants.ETH_TOKEN_TRACKER_AMO"); + vm.label(0x37336AD1F3A145C710247E6a14C9AcC7f34D09eE, "Constants.ETH_TOKEN_TRACKER_V2"); + vm.label(0x11Fc7df1fb0E51f9c9AB8f575d9bbaDC92FA425B, "Constants.ETH_TWAMM_AMO"); + vm.label(0x629C473e0E698FD101496E5fbDA4bcB58DA78dC4, "Constants.ETH_TWAMM_AMO_V2"); + vm.label(0x7b50137E8996A1717a6D97a0527e4c5D2D133405, "Constants.ETH_UNIV2_TO_UNIV3_MIGRATOR_ADDRESS"); + vm.label(0x3814307b86b54b1d8e7B2Ac34662De9125F8f4E6, "Constants.ETH_UNIV3_LIQUIDITY_AMO"); + vm.label(0xc91Bb4b0696e3b48c0C501B4ce8E7244Fc363A79, "Constants.ETH_UNIV3_LIQUIDITY_AMO_V2"); + vm.label(0x53c13BA8834a1567474b19822aAD85c6F90D9f9F, "Constants.ETH_VEFXS_SMART_WALLET_CHECKER"); + vm.label(0x19a0a70a68fbC604Bf20A03b787df8f7AC1d50f0, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR"); + vm.label(0x62C4cf364078C98fA08AfDB4D3d8D87e780Ebd45, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR_V2"); + vm.label(0xed2647Bbf875b2936AAF95a3F5bbc82819e3d3FE, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR_V3"); + vm.label(0xc6764e58b36e26b08Fd1d2AeD4538c02171fA872, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR_V4"); + vm.label(0xE6D31C144BA99Af564bE7E81261f7bD951b802F6, "Constants.ETH_VEFPIS_YIELD_DISTRIBUTOR_V4"); + vm.label(0x81903F6f9675f7b500eAFE20681bD2D7BAb7C71b, "Constants.ETH_VEFPIS_SMART_WALLET_CHECKER"); + vm.label(0x8971946467a77b798762823434c0f407d20F9df9, "Constants.ETH_YIELDSPACE_AMO"); + vm.label(0x874a873e4891fB760EdFDae0D26cA2c00922C404, "Constants.ETH_ADVISORS_MULTISIG"); + vm.label(0x733371d7C15ACECF9e120dd037D6BcDb6E069148, "Constants.ETH_BEE_USER"); + vm.label(0x63278bF9AcdFC9fA65CFa2940b89A34ADfbCb4A1, "Constants.ETH_COMMUNITY_MULTISIG"); + vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_COMPTROLLER"); + vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_COMPTROLLER_MULTISIG"); + vm.label(0x8D8Cb63BcB8AD89Aa750B9f80Aa8Fa4CfBcC8E0C, "Constants.ETH_CURVEAMO_OPERATOR_ADDRESS"); + vm.label(0x6A7efa964Cf6D9Ab3BC3c47eBdDB853A8853C502, "Constants.ETH_FPI_COMPTROLLER_MULTISIG"); + vm.label(0x708695db8dF61e646571E78b9b3e2BAd7D6c42E3, "Constants.ETH_FPI_CORE_CONTRIBUTORS_TEAM_MULTISIG"); + vm.label(0x5181C3c36bD52F783e6E1771d80b1e3AdCB36019, "Constants.ETH_FPI_TREASURY_MULTISIG"); + vm.label(0x168200cF227D4543302686124ac28aE0eaf2cA0B, "Constants.ETH_FRAXLEND_MAIN_MULTISIG"); + vm.label(0xa4EC124e09D6D1A092c6BD16aFac9CD83f73E3c3, "Constants.ETH_FRAXLEND_OPERATOR_MULTISIG"); + vm.label(0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c, "Constants.ETH_FRAXLEND_CIRCUIT_BREAKER_MULTISIG"); + vm.label(0x8306300ffd616049FD7e4b0354a64Da835c1A81C, "Constants.ETH_FRXETH_COMPTROLLER"); + vm.label(0x8306300ffd616049FD7e4b0354a64Da835c1A81C, "Constants.ETH_FRXETH_OWNER"); + vm.label(0x831822660572bd54ebaa065C2acef662a6277D40, "Constants.ETH_FXB_MULTISIG"); + vm.label(0xa95f86fE0409030136D6b82491822B3D70F890b3, "Constants.ETH_INVESTORS_MULTISIG"); + vm.label(0x8D4392F55bC76A046E443eb3bab99887F4366BB0, "Constants.ETH_TEAM_MULTISIG"); + vm.label(0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA, "Constants.ETH_TIMELOCK_ADDRESS"); + vm.label(0x9AA7Db8E488eE3ffCC9CdFD4f2EaECC8ABeDCB48, "Constants.ETH_TREASURY_MULTISIG"); + vm.label(0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503, "Constants.ETH_WALLET_WITH_CRVFRAX"); + vm.label(0xD6216fC19DB775Df9774a6E33526131dA7D19a2c, "Constants.ETH_WALLET_WITH_USDC"); + vm.label(0x8EB8a3b98659Cce290402893d0123abb75E3ab28, "Constants.ETH_WALLET_WITH_WETH"); + vm.label(0xd4937682df3C8aEF4FE912A96A74121C0829E664, "Constants.ETH_AFRAX"); + vm.label(0x22e859Ee894c2068920858A60b51DC03ac5581c1, "Constants.ETH_AGEURFRAXBP"); + vm.label(0x58257e4291F95165184b4beA7793a1d6F8e7b627, "Constants.ETH_AGEURFRAXBP_POOL"); + vm.label(0xf985005a3793DbA4cCe241B3C19ddcd3Fe069ff4, "Constants.ETH_ALCXFRAXBP"); + vm.label(0x4149d1038575CE235E03E03B39487a80FD709D31, "Constants.ETH_ALCXFRAXBP_POOL"); + vm.label(0x97Ba76a574bC5709b944bB1887691301c72337Ca, "Constants.ETH_ALETHFRXETH"); + vm.label(0x97Ba76a574bC5709b944bB1887691301c72337Ca, "Constants.ETH_ALETHFRXETH_POOL"); + vm.label(0xB30dA2376F63De30b42dC055C93fa474F31330A5, "Constants.ETH_ALUSDFRAXBP"); + vm.label(0xB30dA2376F63De30b42dC055C93fa474F31330A5, "Constants.ETH_ALUSDFRAXBP_POOL"); + vm.label(0xa8e14F03124Ea156A4fc416537c82ff91a647D50, "Constants.ETH_ANKRETHFRXETH"); + vm.label(0x41eA4045de2676727883aa0B4E43D7e32261f559, "Constants.ETH_ANKRETHFRXETH_POOL"); + vm.label(0x04b727C7e246CA70d496ecF52E6b6280f3c8077D, "Constants.ETH_APEUSDFRAXBP"); + vm.label(0x04b727C7e246CA70d496ecF52E6b6280f3c8077D, "Constants.ETH_APEUSDFRAXBP_POOL"); + vm.label(0xBcca60bB61934080951369a648Fb03DF4F96263C, "Constants.ETH_AUSDC"); + vm.label(0x09b2E090531228d1b8E3d948C73b990Cb6e60720, "Constants.ETH_BADGERFRAXBP"); + vm.label(0x13B876C26Ad6d21cb87AE459EaF6d7A1b788A113, "Constants.ETH_BADGERFRAXBP_POOL"); + vm.label(0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190, "Constants.ETH_BUSDFRAXBP"); + vm.label(0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190, "Constants.ETH_BUSDFRAXBP_POOL"); + vm.label(0xe65cdB6479BaC1e22340E4E755fAE7E509EcD06c, "Constants.ETH_CAAVE"); + vm.label(0x548E063CE6F3BaC31457E4f5b4e2345286274257, "Constants.ETH_CBETHFRXETH"); + vm.label(0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D, "Constants.ETH_CBETHFRXETH_POOL"); + vm.label(0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C, "Constants.ETH_CLEVUSDFRAXBP"); + vm.label(0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C, "Constants.ETH_CLEVUSDFRAXBP_POOL"); + vm.label(0xb85010193FD15aF8390dbD62790Da70F46c1126B, "Constants.ETH_COILFRAXBP"); + vm.label(0xAF4264916B467e2c9C8aCF07Acc22b9EDdDaDF33, "Constants.ETH_COILFRAXBP_POOL"); + vm.label(0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC, "Constants.ETH_CRVFRAX"); + vm.label(0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503, "Constants.ETH_CRVFRAX_GAUGE"); + vm.label(0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974, "Constants.ETH_CRVFRXETH"); + vm.label(0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a, "Constants.ETH_CRVFRXETH_POOL"); + vm.label(0x0CD6f267b2086bea681E922E19D40512511BE538, "Constants.ETH_CRVUSDFRAX"); + vm.label(0x96424E6b5eaafe0c3B36CA82068d574D44BE4e3c, "Constants.ETH_CRVUSDFRAX_GAUGE"); + vm.label(0x0CD6f267b2086bea681E922E19D40512511BE538, "Constants.ETH_CRVUSDFRAX_POOL"); + vm.label(0x4e0915C88bC70750D68C481540F081fEFaF22273, "Constants.ETH_CURVE4POOL"); + vm.label(0x39AA39c021dfbaE8faC545936693aC917d5E7563, "Constants.ETH_CUSDC"); + vm.label(0x421E13b4e805993A0d50aD8c6c47A4F693f04424, "Constants.ETH_CVGFRAXBP"); + vm.label(0x8A111B47B31bBa40C2F0D2f9a8Cf6B6C4B50114E, "Constants.ETH_CVGFRAXBP_GAUGE"); + vm.label(0xa7B0E924c2dBB9B4F576CCE96ac80657E42c3e42, "Constants.ETH_CVGFRAXBP_POOL"); + vm.label(0x9e187393cBc76c8Bf8e8a06bD7737a7cabe9d66C, "Constants.ETH_CVXAGEURFRAXBP"); + vm.label(0x17962aB30c7F291b125A0A38d0ad220ab22F8a5B, "Constants.ETH_CVXAGEURFRAXBP_REWARDER"); + vm.label(0xCf9fC20189755354edDdED66C9ED9DFADAFd7a2E, "Constants.ETH_CVXALCXFRAXBP"); + vm.label(0xC10fD95fd3B56535668426B2c8681AD1E15Be608, "Constants.ETH_CVXALCXFRAXBP_REWARDER"); + vm.label(0x5BcAfc77f19F72bCf1420cC1722c3e06E16Ec29a, "Constants.ETH_CVXALUSDFRAXBP"); + vm.label(0x26598e3E511ADFadefD70ab2C3475Ff741741104, "Constants.ETH_CVXALUSDFRAXBP_REWARDER"); + vm.label(0x04b727C7e246CA70d496ecF52E6b6280f3c8077D, "Constants.ETH_CVXAPEUSDFRAXBP"); + vm.label(0x51e6B84968D56a1E5BC93Ee264e95b1Ea577339c, "Constants.ETH_CVXAPEUSDFRAXBP_REWARDER"); + vm.label(0x25f0b7c3A7A43b409634a5759526560cC3313d75, "Constants.ETH_CVXBADGERFRAXBP"); + vm.label(0xe0705A91984b076C250d410A41f615380aF1C2ed, "Constants.ETH_CVXBADGERFRAXBP_REWARDER"); + vm.label(0xf203A94e59d071062a0dd31f396bCb19a38809A4, "Constants.ETH_CVXBUSDFRAXBP"); + vm.label(0x9e6Daf019767D5cEAdE416ce77E8d187b5B254F3, "Constants.ETH_CVXBUSDFRAXBP_REWARDER"); + vm.label(0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C, "Constants.ETH_CVXCLEVUSDFRAXBP"); + vm.label(0x710e85B2793b3AE88Cb1Da3cb25b3d62D810d180, "Constants.ETH_CVXCLEVUSDFRAXBP_REWARDER"); + vm.label(0x624cEFdBe30507EEAc71882C9e42Ca0900D5B6a1, "Constants.ETH_CVXCOILFRAXBP"); + vm.label(0xAE0b6b66378C7DEFc0514D7cBc6E4e92Cf56b0af, "Constants.ETH_CVXCOILFRAXBP_REWARDER"); + vm.label(0x117A0bab81F25e60900787d98061cCFae023560c, "Constants.ETH_CVXCRVFRAX"); + vm.label(0x527331F3F550f6f85ACFEcAB9Cc0889180C6f1d5, "Constants.ETH_CVXCRVFRAXBP"); + vm.label(0x31c325A01861c7dBd331a9270296a31296D797A0, "Constants.ETH_CVXCRVFRAXBP_POOL"); + vm.label(0x7e880867363A7e321f5d260Cade2B0Bb2F717B02, "Constants.ETH_CVXCRVFRAX_REWARDER"); + vm.label(0x01CcDe1dFb6c84e1Cc13a6Bf777aa2160ABd11BA, "Constants.ETH_CVXCRVUSDFRAX"); + vm.label(0x3CfB4B26dc96B124D15A6f360503d028cF2a3c00, "Constants.ETH_CVXCRVUSDFRAX_REWARDER"); + vm.label(0x3Fe65692bfCD0e6CF84cB1E7d24108E434A7587e, "Constants.ETH_CVXCRV_REWARDER"); + vm.label(0x3cB8E5cac768D6Dd3E7683dBC78E255aae66EDBB, "Constants.ETH_CVXCVGFRAXBP"); + vm.label(0x0736b746F53826A1eEC888a05EBF592AF68946Db, "Constants.ETH_CVXCVGFRAXBP_REWARDER"); + vm.label(0x2aE739F40Cda5F053F9dbecE7E177Fcbdc4A07D9, "Constants.ETH_CVXCVXCRVFRAXBP"); + vm.label(0xdEbc7B51043b4D0dd4f3310C68A12382b8843ceE, "Constants.ETH_CVXCVXCRVFRAXBP_REWARDER"); + vm.label(0x123dC033d6fF314211F7953eD31bC805f85C13d5, "Constants.ETH_CVXCVXFRAXBP"); + vm.label(0xf02B3A77b1e7775de10294d78a4c3d77772B484A, "Constants.ETH_CVXCVXFRAXBP_REWARDER"); + vm.label(0xDad9DB2c7c96a1496493E6D48d131a2667f284f9, "Constants.ETH_CVXCVXFXSFRAXBP"); + vm.label(0x19eA715F854dB2196C6f45A174541a5Ac884D2f9, "Constants.ETH_CVXCVXFXSFRAXBP_REWARDER"); + vm.label(0xf7eCC27CC9DB5d28110AF2d89b176A6623c7E351, "Constants.ETH_CVXDOLAFRAXBP"); + vm.label(0x0404d05F3992347d2f0dC3a97bdd147D77C85c1c, "Constants.ETH_CVXDOLAFRAXBP_REWARDER"); + vm.label(0x430bE19e180fd8c2199eC5FAEabE2F5CDba68C94, "Constants.ETH_CVXDOLAFRAXPYUSD"); + vm.label(0xE8cBdBFD4A1D776AB1146B63ABD1718b2F92a823, "Constants.ETH_CVXDOLAFRAXPYUSD_REWARDER"); + vm.label(0x8e074d44aaBC1b3b4406fE03Da7ceF787ea85938, "Constants.ETH_CVXEUSDFRAXBP"); + vm.label(0xB468dB2E478885B87D7ce0C8DA1D4373A756C138, "Constants.ETH_CVXEUSDFRAXBP_REWARDER"); + vm.label(0x28ebAb5Ecbc3efB4116205c2D3237d8b16976B06, "Constants.ETH_CVXFPIFRAX_F"); + vm.label(0x7F17A6C77C3938D235b014818092eb6305BdA110, "Constants.ETH_CVXFRAXBP"); + vm.label(0xBEc570d92AFB7fFc553bdD9d4B4638121000b10D, "Constants.ETH_CVXFRAXBP_POOL"); + vm.label(0xBA927A88eb7B7902ffC5cd99b94fA2964d1a1E03, "Constants.ETH_CVXFRAXFPI_NG"); + vm.label(0x062450B06EB92F1C4E227C41c987ed97c93Ae232, "Constants.ETH_CVXFRAXFPI_NG_REWARDER"); + vm.label(0x5A82ae31C1a36833B9E148d01E967c1b05eDb346, "Constants.ETH_CVXFRAXFXB_20240630"); + vm.label(0x830a71574E3c8AE9da477cE1B7F12849E9f7c8c8, "Constants.ETH_CVXFRAXFXB_20240630_REWARDER"); + vm.label(0x06382622D0FafB372dA64b765EAd3d082a8BCabB, "Constants.ETH_CVXFRAXFXB_20241231"); + vm.label(0x249cE0b1a682AD7b02e43271f9f0C9ac85Ec47e8, "Constants.ETH_CVXFRAXFXB_20241231_REWARDER"); + vm.label(0x7Ce2F444D0B034f44EeA4FE77608f0c680966D20, "Constants.ETH_CVXFRAXFXB_20261231"); + vm.label(0xC9F6D73fD06b8EEB0A4E87cAd407219E10F31712, "Constants.ETH_CVXFRAXFXB_20261231_REWARDER"); + vm.label(0x839CF70a09f1CB104b4eb0B48E26B855A0F7e855, "Constants.ETH_CVXFRAXPYUSD"); + vm.label(0xB10a6e39Ed8a66fEd3aAef3866a95611a49B9a95, "Constants.ETH_CVXFRAXPYUSD_REWARDER"); + vm.label(0xAb4feFd9cabC03D935cAD345b7626C3180238fb3, "Constants.ETH_CVXFRAXSDAI"); + vm.label(0xE627082369689b2B86D948c377A4aE4e739C59eE, "Constants.ETH_CVXFRAXSDAI_REWARDER"); + vm.label(0x29c22337E3ce362Ce4ad8ecc9CE11fE5A08DBA3c, "Constants.ETH_CVXFRAXUSDP"); + vm.label(0x6991C1CD588c4e6f6f1de3A0bac5B8BbAb7aAF6d, "Constants.ETH_CVXFRAXUSDP_REWARDER"); + vm.label(0xBb2568deeb365b8B89ef7F9B53E86B34cd5D0490, "Constants.ETH_CVXFRXETH"); + vm.label(0x112E8f4b685475CcEd5C38142Cd7A2aE41ef6737, "Constants.ETH_CVXFRXETHALETH"); + vm.label(0xe0DbbCF08A5465db7c7401C86cce89030e11aB67, "Constants.ETH_CVXFRXETHALETH_REWARDER"); + vm.label(0xc18695D5824C49cF50E054953B3A5910c45597A0, "Constants.ETH_CVXFRXETHANKRETH"); + vm.label(0xc18695D5824C49cF50E054953B3A5910c45597A0, "Constants.ETH_CVXFRXETHANKRETH_REWARDER"); + vm.label(0x39E1Ea9CB87a352CfFd43e0b19D573d12cf110CC, "Constants.ETH_CVXFRXETHCBETH"); + vm.label(0x0080d49D4a4921dF0F3853c5e4533462A51fbb29, "Constants.ETH_CVXFRXETHCBETH_REWARDER"); + vm.label(0x41603dA2DD26E6fe29CAe074fC6772053A39C2A9, "Constants.ETH_CVXFRXETHCRV"); + vm.label(0xd5dC65ec6948845C1C428fb60BE38FE59B50BD13, "Constants.ETH_CVXFRXETHCRV_REWARDER"); + vm.label(0xAc4b1295F9Aeb1DB29acB37902bE349a79a66403, "Constants.ETH_CVXFRXETHCVX"); + vm.label(0xA064C1EeEbECD1DF41432f4B7264F508F005aF0C, "Constants.ETH_CVXFRXETHCVX_REWARDER"); + vm.label(0xC07e540DbFecCF7431EA2478Eb28A03918c1C30E, "Constants.ETH_CVXFRXETHETH"); + vm.label(0xbD5445402B0a287cbC77cb67B2a52e2FC635dce4, "Constants.ETH_CVXFRXETHETH_REWARDER"); + vm.label(0x29889a5fE8e467da8af697C5f1eB901F4911Ab50, "Constants.ETH_CVXFRXETHMSETH"); + vm.label(0x15507737f44446EB0A86147E2C72Aa6A111A64B2, "Constants.ETH_CVXFRXETHMSETH_REWARDER"); + vm.label(0x1941da8D12A6B39B76bd54c865c8cD3a4553E9C3, "Constants.ETH_CVXFRXETHPETH"); + vm.label(0x42aaC689261723d06d2a8f356448bd8249f831Bc, "Constants.ETH_CVXFRXETHPETH_REWARDER"); + vm.label(0xDE183818eb02AfEa367C1AAFF1BFdeDecE6B2B05, "Constants.ETH_CVXFRXETHPXETH"); + vm.label(0x72b99E2cf3f9A2bbDA1Cc76894E4554d7aA8FE2E, "Constants.ETH_CVXFRXETHPXETH_REWARDER"); + vm.label(0xeEC515BE690BF445c8C4d1625FD82FA75Bc38bf6, "Constants.ETH_CVXFRXETHRETH"); + vm.label(0x84754821b5484A69DB3164eF4eDC5A5657318039, "Constants.ETH_CVXFRXETHRETH_REWARDER"); + vm.label(0x02a2206268b49A9b3ee5DD51577E5bDa0072d5F1, "Constants.ETH_CVXFRXETHRETH_STAFI"); + vm.label(0xf011aD8E91D1dc8625e5548755AEa1F6Fff81089, "Constants.ETH_CVXFRXETHRETH_STAFI_REWARDER"); + vm.label(0xf67FEC3D0A32418813bE2BcdD78e058BCFa33AE8, "Constants.ETH_CVXFRXETHSETH"); + vm.label(0x55cdF6c7E6d04b83835E4702ed395D0263237DA2, "Constants.ETH_CVXFRXETHSETH_REWARDER"); + vm.label(0x01492A2cB0Bd14034710475197B4169501B49Ead, "Constants.ETH_CVXFRXETHSTETH"); + vm.label(0xC3D0B8170E105d6476fE407934492930CAc3BDAC, "Constants.ETH_CVXFRXETHSTETH_REWARDER"); + vm.label(0xAA71e0065A29F2529aBC0F615874009287966229, "Constants.ETH_CVXFRXETHWETH"); + vm.label(0xFafDE12dC476C4913e29F47B4747860C148c5E4f, "Constants.ETH_CVXFRXETHWETH_REWARDER"); + vm.label(0x52EdB08ab81e4Cc32cf318aed17dB11c09C3E8B9, "Constants.ETH_CVXFRXETHZETH"); + vm.label(0x98B662443695f7328F6A7fDe9894CC0E88630269, "Constants.ETH_CVXFRXETHZETH_REWARDER"); + vm.label(0xCB5d9126402cC17eF47b81BD48B43D52bF474Cd4, "Constants.ETH_CVXFRXETHZUNETH"); + vm.label(0x756d67A10974Fa0e0cE63F82AF4E7ef0d46d452D, "Constants.ETH_CVXFRXETHZUNETH_REWARDER"); + vm.label(0x6E855d08f2984516c40C4246A385bA4A2eDFcd0A, "Constants.ETH_CVXFRXETH_POOL"); + vm.label(0xF57ccaD8122B898A147Cc8601B1ECA88B1662c7E, "Constants.ETH_CVXFXSFRAXBP"); + vm.label(0x21d158d95C2e150e144c36FC64E3653B8D6c6267, "Constants.ETH_CVXFXSFRAXBP_POOL"); + vm.label(0x6CceedbC3551B619da21e552623Dc7C64Ae15168, "Constants.ETH_CVXGRAIFRAXBP"); + vm.label(0xC4581E043F676b95Eb1430474C69f3559a758086, "Constants.ETH_CVXGRAIFRAXBP_REWARDER"); + vm.label(0x15c2471ef46Fa721990730cfa526BcFb45574576, "Constants.ETH_CVXGUSD3CRV_FREE"); + vm.label(0xfbd79471A12929De8379a6CbaF320E150f139ac4, "Constants.ETH_CVXGUSDFRAXBP"); + vm.label(0x47809eE386D1dEC29c0b13f21ba30F564517538B, "Constants.ETH_CVXGUSDFRAXBP_REWARDER"); + vm.label(0xE8a371b5D32344033589A2F0a2712dBD12130b18, "Constants.ETH_CVXLUSDFRAXBP"); + vm.label(0x053e1dad223A206e6BCa24C77786bb69a10e427d, "Constants.ETH_CVXLUSDFRAXBP_REWARDER"); + vm.label(0xe79914274Ea1332222793d7ba931647531E10a5b, "Constants.ETH_CVXMAIFRAXBP"); + vm.label(0xD3C412C3cEdbEC604425B23DCd79Aa1ac810622f, "Constants.ETH_CVXMAIFRAXBP_REWARDER"); + vm.label(0x187601595F6D5746566BC0361a48d13066F11C71, "Constants.ETH_CVXMKUSDFRAXBP"); + vm.label(0x35FbE5520E70768DCD6E3215Ed54E14CBccA10D2, "Constants.ETH_CVXMKUSDFRAXBP_REWARDER"); + vm.label(0xc3b19502F8c02be75F3f77fd673503520DEB51dD, "Constants.ETH_CVXMSUSDFRAXBP"); + vm.label(0xF189A4a1E845Fd62944F93De497409798523B397, "Constants.ETH_CVXMSUSDFRAXBP_REWARDER"); + vm.label(0x5271045F7B73c17825A7A7aee6917eE46b0B7520, "Constants.ETH_CVXOHMFRAXBP"); + vm.label(0x27A8c58e3DE84280826d615D80ddb33930383fE9, "Constants.ETH_CVXOHMFRAXBP_REWARDER"); + vm.label(0xB17255D92892F1322d023befddaB85f172E36f67, "Constants.ETH_CVXPUSDFRAXBP"); + vm.label(0x6d096C99Cc2Ea52490355311b73D86365Acf087f, "Constants.ETH_CVXPUSDFRAXBP_REWARDER"); + vm.label(0x022600684e9492dA82f0da11Bf039c11109d0935, "Constants.ETH_CVXRSRFRAXBP"); + vm.label(0x28441fb9b8b026487A6174Ff39Be015810611C0F, "Constants.ETH_CVXRSRFRAXBP_REWARDER"); + vm.label(0x95B051E97957f1D48C622Bf73225E3d4c2B189fb, "Constants.ETH_CVXSDTFRAXBP"); + vm.label(0xc3df9cC2B8FFdB801E8e6E8FF9C1245E2dEcdA98, "Constants.ETH_CVXSDTFRAXBP_REWARDER"); + vm.label(0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8, "Constants.ETH_CVXSTGFRAXBP"); + vm.label(0xAa57A289Bb22a1A0C583db306F6566AE2c0CAf21, "Constants.ETH_CVXSTGFRAXBP_REWARDER"); + vm.label(0x8E2A6e9390CbD4C3895D07E4Cb171C0527990dF6, "Constants.ETH_CVXSUSDFRAXBP"); + vm.label(0x3fABBDfe05487De1720a9420fE2e16d2c3e79A9D, "Constants.ETH_CVXSUSDFRAXBP_REWARDER"); + vm.label(0x1fb9115929b32D4456C37B80536a2C9434061296, "Constants.ETH_CVXSWETHFRXETH"); + vm.label(0x91362eBf6DbFA5c0FD45CE4cF46DfFd4A8899c7C, "Constants.ETH_CVXSWETHFRXETH_REWARDER"); + vm.label(0xa0821fDc8d62413757B9da2357b0e5371f45335e, "Constants.ETH_CVXTRICRYPTOFRAX"); + vm.label(0x4af50A690062970DAf1d2f0Fa9042C6f5a5495E3, "Constants.ETH_CVXTRICRYPTOFRAX_REWARDER"); + vm.label(0x5C2c6E21e141Dd3D13C34754A20d620A1bb731B5, "Constants.ETH_CVXTRISDT"); + vm.label(0x1f2a117314e6e8655E0A1C97669b7B836e2cDb91, "Constants.ETH_CVXTRISDT_REWARDER"); + vm.label(0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893, "Constants.ETH_CVXTUSDFRAXBP"); + vm.label(0x4a744870fD705971c8c00aC510eAc2206C93d5bb, "Constants.ETH_CVXTUSDFRAXBP_REWARDER"); + vm.label(0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20, "Constants.ETH_CVXUSDDFRAXBP"); + vm.label(0x546cd3B917c1d8A6525b4A312bB0014BE031Eb28, "Constants.ETH_CVXUSDDFRAXBP_REWARDER"); + vm.label(0xe6c0fAA19A7fB6A0a2C01e0BBC1a782b9e4a7B48, "Constants.ETH_CVXUZDFRAXBP"); + vm.label(0x820Fad75512c8C3E57Ad021d016846CEEB5F7105, "Constants.ETH_CVXUZDFRAXBP_REWARDER"); + vm.label(0xEbB0Dd1AfE63813AdD4c38EEbd71CE7354dd9b7e, "Constants.ETH_CVXXAIFRAXBP"); + vm.label(0x4a866fE20A442Dff55FAA010684A5C1379151458, "Constants.ETH_CVXXAIFRAXBP_REWARDER"); + vm.label(0xd48494c36F98BE491f6Cfd6841617e847C819806, "Constants.ETH_CVXZUSDFRAXBP"); + vm.label(0xFd3A7636694259b32B3896f59436997AD25380cA, "Constants.ETH_CVXZUSDFRAXBP_REWARDER"); + vm.label(0xBaaa1F5DbA42C3389bDbc2c9D2dE134F5cD0Dc89, "Constants.ETH_D3POOL"); + vm.label(0xE57180685E3348589E9521aa53Af0BCD497E884d, "Constants.ETH_DOLAFRAXBP"); + vm.label(0xE57180685E3348589E9521aa53Af0BCD497E884d, "Constants.ETH_DOLAFRAXBP_POOL"); + vm.label(0xef484de8C07B6e2d732A92B5F78e81B38f99f95E, "Constants.ETH_DOLAFRAXPYUSD"); + vm.label(0x4B092818708A721cB187dFACF41f440ADb79044D, "Constants.ETH_DOLAFRAXPYUSD_GAUGE"); + vm.label(0xef484de8C07B6e2d732A92B5F78e81B38f99f95E, "Constants.ETH_DOLAFRAXPYUSD_POOL"); + vm.label(0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F, "Constants.ETH_EUSDFRAXBP"); + vm.label(0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F, "Constants.ETH_EUSDFRAXBP_POOL"); + vm.label(0x4704aB1fb693ce163F7c9D3A31b3FF4eaF797714, "Constants.ETH_FPIFRAX_F"); + vm.label(0xf861483fa7E511fbc37487D91B6FAa803aF5d37c, "Constants.ETH_FPIFRAX_F_POOL"); + vm.label(0xd632f22692FaC7611d2AA1C0D552930D43CAEd3B, "Constants.ETH_FRAX3CRV_F"); + vm.label(0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC, "Constants.ETH_FRAXBP"); + vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAXBP_POOL"); + vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI"); + vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI_NG"); + vm.label(0x107E4c1302403095e5A4Bc5e815982aa732e95BD, "Constants.ETH_FRAXFPI_NG_GAUGE"); + vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI_NG_POOL"); + vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI_POOL"); + vm.label(0x4ef4c7519023F30A78647EEab321d6cFabC2513c, "Constants.ETH_FRAXFXB_20240630"); + vm.label(0x35aD1ACf0C4BE5d4Ba11342128D440fDb9e189eb, "Constants.ETH_FRAXFXB_20240630_GAUGE"); + vm.label(0x4ef4c7519023F30A78647EEab321d6cFabC2513c, "Constants.ETH_FRAXFXB_20240630_POOL"); + vm.label(0x6307E6688819951Cf8D6B6066018243D2496952F, "Constants.ETH_FRAXFXB_20241231"); + vm.label(0xC2FE9D3c761994897594Df63B33b6D843Ab7b1cF, "Constants.ETH_FRAXFXB_20241231_GAUGE"); + vm.label(0x6307E6688819951Cf8D6B6066018243D2496952F, "Constants.ETH_FRAXFXB_20241231_POOL"); + vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_FRAXFXB_20261231"); + vm.label(0x0E83dF148F69965BfE752250835854b0dBeeaf01, "Constants.ETH_FRAXFXB_20261231_GAUGE"); + vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_FRAXFXB_20261231_POOL"); + vm.label(0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb, "Constants.ETH_FRAXPYUSD"); + vm.label(0xdc6d319FAc1498125e871ccEdF7f1B9998ebA3C5, "Constants.ETH_FRAXPYUSD_GAUGE"); + vm.label(0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb, "Constants.ETH_FRAXPYUSD_POOL"); + vm.label(0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7, "Constants.ETH_FRAXSDAI"); + vm.label(0xb9BDcDcD7c3C1A3255402D44639cb6c7281833cF, "Constants.ETH_FRAXSDAI_GAUGE"); + vm.label(0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7, "Constants.ETH_FRAXSDAI_POOL"); + vm.label(0xFC2838a17D8e8B1D5456E0a351B0708a09211147, "Constants.ETH_FRAXUSDP"); + vm.label(0xaE34574AC03A15cd58A92DC79De7B1A0800F1CE3, "Constants.ETH_FRAXUSDP_POOL"); + vm.label(0xB657B895B265C38c53FFF00166cF7F6A3C70587d, "Constants.ETH_FRXETHALETH"); + vm.label(0x415F30505368fa1dB82Feea02EB778be04e75907, "Constants.ETH_FRXETHALETH_GAUGE"); + vm.label(0xB657B895B265C38c53FFF00166cF7F6A3C70587d, "Constants.ETH_FRXETHALETH_POOL"); + vm.label(0xa8e14F03124Ea156A4fc416537c82ff91a647D50, "Constants.ETH_FRXETHANKRETH"); + vm.label(0x86f8d7Ced9A8F5563C1198466968B02238E05917, "Constants.ETH_FRXETHANKRETH_GAUGE"); + vm.label(0x41eA4045de2676727883aa0B4E43D7e32261f559, "Constants.ETH_FRXETHANKRETH_POOL"); + vm.label(0x548E063CE6F3BaC31457E4f5b4e2345286274257, "Constants.ETH_FRXETHCBETH"); + vm.label(0xD10C17D82053DD0AB65851a9A93a0abE0C4F4794, "Constants.ETH_FRXETHCBETH_GAUGE"); + vm.label(0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D, "Constants.ETH_FRXETHCBETH_POOL"); + vm.label(0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974, "Constants.ETH_FRXETHCRV"); + vm.label(0x266cE172a1180134cf6C7836C516bd6A58b1f619, "Constants.ETH_FRXETHCRV_GAUGE"); + vm.label(0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a, "Constants.ETH_FRXETHCRV_POOL"); + vm.label(0x6e52cCe4EaFDf77091dD1c82183b2D97b776b397, "Constants.ETH_FRXETHCVX"); + vm.label(0xc2075702490F0426E84E00d8B328119027813AC5, "Constants.ETH_FRXETHCVX_GAUGE"); + vm.label(0x47D5E1679Fe5f0D9f0A657c6715924e33Ce05093, "Constants.ETH_FRXETHCVX_POOL"); + vm.label(0xf43211935C781D5ca1a41d2041F397B8A7366C7A, "Constants.ETH_FRXETHETH"); + vm.label(0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577, "Constants.ETH_FRXETHETH_POOL"); + vm.label(0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A, "Constants.ETH_FRXETHMSETH"); + vm.label(0xB7A3C519889a916C5ecB54101E69ECf11DE60d0b, "Constants.ETH_FRXETHMSETH_GAUGE"); + vm.label(0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A, "Constants.ETH_FRXETHMSETH_POOL"); + vm.label(0x320B564Fb9CF36933eC507a846ce230008631fd3, "Constants.ETH_FRXETHPETH"); + vm.label(0x57e1947e1134F6e733A4a694dE6A163eF23EDf54, "Constants.ETH_FRXETHPETH_GAUGE"); + vm.label(0x320B564Fb9CF36933eC507a846ce230008631fd3, "Constants.ETH_FRXETHPETH_POOL"); + vm.label(0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987, "Constants.ETH_FRXETHPXETH"); + vm.label(0x277d1424a84B35ec0a8108482551b00b4fc1539b, "Constants.ETH_FRXETHPXETH_GAUGE"); + vm.label(0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987, "Constants.ETH_FRXETHPXETH_POOL"); + vm.label(0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1, "Constants.ETH_FRXETHRETH"); + vm.label(0xF20bd4D5A4112d5f9c64aDF53726F3ef1b7d0D61, "Constants.ETH_FRXETHRETH_GAUGE"); + vm.label(0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9, "Constants.ETH_FRXETHRETH_POOL"); + vm.label(0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B, "Constants.ETH_FRXETHRETH_STAFI"); + vm.label(0xb0549599d8446A196541dE11008eF5e79fA14F57, "Constants.ETH_FRXETHRETH_STAFI_GAUGE"); + vm.label(0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B, "Constants.ETH_FRXETHRETH_STAFI_POOL"); + vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_FRXETHSETH"); + vm.label(0x77ef5D544FF6C739E7E10a549f64Dd08055538d1, "Constants.ETH_FRXETHSETH_GAUGE"); + vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_FRXETHSETH_POOL"); + vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_FRXETHSTETH"); + vm.label(0x821529Bb07c83803C9CC7763e5974386e9eFEdC7, "Constants.ETH_FRXETHSTETH_GAUGE"); + vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_FRXETHSTETH_POOL"); + vm.label(0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc, "Constants.ETH_FRXETHWETH"); + vm.label(0x4E21418095d32d15c6e2B96A9910772613A50d50, "Constants.ETH_FRXETHWETH_GAUGE"); + vm.label(0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc, "Constants.ETH_FRXETHWETH_POOL"); + vm.label(0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018, "Constants.ETH_FRXETHZETH"); + vm.label(0xB3627140BEacb97f9CA52b34090352FdAfC77d72, "Constants.ETH_FRXETHZETH_GAUGE"); + vm.label(0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018, "Constants.ETH_FRXETHZETH_POOL"); + vm.label(0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA, "Constants.ETH_FRXETHZUNETH"); + vm.label(0x44f30D79f62a3D5340030d64806cD73239889F07, "Constants.ETH_FRXETHZUNETH_GAUGE"); + vm.label(0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA, "Constants.ETH_FRXETHZUNETH_POOL"); + vm.label(0xFd3300A9a74b3250F1b2AbC12B47611171910b07, "Constants.ETH_FTRIBE_8"); + vm.label(0x6f95d4d251053483f41c8718C30F4F3C404A8cf2, "Constants.ETH_FUSDC_18"); + vm.label(0x970FAA9aFBC5Feb3EC53059BA330DEe71E22B55B, "Constants.ETH_FXSFRXETH"); + vm.label(0x5133Da6Ba0474368Ad0398d953c8D31c1B75b82B, "Constants.ETH_FXSFRXETH_POOL"); + vm.label(0x0ab87046fBb341D058F17CBC4c1133F25a20a52f, "Constants.ETH_GOHM"); + vm.label(0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc, "Constants.ETH_GRAIFRAXBP"); + vm.label(0x8d5AF1F5DD3dC4B73e3A9Af682aDC3641FADE9a5, "Constants.ETH_GRAIFRAXBP_GAUGE"); + vm.label(0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc, "Constants.ETH_GRAIFRAXBP_POOL"); + vm.label(0xD2967f45c4f384DEEa880F807Be904762a3DeA07, "Constants.ETH_GUSD3CRV"); + vm.label(0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93, "Constants.ETH_GUSDFRAXBP"); + vm.label(0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93, "Constants.ETH_GUSDFRAXBP_POOL"); + vm.label(0x497CE58F34605B9944E6b15EcafE6b001206fd25, "Constants.ETH_LUSDFRAXBP"); + vm.label(0x497CE58F34605B9944E6b15EcafE6b001206fd25, "Constants.ETH_LUSDFRAXBP_POOL"); + vm.label(0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9, "Constants.ETH_MAIFRAXBP"); + vm.label(0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9, "Constants.ETH_MAIFRAXBP_POOL"); + vm.label(0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5, "Constants.ETH_MKUSDFRAXBP"); + vm.label(0xF184d80915Ba7d835D941BA70cDdf93DE36517ee, "Constants.ETH_MKUSDFRAXBP_GAUGE"); + vm.label(0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5, "Constants.ETH_MKUSDFRAXBP_POOL"); + vm.label(0xc3b19502F8c02be75F3f77fd673503520DEB51dD, "Constants.ETH_MSUSDFRAXBP"); + vm.label(0xc3b19502F8c02be75F3f77fd673503520DEB51dD, "Constants.ETH_MSUSDFRAXBP_POOL"); + vm.label(0x654590F810f01B51dc7B86915D4632977e49EA33, "Constants.ETH_OGTEMPLE"); + vm.label(0x5271045F7B73c17825A7A7aee6917eE46b0B7520, "Constants.ETH_OHMFRAXBP"); + vm.label(0xFc1e8bf3E81383Ef07Be24c3FD146745719DE48D, "Constants.ETH_OHMFRAXBP_POOL"); + vm.label(0x11EBe21e9d7BF541A18e1E3aC94939018Ce88F0b, "Constants.ETH_PITCHFXS"); + vm.label(0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B, "Constants.ETH_PUSDFRAXBP"); + vm.label(0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B, "Constants.ETH_PUSDFRAXBP_POOL"); + vm.label(0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1, "Constants.ETH_RETHFRXETH"); + vm.label(0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9, "Constants.ETH_RETHFRXETH_POOL"); + vm.label(0x3F436954afb722F5D14D868762a23faB6b0DAbF0, "Constants.ETH_RSRFRAXBP"); + vm.label(0x6a6283aB6e31C2AeC3fA08697A8F806b740660b2, "Constants.ETH_RSRFRAXBP_POOL"); + vm.label(0xd48cF4D7FB0824CC8bAe055dF3092584d0a1726A, "Constants.ETH_SADDLED4"); + vm.label(0xC69DDcd4DFeF25D8a793241834d4cc4b3668EAD6, "Constants.ETH_SADDLED4_POOL"); + vm.label(0x5af15DA84A4a6EDf2d9FA6720De921E1026E37b7, "Constants.ETH_SDFRAX3CRV_F"); + vm.label(0x3cF7b9479a01eeB3bbfC43581fa3bb21cd888e2A, "Constants.ETH_SDL_ALUSDFRAXBP"); + vm.label(0x953693DCB2E9DDC0c1398C1b540b81b63ceA5e16, "Constants.ETH_SDL_ALUSDFRAXBP_GAUGE"); + vm.label(0xFB516cF3710fC6901F2266aAEB8834cF5e4E9558, "Constants.ETH_SDL_ALUSDFRAXBP_POOL"); + vm.label(0x0785aDDf5F7334aDB7ec40cD785EBF39bfD91520, "Constants.ETH_SDL_FRAX3POOL"); + vm.label(0x13Ba45c2B686c6db7C2E28BD3a9E8EDd24B894eD, "Constants.ETH_SDL_FRAX3POOL_GAUGE"); + vm.label(0x8cAEa59f3Bf1F341f89c51607E4919841131e47a, "Constants.ETH_SDL_FRAX3POOL_POOL"); + vm.label(0x927E6f04609A45B107C789aF34BA90Ebbf479f7f, "Constants.ETH_SDL_FRAXBP"); + vm.label(0xB2Ac3382dA625eb41Fc803b57743f941a484e2a6, "Constants.ETH_SDL_FRAXBP_GAUGE"); + vm.label(0x13Cc34Aa8037f722405285AD2C82FE570bfa2bdc, "Constants.ETH_SDL_FRAXBP_POOL"); + vm.label(0x6Ac7a4cB3BFa90DC651CD53EB098e23c88d04e77, "Constants.ETH_SDL_SUSDFRAXBP"); + vm.label(0x104F44551386d603217450822443456229F73aE4, "Constants.ETH_SDL_SUSDFRAXBP_GAUGE"); + vm.label(0x69baA0d7c2e864b74173922Ca069Ac79d3be1556, "Constants.ETH_SDL_SUSDFRAXBP_POOL"); + vm.label(0x486DFCfdbF9025c062110E8c0344a15279aD0a85, "Constants.ETH_SDL_USDTFRAXBP"); + vm.label(0x6EC5DD7D8E396973588f0dEFD79dCA04F844d57C, "Constants.ETH_SDL_USDTFRAXBP_GAUGE"); + vm.label(0xC765Cd3d015626244AD63B5FB63a97c5634643b9, "Constants.ETH_SDL_USDTFRAXBP_POOL"); + vm.label(0xA3beCa25Bd2bDd67272556666A7791d772C36571, "Constants.ETH_SDL_VESPERFRAXEARNPOOLFRAXBP"); + vm.label(0x9980C9b35844946cF3451cC0B43D9b6501F4a96E, "Constants.ETH_SDL_VESPERFRAXEARNPOOLFRAXBP_GAUGE"); + vm.label(0x9AC17f026f0599F77b3513a0A35f0258B0ec77f3, "Constants.ETH_SDL_VESPERFRAXEARNPOOLFRAXBP_POOL"); + vm.label(0x893DA8A02b487FEF2F7e3F35DF49d7625aE549a3, "Constants.ETH_SDTFRAXBP"); + vm.label(0x3e3C6c7db23cdDEF80B694679aaF1bCd9517D0Ae, "Constants.ETH_SDTFRAXBP_POOL"); + vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_SETHFRXETH"); + vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_SETHFRXETH_POOL"); + vm.label(0x04F2694C8fcee23e8Fd0dfEA1d4f5Bb8c352111F, "Constants.ETH_SOHM"); + vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_STETHFRXETH"); + vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_STETHFRXETH_POOL"); + vm.label(0x9de1c3D446237ab9BaFF74127eb4F303802a2683, "Constants.ETH_STGFRAXBP"); + vm.label(0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8, "Constants.ETH_STGFRAXBP_POOL"); + vm.label(0x4da27a545c0c5B758a6BA100e3a049001de870f5, "Constants.ETH_STKAAVE"); + vm.label(0x78b74C93c726B6e29d0Ef5A01764fA19eCCF0C1c, "Constants.ETH_STKCVXAGEURFRAXBP"); + vm.label(0xAF1b82809296E52A42B3452c52e301369Ce20554, "Constants.ETH_STKCVXALCXFRAXBP"); + vm.label(0xBE1C919cA137299715e9c929BC7126Af14f76091, "Constants.ETH_STKCVXALUSDFRAXBP"); + vm.label(0x6a20FC1654A2167d00614332A5aFbB7EBcD9d414, "Constants.ETH_STKCVXAPEUSDFRAXBP"); + vm.label(0xb92e3fD365Fc5E038aa304Afe919FeE158359C88, "Constants.ETH_STKCVXBADGERFRAXBP"); + vm.label(0x20c5177504A3f9Bad59c430791feA853EeAD4CCE, "Constants.ETH_STKCVXBUSDFRAXBP"); + vm.label(0x3199a1ed1Ad4cb1d1b57939809c8ee79eafE9934, "Constants.ETH_STKCVXCLEVUSDFRAXBP"); + vm.label(0xa5B6f8Ec4122c5Fe0dBc4Ead8Bfe66A412aE427C, "Constants.ETH_STKCVXCOILFRAXBP"); + vm.label(0xdA69CeC36AE581C1b2a2EEb77C527Fb7c1331310, "Constants.ETH_STKCVXCOILFRAXBP_DEPRECATED"); + vm.label(0xaa0C3f5F7DFD688C6E646F66CD2a6B66ACdbE434, "Constants.ETH_STKCVXCRV"); + vm.label(0xb6F63cc2066e7626fA47fCC37E78Df9fe89F1663, "Constants.ETH_STKCVXCRVUSDFRAX"); + vm.label(0x7B465174A93a6d0602fD4ea99eEc86C07e5E1568, "Constants.ETH_STKCVXCVGFRAXBP"); + vm.label(0xa103a6ca0C4D4072BA59a55FD453BFE4197A095B, "Constants.ETH_STKCVXCVXCRVFRAXBP"); + vm.label(0x93D1De20eaBB21686CFe716f78F67E51ee578185, "Constants.ETH_STKCVXCVXFRAXBP"); + vm.label(0xA6A8F315b1a8C9B05433d206b8fECfbF0fC96217, "Constants.ETH_STKCVXCVXFXSFRAXBP"); + vm.label(0xF06c8696730cf760619e4fA0eDd0f79ea50531A9, "Constants.ETH_STKCVXDOLAFRAXBP"); + vm.label(0x8aAa49650C4908156efAc3B47e00745a319c806c, "Constants.ETH_STKCVXDOLAFRAXPYUSD"); + vm.label(0x49BF6f9B860fAF73B0b515c06Be1Bcbf4A0db3dF, "Constants.ETH_STKCVXEUSDFRAXBP"); + vm.label(0x7287488F8Df7dddc5f373142D4827aAF92AAC845, "Constants.ETH_STKCVXFPIFRAX"); + vm.label(0x8a53ee42FB458D4897e15cc7dEa3F75D0F1c3475, "Constants.ETH_STKCVXFRAXBP"); + vm.label(0x562E4d6C958333a5f0988FFedA11e45C27722994, "Constants.ETH_STKCVXFRAXFPI_NG"); + vm.label(0x6E804b00fe562707E3a86bBbcC53Eb73c36c0cf6, "Constants.ETH_STKCVXFRAXFXB_20240630"); + vm.label(0xBb16610CF051AAc4bBEF9c53e2fc99b77BCE4A8c, "Constants.ETH_STKCVXFRAXFXB_20241231"); + vm.label(0x8aa015CE081505064a9cB8e7816deE3Bd7a45a12, "Constants.ETH_STKCVXFRAXFXB_20261231"); + vm.label(0x59Ae4E430be0bF47e758F7E022E9a50A8C7D09d6, "Constants.ETH_STKCVXFRAXPYUSD"); + vm.label(0x2EB43dBF8C0013712fEc7B2A57453e41B9907e95, "Constants.ETH_STKCVXFRAXSDAI"); + vm.label(0x5385AE7dC08F5C3799691E5b387cB01108B76627, "Constants.ETH_STKCVXFRAXUSDP"); + vm.label(0x8A59781B415288f9E633b948618726CB6E47e980, "Constants.ETH_STKCVXFRXETHALETH"); + vm.label(0x75A439b3F8106428b86198D8c306c57E9e7Bb3dC, "Constants.ETH_STKCVXFRXETHANKRETH"); + vm.label(0x4e9D8323603E69c1310E5e04Db172bD5aB07df95, "Constants.ETH_STKCVXFRXETHCBETH"); + vm.label(0x194aA54376886dAd3d08e71F47D189A88251D8Da, "Constants.ETH_STKCVXFRXETHCRV"); + vm.label(0x5B31bf2988E5388Edae2960504d96Bc142742dCb, "Constants.ETH_STKCVXFRXETHCVX"); + vm.label(0x4659d5fF63A1E1EDD6D5DD9CC315e063c95947d0, "Constants.ETH_STKCVXFRXETHETH"); + vm.label(0x09bFD0c760E4a1bFc970cdaAAD240307C917Aa6c, "Constants.ETH_STKCVXFRXETHMSETH"); + vm.label(0xeCF134dF5DE1e0E12A441D446ff81994Cb0301A2, "Constants.ETH_STKCVXFRXETHPETH"); + vm.label(0x51521Da84Cbce1B4A930B55d8D896b590532f7A6, "Constants.ETH_STKCVXFRXETHPXETH"); + vm.label(0xE0c65F74728Ff26219C6adddCEfB215484bb08DF, "Constants.ETH_STKCVXFRXETHRETH"); + vm.label(0xffAFA5aA5b0a9C0C8e05ec8b89056F018EE2Bad6, "Constants.ETH_STKCVXFRXETHRETH_STAFI"); + vm.label(0x44b51F7F92D761Cf2FC46011AD6b74Ce56447924, "Constants.ETH_STKCVXFRXETHSETH"); + vm.label(0xc2eC3d1209FD1Fc512950825f34281EaF9aB13A2, "Constants.ETH_STKCVXFRXETHSTETH"); + vm.label(0x08061feC3FC09Aa2Eb4B4B72EA618034CBFD22b0, "Constants.ETH_STKCVXFRXETHWETH"); + vm.label(0xd69068777d1b2dc74522117efA75AA195c0b57DB, "Constants.ETH_STKCVXFRXETHZETH"); + vm.label(0xD893522D2CCd40eA6C1414815e3eAD1B58a83D51, "Constants.ETH_STKCVXFRXETHZUNETH"); + vm.label(0xDf9BB26ba5a05fcFc2637dC763AA4eb735911568, "Constants.ETH_STKCVXGRAIFRAXBP"); + vm.label(0x16e9eaC2A9e29aF3c53d24ed0F07fc403E098b64, "Constants.ETH_STKCVXGUSDFRAXBP"); + vm.label(0x8C402989a966D37B96f60401A6158D5D49f1381D, "Constants.ETH_STKCVXLUSDFRAXBP"); + vm.label(0x787eB52b94c4610ABE2C9C5eE95c3a4a16533344, "Constants.ETH_STKCVXMAIFRAXBP"); + vm.label(0xd529a0FD4249f0b48171140873b1b13a1ad5286d, "Constants.ETH_STKCVXMKUSDFRAXBP"); + vm.label(0x227b7F44468A0EC0FDdfc3FB0cE09b294E62f875, "Constants.ETH_STKCVXMSUSDFRAXBP"); + vm.label(0x81b0dCDa53482A2EA9eb496342dC787643323e95, "Constants.ETH_STKCVXOHMFRAXBP"); + vm.label(0x7AEF5bDC573dCbfb40EC68b0BAAB03abB846C9c6, "Constants.ETH_STKCVXPUSDFRAXBP"); + vm.label(0xF37007f2b9DE656115e1B977Bb1fd38A99B8a2a6, "Constants.ETH_STKCVXRSRFRAXBP"); + vm.label(0xE6Aa75F98e6c105b821a2dba9Fbbd886b421F06b, "Constants.ETH_STKCVXSDTFRAXBP"); + vm.label(0xAe1bA2Cf0eBF00C5052309992d7B6c94e3EfcBEf, "Constants.ETH_STKCVXSTGFRAXBP"); + vm.label(0x9f0C2673a33b7087e367253f196A7E823fBc2341, "Constants.ETH_STKCVXSUSDFRAXBP"); + vm.label(0xa3ae006Cc863423F690ca01C2a8F692B97c93c3b, "Constants.ETH_STKCVXSWETHFRXETH"); + vm.label(0x0643d5C29498149D31bAd69a5bE2771b5440C58d, "Constants.ETH_STKCVXTRICRYPTOFRAX"); + vm.label(0xAD059ccF041e344eA52A3152Bbf654c605d68473, "Constants.ETH_STKCVXTRISDT"); + vm.label(0x32fA492Ac1F729E0eE9eDdfCBacc3ef72B234e27, "Constants.ETH_STKCVXTUSDFRAXBP"); + vm.label(0x507e41A64eB7AE47ee303e3B16237ab757F6C06c, "Constants.ETH_STKCVXUSDDFRAXBP"); + vm.label(0xaa236bd1302755937Aa46D6f3423655BbC654B02, "Constants.ETH_STKCVXUZDFRAXBP"); + vm.label(0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316, "Constants.ETH_STKCVXUZDFRAXBP_DEPRECATED"); + vm.label(0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316, "Constants.ETH_STKCVXUZDFRAXBP_DEPRECATED_OLD"); + vm.label(0x19f0a60f4635d3E2c48647822Eda5332BA094fd3, "Constants.ETH_STKCVXXAIFRAXBP"); + vm.label(0xFD2d7847E0f450d8B00d3D697D720C687E622a7B, "Constants.ETH_STKCVXZUSDFRAXBP"); + vm.label(0x8f2326316eC696F6d023E37A9931c2b2C177a3D7, "Constants.ETH_STKMTA"); + vm.label(0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF, "Constants.ETH_SUSDFRAXBP"); + vm.label(0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF, "Constants.ETH_SUSDFRAXBP_POOL"); + vm.label(0xe49AdDc2D1A131c6b8145F0EBa1C946B7198e0BA, "Constants.ETH_SWETHFRXETH"); + vm.label(0x67e0bDbe0A2C5999A60D048f50e794218056b767, "Constants.ETH_SWETHFRXETH_POOL"); + vm.label(0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2, "Constants.ETH_TFRAX"); + vm.label(0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655, "Constants.ETH_TFXS"); + vm.label(0x6c3F90f043a72FA612cbac8115EE7e52BDe6E490, "Constants.ETH_THREECRV_ERC20"); + vm.label(0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7, "Constants.ETH_THREECRV_POOL"); + vm.label(0x4D1941a887eC788F059b3bfcC8eE1E97b968825B, "Constants.ETH_TRICRYPTOFRAX"); + vm.label(0x4B43fEaB8f5ccD38Ac0831DD7eC797330114F058, "Constants.ETH_TRICRYPTOFRAX_GAUGE"); + vm.label(0x954313005C56b555bdC41B84D6c63B69049d7847, "Constants.ETH_TRISDT"); + vm.label(0x2DD2b7E07dD433B758B98A3889a63cbF48ef0D99, "Constants.ETH_TRISDT_GAUGE"); + vm.label(0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893, "Constants.ETH_TUSDFRAXBP"); + vm.label(0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893, "Constants.ETH_TUSDFRAXBP_POOL"); + vm.label(0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20, "Constants.ETH_USDDFRAXBP"); + vm.label(0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20, "Constants.ETH_USDDFRAXBP_POOL"); + vm.label(0x68934F60758243eafAf4D2cFeD27BF8010bede3a, "Constants.ETH_UZDFRAXBP"); + vm.label(0x68934F60758243eafAf4D2cFeD27BF8010bede3a, "Constants.ETH_UZDFRAXBP_POOL"); + vm.label(0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2, "Constants.ETH_VECRV"); + vm.label(0xD2751CdBED54B87777E805be36670D7aeAe73bb2, "Constants.ETH_VESDL"); + vm.label(0x72a19342e8F1838460eBFCCEf09F6585e32db86E, "Constants.ETH_VLCVX"); + vm.label(0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669, "Constants.ETH_XAIFRAXBP"); + vm.label(0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669, "Constants.ETH_XAIFRAXBP_POOL"); + vm.label(0xaC14864ce5A98aF3248Ffbf549441b04421247D3, "Constants.ETH_XSDT"); + vm.label(0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE, "Constants.ETH_YVUSDC"); + vm.label(0x400d4C984779A747462e88373c3fE369EF9F5b50, "Constants.ETH_ZUSDFRAXBP"); + vm.label(0x218E4678318ab5527e41135713193E5EAd73337f, "Constants.ETH_ZUSDFRAXBP_GAUGE"); + vm.label(0x400d4C984779A747462e88373c3fE369EF9F5b50, "Constants.ETH_ZUSDFRAXBP_POOL"); + vm.label(0x5aB53EE1d50eeF2C1DD3d5402789cd27bB52c1bB, "Constants.ETH_AAVE_ETH_UNI_V3_POOL"); + vm.label(0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF, "Constants.ETH_APE_WETH_UNI_V3_POOL"); + vm.label(0x97e7d56A0408570bA1a7852De36350f7713906ec, "Constants.ETH_FRAX_DAI_V3_POOL"); + vm.label(0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52, "Constants.ETH_FRAX_USDC_V3_POOL"); + vm.label(0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A, "Constants.ETH_FRAX_WETH_UNI_V3_POOL"); + vm.label(0x36C060Cc4b088c830a561E959A679A58205D3F56, "Constants.ETH_FRXETH_FRAX_V3_POOL"); + vm.label(0xa6Cc3C2531FdaA6Ae1A3CA84c2855806728693e8, "Constants.ETH_LINK_ETH_UNI_V3_POOL"); + vm.label(0xe8c6c9227491C0a8156A0106A0204d881BB7E531, "Constants.ETH_MKR_ETH_UNI_V3_POOL"); + vm.label(0xB210CE856631EeEB767eFa666EC7C1C57738d438, "Constants.ETH_STATIC_UNI_V3_ORACLE"); + vm.label(0x1d42064Fc4Beb5F8aAF85F4617AE8b3b5B8Bd801, "Constants.ETH_UNI_ETH_UNI_V3_POOL"); + vm.label(0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640, "Constants.ETH_USDC_WETH_UNI_V3_POOL"); + vm.label(0x5F1dddbf348aC2fbe22a163e30F99F9ECE3DD50a, "Constants.ETH_KYBERSWAP_ELASTIC_FACTORY"); + vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.ETH_KYBERSWAP_ELASTIC_FACTORY_V2"); + vm.label(0x2B1c7b41f6A8F2b2bc45C3233a5d5FB3cD6dC9A8, "Constants.ETH_KYBERSWAP_ELASTIC_POS_MGR"); + vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.ETH_KYBERSWAP_ELASTIC_POS_MGR_V2"); + vm.label(0xC1e7dFE73E1598E3910EF4C7845B68A9Ab6F4c83, "Constants.ETH_KYBERSWAP_ELASTIC_ROUTER"); + vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.ETH_KYBERSWAP_ELASTIC_ROUTER_V2"); + vm.label(0xD7ab1699280980E756C446769B4c0F04550f88c9, "Constants.ETH_KYBERSWAP_ELASTIC_TICK_FEES_READER"); + vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.ETH_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); + vm.label(0xC36442b4a4522E871399CD717aBDD847Ab11FE88, "Constants.ETH_NON_FUNGIBLE_POSITION_MANAGER"); + vm.label(0xE592427A0AEce92De3Edee1F18E0157C05861564, "Constants.ETH_SWAPROUTER"); + vm.label(0x1F98431c8aD98523631AE4a59f267346ea31F984, "Constants.ETH_UNISWAP_V3_FACTORY"); + vm.label(0x9033BAD7aA130a2466060A2dA71fAe2219781B4b, "Constants.ETH_FPIOFT"); + vm.label(0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6, "Constants.ETH_FRXETHOFT"); + vm.label(0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0, "Constants.ETH_FRXUSDOFT"); + vm.label(0xbBc424e58ED38dd911309611ae2d7A23014Bd960, "Constants.ETH_SFRXETHOFT"); + vm.label(0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126, "Constants.ETH_SFRXUSDOFT"); + vm.label(0x04ACaF8D2865c0714F79da09645C13FD2888977f, "Constants.ETH_WFRAXOFT"); + vm.label(0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E, "Constants.ETH_REMOTEHOP"); + vm.label(0x99B5587ab54A49e3F827D10175Caf69C0187bfA8, "Constants.ETH_REMOTEMINTREDEEMHOP"); + } +} +library Mode { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x486cb4788f1be7cdef9301a7a637b451df3cf262; + address internal constant REMOTEMINTREDEEMHOP = 0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9; +} + +abstract contract AddressHelperMode is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); + vm.label(0x486cb4788f1be7cdef9301a7a637b451df3cf262, "Constants.undefined_REMOTEHOP"); + vm.label(0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9, "Constants.undefined_REMOTEMINTREDEEMHOP"); + } +} +library Moonbeam { + address internal constant FRAX = 0x322E86852e492a7Ee17f28a78c663da38FB33bfb; + address internal constant FXS = 0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C; + address internal constant FRXETH = 0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99; + address internal constant SFRXETH = 0xecf91116348aF1cfFe335e9807f0051332BE128D; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = 0x78348E58582d0D1789da1621B79Fc62012485CAe; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant COMBO_ORACLE = 0x247A323DAA63cC97c2BAD61b4D6f1E0120B5c9e2; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x4A40198373dE481741bdf629B44Dc98f12f18161; + address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; + address internal constant FRAXSWAP_FACTORY_V2 = 0x51f9DBEd76f5Dcf209817f641b549aa82F35D23F; + address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; + address internal constant FRAXSWAP_ROUTER_V2 = 0xd95fe880d7717f7f20981FE6e41A2315f3EFeAb5; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; + address internal constant FRAXSWAP_V1_FRAX_FXS = 0x44E11b99ff8F6164FD54393a17b3CD4c57732dB7; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0x2974A0D3e70FDe22d44c188F770beE964205aCad; + address internal constant FRAXSWAP_V1_FRAX_WGLMR = 0xAE0b5be7d467C8c0898CaE4c96B2f40A6810DEBC; + address internal constant FRAXSWAP_V2_FRAX_WGLMR = 0xd3bE0E32147ae91378F035fF96f3e2cAb96aC48b; + address internal constant COMPTROLLER = 0x343e4f06BF240d22FbdFd4a2Fe5858BC66e79F12; + address internal constant FPI_COMPTROLLER = 0xc4d89dcE72cde17DC3BEF317E62530b6A0733971; + address internal constant ZENLINK_CANFRAX_CANFXS = 0x8ca030649720b94b16e8C3B551cc2ab88c681C0F; + address internal constant ZENLINK_CANFRAX_WGLMR = 0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04; +} + +abstract contract AddressHelperMoonbeam is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x322E86852e492a7Ee17f28a78c663da38FB33bfb, "Constants.MNBM_FRAX"); + vm.label(0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C, "Constants.MNBM_FXS"); + vm.label(0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99, "Constants.MNBM_FRXETH"); + vm.label(0xecf91116348aF1cfFe335e9807f0051332BE128D, "Constants.MNBM_SFRXETH"); + vm.label(0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE"); + vm.label(0x1E87990678f640BFfe5A118c331fEc296DDC8d89, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE"); + vm.label(0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE"); + vm.label(0x78348E58582d0D1789da1621B79Fc62012485CAe, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CREWMEMBER"); + vm.label(0x247A323DAA63cC97c2BAD61b4D6f1E0120B5c9e2, "Constants.MNBM_COMBO_ORACLE"); + vm.label(0x4A40198373dE481741bdf629B44Dc98f12f18161, "Constants.MNBM_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.MNBM_FRAXSWAP_FACTORY_V1"); + vm.label(0x51f9DBEd76f5Dcf209817f641b549aa82F35D23F, "Constants.MNBM_FRAXSWAP_FACTORY_V2"); + vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.MNBM_FRAXSWAP_ROUTER_V1"); + vm.label(0xd95fe880d7717f7f20981FE6e41A2315f3EFeAb5, "Constants.MNBM_FRAXSWAP_ROUTER_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.MNBM_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0x44E11b99ff8F6164FD54393a17b3CD4c57732dB7, "Constants.MNBM_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x2974A0D3e70FDe22d44c188F770beE964205aCad, "Constants.MNBM_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0xAE0b5be7d467C8c0898CaE4c96B2f40A6810DEBC, "Constants.MNBM_FRAXSWAP_V1_FRAX_WGLMR"); + vm.label(0xd3bE0E32147ae91378F035fF96f3e2cAb96aC48b, "Constants.MNBM_FRAXSWAP_V2_FRAX_WGLMR"); + vm.label(0x343e4f06BF240d22FbdFd4a2Fe5858BC66e79F12, "Constants.MNBM_COMPTROLLER"); + vm.label(0xc4d89dcE72cde17DC3BEF317E62530b6A0733971, "Constants.MNBM_FPI_COMPTROLLER"); + vm.label(0x8ca030649720b94b16e8C3B551cc2ab88c681C0F, "Constants.MNBM_ZENLINK_CANFRAX_CANFXS"); + vm.label(0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04, "Constants.MNBM_ZENLINK_CANFRAX_WGLMR"); + } +} +library Moonriver { + address internal constant FRAX = 0x1A93B23281CC1CDE4C4741353F3064709A16197d; + address internal constant FXS = 0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant ZENLINK_CANFRAX_WGLMR = 0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04; + address internal constant COMBO_ORACLE = 0x3B56E2DD29e4976B639BAd95044A0852BeeEBF02; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x212ae4B6e93a735840A431845833261CA9cA76ED; + address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; + address internal constant FRAXSWAP_FACTORY_V2 = 0x7FB05Ca29DAc7F5690E9b5AE0aF0415D579D7CD3; + address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; + address internal constant FRAXSWAP_ROUTER_V2 = 0xD8FC27ec222E8d5172CD63aC453C6Dfb7467a3C7; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; + address internal constant FRAXSWAP_V1_FRAX_FXS = 0x2C803cd6E9a7AdAD813718a4767ECec4F6e0ca90; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0x08C81e49D695Ae8F50574144560a301542b05C60; + address internal constant FRAXSWAP_V1_FRAX_WMOVR = 0x3Dbb1Fd5E0b50a5905fc24Fc38D8e741C52F782b; + address internal constant FRAXSWAP_V2_FRAX_WMOVR = 0x72B7D2Bb0082cC9cDa8db55eca6Ce4dfcc954191; + address internal constant COMPTROLLER = 0x2bBbE751E8C36CD6c92767776067f8Dd3A21941f; + address internal constant SOLARBEAM_FRAX_ROME = 0x069C2065100b4D3D982383f7Ef3EcD1b95C05894; + address internal constant SOLARBEAM_FRAX_MOVR = 0x2cc54b4A3878e36E1C754871438113C1117a3ad7; + address internal constant SUSHI_FRAX_USDC_MOONRIVER = 0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3; + address internal constant SUSHI_CANFRAX_CANFXS = 0xC5147A6E773343aFE527249a26EF16AFc6a0013F; + address internal constant SUSHI_CANFRAX_ANYUSDC = 0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3; + address internal constant SUSHI_CANFRAX_WMOVR = 0x756057872D1Ad41C703B68e12701D27874fbe533; + address internal constant SUSHI_CANFXS_ANYUSDC = 0xc0EAB66DaDC825c95cA1951A2B02BC56073Fc7B2; +} + +abstract contract AddressHelperMoonriver is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x1A93B23281CC1CDE4C4741353F3064709A16197d, "Constants.MOVR_FRAX"); + vm.label(0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98, "Constants.MOVR_FXS"); + vm.label(0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE"); + vm.label(0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CREWMEMBER"); + vm.label(0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04, "Constants.MOVR_ZENLINK_CANFRAX_WGLMR"); + vm.label(0x3B56E2DD29e4976B639BAd95044A0852BeeEBF02, "Constants.MOVR_COMBO_ORACLE"); + vm.label(0x212ae4B6e93a735840A431845833261CA9cA76ED, "Constants.MOVR_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.MOVR_FRAXSWAP_FACTORY_V1"); + vm.label(0x7FB05Ca29DAc7F5690E9b5AE0aF0415D579D7CD3, "Constants.MOVR_FRAXSWAP_FACTORY_V2"); + vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.MOVR_FRAXSWAP_ROUTER_V1"); + vm.label(0xD8FC27ec222E8d5172CD63aC453C6Dfb7467a3C7, "Constants.MOVR_FRAXSWAP_ROUTER_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.MOVR_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0x2C803cd6E9a7AdAD813718a4767ECec4F6e0ca90, "Constants.MOVR_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x08C81e49D695Ae8F50574144560a301542b05C60, "Constants.MOVR_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0x3Dbb1Fd5E0b50a5905fc24Fc38D8e741C52F782b, "Constants.MOVR_FRAXSWAP_V1_FRAX_WMOVR"); + vm.label(0x72B7D2Bb0082cC9cDa8db55eca6Ce4dfcc954191, "Constants.MOVR_FRAXSWAP_V2_FRAX_WMOVR"); + vm.label(0x2bBbE751E8C36CD6c92767776067f8Dd3A21941f, "Constants.MOVR_COMPTROLLER"); + vm.label(0x069C2065100b4D3D982383f7Ef3EcD1b95C05894, "Constants.MOVR_SOLARBEAM_FRAX_ROME"); + vm.label(0x2cc54b4A3878e36E1C754871438113C1117a3ad7, "Constants.MOVR_SOLARBEAM_FRAX_MOVR"); + vm.label(0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3, "Constants.MOVR_SUSHI_FRAX_USDC_MOONRIVER"); + vm.label(0xC5147A6E773343aFE527249a26EF16AFc6a0013F, "Constants.MOVR_SUSHI_CANFRAX_CANFXS"); + vm.label(0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3, "Constants.MOVR_SUSHI_CANFRAX_ANYUSDC"); + vm.label(0x756057872D1Ad41C703B68e12701D27874fbe533, "Constants.MOVR_SUSHI_CANFRAX_WMOVR"); + vm.label(0xc0EAB66DaDC825c95cA1951A2B02BC56073Fc7B2, "Constants.MOVR_SUSHI_CANFXS_ANYUSDC"); + } +} +library Optimism { + address internal constant FRAX = 0x2E3D870790dC77A83DD1d18184Acc7439A53f475; + address internal constant FXS = 0x67CCEA5bb16181E7b4109c9c2143c24a1c2205Be; + address internal constant FPI = 0xC5d43A94e26fCa47A9b21CF547ae4AA0268670E1; + address internal constant FPIS = 0x8368Dca5CE2a4Db530c0F6e535d90B6826428Dee; + address internal constant FRXETH = 0x6806411765Af15Bddd26f8f544A34cC40cb9838B; + address internal constant SFRXETH = 0x484c2D6e3cDd945a8B2DF735e079178C1036578c; + address internal constant SFRAX = 0x2Dd1B4D4548aCCeA497050619965f91f78b3b532; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant COMBO_ORACLE = 0x626eFc448227d794dC8C02ffea6a932bB360f72a; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0xeba66661Afc03aB95ec37383b1BfB724abe14a0F; + address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3; + address internal constant FRAXSWAP_FACTORY_V1 = 0xBe90FD3CDdaf0D3B8576ffb5E51aDbfD304d0437; + address internal constant FRAXSWAP_FACTORY_V2 = 0x67a1412d2D6CbF211bb71F8e851b4393b491B10f; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; + address internal constant FRAXSWAP_ROUTER_V1 = 0xffE66A866B249f5d7C97b4a4c84742A393bC9354; + address internal constant FRAXSWAP_ROUTER_V2 = 0xB9A55F455e46e8D717eEA5E47D2c449416A0437F; + address internal constant FRAXSWAP_V1_FRAX_FXS = 0x25e2222Bc50E3B2dc945E1b9430F5498107FD3A5; + address internal constant FRAXSWAP_V1_FRAX_WETH = 0x0BC2D9B4c3f599BD85789EC3649774076A7D9264; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0x9456c020D3A05b159dAB4557535083fBA836c49A; + address internal constant FRAXSWAP_V2_FRAX_WETH = 0xCc4Dd8Bc7967D46060bA3fAAA8e525A35625F8b4; + address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; + address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; + address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; + address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; + address internal constant COMPTROLLER = 0x0dF840dCbf1229262A4125C1fc559bd338eC9491; + address internal constant FPI_COMPTROLLER = 0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635; + address internal constant CURVE_4POOL = 0x3da3153E26A230d918bb9F9428A8d60349B73379; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = 0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x31D982ebd82Ad900358984bd049207A4c2468640; + address internal constant REMOTEMINTREDEEMHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; +} + +abstract contract AddressHelperOptimism is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x2E3D870790dC77A83DD1d18184Acc7439A53f475, "Constants.OPTI_FRAX"); + vm.label(0x67CCEA5bb16181E7b4109c9c2143c24a1c2205Be, "Constants.OPTI_FXS"); + vm.label(0xC5d43A94e26fCa47A9b21CF547ae4AA0268670E1, "Constants.OPTI_FPI"); + vm.label(0x8368Dca5CE2a4Db530c0F6e535d90B6826428Dee, "Constants.OPTI_FPIS"); + vm.label(0x6806411765Af15Bddd26f8f544A34cC40cb9838B, "Constants.OPTI_FRXETH"); + vm.label(0x484c2D6e3cDd945a8B2DF735e079178C1036578c, "Constants.OPTI_SFRXETH"); + vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.OPTI_SFRAX"); + vm.label(0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE"); + vm.label(0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE"); + vm.label(0x053F082f3bC0C48B8409970c017b4F2a6f673e16, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE"); + vm.label(0xB84E29042Bfb489439949a79aed8a0e156169Ae5, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE"); + vm.label(0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE"); + vm.label(0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE"); + vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CREWMEMBER"); + vm.label(0x626eFc448227d794dC8C02ffea6a932bB360f72a, "Constants.OPTI_COMBO_ORACLE"); + vm.label(0xeba66661Afc03aB95ec37383b1BfB724abe14a0F, "Constants.OPTI_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.OPTI_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); + vm.label(0xBe90FD3CDdaf0D3B8576ffb5E51aDbfD304d0437, "Constants.OPTI_FRAXSWAP_FACTORY_V1"); + vm.label(0x67a1412d2D6CbF211bb71F8e851b4393b491B10f, "Constants.OPTI_FRAXSWAP_FACTORY_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.OPTI_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0xffE66A866B249f5d7C97b4a4c84742A393bC9354, "Constants.OPTI_FRAXSWAP_ROUTER_V1"); + vm.label(0xB9A55F455e46e8D717eEA5E47D2c449416A0437F, "Constants.OPTI_FRAXSWAP_ROUTER_V2"); + vm.label(0x25e2222Bc50E3B2dc945E1b9430F5498107FD3A5, "Constants.OPTI_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x0BC2D9B4c3f599BD85789EC3649774076A7D9264, "Constants.OPTI_FRAXSWAP_V1_FRAX_WETH"); + vm.label(0x9456c020D3A05b159dAB4557535083fBA836c49A, "Constants.OPTI_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0xCc4Dd8Bc7967D46060bA3fAAA8e525A35625F8b4, "Constants.OPTI_FRAXSWAP_V2_FRAX_WETH"); + vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.OPTI_KYBERSWAP_ELASTIC_FACTORY_V2"); + vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.OPTI_KYBERSWAP_ELASTIC_POS_MGR_V2"); + vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.OPTI_KYBERSWAP_ELASTIC_ROUTER_V2"); + vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.OPTI_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); + vm.label(0x0dF840dCbf1229262A4125C1fc559bd338eC9491, "Constants.OPTI_COMPTROLLER"); + vm.label(0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635, "Constants.OPTI_FPI_COMPTROLLER"); + vm.label(0x3da3153E26A230d918bb9F9428A8d60349B73379, "Constants.OPTI_CURVE_4POOL"); + vm.label(0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197, "Constants.OPTI_KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.OPTI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.OPTI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.OPTI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.OPTI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.OPTI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.OPTI_WFRAXOFT"); + vm.label(0x31D982ebd82Ad900358984bd049207A4c2468640, "Constants.OPTI_REMOTEHOP"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.OPTI_REMOTEMINTREDEEMHOP"); + } +} +library Plumephoenix { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; + address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; +} + +abstract contract AddressHelperPlumephoenix is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.PLUME_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.PLUME_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.PLUME_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.PLUME_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.PLUME_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.PLUME_WFRAXOFT"); + vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.PLUME_REMOTEHOP"); + vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.PLUME_REMOTEMINTREDEEMHOP"); + } +} +library Polygon { + address internal constant FRAX = 0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89; + address internal constant FXS = 0x1a3acf6D19267E2d3e7f898f42803e90C9219062; + address internal constant FPI = 0x411C9cDd0fBBa243488988f2A3005D6fFf126661; + address internal constant FPIS = 0x84F6FCeb8E4A3EB87768C4a111273C17b54D4411; + address internal constant FRXETH = 0xEe327F889d5947c1dc1934Bb208a1E792F953E96; + address internal constant SFRXETH = 0x6d1FdBB266fCc09A16a22016369210A15bb95761; + address internal constant BALANCER_FRXETH_BB_A_WETH_GAUGE = 0x617430FF1C74faff0378726627F26a8704d03c8d; + address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = 0x0363a32D18c25a3FD19a0d00B02106C03d8b8182; + address internal constant MSTABLE_FRAX_MUSD = 0xc425Fd9Ed3C892d849C9E1a971516da1C1B29696; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant DUMMY_TKN = 0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89; + address internal constant FERRY_TO_ARBITRUM = 0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; + address internal constant COMBO_ORACLE = 0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020; + address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; + address internal constant FRAXSWAP_FACTORY_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; + address internal constant FRAXSWAP_FACTORY_V2 = 0x54F454D747e037Da288dB568D4121117EAb34e79; + address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; + address internal constant FRAXSWAP_ROUTER_V1 = 0x9bc2152fD37b196C0Ff3C16f5533767c9A983971; + address internal constant FRAXSWAP_ROUTER_V2 = 0xE52D0337904D4D0519EF7487e707268E1DB6495F; + address internal constant FRAXSWAP_V1_FRAX_FXS = 0x60AC6d228ffeeefF423879baA02091558e6480dc; + address internal constant FRAXSWAP_V1_FRAX_WMATIC = 0x4F7267Af6DB7B284dF74BEA9e35402987D8C72a7; + address internal constant FRAXSWAP_V2_FRAX_FXS = 0xd2105fE5f1B631daf2398e918549758Cd181cA7C; + address internal constant FRAXSWAP_V2_FRAX_WMATIC = 0xA964b92C690f0B8efad5B46a278A84bD0EF8AC01; + address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; + address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; + address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; + address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; + address internal constant COMPTROLLER = 0xDCB5A4b6Ee39447D700F4FA3303B1d1c25Ea9cA7; + address internal constant FPI_COMPTROLLER = 0x4EBd698a5dB2580587EE0000929128190524006c; + address internal constant CURVE4POOL = 0xe4ae3Ee65bb687045e401827b404FeE34BE4BA53; + address internal constant DYSTOPIA_STABLEV1_AMM___USDC_FRAX = 0x53227c83a98Ba1035FEd912Da6cE26a0c11C7C66; + address internal constant DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = 0xfC2e89aabD257471a461dd506188609B2Bec53Fa; + address internal constant FRAX3POOL = 0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac; + address internal constant HOP_LP_USDC = 0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C; + address internal constant REMOTEMINTREDEEMHOP = 0x5658e82E330e094627D9b362ed0E137eA06673C4; +} + +abstract contract AddressHelperPolygon is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89, "Constants.POLY_FRAX"); + vm.label(0x1a3acf6D19267E2d3e7f898f42803e90C9219062, "Constants.POLY_FXS"); + vm.label(0x411C9cDd0fBBa243488988f2A3005D6fFf126661, "Constants.POLY_FPI"); + vm.label(0x84F6FCeb8E4A3EB87768C4a111273C17b54D4411, "Constants.POLY_FPIS"); + vm.label(0xEe327F889d5947c1dc1934Bb208a1E792F953E96, "Constants.POLY_FRXETH"); + vm.label(0x6d1FdBB266fCc09A16a22016369210A15bb95761, "Constants.POLY_SFRXETH"); + vm.label(0x617430FF1C74faff0378726627F26a8704d03c8d, "Constants.POLY_BALANCER_FRXETH_BB_A_WETH_GAUGE"); + vm.label(0x0363a32D18c25a3FD19a0d00B02106C03d8b8182, "Constants.POLY_KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON"); + vm.label(0xc425Fd9Ed3C892d849C9E1a971516da1C1B29696, "Constants.POLY_MSTABLE_FRAX_MUSD"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_CREWMEMBER"); + vm.label(0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89, "Constants.POLY_DUMMY_TKN"); + vm.label(0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0, "Constants.POLY_FERRY_TO_ARBITRUM"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_FIRST_OFFICER"); + vm.label(0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE"); + vm.label(0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE"); + vm.label(0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE"); + vm.label(0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE"); + vm.label(0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3, "Constants.POLY_COMBO_ORACLE"); + vm.label(0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020, "Constants.POLY_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.POLY_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); + vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.POLY_FRAXSWAP_FACTORY_V1"); + vm.label(0x54F454D747e037Da288dB568D4121117EAb34e79, "Constants.POLY_FRAXSWAP_FACTORY_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.POLY_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0x9bc2152fD37b196C0Ff3C16f5533767c9A983971, "Constants.POLY_FRAXSWAP_ROUTER_V1"); + vm.label(0xE52D0337904D4D0519EF7487e707268E1DB6495F, "Constants.POLY_FRAXSWAP_ROUTER_V2"); + vm.label(0x60AC6d228ffeeefF423879baA02091558e6480dc, "Constants.POLY_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x4F7267Af6DB7B284dF74BEA9e35402987D8C72a7, "Constants.POLY_FRAXSWAP_V1_FRAX_WMATIC"); + vm.label(0xd2105fE5f1B631daf2398e918549758Cd181cA7C, "Constants.POLY_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0xA964b92C690f0B8efad5B46a278A84bD0EF8AC01, "Constants.POLY_FRAXSWAP_V2_FRAX_WMATIC"); + vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.POLY_KYBERSWAP_ELASTIC_FACTORY_V2"); + vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.POLY_KYBERSWAP_ELASTIC_POS_MGR_V2"); + vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.POLY_KYBERSWAP_ELASTIC_ROUTER_V2"); + vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.POLY_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); + vm.label(0xDCB5A4b6Ee39447D700F4FA3303B1d1c25Ea9cA7, "Constants.POLY_COMPTROLLER"); + vm.label(0x4EBd698a5dB2580587EE0000929128190524006c, "Constants.POLY_FPI_COMPTROLLER"); + vm.label(0xe4ae3Ee65bb687045e401827b404FeE34BE4BA53, "Constants.POLY_CURVE4POOL"); + vm.label(0x53227c83a98Ba1035FEd912Da6cE26a0c11C7C66, "Constants.POLY_DYSTOPIA_STABLEV1_AMM___USDC_FRAX"); + vm.label(0xfC2e89aabD257471a461dd506188609B2Bec53Fa, "Constants.POLY_DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX"); + vm.label(0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac, "Constants.POLY_FRAX3POOL"); + vm.label(0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A, "Constants.POLY_HOP_LP_USDC"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_WFRAXOFT"); + vm.label(0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C, "Constants.POLY_REMOTEHOP"); + vm.label(0x5658e82E330e094627D9b362ed0E137eA06673C4, "Constants.POLY_REMOTEMINTREDEEMHOP"); + } +} +library PolygonzkEVM { + address internal constant FRAX = 0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D; + address internal constant FXS = 0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE; + address internal constant FPI = 0x7E5845b1bFc9e6620893e48346bdB8541995a8D9; + address internal constant FPIS = 0xdE7df9036801676aF0cB73661d93a098c0085fba; + address internal constant FRXETH = 0xCf7eceE185f19e2E970a301eE37F93536ed66179; + address internal constant SFRXETH = 0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04; + address internal constant SFRAX = 0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = 0x96720C1E893bB69C14291d8a85475ED9BC484b26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = 0xA31001fbe938C520C27204b984817d998bAeA885; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = 0x3d1bc21F8991091538FfEf535Fe96A449794461C; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = 0xA711F85672899331900359e5b89848A30BeEBDBe; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; + address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; + address internal constant COMBO_ORACLE = 0x030BD43af99cb72B51dA233A73F7697Cd2461C0b; + address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; + address internal constant REMOTEMINTREDEEMHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; +} + +abstract contract AddressHelperPolygonzkEVM is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D, "Constants.POLY_ZKEVM_FRAX"); + vm.label(0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE, "Constants.POLY_ZKEVM_FXS"); + vm.label(0x7E5845b1bFc9e6620893e48346bdB8541995a8D9, "Constants.POLY_ZKEVM_FPI"); + vm.label(0xdE7df9036801676aF0cB73661d93a098c0085fba, "Constants.POLY_ZKEVM_FPIS"); + vm.label(0xCf7eceE185f19e2E970a301eE37F93536ed66179, "Constants.POLY_ZKEVM_FRXETH"); + vm.label(0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04, "Constants.POLY_ZKEVM_SFRXETH"); + vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.POLY_ZKEVM_SFRAX"); + vm.label(0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE"); + vm.label(0x96720C1E893bB69C14291d8a85475ED9BC484b26, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE"); + vm.label(0xA31001fbe938C520C27204b984817d998bAeA885, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE"); + vm.label(0x3d1bc21F8991091538FfEf535Fe96A449794461C, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE"); + vm.label(0xA711F85672899331900359e5b89848A30BeEBDBe, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE"); + vm.label(0x4DB406906835ca0B28bFbef344c7d2C707BC4947, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE"); + vm.label(0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CREWMEMBER"); + vm.label(0x030BD43af99cb72B51dA233A73F7697Cd2461C0b, "Constants.POLY_ZKEVM_COMBO_ORACLE"); + vm.label(0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D, "Constants.POLY_ZKEVM_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_ZKEVM_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_ZKEVM_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_ZKEVM_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_ZKEVM_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_ZKEVM_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_ZKEVM_WFRAXOFT"); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.POLY_ZKEVM_REMOTEHOP"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.POLY_ZKEVM_REMOTEMINTREDEEMHOP"); + } +} +library Scroll { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xf6f45ccb5e85d1400067ee66f9e168f83e86124e; + address internal constant REMOTEMINTREDEEMHOP = 0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558; +} + +abstract contract AddressHelperScroll is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SCROLL_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SCROLL_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SCROLL_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SCROLL_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SCROLL_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SCROLL_WFRAXOFT"); + vm.label(0xf6f45ccb5e85d1400067ee66f9e168f83e86124e, "Constants.SCROLL_REMOTEHOP"); + vm.label(0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558, "Constants.SCROLL_REMOTEMINTREDEEMHOP"); + } +} +library Solana { + string internal constant FPIOFT = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH"; + string internal constant FRXETHOFT = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf"; + string internal constant FRXUSDOFT = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw"; + string internal constant SFRXETHOFT = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv"; + string internal constant SFRXUSDOFT = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45"; + string internal constant WFRAXOFT = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga"; + address internal constant FPIOFT_BYTES32 = 0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0; + address internal constant FRXETHOFT_BYTES32 = 0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3; + address internal constant FRXUSDOFT_BYTES32 = 0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad; + address internal constant SFRXETHOFT_BYTES32 = 0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61; + address internal constant SFRXUSDOFT_BYTES32 = 0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf; + address internal constant WFRAXOFT_BYTES32 = 0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa; +} + +abstract contract AddressHelperSolana is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH, "Constants.SOL_FPIOFT"); + vm.label(5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf, "Constants.SOL_FRXETHOFT"); + vm.label(GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw, "Constants.SOL_FRXUSDOFT"); + vm.label(58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv, "Constants.SOL_SFRXETHOFT"); + vm.label(DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45, "Constants.SOL_SFRXUSDOFT"); + vm.label(zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga, "Constants.SOL_WFRAXOFT"); + vm.label(0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0, "Constants.SOL_FPIOFT_BYTES32"); + vm.label(0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3, "Constants.SOL_FRXETHOFT_BYTES32"); + vm.label(0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad, "Constants.SOL_FRXUSDOFT_BYTES32"); + vm.label(0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61, "Constants.SOL_SFRXETHOFT_BYTES32"); + vm.label(0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf, "Constants.SOL_SFRXUSDOFT_BYTES32"); + vm.label(0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa, "Constants.SOL_WFRAXOFT_BYTES32"); + } +} +library Sonic { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23; + address internal constant REMOTEMINTREDEEMHOP = 0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b; +} + +abstract contract AddressHelperSonic is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SONIC_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SONIC_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SONIC_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SONIC_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SONIC_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SONIC_WFRAXOFT"); + vm.label(0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23, "Constants.SONIC_REMOTEHOP"); + vm.label(0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b, "Constants.SONIC_REMOTEMINTREDEEMHOP"); + } +} +library Unichain { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; + address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; +} + +abstract contract AddressHelperUnichain is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.UNI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.UNI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.UNI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.UNI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.UNI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.UNI_WFRAXOFT"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.UNI_REMOTEHOP"); + vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.UNI_REMOTEMINTREDEEMHOP"); + } +} +library Worldchain { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x938d99A81814f66b01010d19DDce92A633441699; + address internal constant REMOTEMINTREDEEMHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; +} + +abstract contract AddressHelperWorldchain is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.WRLD_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.WRLD_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.WRLD_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.WRLD_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.WRLD_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.WRLD_WFRAXOFT"); + vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.WRLD_REMOTEHOP"); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.WRLD_REMOTEMINTREDEEMHOP"); + } +} +library XLayer { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396; + address internal constant REMOTEMINTREDEEMHOP = 0x45c6852a5188ce1905567ea83454329bd4982007; +} + +abstract contract AddressHelperXLayer is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.XLAYER_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.XLAYER_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.XLAYER_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.XLAYER_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.XLAYER_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.XLAYER_WFRAXOFT"); + vm.label(0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396, "Constants.XLAYER_REMOTEHOP"); + vm.label(0x45c6852a5188ce1905567ea83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); + } +} +library ZkSync { + address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; + address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; + address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; + address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; + address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; + address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; + address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; + address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; +} + +abstract contract AddressHelperZkSync is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.undefined_FPIOFT"); + vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.undefined_FRXETHOFT"); + vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.undefined_FRXUSDOFT"); + vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.undefined_SFRXETHOFT"); + vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.undefined_SFRXUSDOFT"); + vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.undefined_WFRAXOFT"); + vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.undefined_REMOTEHOP"); + vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.undefined_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Abstract.sol b/src/contracts/chain-constants/Abstract.sol new file mode 100644 index 0000000..667a76a --- /dev/null +++ b/src/contracts/chain-constants/Abstract.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Abstract { + address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; + address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; + address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; + address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; + address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; + address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; + address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; + address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; +} + +abstract contract AddressHelperAbstract is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.ABS_FPIOFT"); + vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.ABS_FRXETHOFT"); + vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.ABS_FRXUSDOFT"); + vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.ABS_SFRXETHOFT"); + vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.ABS_SFRXUSDOFT"); + vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.ABS_WFRAXOFT"); + vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.ABS_REMOTEHOP"); + vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.ABS_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Aptos.sol b/src/contracts/chain-constants/Aptos.sol new file mode 100644 index 0000000..50cbaf0 --- /dev/null +++ b/src/contracts/chain-constants/Aptos.sol @@ -0,0 +1,42 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Aptos { + bytes32 internal constant FPI = 0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2; + bytes32 internal constant FRXETH = 0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585; + bytes32 internal constant FRXUSD = 0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5; + bytes32 internal constant SFRXETH = 0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a; + bytes32 internal constant SFRXUSD = 0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2; + bytes32 internal constant WFRAX = 0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300; + bytes32 internal constant FPIOFT = 0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864; + bytes32 internal constant FRXETHOFT = 0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c; + bytes32 internal constant FRXUSDOFT = 0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b; + bytes32 internal constant SFRXETHOFT = 0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356; + bytes32 internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; + bytes32 internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; +} + +abstract contract AddressHelperAptos is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2, "Constants.APT_FPI"); + vm.label(0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585, "Constants.APT_FRXETH"); + vm.label(0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5, "Constants.APT_FRXUSD"); + vm.label(0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a, "Constants.APT_SFRXETH"); + vm.label(0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2, "Constants.APT_SFRXUSD"); + vm.label(0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300, "Constants.APT_WFRAX"); + vm.label(0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864, "Constants.APT_FPIOFT"); + vm.label(0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c, "Constants.APT_FRXETHOFT"); + vm.label(0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b, "Constants.APT_FRXUSDOFT"); + vm.label(0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356, "Constants.APT_SFRXETHOFT"); + vm.label(0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9, "Constants.APT_SFRXUSDOFT"); + vm.label(0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2, "Constants.APT_WFRAXOFT"); + } +} diff --git a/src/contracts/chain-constants/Arbitrum.sol b/src/contracts/chain-constants/Arbitrum.sol index 650bd86..0535107 100644 --- a/src/contracts/chain-constants/Arbitrum.sol +++ b/src/contracts/chain-constants/Arbitrum.sol @@ -149,6 +149,14 @@ library Arbitrum { address internal constant USDPLUSFRAXBP_POOL = 0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013; address internal constant VECHR = 0x9A01857f33aa382b1d5bb96C3180347862432B0d; address internal constant VERAM = 0xAAA343032aA79eE9a6897Dab03bef967c3289a06; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A; + address internal constant REMOTEMINTREDEEMHOP = 0xa46A266dCBf199a71532c76967e200994C5A0D6d; } abstract contract AddressHelperArbitrum is TestBase { @@ -314,5 +322,13 @@ abstract contract AddressHelperArbitrum is TestBase { vm.label(0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013, "Constants.ARBI_USDPLUSFRAXBP_POOL"); vm.label(0x9A01857f33aa382b1d5bb96C3180347862432B0d, "Constants.ARBI_VECHR"); vm.label(0xAAA343032aA79eE9a6897Dab03bef967c3289a06, "Constants.ARBI_VERAM"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.ARBI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.ARBI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.ARBI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.ARBI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.ARBI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.ARBI_WFRAXOFT"); + vm.label(0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A, "Constants.ARBI_REMOTEHOP"); + vm.label(0xa46A266dCBf199a71532c76967e200994C5A0D6d, "Constants.ARBI_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/Aurora.sol b/src/contracts/chain-constants/Aurora.sol new file mode 100644 index 0000000..8b3cc80 --- /dev/null +++ b/src/contracts/chain-constants/Aurora.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Aurora { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x53e36C8380Ff62D7964BFa4868A0045E58A52344; + address internal constant REMOTEMINTREDEEMHOP = 0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2; +} + +abstract contract AddressHelperAurora is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AUR_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AUR_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AUR_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AUR_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AUR_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AUR_WFRAXOFT"); + vm.label(0x53e36C8380Ff62D7964BFa4868A0045E58A52344, "Constants.AUR_REMOTEHOP"); + vm.label(0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2, "Constants.AUR_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Avalanche.sol b/src/contracts/chain-constants/Avalanche.sol index 8892e62..9161240 100644 --- a/src/contracts/chain-constants/Avalanche.sol +++ b/src/contracts/chain-constants/Avalanche.sol @@ -58,6 +58,14 @@ library Avalanche { address internal constant PANGOLIN_CANFRAX_WAVAX = 0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559; address internal constant PANGOLIN_CANFXS_USDC_E = 0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8; address internal constant TRADER_JOE_FRAX_WAVAX = 0x0d84595e8638dBc631076c51000B2d31120D8aa1; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; + address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; } abstract contract AddressHelperAvalanche is TestBase { @@ -132,5 +140,13 @@ abstract contract AddressHelperAvalanche is TestBase { vm.label(0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559, "Constants.AVAX_PANGOLIN_CANFRAX_WAVAX"); vm.label(0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8, "Constants.AVAX_PANGOLIN_CANFXS_USDC_E"); vm.label(0x0d84595e8638dBc631076c51000B2d31120D8aa1, "Constants.AVAX_TRADER_JOE_FRAX_WAVAX"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AVAX_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AVAX_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AVAX_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AVAX_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AVAX_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AVAX_WFRAXOFT"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.AVAX_REMOTEHOP"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.AVAX_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/BSC.sol b/src/contracts/chain-constants/BSC.sol index e0cef38..7a81b6d 100644 --- a/src/contracts/chain-constants/BSC.sol +++ b/src/contracts/chain-constants/BSC.sol @@ -48,6 +48,14 @@ library BSC { address internal constant APESWAP_CANFRAX_USDC = 0x885BE9bCbCdcB70c59F56A78ae64A820e0448589; address internal constant APESWAP_CANFXS_USDC = 0x84f2781E4E60f97D2963260A7b20D883F04F0d20; address internal constant SADDLE_FRAX_BUSD = 0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; + address internal constant REMOTEMINTREDEEMHOP = 0xdee45510b42Cb0678C8A61D043C698aF66b0d852; } abstract contract AddressHelperBSC is TestBase { @@ -56,61 +64,75 @@ abstract contract AddressHelperBSC is TestBase { } function labelConstants() public { - vm.label(0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40, "Constants.BSC_FRAX"); - vm.label(0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE, "Constants.BSC_FXS"); - vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.BSC_FPI"); - vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.BSC_FPIS"); - vm.label(0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e, "Constants.BSC_FRXETH"); - vm.label(0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53, "Constants.BSC_SFRXETH"); - vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.BSC_SFRAX"); - vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.BSC_APESWAP_CANFRAX_BUSD"); - vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.BSC_APESWAP_CANFXS_WBNB"); - vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.BSC_IMPOSSIBLE_FRAX_IF"); - vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.BSC_IMPOSSIBLE_FRAX_FXS"); - vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.BSC_PLANET_FINANCE_FRAX_LENDING"); + vm.label(0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40, "Constants.undefined_FRAX"); + vm.label(0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE, "Constants.undefined_FXS"); + vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.undefined_FPI"); + vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.undefined_FPIS"); + vm.label(0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e, "Constants.undefined_FRXETH"); + vm.label(0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53, "Constants.undefined_SFRXETH"); + vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.undefined_SFRAX"); + vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFRAX_BUSD"); + vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFXS_WBNB"); + vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.undefined_IMPOSSIBLE_FRAX_IF"); + vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.undefined_IMPOSSIBLE_FRAX_FXS"); + vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_PLANET_FINANCE_FRAX_LENDING"); vm.label( 0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, - "Constants.BSC_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE" + "Constants.undefined_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE" + ); + vm.label( + 0x5CD3d6465cd21b645F15175840f4659228C6195c, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE" + ); + vm.label( + 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE" ); - vm.label(0x5CD3d6465cd21b645F15175840f4659228C6195c, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE"); - vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE"); vm.label( 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE" + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE" ); vm.label( 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE" + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE" ); vm.label( 0x612015939f70C87E2041cc5daD909101c1A2383F, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE" + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE" ); vm.label( 0x5E8422345238F34275888049021821E8E08CAa1f, - "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE" + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE" ); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_CREWMEMBER"); - vm.label(0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A, "Constants.BSC_COMBO_ORACLE"); - vm.label(0x8159D9CD28B7A140Fd92311C1E5c667d97176727, "Constants.BSC_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.BSC_FRAXSWAP_FACTORY_V1"); - vm.label(0xf89e6CA06121B6d4370f4B196Ae458e8b969A011, "Constants.BSC_FRAXSWAP_FACTORY_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.BSC_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37, "Constants.BSC_FRAXSWAP_ROUTER_V1"); - vm.label(0x67F755137E0AE2a2aa0323c047715Bf6523116E5, "Constants.BSC_FRAXSWAP_ROUTER_V2"); - vm.label(0xC86B106F76ef5b9A085071365eD5355592A7aFa4, "Constants.BSC_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D, "Constants.BSC_FRAXSWAP_V1_FRAX_WBNB"); - vm.label(0xF51709f61447E2647528CCC9030d6FE492C30D63, "Constants.BSC_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0x14732123c443f8E815D5c64f3C7ecb63bCeEab74, "Constants.BSC_FRAXSWAP_V2_FRAX_WBNB"); - vm.label(0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a, "Constants.BSC_COMPTROLLER"); - vm.label(0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456, "Constants.BSC_FPI_COMPTROLLER"); - vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.BSC_GFRAX"); - vm.label(0x489c8fF79245f14AEEE9520d28209844790cB979, "Constants.BSC_APESWAP_CANFRAX_CANFXS"); - vm.label(0x16BDb03E6074759943149eBB1526DDfD1AA5fc56, "Constants.BSC_APESWAP_CANFRAX_WBNB"); - vm.label(0x885BE9bCbCdcB70c59F56A78ae64A820e0448589, "Constants.BSC_APESWAP_CANFRAX_USDC"); - vm.label(0x84f2781E4E60f97D2963260A7b20D883F04F0d20, "Constants.BSC_APESWAP_CANFXS_USDC"); - vm.label(0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3, "Constants.BSC_SADDLE_FRAX_BUSD"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CAPTAIN"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_FIRST_OFFICER"); + vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CREWMEMBER"); + vm.label(0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A, "Constants.undefined_COMBO_ORACLE"); + vm.label(0x8159D9CD28B7A140Fd92311C1E5c667d97176727, "Constants.undefined_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.undefined_FRAXSWAP_FACTORY_V1"); + vm.label(0xf89e6CA06121B6d4370f4B196Ae458e8b969A011, "Constants.undefined_FRAXSWAP_FACTORY_V2"); + vm.label(0x0000000000000000000000000000000000000000, "Constants.undefined_FRAXSWAP_ROUTER_MULTI_HOP"); + vm.label(0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37, "Constants.undefined_FRAXSWAP_ROUTER_V1"); + vm.label(0x67F755137E0AE2a2aa0323c047715Bf6523116E5, "Constants.undefined_FRAXSWAP_ROUTER_V2"); + vm.label(0xC86B106F76ef5b9A085071365eD5355592A7aFa4, "Constants.undefined_FRAXSWAP_V1_FRAX_FXS"); + vm.label(0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D, "Constants.undefined_FRAXSWAP_V1_FRAX_WBNB"); + vm.label(0xF51709f61447E2647528CCC9030d6FE492C30D63, "Constants.undefined_FRAXSWAP_V2_FRAX_FXS"); + vm.label(0x14732123c443f8E815D5c64f3C7ecb63bCeEab74, "Constants.undefined_FRAXSWAP_V2_FRAX_WBNB"); + vm.label(0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a, "Constants.undefined_COMPTROLLER"); + vm.label(0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456, "Constants.undefined_FPI_COMPTROLLER"); + vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_GFRAX"); + vm.label(0x489c8fF79245f14AEEE9520d28209844790cB979, "Constants.undefined_APESWAP_CANFRAX_CANFXS"); + vm.label(0x16BDb03E6074759943149eBB1526DDfD1AA5fc56, "Constants.undefined_APESWAP_CANFRAX_WBNB"); + vm.label(0x885BE9bCbCdcB70c59F56A78ae64A820e0448589, "Constants.undefined_APESWAP_CANFRAX_USDC"); + vm.label(0x84f2781E4E60f97D2963260A7b20D883F04F0d20, "Constants.undefined_APESWAP_CANFXS_USDC"); + vm.label(0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3, "Constants.undefined_SADDLE_FRAX_BUSD"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.undefined_REMOTEHOP"); + vm.label(0xdee45510b42Cb0678C8A61D043C698aF66b0d852, "Constants.undefined_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/Base.sol b/src/contracts/chain-constants/Base.sol new file mode 100644 index 0000000..f6f01c5 --- /dev/null +++ b/src/contracts/chain-constants/Base.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Base { + address internal constant FPIOFT = 0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B; + address internal constant FRXETHOFT = 0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA; + address internal constant FRXUSDOFT = 0xe5020A6d073a794B6E7f05678707dE47986Fb0b6; + address internal constant SFRXETHOFT = 0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA; + address internal constant SFRXUSDOFT = 0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e; + address internal constant WFRAXOFT = 0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf; + address internal constant REMOTEHOP = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant REMOTEMINTREDEEMHOP = 0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE; +} + +abstract contract AddressHelperBase is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B, "Constants.BASE_FPIOFT"); + vm.label(0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA, "Constants.BASE_FRXETHOFT"); + vm.label(0xe5020A6d073a794B6E7f05678707dE47986Fb0b6, "Constants.BASE_FRXUSDOFT"); + vm.label(0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA, "Constants.BASE_SFRXETHOFT"); + vm.label(0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e, "Constants.BASE_SFRXUSDOFT"); + vm.label(0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf, "Constants.BASE_WFRAXOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BASE_REMOTEHOP"); + vm.label(0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE, "Constants.BASE_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Bera.sol b/src/contracts/chain-constants/Bera.sol new file mode 100644 index 0000000..0cc9e31 --- /dev/null +++ b/src/contracts/chain-constants/Bera.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Bera { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; + address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; +} + +abstract contract AddressHelperBera is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BERA_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BERA_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BERA_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BERA_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BERA_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BERA_WFRAXOFT"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.BERA_REMOTEHOP"); + vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.BERA_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Blast.sol b/src/contracts/chain-constants/Blast.sol new file mode 100644 index 0000000..366ab74 --- /dev/null +++ b/src/contracts/chain-constants/Blast.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Blast { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xe93Cb38f97469eac2f284a87813D0d701b28E58e; + address internal constant REMOTEMINTREDEEMHOP = 0x85b1714b25f40FD5025423124c076476073180b3; +} + +abstract contract AddressHelperBlast is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BLAST_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BLAST_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BLAST_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BLAST_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BLAST_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BLAST_WFRAXOFT"); + vm.label(0xe93Cb38f97469eac2f284a87813D0d701b28E58e, "Constants.BLAST_REMOTEHOP"); + vm.label(0x85b1714b25f40FD5025423124c076476073180b3, "Constants.BLAST_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/FraxtalL2.sol b/src/contracts/chain-constants/FraxtalL2.sol index aff534f..27557fe 100644 --- a/src/contracts/chain-constants/FraxtalL2.sol +++ b/src/contracts/chain-constants/FraxtalL2.sol @@ -7,16 +7,16 @@ import { TestBase } from "forge-std/Test.sol"; library FraxtalL2 { uint256 internal constant CHAIN_ID = 252; - address internal constant FRAX = 0xFc00000000000000000000000000000000000001; - address internal constant FXS = 0xFc00000000000000000000000000000000000002; + address internal constant FRXUSD = 0xFc00000000000000000000000000000000000001; + address internal constant WFRAX = 0xFc00000000000000000000000000000000000002; address internal constant FPI = 0xFc00000000000000000000000000000000000003; address internal constant FPIS = 0xfc00000000000000000000000000000000000004; address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; address internal constant FRXBTC = 0xfC00000000000000000000000000000000000007; address internal constant SFRAX = 0xfc00000000000000000000000000000000000008; - address internal constant FRAX_PROXY = 0xFc00000000000000000000000000000000000001; - address internal constant FXS_PROXY = 0xFc00000000000000000000000000000000000002; + address internal constant FRXUSD_PROXY = 0xFc00000000000000000000000000000000000001; + address internal constant WFRAX_PROXY = 0xFc00000000000000000000000000000000000002; address internal constant FPI_PROXY = 0xFc00000000000000000000000000000000000003; address internal constant FPIS_PROXY = 0xfc00000000000000000000000000000000000004; address internal constant SFRXETH_PROXY = 0xFC00000000000000000000000000000000000005; @@ -34,9 +34,9 @@ library FraxtalL2 { address internal constant FXB_20261231 = 0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e; address internal constant FXB_20241231 = 0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba; address internal constant FXB_20240630 = 0x758094A71a39De49626FE25B86631ED944558653; - address internal constant FXB_20551231 = 0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83; - address internal constant FXB_20291231 = 0xF1e2b576aF4C6a7eE966b14C810b772391e92153; - address internal constant FXB_20251231 = 0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA; + address internal constant FXB_20551231 = 0xc38173d34afaea88bc482813b3cd267bc8a1ea83; + address internal constant FXB_20291231 = 0xf1e2b576af4c6a7ee966b14c810b772391e92153; + address internal constant FXB_20251231 = 0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca; address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = @@ -163,6 +163,14 @@ library FraxtalL2 { address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; + address internal constant FPIOFT = 0x75c38D46001b0F8108c4136216bd2694982C20FC; + address internal constant FRXETHOFT = 0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604; + address internal constant FRXUSDOFT = 0x96A394058E2b84A89bac9667B19661Ed003cF5D4; + address internal constant SFRXETHOFT = 0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168; + address internal constant SFRXUSDOFT = 0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361; + address internal constant WFRAXOFT = 0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A; + address internal constant FRAXTALHOP = 0x2A2019b30C157dB6c1C01306b8025167dBe1803B; + address internal constant FRAXTALMINTREDEEMHOP = 0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC; } abstract contract AddressHelperFraxtalL2 is TestBase { @@ -171,16 +179,16 @@ abstract contract AddressHelperFraxtalL2 is TestBase { } function labelConstants() public { - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRAX"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_FXS"); + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX"); vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI"); vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS"); vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH"); vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_WFRXETH"); vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_FRXBTC"); vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_SFRAX"); - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRAX_PROXY"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_FXS_PROXY"); + vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD_PROXY"); + vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX_PROXY"); vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI_PROXY"); vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS_PROXY"); vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH_PROXY"); @@ -198,9 +206,9 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e, "Constants.FXTL_FXB_20261231"); vm.label(0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba, "Constants.FXTL_FXB_20241231"); vm.label(0x758094A71a39De49626FE25B86631ED944558653, "Constants.FXTL_FXB_20240630"); - vm.label(0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83, "Constants.FXTL_FXB_20551231"); - vm.label(0xF1e2b576aF4C6a7eE966b14C810b772391e92153, "Constants.FXTL_FXB_20291231"); - vm.label(0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA, "Constants.FXTL_FXB_20251231"); + vm.label(0xc38173d34afaea88bc482813b3cd267bc8a1ea83, "Constants.FXTL_FXB_20551231"); + vm.label(0xf1e2b576af4c6a7ee966b14c810b772391e92153, "Constants.FXTL_FXB_20291231"); + vm.label(0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca, "Constants.FXTL_FXB_20251231"); vm.label( 0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE" @@ -341,5 +349,13 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_ERC20_FACTORY_PROXY"); vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_L2_STANDARD_BRIDGE_PROXY"); vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_L2_TO_L1_MESSAGE_PASSER"); + vm.label(0x75c38D46001b0F8108c4136216bd2694982C20FC, "Constants.FXTL_FPIOFT"); + vm.label(0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604, "Constants.FXTL_FRXETHOFT"); + vm.label(0x96A394058E2b84A89bac9667B19661Ed003cF5D4, "Constants.FXTL_FRXUSDOFT"); + vm.label(0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168, "Constants.FXTL_SFRXETHOFT"); + vm.label(0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361, "Constants.FXTL_SFRXUSDOFT"); + vm.label(0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A, "Constants.FXTL_WFRAXOFT"); + vm.label(0x2A2019b30C157dB6c1C01306b8025167dBe1803B, "Constants.FXTL_FRAXTALHOP"); + vm.label(0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC, "Constants.FXTL_FRAXTALMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/FraxtalTestnetL1.sol b/src/contracts/chain-constants/FraxtalTestnetL1.sol index b1daff3..64d489e 100644 --- a/src/contracts/chain-constants/FraxtalTestnetL1.sol +++ b/src/contracts/chain-constants/FraxtalTestnetL1.sol @@ -6,7 +6,7 @@ pragma solidity >=0.8.0; import { TestBase } from "forge-std/Test.sol"; library FraxtalTestnetL1 { - uint256 internal constant CHAIN_ID = 17_000; + uint256 internal constant CHAIN_ID = 17000; address internal constant PROXY_ADMIN = 0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e; address internal constant COMPTROLLER = 0x88699c59E413e8A47117820D15d8D33b09B21edD; address internal constant ADDRESS_MANAGER = 0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6; diff --git a/src/contracts/chain-constants/Holesky.sol b/src/contracts/chain-constants/Holesky.sol index 44ad698..3b97ec6 100644 --- a/src/contracts/chain-constants/Holesky.sol +++ b/src/contracts/chain-constants/Holesky.sol @@ -6,7 +6,7 @@ pragma solidity >=0.8.0; import { TestBase } from "forge-std/Test.sol"; library Holesky { - uint256 internal constant CHAIN_ID = 17_000; + uint256 internal constant CHAIN_ID = 17000; address internal constant FRAX = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; address internal constant FXS = 0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF; address internal constant FPI = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; diff --git a/src/contracts/chain-constants/Hyperliquid.sol b/src/contracts/chain-constants/Hyperliquid.sol new file mode 100644 index 0000000..ad3eb00 --- /dev/null +++ b/src/contracts/chain-constants/Hyperliquid.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + + library Hyperliquid { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + string internal constant REMOTEHOP = ""; + string internal constant REMOTEMINTREDEEMHOP = ""; +} + +abstract contract AddressHelperHyperliquid is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.HYPE_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.HYPE_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.HYPE_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.HYPE_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.HYPE_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.HYPE_WFRAXOFT"); + vm.label(, "Constants.HYPE_REMOTEHOP"); + vm.label(, "Constants.HYPE_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Ink.sol b/src/contracts/chain-constants/Ink.sol new file mode 100644 index 0000000..57adaab --- /dev/null +++ b/src/contracts/chain-constants/Ink.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Ink { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; + address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; +} + +abstract contract AddressHelperInk is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.INK_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.INK_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.INK_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.INK_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.INK_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.INK_WFRAXOFT"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.INK_REMOTEHOP"); + vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.INK_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Katana.sol b/src/contracts/chain-constants/Katana.sol new file mode 100644 index 0000000..c3d68fd --- /dev/null +++ b/src/contracts/chain-constants/Katana.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Katana { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c; + address internal constant REMOTEMINTREDEEMHOP = 0xF6f45CCB5E85D1400067ee66F9e168f83e86124E; +} + +abstract contract AddressHelperKatana is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.KTN_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.KTN_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.KTN_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.KTN_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.KTN_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.KTN_WFRAXOFT"); + vm.label(0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c, "Constants.KTN_REMOTEHOP"); + vm.label(0xF6f45CCB5E85D1400067ee66F9e168f83e86124E, "Constants.KTN_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Linea.sol b/src/contracts/chain-constants/Linea.sol new file mode 100644 index 0000000..93265e9 --- /dev/null +++ b/src/contracts/chain-constants/Linea.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Linea { + address internal constant FPIOFT = 0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4; + address internal constant FRXETHOFT = 0xB1aFD04774c02AE84692619448B08BA79F19b1ff; + address internal constant FRXUSDOFT = 0xC7346783f5e645aa998B106Ef9E7f499528673D8; + address internal constant SFRXETHOFT = 0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2; + address internal constant SFRXUSDOFT = 0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6; + address internal constant WFRAXOFT = 0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5; + address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; + address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; +} + +abstract contract AddressHelperLinea is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4, "Constants.LINEA_FPIOFT"); + vm.label(0xB1aFD04774c02AE84692619448B08BA79F19b1ff, "Constants.LINEA_FRXETHOFT"); + vm.label(0xC7346783f5e645aa998B106Ef9E7f499528673D8, "Constants.LINEA_FRXUSDOFT"); + vm.label(0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2, "Constants.LINEA_SFRXETHOFT"); + vm.label(0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6, "Constants.LINEA_SFRXUSDOFT"); + vm.label(0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5, "Constants.LINEA_WFRAXOFT"); + vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.LINEA_REMOTEHOP"); + vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.LINEA_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Mainnet.sol b/src/contracts/chain-constants/Mainnet.sol index e55164c..d890155 100644 --- a/src/contracts/chain-constants/Mainnet.sol +++ b/src/contracts/chain-constants/Mainnet.sol @@ -1066,6 +1066,14 @@ library Mainnet { address internal constant NON_FUNGIBLE_POSITION_MANAGER = 0xC36442b4a4522E871399CD717aBDD847Ab11FE88; address internal constant SWAPROUTER = 0xE592427A0AEce92De3Edee1F18E0157C05861564; address internal constant UNISWAP_V3_FACTORY = 0x1F98431c8aD98523631AE4a59f267346ea31F984; + address internal constant FPIOFT = 0x9033BAD7aA130a2466060A2dA71fAe2219781B4b; + address internal constant FRXETHOFT = 0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6; + address internal constant FRXUSDOFT = 0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0; + address internal constant SFRXETHOFT = 0xbBc424e58ED38dd911309611ae2d7A23014Bd960; + address internal constant SFRXUSDOFT = 0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126; + address internal constant WFRAXOFT = 0x04ACaF8D2865c0714F79da09645C13FD2888977f; + address internal constant REMOTEHOP = 0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E; + address internal constant REMOTEMINTREDEEMHOP = 0x99B5587ab54A49e3F827D10175Caf69C0187bfA8; } abstract contract AddressHelperMainnet is TestBase { @@ -2275,5 +2283,13 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0xC36442b4a4522E871399CD717aBDD847Ab11FE88, "Constants.ETH_NON_FUNGIBLE_POSITION_MANAGER"); vm.label(0xE592427A0AEce92De3Edee1F18E0157C05861564, "Constants.ETH_SWAPROUTER"); vm.label(0x1F98431c8aD98523631AE4a59f267346ea31F984, "Constants.ETH_UNISWAP_V3_FACTORY"); + vm.label(0x9033BAD7aA130a2466060A2dA71fAe2219781B4b, "Constants.ETH_FPIOFT"); + vm.label(0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6, "Constants.ETH_FRXETHOFT"); + vm.label(0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0, "Constants.ETH_FRXUSDOFT"); + vm.label(0xbBc424e58ED38dd911309611ae2d7A23014Bd960, "Constants.ETH_SFRXETHOFT"); + vm.label(0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126, "Constants.ETH_SFRXUSDOFT"); + vm.label(0x04ACaF8D2865c0714F79da09645C13FD2888977f, "Constants.ETH_WFRAXOFT"); + vm.label(0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E, "Constants.ETH_REMOTEHOP"); + vm.label(0x99B5587ab54A49e3F827D10175Caf69C0187bfA8, "Constants.ETH_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/Mode.sol b/src/contracts/chain-constants/Mode.sol new file mode 100644 index 0000000..7f1d567 --- /dev/null +++ b/src/contracts/chain-constants/Mode.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Mode { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x486cb4788f1be7cdef9301a7a637b451df3cf262; + address internal constant REMOTEMINTREDEEMHOP = 0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9; +} + +abstract contract AddressHelperMode is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); + vm.label(0x486cb4788f1be7cdef9301a7a637b451df3cf262, "Constants.undefined_REMOTEHOP"); + vm.label(0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9, "Constants.undefined_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Optimism.sol b/src/contracts/chain-constants/Optimism.sol index 4163704..7edd520 100644 --- a/src/contracts/chain-constants/Optimism.sol +++ b/src/contracts/chain-constants/Optimism.sol @@ -50,6 +50,14 @@ library Optimism { address internal constant FPI_COMPTROLLER = 0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635; address internal constant CURVE_4POOL = 0x3da3153E26A230d918bb9F9428A8d60349B73379; address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = 0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x31D982ebd82Ad900358984bd049207A4c2468640; + address internal constant REMOTEMINTREDEEMHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; } abstract contract AddressHelperOptimism is TestBase { @@ -116,5 +124,13 @@ abstract contract AddressHelperOptimism is TestBase { vm.label(0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635, "Constants.OPTI_FPI_COMPTROLLER"); vm.label(0x3da3153E26A230d918bb9F9428A8d60349B73379, "Constants.OPTI_CURVE_4POOL"); vm.label(0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197, "Constants.OPTI_KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.OPTI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.OPTI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.OPTI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.OPTI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.OPTI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.OPTI_WFRAXOFT"); + vm.label(0x31D982ebd82Ad900358984bd049207A4c2468640, "Constants.OPTI_REMOTEHOP"); + vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.OPTI_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/Plumephoenix.sol b/src/contracts/chain-constants/Plumephoenix.sol new file mode 100644 index 0000000..2cadf56 --- /dev/null +++ b/src/contracts/chain-constants/Plumephoenix.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Plumephoenix { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; + address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; +} + +abstract contract AddressHelperPlumephoenix is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.PLUME_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.PLUME_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.PLUME_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.PLUME_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.PLUME_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.PLUME_WFRAXOFT"); + vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.PLUME_REMOTEHOP"); + vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.PLUME_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Polygon.sol b/src/contracts/chain-constants/Polygon.sol index 2ef1bca..3d55fc2 100644 --- a/src/contracts/chain-constants/Polygon.sol +++ b/src/contracts/chain-constants/Polygon.sol @@ -51,6 +51,14 @@ library Polygon { address internal constant DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = 0xfC2e89aabD257471a461dd506188609B2Bec53Fa; address internal constant FRAX3POOL = 0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac; address internal constant HOP_LP_USDC = 0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C; + address internal constant REMOTEMINTREDEEMHOP = 0x5658e82E330e094627D9b362ed0E137eA06673C4; } abstract contract AddressHelperPolygon is TestBase { @@ -112,5 +120,13 @@ abstract contract AddressHelperPolygon is TestBase { vm.label(0xfC2e89aabD257471a461dd506188609B2Bec53Fa, "Constants.POLY_DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX"); vm.label(0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac, "Constants.POLY_FRAX3POOL"); vm.label(0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A, "Constants.POLY_HOP_LP_USDC"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_WFRAXOFT"); + vm.label(0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C, "Constants.POLY_REMOTEHOP"); + vm.label(0x5658e82E330e094627D9b362ed0E137eA06673C4, "Constants.POLY_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/PolygonzkEVM.sol b/src/contracts/chain-constants/PolygonzkEVM.sol index c17931e..7df7f43 100644 --- a/src/contracts/chain-constants/PolygonzkEVM.sol +++ b/src/contracts/chain-constants/PolygonzkEVM.sol @@ -32,6 +32,14 @@ library PolygonzkEVM { address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant COMBO_ORACLE = 0x030BD43af99cb72B51dA233A73F7697Cd2461C0b; address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D; + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; + address internal constant REMOTEMINTREDEEMHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; } abstract contract AddressHelperPolygonzkEVM is TestBase { @@ -80,5 +88,13 @@ abstract contract AddressHelperPolygonzkEVM is TestBase { vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CREWMEMBER"); vm.label(0x030BD43af99cb72B51dA233A73F7697Cd2461C0b, "Constants.POLY_ZKEVM_COMBO_ORACLE"); vm.label(0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D, "Constants.POLY_ZKEVM_COMBO_ORACLE_UNIV2_UNIV3"); + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_ZKEVM_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_ZKEVM_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_ZKEVM_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_ZKEVM_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_ZKEVM_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_ZKEVM_WFRAXOFT"); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.POLY_ZKEVM_REMOTEHOP"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.POLY_ZKEVM_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/Scroll.sol b/src/contracts/chain-constants/Scroll.sol new file mode 100644 index 0000000..e14078f --- /dev/null +++ b/src/contracts/chain-constants/Scroll.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Scroll { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xf6f45ccb5e85d1400067ee66f9e168f83e86124e; + address internal constant REMOTEMINTREDEEMHOP = 0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558; +} + +abstract contract AddressHelperScroll is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SCROLL_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SCROLL_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SCROLL_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SCROLL_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SCROLL_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SCROLL_WFRAXOFT"); + vm.label(0xf6f45ccb5e85d1400067ee66f9e168f83e86124e, "Constants.SCROLL_REMOTEHOP"); + vm.label(0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558, "Constants.SCROLL_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Solana.sol b/src/contracts/chain-constants/Solana.sol new file mode 100644 index 0000000..bc29b3a --- /dev/null +++ b/src/contracts/chain-constants/Solana.sol @@ -0,0 +1,42 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + + library Solana { + string internal constant FPIOFT = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH"; + string internal constant FRXETHOFT = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf"; + string internal constant FRXUSDOFT = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw"; + string internal constant SFRXETHOFT = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv"; + string internal constant SFRXUSDOFT = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45"; + string internal constant WFRAXOFT = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga"; + bytes32 internal constant FPIOFT_BYTES32 = 0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0; + bytes32 internal constant FRXETHOFT_BYTES32 = 0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3; + bytes32 internal constant FRXUSDOFT_BYTES32 = 0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad; + bytes32 internal constant SFRXETHOFT_BYTES32 = 0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61; + bytes32 internal constant SFRXUSDOFT_BYTES32 = 0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf; + bytes32 internal constant WFRAXOFT_BYTES32 = 0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa; +} + +abstract contract AddressHelperSolana is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH, "Constants.SOL_FPIOFT"); + vm.label(5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf, "Constants.SOL_FRXETHOFT"); + vm.label(GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw, "Constants.SOL_FRXUSDOFT"); + vm.label(58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv, "Constants.SOL_SFRXETHOFT"); + vm.label(DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45, "Constants.SOL_SFRXUSDOFT"); + vm.label(zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga, "Constants.SOL_WFRAXOFT"); + vm.label(0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0, "Constants.SOL_FPIOFT_BYTES32"); + vm.label(0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3, "Constants.SOL_FRXETHOFT_BYTES32"); + vm.label(0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad, "Constants.SOL_FRXUSDOFT_BYTES32"); + vm.label(0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61, "Constants.SOL_SFRXETHOFT_BYTES32"); + vm.label(0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf, "Constants.SOL_SFRXUSDOFT_BYTES32"); + vm.label(0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa, "Constants.SOL_WFRAXOFT_BYTES32"); + } +} diff --git a/src/contracts/chain-constants/Sonic.sol b/src/contracts/chain-constants/Sonic.sol new file mode 100644 index 0000000..0cf4ee6 --- /dev/null +++ b/src/contracts/chain-constants/Sonic.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Sonic { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23; + address internal constant REMOTEMINTREDEEMHOP = 0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b; +} + +abstract contract AddressHelperSonic is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SONIC_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SONIC_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SONIC_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SONIC_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SONIC_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SONIC_WFRAXOFT"); + vm.label(0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23, "Constants.SONIC_REMOTEHOP"); + vm.label(0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b, "Constants.SONIC_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Unichain.sol b/src/contracts/chain-constants/Unichain.sol new file mode 100644 index 0000000..d66e7f4 --- /dev/null +++ b/src/contracts/chain-constants/Unichain.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Unichain { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; + address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; +} + +abstract contract AddressHelperUnichain is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.UNI_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.UNI_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.UNI_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.UNI_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.UNI_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.UNI_WFRAXOFT"); + vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.UNI_REMOTEHOP"); + vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.UNI_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/Worldchain.sol b/src/contracts/chain-constants/Worldchain.sol new file mode 100644 index 0000000..05d81c1 --- /dev/null +++ b/src/contracts/chain-constants/Worldchain.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Worldchain { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x938d99A81814f66b01010d19DDce92A633441699; + address internal constant REMOTEMINTREDEEMHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; +} + +abstract contract AddressHelperWorldchain is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.WRLD_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.WRLD_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.WRLD_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.WRLD_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.WRLD_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.WRLD_WFRAXOFT"); + vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.WRLD_REMOTEHOP"); + vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.WRLD_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/XLayer.sol b/src/contracts/chain-constants/XLayer.sol new file mode 100644 index 0000000..757076d --- /dev/null +++ b/src/contracts/chain-constants/XLayer.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library XLayer { + address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; + address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; + address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; + address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; + address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; + address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; + address internal constant REMOTEHOP = 0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396; + address internal constant REMOTEMINTREDEEMHOP = 0x45c6852a5188ce1905567ea83454329bd4982007; +} + +abstract contract AddressHelperXLayer is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.XLAYER_FPIOFT"); + vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.XLAYER_FRXETHOFT"); + vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.XLAYER_FRXUSDOFT"); + vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.XLAYER_SFRXETHOFT"); + vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.XLAYER_SFRXUSDOFT"); + vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.XLAYER_WFRAXOFT"); + vm.label(0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396, "Constants.XLAYER_REMOTEHOP"); + vm.label(0x45c6852a5188ce1905567ea83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); + } +} diff --git a/src/contracts/chain-constants/ZkSync.sol b/src/contracts/chain-constants/ZkSync.sol new file mode 100644 index 0000000..9284e34 --- /dev/null +++ b/src/contracts/chain-constants/ZkSync.sol @@ -0,0 +1,34 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library ZkSync { + address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; + address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; + address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; + address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; + address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; + address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; + address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; + address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; +} + +abstract contract AddressHelperZkSync is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { + vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.undefined_FPIOFT"); + vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.undefined_FRXETHOFT"); + vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.undefined_FRXUSDOFT"); + vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.undefined_SFRXETHOFT"); + vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.undefined_SFRXUSDOFT"); + vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.undefined_WFRAXOFT"); + vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.undefined_REMOTEHOP"); + vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.undefined_REMOTEMINTREDEEMHOP"); + } +} From eed5483b17b0d5df613e191675692ffb9d6495fe Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 23 Sep 2025 08:43:23 +0000 Subject: [PATCH 04/27] (chore): rm label for nonevm --- scripts/constants/index.ts | 1 + scripts/generateConstants.ts | 17 +- src/Constants.sol | 56 +- src/Constants1.sol | 4145 -------------------- src/contracts/chain-constants/Aptos.sol | 21 - src/contracts/chain-constants/Movement.sol | 21 + src/contracts/chain-constants/Solana.sol | 23 +- 7 files changed, 48 insertions(+), 4236 deletions(-) delete mode 100644 src/Constants1.sol create mode 100644 src/contracts/chain-constants/Movement.sol diff --git a/scripts/constants/index.ts b/scripts/constants/index.ts index 5c85db3..94afcd4 100644 --- a/scripts/constants/index.ts +++ b/scripts/constants/index.ts @@ -22,6 +22,7 @@ export * as Mainnet from "./mainnet"; export * as Mode from "./mode"; export * as Moonbeam from "./moonbeam"; export * as Moonriver from "./moonriver"; +export * as Movement from "./movement"; export * as Optimism from "./optimism"; export * as Plumephoenix from "./plumephoenix"; export * as Polygon from "./polygon"; diff --git a/scripts/generateConstants.ts b/scripts/generateConstants.ts index b951e05..d2d0ad7 100644 --- a/scripts/generateConstants.ts +++ b/scripts/generateConstants.ts @@ -25,6 +25,7 @@ const networkPrefixes = { Ink: "INK", Katana: "KTN", Mainnet: "ETH", + Movement:"MOVE", Moonbeam: "MNBM", Moonriver: "MOVR", Optimism: "OPTI", @@ -122,6 +123,11 @@ async function handleSingleNetwork(networkName, constants, seenValues) { } }); + const contractString = `library ${networkName} { +${constantString} +} +`; + // Generate the labels for the entries const labelStrings = Object.entries(constantsToLabel) .map(([key, value]) => { @@ -132,13 +138,11 @@ async function handleSingleNetwork(networkName, constants, seenValues) { return ` vm.label(${value}, "Constants.${networkPrefixes[networkName]}_${key}");`; }) .join("\n"); - const contractString = `library ${networkName} { -${constantString} -} -`; - // if (networkName == "Mainnet") { - const constantsHelper = ` + let constantsHelper = ""; + + if (networkName != "Aptos" && networkName != "Movement" && networkName != "Solana") { + constantsHelper = constantsHelper + ` abstract contract AddressHelper${networkName} is TestBase { constructor() { labelConstants(); @@ -149,6 +153,7 @@ ${labelStrings} } } `; + } return contractString + constantsHelper; // } // return contractString; diff --git a/src/Constants.sol b/src/Constants.sol index 0d0571b..0a8bf4c 100644 --- a/src/Constants.sol +++ b/src/Constants.sol @@ -46,27 +46,6 @@ library Aptos { bytes32 internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; bytes32 internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; } - -abstract contract AddressHelperAptos is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2, "Constants.APT_FPI"); - vm.label(0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585, "Constants.APT_FRXETH"); - vm.label(0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5, "Constants.APT_FRXUSD"); - vm.label(0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a, "Constants.APT_SFRXETH"); - vm.label(0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2, "Constants.APT_SFRXUSD"); - vm.label(0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300, "Constants.APT_WFRAX"); - vm.label(0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864, "Constants.APT_FPIOFT"); - vm.label(0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c, "Constants.APT_FRXETHOFT"); - vm.label(0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b, "Constants.APT_FRXUSDOFT"); - vm.label(0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356, "Constants.APT_SFRXETHOFT"); - vm.label(0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9, "Constants.APT_SFRXUSDOFT"); - vm.label(0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2, "Constants.APT_WFRAXOFT"); - } -} library Arbitrum { address internal constant FRAX = 0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F; address internal constant FXS = 0x9d2F299715D94d8A7E6F5eaa8E654E8c74a988A7; @@ -3644,6 +3623,20 @@ abstract contract AddressHelperMoonriver is TestBase { vm.label(0xc0EAB66DaDC825c95cA1951A2B02BC56073Fc7B2, "Constants.MOVR_SUSHI_CANFXS_ANYUSDC"); } } +library Movement { + bytes32 internal constant FPI = 0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2; + bytes32 internal constant FRXETH = 0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585; + bytes32 internal constant FRXUSD = 0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5; + bytes32 internal constant SFRXETH = 0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a; + bytes32 internal constant SFRXUSD = 0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2; + bytes32 internal constant WFRAX = 0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300; + bytes32 internal constant FPIOFT = 0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864; + bytes32 internal constant FRXETHOFT = 0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c; + bytes32 internal constant FRXUSDOFT = 0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b; + bytes32 internal constant SFRXETHOFT = 0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356; + bytes32 internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; + bytes32 internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; +} library Optimism { address internal constant FRAX = 0x2E3D870790dC77A83DD1d18184Acc7439A53f475; address internal constant FXS = 0x67CCEA5bb16181E7b4109c9c2143c24a1c2205Be; @@ -3987,27 +3980,6 @@ library Solana { bytes32 internal constant SFRXUSDOFT_BYTES32 = 0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf; bytes32 internal constant WFRAXOFT_BYTES32 = 0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa; } - -abstract contract AddressHelperSolana is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH, "Constants.SOL_FPIOFT"); - vm.label(5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf, "Constants.SOL_FRXETHOFT"); - vm.label(GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw, "Constants.SOL_FRXUSDOFT"); - vm.label(58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv, "Constants.SOL_SFRXETHOFT"); - vm.label(DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45, "Constants.SOL_SFRXUSDOFT"); - vm.label(zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga, "Constants.SOL_WFRAXOFT"); - vm.label(0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0, "Constants.SOL_FPIOFT_BYTES32"); - vm.label(0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3, "Constants.SOL_FRXETHOFT_BYTES32"); - vm.label(0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad, "Constants.SOL_FRXUSDOFT_BYTES32"); - vm.label(0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61, "Constants.SOL_SFRXETHOFT_BYTES32"); - vm.label(0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf, "Constants.SOL_SFRXUSDOFT_BYTES32"); - vm.label(0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa, "Constants.SOL_WFRAXOFT_BYTES32"); - } -} library Sonic { address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; diff --git a/src/Constants1.sol b/src/Constants1.sol deleted file mode 100644 index 219fe9d..0000000 --- a/src/Constants1.sol +++ /dev/null @@ -1,4145 +0,0 @@ -// SPDX-License-Identifier: ISC -pragma solidity >=0.8.0; - -// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. - -import { TestBase } from "forge-std/Test.sol"; - - library Abstract { - address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; - address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; - address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; - address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; - address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; - address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; - address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; - address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; -} - -abstract contract AddressHelperAbstract is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.ABS_FPIOFT"); - vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.ABS_FRXETHOFT"); - vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.ABS_FRXUSDOFT"); - vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.ABS_SFRXETHOFT"); - vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.ABS_SFRXUSDOFT"); - vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.ABS_WFRAXOFT"); - vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.ABS_REMOTEHOP"); - vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.ABS_REMOTEMINTREDEEMHOP"); - } -} -library Aptos { - address internal constant FPI = 0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2; - address internal constant FRXETH = 0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585; - address internal constant FRXUSD = 0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5; - address internal constant SFRXETH = 0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a; - address internal constant SFRXUSD = 0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2; - address internal constant WFRAX = 0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300; - address internal constant FPIOFT = 0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864; - address internal constant FRXETHOFT = 0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c; - address internal constant FRXUSDOFT = 0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b; - address internal constant SFRXETHOFT = 0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356; - address internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; - address internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; -} - -abstract contract AddressHelperAptos is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2, "Constants.APT_FPI"); - vm.label(0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585, "Constants.APT_FRXETH"); - vm.label(0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5, "Constants.APT_FRXUSD"); - vm.label(0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a, "Constants.APT_SFRXETH"); - vm.label(0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2, "Constants.APT_SFRXUSD"); - vm.label(0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300, "Constants.APT_WFRAX"); - vm.label(0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864, "Constants.APT_FPIOFT"); - vm.label(0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c, "Constants.APT_FRXETHOFT"); - vm.label(0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b, "Constants.APT_FRXUSDOFT"); - vm.label(0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356, "Constants.APT_SFRXETHOFT"); - vm.label(0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9, "Constants.APT_SFRXUSDOFT"); - vm.label(0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2, "Constants.APT_WFRAXOFT"); - } -} -library Arbitrum { - address internal constant FRAX = 0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F; - address internal constant FXS = 0x9d2F299715D94d8A7E6F5eaa8E654E8c74a988A7; - address internal constant FPI = 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09; - address internal constant FPIS = 0x3405E88af759992937b84E58F2Fe691EF0EeA320; - address internal constant FRXETH = 0x178412e79c25968a32e89b11f63B33F733770c2A; - address internal constant SFRXETH = 0x95aB45875cFFdba1E5f451B950bC2E42c0053f39; - address internal constant SFRAX = 0xe3b3FE7bcA19cA77Ad877A5Bebab186bEcfAD906; - address internal constant ARBIDEX_FRAX_DAI_PLUS = 0x56328f7138C3A4ebD2Bb1D126d28f62FcD5bac5d; - address internal constant ARBIDEX_FRAX_FRXETH = 0x436eE91dB228267c6a19b2A3F158fffCe5a4489c; - address internal constant ARBIDEX_FRAX_USD_PLUS = 0xe876230251cc14Ec0027b2a4aFc46B4c262d13D0; - address internal constant ARBIDEX_FRAX_USDCE = 0x11205af33F2F7006bB932953b10Ab5EeD78105Ca; - address internal constant ARBIDEX_FRAX_WETH = 0xf0677E33Fa38A023ec798F97D195d85d19823e7C; - address internal constant ARBIDEX_FRXETH_WETH = 0xc74c0Fcb777521F3D8747f338a024e9F3fD91608; - address internal constant CHRONOS_SAMM_FRAX_MAI = 0x1371512f45d85e6247aBfA2926Ac5213324a6BEB; - address internal constant CHRONOS_SAMM_FRAX_USD_PLUS = 0xaF618E6F5EF781e3aCFe00708BD005E0cc9A2e6F; - address internal constant CHRONOS_SAMM_FRXETH_SFRXETH = 0x548e0D4Fcb6b82a025E6770066b4127C5FCcBF07; - address internal constant CHRONOS_SAMM_FRXETH_WETH = 0x9A028F3Dd7067479b51ee89CDb0Db594744ebfAd; - address internal constant CONVEX_FRAXBP_ARBITRUM = 0x421Efd53FA0d90687db5ef370D5DCD7f89CbD9dE; - address internal constant CONVEX_FRAX_FXB_20241231_ARBITRUM = 0xB8c52da3db9EdF9Da6a20959410B007a2387E5a2; - address internal constant CONVEX_FRAX_FXB_20261231_ARBITRUM = 0xA81F4b86B412CcB51C7420000F59a639F3459f49; - address internal constant CONVEX_FRXETH_WETH_ARBITRUM = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; - address internal constant CONVEX_HFXB_FRAX_ARBITRUM = 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; - address internal constant CONVEX_USD_PLUS_FRAXBP = 0x56390acF12bce9675ab3922060D8d955149BE286; - address internal constant CURVE_VSTFRAX_F = 0x127963A74c07f72D862F2Bdc225226c3251BD117; - address internal constant DFORCE_FRAX_LENDING_ARBITRUM = 0xb3ab7148cCCAf66686AD6C1bE24D83e58E6a504e; - address internal constant HUNDRED_FRAX_LENDING_ARBITRUM = 0xd7f3Bf2085AD32ff95E1bCC408d37F10f6949270; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = 0xbAFA44EFE7901E04E39Dad13167D089C559c1138; - address internal constant RAMSES_CRAMM_FRAX_DOLA = 0xF8719BC4a1A81969F00233a8D9409755d4366d28; - address internal constant RAMSES_CRAMM_FRAX_MAI = 0x385E1c3f90C52f5253EaBb015576E95a4886E552; - address internal constant RAMSES_CRAMM_FRAX_USDC = 0x22B6C54dC1cCD6CDF53723BEc88327c908258367; - address internal constant RAMSES_CRAMM_FRXETH_SFRXETH = 0x11C1060e12F3Ec480D47AD867583353496a1B0b8; - address internal constant RAMSES_CRAMM_FRXETH_WETH = 0x148Ca200d452AD9F310501ca3fd5C3bD4a5aBe81; - address internal constant RAMSES_VRAMM_FRAX_AGEUR = 0x0A923435Eb4C3FC740bbA0c000F16Cb1F6cd7Afb; - address internal constant RAMSES_VRAMM_FRAX_FXS = 0xdf725A7315d3d246a39C8887870f6cb0Fe73e36d; - address internal constant SADDLE_ARBUSD_V2_ARBITRUM = 0x6e1af6FB2B4006603c65dD8FC7796Ccff09c86a1; - address internal constant SADDLE_FRAXBP_USDS_ARBITRUM = 0x289532cA1DccE36D05e19Af468EC46fc9CB1390E; - address internal constant SADDLE_FRAXBP_USDT_ARBITRUM = 0xb306b7E9D895748A2779586C83112035D8223C7F; - address internal constant SADDLE_FRAXBP_USX_ARBITRUM = 0x0A18D5679C5c8b56Da0D87E308DB9EE2db701BaC; - address internal constant SADDLE_FRAX_USDC_BP_ARBITRUM = 0xBBcaeA4e732173C0De28397421c17A595372C9CF; - address internal constant SADDLE_L2D4_ARBITRUM = 0xd1dF24e8D225b20F9c8f4912BE88cCCec93f36E5; - address internal constant SENTIMENT_LFRAX = 0xcdE7054e7a232938CdDe8BF40faf827e6f377f54; - address internal constant STARGATE_BRIDGE_LIQUIDITY_FRAX_ARBITRUM = 0xeA8DfEE1898a7e0a59f7527F076106d7e44c2176; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FERRY_TO_POLYGON = 0xe57314D4405289FfC91306E4574C28b7394c4822; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = 0x078Dd77De4e0f480D7442495d55707cE071B4B09; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; - address internal constant FRAXLEND_WHITELIST_ADDRESS = 0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079; - address internal constant FRAXLEND_HOT_WALLET = 0xdB3388e770F49A604E11f1a2084B39279492a61f; - address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d; - address internal constant FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = 0xc70CC721d19dC7e627B81fEacb6a357Fb11200Af; - address internal constant FRAXLEND_PAIR_ARB_FRAX = 0x2D0483FefAbA4325c7521539a3DFaCf94A19C472; - address internal constant ARBITRUM_DUAL_ORACLE_ADDRESS = 0x5985FBb03b6A5EA390871c2bB9742cD406575667; - address internal constant ARB_ETH_UNI_V3_POOL = 0xC6F780497A95e246EB9449f5e4770916DCd6396A; - address internal constant ARB_USD_CHAINLINK_ORACLE = 0xb2A824043730FE05F3DA2efaFa1CBbe83fa548D6; - address internal constant ETH_USD_CHAINLINK_ORACLE = 0x639Fe6ab55C921f74e7fac1ee960C0B6293ba612; - address internal constant ARB_ERC20 = 0x912CE59144191C1204E64559FE8253a0e49E6548; - address internal constant WETH_ERC20 = 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1; - address internal constant FRAX_ERC20 = 0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F; - address internal constant VARIABLE_RATE_V2 = 0x6c1b76Ca12d74970d40Aec4d6f2E3A653CC58685; - address internal constant FRAXLEND_PAIR_GMX_FRAX = 0x6076ebDFE17555ed3E6869CF9C373Bbd9aD55d38; - address internal constant GMX_DUAL_ORACLE_ADDRESS = 0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3; - address internal constant GMX_ERC20 = 0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a; - address internal constant FRAXLENDPAIR_WBTC_FRAX = 0x9168AC3a83A31bd85c93F4429a84c05db2CaEF08; - address internal constant WBTC_DUAL_ORACLE_ADDRESS = 0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617; - address internal constant WBTC_ERC20 = 0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f; - address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; - address internal constant FRAXSWAP_FACTORY_V2 = 0x8374A74A728f06bEa6B7259C68AA7BBB732bfeaD; - address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; - address internal constant FRAXSWAP_ROUTER_V2 = 0xCAAaB0A72f781B92bA63Af27477aA46aB8F653E7; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; - address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; - address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; - address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; - address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; - address internal constant FRAX_AMO_MINTER_LAYER_2 = 0x1c5400491fE82EE8FC21489C51e402B3c8a2fB81; - address internal constant FRAXLEND_AMO = 0xCDeE1B853AD2E96921250775b7A60D6ff78fD8B4; - address internal constant CIRCUIT_BREAKER_ADDRESS = 0xDF85346111C0F9680a77d4c496b6fd5278516fa6; - address internal constant FPI_COMPTROLLER = 0xF0D5007dB0393c9D5F6A88A5F82Df520EA483fDb; - address internal constant FRAXLEND_COMPTROLLER_ADDRESS = 0x0B6A2B7fc025ce864A7CBF9df6e940C614C31f74; - address internal constant FRAX_MASTER_MULTISIG_ADDRESS = 0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10; - address internal constant MAIN_COMPTROLLER = 0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10; - address internal constant TIMELOCK_ADDRESS = 0xB426B13372B7c967C4a2371B5e95FC7dc37545Db; - address internal constant CURVE4POOL = 0x1C5ffa4FB4907B681c61B8c82b28C4672ceb1974; - address internal constant CVXFRAXBP = 0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0; - address internal constant CVXFRAXBP_REWARDER = 0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0; - address internal constant CVXFRAXFXB_20241231_ARBITRUM = 0xCDA69af1077765a89eA156aCe7a6f8b476e4aF12; - address internal constant CVXFRAXFXB_20261231_ARBITRUM = 0x2026681d569f80aE0A86D7c90bc81065D9A3AD42; - address internal constant CVXFRXETHWETH = 0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3; - address internal constant CVXFRXETHWETH_REWARDER = 0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3; - address internal constant CVXHFXBFRAX = 0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6; - address internal constant CVXHFXBFRAX_REWARDER = 0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6; - address internal constant CVXUSDPLUSFRAXBP = 0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9; - address internal constant CVXUSDPLUSFRAXBP_REWARDER = 0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9; - address internal constant FRAX2POOL = 0xf07d553B195080F84F582e88ecdD54bAa122b279; - address internal constant FRAXBP = 0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5; - address internal constant FRAXBP_GAUGE = 0x95285Ea6fF14F80A2fD3989a6bAb993Bd6b5fA13; - address internal constant FRAXBP_POOL = 0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5; - address internal constant FRAXFXB_20241231 = 0xE920eEdAff6c3BEd1Ef61010B64d46986634E908; - address internal constant FRAXFXB_20241231_GAUGE = 0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68; - address internal constant FRAXFXB_20241231_POOL = 0xE920eEdAff6c3BEd1Ef61010B64d46986634E908; - address internal constant FRAXFXB_20261231 = 0x946adc524BD312D036776798c46ceDD948DD0A0f; - address internal constant FRAXFXB_20261231_GAUGE = 0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9; - address internal constant FRAXFXB_20261231_POOL = 0x946adc524BD312D036776798c46ceDD948DD0A0f; - address internal constant FRXETHWETH = 0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523; - address internal constant FRXETHWETH_GAUGE = 0x46FEc59Eb30C2D610917ebf4CE5114f7425b2c4A; - address internal constant FRXETHWETH_POOL = 0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523; - address internal constant HFRAX = 0xb1c4426C86082D91a6c097fC588E5D5d8dD1f5a8; - address internal constant HFXBFRAX = 0x8f5d46267EB52F3aA6E141004A781469D445888c; - address internal constant HFXBFRAX_GAUGE = 0x725E997571F4fD144bB741762E8fA9f1D11761a7; - address internal constant HFXBFRAX_POOL = 0x8f5d46267EB52F3aA6E141004A781469D445888c; - address internal constant LFRAX = 0x2E9963ae673A885b6bfeDa2f80132CE28b784C40; - address internal constant SADDLEARBUSDV2 = 0x0a20c2FFa10cD43F67D06170422505b7D6fC0953; - address internal constant SADDLEL2D4 = 0x147D0Af556C6D89640BFa915D2b9619d7b55947a; - address internal constant SADDLEL2D4_PERMISSIONLESS_SWAP = 0xF2839E0b30B5e96083085F498b14bbc12530b734; - address internal constant SDL_ARBUSDV2 = 0x0a20c2FFa10cD43F67D06170422505b7D6fC0953; - address internal constant SDL_ARBUSDV2_POOL = 0xfeEa4D1BacB0519E8f952460A70719944fe56Ee0; - address internal constant SDL_FRAXBP = 0x896935B02D3cBEb152192774e4F1991bb1D2ED3f; - address internal constant SDL_FRAXBP_POOL = 0x401AFbc31ad2A3Bc0eD8960d63eFcDEA749b4849; - address internal constant SDL_USDSFRAXBP = 0x1e491122f3C096392b40a4EA27aa1a29360d38a1; - address internal constant SDL_USDSFRAXBP_POOL = 0xa5bD85ed9fA27ba23BfB702989e7218E44fd4706; - address internal constant SDL_USDTFRAXBP = 0x166680852ae9Dec3d63374c5eBf89E974448BFE9; - address internal constant SDL_USDTFRAXBP_POOL = 0xf8504e92428d65E56e495684A38f679C1B1DC30b; - address internal constant SDL_USXFRAXBP = 0x721DaC7d5ACc8Aa62946fd583C1F999e1570b97D; - address internal constant SDL_USXFRAXBP_POOL = 0xb2a2764D0DCAB445E24f4b813bE3f6ef8AE5f84D; - address internal constant USDPLUSFRAXBP = 0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013; - address internal constant USDPLUSFRAXBP_GAUGE = 0x4645e6476D3A5595Be9Efd39426cc10586a8393D; - address internal constant USDPLUSFRAXBP_POOL = 0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013; - address internal constant VECHR = 0x9A01857f33aa382b1d5bb96C3180347862432B0d; - address internal constant VERAM = 0xAAA343032aA79eE9a6897Dab03bef967c3289a06; - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A; - address internal constant REMOTEMINTREDEEMHOP = 0xa46A266dCBf199a71532c76967e200994C5A0D6d; -} - -abstract contract AddressHelperArbitrum is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F, "Constants.ARBI_FRAX"); - vm.label(0x9d2F299715D94d8A7E6F5eaa8E654E8c74a988A7, "Constants.ARBI_FXS"); - vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.ARBI_FPI"); - vm.label(0x3405E88af759992937b84E58F2Fe691EF0EeA320, "Constants.ARBI_FPIS"); - vm.label(0x178412e79c25968a32e89b11f63B33F733770c2A, "Constants.ARBI_FRXETH"); - vm.label(0x95aB45875cFFdba1E5f451B950bC2E42c0053f39, "Constants.ARBI_SFRXETH"); - vm.label(0xe3b3FE7bcA19cA77Ad877A5Bebab186bEcfAD906, "Constants.ARBI_SFRAX"); - vm.label(0x56328f7138C3A4ebD2Bb1D126d28f62FcD5bac5d, "Constants.ARBI_ARBIDEX_FRAX_DAI_PLUS"); - vm.label(0x436eE91dB228267c6a19b2A3F158fffCe5a4489c, "Constants.ARBI_ARBIDEX_FRAX_FRXETH"); - vm.label(0xe876230251cc14Ec0027b2a4aFc46B4c262d13D0, "Constants.ARBI_ARBIDEX_FRAX_USD_PLUS"); - vm.label(0x11205af33F2F7006bB932953b10Ab5EeD78105Ca, "Constants.ARBI_ARBIDEX_FRAX_USDCE"); - vm.label(0xf0677E33Fa38A023ec798F97D195d85d19823e7C, "Constants.ARBI_ARBIDEX_FRAX_WETH"); - vm.label(0xc74c0Fcb777521F3D8747f338a024e9F3fD91608, "Constants.ARBI_ARBIDEX_FRXETH_WETH"); - vm.label(0x1371512f45d85e6247aBfA2926Ac5213324a6BEB, "Constants.ARBI_CHRONOS_SAMM_FRAX_MAI"); - vm.label(0xaF618E6F5EF781e3aCFe00708BD005E0cc9A2e6F, "Constants.ARBI_CHRONOS_SAMM_FRAX_USD_PLUS"); - vm.label(0x548e0D4Fcb6b82a025E6770066b4127C5FCcBF07, "Constants.ARBI_CHRONOS_SAMM_FRXETH_SFRXETH"); - vm.label(0x9A028F3Dd7067479b51ee89CDb0Db594744ebfAd, "Constants.ARBI_CHRONOS_SAMM_FRXETH_WETH"); - vm.label(0x421Efd53FA0d90687db5ef370D5DCD7f89CbD9dE, "Constants.ARBI_CONVEX_FRAXBP_ARBITRUM"); - vm.label(0xB8c52da3db9EdF9Da6a20959410B007a2387E5a2, "Constants.ARBI_CONVEX_FRAX_FXB_20241231_ARBITRUM"); - vm.label(0xA81F4b86B412CcB51C7420000F59a639F3459f49, "Constants.ARBI_CONVEX_FRAX_FXB_20261231_ARBITRUM"); - vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.ARBI_CONVEX_FRXETH_WETH_ARBITRUM"); - vm.label(0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, "Constants.ARBI_CONVEX_HFXB_FRAX_ARBITRUM"); - vm.label(0x56390acF12bce9675ab3922060D8d955149BE286, "Constants.ARBI_CONVEX_USD_PLUS_FRAXBP"); - vm.label(0x127963A74c07f72D862F2Bdc225226c3251BD117, "Constants.ARBI_CURVE_VSTFRAX_F"); - vm.label(0xb3ab7148cCCAf66686AD6C1bE24D83e58E6a504e, "Constants.ARBI_DFORCE_FRAX_LENDING_ARBITRUM"); - vm.label(0xd7f3Bf2085AD32ff95E1bCC408d37F10f6949270, "Constants.ARBI_HUNDRED_FRAX_LENDING_ARBITRUM"); - vm.label(0xbAFA44EFE7901E04E39Dad13167D089C559c1138, "Constants.ARBI_KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM"); - vm.label(0xF8719BC4a1A81969F00233a8D9409755d4366d28, "Constants.ARBI_RAMSES_CRAMM_FRAX_DOLA"); - vm.label(0x385E1c3f90C52f5253EaBb015576E95a4886E552, "Constants.ARBI_RAMSES_CRAMM_FRAX_MAI"); - vm.label(0x22B6C54dC1cCD6CDF53723BEc88327c908258367, "Constants.ARBI_RAMSES_CRAMM_FRAX_USDC"); - vm.label(0x11C1060e12F3Ec480D47AD867583353496a1B0b8, "Constants.ARBI_RAMSES_CRAMM_FRXETH_SFRXETH"); - vm.label(0x148Ca200d452AD9F310501ca3fd5C3bD4a5aBe81, "Constants.ARBI_RAMSES_CRAMM_FRXETH_WETH"); - vm.label(0x0A923435Eb4C3FC740bbA0c000F16Cb1F6cd7Afb, "Constants.ARBI_RAMSES_VRAMM_FRAX_AGEUR"); - vm.label(0xdf725A7315d3d246a39C8887870f6cb0Fe73e36d, "Constants.ARBI_RAMSES_VRAMM_FRAX_FXS"); - vm.label(0x6e1af6FB2B4006603c65dD8FC7796Ccff09c86a1, "Constants.ARBI_SADDLE_ARBUSD_V2_ARBITRUM"); - vm.label(0x289532cA1DccE36D05e19Af468EC46fc9CB1390E, "Constants.ARBI_SADDLE_FRAXBP_USDS_ARBITRUM"); - vm.label(0xb306b7E9D895748A2779586C83112035D8223C7F, "Constants.ARBI_SADDLE_FRAXBP_USDT_ARBITRUM"); - vm.label(0x0A18D5679C5c8b56Da0D87E308DB9EE2db701BaC, "Constants.ARBI_SADDLE_FRAXBP_USX_ARBITRUM"); - vm.label(0xBBcaeA4e732173C0De28397421c17A595372C9CF, "Constants.ARBI_SADDLE_FRAX_USDC_BP_ARBITRUM"); - vm.label(0xd1dF24e8D225b20F9c8f4912BE88cCCec93f36E5, "Constants.ARBI_SADDLE_L2D4_ARBITRUM"); - vm.label(0xcdE7054e7a232938CdDe8BF40faf827e6f377f54, "Constants.ARBI_SENTIMENT_LFRAX"); - vm.label(0xeA8DfEE1898a7e0a59f7527F076106d7e44c2176, "Constants.ARBI_STARGATE_BRIDGE_LIQUIDITY_FRAX_ARBITRUM"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_CREWMEMBER"); - vm.label(0xe57314D4405289FfC91306E4574C28b7394c4822, "Constants.ARBI_FERRY_TO_POLYGON"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_FIRST_OFFICER"); - vm.label(0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE"); - vm.label(0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE"); - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE"); - vm.label(0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE"); - vm.label(0x078Dd77De4e0f480D7442495d55707cE071B4B09, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE"); - vm.label(0x1B0b9991Df27a4F2847478127d51Fb29883882f5, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE"); - vm.label(0xf1C16E1c01e62716884ef947063e9C7D44eC287F, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE"); - vm.label(0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079, "Constants.ARBI_FRAXLEND_WHITELIST_ADDRESS"); - vm.label(0xdB3388e770F49A604E11f1a2084B39279492a61f, "Constants.ARBI_FRAXLEND_HOT_WALLET"); - vm.label(0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d, "Constants.ARBI_FRAXLEND_PAIR_REGISTRY_ADDRESS"); - vm.label(0xc70CC721d19dC7e627B81fEacb6a357Fb11200Af, "Constants.ARBI_FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS"); - vm.label(0x2D0483FefAbA4325c7521539a3DFaCf94A19C472, "Constants.ARBI_FRAXLEND_PAIR_ARB_FRAX"); - vm.label(0x5985FBb03b6A5EA390871c2bB9742cD406575667, "Constants.ARBI_ARBITRUM_DUAL_ORACLE_ADDRESS"); - vm.label(0xC6F780497A95e246EB9449f5e4770916DCd6396A, "Constants.ARBI_ARB_ETH_UNI_V3_POOL"); - vm.label(0xb2A824043730FE05F3DA2efaFa1CBbe83fa548D6, "Constants.ARBI_ARB_USD_CHAINLINK_ORACLE"); - vm.label(0x639Fe6ab55C921f74e7fac1ee960C0B6293ba612, "Constants.ARBI_ETH_USD_CHAINLINK_ORACLE"); - vm.label(0x912CE59144191C1204E64559FE8253a0e49E6548, "Constants.ARBI_ARB_ERC20"); - vm.label(0x82aF49447D8a07e3bd95BD0d56f35241523fBab1, "Constants.ARBI_WETH_ERC20"); - vm.label(0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F, "Constants.ARBI_FRAX_ERC20"); - vm.label(0x6c1b76Ca12d74970d40Aec4d6f2E3A653CC58685, "Constants.ARBI_VARIABLE_RATE_V2"); - vm.label(0x6076ebDFE17555ed3E6869CF9C373Bbd9aD55d38, "Constants.ARBI_FRAXLEND_PAIR_GMX_FRAX"); - vm.label(0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3, "Constants.ARBI_GMX_DUAL_ORACLE_ADDRESS"); - vm.label(0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a, "Constants.ARBI_GMX_ERC20"); - vm.label(0x9168AC3a83A31bd85c93F4429a84c05db2CaEF08, "Constants.ARBI_FRAXLENDPAIR_WBTC_FRAX"); - vm.label(0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617, "Constants.ARBI_WBTC_DUAL_ORACLE_ADDRESS"); - vm.label(0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f, "Constants.ARBI_WBTC_ERC20"); - vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.ARBI_FRAXSWAP_FACTORY_V1"); - vm.label(0x8374A74A728f06bEa6B7259C68AA7BBB732bfeaD, "Constants.ARBI_FRAXSWAP_FACTORY_V2"); - vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.ARBI_FRAXSWAP_ROUTER_V1"); - vm.label(0xCAAaB0A72f781B92bA63Af27477aA46aB8F653E7, "Constants.ARBI_FRAXSWAP_ROUTER_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.ARBI_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.ARBI_KYBERSWAP_ELASTIC_FACTORY_V2"); - vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.ARBI_KYBERSWAP_ELASTIC_POS_MGR_V2"); - vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.ARBI_KYBERSWAP_ELASTIC_ROUTER_V2"); - vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.ARBI_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); - vm.label(0x1c5400491fE82EE8FC21489C51e402B3c8a2fB81, "Constants.ARBI_FRAX_AMO_MINTER_LAYER_2"); - vm.label(0xCDeE1B853AD2E96921250775b7A60D6ff78fD8B4, "Constants.ARBI_FRAXLEND_AMO"); - vm.label(0xDF85346111C0F9680a77d4c496b6fd5278516fa6, "Constants.ARBI_CIRCUIT_BREAKER_ADDRESS"); - vm.label(0xF0D5007dB0393c9D5F6A88A5F82Df520EA483fDb, "Constants.ARBI_FPI_COMPTROLLER"); - vm.label(0x0B6A2B7fc025ce864A7CBF9df6e940C614C31f74, "Constants.ARBI_FRAXLEND_COMPTROLLER_ADDRESS"); - vm.label(0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10, "Constants.ARBI_FRAX_MASTER_MULTISIG_ADDRESS"); - vm.label(0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10, "Constants.ARBI_MAIN_COMPTROLLER"); - vm.label(0xB426B13372B7c967C4a2371B5e95FC7dc37545Db, "Constants.ARBI_TIMELOCK_ADDRESS"); - vm.label(0x1C5ffa4FB4907B681c61B8c82b28C4672ceb1974, "Constants.ARBI_CURVE4POOL"); - vm.label(0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0, "Constants.ARBI_CVXFRAXBP"); - vm.label(0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0, "Constants.ARBI_CVXFRAXBP_REWARDER"); - vm.label(0xCDA69af1077765a89eA156aCe7a6f8b476e4aF12, "Constants.ARBI_CVXFRAXFXB_20241231_ARBITRUM"); - vm.label(0x2026681d569f80aE0A86D7c90bc81065D9A3AD42, "Constants.ARBI_CVXFRAXFXB_20261231_ARBITRUM"); - vm.label(0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3, "Constants.ARBI_CVXFRXETHWETH"); - vm.label(0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3, "Constants.ARBI_CVXFRXETHWETH_REWARDER"); - vm.label(0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6, "Constants.ARBI_CVXHFXBFRAX"); - vm.label(0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6, "Constants.ARBI_CVXHFXBFRAX_REWARDER"); - vm.label(0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9, "Constants.ARBI_CVXUSDPLUSFRAXBP"); - vm.label(0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9, "Constants.ARBI_CVXUSDPLUSFRAXBP_REWARDER"); - vm.label(0xf07d553B195080F84F582e88ecdD54bAa122b279, "Constants.ARBI_FRAX2POOL"); - vm.label(0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5, "Constants.ARBI_FRAXBP"); - vm.label(0x95285Ea6fF14F80A2fD3989a6bAb993Bd6b5fA13, "Constants.ARBI_FRAXBP_GAUGE"); - vm.label(0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5, "Constants.ARBI_FRAXBP_POOL"); - vm.label(0xE920eEdAff6c3BEd1Ef61010B64d46986634E908, "Constants.ARBI_FRAXFXB_20241231"); - vm.label(0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68, "Constants.ARBI_FRAXFXB_20241231_GAUGE"); - vm.label(0xE920eEdAff6c3BEd1Ef61010B64d46986634E908, "Constants.ARBI_FRAXFXB_20241231_POOL"); - vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ARBI_FRAXFXB_20261231"); - vm.label(0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9, "Constants.ARBI_FRAXFXB_20261231_GAUGE"); - vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ARBI_FRAXFXB_20261231_POOL"); - vm.label(0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523, "Constants.ARBI_FRXETHWETH"); - vm.label(0x46FEc59Eb30C2D610917ebf4CE5114f7425b2c4A, "Constants.ARBI_FRXETHWETH_GAUGE"); - vm.label(0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523, "Constants.ARBI_FRXETHWETH_POOL"); - vm.label(0xb1c4426C86082D91a6c097fC588E5D5d8dD1f5a8, "Constants.ARBI_HFRAX"); - vm.label(0x8f5d46267EB52F3aA6E141004A781469D445888c, "Constants.ARBI_HFXBFRAX"); - vm.label(0x725E997571F4fD144bB741762E8fA9f1D11761a7, "Constants.ARBI_HFXBFRAX_GAUGE"); - vm.label(0x8f5d46267EB52F3aA6E141004A781469D445888c, "Constants.ARBI_HFXBFRAX_POOL"); - vm.label(0x2E9963ae673A885b6bfeDa2f80132CE28b784C40, "Constants.ARBI_LFRAX"); - vm.label(0x0a20c2FFa10cD43F67D06170422505b7D6fC0953, "Constants.ARBI_SADDLEARBUSDV2"); - vm.label(0x147D0Af556C6D89640BFa915D2b9619d7b55947a, "Constants.ARBI_SADDLEL2D4"); - vm.label(0xF2839E0b30B5e96083085F498b14bbc12530b734, "Constants.ARBI_SADDLEL2D4_PERMISSIONLESS_SWAP"); - vm.label(0x0a20c2FFa10cD43F67D06170422505b7D6fC0953, "Constants.ARBI_SDL_ARBUSDV2"); - vm.label(0xfeEa4D1BacB0519E8f952460A70719944fe56Ee0, "Constants.ARBI_SDL_ARBUSDV2_POOL"); - vm.label(0x896935B02D3cBEb152192774e4F1991bb1D2ED3f, "Constants.ARBI_SDL_FRAXBP"); - vm.label(0x401AFbc31ad2A3Bc0eD8960d63eFcDEA749b4849, "Constants.ARBI_SDL_FRAXBP_POOL"); - vm.label(0x1e491122f3C096392b40a4EA27aa1a29360d38a1, "Constants.ARBI_SDL_USDSFRAXBP"); - vm.label(0xa5bD85ed9fA27ba23BfB702989e7218E44fd4706, "Constants.ARBI_SDL_USDSFRAXBP_POOL"); - vm.label(0x166680852ae9Dec3d63374c5eBf89E974448BFE9, "Constants.ARBI_SDL_USDTFRAXBP"); - vm.label(0xf8504e92428d65E56e495684A38f679C1B1DC30b, "Constants.ARBI_SDL_USDTFRAXBP_POOL"); - vm.label(0x721DaC7d5ACc8Aa62946fd583C1F999e1570b97D, "Constants.ARBI_SDL_USXFRAXBP"); - vm.label(0xb2a2764D0DCAB445E24f4b813bE3f6ef8AE5f84D, "Constants.ARBI_SDL_USXFRAXBP_POOL"); - vm.label(0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013, "Constants.ARBI_USDPLUSFRAXBP"); - vm.label(0x4645e6476D3A5595Be9Efd39426cc10586a8393D, "Constants.ARBI_USDPLUSFRAXBP_GAUGE"); - vm.label(0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013, "Constants.ARBI_USDPLUSFRAXBP_POOL"); - vm.label(0x9A01857f33aa382b1d5bb96C3180347862432B0d, "Constants.ARBI_VECHR"); - vm.label(0xAAA343032aA79eE9a6897Dab03bef967c3289a06, "Constants.ARBI_VERAM"); - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.ARBI_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.ARBI_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.ARBI_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.ARBI_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.ARBI_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.ARBI_WFRAXOFT"); - vm.label(0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A, "Constants.ARBI_REMOTEHOP"); - vm.label(0xa46A266dCBf199a71532c76967e200994C5A0D6d, "Constants.ARBI_REMOTEMINTREDEEMHOP"); - } -} -library Aurora { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x53e36C8380Ff62D7964BFa4868A0045E58A52344; - address internal constant REMOTEMINTREDEEMHOP = 0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2; -} - -abstract contract AddressHelperAurora is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AUR_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AUR_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AUR_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AUR_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AUR_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AUR_WFRAXOFT"); - vm.label(0x53e36C8380Ff62D7964BFa4868A0045E58A52344, "Constants.AUR_REMOTEHOP"); - vm.label(0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2, "Constants.AUR_REMOTEMINTREDEEMHOP"); - } -} -library Avalanche { - address internal constant FRAX = 0xD24C2Ad096400B6FBcd2ad8B24E7acBc21A1da64; - address internal constant FXS = 0x214DB107654fF987AD859F34125307783fC8e387; - address internal constant FPI = 0xF530904FD8F9ce55F40b7cc78382A13B0cd5C48c; - address internal constant FPIS = 0xee7cBa1403A2B0C53181B3980D52f9C5EdEEcC9e; - address internal constant FRXETH = 0x2018B0CA0eDcE80800851958bD094dD4a8DA1fc4; - address internal constant SFRXETH = 0x6D3B126ae28f3E39894070148B377624F6Ab4a45; - address internal constant SFRAX = 0x3405E88af759992937b84E58F2Fe691EF0EeA320; - address internal constant PANGOLIN_FRAX_AVAX = 0x1f806f7C8dED893fd3caE279191ad7Aa3798E928; - address internal constant PANGOLIN_FXS_AVAX = 0x76Ad5c64Fe6B26b6aD9aaAA19eBa00e9eCa31FE1; - address internal constant SNOWBALL_S4D = 0x0bd7964E2E03bdb9703658A1e88F4Dc786FfA551; - address internal constant TRADER_JOE_FRAX_AVAX = 0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89; - address internal constant TRADER_JOE_FRAX_GOHM = 0x3E6Be71dE004363379d864006AAC37C9F55F8329; - address internal constant TRADER_JOE_FXS_AVAX = 0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = 0xC311b600bc926a3a8aC39945471427DFd9196930; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant COMBO_ORACLE = 0xf22460b939F1490b485005C0fe4643951724f822; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0xfD1a5eD9FaE84f06Ab2e846851F256D4d07B1A17; - address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; - address internal constant FRAXSWAP_FACTORY_V2 = 0xf77ca9B635898980fb219b4F4605C50e4ba58afF; - address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; - address internal constant FRAXSWAP_ROUTER_V2 = 0x5977b16AA9aBC4D1281058C73B789C65Bf9ab3d3; - address internal constant FRAXSWAP_V1_FRAX_FXS = 0xEa9345507c4055b2aC73c67e56f7207702FE66Cc; - address internal constant FRAXSWAP_V1_FRAX_WAVAX = 0x48A7d7d9b6d6529a3d191E434b71CDB874f29011; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0x27cc2Be95D1492bbA726E10Eba57968A065F05eC; - address internal constant FRAXSWAP_V2_FRAX_WAVAX = 0xC725819a7c2A5d3DA243e02eb886b4C5f2B4dc6A; - address internal constant COMPTROLLER = 0xc036Caff65c1A31eAa53e60F6E17f1E6689937AA; - address internal constant FPI_COMPTROLLER = 0xB3e03c9C1820C6216953FB1BBC6fFd232ac12a19; - address internal constant AXIAL_AC4D_TSD_MIM_FRAX_DAI_E = 0x4da067E13974A4d32D342d86fBBbE4fb0f95f382; - address internal constant CURVE4POOL = 0xcb11EE4B70d73e38a383b8691cAFb221059669cC; - address internal constant CURVE_4POOL = 0xcb11EE4B70d73e38a383b8691cAFb221059669cC; - address internal constant FRAX3CRV_F = 0xE013593CEA239E445d2271106836b00C9E7356ae; - address internal constant GOHM = 0x321E7092a180BB43555132ec53AaA65a5bF84251; - address internal constant PANGOLIN_CANFRAX_CANFXS = 0xe0CC7ed0666B29e60a21aF8636bBC69b21eDc434; - address internal constant PANGOLIN_CANFRAX_USDC_E = 0x0c8249757b8d66cB2b6155281A5e4f8F53C94c05; - address internal constant PANGOLIN_CANFRAX_WAVAX = 0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559; - address internal constant PANGOLIN_CANFXS_USDC_E = 0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8; - address internal constant TRADER_JOE_FRAX_WAVAX = 0x0d84595e8638dBc631076c51000B2d31120D8aa1; - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; - address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; -} - -abstract contract AddressHelperAvalanche is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xD24C2Ad096400B6FBcd2ad8B24E7acBc21A1da64, "Constants.AVAX_FRAX"); - vm.label(0x214DB107654fF987AD859F34125307783fC8e387, "Constants.AVAX_FXS"); - vm.label(0xF530904FD8F9ce55F40b7cc78382A13B0cd5C48c, "Constants.AVAX_FPI"); - vm.label(0xee7cBa1403A2B0C53181B3980D52f9C5EdEEcC9e, "Constants.AVAX_FPIS"); - vm.label(0x2018B0CA0eDcE80800851958bD094dD4a8DA1fc4, "Constants.AVAX_FRXETH"); - vm.label(0x6D3B126ae28f3E39894070148B377624F6Ab4a45, "Constants.AVAX_SFRXETH"); - vm.label(0x3405E88af759992937b84E58F2Fe691EF0EeA320, "Constants.AVAX_SFRAX"); - vm.label(0x1f806f7C8dED893fd3caE279191ad7Aa3798E928, "Constants.AVAX_PANGOLIN_FRAX_AVAX"); - vm.label(0x76Ad5c64Fe6B26b6aD9aaAA19eBa00e9eCa31FE1, "Constants.AVAX_PANGOLIN_FXS_AVAX"); - vm.label(0x0bd7964E2E03bdb9703658A1e88F4Dc786FfA551, "Constants.AVAX_SNOWBALL_S4D"); - vm.label(0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89, "Constants.AVAX_TRADER_JOE_FRAX_AVAX"); - vm.label(0x3E6Be71dE004363379d864006AAC37C9F55F8329, "Constants.AVAX_TRADER_JOE_FRAX_GOHM"); - vm.label(0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2, "Constants.AVAX_TRADER_JOE_FXS_AVAX"); - vm.label(0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE"); - vm.label(0xC311b600bc926a3a8aC39945471427DFd9196930, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE"); - vm.label(0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE"); - vm.label(0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE"); - vm.label(0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE"); - vm.label(0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE"); - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CREWMEMBER"); - vm.label(0xf22460b939F1490b485005C0fe4643951724f822, "Constants.AVAX_COMBO_ORACLE"); - vm.label(0xfD1a5eD9FaE84f06Ab2e846851F256D4d07B1A17, "Constants.AVAX_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.AVAX_FRAXSWAP_FACTORY_V1"); - vm.label(0xf77ca9B635898980fb219b4F4605C50e4ba58afF, "Constants.AVAX_FRAXSWAP_FACTORY_V2"); - vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.AVAX_FRAXSWAP_ROUTER_V1"); - vm.label(0x5977b16AA9aBC4D1281058C73B789C65Bf9ab3d3, "Constants.AVAX_FRAXSWAP_ROUTER_V2"); - vm.label(0xEa9345507c4055b2aC73c67e56f7207702FE66Cc, "Constants.AVAX_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x48A7d7d9b6d6529a3d191E434b71CDB874f29011, "Constants.AVAX_FRAXSWAP_V1_FRAX_WAVAX"); - vm.label(0x27cc2Be95D1492bbA726E10Eba57968A065F05eC, "Constants.AVAX_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0xC725819a7c2A5d3DA243e02eb886b4C5f2B4dc6A, "Constants.AVAX_FRAXSWAP_V2_FRAX_WAVAX"); - vm.label(0xc036Caff65c1A31eAa53e60F6E17f1E6689937AA, "Constants.AVAX_COMPTROLLER"); - vm.label(0xB3e03c9C1820C6216953FB1BBC6fFd232ac12a19, "Constants.AVAX_FPI_COMPTROLLER"); - vm.label(0x4da067E13974A4d32D342d86fBBbE4fb0f95f382, "Constants.AVAX_AXIAL_AC4D_TSD_MIM_FRAX_DAI_E"); - vm.label(0xcb11EE4B70d73e38a383b8691cAFb221059669cC, "Constants.AVAX_CURVE4POOL"); - vm.label(0xcb11EE4B70d73e38a383b8691cAFb221059669cC, "Constants.AVAX_CURVE_4POOL"); - vm.label(0xE013593CEA239E445d2271106836b00C9E7356ae, "Constants.AVAX_FRAX3CRV_F"); - vm.label(0x321E7092a180BB43555132ec53AaA65a5bF84251, "Constants.AVAX_GOHM"); - vm.label(0xe0CC7ed0666B29e60a21aF8636bBC69b21eDc434, "Constants.AVAX_PANGOLIN_CANFRAX_CANFXS"); - vm.label(0x0c8249757b8d66cB2b6155281A5e4f8F53C94c05, "Constants.AVAX_PANGOLIN_CANFRAX_USDC_E"); - vm.label(0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559, "Constants.AVAX_PANGOLIN_CANFRAX_WAVAX"); - vm.label(0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8, "Constants.AVAX_PANGOLIN_CANFXS_USDC_E"); - vm.label(0x0d84595e8638dBc631076c51000B2d31120D8aa1, "Constants.AVAX_TRADER_JOE_FRAX_WAVAX"); - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.AVAX_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.AVAX_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.AVAX_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.AVAX_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.AVAX_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.AVAX_WFRAXOFT"); - vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.AVAX_REMOTEHOP"); - vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.AVAX_REMOTEMINTREDEEMHOP"); - } -} -library Base { - address internal constant FPIOFT = 0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B; - address internal constant FRXETHOFT = 0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA; - address internal constant FRXUSDOFT = 0xe5020A6d073a794B6E7f05678707dE47986Fb0b6; - address internal constant SFRXETHOFT = 0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA; - address internal constant SFRXUSDOFT = 0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e; - address internal constant WFRAXOFT = 0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf; - address internal constant REMOTEHOP = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant REMOTEMINTREDEEMHOP = 0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE; -} - -abstract contract AddressHelperBase is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B, "Constants.BASE_FPIOFT"); - vm.label(0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA, "Constants.BASE_FRXETHOFT"); - vm.label(0xe5020A6d073a794B6E7f05678707dE47986Fb0b6, "Constants.BASE_FRXUSDOFT"); - vm.label(0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA, "Constants.BASE_SFRXETHOFT"); - vm.label(0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e, "Constants.BASE_SFRXUSDOFT"); - vm.label(0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf, "Constants.BASE_WFRAXOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BASE_REMOTEHOP"); - vm.label(0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE, "Constants.BASE_REMOTEMINTREDEEMHOP"); - } -} -library Bera { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; - address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; -} - -abstract contract AddressHelperBera is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BERA_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BERA_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BERA_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BERA_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BERA_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BERA_WFRAXOFT"); - vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.BERA_REMOTEHOP"); - vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.BERA_REMOTEMINTREDEEMHOP"); - } -} -library Blast { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0xe93Cb38f97469eac2f284a87813D0d701b28E58e; - address internal constant REMOTEMINTREDEEMHOP = 0x85b1714b25f40FD5025423124c076476073180b3; -} - -abstract contract AddressHelperBlast is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.BLAST_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.BLAST_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.BLAST_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.BLAST_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.BLAST_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.BLAST_WFRAXOFT"); - vm.label(0xe93Cb38f97469eac2f284a87813D0d701b28E58e, "Constants.BLAST_REMOTEHOP"); - vm.label(0x85b1714b25f40FD5025423124c076476073180b3, "Constants.BLAST_REMOTEMINTREDEEMHOP"); - } -} -library BSC { - address internal constant FRAX = 0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40; - address internal constant FXS = 0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE; - address internal constant FPI = 0x2Dd1B4D4548aCCeA497050619965f91f78b3b532; - address internal constant FPIS = 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; - address internal constant FRXETH = 0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e; - address internal constant SFRXETH = 0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53; - address internal constant SFRAX = 0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3; - address internal constant APESWAP_CANFRAX_BUSD = 0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9; - address internal constant APESWAP_CANFXS_WBNB = 0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9; - address internal constant IMPOSSIBLE_FRAX_IF = 0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5; - address internal constant IMPOSSIBLE_FRAX_FXS = 0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32; - address internal constant PLANET_FINANCE_FRAX_LENDING = 0x6022bA7e5A70E1bAA98d47a566F3495A26511b25; - address internal constant FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE = 0x10Ef54F944639764d2d5Efa272262f06cfaF09AE; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE = 0x5CD3d6465cd21b645F15175840f4659228C6195c; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE = 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE = 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE = 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = 0x612015939f70C87E2041cc5daD909101c1A2383F; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE = 0x5E8422345238F34275888049021821E8E08CAa1f; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant COMBO_ORACLE = 0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x8159D9CD28B7A140Fd92311C1E5c667d97176727; - address internal constant FRAXSWAP_FACTORY_V1 = 0xa007a9716dba05289df85A90d0Fd9D39BEE808dE; - address internal constant FRAXSWAP_FACTORY_V2 = 0xf89e6CA06121B6d4370f4B196Ae458e8b969A011; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; - address internal constant FRAXSWAP_ROUTER_V1 = 0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37; - address internal constant FRAXSWAP_ROUTER_V2 = 0x67F755137E0AE2a2aa0323c047715Bf6523116E5; - address internal constant FRAXSWAP_V1_FRAX_FXS = 0xC86B106F76ef5b9A085071365eD5355592A7aFa4; - address internal constant FRAXSWAP_V1_FRAX_WBNB = 0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0xF51709f61447E2647528CCC9030d6FE492C30D63; - address internal constant FRAXSWAP_V2_FRAX_WBNB = 0x14732123c443f8E815D5c64f3C7ecb63bCeEab74; - address internal constant COMPTROLLER = 0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a; - address internal constant FPI_COMPTROLLER = 0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456; - address internal constant GFRAX = 0x6022bA7e5A70E1bAA98d47a566F3495A26511b25; - address internal constant APESWAP_CANFRAX_CANFXS = 0x489c8fF79245f14AEEE9520d28209844790cB979; - address internal constant APESWAP_CANFRAX_WBNB = 0x16BDb03E6074759943149eBB1526DDfD1AA5fc56; - address internal constant APESWAP_CANFRAX_USDC = 0x885BE9bCbCdcB70c59F56A78ae64A820e0448589; - address internal constant APESWAP_CANFXS_USDC = 0x84f2781E4E60f97D2963260A7b20D883F04F0d20; - address internal constant SADDLE_FRAX_BUSD = 0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3; - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; - address internal constant REMOTEMINTREDEEMHOP = 0xdee45510b42Cb0678C8A61D043C698aF66b0d852; -} - -abstract contract AddressHelperBSC is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40, "Constants.undefined_FRAX"); - vm.label(0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE, "Constants.undefined_FXS"); - vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.undefined_FPI"); - vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.undefined_FPIS"); - vm.label(0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e, "Constants.undefined_FRXETH"); - vm.label(0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53, "Constants.undefined_SFRXETH"); - vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.undefined_SFRAX"); - vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFRAX_BUSD"); - vm.label(0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9, "Constants.undefined_APESWAP_CANFXS_WBNB"); - vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.undefined_IMPOSSIBLE_FRAX_IF"); - vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.undefined_IMPOSSIBLE_FRAX_FXS"); - vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_PLANET_FINANCE_FRAX_LENDING"); - vm.label(0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, "Constants.undefined_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE"); - vm.label(0x5CD3d6465cd21b645F15175840f4659228C6195c, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE"); - vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE"); - vm.label(0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE"); - vm.label(0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE"); - vm.label(0x612015939f70C87E2041cc5daD909101c1A2383F, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE"); - vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CREWMEMBER"); - vm.label(0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A, "Constants.undefined_COMBO_ORACLE"); - vm.label(0x8159D9CD28B7A140Fd92311C1E5c667d97176727, "Constants.undefined_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.undefined_FRAXSWAP_FACTORY_V1"); - vm.label(0xf89e6CA06121B6d4370f4B196Ae458e8b969A011, "Constants.undefined_FRAXSWAP_FACTORY_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.undefined_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37, "Constants.undefined_FRAXSWAP_ROUTER_V1"); - vm.label(0x67F755137E0AE2a2aa0323c047715Bf6523116E5, "Constants.undefined_FRAXSWAP_ROUTER_V2"); - vm.label(0xC86B106F76ef5b9A085071365eD5355592A7aFa4, "Constants.undefined_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D, "Constants.undefined_FRAXSWAP_V1_FRAX_WBNB"); - vm.label(0xF51709f61447E2647528CCC9030d6FE492C30D63, "Constants.undefined_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0x14732123c443f8E815D5c64f3C7ecb63bCeEab74, "Constants.undefined_FRAXSWAP_V2_FRAX_WBNB"); - vm.label(0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a, "Constants.undefined_COMPTROLLER"); - vm.label(0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456, "Constants.undefined_FPI_COMPTROLLER"); - vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_GFRAX"); - vm.label(0x489c8fF79245f14AEEE9520d28209844790cB979, "Constants.undefined_APESWAP_CANFRAX_CANFXS"); - vm.label(0x16BDb03E6074759943149eBB1526DDfD1AA5fc56, "Constants.undefined_APESWAP_CANFRAX_WBNB"); - vm.label(0x885BE9bCbCdcB70c59F56A78ae64A820e0448589, "Constants.undefined_APESWAP_CANFRAX_USDC"); - vm.label(0x84f2781E4E60f97D2963260A7b20D883F04F0d20, "Constants.undefined_APESWAP_CANFXS_USDC"); - vm.label(0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3, "Constants.undefined_SADDLE_FRAX_BUSD"); - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); - vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.undefined_REMOTEHOP"); - vm.label(0xdee45510b42Cb0678C8A61D043C698aF66b0d852, "Constants.undefined_REMOTEMINTREDEEMHOP"); - } -} -library Fantom { - address internal constant FRAX = 0xdc301622e621166BD8E82f2cA0A26c13Ad0BE355; - address internal constant FXS = 0x7d016eec9c25232b01F23EF992D98ca97fc2AF5a; - address internal constant FPI = 0xAb069E73f1AA50c37A7171D16dCc3614c705101B; - address internal constant FPIS = 0x3bb6B72dC07D7bFDa981F70C631482e9517CF6EE; - address internal constant FRXETH = 0x9E73F99EE061C8807F69f9c6CCc44ea3d8c373ee; - address internal constant SFRXETH = 0xb90CCD563918fF900928dc529aA01046795ccb4A; - address internal constant LIQUID_DRIVER_FRAX_FTM = 0x6e2ad6527901c9664f016466b8DA1357a004db0f; - address internal constant SPIRITSWAP_FRAX_FTM = 0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D; - address internal constant SPIRITSWAP_FRAX_FXS = 0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381; - address internal constant SPIRITSWAP_FRAX_USDC = 0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d; - address internal constant VEDAO_FRAX = 0xE04C26444d37fE103B9cc8033c99b09D47056f51; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE = 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant COMBO_ORACLE = 0x496E5c8F169C2930Dd67B821d8DdDDC78542f290; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x689C5BC12B0A80a8aa33dc38dfDFB7E858A49601; - address internal constant FRAXSWAP_FACTORY_V1 = 0xF55C563148cA0c0F1626834ec1B8651844D76792; - address internal constant FRAXSWAP_FACTORY_V2 = 0xDc745E09fC459aDC295E2e7baACe881354dB7F64; - address internal constant FRAXSWAP_ROUTER_V1 = 0xa007a9716dba05289df85A90d0Fd9D39BEE808dE; - address internal constant FRAXSWAP_ROUTER_V2 = 0x7D21C651Dd333306B35F2FeAC2a19FA1e1241545; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; - address internal constant FRAXSWAP_V1_FRAX_FXS = 0xB186ad077cA69e860476B2C84ecD0DE3572A10F5; - address internal constant FRAXSWAP_V1_FRAX_WFTM = 0xc736279b8371c736f027cCC3F77755D7931F8845; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0x4ac3de029F4C11ab40a51336F7229d67cd1e92A5; - address internal constant FRAXSWAP_V2_FRAX_WFTM = 0x173F3e43F0414F903620948F9d2094F9dbD92F15; - address internal constant COMPTROLLER = 0xE838c61635dd1D41952c68E47159329443283d90; - address internal constant FPI_COMPTROLLER = 0xe722B0fA594e290a8E53bFB5654cE4Ad8a4BE811; - address internal constant CURVE4POOL = 0x9dc516a18775d492c9f061211C8a3FDCd476558d; - address internal constant CURVE_4POOL = 0x9dc516a18775d492c9f061211C8a3FDCd476558d; - address internal constant FRAX2POOL = 0x7a656B342E14F745e2B164890E88017e27AE7320; - address internal constant HFRAX = 0xb4300e088a3AE4e624EE5C71Bc1822F68BB5f2bc; - address internal constant OFRAX = 0x88c05534566f3bD6b6D704c9259408fF1F1a3F00; - address internal constant OXSOLID = 0xDA0053F0bEfCbcaC208A3f867BB243716734D809; - address internal constant OX_VAMM_FXS_FRAX_DEPOSIT = 0x9601f81F35B2F00549a654E3f2E5D7c87F733530; - address internal constant SADDLE_FRAX_USDC = 0xc969dD0A7AB0F8a0C5A69C0839dB39b6C928bC08; - address internal constant SCFRAX = 0x4E6854EA84884330207fB557D1555961D85Fc17E; - address internal constant SEX_SAMM_USDC_FRAX_DEPOSIT = 0xF3E57E9cba43F9998559161DDd40aaeB2225E700; - address internal constant SEX_VAMM_FXS_FRAX_DEPOSIT = 0xa5944150136aCF58e4e9752703Fcf7B13e8579E7; - address internal constant SOLIDLY_STABLEV1_AMM___USDC_FRAX = 0x154eA0E896695824C87985a52230674C2BE7731b; - address internal constant SOLIDLY_VOLATILEV1_AMM___FXS_FRAX = 0x4bBd8467ccd49D5360648CE14830f43a7fEB6e45; - address internal constant SPIRITSWAP_CANFRAX_ANYUSDC = 0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d; - address internal constant SPIRITSWAP_CANFRAX_CANFXS = 0x7a2aD237e389De505DE7a89768143337E516C6Ce; - address internal constant SPIRITSWAP_CANFRAX_FTM = 0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D; - address internal constant SPIRITSWAP_CANFXS_ANYUSDC = 0xB269A9969A437e778A8BFdB48A720aD366742554; -} - -abstract contract AddressHelperFantom is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xdc301622e621166BD8E82f2cA0A26c13Ad0BE355, "Constants.FTM_FRAX"); - vm.label(0x7d016eec9c25232b01F23EF992D98ca97fc2AF5a, "Constants.FTM_FXS"); - vm.label(0xAb069E73f1AA50c37A7171D16dCc3614c705101B, "Constants.FTM_FPI"); - vm.label(0x3bb6B72dC07D7bFDa981F70C631482e9517CF6EE, "Constants.FTM_FPIS"); - vm.label(0x9E73F99EE061C8807F69f9c6CCc44ea3d8c373ee, "Constants.FTM_FRXETH"); - vm.label(0xb90CCD563918fF900928dc529aA01046795ccb4A, "Constants.FTM_SFRXETH"); - vm.label(0x6e2ad6527901c9664f016466b8DA1357a004db0f, "Constants.FTM_LIQUID_DRIVER_FRAX_FTM"); - vm.label(0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D, "Constants.FTM_SPIRITSWAP_FRAX_FTM"); - vm.label(0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381, "Constants.FTM_SPIRITSWAP_FRAX_FXS"); - vm.label(0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d, "Constants.FTM_SPIRITSWAP_FRAX_USDC"); - vm.label(0xE04C26444d37fE103B9cc8033c99b09D47056f51, "Constants.FTM_VEDAO_FRAX"); - vm.label(0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE"); - vm.label(0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE"); - vm.label(0x12b6a8178C67B2835E280E1Ed709F64446cddb08, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE"); - vm.label(0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CREWMEMBER"); - vm.label(0x496E5c8F169C2930Dd67B821d8DdDDC78542f290, "Constants.FTM_COMBO_ORACLE"); - vm.label(0x689C5BC12B0A80a8aa33dc38dfDFB7E858A49601, "Constants.FTM_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0xF55C563148cA0c0F1626834ec1B8651844D76792, "Constants.FTM_FRAXSWAP_FACTORY_V1"); - vm.label(0xDc745E09fC459aDC295E2e7baACe881354dB7F64, "Constants.FTM_FRAXSWAP_FACTORY_V2"); - vm.label(0xa007a9716dba05289df85A90d0Fd9D39BEE808dE, "Constants.FTM_FRAXSWAP_ROUTER_V1"); - vm.label(0x7D21C651Dd333306B35F2FeAC2a19FA1e1241545, "Constants.FTM_FRAXSWAP_ROUTER_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.FTM_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0xB186ad077cA69e860476B2C84ecD0DE3572A10F5, "Constants.FTM_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0xc736279b8371c736f027cCC3F77755D7931F8845, "Constants.FTM_FRAXSWAP_V1_FRAX_WFTM"); - vm.label(0x4ac3de029F4C11ab40a51336F7229d67cd1e92A5, "Constants.FTM_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0x173F3e43F0414F903620948F9d2094F9dbD92F15, "Constants.FTM_FRAXSWAP_V2_FRAX_WFTM"); - vm.label(0xE838c61635dd1D41952c68E47159329443283d90, "Constants.FTM_COMPTROLLER"); - vm.label(0xe722B0fA594e290a8E53bFB5654cE4Ad8a4BE811, "Constants.FTM_FPI_COMPTROLLER"); - vm.label(0x9dc516a18775d492c9f061211C8a3FDCd476558d, "Constants.FTM_CURVE4POOL"); - vm.label(0x9dc516a18775d492c9f061211C8a3FDCd476558d, "Constants.FTM_CURVE_4POOL"); - vm.label(0x7a656B342E14F745e2B164890E88017e27AE7320, "Constants.FTM_FRAX2POOL"); - vm.label(0xb4300e088a3AE4e624EE5C71Bc1822F68BB5f2bc, "Constants.FTM_HFRAX"); - vm.label(0x88c05534566f3bD6b6D704c9259408fF1F1a3F00, "Constants.FTM_OFRAX"); - vm.label(0xDA0053F0bEfCbcaC208A3f867BB243716734D809, "Constants.FTM_OXSOLID"); - vm.label(0x9601f81F35B2F00549a654E3f2E5D7c87F733530, "Constants.FTM_OX_VAMM_FXS_FRAX_DEPOSIT"); - vm.label(0xc969dD0A7AB0F8a0C5A69C0839dB39b6C928bC08, "Constants.FTM_SADDLE_FRAX_USDC"); - vm.label(0x4E6854EA84884330207fB557D1555961D85Fc17E, "Constants.FTM_SCFRAX"); - vm.label(0xF3E57E9cba43F9998559161DDd40aaeB2225E700, "Constants.FTM_SEX_SAMM_USDC_FRAX_DEPOSIT"); - vm.label(0xa5944150136aCF58e4e9752703Fcf7B13e8579E7, "Constants.FTM_SEX_VAMM_FXS_FRAX_DEPOSIT"); - vm.label(0x154eA0E896695824C87985a52230674C2BE7731b, "Constants.FTM_SOLIDLY_STABLEV1_AMM___USDC_FRAX"); - vm.label(0x4bBd8467ccd49D5360648CE14830f43a7fEB6e45, "Constants.FTM_SOLIDLY_VOLATILEV1_AMM___FXS_FRAX"); - vm.label(0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d, "Constants.FTM_SPIRITSWAP_CANFRAX_ANYUSDC"); - vm.label(0x7a2aD237e389De505DE7a89768143337E516C6Ce, "Constants.FTM_SPIRITSWAP_CANFRAX_CANFXS"); - vm.label(0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D, "Constants.FTM_SPIRITSWAP_CANFRAX_FTM"); - vm.label(0xB269A9969A437e778A8BFdB48A720aD366742554, "Constants.FTM_SPIRITSWAP_CANFXS_ANYUSDC"); - } -} -library FraxtalL1Devnet { - address internal constant FRAX = 0x114a0318Da080A2Ee3380269d796E93DF767D24F; - address internal constant FXS = 0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0; - address internal constant FPI = 0xfC75d8fD01fD999D2A4731a01d87131b40A8a645; - address internal constant FPIS = 0x9445aD9a63def63CA9D23cfd7cd72538BbF1780A; - address internal constant FRXBTC = 0x2a2acd879050aC8910d80dccb428a0AEf77fFA36; - address internal constant FRXETH = 0x51Ed07ceB785d2983e56CF00CAf65499dae5df3B; - address internal constant SFRXETH = 0x2787eC65f085acbbE94F1bB7E099dF06B56b6DaC; - address internal constant SFRAX = 0xB26fDD0FF10A287a73EFaa0b18A0e57fd8168835; - uint256 internal constant CHAIN_ID = 2520; - address internal constant FRXETH_MINTER = 0x890205b3397a1F273BaD55476F2856886964E788; - address internal constant COMPTROLLER = 0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160; -} - -abstract contract AddressHelperFraxtalL1Devnet is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x114a0318Da080A2Ee3380269d796E93DF767D24F, "Constants.FXTL_L1_DN_FRAX"); - vm.label(0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0, "Constants.FXTL_L1_DN_FXS"); - vm.label(0xfC75d8fD01fD999D2A4731a01d87131b40A8a645, "Constants.FXTL_L1_DN_FPI"); - vm.label(0x9445aD9a63def63CA9D23cfd7cd72538BbF1780A, "Constants.FXTL_L1_DN_FPIS"); - vm.label(0x2a2acd879050aC8910d80dccb428a0AEf77fFA36, "Constants.FXTL_L1_DN_FRXBTC"); - vm.label(0x51Ed07ceB785d2983e56CF00CAf65499dae5df3B, "Constants.FXTL_L1_DN_FRXETH"); - vm.label(0x2787eC65f085acbbE94F1bB7E099dF06B56b6DaC, "Constants.FXTL_L1_DN_SFRXETH"); - vm.label(0xB26fDD0FF10A287a73EFaa0b18A0e57fd8168835, "Constants.FXTL_L1_DN_SFRAX"); - vm.label(0x890205b3397a1F273BaD55476F2856886964E788, "Constants.FXTL_L1_DN_FRXETH_MINTER"); - vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_L1_DN_COMPTROLLER"); - } -} -library FraxtalL2Devnet { - address internal constant FRAX = 0xFc00000000000000000000000000000000000001; - address internal constant FXS = 0xFc00000000000000000000000000000000000002; - address internal constant FPI = 0xFc00000000000000000000000000000000000003; - address internal constant FPIS = 0xfc00000000000000000000000000000000000004; - address internal constant FRXBTC = 0xfC00000000000000000000000000000000000007; - address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; - address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; - address internal constant SFRAX = 0xfc00000000000000000000000000000000000008; - uint256 internal constant CHAIN_ID = 2521; - address internal constant PROXY_ADMIN = 0xfC00000000000000000000000000000000000009; - address internal constant COMPTROLLER = 0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160; - address internal constant CROSS_DOMAIN_MESSENGER = 0x4200000000000000000000000000000000000007; - address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; - address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; - address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; -} - -abstract contract AddressHelperFraxtalL2Devnet is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_L2_DN_FRAX"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_L2_DN_FXS"); - vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_L2_DN_FPI"); - vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_L2_DN_FPIS"); - vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_L2_DN_FRXBTC"); - vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_L2_DN_WFRXETH"); - vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_L2_DN_SFRXETH"); - vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_L2_DN_SFRAX"); - vm.label(0xfC00000000000000000000000000000000000009, "Constants.FXTL_L2_DN_PROXY_ADMIN"); - vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_L2_DN_COMPTROLLER"); - vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_L2_DN_CROSS_DOMAIN_MESSENGER"); - vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_L2_DN_ERC20_FACTORY_PROXY"); - vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_L2_DN_L2_STANDARD_BRIDGE_PROXY"); - vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_L2_DN_L2_TO_L1_MESSAGE_PASSER"); - } -} -library FraxtalL2 { - uint256 internal constant CHAIN_ID = 252; - address internal constant FRXUSD = 0xFc00000000000000000000000000000000000001; - address internal constant WFRAX = 0xFc00000000000000000000000000000000000002; - address internal constant FPI = 0xFc00000000000000000000000000000000000003; - address internal constant FPIS = 0xfc00000000000000000000000000000000000004; - address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; - address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; - address internal constant FRXBTC = 0xfC00000000000000000000000000000000000007; - address internal constant SFRAX = 0xfc00000000000000000000000000000000000008; - address internal constant FRXUSD_PROXY = 0xFc00000000000000000000000000000000000001; - address internal constant WFRAX_PROXY = 0xFc00000000000000000000000000000000000002; - address internal constant FPI_PROXY = 0xFc00000000000000000000000000000000000003; - address internal constant FPIS_PROXY = 0xfc00000000000000000000000000000000000004; - address internal constant SFRXETH_PROXY = 0xFC00000000000000000000000000000000000005; - address internal constant WFRXETH_PROXY = 0xFC00000000000000000000000000000000000006; - address internal constant FRXBTC_PROXY = 0xfC00000000000000000000000000000000000007; - address internal constant SFRAX_PROXY = 0xfc00000000000000000000000000000000000008; - address internal constant CONVEX_SQUID_WFRXETH_FRAXTAL = 0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc; - address internal constant FLE_FRAX_FXS_FRAXTAL = 0xCe70630b4b2E889AdC558b58B2980437f58003D4; - address internal constant FLE_FXS_WFRXETH_FRAXTAL = 0x7A6BE195f9931341c1f4c4230fc48F8B9b9dE91b; - address internal constant FRAXSWAP_V2_FRAX_FPI_FRAXTAL = 0x7b8848f10A016341c9B2427e8541C19F31C2D243; - address internal constant FRAXSWAP_V2_FRAX_FXS_FRAXTAL = 0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25; - address internal constant FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = 0xe402a39F788f90607A50254fAf56316E6a78231A; - address internal constant FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = 0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7; - address internal constant FXB_TIMED_LOCKER_20261231 = 0x00a5b34d4b436E3276695a1EaA8242FA2FC11dC5; - address internal constant FXB_20261231 = 0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e; - address internal constant FXB_20241231 = 0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba; - address internal constant FXB_20240630 = 0x758094A71a39De49626FE25B86631ED944558653; - address internal constant FXB_20551231 = 0xc38173d34afaea88bc482813b3cd267bc8a1ea83; - address internal constant FXB_20291231 = 0xf1e2b576af4c6a7ee966b14c810b772391e92153; - address internal constant FXB_20251231 = 0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = 0xcD3A040f05769d7628582B403063e61B7D212F91; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CHAINLINK_ETH_USD_ORACLE = 0xA6cBe9aB6075d8b1049Db7528f2fCf22FC7d051B; - address internal constant CIRCUIT_BREAKER_ADDRESS = 0x0eD01ea3B95e0f68DF2c9CD67F138ff3547b311C; - address internal constant FRAXLEND_DEPLOYER_V4 = 0x4C3B0e85CD8C12E049E07D9a4d68C441196E6a12; - address internal constant FRAXLEND_HOT_WALLET = 0x31562ae726AFEBe25417df01bEdC72EF489F45b3; - address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0x8c22EBc8f9B96cEac97EA21c53F3B27ef2F45e57; - address internal constant FRAXLEND_WHITELIST_ADDRESS = 0x64F85076665dcE1FbEfC23391b8BFB2595c250f6; - address internal constant FRAXTAL_BLOCKHASH_PROVIDER = 0x4200000000000000000000000000000000000015; - address internal constant FRAXTAL_MERKLE_PRICE_SOURCE = 0x9990eb28E58380122AA3AdF64ea6f874df51114C; - address internal constant FRAXTAL_STATE_ROOT_ORACLE = 0xeD403d48e2bC946438B5686AA1AD65056Ccf9512; - address internal constant FRXETH_DUAL_ORACLE_REDSTONE = 0x4b0Ca693e29e5FD2AA39332a0387BBCD0f91a527; - address internal constant FXB_20240630_ORACLE = 0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7; - address internal constant FXB_20241231_ORACLE = 0x01480a0C134CeCC309015a564C7e292ba6E0F358; - address internal constant FXB_20261231_ORACLE = 0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3; - address internal constant FXB_20551231_ORACLE = 0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6; - address internal constant FXB_20291231_ORACLE = 0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b; - address internal constant FXB_20251231_ORACLE = 0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18; - address internal constant FXB_VARIABLE_RATE_2 = 0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f; - address internal constant FXS_DUAL_ORACLE_REDSTONE = 0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2; - address internal constant SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE = 0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c; - address internal constant SFRXETH_DUAL_ORACLE_REDSTONE = 0xfbcDf41Cc692ed529b9a8cC1A5867B9524FD0164; - address internal constant TIMELOCK_ADDRESS = 0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2; - address internal constant VARIABLE_RATE_2_ADDRESS = 0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652; - address internal constant VARIABLE_RATE_2_ADDRESS_50 = 0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2; - address internal constant FRAXLEND_PAIR_FXB_20261231_FRAX = 0x032578d99b1070682a5E171012BE1756a50a17d4; - address internal constant FRAXLEND_PAIR_FXB_20241231_FRAX = 0x6154334A7D0E7f5f0479599D15F462B200C721E1; - address internal constant FRAXLEND_PAIR_FXB_20240630_FRAX = 0x57b709e214B239821A78dFCF09c89f52bA3D80aD; - address internal constant FRAXLEND_PAIR_FXB_20291231_FRAX = 0x3e92765eE2B009b104A8A7baf3759B159c19AbA1; - address internal constant FRAXLEND_PAIR_FXB_20251231_FRAX = 0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5; - address internal constant FRAXLEND_PAIR_SFRXETH_FRAX = 0x4F968317721B9c300afBff3FD37365637318271D; - address internal constant FRAXLEND_PAIR_FXS_FRAX = 0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2; - address internal constant FRAXLEND_PAIR_SFRAX_SFRXETH = 0xB71E4829e81f72f7F36A0d858e58109f5948A713; - address internal constant SDAI_ERC4626_ORACLE = 0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838; - address internal constant SDAI_ORACLE_MERKLE_PRICE_SOURCE = 0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a; - address internal constant SFRAX_ERC4626_ORACLE = 0xF750636E1df115e3B334eD06E5b45c375107FC60; - address internal constant SFRAX_MERKLE_PRICE_SOURCE = 0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5; - address internal constant SFRXETH_ERC4626_ORACLE = 0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5; - address internal constant SFRXETH_MERKLE_PRICE_SOURCE = 0xa560E014501f96752726f65c27E96C3e9127Ce32; - address internal constant SUSDE_ERC4626_ORACLE = 0xd295936C8Bb465ADd1eC756a51698127CB4F4910; - address internal constant SUSDE_MERKLE_PRICE_SOURCE = 0xc2B984E37D1CAf5Eef82D9D892287361058955E9; - address internal constant FRAXSWAP_FACTORY = 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; - address internal constant FRAXSWAP_FRAX_FPIS_PAIR = 0x78d264E25781f31343352A0f91875B655c79B843; - address internal constant FRAXSWAP_FRAX_FPI_FARM = 0x7b8848f10A016341c9B2427e8541C19F31C2D243; - address internal constant FRAXSWAP_FRAX_FPI_PAIR = 0x0EFFABede4e31101DE5209096611D073981A817b; - address internal constant FRAXSWAP_FRAX_FXS_FARM = 0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25; - address internal constant FRAXSWAP_FRAX_FXS_PAIR = 0xb4dA8dA10ffF1F6127ab71395053Aa1d499b503F; - address internal constant FRAXSWAP_FRAX_SFRXETH_FARM = 0xe402a39F788f90607A50254fAf56316E6a78231A; - address internal constant FRAXSWAP_FRAX_SFRXETH_PAIR = 0xEBD293F2173082320d88533316F5964298dE316E; - address internal constant FRAXSWAP_FRAX_WFRXETH_FARM = 0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7; - address internal constant FRAXSWAP_ROUTER = 0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6; - address internal constant FRAXSWAP_ROUTER_MULTIHOP = 0x67E04873691258950299Bd8610403D69bA0A1e10; - address internal constant FRAXSWAP_WFRX_ETH_PAIR = 0x4527bcEd9d41706D1436507e9a6e354d3FF44ff9; - address internal constant BALANCE_CHECKER = 0x219356ef2f11a314Dd0D8bfd7f4B0B951Cb16c3a; - address internal constant DELEGATION_REGISTRY = 0x098c837FeF2e146e96ceAF58A10F68Fc6326DC4C; - address internal constant FPIS_LOCKER_PROXY = 0x437E9F65cA234eCfed12149109587139d435AD35; - address internal constant FPIS_LOCKER_IMPL = 0x2b72DF3116cEb8E8a7391024f69A0BfF2718389D; - address internal constant FPIS_LOCKER_UTILS = 0x9E461cF6773F168A991A7aD73E2aD89ecD737745; - address internal constant FRAXTAL_POINTS_FXTL = 0xaB4b7c5C9A7C8EbB97877085A6C3550ad4Ed3f97; - address internal constant SFRAX_ERC4626_MINT_REDEEMER_PROXY = 0xBFc4D34Db83553725eC6c768da71D2D9c1456B55; - address internal constant SFRAX_ERC4626_MINT_REDEEMER_IMPL = 0x0aF57786D6B2447EA2E04F9FAB36a239c2E8C9d5; - address internal constant FRAXFERRY_ETHEREUM_FRAX = 0x00160baF84b3D2014837cc12e838ea399f8b8478; - address internal constant FRAXFERRY_ETHEREUM_FXS = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; - address internal constant FRAXFERRY_ETHEREUM_FPI = 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; - address internal constant FRAXFERRY_ETHEREUM_FPIS = 0xcD3A040f05769d7628582B403063e61B7D212F91; - address internal constant FRAXFERRY_ETHEREUM_SFRXETH = 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; - address internal constant FRAXFERRY_ETHEREUM_SFRAX = 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; - address internal constant BLOCKHASH_PROVIDER = 0x4200000000000000000000000000000000000015; - address internal constant STATE_ROOT_ORACLE = 0xeD403d48e2bC946438B5686AA1AD65056Ccf9512; - address internal constant MERKLE_PRICE_SOURCE = 0x9990eb28E58380122AA3AdF64ea6f874df51114C; - address internal constant CHAINLINK_MERKLE_PRICE_SOURCE = 0x4AD728706bFe28A3F090b3f1D8Ac3A8515805B41; - address internal constant SFRXETH_L2_RATE_ORACLE = 0xEE095b7d9191603126Da584a1179BB403a027c3A; - address internal constant SFRAX_L2_RATE_ORACLE = 0x1B680F4385f24420D264D78cab7C58365ED3F1FF; - address internal constant SDAI_L2_RATE_ORACLE = 0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838; - address internal constant SUSDE_L2_RATE_ORACLE = 0xd295936C8Bb465ADd1eC756a51698127CB4F4910; - address internal constant SFRXETH_L2_RATE_ORACLE_OLD = 0x8865435777730eAAbAAF2d1F55F115a87AbCf91A; - address internal constant SFRAX_L2_RATE_ORACLE_OLD = 0xF750636E1df115e3B334eD06E5b45c375107FC60; - address internal constant FRAXTAL_SDAI_MERKLE_PRICE_SOURCE = 0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a; - address internal constant FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE = 0xE25D8aaa6dF41B94A415EE39cCEE0DF6673B9bDb; - address internal constant FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE = 0xabca0b314d15B3e28F24AC0ee84A63001d1b44Db; - address internal constant FRAXTAL_SUSDE_MERKLE_PRICE_SOURCE = 0xc2B984E37D1CAf5Eef82D9D892287361058955E9; - address internal constant FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE_OLD = 0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5; - address internal constant FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE_OLD = 0xa560E014501f96752726f65c27E96C3e9127Ce32; - address internal constant L1VEFXS_IMPLEMENTATION_OWNER = 0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6; - address internal constant L1VEFXS_PROXY_ADMIN_OWNER = 0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6; - address internal constant L1VEFXS_PROXY_ADMIN = 0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F; - address internal constant L1VEFXS_IMPL_V1 = 0xBDB5088A8e89e9ec83e82caA01EC20Ed976459eD; - address internal constant L1VEFXS_PROXY = 0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F; - address internal constant L1VEFXS_TOTAL_SUPPLY_ORACLE = 0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8; - address internal constant FXB_AMO = 0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313; - address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = 0x111ddab65Af5fF96b674400246699ED40F550De1; - address internal constant VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = 0x691d1AaFB550c35B24e09bb991AEC9612342eD93; - address internal constant VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = 0x39333a540bbea6262e405E1A6d435Bd2e776561E; - address internal constant YIELD_DISTRIBUTOR_PROXY = 0x21359d1697e610e25C8229B2C57907378eD09A2E; - address internal constant YIELD_DISTRIBUTOR_IMPL = 0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B; - address internal constant VESTEDFXS_UTILS = 0xC540f05BF5a09336078634D65E46242DFBa55030; - address internal constant VESTEDFXS_IMPL_V1 = 0x54bd5c72645fed784C117cA83533e0584b24Ee5c; - address internal constant VESTEDFXS_PROXY = 0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF; - address internal constant VEFXS_AGGREGATOR_PROXY = 0x176A4e081653EbB8a2246BAfbfCf663782426531; - address internal constant VEFXS_AGGREGATOR_IMPL = 0xF9Ca1Dc83B16C72b3359CEcD1d3Fc96d80dC4Fa6; - address internal constant COMPTROLLERS = 0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6; - address internal constant PROPOSER_MULTI_SIG = 0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE; - address internal constant GOV_PROPOSER_MSIG = 0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE; - address internal constant CVXSQUIDWFRXETH = 0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d; - address internal constant CVXSQUIDWFRXETH_REWARDER = 0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d; - address internal constant SQUIDWFRXETH = 0x277FA53c8a53C880E0625c92C92a62a9F60f3f04; - address internal constant SQUIDWFRXETH_GAUGE = 0xe5E5ed1B50AE33E66ca69dF17Aa6381FDe4e9C7e; - address internal constant SQUIDWFRXETH_POOL = 0x277FA53c8a53C880E0625c92C92a62a9F60f3f04; - address internal constant CROSS_DOMAIN_MESSENGER = 0x4200000000000000000000000000000000000007; - address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; - address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; - address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; - address internal constant FPIOFT = 0x75c38D46001b0F8108c4136216bd2694982C20FC; - address internal constant FRXETHOFT = 0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604; - address internal constant FRXUSDOFT = 0x96A394058E2b84A89bac9667B19661Ed003cF5D4; - address internal constant SFRXETHOFT = 0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168; - address internal constant SFRXUSDOFT = 0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361; - address internal constant WFRAXOFT = 0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A; - address internal constant FRAXTALHOP = 0x2A2019b30C157dB6c1C01306b8025167dBe1803B; - address internal constant FRAXTALMINTREDEEMHOP = 0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC; -} - -abstract contract AddressHelperFraxtalL2 is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX"); - vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI"); - vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS"); - vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH"); - vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_WFRXETH"); - vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_FRXBTC"); - vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_SFRAX"); - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_FRXUSD_PROXY"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_WFRAX_PROXY"); - vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_FPI_PROXY"); - vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_FPIS_PROXY"); - vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_SFRXETH_PROXY"); - vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_WFRXETH_PROXY"); - vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_FRXBTC_PROXY"); - vm.label(0xfc00000000000000000000000000000000000008, "Constants.FXTL_SFRAX_PROXY"); - vm.label(0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc, "Constants.FXTL_CONVEX_SQUID_WFRXETH_FRAXTAL"); - vm.label(0xCe70630b4b2E889AdC558b58B2980437f58003D4, "Constants.FXTL_FLE_FRAX_FXS_FRAXTAL"); - vm.label(0x7A6BE195f9931341c1f4c4230fc48F8B9b9dE91b, "Constants.FXTL_FLE_FXS_WFRXETH_FRAXTAL"); - vm.label(0x7b8848f10A016341c9B2427e8541C19F31C2D243, "Constants.FXTL_FRAXSWAP_V2_FRAX_FPI_FRAXTAL"); - vm.label(0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25, "Constants.FXTL_FRAXSWAP_V2_FRAX_FXS_FRAXTAL"); - vm.label(0xe402a39F788f90607A50254fAf56316E6a78231A, "Constants.FXTL_FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL"); - vm.label(0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7, "Constants.FXTL_FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL"); - vm.label(0x00a5b34d4b436E3276695a1EaA8242FA2FC11dC5, "Constants.FXTL_FXB_TIMED_LOCKER_20261231"); - vm.label(0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e, "Constants.FXTL_FXB_20261231"); - vm.label(0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba, "Constants.FXTL_FXB_20241231"); - vm.label(0x758094A71a39De49626FE25B86631ED944558653, "Constants.FXTL_FXB_20240630"); - vm.label(0xc38173d34afaea88bc482813b3cd267bc8a1ea83, "Constants.FXTL_FXB_20551231"); - vm.label(0xf1e2b576af4c6a7ee966b14c810b772391e92153, "Constants.FXTL_FXB_20291231"); - vm.label(0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca, "Constants.FXTL_FXB_20251231"); - vm.label(0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE"); - vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE"); - vm.label(0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE"); - vm.label(0xcD3A040f05769d7628582B403063e61B7D212F91, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE"); - vm.label(0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE"); - vm.label(0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CREWMEMBER"); - vm.label(0xA6cBe9aB6075d8b1049Db7528f2fCf22FC7d051B, "Constants.FXTL_CHAINLINK_ETH_USD_ORACLE"); - vm.label(0x0eD01ea3B95e0f68DF2c9CD67F138ff3547b311C, "Constants.FXTL_CIRCUIT_BREAKER_ADDRESS"); - vm.label(0x4C3B0e85CD8C12E049E07D9a4d68C441196E6a12, "Constants.FXTL_FRAXLEND_DEPLOYER_V4"); - vm.label(0x31562ae726AFEBe25417df01bEdC72EF489F45b3, "Constants.FXTL_FRAXLEND_HOT_WALLET"); - vm.label(0x8c22EBc8f9B96cEac97EA21c53F3B27ef2F45e57, "Constants.FXTL_FRAXLEND_PAIR_REGISTRY_ADDRESS"); - vm.label(0x64F85076665dcE1FbEfC23391b8BFB2595c250f6, "Constants.FXTL_FRAXLEND_WHITELIST_ADDRESS"); - vm.label(0x4200000000000000000000000000000000000015, "Constants.FXTL_FRAXTAL_BLOCKHASH_PROVIDER"); - vm.label(0x9990eb28E58380122AA3AdF64ea6f874df51114C, "Constants.FXTL_FRAXTAL_MERKLE_PRICE_SOURCE"); - vm.label(0xeD403d48e2bC946438B5686AA1AD65056Ccf9512, "Constants.FXTL_FRAXTAL_STATE_ROOT_ORACLE"); - vm.label(0x4b0Ca693e29e5FD2AA39332a0387BBCD0f91a527, "Constants.FXTL_FRXETH_DUAL_ORACLE_REDSTONE"); - vm.label(0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7, "Constants.FXTL_FXB_20240630_ORACLE"); - vm.label(0x01480a0C134CeCC309015a564C7e292ba6E0F358, "Constants.FXTL_FXB_20241231_ORACLE"); - vm.label(0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3, "Constants.FXTL_FXB_20261231_ORACLE"); - vm.label(0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6, "Constants.FXTL_FXB_20551231_ORACLE"); - vm.label(0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b, "Constants.FXTL_FXB_20291231_ORACLE"); - vm.label(0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18, "Constants.FXTL_FXB_20251231_ORACLE"); - vm.label(0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f, "Constants.FXTL_FXB_VARIABLE_RATE_2"); - vm.label(0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2, "Constants.FXTL_FXS_DUAL_ORACLE_REDSTONE"); - vm.label(0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c, "Constants.FXTL_SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE"); - vm.label(0xfbcDf41Cc692ed529b9a8cC1A5867B9524FD0164, "Constants.FXTL_SFRXETH_DUAL_ORACLE_REDSTONE"); - vm.label(0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2, "Constants.FXTL_TIMELOCK_ADDRESS"); - vm.label(0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652, "Constants.FXTL_VARIABLE_RATE_2_ADDRESS"); - vm.label(0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2, "Constants.FXTL_VARIABLE_RATE_2_ADDRESS_50"); - vm.label(0x032578d99b1070682a5E171012BE1756a50a17d4, "Constants.FXTL_FRAXLEND_PAIR_FXB_20261231_FRAX"); - vm.label(0x6154334A7D0E7f5f0479599D15F462B200C721E1, "Constants.FXTL_FRAXLEND_PAIR_FXB_20241231_FRAX"); - vm.label(0x57b709e214B239821A78dFCF09c89f52bA3D80aD, "Constants.FXTL_FRAXLEND_PAIR_FXB_20240630_FRAX"); - vm.label(0x3e92765eE2B009b104A8A7baf3759B159c19AbA1, "Constants.FXTL_FRAXLEND_PAIR_FXB_20291231_FRAX"); - vm.label(0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5, "Constants.FXTL_FRAXLEND_PAIR_FXB_20251231_FRAX"); - vm.label(0x4F968317721B9c300afBff3FD37365637318271D, "Constants.FXTL_FRAXLEND_PAIR_SFRXETH_FRAX"); - vm.label(0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2, "Constants.FXTL_FRAXLEND_PAIR_FXS_FRAX"); - vm.label(0xB71E4829e81f72f7F36A0d858e58109f5948A713, "Constants.FXTL_FRAXLEND_PAIR_SFRAX_SFRXETH"); - vm.label(0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838, "Constants.FXTL_SDAI_ERC4626_ORACLE"); - vm.label(0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a, "Constants.FXTL_SDAI_ORACLE_MERKLE_PRICE_SOURCE"); - vm.label(0xF750636E1df115e3B334eD06E5b45c375107FC60, "Constants.FXTL_SFRAX_ERC4626_ORACLE"); - vm.label(0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5, "Constants.FXTL_SFRAX_MERKLE_PRICE_SOURCE"); - vm.label(0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5, "Constants.FXTL_SFRXETH_ERC4626_ORACLE"); - vm.label(0xa560E014501f96752726f65c27E96C3e9127Ce32, "Constants.FXTL_SFRXETH_MERKLE_PRICE_SOURCE"); - vm.label(0xd295936C8Bb465ADd1eC756a51698127CB4F4910, "Constants.FXTL_SUSDE_ERC4626_ORACLE"); - vm.label(0xc2B984E37D1CAf5Eef82D9D892287361058955E9, "Constants.FXTL_SUSDE_MERKLE_PRICE_SOURCE"); - vm.label(0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, "Constants.FXTL_FRAXSWAP_FACTORY"); - vm.label(0x78d264E25781f31343352A0f91875B655c79B843, "Constants.FXTL_FRAXSWAP_FRAX_FPIS_PAIR"); - vm.label(0x7b8848f10A016341c9B2427e8541C19F31C2D243, "Constants.FXTL_FRAXSWAP_FRAX_FPI_FARM"); - vm.label(0x0EFFABede4e31101DE5209096611D073981A817b, "Constants.FXTL_FRAXSWAP_FRAX_FPI_PAIR"); - vm.label(0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25, "Constants.FXTL_FRAXSWAP_FRAX_FXS_FARM"); - vm.label(0xb4dA8dA10ffF1F6127ab71395053Aa1d499b503F, "Constants.FXTL_FRAXSWAP_FRAX_FXS_PAIR"); - vm.label(0xe402a39F788f90607A50254fAf56316E6a78231A, "Constants.FXTL_FRAXSWAP_FRAX_SFRXETH_FARM"); - vm.label(0xEBD293F2173082320d88533316F5964298dE316E, "Constants.FXTL_FRAXSWAP_FRAX_SFRXETH_PAIR"); - vm.label(0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7, "Constants.FXTL_FRAXSWAP_FRAX_WFRXETH_FARM"); - vm.label(0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6, "Constants.FXTL_FRAXSWAP_ROUTER"); - vm.label(0x67E04873691258950299Bd8610403D69bA0A1e10, "Constants.FXTL_FRAXSWAP_ROUTER_MULTIHOP"); - vm.label(0x4527bcEd9d41706D1436507e9a6e354d3FF44ff9, "Constants.FXTL_FRAXSWAP_WFRX_ETH_PAIR"); - vm.label(0x219356ef2f11a314Dd0D8bfd7f4B0B951Cb16c3a, "Constants.FXTL_BALANCE_CHECKER"); - vm.label(0x098c837FeF2e146e96ceAF58A10F68Fc6326DC4C, "Constants.FXTL_DELEGATION_REGISTRY"); - vm.label(0x437E9F65cA234eCfed12149109587139d435AD35, "Constants.FXTL_FPIS_LOCKER_PROXY"); - vm.label(0x2b72DF3116cEb8E8a7391024f69A0BfF2718389D, "Constants.FXTL_FPIS_LOCKER_IMPL"); - vm.label(0x9E461cF6773F168A991A7aD73E2aD89ecD737745, "Constants.FXTL_FPIS_LOCKER_UTILS"); - vm.label(0xaB4b7c5C9A7C8EbB97877085A6C3550ad4Ed3f97, "Constants.FXTL_FRAXTAL_POINTS_FXTL"); - vm.label(0xBFc4D34Db83553725eC6c768da71D2D9c1456B55, "Constants.FXTL_SFRAX_ERC4626_MINT_REDEEMER_PROXY"); - vm.label(0x0aF57786D6B2447EA2E04F9FAB36a239c2E8C9d5, "Constants.FXTL_SFRAX_ERC4626_MINT_REDEEMER_IMPL"); - vm.label(0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_ETHEREUM_FRAX"); - vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.FXTL_FRAXFERRY_ETHEREUM_FXS"); - vm.label(0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, "Constants.FXTL_FRAXFERRY_ETHEREUM_FPI"); - vm.label(0xcD3A040f05769d7628582B403063e61B7D212F91, "Constants.FXTL_FRAXFERRY_ETHEREUM_FPIS"); - vm.label(0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, "Constants.FXTL_FRAXFERRY_ETHEREUM_SFRXETH"); - vm.label(0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, "Constants.FXTL_FRAXFERRY_ETHEREUM_SFRAX"); - vm.label(0x4200000000000000000000000000000000000015, "Constants.FXTL_BLOCKHASH_PROVIDER"); - vm.label(0xeD403d48e2bC946438B5686AA1AD65056Ccf9512, "Constants.FXTL_STATE_ROOT_ORACLE"); - vm.label(0x9990eb28E58380122AA3AdF64ea6f874df51114C, "Constants.FXTL_MERKLE_PRICE_SOURCE"); - vm.label(0x4AD728706bFe28A3F090b3f1D8Ac3A8515805B41, "Constants.FXTL_CHAINLINK_MERKLE_PRICE_SOURCE"); - vm.label(0xEE095b7d9191603126Da584a1179BB403a027c3A, "Constants.FXTL_SFRXETH_L2_RATE_ORACLE"); - vm.label(0x1B680F4385f24420D264D78cab7C58365ED3F1FF, "Constants.FXTL_SFRAX_L2_RATE_ORACLE"); - vm.label(0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838, "Constants.FXTL_SDAI_L2_RATE_ORACLE"); - vm.label(0xd295936C8Bb465ADd1eC756a51698127CB4F4910, "Constants.FXTL_SUSDE_L2_RATE_ORACLE"); - vm.label(0x8865435777730eAAbAAF2d1F55F115a87AbCf91A, "Constants.FXTL_SFRXETH_L2_RATE_ORACLE_OLD"); - vm.label(0xF750636E1df115e3B334eD06E5b45c375107FC60, "Constants.FXTL_SFRAX_L2_RATE_ORACLE_OLD"); - vm.label(0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a, "Constants.FXTL_FRAXTAL_SDAI_MERKLE_PRICE_SOURCE"); - vm.label(0xE25D8aaa6dF41B94A415EE39cCEE0DF6673B9bDb, "Constants.FXTL_FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE"); - vm.label(0xabca0b314d15B3e28F24AC0ee84A63001d1b44Db, "Constants.FXTL_FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE"); - vm.label(0xc2B984E37D1CAf5Eef82D9D892287361058955E9, "Constants.FXTL_FRAXTAL_SUSDE_MERKLE_PRICE_SOURCE"); - vm.label(0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5, "Constants.FXTL_FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE_OLD"); - vm.label(0xa560E014501f96752726f65c27E96C3e9127Ce32, "Constants.FXTL_FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE_OLD"); - vm.label(0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6, "Constants.FXTL_L1VEFXS_IMPLEMENTATION_OWNER"); - vm.label(0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6, "Constants.FXTL_L1VEFXS_PROXY_ADMIN_OWNER"); - vm.label(0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F, "Constants.FXTL_L1VEFXS_PROXY_ADMIN"); - vm.label(0xBDB5088A8e89e9ec83e82caA01EC20Ed976459eD, "Constants.FXTL_L1VEFXS_IMPL_V1"); - vm.label(0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F, "Constants.FXTL_L1VEFXS_PROXY"); - vm.label(0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8, "Constants.FXTL_L1VEFXS_TOTAL_SUPPLY_ORACLE"); - vm.label(0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313, "Constants.FXTL_FXB_AMO"); - vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1"); - vm.label(0x691d1AaFB550c35B24e09bb991AEC9612342eD93, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_IMPL_V1"); - vm.label(0x39333a540bbea6262e405E1A6d435Bd2e776561E, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_PROXY_V1"); - vm.label(0x21359d1697e610e25C8229B2C57907378eD09A2E, "Constants.FXTL_YIELD_DISTRIBUTOR_PROXY"); - vm.label(0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B, "Constants.FXTL_YIELD_DISTRIBUTOR_IMPL"); - vm.label(0xC540f05BF5a09336078634D65E46242DFBa55030, "Constants.FXTL_VESTEDFXS_UTILS"); - vm.label(0x54bd5c72645fed784C117cA83533e0584b24Ee5c, "Constants.FXTL_VESTEDFXS_IMPL_V1"); - vm.label(0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF, "Constants.FXTL_VESTEDFXS_PROXY"); - vm.label(0x176A4e081653EbB8a2246BAfbfCf663782426531, "Constants.FXTL_VEFXS_AGGREGATOR_PROXY"); - vm.label(0xF9Ca1Dc83B16C72b3359CEcD1d3Fc96d80dC4Fa6, "Constants.FXTL_VEFXS_AGGREGATOR_IMPL"); - vm.label(0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6, "Constants.FXTL_COMPTROLLERS"); - vm.label(0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE, "Constants.FXTL_PROPOSER_MULTI_SIG"); - vm.label(0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE, "Constants.FXTL_GOV_PROPOSER_MSIG"); - vm.label(0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d, "Constants.FXTL_CVXSQUIDWFRXETH"); - vm.label(0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d, "Constants.FXTL_CVXSQUIDWFRXETH_REWARDER"); - vm.label(0x277FA53c8a53C880E0625c92C92a62a9F60f3f04, "Constants.FXTL_SQUIDWFRXETH"); - vm.label(0xe5E5ed1B50AE33E66ca69dF17Aa6381FDe4e9C7e, "Constants.FXTL_SQUIDWFRXETH_GAUGE"); - vm.label(0x277FA53c8a53C880E0625c92C92a62a9F60f3f04, "Constants.FXTL_SQUIDWFRXETH_POOL"); - vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_CROSS_DOMAIN_MESSENGER"); - vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_ERC20_FACTORY_PROXY"); - vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_L2_STANDARD_BRIDGE_PROXY"); - vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_L2_TO_L1_MESSAGE_PASSER"); - vm.label(0x75c38D46001b0F8108c4136216bd2694982C20FC, "Constants.FXTL_FPIOFT"); - vm.label(0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604, "Constants.FXTL_FRXETHOFT"); - vm.label(0x96A394058E2b84A89bac9667B19661Ed003cF5D4, "Constants.FXTL_FRXUSDOFT"); - vm.label(0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168, "Constants.FXTL_SFRXETHOFT"); - vm.label(0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361, "Constants.FXTL_SFRXUSDOFT"); - vm.label(0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A, "Constants.FXTL_WFRAXOFT"); - vm.label(0x2A2019b30C157dB6c1C01306b8025167dBe1803B, "Constants.FXTL_FRAXTALHOP"); - vm.label(0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC, "Constants.FXTL_FRAXTALMINTREDEEMHOP"); - } -} -library FraxtalTestnetL1 { - uint256 internal constant CHAIN_ID = 17000; - address internal constant PROXY_ADMIN = 0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e; - address internal constant COMPTROLLER = 0x88699c59E413e8A47117820D15d8D33b09B21edD; - address internal constant ADDRESS_MANAGER = 0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6; - address internal constant L1_CROSS_DOMAIN_MESSENGER_PROXY = 0x45A98115D5722C6cfC48D711e0053758E7C0b8ad; - address internal constant L1_ERC721_BRIDGE_PROXY = 0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53; - address internal constant L1_STANDARD_BRIDGE_PROXY = 0x0BaafC217162f64930909aD9f2B27125121d6332; - address internal constant L2_OUTPUT_ORACLE_PROXY = 0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32; - address internal constant OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = 0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6; - address internal constant OPTIMISM_PORTAL_PROXY = 0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d; - address internal constant SYSTEM_CONFIG_PROXY = 0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db; -} - -abstract contract AddressHelperFraxtalTestnetL1 is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e, "Constants.FXTL_TN_L1_PROXY_ADMIN"); - vm.label(0x88699c59E413e8A47117820D15d8D33b09B21edD, "Constants.FXTL_TN_L1_COMPTROLLER"); - vm.label(0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6, "Constants.FXTL_TN_L1_ADDRESS_MANAGER"); - vm.label(0x45A98115D5722C6cfC48D711e0053758E7C0b8ad, "Constants.FXTL_TN_L1_L1_CROSS_DOMAIN_MESSENGER_PROXY"); - vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.FXTL_TN_L1_L1_ERC721_BRIDGE_PROXY"); - vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.FXTL_TN_L1_L1_STANDARD_BRIDGE_PROXY"); - vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.FXTL_TN_L1_L2_OUTPUT_ORACLE_PROXY"); - vm.label(0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, "Constants.FXTL_TN_L1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); - vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.FXTL_TN_L1_OPTIMISM_PORTAL_PROXY"); - vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.FXTL_TN_L1_SYSTEM_CONFIG_PROXY"); - } -} -library FraxtalTestnetL2 { - uint256 internal constant CHAIN_ID = 2522; - address internal constant FRAX = 0xFc00000000000000000000000000000000000001; - address internal constant FXS = 0xFc00000000000000000000000000000000000002; - address internal constant FPI = 0xFc00000000000000000000000000000000000003; - address internal constant FPIS = 0xfc00000000000000000000000000000000000004; - address internal constant SFRXETH = 0xFC00000000000000000000000000000000000005; - address internal constant WFRXETH = 0xFC00000000000000000000000000000000000006; - address internal constant FRAXSWAP_FACTORY = 0xbc679bdd1bA59654bD50DEB03fd80dC97c713fF2; - address internal constant FRAXSWAP_ROUTER = 0x938d99A81814f66b01010d19DDce92A633441699; - address internal constant FRAXSWAP_ROUTER_MULTIHOP = 0x509728dC748586214Fa30cEF61359f136523F24d; - address internal constant COMPTROLLER = 0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160; - address internal constant PROXY_ADMIN = 0xfC00000000000000000000000000000000000007; - address internal constant CROSS_DOMAIN_MESSENGER = 0x4200000000000000000000000000000000000007; - address internal constant ERC20_FACTORY_PROXY = 0x4200000000000000000000000000000000000012; - address internal constant L2_STANDARD_BRIDGE_PROXY = 0x4200000000000000000000000000000000000010; - address internal constant L2_TO_L1_MESSAGE_PASSER = 0x4200000000000000000000000000000000000016; -} - -abstract contract AddressHelperFraxtalTestnetL2 is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xFc00000000000000000000000000000000000001, "Constants.FXTL_TN_L2_FRAX"); - vm.label(0xFc00000000000000000000000000000000000002, "Constants.FXTL_TN_L2_FXS"); - vm.label(0xFc00000000000000000000000000000000000003, "Constants.FXTL_TN_L2_FPI"); - vm.label(0xfc00000000000000000000000000000000000004, "Constants.FXTL_TN_L2_FPIS"); - vm.label(0xFC00000000000000000000000000000000000005, "Constants.FXTL_TN_L2_SFRXETH"); - vm.label(0xFC00000000000000000000000000000000000006, "Constants.FXTL_TN_L2_WFRXETH"); - vm.label(0xbc679bdd1bA59654bD50DEB03fd80dC97c713fF2, "Constants.FXTL_TN_L2_FRAXSWAP_FACTORY"); - vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.FXTL_TN_L2_FRAXSWAP_ROUTER"); - vm.label(0x509728dC748586214Fa30cEF61359f136523F24d, "Constants.FXTL_TN_L2_FRAXSWAP_ROUTER_MULTIHOP"); - vm.label(0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160, "Constants.FXTL_TN_L2_COMPTROLLER"); - vm.label(0xfC00000000000000000000000000000000000007, "Constants.FXTL_TN_L2_PROXY_ADMIN"); - vm.label(0x4200000000000000000000000000000000000007, "Constants.FXTL_TN_L2_CROSS_DOMAIN_MESSENGER"); - vm.label(0x4200000000000000000000000000000000000012, "Constants.FXTL_TN_L2_ERC20_FACTORY_PROXY"); - vm.label(0x4200000000000000000000000000000000000010, "Constants.FXTL_TN_L2_L2_STANDARD_BRIDGE_PROXY"); - vm.label(0x4200000000000000000000000000000000000016, "Constants.FXTL_TN_L2_L2_TO_L1_MESSAGE_PASSER"); - } -} -library Holesky { - uint256 internal constant CHAIN_ID = 17000; - address internal constant FRAX = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; - address internal constant FXS = 0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF; - address internal constant FPI = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; - address internal constant FPIS = 0x0363a32D18c25a3FD19a0d00B02106C03d8b8182; - address internal constant FRXETH = 0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e; - address internal constant SFRXETH = 0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3; - address internal constant FPI_ERC20 = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; - address internal constant FPIS_ERC20 = 0x0363a32D18c25a3FD19a0d00B02106C03d8b8182; - address internal constant FRAX_ERC20 = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; - address internal constant FXS_ERC20 = 0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF; - address internal constant SFRXETH_ERC20 = 0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3; - address internal constant FRXETH_ERC20 = 0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e; - address internal constant ADDRESS_MANAGER = 0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6; - address internal constant FRAXTAL_COMPTROLLER = 0x88699c59E413e8A47117820D15d8D33b09B21edD; - address internal constant L1_CROSS_DOMAIN_MESSENGER_PROXY = 0x45A98115D5722C6cfC48D711e0053758E7C0b8ad; - address internal constant L1_ERC721_BRIDGE_PROXY = 0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53; - address internal constant L1_STANDARD_BRIDGE_PROXY = 0x0BaafC217162f64930909aD9f2B27125121d6332; - address internal constant L2_OUTPUT_ORACLE_PROXY = 0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32; - address internal constant OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = 0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6; - address internal constant OPTIMISM_PORTAL_PROXY = 0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d; - address internal constant PROTOCOL_VERSIONS_PROXY = 0x0D2d3D6540638291C50db5521527d4115c8eddB7; - address internal constant PROXY_ADMIN = 0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e; - address internal constant SUPERCHAIN_CONFIG_PROXY = 0x089065000De745708B5EE76Be5dF236Eb6453b82; - address internal constant SYSTEM_CONFIG_PROXY = 0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db; - address internal constant FRXETH_MINTER = 0x5E8422345238F34275888049021821E8E08CAa1f; -} - -abstract contract AddressHelperHolesky is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.HOLESKY_FRAX"); - vm.label(0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF, "Constants.HOLESKY_FXS"); - vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.HOLESKY_FPI"); - vm.label(0x0363a32D18c25a3FD19a0d00B02106C03d8b8182, "Constants.HOLESKY_FPIS"); - vm.label(0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e, "Constants.HOLESKY_FRXETH"); - vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.HOLESKY_SFRXETH"); - vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.HOLESKY_FPI_ERC20"); - vm.label(0x0363a32D18c25a3FD19a0d00B02106C03d8b8182, "Constants.HOLESKY_FPIS_ERC20"); - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.HOLESKY_FRAX_ERC20"); - vm.label(0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF, "Constants.HOLESKY_FXS_ERC20"); - vm.label(0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3, "Constants.HOLESKY_SFRXETH_ERC20"); - vm.label(0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e, "Constants.HOLESKY_FRXETH_ERC20"); - vm.label(0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6, "Constants.HOLESKY_ADDRESS_MANAGER"); - vm.label(0x88699c59E413e8A47117820D15d8D33b09B21edD, "Constants.HOLESKY_FRAXTAL_COMPTROLLER"); - vm.label(0x45A98115D5722C6cfC48D711e0053758E7C0b8ad, "Constants.HOLESKY_L1_CROSS_DOMAIN_MESSENGER_PROXY"); - vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.HOLESKY_L1_ERC721_BRIDGE_PROXY"); - vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.HOLESKY_L1_STANDARD_BRIDGE_PROXY"); - vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.HOLESKY_L2_OUTPUT_ORACLE_PROXY"); - vm.label(0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, "Constants.HOLESKY_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); - vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.HOLESKY_OPTIMISM_PORTAL_PROXY"); - vm.label(0x0D2d3D6540638291C50db5521527d4115c8eddB7, "Constants.HOLESKY_PROTOCOL_VERSIONS_PROXY"); - vm.label(0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e, "Constants.HOLESKY_PROXY_ADMIN"); - vm.label(0x089065000De745708B5EE76Be5dF236Eb6453b82, "Constants.HOLESKY_SUPERCHAIN_CONFIG_PROXY"); - vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.HOLESKY_SYSTEM_CONFIG_PROXY"); - vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.HOLESKY_FRXETH_MINTER"); - } -} -library Hyperliquid { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - string internal constant REMOTEHOP = ""; - string internal constant REMOTEMINTREDEEMHOP = ""; -} - -abstract contract AddressHelperHyperliquid is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.HYPE_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.HYPE_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.HYPE_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.HYPE_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.HYPE_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.HYPE_WFRAXOFT"); - vm.label(, "Constants.HYPE_REMOTEHOP"); - vm.label(, "Constants.HYPE_REMOTEMINTREDEEMHOP"); - } -} -library Ink { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; - address internal constant REMOTEMINTREDEEMHOP = 0x452420df4AC1e3db5429b5FD629f3047482C543C; -} - -abstract contract AddressHelperInk is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.INK_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.INK_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.INK_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.INK_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.INK_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.INK_WFRAXOFT"); - vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.INK_REMOTEHOP"); - vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.INK_REMOTEMINTREDEEMHOP"); - } -} -library Katana { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c; - address internal constant REMOTEMINTREDEEMHOP = 0xF6f45CCB5E85D1400067ee66F9e168f83e86124E; -} - -abstract contract AddressHelperKatana is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.KTN_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.KTN_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.KTN_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.KTN_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.KTN_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.KTN_WFRAXOFT"); - vm.label(0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c, "Constants.KTN_REMOTEHOP"); - vm.label(0xF6f45CCB5E85D1400067ee66F9e168f83e86124E, "Constants.KTN_REMOTEMINTREDEEMHOP"); - } -} -library Linea { - address internal constant FPIOFT = 0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4; - address internal constant FRXETHOFT = 0xB1aFD04774c02AE84692619448B08BA79F19b1ff; - address internal constant FRXUSDOFT = 0xC7346783f5e645aa998B106Ef9E7f499528673D8; - address internal constant SFRXETHOFT = 0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2; - address internal constant SFRXUSDOFT = 0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6; - address internal constant WFRAXOFT = 0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5; - address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; - address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; -} - -abstract contract AddressHelperLinea is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4, "Constants.LINEA_FPIOFT"); - vm.label(0xB1aFD04774c02AE84692619448B08BA79F19b1ff, "Constants.LINEA_FRXETHOFT"); - vm.label(0xC7346783f5e645aa998B106Ef9E7f499528673D8, "Constants.LINEA_FRXUSDOFT"); - vm.label(0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2, "Constants.LINEA_SFRXETHOFT"); - vm.label(0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6, "Constants.LINEA_SFRXUSDOFT"); - vm.label(0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5, "Constants.LINEA_WFRAXOFT"); - vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.LINEA_REMOTEHOP"); - vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.LINEA_REMOTEMINTREDEEMHOP"); - } -} -library Mainnet { - uint256 internal constant CHAIN_ID = 1; - address internal constant FRAX = 0x853d955aCEf822Db058eb8505911ED77F175b99e; - address internal constant FXS = 0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0; - address internal constant FPI = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; - address internal constant FPIS = 0xc2544A32872A91F4A553b404C6950e89De901fdb; - address internal constant FRXETH = 0x5E8422345238F34275888049021821E8E08CAa1f; - address internal constant SFRXETH = 0xac3E018457B222d93114458476f3E3416Abbe38F; - address internal constant SFRAX = 0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32; - address internal constant FRAX_ERC20 = 0x853d955aCEf822Db058eb8505911ED77F175b99e; - address internal constant FXS_ERC20 = 0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0; - address internal constant FRXETH_ERC20 = 0x5E8422345238F34275888049021821E8E08CAa1f; - address internal constant SFRXETH_ERC20 = 0xac3E018457B222d93114458476f3E3416Abbe38F; - address internal constant AAVE_AFRAX = 0x02577b426F223A6B4f2351315A19ecD6F357d65c; - address internal constant ANGLE_FRAX_AGEUR_STAKING = 0xb40432243E4F317cE287398e72Ab8f0312fc2FE8; - address internal constant AURA_FRXETH_PXETH_DEPOSIT = 0x60aaA9b33e712A76F9421E46a75ec47fBDc8d4CB; - address internal constant BALANCER_FRXETH_PXETH_GAUGE_DEPRECATED = 0x1e64E373c143810524BDb1Ac8Dce35977d12e55d; - address internal constant BALANCER_SFRXETH_STETH_RETH_BPT = 0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a; - address internal constant BUNNI_FRAX_USDC_GAUGE = 0x50B4cDb17D3e10C9BC88b3744F3fD7c25695EEE7; - address internal constant BUNNI_FRXETH_WETH_GAUGE = 0xcbcCBA2FA84606Df153B593dD01c37a50ac8427C; - address internal constant CONVEX_STKCVXAGEURFRAXBP = 0xd1f21322bBDd3586dC1151ADCcaA2684641c2b31; - address internal constant CONVEX_STKCVXALCXFRAXBP = 0xA0657642224Fc53dAB4a3d2069430afe157BEc5D; - address internal constant CONVEX_STKCVXALUSDFRAXBP = 0x711d650Cd10dF656C2c28D375649689f137005fA; - address internal constant CONVEX_STKCVXAPEUSDFRAXBP = 0xa810D1268cEF398EC26095c27094596374262826; - address internal constant CONVEX_STKCVXBADGERFRAXBP = 0x5a92EF27f4baA7C766aee6d751f754EBdEBd9fae; - address internal constant CONVEX_STKCVXBUSDFRAXBP = 0xaCf54f101B86f9e55d35C0674Ebd8C854E5f80e4; - address internal constant CONVEX_STKCVXCLEVUSDFRAXBP = 0x5745506D56b0088f800085b1227B3f1F7d419c89; - address internal constant CONVEX_STKCVXCOILFRAXBP = 0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6; - address internal constant CONVEX_STKCVXCOILFRAXBP_DEPRECATED = 0x94c491e298625b1226a89DDA091B3932c59FAbc1; - address internal constant CONVEX_STKCVXCRVUSDFRAX = 0x67CC47cF82785728DD5E3AE9900873a074328658; - address internal constant CONVEX_STKCVXCVGFRAXBP = 0x1ee8D379e374A4A00e7d79AF4Bf2eD2b591561c2; - address internal constant CONVEX_STKCVXCVXCRVFRAXBP = 0x57c9F019B25AaAF822926f4Cacf0a860f61eDd8D; - address internal constant CONVEX_STKCVXCVXFRAXBP = 0xeC670c5e0A8A8d5ae5639158565D840DE44CA03f; - address internal constant CONVEX_STKCVXCVXFXSFRAXBP = 0x2F9504988675c91787E188Ed928D6E042d9052e9; - address internal constant CONVEX_STKCVXDOLAFRAXBP = 0xE7211E87D60177575846936F2123b5FA6f0ce8Ab; - address internal constant CONVEX_STKCVXDOLAFRAXPYUSD = 0x972d92f4563Ac9581c730A13A47Ae9d6dCdf18b7; - address internal constant CONVEX_STKCVXEUSDFRAXBP = 0x4c9AD8c53d0a001E7fF08a3E5E26dE6795bEA5ac; - address internal constant CONVEX_STKCVXFPIFRAX = 0x0a08673E3d7c454E1c6b27acD059C50Df6727FC9; - address internal constant CONVEX_STKCVXFRAXBP = 0x963f487796d54d2f27bA6F3Fbe91154cA103b199; - address internal constant CONVEX_STKCVXFRAXFPI_NG = 0x7d69b887751Af59fB4b56BC98fcA0234096Eb267; - address internal constant CONVEX_STKCVXFRAXFXB_20240630 = 0x6D54747fC8e32cA1A91bA2fd36aB673bD84E2e7b; - address internal constant CONVEX_STKCVXFRAXFXB_20241231 = 0x9D7eB7Ec34283D93C6677AE30F3983399Ab72A2f; - address internal constant CONVEX_STKCVXFRAXFXB_20261231 = 0x9A95396eC04B55de54859C06fd75dFb8466F4653; - address internal constant CONVEX_STKCVXFRAXPYUSD = 0x18FEFE5Db2D63aCaa8b5520AFde32507216d39e1; - address internal constant CONVEX_STKCVXFRAXSDAI = 0x90EB2F13Acf1bc35c2c40c0EBaff2De4d2Eb0d6b; - address internal constant CONVEX_STKCVXFRAXUSDP = 0x2A5b8C7DFE489CeB00ec80524C0bA0C1b78433A9; - address internal constant CONVEX_STKCVXFRXETHALETH = 0x56790e4A08eD17aa3b7b4B1b23A6a84D731Fd77e; - address internal constant CONVEX_STKCVXFRXETHANKRETH = 0x854B98dC1F76c92b22F75d1f33D23FEb64D8087F; - address internal constant CONVEX_STKCVXFRXETHCBETH = 0x16e55917849aC7fA4341470FA3A22bB503D5cACD; - address internal constant CONVEX_STKCVXFRXETHCRV = 0xDA0622cBa8cC821ee0d4AfA366Df95E948b43297; - address internal constant CONVEX_STKCVXFRXETHCVX = 0xb01BaB994b52A37a231551f00a1B7cAcd43bc8C9; - address internal constant CONVEX_STKCVXFRXETHETH = 0xa537d64881b84faffb9Ae43c951EEbF368b71cdA; - address internal constant CONVEX_STKCVXFRXETHMSETH = 0x2816Ab1F4Db656602b6B0041c006652A4F5D0437; - address internal constant CONVEX_STKCVXFRXETHPETH = 0xD591A551bC1776A7Ce066a5Df7640266afc850bF; - address internal constant CONVEX_STKCVXFRXETHPXETH = 0xC68A0174401AE002D6DbA8C9788C6dF4c807BD52; - address internal constant CONVEX_STKCVXFRXETHRETH = 0x719505cB97DF15565255eb1bDe65586271dB873C; - address internal constant CONVEX_STKCVXFRXETHRETH_STAFI = 0x76CF35aB1450D3A6c84EdDB8A960A5F65B76e706; - address internal constant CONVEX_STKCVXFRXETHSETH = 0xd79Ae34eD6D11A235629A48aeA9F661a241faD4f; - address internal constant CONVEX_STKCVXFRXETHSTETH = 0x68921998fbc43B360D3cF14a03aF4273CB0cFA44; - address internal constant CONVEX_STKCVXFRXETHWETH = 0xB4fdD7444E1d86b2035c97124C46b1528802DA35; - address internal constant CONVEX_STKCVXFRXETHZETH = 0x882B9fad02D1a7436449dcdE9934Eeb9E287909c; - address internal constant CONVEX_STKCVXFRXETHZUNETH = 0xE2E998A68C6f1D10c41884931457B7C302C6fA97; - address internal constant CONVEX_STKCVXGRAIFRAXBP = 0x5684d5566bb438D8Ef7B3C1E5da9450cD19C1b9f; - address internal constant CONVEX_STKCVXGUSDFRAXBP = 0xF0Ffe16810B7f412c52C1610e3BC9819A7Dcb366; - address internal constant CONVEX_STKCVXLUSDFRAXBP = 0xF0A9b6F6593b4Bf96E1Ab13921A8a3FbFd9d4F16; - address internal constant CONVEX_STKCVXMAIFRAXBP = 0xdE5684F85a78F6CcCFFB4b9301ad0944eb5CE3eE; - address internal constant CONVEX_STKCVXMKUSDFRAXBP = 0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc; - address internal constant CONVEX_STKCVXMSUSDFRAXBP = 0xfB2CCc82755A734C53C8B45f260fFc2df026fe87; - address internal constant CONVEX_STKCVXOHMFRAXBP = 0xc96e1a26264D965078bd01eaceB129A65C09FFE7; - address internal constant CONVEX_STKCVXPUSDFRAXBP = 0x40b42E4ab3c044e67CBFb0bD99C9E975dcB83668; - address internal constant CONVEX_STKCVXRSRFRAXBP = 0xF22D3C85e41Ef4b5Ac8Cb8B89a14718e290a0561; - address internal constant CONVEX_STKCVXSDTFRAXBP = 0x9C8d9667d5726aEcA4d24171958BeE9F46861bed; - address internal constant CONVEX_STKCVXSTGFRAXBP = 0xd600A3E4F57E718A7ad6A0cbb10c2A92c57827e6; - address internal constant CONVEX_STKCVXSUSDFRAXBP = 0x560c7668459221e33ED515D1D17c09ECda1996f5; - address internal constant CONVEX_STKCVXSWETHFRXETH = 0x7b8848f10A016341c9B2427e8541C19F31C2D243; - address internal constant CONVEX_STKCVXTRICRYPTOFRAX = 0x5C0238c4C8f13370001632806C87066B90F1E383; - address internal constant CONVEX_STKCVXTRISDT = 0x50Cde910D1f8b6C787b7903d23082542593E0710; - address internal constant CONVEX_STKCVXTUSDFRAXBP = 0xb324b2BD8a3Dc55b04111E84d5cce0c3771F8889; - address internal constant CONVEX_STKCVXUSDDFRAXBP = 0xF7242A1cE383174802818febB36B6eebb56d5BFb; - address internal constant CONVEX_STKCVXUZDFRAXBP = 0xb8ebc210BCF78be8Ef3F09Dd0d8e85Fa5e252e86; - address internal constant CONVEX_STKCVXUZDFRAXBP_DEPRECATED = 0x7838d18AD75372061a1e71e1499b7E90832c1508; - address internal constant CONVEX_STKCVXUZDFRAXBP_DEPRECATED_OLD = 0x7677D1AADcd42dC40E758115FfDE5e1E10B7f30b; - address internal constant CONVEX_STKCVXXAIFRAXBP = 0x4edF7C64dAD8c256f6843AcFe56876024b54A1b6; - address internal constant CONVEX_STKCVXZUSDFRAXBP = 0x107a33019910E57533Ad4F75762d6A958630cA3d; - address internal constant CURVE_FRAX3CRV_F_2 = 0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC; - address internal constant DFORCE_FRAX_LENDING_ETHEREUM = 0x71173e3c6999c2C72ccf363f4Ae7b67BCc7E8F63; - address internal constant FLUX_FINANCE_FFRAX = 0x1C9A2d6b33B4826757273D47ebEe0e2DddcD978B; - address internal constant FRAXLEND_V1_FRAX_FXS = 0x73e1e624C6d3E027b8674e6C72F104F1429FC17E; - address internal constant FRAXSWAP_V1_FRAX_IQ = 0x5e15E40A3AA06bECA711EdE9F3F76E1d80C34490; - address internal constant FRAXSWAP_V1_FRAX_IQ_V2 = 0xBF33B67F243a4DAbED494Ff5840f113B2E202a0d; - address internal constant FRAXSWAP_V1_FRAX_IQ_V3 = 0x35678017e1D252dA1CdD6745b147E3e75d1f9C27; - address internal constant FRAXSWAP_V1_FRAX_PITCHFXS = 0x9E66E7811fEacf5402B65021475d1A293f7ea797; - address internal constant FRAXSWAP_V1_FRAX_PITCHFXS_V2 = 0x899Aa575E0e46344D18471f69337663C48b76e35; - address internal constant FRAXSWAP_V1_FRAX_PITCHFXS_V3 = 0x24C66Ba25ca2A53bB97B452B9F45DD075b07Cf55; - address internal constant FRAXSWAP_V1_FRAX_SYN = 0xE8453a2e8E97cba69365A1d727Fde3768b18d814; - address internal constant FRAXSWAP_V2_FRAX_FPIS = 0x9d46C0584C5C89e14fb1143e2414712feF36f00F; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0x3F2E53B1A3036Fd33F3c2f3cC49daB26A88DF2e0; - address internal constant FRAXSWAP_V2_FRAX_IQ = 0x7af00CF8D3a8A75210a5Ed74f2254E2EC43B5B5b; - address internal constant FRAXSWAP_V2_FRAX_OHM = 0xf562B2f33b3c90d5D273f88Cdf0CeD866E17092e; - address internal constant FRAXSWAP_V2_FRAX_PITCHFXS = 0xa632Fab76Fe013199c8271Ac22b466b9D11BFe88; - address internal constant FRAXSWAP_V2_FRAX_SDL = 0x8875A328EaDb1e142f4021Fc2098096796a30cf8; - address internal constant FRAXSWAP_V2_FRAX_SYN = 0x788E44b6424A0e4160Ae4766E86640EC5a6baD5b; - address internal constant FRAXSWAP_V2_FRAX_ZZ = 0x38950D42CD549842B3Fc862a45F00eB24331F462; - address internal constant GEARBOX_DFRAX = 0x8A1112AFef7F4FC7c066a77AABBc01b3Fff31D47; - address internal constant GELATO_UNISWAP_FRAX_DAI = 0xcdfc491804A420b677f8e788B5157856910E2F6f; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC = 0x21AF9DBa45989512468B08d13978e9040cc0cEF6; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_DEPRECATED = 0x90d52cdc60B7FF7994095Aa184694225035E8A60; - address internal constant KYBERSWAP_ELASTIC_FRXETH_ETH = 0x6b96465F5e51C01134e0e64bff19f922fA7337C7; - address internal constant KYBERSWAP_ELASTIC_FRXETH_ETH_DEPRECATED = 0x0cF99bbc8794e09e713769c4352eB3318e25c975; - address internal constant KYBERSWAP_ELASTIC_FRXETH_FRAX = 0xaDf48a504b7E7262FE9BFC62Ab11894187590BB7; - address internal constant MONOLITH_MO_SAMM_FRAX_USDT = 0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264; - address internal constant MONOLITH_MO_SAMM_FRXETH_WETH = 0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96; - address internal constant MONOLITH_MO_VAMM_FXS_FRXETH = 0x520b8e754768EEed9a37d78de76Cd5d75456b92F; - address internal constant PICKLE_FINANCE_CURVE_CVXFXS_FXS = 0x6667c53D631410649B1826D21cFdf41E7a7aE6b1; - address internal constant PICKLE_FINANCE_PVEFXS_BRINERY = 0x62826760CC53AE076a7523Fd9dCF4f8Dbb1dA140; - address internal constant PICKLE_FINANCE_SADDLE_D4 = 0x08cb0A0ba8e4f143e4e6F7BED65E02b6dFb9A16C; - address internal constant PICKLE_FINANCE_UNIV3_FRAX_DAI = 0xA50e005c3f2f3Cd1f56B09DF558816CfCe25E934; - address internal constant PICKLE_FINANCE_UNIV3_FRAX_USDC = 0x6092cdE5762FA9F5c8D081fb0c5eD23601f0F400; - address internal constant SADDLE_ALUSD_FEI_FRAX_LUSD = 0x0639076265e9f88542C91DCdEda65127974A5CA5; - address internal constant SOLIDLY_SAMM_FRAX_USDC = 0x810E190Be9592615D75c514C0f9D8c9b79eB8056; - address internal constant SOLIDLY_SAMM_FRAX_USDT = 0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264; - address internal constant SOLIDLY_SAMM_FRXETH_WETH = 0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96; - address internal constant SOLIDLY_VAMM_FRAX_FRXETH = 0xFae2B6Cac80635Cf768c9B68A4f453DB00BC79F0; - address internal constant SOLIDLY_VAMM_FXS_FRXETH = 0x520b8e754768EEed9a37d78de76Cd5d75456b92F; - address internal constant SOMMELIER_FRAXIMAL = 0x290a42E913083Edf5AEFb241f8A12B306C19f8f9; - address internal constant STAKEDAO_CVXFXS_FXS = 0xAB1927160EC7414C6Fa71763E2a9f3D107c126dd; - address internal constant STAKEDAO_FRAX3CRV = 0x72E158d38dbd50A483501c24f792bDAAA3e7D55C; - address internal constant STAKEDAO_FRAX_USDC = 0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503; - address internal constant STAKEDAO_FRXETHCRV = 0x2932a86df44Fe8D2A706d8e9c5d51c24883423F5; - address internal constant STAKEDAO_SANFRAX = 0xb40432243E4F317cE287398e72Ab8f0312fc2FE8; - address internal constant STAKEDAO_SDETH_FRAXPUT = 0x0A53544b2194Dd8Ebc62c779043fc0624705BB56; - address internal constant STAKEDAO_SDFRAX3CRV_F = 0xEB81b86248d3C2b618CcB071ADB122109DA96Da2; - address internal constant STAKEDAO_SDFXS = 0xF3C6e8fbB946260e8c2a55d48a5e01C82fD63106; - address internal constant STAKEDAO_SDFXS_FXS = 0xa9A9BC60fc80478059A83f516D5215185eeC2fc0; - address internal constant STAKEDAO_SFRXETH_STETH_RETH_BPT = 0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a; - address internal constant STARGATE_BRIDGE_LIQUIDITY_FRAX_ETHEREUM = 0xB0D502E938ed5f4df2E681fE6E419ff29631d62b; - address internal constant SUSHI_FRAX_SUSHI = 0xb4Ab0dE6581FBD3A02cF8f9f265138691c3A7d5D; - address internal constant TEMPLE_FRAX_TEMPLE = 0x10460d02226d6ef7B2419aE150E6377BdbB7Ef16; - address internal constant TOKEMAK_FRAX_STAKING = 0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2; - address internal constant TOKEMAK_FXS_STAKING = 0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655; - address internal constant UNISWAP_FEI_TRIBE = 0x9928e4046d7c6513326cCeA028cD3e7a91c7590A; - address internal constant UNISWAP_FRAX_FXS = 0xda2c338350a0E59Ce71CDCED9679A3A590Dd9BEC; - address internal constant UNISWAP_FRAX_IQ = 0xF37057823910653a554d996B49E3399DC87fAE1b; - address internal constant UNISWAP_FRAX_OHM = 0xfC77A420f56Dec53e3b91D7FC936902e132335FF; - address internal constant UNISWAP_FRAX_USDC = 0xa29367a3f057F3191b62bd4055845a33411892b6; - address internal constant UNISWAP_FRAX_WETH = 0xD875628B942f8970De3CcEaf6417005F68540d4f; - address internal constant UNISWAP_FXS_WETH = 0xDc65f3514725206Dd83A8843AAE2aC3D99771C88; - address internal constant UNISWAP_V3_FRAX_AGEUR = 0xf8caEd1943B15B877D7105B9906a618c154f69E8; - address internal constant UNISWAP_V3_FRAX_DAI = 0xF22471AC2156B489CC4a59092c56713F813ff53e; - address internal constant UNISWAP_V3_FRAX_USDC = 0x3EF26504dbc8Dd7B7aa3E97Bc9f3813a9FC0B4B0; - address internal constant VEFPIS_FPIS_STAKING = 0x574C154C83432B0A45BA3ad2429C3fA242eD7359; - address internal constant VEFXS_FXS_STAKING = 0xc8418aF6358FFddA74e09Ca9CC3Fe03Ca6aDC5b0; - address internal constant VESPER_ORBIT_FRAX = 0x698137C473bc1F0Ea9b85adE45Caf64ef2DF48d6; - address internal constant YEARN_CRVFRAX_VAULT_V3 = 0x1A5ebfF0E881Aec34837845e4D0EB430a1B4b737; - address internal constant SLIPPAGE_AUCTION_FACTORY = 0xc9268c7F59850B26567b0f5d3Dcc317cEDC43490; - address internal constant FXB_FACTORY = 0xa8478781D9605E17c3b4c9C79e7127c4597116E4; - address internal constant FXB_AMO = 0x452420df4AC1e3db5429b5FD629f3047482C543C; - address internal constant FXB_AMO_TIMELOCK = 0x831822660572bd54ebaa065C2acef662a6277D40; - address internal constant FXB_20240630 = 0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e; - address internal constant AUCTION_20240630 = 0xC92067D8DDb1970ecB93202DA31a3C45cC2c1F44; - address internal constant ORACLE_20240630 = 0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97; - address internal constant CURVE_20240630_MAINNET_POOL = 0x4ef4c7519023F30A78647EEab321d6cFabC2513c; - address internal constant FXB_20241231 = 0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09; - address internal constant AUCTION_20241231 = 0xc9aa98788a675FF0846E8856cb83F19452f3b0c8; - address internal constant FXB_20241231_ORACLE = 0x08a0748cF885F46e20fA30A50a035808eab293D3; - address internal constant CURVE_20241231_MAINNET_POOL = 0x6307E6688819951Cf8D6B6066018243D2496952F; - address internal constant CURVE_20241231_ARBITRUM_POOL = 0xE920eEdAff6c3BEd1Ef61010B64d46986634E908; - address internal constant CURVE_20241231_ARBITRUM_GAUGE = 0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68; - address internal constant FXB_20261231 = 0x76237BCfDbe8e06FB774663add96216961df4ff3; - address internal constant AUCTION_20261231 = 0x63981f5E690eaF7E8795c42832664e8848F532fB; - address internal constant FXB_20261231_ORACLE = 0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707; - address internal constant CURVE_20261231_MAINNET_POOL = 0xe035e27A8eD6842b478933820f90093D205F7098; - address internal constant CURVE_20261231_ARBITRUM_POOL = 0x946adc524BD312D036776798c46ceDD948DD0A0f; - address internal constant CURVE_20261231_ARBITRUM_GAUGE = 0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = 0x4b8792aF00eaE944484bF572bc33029B2184a50C; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; - address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = 0xA381d58e96eC3818c825E1fb264099448945CF8b; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = 0x18A5ca670dC42D0551f00E11A730074f6787f17F; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = 0xF380200B115Caa22D49e6C115b758d6130377620; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; - address internal constant FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE = 0x3eF1d856EA62A2292B8690855042095a7aC48B4b; - address internal constant FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE = 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE = 0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE = 0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE = 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE = 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = 0x621D0e62f26314387f338A2509aFA3Ae3414661A; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE = 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9; - address internal constant FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE = 0x2d2261f970F605C813f160E8BAEd455E9004A842; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = 0xfB788F9E20ef426a32A67986654750172A6c1788; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE = 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = 0x9A576A3d39c589A861B46864C253288bcA428a6c; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = 0x958815f476cD07354c0BC034EE5077B20fD93003; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = 0x228567c10b7533C88057c10dDeA6349360F122c5; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = 0x86E71075e55F0aaD27D700017E0783458310c98a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = 0xF887C4cFAAfB43d1AA7De204344895591016772c; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE = 0x27E97F35D80514D5DD1Caa730e22a292E912a214; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE = 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; - address internal constant FRAXFERRY_CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAX_POOL_USDC = 0x3C2982CA260e870eee70c423818010DfeF212659; - address internal constant FRAX_POOL_USDC_V2 = 0x1864Ca3d47AaB98Ee78D11fc9DCC5E7bADdA1c0d; - address internal constant FRAX_POOL_USDT = 0x7d3FCd3825AE54E8E8FFD3d0ce95882330d54968; - address internal constant FRAX_POOL_V3 = 0x2fE065e6FFEf9ac95ab39E5042744d695F560729; - address internal constant AAVE_ERC20 = 0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9; - address internal constant AAVE_TOKEN_DUAL_ORACLE_ADDRESS = 0x3284E1BCEaf70767A7575d0e1e10fAFbC4618B52; - address internal constant AAVE_USD_CHAINLINK_ORACLE = 0x547a514d5e3769680Ce22B2361c10Ea13619e8a9; - address internal constant APECOIN_DUAL_ORACLE_ADDRESS = 0x2CDF5812F4ebcF3BD533E8918D47Bd3e65514520; - address internal constant APE_ERC20 = 0x4d224452801ACEd8B2F0aebE155379bb5D594381; - address internal constant APE_USD_CHAINLINK_ORACLE = 0xD10aBbC76679a20055E167BB80A24ac851b37056; - address internal constant BTC_USD_CHAINLINK_ORACLE = 0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c; - address internal constant CHAIN_LINK_TOKEN_DUAL_ORACLE = 0x7F09c398740518F8e34556D8C1A1FBE1cb1F6Db0; - address internal constant CIRCUIT_BREAKER_ADDRESS = 0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c; - address internal constant COMBO_ORACLE = 0x878f2059435a19C79c20318ee57657bF4543B6d4; - address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC = 0x734fd1fD1f3720379f52cB9d8168d76Cd1ca4A73; - address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xc3a483Bb5F96bC4E6104325aa1A229A8E29166B3; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x1cBE07F3b3bf3BDe44d363cecAecfe9a98EC2dff; - address internal constant FRAXLEND_COMPTROLLER_ADDRESS = 0x168200cF227D4543302686124ac28aE0eaf2cA0B; - address internal constant CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP = 0x8A2112B42AF1F997002FBAfF77dd09F42A281e8d; - address internal constant CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP = 0x45127c7fA0c3Ce6A18fEc9604D96eDfBBc8A9700; - address internal constant CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD = 0x54a3A6aFd87F10Eea4Acc2A067A2C0b612B6D315; - address internal constant CONVEX_WRAPPER_FRXETH_ETH_FRAXLEND_LP_OLD = 0xd1b222AAEdf2877CeEB3c66BDaA6858200eb48fC; - address internal constant CPI_TRACKER_ORACLE = 0x7086F2aCB5558043fF9cE3df346D8E3FB4F4f452; - address internal constant CPI_TRACKER_ORACLE_V2 = 0x66B7DFF2Ac66dc4d6FBB3Db1CB627BBb01fF3146; - address internal constant CRV_ERC20 = 0xD533a949740bb3306d119CC777fa900bA034cd52; - address internal constant CRV_USD_CHAINLINK_ORACLE = 0xCd627aA160A6fA45Eb793D19Ef54f5062F20f33f; - address internal constant CVX_ERC20 = 0x4e3FBD56CD56c3e72c1403e103b45Db9da5B9D2B; - address internal constant CVX_USD_CHAINLINK_ORACLE = 0xd962fC30A72A84cE50161031391756Bf2876Af5D; - address internal constant ETH_USD_CHAINLINK_ORACLE = 0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419; - address internal constant EZETHETH_DUAL_ORACLE = 0x8216AE38454cCe2d52dEcf0442042250Ea6A2510; - address internal constant EZETH_DUAL_ORACLE = 0xB020ab0E609d907578f6899a9469E3CbD79e4e70; - address internal constant EZETH_ERC20 = 0xbf5495Efe5DB9ce00f80364C8B423567e58d2110; - address internal constant FIL_ERC20 = 0xB8B01cec5CEd05C457654Fc0fda0948f859883CA; - address internal constant FIL_ETH_CHAINLINK_ORACLE = 0x0606Be69451B1C9861Ac6b3626b99093b713E801; - address internal constant FIL_USD_CHAINLINK_ORACLE = 0x1A31D42149e82Eb99777f903C08A2E41A00085d3; - address internal constant FPIS_ERC20 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; - address internal constant FPI_CONTROLLER_POOL_ADDRESS = 0x2397321b301B80A1C0911d6f9ED4b6033d43cF51; - address internal constant FPI_ERC20 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; - address internal constant FPI_ORACLE = 0xd2516e709a2e9D64F66B4c4009efE4F74F5FA40D; - address internal constant FPI_ORACLE_V2 = 0x2469757756ebA7Bea6B7F054896e3Db74103A962; - address internal constant FRAXBP_CURVE_LP_DUAL_ORACLE = 0x251d4fE77eD73126583Ee347041258ABeEcB7C66; - address internal constant FRAXLEND_DEPLOYER_ADDRESS_V0 = 0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044; - address internal constant FRAXLEND_PAIRDEPLOYER = 0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044; - address internal constant FRAXLEND_PAIRHELPER = 0x26fa88b783cE712a2Fa10E91296Caf3daAE0AB37; - address internal constant FRAXLEND_PAIR_DEPLOYER_ADDRESS = 0x38488dE975B77dc1b0D4B8569f596f6FD6ca0B92; - address internal constant FRAXLEND_PAIR_DEPLOYER_CONVEX_ADDRESS = 0xC4e34AD5908c4D2508a26C20c8687Ff64CB9e05b; - address internal constant FRAXLEND_PAIR_DEPLOYER_V3_ADDRESS = 0xaa913C26dD7723Fcae9dBD2036d28171a56C6251; - address internal constant FRAXLEND_PAIR_DEPLOYER_V41_ADDRESS = 0xEb8816BAEB70690660ce6C0eDA2b07A21493e664; - address internal constant FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = 0x7AB788d0483551428f2291232477F1818952998C; - address internal constant FRAXLEND_PAIR_HELPER = 0x1b0bCeD6dd26a7c234506E261BC68C9A3A4031b7; - address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0xD6E9D27C75Afd88ad24Cd5EdccdC76fd2fc3A751; - address internal constant FRAXLEND_WHITELIST_ADDRESS = 0x118C1462AA28bF2ea304f78f49C3388cfd93234e; - address internal constant FRAXSWAP_ROUTER_ADDRESS = 0xC14d550632db8592D1243Edc8B95b0Ad06703867; - address internal constant FRAX_HOT_WALLET = 0xdB3388e770F49A604E11f1a2084B39279492a61f; - address internal constant FRAX_USDC_CURVE_LP_DUAL_ORACLE_ADDRESS = 0x2Ad35cce2a690E0bF1e6dCAC2F9175389F31D7F4; - address internal constant FRAX_USDC_CURVE_POOL_LP_ERC20 = 0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC; - address internal constant FRAX_USDC_CURVE_POOL_NOT_LP = 0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2; - address internal constant FRAX_USDC_PLAIN_POOL = 0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2; - address internal constant FRAX_USD_CHAINLINK_ORACLE = 0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD; - address internal constant FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS = 0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB; - address internal constant FRXETH_ETH_CURVE_POOL_LP_ERC20 = 0xf43211935C781D5ca1a41d2041F397B8A7366C7A; - address internal constant FRXETH_ETH_CURVE_POOL_NOT_LP = 0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577; - address internal constant FRXETH_ETH_DUAL_ORACLE_ADDRESS = 0xb12c19C838499E3447AFd9e59274B1BE56b1546A; - address internal constant FRXETH_FRAX_ORACLE_ADDRESS = 0xC58F3385FBc1C8AD2c0C9a061D7c13b141D7A5Df; - address internal constant FXB_20240630_ERC20 = 0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e; - address internal constant FXB_20240630_ORACLE = 0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97; - address internal constant FXB_20241231_ERC20 = 0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09; - address internal constant FXB_20241231_ORACLE_ADAPTER = 0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617; - address internal constant FXB_20261231_ERC20 = 0x76237BCfDbe8e06FB774663add96216961df4ff3; - address internal constant FXB_20261231_ORACLE_ADAPTER = 0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3; - address internal constant FXB_VARIABLE_RATE_2 = 0x01480a0C134CeCC309015a564C7e292ba6E0F358; - address internal constant FXS_USD_CHAINLINK_ORACLE = 0x6Ebc52C8C1089be9eB3945C4350B68B8E4C2233f; - address internal constant GOHM_ERC20 = 0x0ab87046fBb341D058F17CBC4c1133F25a20a52f; - address internal constant GOHM_ORACLE = 0xe893297a9d4310976424fD0B25f53aC2B6464fe3; - address internal constant LDO_DUAL_ORACLE = 0x883Aa2E1E46b53648520E0F6857e2ee1798F3e5d; - address internal constant LDO_ERC20 = 0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32; - address internal constant LDO_ETH_CHAINLINK_ORACLE = 0x4e844125952D32AcdF339BE976c98E22F6F318dB; - address internal constant LDO_ETH_CURVE_V2_POOL = 0x9409280DC1e6D33AB7A8C6EC03e5763FB61772B5; - address internal constant LINEAR_INTEREST_RATE = 0x2f3511C5E960040369F68508ebb366DF58DF1BF2; - address internal constant LINEAR_RATE_ADDRESS = 0x2f3511C5E960040369F68508ebb366DF58DF1BF2; - address internal constant LINK_ERC20 = 0x514910771AF9Ca656af840dff83E8264EcF986CA; - address internal constant LINK_USD_CHAINLINK_ORACLE = 0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c; - address internal constant MAKER_DUAL_ORACLE_ADDRESS = 0x4c7b43EcE8958D7f6b184B3833DD1D383db1f83b; - address internal constant MKR_ERC20 = 0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2; - address internal constant MKR_ETH_CHAINLINK_ORACLE = 0x24551a8Fb2A7211A25a17B1481f043A8a8adC7f2; - address internal constant MKR_USD_CHAINLINK_ORACLE = 0xec1D1B3b0443256cc3860e24a46F108e699484Aa; - address internal constant OHMV2_ETH_CHAINLINK_ORACLE = 0x9a72298ae3886221820B1c878d12D872087D3a23; - address internal constant RETH_DUAL_ORACLE = 0x8161EDD2208247066FA213EDA909B0D351543b3d; - address internal constant RETH_ERC20 = 0xae78736Cd615f374D3085123A210448E74Fc6393; - address internal constant RSETHETH_DUAL_ORACLE = 0x16BAb4C46b36587609093633550816fc828817Ba; - address internal constant RSETH_ERC20 = 0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7; - address internal constant SFRAX_ERC20 = 0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32; - address internal constant SFRXETH_DUAL_ORACLE_ADDRESS = 0xd2F0fa7f2E6a60EEcf4b78c5b6D81002b9789F2c; - address internal constant SFRXETH_ETH_DUAL_ORACLE_ADDRESS = 0x1473F3e4d236CBBe3412b9f65B4c210756BE2C0E; - address internal constant SFRXETH_FRAX_ORACLE_ADDRESS = 0xB9af7723CfBd4469A7E8aa60B93428D648Bda99d; - address internal constant SFRXETH_ORACLE = 0x27942aFe4EcB7F9945168094e0749CAC749aC97B; - address internal constant SFRXETH_ORACLE_V2 = 0x807502C8EAdAc82C3227249f8aCf54d9d98F76d1; - address internal constant SFRXETH_SFRAX_INVERSE_ORACLE_ADAPTER = 0xAfBcCB0a8d301AA8c18eBb4Ac94aB32d394fDCeC; - address internal constant SFRXETH_USDC_ORACLE_V2_ADAPTER = 0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f; - address internal constant SFRXETH_USD_ORACLE_V2 = 0x3d3D868522b5a4035ADcb67BF0846D61597A6a6F; - address internal constant SUSDE_ERC20 = 0x9D39A5DE30e57443BfF2A8307A4256c8797A3497; - address internal constant SUSDE_ORACLE = 0x8Eb7a4Fa315620CC342073326acC206961F4BB62; - address internal constant UNISWAP_DUAL_ORACLE_ADDRESS = 0x33A9D662d9F7cb2153e3a5102615B08865BeAbdB; - address internal constant UNIV2_ROUTER = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; - address internal constant UNI_ERC20 = 0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984; - address internal constant UNI_USD_CHAINLINK_ORACLE = 0x553303d460EE0afB37EdFf9bE42922D8FF63220e; - address internal constant USDC_ERC20 = 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48; - address internal constant USDC_USD_CHAINLINK_ORACLE = 0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6; - address internal constant USDE_CURVE_PAIR = 0x5dc1BF6f1e983C0b21EfB003c105133736fA0743; - address internal constant USDE_ERC20 = 0x4c9EDD5852cd905f086C759E8383e09bff1E68B3; - address internal constant USDE_ORACLE = 0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838; - address internal constant VARIABLE_RATE_2_ADDRESS = 0x18500cB1f2fE7a40eBdA393383A0B8548a31F261; - address internal constant VARIABLE_RATE_2_ADDRESS_50 = 0x576E23b6E2665A91DdF301DcfF53d1fFA2972bB5; - address internal constant VARIABLE_RATE_50BP_ADDRESS = 0xFf7846bAcB63FE97406a1E1e48CAf1595f66A98c; - address internal constant VARIABLE_RATE_ADDRESS = 0x9327058a739089869B7DC3436E074C6d56051C7A; - address internal constant VARIABLE_RATE_ADDRESS_OLD = 0x3da1bf0Be175B7cAa38d67A6E78371947d2F51f7; - address internal constant VARIABLE_RATE_STABLE_ADDRESS = 0x9599033315C29Be9690b716bFE409381426dAD41; - address internal constant WBTC_ERC20 = 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599; - address internal constant WBTC_SFRAX_INVERSE_DUAL_ORACLE = 0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC; - address internal constant WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = 0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b; - address internal constant WETH_ERC20 = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; - address internal constant WETH_FRAX_V3_POOL = 0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A; - address internal constant WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = 0x1cA1350F67575B0beE44EC9DC6725A4032431F33; - address internal constant WETH_USDC_V3_POOL = 0xE0554a476A092703abdB3Ef35c80e0D76d32939F; - address internal constant WSTETH_ERC20 = 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0; - address internal constant WSTETH_USD_DUAL_ORACLE_ADDRESS = 0xe73375f36A1b17A21d7Aa0fDa092195431e7017a; - address internal constant FRAXLEND_PAIR_WETH_FRAX = 0x794F6B13FBd7EB7ef10d1ED205c9a416910207Ff; - address internal constant FRAXLEND_PAIR_WBTC_FRAX = 0x32467a5fc2d72D21E8DCe990906547A2b012f382; - address internal constant FRAXLEND_PAIR_SFRXETH_FRAX = 0x78bB3aEC3d855431bd9289fD98dA13F9ebB7ef15; - address internal constant FRAXLEND_PAIR_CRVETHFRXETH_FRAX = 0x281E6CB341a552E4faCCc6b4eEF1A6fCC523682d; - address internal constant FRAXLEND_PAIR_FXS_FRAX = 0xDbe88DBAc39263c47629ebbA02b3eF4cf0752A72; - address internal constant FRAXLEND_PAIR_FPI_FRAX = 0x74F82Bd9D0390A4180DaaEc92D64cf0708751759; - address internal constant FRAXLEND_PAIR_APE_FRAX = 0x3a25B9aB8c07FfEFEe614531C75905E810d8A239; - address internal constant FRAXLEND_PAIR_CVX_FRAX = 0xa1D100a5bf6BFd2736837c97248853D989a9ED84; - address internal constant FRAXLEND_PAIR_CRV_FRAX = 0x3835a58CA93Cdb5f912519ad366826aC9a752510; - address internal constant FRAXLEND_PAIR_GOHM_FRAX = 0x66bf36dBa79d4606039f04b32946A260BCd3FF52; - address internal constant FRAXLEND_PAIR_MKR_FRAX = 0x82Ec28636B77661a95f021090F6bE0C8d379DD5D; - address internal constant FRAXLEND_PAIR_UNI_FRAX = 0xc6CadA314389430d396C7b0C70c6281e99ca7fe8; - address internal constant FRAXLEND_PAIR_AAVE_FRAX = 0xc779fEE076EB04b9F8EA424ec19DE27Efd17A68d; - address internal constant FRAXLEND_PAIR_FXB_20240630_FRAX = 0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF; - address internal constant FRAXLEND_PAIR_FXB_20241231_FRAX = 0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a; - address internal constant FRAXLEND_PAIR_FXB_20261231_FRAX = 0x1c0C222989a37247D974937782cebc8bF4f25733; - address internal constant FRAXLEND_PAIR_SFRXETH_USDC = 0xeE847a804b67f4887c9E8fe559A2dA4278deFB52; - address internal constant FRAXLEND_PAIR_LINK_FRAX = 0x7093F6141293F7C4F67E5efD922aC934402E452d; - address internal constant FRAXLEND_PAIR_WSTETH_FRAX = 0xb5a46f712F03808aE5c4B885C6F598fA06442684; - address internal constant FRAXLEND_PAIR_LDO_FRAX = 0x0601B72bEF2b3F09E9f48B7d60a8d7D2D3800C6e; - address internal constant FRAXLEND_PAIR_RETH_FRAX = 0xa4Ddd4770588EF97A3a03E4B7E3885d824159bAA; - address internal constant FRAXLEND_PAIR_SUSDE_FRAX = 0xb5Ae5b75C0DF5632c572A657109375646Ce66f90; - address internal constant FRAXLEND_PAIR_SFRAX_WBTC = 0xb67Bd04f74BD79a505c5167675E8812355270eD5; - address internal constant FRAXLEND_PAIR_SFRAX_SFRXETH = 0x501256B1DC7bb99CdE57AF188a69307BCC7E00E8; - address internal constant FRAXLEND_PAIR_EZETH_FRXETH = 0x1eE17BE9B788bcf3EB86C08D0E2b049e036F6eb1; - address internal constant FRAXLEND_PAIR_RSETH_FRXETH = 0xCfE3550206ea801c3F7Dc7997376F09E0b7e4B81; - address internal constant FRAXLEND_WRAPPER_FACTORY = 0xe5Ca8CB440A6f9F6fA1D535D94A839CED59D9942; - address internal constant FRAXSWAP_FACTORY_V1 = 0xB076b06F669e682609fb4a8C6646D2619717Be4b; - address internal constant FRAXSWAP_FACTORY_V2 = 0x43eC799eAdd63848443E2347C49f5f52e8Fe0F6f; - address internal constant FRAXSWAP_ROUTER_V1 = 0x1C6cA5DEe97C8C368Ca559892CCce2454c8C35C7; - address internal constant FRAXSWAP_ROUTER_V2 = 0xC14d550632db8592D1243Edc8B95b0Ad06703867; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x25e9acA5951262241290841b6f863d59D37DC4f0; - address internal constant FRAXSWAP_PAIR_FRAX_FPI = 0x5A1eA0130Dc4DC38420AA77929f992f1FBd482Bb; - address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_FPI = 0xd79886841026a39cFF99321140B3c4D31314782B; - address internal constant FRAXSWAP_PAIR_FRAX_FXS = 0x8206412c107eF1aDb70B9277974f5163760E128E; - address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_FXS = 0x03B59Bd1c8B9F6C265bA0c3421923B93f15036Fa; - address internal constant FRAXSWAP_PAIR_FRAX_FPIS = 0x99887AC15eBCcbad52FA2c9ceDc9D91A91e36051; - address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_FPIS = 0x56695c26b3Cdb528815cd22fF7B47510ab821EFd; - address internal constant FRAXSWAP_PAIR_FPI_FPIS = 0xD3542ec999ceA6C79f09483fF88833f154a5e92f; - address internal constant FRAXSWAP_PAIR_FS_V2_FPI_FPIS = 0xF14766a7C44EFb7F71441B7114d5Dd295B637175; - address internal constant FRAXSWAP_PAIR_FPI_FXS = 0x843B5Ae5861362F20A3aC185A2dD2393D7526C65; - address internal constant FRAXSWAP_PAIR_FS_V2_FPI_FXS = 0x3ECfdA4EfF6184cD8563772D6d024cB0Fb9cBf80; - address internal constant FRAXSWAP_PAIR_FXS_FPIS = 0x1306b420B4B5f99cBeE938E369f06863a0f419A5; - address internal constant FRAXSWAP_PAIR_FS_V2_FXS_FPIS = 0x7a9Bd205B55cCB1Cc1c5B99FF5Db87a6e7B2C38b; - address internal constant FRAXSWAP_PAIR_FS_V2_FXS_FRXETH = 0x49FD21C5C8813B1bAE4e5507C556391D6Dd9e9f1; - address internal constant FRAXSWAP_PAIR_FRAX_WETH = 0x8300f0528e00Ad33b218bb05D396F61A9FDd68Cd; - address internal constant FRAXSWAP_PAIR_FS_V2_FRAX_WETH = 0x31351Bf3fba544863FBff44DDC27bA880916A199; - address internal constant FRAXSWAP_PAIR_FRAX_PITCHFXS = 0x0a92aC70B5A187fB509947916a8F63DD31600F80; - address internal constant FRAXSWAP_PAIR_FRAX_PITCHFXS_V2 = 0x2bac101F9769AEfF63c63EFfB4189152e833649F; - address internal constant FRAXSWAP_PAIR_FRAX_IQ = 0xcB0bC7C879bb3E9CFEB9d8EFef653F33B3d242e9; - address internal constant FRAXSWAP_PAIR_FRAX_IQ_V2 = 0x07AF6BB51d6Ad0Cf126E3eD2DeE6EaC34BF094F8; - address internal constant FRAXSWAP_PAIR_FRAX_OHM = 0x38633ed142BCc8128b45aB04A2e4A6e53774699F; - address internal constant FRAXSWAP_PAIR_FRAX_OHM_V2 = 0x5769071665eb8Db80e7e9226F92336Bb2897DCFA; - address internal constant FRAXSWAP_PAIR_FRAX_SDL_V2 = 0xCCB26b5CC4e1Ce29521DA281a0107A6672bfe099; - address internal constant FRAXSWAP_PAIR_FRAX_SYN_V2 = 0x832c6f546Bf34A552DeB8773216a93bf6801028c; - address internal constant FRAXSWAP_PAIR_FRAX_ZZ_V2 = 0x5E8c1aD4c3D04f059d5c1A2Ce4593e53be270bca; - address internal constant ADDRESS_MANAGER = 0x8c5D64d10394cFa070066e70Ec19E67398b4dABE; - address internal constant BASE_FEE_VAULT_RECIPIENT = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; - address internal constant BATCH_INBOX = 0xfF000000000000000000000000000000000420fC; - address internal constant BATCH_SENDER = 0x6017f75108f251a488B045A7ce2a7C15b179d1f2; - address internal constant DISPUTE_GAME_FACTORY_PROXY = 0x3AA7e876880CB34371c01f1510B1e0A932dCb8C1; - address internal constant FINAL_SYSTEM_OWNER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant FRAXTAL_COMPTROLLER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant FRAXTAL_DEPLOYER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant L1_CROSS_DOMAIN_MESSENGER_IMPL_V2 = 0xC6e4ECE5576dC96846bb11eD8910f3dF3CE516b8; - address internal constant L1_CROSS_DOMAIN_MESSENGER_PROXY = 0x126bcc31Bc076B3d515f60FBC81FddE0B0d542Ed; - address internal constant L1_CROSS_DOMAIN_MESSENGER__IMPL_V1 = 0x31c25985E6b10CF335FC01cf9790aF4890d0505c; - address internal constant L1_ERC721_BRIDGE_IMPL_V2 = 0x7eE1637C33Ed0DFEE6403f3301B6d404106018e4; - address internal constant L1_ERC721_BRIDGE_PROXY = 0xa9B5Fb84B7aeAF0D51C95DB04a76B1D4738D0eC5; - address internal constant L1_ERC721_BRIDGE__IMPL_V1 = 0x23A0478996241F9f966b7054c06FdeB96Ddf3475; - address internal constant L1_STANDARD_BRIDGE_IMPL_V2_ADDR = 0x30Cd695249394eED44C576f2caEC5304be6455F9; - address internal constant L1_STANDARD_BRIDGE_PROXY = 0x34C0bD5877A5Ee7099D0f5688D65F4bB9158BDE2; - address internal constant L1_STANDARD_BRIDGE__IMPL_V1_ADDR = 0xCC26248B71284B812Ff7825e005560DB01a874C7; - address internal constant L2_OUTPUT_ORACLE_CHALLENGER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant L2_OUTPUT_ORACLE_IMPL_V2 = 0x6f3CcC8C9DAf8B9b39aDe481213Ff7A626a42B65; - address internal constant L2_OUTPUT_ORACLE_PROPOSER = 0xFb90465f3064fF63FC460F01A6307eC73d64bc50; - address internal constant L2_OUTPUT_ORACLE_PROXY = 0x66CC916Ed5C6C2FA97014f7D1cD141528Ae171e4; - address internal constant L2_OUTPUT_ORACLE__IMPL_V1 = 0xA30ADd78D5be6B2B55C934666bb4fF2C4429d800; - address internal constant OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = 0x11FE3be54aC01C13Dd985cE2BdD10eD77e1376cc; - address internal constant OPTIMISM_PORTAL_IMPL_V2_ADDR = 0x47Ec03B67ba4f3C71a4320D2947f2173E0B45a23; - address internal constant OPTIMISM_PORTAL_PROXY = 0x36cb65c1967A0Fb0EEE11569C51C2f2aA1Ca6f6D; - address internal constant OPTIMISM_PORTAL__IMPL_V1_ADDR = 0x59B6903044Fa9439a5D621D3605789A6E654b1D6; - address internal constant P2P_SEQUENCER_ADDRESS = 0xc88138f5c82DD1bD327708C7F1c15E44Ce7FdA0C; - address internal constant PORTAL_GUARDIAN = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant PROTOCOL_VERSIONS_IMPL_V2 = 0xeE1d28b0FB299BcE1E164aCc001c15e283082bA2; - address internal constant PROTOCOL_VERSIONS_PROXY = 0x3c7EA1c10Eb783fE86e4eEd202324dCFEEca9043; - address internal constant PROXY_ADMIN = 0x13Fe62cB24aEa5afd179F20D362c056c3881ABcA; - address internal constant PROXY_ADMIN_OWNER = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant STORAGE_SETTER = 0x7a6b7F35D032c9b122C69F01EA4523e028f6ef4A; - address internal constant SUPERCHAIN_CONFIG_GUARDIAN = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant SUPERCHAIN_CONFIG_IMPL_V2 = 0x0d9C39c64CF8eDA1EdFeBD78AFa895bAA797eFc4; - address internal constant SUPERCHAIN_CONFIG_PROXY = 0x61ca43CB037aC9181d8Fa5CD0073dC314065Ccc4; - address internal constant SYSTEM_CONFIG_IMPL_V2_ADDR = 0x4D7A1a16d0DA89B50FBd8b524508FC393A6Dc367; - address internal constant SYSTEM_CONFIG_PROXY = 0x34a9f273cbD847d49c3De015FC26c3E66825f8b2; - address internal constant SYSTEM_CONFIG__IMPL_V1_ADDR = 0x22052c592f763CA14a090D9974c5Bf9Fd3a44b8c; - address internal constant SYSTEM_OWNER_SAFE = 0xe0d7755252873c4eF5788f7f45764E0e17610508; - address internal constant BALANCER_FRXETH_BB_A_WETH_GAUGE = 0xE3f4e2b79f1a8bf3b14d9100323Fca24D923f796; - address internal constant CONVEX_FRAXBP_ARBITRUM = 0x636A9d7686bFA0a2ddd93b37A1E33bCdE6C31e8D; - address internal constant CONVEX_FRAX_FXB_20241231_ARBITRUM = 0xba1ED260F9a81088Ecb7602F790a67C773817BDA; - address internal constant CONVEX_FRAX_FXB_20261231_ARBITRUM = 0x2A8499c4a86F7c07e311c73E36575A0Dc2D362C3; - address internal constant CONVEX_FRXETH_WETH_ARBITRUM = 0x5608051D98377419d7D861531728DFB869dDc054; - address internal constant CONVEX_HFXB_FRAX_ARBITRUM = 0x53e78a6e12146565c7d7307d07A3C1ABacf3E20F; - address internal constant CONVEX_SQUID_WFRXETH_FRAXTAL = 0xE096E62B4b23C46a748828083458e22b014640f3; - address internal constant CONVEX_USD_FRAXBP = 0x840f20ffED887c61435E81fd1231CB923df39d3d; - address internal constant CURVE_VSTFRAX_F = 0x127963A74c07f72D862F2Bdc225226c3251BD117; - address internal constant FLE_FXS_WFRXETH_FRAXTAL = 0x6f82A6551cc351Bc295602C3ea99C78EdACF590C; - address internal constant FLE_FRAX_FXS_FRAXTAL = 0x83Dc6775c1B0fc7AaA46680D78B04b4a3d4f5650; - address internal constant FRAXSWAP_V2_FRAX_FPI_FRAXTAL = 0x3B78BdC7575896701C4e32f9D070AA387fcEB22b; - address internal constant FRAXSWAP_V2_FRAX_FXS_FRAXTAL = 0x99FA1928A9Fea45b8d1395e870a92a0675A10E6E; - address internal constant FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = 0x007c874a4240f8C31B4BfE6D91f47b903e2E3BE1; - address internal constant FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = 0x8Fa7B006538F0710BD5fEfBd5737eBDD8B487166; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = 0x0884c9Bb52348fa76d4e1c6Ea042A2EaF0b72c6C; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = 0x9c9e8E8ccD7dAF6AfAB436829992B3Cf408319B4; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = 0x11c9C6F9e983bf6E10296A9ce09D4572F664FF25; - address internal constant MSTABLE_FRAX_MUSD = 0x3e14f6EEDCC5Bc1d0Fc7B20B45eAE7B1F74a6AeC; - address internal constant SADDLE_L2D4_ARBITRUM = 0x9B8AEd182B8A9430C14e97Bf2C02F129f2b36854; - address internal constant SENTIMENT_LFRAX = 0x86c0A521807f43A646978e9f302BAF693350eAa3; - address internal constant SNOWBALL_S4D = 0x66fD216bCBeb566EF038A116B7270f241005e186; - address internal constant SPIRITSWAP_FRAX_FXS = 0xebF993690F65B23862E10F489656529ac06A27B8; - address internal constant AAVE_AMO = 0x66635DC1EdEfF19e839f152a67278151Aa6e1B61; - address internal constant AMO_MINTER = 0xcf37B62109b537fa0Cb9A90Af4CA72f6fb85E241; - address internal constant AMO_MINTER_OLD = 0x36a0B6a5F7b318A2B4Af75FFFb1b51a5C78dEB8C; - address internal constant BALANCE_CHECKER = 0x0be27F994E24F8C3E5f6D0C28AbB5732256ee205; - address internal constant BUNDLE_UTILS = 0xD1a7b80a954e56bfd7bd889aF6e2BE8674719F5d; - address internal constant CONVEX_AMO = 0x49ee75278820f409ecd67063D8D717B38d66bd71; - address internal constant CONVEX_AMO_ADMIN = 0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A; - address internal constant CRVFRAX_VAULT = 0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139; - address internal constant CURVE_AMO = 0x72170Cdc48C33a6AE6B3E83CD387ca3Fb9105da2; - address internal constant CURVE_AMO_IMPL_V1 = 0x5840Db064e17480f8e8E74fD6714C9c316f7DdFE; - address internal constant CURVE_AMO_V1 = 0xbd061885260F176e05699fED9C5a4604fc7F2BDC; - address internal constant CURVE_AMO_V2 = 0xD103FEf74D05FbC20B5184FE85c7187735355DB3; - address internal constant CURVE_AMO_V5 = 0xf8a4ffe7C980fD50B160b7B86dCd5e9eb7E281a9; - address internal constant CURVE_AMO_ADMIN = 0x900909C07c2761d84C5d863FF5905102916DF69C; - address internal constant CURVE_METAPOOL_LOCKER = 0x70F55767B11c047C8397285E852919F5f6c8DC60; - address internal constant CURVE_METAPOOL_LOCKER_2 = 0xE4BD0461AE7fdc76c61CE286a80c9B55d83B204a; - address internal constant CURVE_VOTER_PROXY = 0x847FA1A5337C7f24D7066E467F2e2A0f969Ca79F; - address internal constant CVX_LOCKER_AMO = 0x7038C406e7e2C9F81571557190d26704bB39B8f3; - address internal constant CVX_LOCKER_AMO_V2 = 0x72a19342e8F1838460eBFCCEf09F6585e32db86E; - address internal constant DEPOSIT_CONTRACT_ADDRESS = 0x00000000219ab540356cBB839Cbe05303d7705Fa; - address internal constant ETH_ADDRESS = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; - address internal constant FPI_CONTROLLER_AMO = 0x2397321b301B80A1C0911d6f9ED4b6033d43cF51; - address internal constant FRAX3CRV_CURVE_FXS_DISTRIBUTOR = 0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC; - address internal constant FRAX3CRV_CURVE_REWARDS_DISTRIBUTOR_EOA = 0x73f9F84B04584227b4f0bafFd8B37D6D0C11a23c; - address internal constant FRAX_GAUGE_CONTROLLER = 0x44ade9AA409B0C29463fF7fcf07c9d3c939166ce; - address internal constant FRAX_GAUGE_CONTROLLER_V2 = 0x3669C421b77340B2979d1A00a792CC2ee0FcE737; - address internal constant FRAX_GAUGE_REWARDS_DISTRIBUTOR = 0x278dC748edA1d8eFEf1aDFB518542612b49Fcd34; - address internal constant FRAX_GAUGE_NOOP_REWARDS_DISTRIBUTOR = 0x48D9A9e67e9deCfD493efE2B3D3B5291fc802e5F; - address internal constant FRAX_GAUGE_V2 = 0x72E158d38dbd50A483501c24f792bDAAA3e7D55C; - address internal constant FRAXLEND_AMO = 0x0Ed8fA7FC63A8eb5487E7F87CAF1aB3914eA4eCa; - address internal constant FRAXLEND_AMO_V3 = 0xf6E697e95D4008f81044337A749ECF4d15C30Ea6; - address internal constant FRXETH_MINTER = 0xbAFA44EFE7901E04E39Dad13167D089C559c1138; - address internal constant FXS_1559_AMO = 0x9C6a04871D11b33645ab592f68C41bb2B41F51EE; - address internal constant FXS_1559_AMO_V2 = 0xC80C48862E4254F37047235298eDb6AA35717C24; - address internal constant FXS_1559_AMO_V2_ADMIN = 0xCaa487D113ad1C34Ce128c4f3a2A437614C6a692; - address internal constant FXS_1559_AMO_V2_IMPL_V1 = 0xCDe9A4e885B87a893b8817D136FD2F404B54294f; - address internal constant FXS_1559_AMO_V3 = 0xb524622901b3f7b5DeA6501E9830700C847C7DC5; - address internal constant INVESTOR_AMO = 0xB8315Af919729c823B2d996B1A6DDE381E7444f1; - address internal constant INVESTOR_AMO_V1 = 0xEE5825d5185a1D512706f9068E69146A54B6e076; - address internal constant INVESTOR_AMO_ADMIN = 0x069c24600c2A03147D4E1D9b04d193151676F577; - address internal constant INVESTOR_AMO_IMPL_V1 = 0xdE3C8aA7f53a69c595b7720045000A68Cb9CB341; - address internal constant LENDING_AMO = 0x9507189f5B6D820cd93d970d67893006968825ef; - address internal constant MANUAL_TOKEN_TRACKER_AMO = 0xEc8672dd770D59FaD9a811591a5Edd40e8F6A413; - address internal constant MIGRATION_BUNDLE_UTILS = 0x239c957d42343B3d91FABc7c16E7F1e30Bc32E5B; - address internal constant MIGRATION_HELPER = 0xe16723A08Ae054a8F20BDc0395389569011e78D6; - address internal constant MIM_CONVEX_AMO = 0x31183a2CCe8d1BFBBFE140Ea1A1264A454Fc821E; - address internal constant MINT_UTILITIES = 0xE054C1ab5D548E0144ab3F89a8f5809137819906; - address internal constant MSIG_HELPER = 0x977eaDb6fa9b8E1a2A950CcDE1A75a7b527a8cBB; - address internal constant MULTICALL_OZ_DELEGATECALL = 0x1EA632b997B7c7068ac48aDe8040652a8AF9FbbB; - address internal constant MULTISIG = 0xFa27873EA2F0eA9DcD2052848C4A7F8ADE8a3936; - address internal constant OHM_AMO = 0x5699d20732a2EFa9A895EF04bb210aa751C4dB96; - address internal constant OHM_AMO_ADMIN = 0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A; - address internal constant RARI_AMO = 0x96665d63c1B53f8335e3c9287Ee255f306C93c45; - address internal constant RAGEQUITTER_TEMPLE = 0xB12C76b92936d136Fd8264F6EFcBb06458338D97; - address internal constant STAKEDAO_AMO = 0x375278D3C65f29C1A90E8550888f1439cFeFe465; - address internal constant STAKING_UTILITIES = 0xE4de6E1DF1FE135D6462554d0Fd36A14d787f689; - address internal constant TIMELOCK = 0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA; - address internal constant TOKEMAK_AMO = 0x4e710B33c87CEDF832Cd82E11d743A011864f733; - address internal constant TOKEN_TRACKER_AMO = 0x3F702a8F6c9f9F7ABdfEA67f89d33F18e0368600; - address internal constant TOKEN_TRACKER_V2 = 0x37336AD1F3A145C710247E6a14C9AcC7f34D09eE; - address internal constant TWAMM_AMO = 0x11Fc7df1fb0E51f9c9AB8f575d9bbaDC92FA425B; - address internal constant TWAMM_AMO_V2 = 0x629C473e0E698FD101496E5fbDA4bcB58DA78dC4; - address internal constant UNIV2_TO_UNIV3_MIGRATOR_ADDRESS = 0x7b50137E8996A1717a6D97a0527e4c5D2D133405; - address internal constant UNIV3_LIQUIDITY_AMO = 0x3814307b86b54b1d8e7B2Ac34662De9125F8f4E6; - address internal constant UNIV3_LIQUIDITY_AMO_V2 = 0xc91Bb4b0696e3b48c0C501B4ce8E7244Fc363A79; - address internal constant VEFXS_SMART_WALLET_CHECKER = 0x53c13BA8834a1567474b19822aAD85c6F90D9f9F; - address internal constant VEFXS_YIELD_DISTRIBUTOR = 0x19a0a70a68fbC604Bf20A03b787df8f7AC1d50f0; - address internal constant VEFXS_YIELD_DISTRIBUTOR_V2 = 0x62C4cf364078C98fA08AfDB4D3d8D87e780Ebd45; - address internal constant VEFXS_YIELD_DISTRIBUTOR_V3 = 0xed2647Bbf875b2936AAF95a3F5bbc82819e3d3FE; - address internal constant VEFXS_YIELD_DISTRIBUTOR_V4 = 0xc6764e58b36e26b08Fd1d2AeD4538c02171fA872; - address internal constant VEFPIS_YIELD_DISTRIBUTOR_V4 = 0xE6D31C144BA99Af564bE7E81261f7bD951b802F6; - address internal constant VEFPIS_SMART_WALLET_CHECKER = 0x81903F6f9675f7b500eAFE20681bD2D7BAb7C71b; - address internal constant YIELDSPACE_AMO = 0x8971946467a77b798762823434c0f407d20F9df9; - address internal constant ADVISORS_MULTISIG = 0x874a873e4891fB760EdFDae0D26cA2c00922C404; - address internal constant BEE_USER = 0x733371d7C15ACECF9e120dd037D6BcDb6E069148; - address internal constant COMMUNITY_MULTISIG = 0x63278bF9AcdFC9fA65CFa2940b89A34ADfbCb4A1; - address internal constant COMPTROLLER = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; - address internal constant COMPTROLLER_MULTISIG = 0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27; - address internal constant CURVEAMO_OPERATOR_ADDRESS = 0x8D8Cb63BcB8AD89Aa750B9f80Aa8Fa4CfBcC8E0C; - address internal constant FPI_COMPTROLLER_MULTISIG = 0x6A7efa964Cf6D9Ab3BC3c47eBdDB853A8853C502; - address internal constant FPI_CORE_CONTRIBUTORS_TEAM_MULTISIG = 0x708695db8dF61e646571E78b9b3e2BAd7D6c42E3; - address internal constant FPI_TREASURY_MULTISIG = 0x5181C3c36bD52F783e6E1771d80b1e3AdCB36019; - address internal constant FRAXLEND_MAIN_MULTISIG = 0x168200cF227D4543302686124ac28aE0eaf2cA0B; - address internal constant FRAXLEND_OPERATOR_MULTISIG = 0xa4EC124e09D6D1A092c6BD16aFac9CD83f73E3c3; - address internal constant FRAXLEND_CIRCUIT_BREAKER_MULTISIG = 0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c; - address internal constant FRXETH_COMPTROLLER = 0x8306300ffd616049FD7e4b0354a64Da835c1A81C; - address internal constant FRXETH_OWNER = 0x8306300ffd616049FD7e4b0354a64Da835c1A81C; - address internal constant FXB_MULTISIG = 0x831822660572bd54ebaa065C2acef662a6277D40; - address internal constant INVESTORS_MULTISIG = 0xa95f86fE0409030136D6b82491822B3D70F890b3; - address internal constant TEAM_MULTISIG = 0x8D4392F55bC76A046E443eb3bab99887F4366BB0; - address internal constant TIMELOCK_ADDRESS = 0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA; - address internal constant TREASURY_MULTISIG = 0x9AA7Db8E488eE3ffCC9CdFD4f2EaECC8ABeDCB48; - address internal constant WALLET_WITH_CRVFRAX = 0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503; - address internal constant WALLET_WITH_USDC = 0xD6216fC19DB775Df9774a6E33526131dA7D19a2c; - address internal constant WALLET_WITH_WETH = 0x8EB8a3b98659Cce290402893d0123abb75E3ab28; - address internal constant AFRAX = 0xd4937682df3C8aEF4FE912A96A74121C0829E664; - address internal constant AGEURFRAXBP = 0x22e859Ee894c2068920858A60b51DC03ac5581c1; - address internal constant AGEURFRAXBP_POOL = 0x58257e4291F95165184b4beA7793a1d6F8e7b627; - address internal constant ALCXFRAXBP = 0xf985005a3793DbA4cCe241B3C19ddcd3Fe069ff4; - address internal constant ALCXFRAXBP_POOL = 0x4149d1038575CE235E03E03B39487a80FD709D31; - address internal constant ALETHFRXETH = 0x97Ba76a574bC5709b944bB1887691301c72337Ca; - address internal constant ALETHFRXETH_POOL = 0x97Ba76a574bC5709b944bB1887691301c72337Ca; - address internal constant ALUSDFRAXBP = 0xB30dA2376F63De30b42dC055C93fa474F31330A5; - address internal constant ALUSDFRAXBP_POOL = 0xB30dA2376F63De30b42dC055C93fa474F31330A5; - address internal constant ANKRETHFRXETH = 0xa8e14F03124Ea156A4fc416537c82ff91a647D50; - address internal constant ANKRETHFRXETH_POOL = 0x41eA4045de2676727883aa0B4E43D7e32261f559; - address internal constant APEUSDFRAXBP = 0x04b727C7e246CA70d496ecF52E6b6280f3c8077D; - address internal constant APEUSDFRAXBP_POOL = 0x04b727C7e246CA70d496ecF52E6b6280f3c8077D; - address internal constant AUSDC = 0xBcca60bB61934080951369a648Fb03DF4F96263C; - address internal constant BADGERFRAXBP = 0x09b2E090531228d1b8E3d948C73b990Cb6e60720; - address internal constant BADGERFRAXBP_POOL = 0x13B876C26Ad6d21cb87AE459EaF6d7A1b788A113; - address internal constant BUSDFRAXBP = 0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190; - address internal constant BUSDFRAXBP_POOL = 0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190; - address internal constant CAAVE = 0xe65cdB6479BaC1e22340E4E755fAE7E509EcD06c; - address internal constant CBETHFRXETH = 0x548E063CE6F3BaC31457E4f5b4e2345286274257; - address internal constant CBETHFRXETH_POOL = 0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D; - address internal constant CLEVUSDFRAXBP = 0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C; - address internal constant CLEVUSDFRAXBP_POOL = 0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C; - address internal constant COILFRAXBP = 0xb85010193FD15aF8390dbD62790Da70F46c1126B; - address internal constant COILFRAXBP_POOL = 0xAF4264916B467e2c9C8aCF07Acc22b9EDdDaDF33; - address internal constant CRVFRAX = 0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC; - address internal constant CRVFRAX_GAUGE = 0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503; - address internal constant CRVFRXETH = 0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974; - address internal constant CRVFRXETH_POOL = 0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a; - address internal constant CRVUSDFRAX = 0x0CD6f267b2086bea681E922E19D40512511BE538; - address internal constant CRVUSDFRAX_GAUGE = 0x96424E6b5eaafe0c3B36CA82068d574D44BE4e3c; - address internal constant CRVUSDFRAX_POOL = 0x0CD6f267b2086bea681E922E19D40512511BE538; - address internal constant CURVE4POOL = 0x4e0915C88bC70750D68C481540F081fEFaF22273; - address internal constant CUSDC = 0x39AA39c021dfbaE8faC545936693aC917d5E7563; - address internal constant CVGFRAXBP = 0x421E13b4e805993A0d50aD8c6c47A4F693f04424; - address internal constant CVGFRAXBP_GAUGE = 0x8A111B47B31bBa40C2F0D2f9a8Cf6B6C4B50114E; - address internal constant CVGFRAXBP_POOL = 0xa7B0E924c2dBB9B4F576CCE96ac80657E42c3e42; - address internal constant CVXAGEURFRAXBP = 0x9e187393cBc76c8Bf8e8a06bD7737a7cabe9d66C; - address internal constant CVXAGEURFRAXBP_REWARDER = 0x17962aB30c7F291b125A0A38d0ad220ab22F8a5B; - address internal constant CVXALCXFRAXBP = 0xCf9fC20189755354edDdED66C9ED9DFADAFd7a2E; - address internal constant CVXALCXFRAXBP_REWARDER = 0xC10fD95fd3B56535668426B2c8681AD1E15Be608; - address internal constant CVXALUSDFRAXBP = 0x5BcAfc77f19F72bCf1420cC1722c3e06E16Ec29a; - address internal constant CVXALUSDFRAXBP_REWARDER = 0x26598e3E511ADFadefD70ab2C3475Ff741741104; - address internal constant CVXAPEUSDFRAXBP = 0x04b727C7e246CA70d496ecF52E6b6280f3c8077D; - address internal constant CVXAPEUSDFRAXBP_REWARDER = 0x51e6B84968D56a1E5BC93Ee264e95b1Ea577339c; - address internal constant CVXBADGERFRAXBP = 0x25f0b7c3A7A43b409634a5759526560cC3313d75; - address internal constant CVXBADGERFRAXBP_REWARDER = 0xe0705A91984b076C250d410A41f615380aF1C2ed; - address internal constant CVXBUSDFRAXBP = 0xf203A94e59d071062a0dd31f396bCb19a38809A4; - address internal constant CVXBUSDFRAXBP_REWARDER = 0x9e6Daf019767D5cEAdE416ce77E8d187b5B254F3; - address internal constant CVXCLEVUSDFRAXBP = 0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C; - address internal constant CVXCLEVUSDFRAXBP_REWARDER = 0x710e85B2793b3AE88Cb1Da3cb25b3d62D810d180; - address internal constant CVXCOILFRAXBP = 0x624cEFdBe30507EEAc71882C9e42Ca0900D5B6a1; - address internal constant CVXCOILFRAXBP_REWARDER = 0xAE0b6b66378C7DEFc0514D7cBc6E4e92Cf56b0af; - address internal constant CVXCRVFRAX = 0x117A0bab81F25e60900787d98061cCFae023560c; - address internal constant CVXCRVFRAXBP = 0x527331F3F550f6f85ACFEcAB9Cc0889180C6f1d5; - address internal constant CVXCRVFRAXBP_POOL = 0x31c325A01861c7dBd331a9270296a31296D797A0; - address internal constant CVXCRVFRAX_REWARDER = 0x7e880867363A7e321f5d260Cade2B0Bb2F717B02; - address internal constant CVXCRVUSDFRAX = 0x01CcDe1dFb6c84e1Cc13a6Bf777aa2160ABd11BA; - address internal constant CVXCRVUSDFRAX_REWARDER = 0x3CfB4B26dc96B124D15A6f360503d028cF2a3c00; - address internal constant CVXCRV_REWARDER = 0x3Fe65692bfCD0e6CF84cB1E7d24108E434A7587e; - address internal constant CVXCVGFRAXBP = 0x3cB8E5cac768D6Dd3E7683dBC78E255aae66EDBB; - address internal constant CVXCVGFRAXBP_REWARDER = 0x0736b746F53826A1eEC888a05EBF592AF68946Db; - address internal constant CVXCVXCRVFRAXBP = 0x2aE739F40Cda5F053F9dbecE7E177Fcbdc4A07D9; - address internal constant CVXCVXCRVFRAXBP_REWARDER = 0xdEbc7B51043b4D0dd4f3310C68A12382b8843ceE; - address internal constant CVXCVXFRAXBP = 0x123dC033d6fF314211F7953eD31bC805f85C13d5; - address internal constant CVXCVXFRAXBP_REWARDER = 0xf02B3A77b1e7775de10294d78a4c3d77772B484A; - address internal constant CVXCVXFXSFRAXBP = 0xDad9DB2c7c96a1496493E6D48d131a2667f284f9; - address internal constant CVXCVXFXSFRAXBP_REWARDER = 0x19eA715F854dB2196C6f45A174541a5Ac884D2f9; - address internal constant CVXDOLAFRAXBP = 0xf7eCC27CC9DB5d28110AF2d89b176A6623c7E351; - address internal constant CVXDOLAFRAXBP_REWARDER = 0x0404d05F3992347d2f0dC3a97bdd147D77C85c1c; - address internal constant CVXDOLAFRAXPYUSD = 0x430bE19e180fd8c2199eC5FAEabE2F5CDba68C94; - address internal constant CVXDOLAFRAXPYUSD_REWARDER = 0xE8cBdBFD4A1D776AB1146B63ABD1718b2F92a823; - address internal constant CVXEUSDFRAXBP = 0x8e074d44aaBC1b3b4406fE03Da7ceF787ea85938; - address internal constant CVXEUSDFRAXBP_REWARDER = 0xB468dB2E478885B87D7ce0C8DA1D4373A756C138; - address internal constant CVXFPIFRAX_F = 0x28ebAb5Ecbc3efB4116205c2D3237d8b16976B06; - address internal constant CVXFRAXBP = 0x7F17A6C77C3938D235b014818092eb6305BdA110; - address internal constant CVXFRAXBP_POOL = 0xBEc570d92AFB7fFc553bdD9d4B4638121000b10D; - address internal constant CVXFRAXFPI_NG = 0xBA927A88eb7B7902ffC5cd99b94fA2964d1a1E03; - address internal constant CVXFRAXFPI_NG_REWARDER = 0x062450B06EB92F1C4E227C41c987ed97c93Ae232; - address internal constant CVXFRAXFXB_20240630 = 0x5A82ae31C1a36833B9E148d01E967c1b05eDb346; - address internal constant CVXFRAXFXB_20240630_REWARDER = 0x830a71574E3c8AE9da477cE1B7F12849E9f7c8c8; - address internal constant CVXFRAXFXB_20241231 = 0x06382622D0FafB372dA64b765EAd3d082a8BCabB; - address internal constant CVXFRAXFXB_20241231_REWARDER = 0x249cE0b1a682AD7b02e43271f9f0C9ac85Ec47e8; - address internal constant CVXFRAXFXB_20261231 = 0x7Ce2F444D0B034f44EeA4FE77608f0c680966D20; - address internal constant CVXFRAXFXB_20261231_REWARDER = 0xC9F6D73fD06b8EEB0A4E87cAd407219E10F31712; - address internal constant CVXFRAXPYUSD = 0x839CF70a09f1CB104b4eb0B48E26B855A0F7e855; - address internal constant CVXFRAXPYUSD_REWARDER = 0xB10a6e39Ed8a66fEd3aAef3866a95611a49B9a95; - address internal constant CVXFRAXSDAI = 0xAb4feFd9cabC03D935cAD345b7626C3180238fb3; - address internal constant CVXFRAXSDAI_REWARDER = 0xE627082369689b2B86D948c377A4aE4e739C59eE; - address internal constant CVXFRAXUSDP = 0x29c22337E3ce362Ce4ad8ecc9CE11fE5A08DBA3c; - address internal constant CVXFRAXUSDP_REWARDER = 0x6991C1CD588c4e6f6f1de3A0bac5B8BbAb7aAF6d; - address internal constant CVXFRXETH = 0xBb2568deeb365b8B89ef7F9B53E86B34cd5D0490; - address internal constant CVXFRXETHALETH = 0x112E8f4b685475CcEd5C38142Cd7A2aE41ef6737; - address internal constant CVXFRXETHALETH_REWARDER = 0xe0DbbCF08A5465db7c7401C86cce89030e11aB67; - address internal constant CVXFRXETHANKRETH = 0xc18695D5824C49cF50E054953B3A5910c45597A0; - address internal constant CVXFRXETHANKRETH_REWARDER = 0xc18695D5824C49cF50E054953B3A5910c45597A0; - address internal constant CVXFRXETHCBETH = 0x39E1Ea9CB87a352CfFd43e0b19D573d12cf110CC; - address internal constant CVXFRXETHCBETH_REWARDER = 0x0080d49D4a4921dF0F3853c5e4533462A51fbb29; - address internal constant CVXFRXETHCRV = 0x41603dA2DD26E6fe29CAe074fC6772053A39C2A9; - address internal constant CVXFRXETHCRV_REWARDER = 0xd5dC65ec6948845C1C428fb60BE38FE59B50BD13; - address internal constant CVXFRXETHCVX = 0xAc4b1295F9Aeb1DB29acB37902bE349a79a66403; - address internal constant CVXFRXETHCVX_REWARDER = 0xA064C1EeEbECD1DF41432f4B7264F508F005aF0C; - address internal constant CVXFRXETHETH = 0xC07e540DbFecCF7431EA2478Eb28A03918c1C30E; - address internal constant CVXFRXETHETH_REWARDER = 0xbD5445402B0a287cbC77cb67B2a52e2FC635dce4; - address internal constant CVXFRXETHMSETH = 0x29889a5fE8e467da8af697C5f1eB901F4911Ab50; - address internal constant CVXFRXETHMSETH_REWARDER = 0x15507737f44446EB0A86147E2C72Aa6A111A64B2; - address internal constant CVXFRXETHPETH = 0x1941da8D12A6B39B76bd54c865c8cD3a4553E9C3; - address internal constant CVXFRXETHPETH_REWARDER = 0x42aaC689261723d06d2a8f356448bd8249f831Bc; - address internal constant CVXFRXETHPXETH = 0xDE183818eb02AfEa367C1AAFF1BFdeDecE6B2B05; - address internal constant CVXFRXETHPXETH_REWARDER = 0x72b99E2cf3f9A2bbDA1Cc76894E4554d7aA8FE2E; - address internal constant CVXFRXETHRETH = 0xeEC515BE690BF445c8C4d1625FD82FA75Bc38bf6; - address internal constant CVXFRXETHRETH_REWARDER = 0x84754821b5484A69DB3164eF4eDC5A5657318039; - address internal constant CVXFRXETHRETH_STAFI = 0x02a2206268b49A9b3ee5DD51577E5bDa0072d5F1; - address internal constant CVXFRXETHRETH_STAFI_REWARDER = 0xf011aD8E91D1dc8625e5548755AEa1F6Fff81089; - address internal constant CVXFRXETHSETH = 0xf67FEC3D0A32418813bE2BcdD78e058BCFa33AE8; - address internal constant CVXFRXETHSETH_REWARDER = 0x55cdF6c7E6d04b83835E4702ed395D0263237DA2; - address internal constant CVXFRXETHSTETH = 0x01492A2cB0Bd14034710475197B4169501B49Ead; - address internal constant CVXFRXETHSTETH_REWARDER = 0xC3D0B8170E105d6476fE407934492930CAc3BDAC; - address internal constant CVXFRXETHWETH = 0xAA71e0065A29F2529aBC0F615874009287966229; - address internal constant CVXFRXETHWETH_REWARDER = 0xFafDE12dC476C4913e29F47B4747860C148c5E4f; - address internal constant CVXFRXETHZETH = 0x52EdB08ab81e4Cc32cf318aed17dB11c09C3E8B9; - address internal constant CVXFRXETHZETH_REWARDER = 0x98B662443695f7328F6A7fDe9894CC0E88630269; - address internal constant CVXFRXETHZUNETH = 0xCB5d9126402cC17eF47b81BD48B43D52bF474Cd4; - address internal constant CVXFRXETHZUNETH_REWARDER = 0x756d67A10974Fa0e0cE63F82AF4E7ef0d46d452D; - address internal constant CVXFRXETH_POOL = 0x6E855d08f2984516c40C4246A385bA4A2eDFcd0A; - address internal constant CVXFXSFRAXBP = 0xF57ccaD8122B898A147Cc8601B1ECA88B1662c7E; - address internal constant CVXFXSFRAXBP_POOL = 0x21d158d95C2e150e144c36FC64E3653B8D6c6267; - address internal constant CVXGRAIFRAXBP = 0x6CceedbC3551B619da21e552623Dc7C64Ae15168; - address internal constant CVXGRAIFRAXBP_REWARDER = 0xC4581E043F676b95Eb1430474C69f3559a758086; - address internal constant CVXGUSD3CRV_FREE = 0x15c2471ef46Fa721990730cfa526BcFb45574576; - address internal constant CVXGUSDFRAXBP = 0xfbd79471A12929De8379a6CbaF320E150f139ac4; - address internal constant CVXGUSDFRAXBP_REWARDER = 0x47809eE386D1dEC29c0b13f21ba30F564517538B; - address internal constant CVXLUSDFRAXBP = 0xE8a371b5D32344033589A2F0a2712dBD12130b18; - address internal constant CVXLUSDFRAXBP_REWARDER = 0x053e1dad223A206e6BCa24C77786bb69a10e427d; - address internal constant CVXMAIFRAXBP = 0xe79914274Ea1332222793d7ba931647531E10a5b; - address internal constant CVXMAIFRAXBP_REWARDER = 0xD3C412C3cEdbEC604425B23DCd79Aa1ac810622f; - address internal constant CVXMKUSDFRAXBP = 0x187601595F6D5746566BC0361a48d13066F11C71; - address internal constant CVXMKUSDFRAXBP_REWARDER = 0x35FbE5520E70768DCD6E3215Ed54E14CBccA10D2; - address internal constant CVXMSUSDFRAXBP = 0xc3b19502F8c02be75F3f77fd673503520DEB51dD; - address internal constant CVXMSUSDFRAXBP_REWARDER = 0xF189A4a1E845Fd62944F93De497409798523B397; - address internal constant CVXOHMFRAXBP = 0x5271045F7B73c17825A7A7aee6917eE46b0B7520; - address internal constant CVXOHMFRAXBP_REWARDER = 0x27A8c58e3DE84280826d615D80ddb33930383fE9; - address internal constant CVXPUSDFRAXBP = 0xB17255D92892F1322d023befddaB85f172E36f67; - address internal constant CVXPUSDFRAXBP_REWARDER = 0x6d096C99Cc2Ea52490355311b73D86365Acf087f; - address internal constant CVXRSRFRAXBP = 0x022600684e9492dA82f0da11Bf039c11109d0935; - address internal constant CVXRSRFRAXBP_REWARDER = 0x28441fb9b8b026487A6174Ff39Be015810611C0F; - address internal constant CVXSDTFRAXBP = 0x95B051E97957f1D48C622Bf73225E3d4c2B189fb; - address internal constant CVXSDTFRAXBP_REWARDER = 0xc3df9cC2B8FFdB801E8e6E8FF9C1245E2dEcdA98; - address internal constant CVXSTGFRAXBP = 0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8; - address internal constant CVXSTGFRAXBP_REWARDER = 0xAa57A289Bb22a1A0C583db306F6566AE2c0CAf21; - address internal constant CVXSUSDFRAXBP = 0x8E2A6e9390CbD4C3895D07E4Cb171C0527990dF6; - address internal constant CVXSUSDFRAXBP_REWARDER = 0x3fABBDfe05487De1720a9420fE2e16d2c3e79A9D; - address internal constant CVXSWETHFRXETH = 0x1fb9115929b32D4456C37B80536a2C9434061296; - address internal constant CVXSWETHFRXETH_REWARDER = 0x91362eBf6DbFA5c0FD45CE4cF46DfFd4A8899c7C; - address internal constant CVXTRICRYPTOFRAX = 0xa0821fDc8d62413757B9da2357b0e5371f45335e; - address internal constant CVXTRICRYPTOFRAX_REWARDER = 0x4af50A690062970DAf1d2f0Fa9042C6f5a5495E3; - address internal constant CVXTRISDT = 0x5C2c6E21e141Dd3D13C34754A20d620A1bb731B5; - address internal constant CVXTRISDT_REWARDER = 0x1f2a117314e6e8655E0A1C97669b7B836e2cDb91; - address internal constant CVXTUSDFRAXBP = 0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893; - address internal constant CVXTUSDFRAXBP_REWARDER = 0x4a744870fD705971c8c00aC510eAc2206C93d5bb; - address internal constant CVXUSDDFRAXBP = 0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20; - address internal constant CVXUSDDFRAXBP_REWARDER = 0x546cd3B917c1d8A6525b4A312bB0014BE031Eb28; - address internal constant CVXUZDFRAXBP = 0xe6c0fAA19A7fB6A0a2C01e0BBC1a782b9e4a7B48; - address internal constant CVXUZDFRAXBP_REWARDER = 0x820Fad75512c8C3E57Ad021d016846CEEB5F7105; - address internal constant CVXXAIFRAXBP = 0xEbB0Dd1AfE63813AdD4c38EEbd71CE7354dd9b7e; - address internal constant CVXXAIFRAXBP_REWARDER = 0x4a866fE20A442Dff55FAA010684A5C1379151458; - address internal constant CVXZUSDFRAXBP = 0xd48494c36F98BE491f6Cfd6841617e847C819806; - address internal constant CVXZUSDFRAXBP_REWARDER = 0xFd3A7636694259b32B3896f59436997AD25380cA; - address internal constant D3POOL = 0xBaaa1F5DbA42C3389bDbc2c9D2dE134F5cD0Dc89; - address internal constant DOLAFRAXBP = 0xE57180685E3348589E9521aa53Af0BCD497E884d; - address internal constant DOLAFRAXBP_POOL = 0xE57180685E3348589E9521aa53Af0BCD497E884d; - address internal constant DOLAFRAXPYUSD = 0xef484de8C07B6e2d732A92B5F78e81B38f99f95E; - address internal constant DOLAFRAXPYUSD_GAUGE = 0x4B092818708A721cB187dFACF41f440ADb79044D; - address internal constant DOLAFRAXPYUSD_POOL = 0xef484de8C07B6e2d732A92B5F78e81B38f99f95E; - address internal constant EUSDFRAXBP = 0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F; - address internal constant EUSDFRAXBP_POOL = 0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F; - address internal constant FPIFRAX_F = 0x4704aB1fb693ce163F7c9D3A31b3FF4eaF797714; - address internal constant FPIFRAX_F_POOL = 0xf861483fa7E511fbc37487D91B6FAa803aF5d37c; - address internal constant FRAX3CRV_F = 0xd632f22692FaC7611d2AA1C0D552930D43CAEd3B; - address internal constant FRAXBP = 0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC; - address internal constant FRAXBP_POOL = 0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2; - address internal constant FRAXFPI = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; - address internal constant FRAXFPI_NG = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; - address internal constant FRAXFPI_NG_GAUGE = 0x107E4c1302403095e5A4Bc5e815982aa732e95BD; - address internal constant FRAXFPI_NG_POOL = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; - address internal constant FRAXFPI_POOL = 0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe; - address internal constant FRAXFXB_20240630 = 0x4ef4c7519023F30A78647EEab321d6cFabC2513c; - address internal constant FRAXFXB_20240630_GAUGE = 0x35aD1ACf0C4BE5d4Ba11342128D440fDb9e189eb; - address internal constant FRAXFXB_20240630_POOL = 0x4ef4c7519023F30A78647EEab321d6cFabC2513c; - address internal constant FRAXFXB_20241231 = 0x6307E6688819951Cf8D6B6066018243D2496952F; - address internal constant FRAXFXB_20241231_GAUGE = 0xC2FE9D3c761994897594Df63B33b6D843Ab7b1cF; - address internal constant FRAXFXB_20241231_POOL = 0x6307E6688819951Cf8D6B6066018243D2496952F; - address internal constant FRAXFXB_20261231 = 0xe035e27A8eD6842b478933820f90093D205F7098; - address internal constant FRAXFXB_20261231_GAUGE = 0x0E83dF148F69965BfE752250835854b0dBeeaf01; - address internal constant FRAXFXB_20261231_POOL = 0xe035e27A8eD6842b478933820f90093D205F7098; - address internal constant FRAXPYUSD = 0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb; - address internal constant FRAXPYUSD_GAUGE = 0xdc6d319FAc1498125e871ccEdF7f1B9998ebA3C5; - address internal constant FRAXPYUSD_POOL = 0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb; - address internal constant FRAXSDAI = 0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7; - address internal constant FRAXSDAI_GAUGE = 0xb9BDcDcD7c3C1A3255402D44639cb6c7281833cF; - address internal constant FRAXSDAI_POOL = 0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7; - address internal constant FRAXUSDP = 0xFC2838a17D8e8B1D5456E0a351B0708a09211147; - address internal constant FRAXUSDP_POOL = 0xaE34574AC03A15cd58A92DC79De7B1A0800F1CE3; - address internal constant FRXETHALETH = 0xB657B895B265C38c53FFF00166cF7F6A3C70587d; - address internal constant FRXETHALETH_GAUGE = 0x415F30505368fa1dB82Feea02EB778be04e75907; - address internal constant FRXETHALETH_POOL = 0xB657B895B265C38c53FFF00166cF7F6A3C70587d; - address internal constant FRXETHANKRETH = 0xa8e14F03124Ea156A4fc416537c82ff91a647D50; - address internal constant FRXETHANKRETH_GAUGE = 0x86f8d7Ced9A8F5563C1198466968B02238E05917; - address internal constant FRXETHANKRETH_POOL = 0x41eA4045de2676727883aa0B4E43D7e32261f559; - address internal constant FRXETHCBETH = 0x548E063CE6F3BaC31457E4f5b4e2345286274257; - address internal constant FRXETHCBETH_GAUGE = 0xD10C17D82053DD0AB65851a9A93a0abE0C4F4794; - address internal constant FRXETHCBETH_POOL = 0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D; - address internal constant FRXETHCRV = 0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974; - address internal constant FRXETHCRV_GAUGE = 0x266cE172a1180134cf6C7836C516bd6A58b1f619; - address internal constant FRXETHCRV_POOL = 0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a; - address internal constant FRXETHCVX = 0x6e52cCe4EaFDf77091dD1c82183b2D97b776b397; - address internal constant FRXETHCVX_GAUGE = 0xc2075702490F0426E84E00d8B328119027813AC5; - address internal constant FRXETHCVX_POOL = 0x47D5E1679Fe5f0D9f0A657c6715924e33Ce05093; - address internal constant FRXETHETH = 0xf43211935C781D5ca1a41d2041F397B8A7366C7A; - address internal constant FRXETHETH_POOL = 0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577; - address internal constant FRXETHMSETH = 0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A; - address internal constant FRXETHMSETH_GAUGE = 0xB7A3C519889a916C5ecB54101E69ECf11DE60d0b; - address internal constant FRXETHMSETH_POOL = 0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A; - address internal constant FRXETHPETH = 0x320B564Fb9CF36933eC507a846ce230008631fd3; - address internal constant FRXETHPETH_GAUGE = 0x57e1947e1134F6e733A4a694dE6A163eF23EDf54; - address internal constant FRXETHPETH_POOL = 0x320B564Fb9CF36933eC507a846ce230008631fd3; - address internal constant FRXETHPXETH = 0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987; - address internal constant FRXETHPXETH_GAUGE = 0x277d1424a84B35ec0a8108482551b00b4fc1539b; - address internal constant FRXETHPXETH_POOL = 0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987; - address internal constant FRXETHRETH = 0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1; - address internal constant FRXETHRETH_GAUGE = 0xF20bd4D5A4112d5f9c64aDF53726F3ef1b7d0D61; - address internal constant FRXETHRETH_POOL = 0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9; - address internal constant FRXETHRETH_STAFI = 0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B; - address internal constant FRXETHRETH_STAFI_GAUGE = 0xb0549599d8446A196541dE11008eF5e79fA14F57; - address internal constant FRXETHRETH_STAFI_POOL = 0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B; - address internal constant FRXETHSETH = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; - address internal constant FRXETHSETH_GAUGE = 0x77ef5D544FF6C739E7E10a549f64Dd08055538d1; - address internal constant FRXETHSETH_POOL = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; - address internal constant FRXETHSTETH = 0x4d9f9D15101EEC665F77210cB999639f760F831E; - address internal constant FRXETHSTETH_GAUGE = 0x821529Bb07c83803C9CC7763e5974386e9eFEdC7; - address internal constant FRXETHSTETH_POOL = 0x4d9f9D15101EEC665F77210cB999639f760F831E; - address internal constant FRXETHWETH = 0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc; - address internal constant FRXETHWETH_GAUGE = 0x4E21418095d32d15c6e2B96A9910772613A50d50; - address internal constant FRXETHWETH_POOL = 0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc; - address internal constant FRXETHZETH = 0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018; - address internal constant FRXETHZETH_GAUGE = 0xB3627140BEacb97f9CA52b34090352FdAfC77d72; - address internal constant FRXETHZETH_POOL = 0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018; - address internal constant FRXETHZUNETH = 0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA; - address internal constant FRXETHZUNETH_GAUGE = 0x44f30D79f62a3D5340030d64806cD73239889F07; - address internal constant FRXETHZUNETH_POOL = 0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA; - address internal constant FTRIBE_8 = 0xFd3300A9a74b3250F1b2AbC12B47611171910b07; - address internal constant FUSDC_18 = 0x6f95d4d251053483f41c8718C30F4F3C404A8cf2; - address internal constant FXSFRXETH = 0x970FAA9aFBC5Feb3EC53059BA330DEe71E22B55B; - address internal constant FXSFRXETH_POOL = 0x5133Da6Ba0474368Ad0398d953c8D31c1B75b82B; - address internal constant GOHM = 0x0ab87046fBb341D058F17CBC4c1133F25a20a52f; - address internal constant GRAIFRAXBP = 0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc; - address internal constant GRAIFRAXBP_GAUGE = 0x8d5AF1F5DD3dC4B73e3A9Af682aDC3641FADE9a5; - address internal constant GRAIFRAXBP_POOL = 0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc; - address internal constant GUSD3CRV = 0xD2967f45c4f384DEEa880F807Be904762a3DeA07; - address internal constant GUSDFRAXBP = 0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93; - address internal constant GUSDFRAXBP_POOL = 0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93; - address internal constant LUSDFRAXBP = 0x497CE58F34605B9944E6b15EcafE6b001206fd25; - address internal constant LUSDFRAXBP_POOL = 0x497CE58F34605B9944E6b15EcafE6b001206fd25; - address internal constant MAIFRAXBP = 0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9; - address internal constant MAIFRAXBP_POOL = 0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9; - address internal constant MKUSDFRAXBP = 0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5; - address internal constant MKUSDFRAXBP_GAUGE = 0xF184d80915Ba7d835D941BA70cDdf93DE36517ee; - address internal constant MKUSDFRAXBP_POOL = 0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5; - address internal constant MSUSDFRAXBP = 0xc3b19502F8c02be75F3f77fd673503520DEB51dD; - address internal constant MSUSDFRAXBP_POOL = 0xc3b19502F8c02be75F3f77fd673503520DEB51dD; - address internal constant OGTEMPLE = 0x654590F810f01B51dc7B86915D4632977e49EA33; - address internal constant OHMFRAXBP = 0x5271045F7B73c17825A7A7aee6917eE46b0B7520; - address internal constant OHMFRAXBP_POOL = 0xFc1e8bf3E81383Ef07Be24c3FD146745719DE48D; - address internal constant PITCHFXS = 0x11EBe21e9d7BF541A18e1E3aC94939018Ce88F0b; - address internal constant PUSDFRAXBP = 0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B; - address internal constant PUSDFRAXBP_POOL = 0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B; - address internal constant RETHFRXETH = 0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1; - address internal constant RETHFRXETH_POOL = 0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9; - address internal constant RSRFRAXBP = 0x3F436954afb722F5D14D868762a23faB6b0DAbF0; - address internal constant RSRFRAXBP_POOL = 0x6a6283aB6e31C2AeC3fA08697A8F806b740660b2; - address internal constant SADDLED4 = 0xd48cF4D7FB0824CC8bAe055dF3092584d0a1726A; - address internal constant SADDLED4_POOL = 0xC69DDcd4DFeF25D8a793241834d4cc4b3668EAD6; - address internal constant SDFRAX3CRV_F = 0x5af15DA84A4a6EDf2d9FA6720De921E1026E37b7; - address internal constant SDL_ALUSDFRAXBP = 0x3cF7b9479a01eeB3bbfC43581fa3bb21cd888e2A; - address internal constant SDL_ALUSDFRAXBP_GAUGE = 0x953693DCB2E9DDC0c1398C1b540b81b63ceA5e16; - address internal constant SDL_ALUSDFRAXBP_POOL = 0xFB516cF3710fC6901F2266aAEB8834cF5e4E9558; - address internal constant SDL_FRAX3POOL = 0x0785aDDf5F7334aDB7ec40cD785EBF39bfD91520; - address internal constant SDL_FRAX3POOL_GAUGE = 0x13Ba45c2B686c6db7C2E28BD3a9E8EDd24B894eD; - address internal constant SDL_FRAX3POOL_POOL = 0x8cAEa59f3Bf1F341f89c51607E4919841131e47a; - address internal constant SDL_FRAXBP = 0x927E6f04609A45B107C789aF34BA90Ebbf479f7f; - address internal constant SDL_FRAXBP_GAUGE = 0xB2Ac3382dA625eb41Fc803b57743f941a484e2a6; - address internal constant SDL_FRAXBP_POOL = 0x13Cc34Aa8037f722405285AD2C82FE570bfa2bdc; - address internal constant SDL_SUSDFRAXBP = 0x6Ac7a4cB3BFa90DC651CD53EB098e23c88d04e77; - address internal constant SDL_SUSDFRAXBP_GAUGE = 0x104F44551386d603217450822443456229F73aE4; - address internal constant SDL_SUSDFRAXBP_POOL = 0x69baA0d7c2e864b74173922Ca069Ac79d3be1556; - address internal constant SDL_USDTFRAXBP = 0x486DFCfdbF9025c062110E8c0344a15279aD0a85; - address internal constant SDL_USDTFRAXBP_GAUGE = 0x6EC5DD7D8E396973588f0dEFD79dCA04F844d57C; - address internal constant SDL_USDTFRAXBP_POOL = 0xC765Cd3d015626244AD63B5FB63a97c5634643b9; - address internal constant SDL_VESPERFRAXEARNPOOLFRAXBP = 0xA3beCa25Bd2bDd67272556666A7791d772C36571; - address internal constant SDL_VESPERFRAXEARNPOOLFRAXBP_GAUGE = 0x9980C9b35844946cF3451cC0B43D9b6501F4a96E; - address internal constant SDL_VESPERFRAXEARNPOOLFRAXBP_POOL = 0x9AC17f026f0599F77b3513a0A35f0258B0ec77f3; - address internal constant SDTFRAXBP = 0x893DA8A02b487FEF2F7e3F35DF49d7625aE549a3; - address internal constant SDTFRAXBP_POOL = 0x3e3C6c7db23cdDEF80B694679aaF1bCd9517D0Ae; - address internal constant SETHFRXETH = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; - address internal constant SETHFRXETH_POOL = 0x663aC72a1c3E1C4186CD3dCb184f216291F4878C; - address internal constant SOHM = 0x04F2694C8fcee23e8Fd0dfEA1d4f5Bb8c352111F; - address internal constant STETHFRXETH = 0x4d9f9D15101EEC665F77210cB999639f760F831E; - address internal constant STETHFRXETH_POOL = 0x4d9f9D15101EEC665F77210cB999639f760F831E; - address internal constant STGFRAXBP = 0x9de1c3D446237ab9BaFF74127eb4F303802a2683; - address internal constant STGFRAXBP_POOL = 0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8; - address internal constant STKAAVE = 0x4da27a545c0c5B758a6BA100e3a049001de870f5; - address internal constant STKCVXAGEURFRAXBP = 0x78b74C93c726B6e29d0Ef5A01764fA19eCCF0C1c; - address internal constant STKCVXALCXFRAXBP = 0xAF1b82809296E52A42B3452c52e301369Ce20554; - address internal constant STKCVXALUSDFRAXBP = 0xBE1C919cA137299715e9c929BC7126Af14f76091; - address internal constant STKCVXAPEUSDFRAXBP = 0x6a20FC1654A2167d00614332A5aFbB7EBcD9d414; - address internal constant STKCVXBADGERFRAXBP = 0xb92e3fD365Fc5E038aa304Afe919FeE158359C88; - address internal constant STKCVXBUSDFRAXBP = 0x20c5177504A3f9Bad59c430791feA853EeAD4CCE; - address internal constant STKCVXCLEVUSDFRAXBP = 0x3199a1ed1Ad4cb1d1b57939809c8ee79eafE9934; - address internal constant STKCVXCOILFRAXBP = 0xa5B6f8Ec4122c5Fe0dBc4Ead8Bfe66A412aE427C; - address internal constant STKCVXCOILFRAXBP_DEPRECATED = 0xdA69CeC36AE581C1b2a2EEb77C527Fb7c1331310; - address internal constant STKCVXCRV = 0xaa0C3f5F7DFD688C6E646F66CD2a6B66ACdbE434; - address internal constant STKCVXCRVUSDFRAX = 0xb6F63cc2066e7626fA47fCC37E78Df9fe89F1663; - address internal constant STKCVXCVGFRAXBP = 0x7B465174A93a6d0602fD4ea99eEc86C07e5E1568; - address internal constant STKCVXCVXCRVFRAXBP = 0xa103a6ca0C4D4072BA59a55FD453BFE4197A095B; - address internal constant STKCVXCVXFRAXBP = 0x93D1De20eaBB21686CFe716f78F67E51ee578185; - address internal constant STKCVXCVXFXSFRAXBP = 0xA6A8F315b1a8C9B05433d206b8fECfbF0fC96217; - address internal constant STKCVXDOLAFRAXBP = 0xF06c8696730cf760619e4fA0eDd0f79ea50531A9; - address internal constant STKCVXDOLAFRAXPYUSD = 0x8aAa49650C4908156efAc3B47e00745a319c806c; - address internal constant STKCVXEUSDFRAXBP = 0x49BF6f9B860fAF73B0b515c06Be1Bcbf4A0db3dF; - address internal constant STKCVXFPIFRAX = 0x7287488F8Df7dddc5f373142D4827aAF92AAC845; - address internal constant STKCVXFRAXBP = 0x8a53ee42FB458D4897e15cc7dEa3F75D0F1c3475; - address internal constant STKCVXFRAXFPI_NG = 0x562E4d6C958333a5f0988FFedA11e45C27722994; - address internal constant STKCVXFRAXFXB_20240630 = 0x6E804b00fe562707E3a86bBbcC53Eb73c36c0cf6; - address internal constant STKCVXFRAXFXB_20241231 = 0xBb16610CF051AAc4bBEF9c53e2fc99b77BCE4A8c; - address internal constant STKCVXFRAXFXB_20261231 = 0x8aa015CE081505064a9cB8e7816deE3Bd7a45a12; - address internal constant STKCVXFRAXPYUSD = 0x59Ae4E430be0bF47e758F7E022E9a50A8C7D09d6; - address internal constant STKCVXFRAXSDAI = 0x2EB43dBF8C0013712fEc7B2A57453e41B9907e95; - address internal constant STKCVXFRAXUSDP = 0x5385AE7dC08F5C3799691E5b387cB01108B76627; - address internal constant STKCVXFRXETHALETH = 0x8A59781B415288f9E633b948618726CB6E47e980; - address internal constant STKCVXFRXETHANKRETH = 0x75A439b3F8106428b86198D8c306c57E9e7Bb3dC; - address internal constant STKCVXFRXETHCBETH = 0x4e9D8323603E69c1310E5e04Db172bD5aB07df95; - address internal constant STKCVXFRXETHCRV = 0x194aA54376886dAd3d08e71F47D189A88251D8Da; - address internal constant STKCVXFRXETHCVX = 0x5B31bf2988E5388Edae2960504d96Bc142742dCb; - address internal constant STKCVXFRXETHETH = 0x4659d5fF63A1E1EDD6D5DD9CC315e063c95947d0; - address internal constant STKCVXFRXETHMSETH = 0x09bFD0c760E4a1bFc970cdaAAD240307C917Aa6c; - address internal constant STKCVXFRXETHPETH = 0xeCF134dF5DE1e0E12A441D446ff81994Cb0301A2; - address internal constant STKCVXFRXETHPXETH = 0x51521Da84Cbce1B4A930B55d8D896b590532f7A6; - address internal constant STKCVXFRXETHRETH = 0xE0c65F74728Ff26219C6adddCEfB215484bb08DF; - address internal constant STKCVXFRXETHRETH_STAFI = 0xffAFA5aA5b0a9C0C8e05ec8b89056F018EE2Bad6; - address internal constant STKCVXFRXETHSETH = 0x44b51F7F92D761Cf2FC46011AD6b74Ce56447924; - address internal constant STKCVXFRXETHSTETH = 0xc2eC3d1209FD1Fc512950825f34281EaF9aB13A2; - address internal constant STKCVXFRXETHWETH = 0x08061feC3FC09Aa2Eb4B4B72EA618034CBFD22b0; - address internal constant STKCVXFRXETHZETH = 0xd69068777d1b2dc74522117efA75AA195c0b57DB; - address internal constant STKCVXFRXETHZUNETH = 0xD893522D2CCd40eA6C1414815e3eAD1B58a83D51; - address internal constant STKCVXGRAIFRAXBP = 0xDf9BB26ba5a05fcFc2637dC763AA4eb735911568; - address internal constant STKCVXGUSDFRAXBP = 0x16e9eaC2A9e29aF3c53d24ed0F07fc403E098b64; - address internal constant STKCVXLUSDFRAXBP = 0x8C402989a966D37B96f60401A6158D5D49f1381D; - address internal constant STKCVXMAIFRAXBP = 0x787eB52b94c4610ABE2C9C5eE95c3a4a16533344; - address internal constant STKCVXMKUSDFRAXBP = 0xd529a0FD4249f0b48171140873b1b13a1ad5286d; - address internal constant STKCVXMSUSDFRAXBP = 0x227b7F44468A0EC0FDdfc3FB0cE09b294E62f875; - address internal constant STKCVXOHMFRAXBP = 0x81b0dCDa53482A2EA9eb496342dC787643323e95; - address internal constant STKCVXPUSDFRAXBP = 0x7AEF5bDC573dCbfb40EC68b0BAAB03abB846C9c6; - address internal constant STKCVXRSRFRAXBP = 0xF37007f2b9DE656115e1B977Bb1fd38A99B8a2a6; - address internal constant STKCVXSDTFRAXBP = 0xE6Aa75F98e6c105b821a2dba9Fbbd886b421F06b; - address internal constant STKCVXSTGFRAXBP = 0xAe1bA2Cf0eBF00C5052309992d7B6c94e3EfcBEf; - address internal constant STKCVXSUSDFRAXBP = 0x9f0C2673a33b7087e367253f196A7E823fBc2341; - address internal constant STKCVXSWETHFRXETH = 0xa3ae006Cc863423F690ca01C2a8F692B97c93c3b; - address internal constant STKCVXTRICRYPTOFRAX = 0x0643d5C29498149D31bAd69a5bE2771b5440C58d; - address internal constant STKCVXTRISDT = 0xAD059ccF041e344eA52A3152Bbf654c605d68473; - address internal constant STKCVXTUSDFRAXBP = 0x32fA492Ac1F729E0eE9eDdfCBacc3ef72B234e27; - address internal constant STKCVXUSDDFRAXBP = 0x507e41A64eB7AE47ee303e3B16237ab757F6C06c; - address internal constant STKCVXUZDFRAXBP = 0xaa236bd1302755937Aa46D6f3423655BbC654B02; - address internal constant STKCVXUZDFRAXBP_DEPRECATED = 0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316; - address internal constant STKCVXUZDFRAXBP_DEPRECATED_OLD = 0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316; - address internal constant STKCVXXAIFRAXBP = 0x19f0a60f4635d3E2c48647822Eda5332BA094fd3; - address internal constant STKCVXZUSDFRAXBP = 0xFD2d7847E0f450d8B00d3D697D720C687E622a7B; - address internal constant STKMTA = 0x8f2326316eC696F6d023E37A9931c2b2C177a3D7; - address internal constant SUSDFRAXBP = 0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF; - address internal constant SUSDFRAXBP_POOL = 0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF; - address internal constant SWETHFRXETH = 0xe49AdDc2D1A131c6b8145F0EBa1C946B7198e0BA; - address internal constant SWETHFRXETH_POOL = 0x67e0bDbe0A2C5999A60D048f50e794218056b767; - address internal constant TFRAX = 0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2; - address internal constant TFXS = 0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655; - address internal constant THREECRV_ERC20 = 0x6c3F90f043a72FA612cbac8115EE7e52BDe6E490; - address internal constant THREECRV_POOL = 0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7; - address internal constant TRICRYPTOFRAX = 0x4D1941a887eC788F059b3bfcC8eE1E97b968825B; - address internal constant TRICRYPTOFRAX_GAUGE = 0x4B43fEaB8f5ccD38Ac0831DD7eC797330114F058; - address internal constant TRISDT = 0x954313005C56b555bdC41B84D6c63B69049d7847; - address internal constant TRISDT_GAUGE = 0x2DD2b7E07dD433B758B98A3889a63cbF48ef0D99; - address internal constant TUSDFRAXBP = 0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893; - address internal constant TUSDFRAXBP_POOL = 0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893; - address internal constant USDDFRAXBP = 0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20; - address internal constant USDDFRAXBP_POOL = 0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20; - address internal constant UZDFRAXBP = 0x68934F60758243eafAf4D2cFeD27BF8010bede3a; - address internal constant UZDFRAXBP_POOL = 0x68934F60758243eafAf4D2cFeD27BF8010bede3a; - address internal constant VECRV = 0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2; - address internal constant VESDL = 0xD2751CdBED54B87777E805be36670D7aeAe73bb2; - address internal constant VLCVX = 0x72a19342e8F1838460eBFCCEf09F6585e32db86E; - address internal constant XAIFRAXBP = 0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669; - address internal constant XAIFRAXBP_POOL = 0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669; - address internal constant XSDT = 0xaC14864ce5A98aF3248Ffbf549441b04421247D3; - address internal constant YVUSDC = 0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE; - address internal constant ZUSDFRAXBP = 0x400d4C984779A747462e88373c3fE369EF9F5b50; - address internal constant ZUSDFRAXBP_GAUGE = 0x218E4678318ab5527e41135713193E5EAd73337f; - address internal constant ZUSDFRAXBP_POOL = 0x400d4C984779A747462e88373c3fE369EF9F5b50; - address internal constant AAVE_ETH_UNI_V3_POOL = 0x5aB53EE1d50eeF2C1DD3d5402789cd27bB52c1bB; - address internal constant APE_WETH_UNI_V3_POOL = 0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF; - address internal constant FRAX_DAI_V3_POOL = 0x97e7d56A0408570bA1a7852De36350f7713906ec; - address internal constant FRAX_USDC_V3_POOL = 0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52; - address internal constant FRAX_WETH_UNI_V3_POOL = 0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A; - address internal constant FRXETH_FRAX_V3_POOL = 0x36C060Cc4b088c830a561E959A679A58205D3F56; - address internal constant LINK_ETH_UNI_V3_POOL = 0xa6Cc3C2531FdaA6Ae1A3CA84c2855806728693e8; - address internal constant MKR_ETH_UNI_V3_POOL = 0xe8c6c9227491C0a8156A0106A0204d881BB7E531; - address internal constant STATIC_UNI_V3_ORACLE = 0xB210CE856631EeEB767eFa666EC7C1C57738d438; - address internal constant UNI_ETH_UNI_V3_POOL = 0x1d42064Fc4Beb5F8aAF85F4617AE8b3b5B8Bd801; - address internal constant USDC_WETH_UNI_V3_POOL = 0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640; - address internal constant KYBERSWAP_ELASTIC_FACTORY = 0x5F1dddbf348aC2fbe22a163e30F99F9ECE3DD50a; - address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; - address internal constant KYBERSWAP_ELASTIC_POS_MGR = 0x2B1c7b41f6A8F2b2bc45C3233a5d5FB3cD6dC9A8; - address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; - address internal constant KYBERSWAP_ELASTIC_ROUTER = 0xC1e7dFE73E1598E3910EF4C7845B68A9Ab6F4c83; - address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; - address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER = 0xD7ab1699280980E756C446769B4c0F04550f88c9; - address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; - address internal constant NON_FUNGIBLE_POSITION_MANAGER = 0xC36442b4a4522E871399CD717aBDD847Ab11FE88; - address internal constant SWAPROUTER = 0xE592427A0AEce92De3Edee1F18E0157C05861564; - address internal constant UNISWAP_V3_FACTORY = 0x1F98431c8aD98523631AE4a59f267346ea31F984; - address internal constant FPIOFT = 0x9033BAD7aA130a2466060A2dA71fAe2219781B4b; - address internal constant FRXETHOFT = 0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6; - address internal constant FRXUSDOFT = 0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0; - address internal constant SFRXETHOFT = 0xbBc424e58ED38dd911309611ae2d7A23014Bd960; - address internal constant SFRXUSDOFT = 0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126; - address internal constant WFRAXOFT = 0x04ACaF8D2865c0714F79da09645C13FD2888977f; - address internal constant REMOTEHOP = 0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E; - address internal constant REMOTEMINTREDEEMHOP = 0x99B5587ab54A49e3F827D10175Caf69C0187bfA8; -} - -abstract contract AddressHelperMainnet is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x853d955aCEf822Db058eb8505911ED77F175b99e, "Constants.ETH_FRAX"); - vm.label(0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0, "Constants.ETH_FXS"); - vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.ETH_FPI"); - vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.ETH_FPIS"); - vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.ETH_FRXETH"); - vm.label(0xac3E018457B222d93114458476f3E3416Abbe38F, "Constants.ETH_SFRXETH"); - vm.label(0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32, "Constants.ETH_SFRAX"); - vm.label(0x853d955aCEf822Db058eb8505911ED77F175b99e, "Constants.ETH_FRAX_ERC20"); - vm.label(0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0, "Constants.ETH_FXS_ERC20"); - vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.ETH_FRXETH_ERC20"); - vm.label(0xac3E018457B222d93114458476f3E3416Abbe38F, "Constants.ETH_SFRXETH_ERC20"); - vm.label(0x02577b426F223A6B4f2351315A19ecD6F357d65c, "Constants.ETH_AAVE_AFRAX"); - vm.label(0xb40432243E4F317cE287398e72Ab8f0312fc2FE8, "Constants.ETH_ANGLE_FRAX_AGEUR_STAKING"); - vm.label(0x60aaA9b33e712A76F9421E46a75ec47fBDc8d4CB, "Constants.ETH_AURA_FRXETH_PXETH_DEPOSIT"); - vm.label(0x1e64E373c143810524BDb1Ac8Dce35977d12e55d, "Constants.ETH_BALANCER_FRXETH_PXETH_GAUGE_DEPRECATED"); - vm.label(0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a, "Constants.ETH_BALANCER_SFRXETH_STETH_RETH_BPT"); - vm.label(0x50B4cDb17D3e10C9BC88b3744F3fD7c25695EEE7, "Constants.ETH_BUNNI_FRAX_USDC_GAUGE"); - vm.label(0xcbcCBA2FA84606Df153B593dD01c37a50ac8427C, "Constants.ETH_BUNNI_FRXETH_WETH_GAUGE"); - vm.label(0xd1f21322bBDd3586dC1151ADCcaA2684641c2b31, "Constants.ETH_CONVEX_STKCVXAGEURFRAXBP"); - vm.label(0xA0657642224Fc53dAB4a3d2069430afe157BEc5D, "Constants.ETH_CONVEX_STKCVXALCXFRAXBP"); - vm.label(0x711d650Cd10dF656C2c28D375649689f137005fA, "Constants.ETH_CONVEX_STKCVXALUSDFRAXBP"); - vm.label(0xa810D1268cEF398EC26095c27094596374262826, "Constants.ETH_CONVEX_STKCVXAPEUSDFRAXBP"); - vm.label(0x5a92EF27f4baA7C766aee6d751f754EBdEBd9fae, "Constants.ETH_CONVEX_STKCVXBADGERFRAXBP"); - vm.label(0xaCf54f101B86f9e55d35C0674Ebd8C854E5f80e4, "Constants.ETH_CONVEX_STKCVXBUSDFRAXBP"); - vm.label(0x5745506D56b0088f800085b1227B3f1F7d419c89, "Constants.ETH_CONVEX_STKCVXCLEVUSDFRAXBP"); - vm.label(0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6, "Constants.ETH_CONVEX_STKCVXCOILFRAXBP"); - vm.label(0x94c491e298625b1226a89DDA091B3932c59FAbc1, "Constants.ETH_CONVEX_STKCVXCOILFRAXBP_DEPRECATED"); - vm.label(0x67CC47cF82785728DD5E3AE9900873a074328658, "Constants.ETH_CONVEX_STKCVXCRVUSDFRAX"); - vm.label(0x1ee8D379e374A4A00e7d79AF4Bf2eD2b591561c2, "Constants.ETH_CONVEX_STKCVXCVGFRAXBP"); - vm.label(0x57c9F019B25AaAF822926f4Cacf0a860f61eDd8D, "Constants.ETH_CONVEX_STKCVXCVXCRVFRAXBP"); - vm.label(0xeC670c5e0A8A8d5ae5639158565D840DE44CA03f, "Constants.ETH_CONVEX_STKCVXCVXFRAXBP"); - vm.label(0x2F9504988675c91787E188Ed928D6E042d9052e9, "Constants.ETH_CONVEX_STKCVXCVXFXSFRAXBP"); - vm.label(0xE7211E87D60177575846936F2123b5FA6f0ce8Ab, "Constants.ETH_CONVEX_STKCVXDOLAFRAXBP"); - vm.label(0x972d92f4563Ac9581c730A13A47Ae9d6dCdf18b7, "Constants.ETH_CONVEX_STKCVXDOLAFRAXPYUSD"); - vm.label(0x4c9AD8c53d0a001E7fF08a3E5E26dE6795bEA5ac, "Constants.ETH_CONVEX_STKCVXEUSDFRAXBP"); - vm.label(0x0a08673E3d7c454E1c6b27acD059C50Df6727FC9, "Constants.ETH_CONVEX_STKCVXFPIFRAX"); - vm.label(0x963f487796d54d2f27bA6F3Fbe91154cA103b199, "Constants.ETH_CONVEX_STKCVXFRAXBP"); - vm.label(0x7d69b887751Af59fB4b56BC98fcA0234096Eb267, "Constants.ETH_CONVEX_STKCVXFRAXFPI_NG"); - vm.label(0x6D54747fC8e32cA1A91bA2fd36aB673bD84E2e7b, "Constants.ETH_CONVEX_STKCVXFRAXFXB_20240630"); - vm.label(0x9D7eB7Ec34283D93C6677AE30F3983399Ab72A2f, "Constants.ETH_CONVEX_STKCVXFRAXFXB_20241231"); - vm.label(0x9A95396eC04B55de54859C06fd75dFb8466F4653, "Constants.ETH_CONVEX_STKCVXFRAXFXB_20261231"); - vm.label(0x18FEFE5Db2D63aCaa8b5520AFde32507216d39e1, "Constants.ETH_CONVEX_STKCVXFRAXPYUSD"); - vm.label(0x90EB2F13Acf1bc35c2c40c0EBaff2De4d2Eb0d6b, "Constants.ETH_CONVEX_STKCVXFRAXSDAI"); - vm.label(0x2A5b8C7DFE489CeB00ec80524C0bA0C1b78433A9, "Constants.ETH_CONVEX_STKCVXFRAXUSDP"); - vm.label(0x56790e4A08eD17aa3b7b4B1b23A6a84D731Fd77e, "Constants.ETH_CONVEX_STKCVXFRXETHALETH"); - vm.label(0x854B98dC1F76c92b22F75d1f33D23FEb64D8087F, "Constants.ETH_CONVEX_STKCVXFRXETHANKRETH"); - vm.label(0x16e55917849aC7fA4341470FA3A22bB503D5cACD, "Constants.ETH_CONVEX_STKCVXFRXETHCBETH"); - vm.label(0xDA0622cBa8cC821ee0d4AfA366Df95E948b43297, "Constants.ETH_CONVEX_STKCVXFRXETHCRV"); - vm.label(0xb01BaB994b52A37a231551f00a1B7cAcd43bc8C9, "Constants.ETH_CONVEX_STKCVXFRXETHCVX"); - vm.label(0xa537d64881b84faffb9Ae43c951EEbF368b71cdA, "Constants.ETH_CONVEX_STKCVXFRXETHETH"); - vm.label(0x2816Ab1F4Db656602b6B0041c006652A4F5D0437, "Constants.ETH_CONVEX_STKCVXFRXETHMSETH"); - vm.label(0xD591A551bC1776A7Ce066a5Df7640266afc850bF, "Constants.ETH_CONVEX_STKCVXFRXETHPETH"); - vm.label(0xC68A0174401AE002D6DbA8C9788C6dF4c807BD52, "Constants.ETH_CONVEX_STKCVXFRXETHPXETH"); - vm.label(0x719505cB97DF15565255eb1bDe65586271dB873C, "Constants.ETH_CONVEX_STKCVXFRXETHRETH"); - vm.label(0x76CF35aB1450D3A6c84EdDB8A960A5F65B76e706, "Constants.ETH_CONVEX_STKCVXFRXETHRETH_STAFI"); - vm.label(0xd79Ae34eD6D11A235629A48aeA9F661a241faD4f, "Constants.ETH_CONVEX_STKCVXFRXETHSETH"); - vm.label(0x68921998fbc43B360D3cF14a03aF4273CB0cFA44, "Constants.ETH_CONVEX_STKCVXFRXETHSTETH"); - vm.label(0xB4fdD7444E1d86b2035c97124C46b1528802DA35, "Constants.ETH_CONVEX_STKCVXFRXETHWETH"); - vm.label(0x882B9fad02D1a7436449dcdE9934Eeb9E287909c, "Constants.ETH_CONVEX_STKCVXFRXETHZETH"); - vm.label(0xE2E998A68C6f1D10c41884931457B7C302C6fA97, "Constants.ETH_CONVEX_STKCVXFRXETHZUNETH"); - vm.label(0x5684d5566bb438D8Ef7B3C1E5da9450cD19C1b9f, "Constants.ETH_CONVEX_STKCVXGRAIFRAXBP"); - vm.label(0xF0Ffe16810B7f412c52C1610e3BC9819A7Dcb366, "Constants.ETH_CONVEX_STKCVXGUSDFRAXBP"); - vm.label(0xF0A9b6F6593b4Bf96E1Ab13921A8a3FbFd9d4F16, "Constants.ETH_CONVEX_STKCVXLUSDFRAXBP"); - vm.label(0xdE5684F85a78F6CcCFFB4b9301ad0944eb5CE3eE, "Constants.ETH_CONVEX_STKCVXMAIFRAXBP"); - vm.label(0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc, "Constants.ETH_CONVEX_STKCVXMKUSDFRAXBP"); - vm.label(0xfB2CCc82755A734C53C8B45f260fFc2df026fe87, "Constants.ETH_CONVEX_STKCVXMSUSDFRAXBP"); - vm.label(0xc96e1a26264D965078bd01eaceB129A65C09FFE7, "Constants.ETH_CONVEX_STKCVXOHMFRAXBP"); - vm.label(0x40b42E4ab3c044e67CBFb0bD99C9E975dcB83668, "Constants.ETH_CONVEX_STKCVXPUSDFRAXBP"); - vm.label(0xF22D3C85e41Ef4b5Ac8Cb8B89a14718e290a0561, "Constants.ETH_CONVEX_STKCVXRSRFRAXBP"); - vm.label(0x9C8d9667d5726aEcA4d24171958BeE9F46861bed, "Constants.ETH_CONVEX_STKCVXSDTFRAXBP"); - vm.label(0xd600A3E4F57E718A7ad6A0cbb10c2A92c57827e6, "Constants.ETH_CONVEX_STKCVXSTGFRAXBP"); - vm.label(0x560c7668459221e33ED515D1D17c09ECda1996f5, "Constants.ETH_CONVEX_STKCVXSUSDFRAXBP"); - vm.label(0x7b8848f10A016341c9B2427e8541C19F31C2D243, "Constants.ETH_CONVEX_STKCVXSWETHFRXETH"); - vm.label(0x5C0238c4C8f13370001632806C87066B90F1E383, "Constants.ETH_CONVEX_STKCVXTRICRYPTOFRAX"); - vm.label(0x50Cde910D1f8b6C787b7903d23082542593E0710, "Constants.ETH_CONVEX_STKCVXTRISDT"); - vm.label(0xb324b2BD8a3Dc55b04111E84d5cce0c3771F8889, "Constants.ETH_CONVEX_STKCVXTUSDFRAXBP"); - vm.label(0xF7242A1cE383174802818febB36B6eebb56d5BFb, "Constants.ETH_CONVEX_STKCVXUSDDFRAXBP"); - vm.label(0xb8ebc210BCF78be8Ef3F09Dd0d8e85Fa5e252e86, "Constants.ETH_CONVEX_STKCVXUZDFRAXBP"); - vm.label(0x7838d18AD75372061a1e71e1499b7E90832c1508, "Constants.ETH_CONVEX_STKCVXUZDFRAXBP_DEPRECATED"); - vm.label(0x7677D1AADcd42dC40E758115FfDE5e1E10B7f30b, "Constants.ETH_CONVEX_STKCVXUZDFRAXBP_DEPRECATED_OLD"); - vm.label(0x4edF7C64dAD8c256f6843AcFe56876024b54A1b6, "Constants.ETH_CONVEX_STKCVXXAIFRAXBP"); - vm.label(0x107a33019910E57533Ad4F75762d6A958630cA3d, "Constants.ETH_CONVEX_STKCVXZUSDFRAXBP"); - vm.label(0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC, "Constants.ETH_CURVE_FRAX3CRV_F_2"); - vm.label(0x71173e3c6999c2C72ccf363f4Ae7b67BCc7E8F63, "Constants.ETH_DFORCE_FRAX_LENDING_ETHEREUM"); - vm.label(0x1C9A2d6b33B4826757273D47ebEe0e2DddcD978B, "Constants.ETH_FLUX_FINANCE_FFRAX"); - vm.label(0x73e1e624C6d3E027b8674e6C72F104F1429FC17E, "Constants.ETH_FRAXLEND_V1_FRAX_FXS"); - vm.label(0x5e15E40A3AA06bECA711EdE9F3F76E1d80C34490, "Constants.ETH_FRAXSWAP_V1_FRAX_IQ"); - vm.label(0xBF33B67F243a4DAbED494Ff5840f113B2E202a0d, "Constants.ETH_FRAXSWAP_V1_FRAX_IQ_V2"); - vm.label(0x35678017e1D252dA1CdD6745b147E3e75d1f9C27, "Constants.ETH_FRAXSWAP_V1_FRAX_IQ_V3"); - vm.label(0x9E66E7811fEacf5402B65021475d1A293f7ea797, "Constants.ETH_FRAXSWAP_V1_FRAX_PITCHFXS"); - vm.label(0x899Aa575E0e46344D18471f69337663C48b76e35, "Constants.ETH_FRAXSWAP_V1_FRAX_PITCHFXS_V2"); - vm.label(0x24C66Ba25ca2A53bB97B452B9F45DD075b07Cf55, "Constants.ETH_FRAXSWAP_V1_FRAX_PITCHFXS_V3"); - vm.label(0xE8453a2e8E97cba69365A1d727Fde3768b18d814, "Constants.ETH_FRAXSWAP_V1_FRAX_SYN"); - vm.label(0x9d46C0584C5C89e14fb1143e2414712feF36f00F, "Constants.ETH_FRAXSWAP_V2_FRAX_FPIS"); - vm.label(0x3F2E53B1A3036Fd33F3c2f3cC49daB26A88DF2e0, "Constants.ETH_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0x7af00CF8D3a8A75210a5Ed74f2254E2EC43B5B5b, "Constants.ETH_FRAXSWAP_V2_FRAX_IQ"); - vm.label(0xf562B2f33b3c90d5D273f88Cdf0CeD866E17092e, "Constants.ETH_FRAXSWAP_V2_FRAX_OHM"); - vm.label(0xa632Fab76Fe013199c8271Ac22b466b9D11BFe88, "Constants.ETH_FRAXSWAP_V2_FRAX_PITCHFXS"); - vm.label(0x8875A328EaDb1e142f4021Fc2098096796a30cf8, "Constants.ETH_FRAXSWAP_V2_FRAX_SDL"); - vm.label(0x788E44b6424A0e4160Ae4766E86640EC5a6baD5b, "Constants.ETH_FRAXSWAP_V2_FRAX_SYN"); - vm.label(0x38950D42CD549842B3Fc862a45F00eB24331F462, "Constants.ETH_FRAXSWAP_V2_FRAX_ZZ"); - vm.label(0x8A1112AFef7F4FC7c066a77AABBc01b3Fff31D47, "Constants.ETH_GEARBOX_DFRAX"); - vm.label(0xcdfc491804A420b677f8e788B5157856910E2F6f, "Constants.ETH_GELATO_UNISWAP_FRAX_DAI"); - vm.label(0x21AF9DBa45989512468B08d13978e9040cc0cEF6, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC"); - vm.label(0x90d52cdc60B7FF7994095Aa184694225035E8A60, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_DEPRECATED"); - vm.label(0x6b96465F5e51C01134e0e64bff19f922fA7337C7, "Constants.ETH_KYBERSWAP_ELASTIC_FRXETH_ETH"); - vm.label(0x0cF99bbc8794e09e713769c4352eB3318e25c975, "Constants.ETH_KYBERSWAP_ELASTIC_FRXETH_ETH_DEPRECATED"); - vm.label(0xaDf48a504b7E7262FE9BFC62Ab11894187590BB7, "Constants.ETH_KYBERSWAP_ELASTIC_FRXETH_FRAX"); - vm.label(0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264, "Constants.ETH_MONOLITH_MO_SAMM_FRAX_USDT"); - vm.label(0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96, "Constants.ETH_MONOLITH_MO_SAMM_FRXETH_WETH"); - vm.label(0x520b8e754768EEed9a37d78de76Cd5d75456b92F, "Constants.ETH_MONOLITH_MO_VAMM_FXS_FRXETH"); - vm.label(0x6667c53D631410649B1826D21cFdf41E7a7aE6b1, "Constants.ETH_PICKLE_FINANCE_CURVE_CVXFXS_FXS"); - vm.label(0x62826760CC53AE076a7523Fd9dCF4f8Dbb1dA140, "Constants.ETH_PICKLE_FINANCE_PVEFXS_BRINERY"); - vm.label(0x08cb0A0ba8e4f143e4e6F7BED65E02b6dFb9A16C, "Constants.ETH_PICKLE_FINANCE_SADDLE_D4"); - vm.label(0xA50e005c3f2f3Cd1f56B09DF558816CfCe25E934, "Constants.ETH_PICKLE_FINANCE_UNIV3_FRAX_DAI"); - vm.label(0x6092cdE5762FA9F5c8D081fb0c5eD23601f0F400, "Constants.ETH_PICKLE_FINANCE_UNIV3_FRAX_USDC"); - vm.label(0x0639076265e9f88542C91DCdEda65127974A5CA5, "Constants.ETH_SADDLE_ALUSD_FEI_FRAX_LUSD"); - vm.label(0x810E190Be9592615D75c514C0f9D8c9b79eB8056, "Constants.ETH_SOLIDLY_SAMM_FRAX_USDC"); - vm.label(0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264, "Constants.ETH_SOLIDLY_SAMM_FRAX_USDT"); - vm.label(0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96, "Constants.ETH_SOLIDLY_SAMM_FRXETH_WETH"); - vm.label(0xFae2B6Cac80635Cf768c9B68A4f453DB00BC79F0, "Constants.ETH_SOLIDLY_VAMM_FRAX_FRXETH"); - vm.label(0x520b8e754768EEed9a37d78de76Cd5d75456b92F, "Constants.ETH_SOLIDLY_VAMM_FXS_FRXETH"); - vm.label(0x290a42E913083Edf5AEFb241f8A12B306C19f8f9, "Constants.ETH_SOMMELIER_FRAXIMAL"); - vm.label(0xAB1927160EC7414C6Fa71763E2a9f3D107c126dd, "Constants.ETH_STAKEDAO_CVXFXS_FXS"); - vm.label(0x72E158d38dbd50A483501c24f792bDAAA3e7D55C, "Constants.ETH_STAKEDAO_FRAX3CRV"); - vm.label(0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503, "Constants.ETH_STAKEDAO_FRAX_USDC"); - vm.label(0x2932a86df44Fe8D2A706d8e9c5d51c24883423F5, "Constants.ETH_STAKEDAO_FRXETHCRV"); - vm.label(0xb40432243E4F317cE287398e72Ab8f0312fc2FE8, "Constants.ETH_STAKEDAO_SANFRAX"); - vm.label(0x0A53544b2194Dd8Ebc62c779043fc0624705BB56, "Constants.ETH_STAKEDAO_SDETH_FRAXPUT"); - vm.label(0xEB81b86248d3C2b618CcB071ADB122109DA96Da2, "Constants.ETH_STAKEDAO_SDFRAX3CRV_F"); - vm.label(0xF3C6e8fbB946260e8c2a55d48a5e01C82fD63106, "Constants.ETH_STAKEDAO_SDFXS"); - vm.label(0xa9A9BC60fc80478059A83f516D5215185eeC2fc0, "Constants.ETH_STAKEDAO_SDFXS_FXS"); - vm.label(0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a, "Constants.ETH_STAKEDAO_SFRXETH_STETH_RETH_BPT"); - vm.label(0xB0D502E938ed5f4df2E681fE6E419ff29631d62b, "Constants.ETH_STARGATE_BRIDGE_LIQUIDITY_FRAX_ETHEREUM"); - vm.label(0xb4Ab0dE6581FBD3A02cF8f9f265138691c3A7d5D, "Constants.ETH_SUSHI_FRAX_SUSHI"); - vm.label(0x10460d02226d6ef7B2419aE150E6377BdbB7Ef16, "Constants.ETH_TEMPLE_FRAX_TEMPLE"); - vm.label(0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2, "Constants.ETH_TOKEMAK_FRAX_STAKING"); - vm.label(0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655, "Constants.ETH_TOKEMAK_FXS_STAKING"); - vm.label(0x9928e4046d7c6513326cCeA028cD3e7a91c7590A, "Constants.ETH_UNISWAP_FEI_TRIBE"); - vm.label(0xda2c338350a0E59Ce71CDCED9679A3A590Dd9BEC, "Constants.ETH_UNISWAP_FRAX_FXS"); - vm.label(0xF37057823910653a554d996B49E3399DC87fAE1b, "Constants.ETH_UNISWAP_FRAX_IQ"); - vm.label(0xfC77A420f56Dec53e3b91D7FC936902e132335FF, "Constants.ETH_UNISWAP_FRAX_OHM"); - vm.label(0xa29367a3f057F3191b62bd4055845a33411892b6, "Constants.ETH_UNISWAP_FRAX_USDC"); - vm.label(0xD875628B942f8970De3CcEaf6417005F68540d4f, "Constants.ETH_UNISWAP_FRAX_WETH"); - vm.label(0xDc65f3514725206Dd83A8843AAE2aC3D99771C88, "Constants.ETH_UNISWAP_FXS_WETH"); - vm.label(0xf8caEd1943B15B877D7105B9906a618c154f69E8, "Constants.ETH_UNISWAP_V3_FRAX_AGEUR"); - vm.label(0xF22471AC2156B489CC4a59092c56713F813ff53e, "Constants.ETH_UNISWAP_V3_FRAX_DAI"); - vm.label(0x3EF26504dbc8Dd7B7aa3E97Bc9f3813a9FC0B4B0, "Constants.ETH_UNISWAP_V3_FRAX_USDC"); - vm.label(0x574C154C83432B0A45BA3ad2429C3fA242eD7359, "Constants.ETH_VEFPIS_FPIS_STAKING"); - vm.label(0xc8418aF6358FFddA74e09Ca9CC3Fe03Ca6aDC5b0, "Constants.ETH_VEFXS_FXS_STAKING"); - vm.label(0x698137C473bc1F0Ea9b85adE45Caf64ef2DF48d6, "Constants.ETH_VESPER_ORBIT_FRAX"); - vm.label(0x1A5ebfF0E881Aec34837845e4D0EB430a1B4b737, "Constants.ETH_YEARN_CRVFRAX_VAULT_V3"); - vm.label(0xc9268c7F59850B26567b0f5d3Dcc317cEDC43490, "Constants.ETH_SLIPPAGE_AUCTION_FACTORY"); - vm.label(0xa8478781D9605E17c3b4c9C79e7127c4597116E4, "Constants.ETH_FXB_FACTORY"); - vm.label(0x452420df4AC1e3db5429b5FD629f3047482C543C, "Constants.ETH_FXB_AMO"); - vm.label(0x831822660572bd54ebaa065C2acef662a6277D40, "Constants.ETH_FXB_AMO_TIMELOCK"); - vm.label(0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e, "Constants.ETH_FXB_20240630"); - vm.label(0xC92067D8DDb1970ecB93202DA31a3C45cC2c1F44, "Constants.ETH_AUCTION_20240630"); - vm.label(0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97, "Constants.ETH_ORACLE_20240630"); - vm.label(0x4ef4c7519023F30A78647EEab321d6cFabC2513c, "Constants.ETH_CURVE_20240630_MAINNET_POOL"); - vm.label(0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09, "Constants.ETH_FXB_20241231"); - vm.label(0xc9aa98788a675FF0846E8856cb83F19452f3b0c8, "Constants.ETH_AUCTION_20241231"); - vm.label(0x08a0748cF885F46e20fA30A50a035808eab293D3, "Constants.ETH_FXB_20241231_ORACLE"); - vm.label(0x6307E6688819951Cf8D6B6066018243D2496952F, "Constants.ETH_CURVE_20241231_MAINNET_POOL"); - vm.label(0xE920eEdAff6c3BEd1Ef61010B64d46986634E908, "Constants.ETH_CURVE_20241231_ARBITRUM_POOL"); - vm.label(0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68, "Constants.ETH_CURVE_20241231_ARBITRUM_GAUGE"); - vm.label(0x76237BCfDbe8e06FB774663add96216961df4ff3, "Constants.ETH_FXB_20261231"); - vm.label(0x63981f5E690eaF7E8795c42832664e8848F532fB, "Constants.ETH_AUCTION_20261231"); - vm.label(0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707, "Constants.ETH_FXB_20261231_ORACLE"); - vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_CURVE_20261231_MAINNET_POOL"); - vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ETH_CURVE_20261231_ARBITRUM_POOL"); - vm.label(0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9, "Constants.ETH_CURVE_20261231_ARBITRUM_GAUGE"); - vm.label(0x85c5f05Ae4CB68190C695a22b292C3bA90696128, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE"); - vm.label(0x4b8792aF00eaE944484bF572bc33029B2184a50C, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE"); - vm.label(0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE"); - vm.label(0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE"); - vm.label(0x505603e2440b44C1602b44D0Eb8385399b3F7bab, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE"); - vm.label(0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE"); - vm.label(0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE"); - vm.label(0x6ac96F65156281a9383455D704b58A74ea9C9eC4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE"); - vm.label(0xA381d58e96eC3818c825E1fb264099448945CF8b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE"); - vm.label(0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE"); - vm.label(0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE"); - vm.label(0x18A5ca670dC42D0551f00E11A730074f6787f17F, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE"); - vm.label(0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE"); - vm.label(0xF380200B115Caa22D49e6C115b758d6130377620, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE"); - vm.label(0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE"); - vm.label(0x3eF1d856EA62A2292B8690855042095a7aC48B4b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE"); - vm.label(0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE"); - vm.label(0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE"); - vm.label(0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE"); - vm.label(0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE"); - vm.label(0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE"); - vm.label(0x621D0e62f26314387f338A2509aFA3Ae3414661A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE"); - vm.label(0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE"); - vm.label(0x2d2261f970F605C813f160E8BAEd455E9004A842, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE"); - vm.label(0xfB788F9E20ef426a32A67986654750172A6c1788, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE"); - vm.label(0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE"); - vm.label(0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE"); - vm.label(0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE"); - vm.label(0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE"); - vm.label(0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE"); - vm.label(0x9A576A3d39c589A861B46864C253288bcA428a6c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE"); - vm.label(0x958815f476cD07354c0BC034EE5077B20fD93003, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE"); - vm.label(0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE"); - vm.label(0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE"); - vm.label(0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE"); - vm.label(0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE"); - vm.label(0x228567c10b7533C88057c10dDeA6349360F122c5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE"); - vm.label(0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE"); - vm.label(0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE"); - vm.label(0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE"); - vm.label(0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE"); - vm.label(0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE"); - vm.label(0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE"); - vm.label(0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE"); - vm.label(0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE"); - vm.label(0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE"); - vm.label(0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE"); - vm.label(0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE"); - vm.label(0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE"); - vm.label(0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE"); - vm.label(0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE"); - vm.label(0x86E71075e55F0aaD27D700017E0783458310c98a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE"); - vm.label(0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE"); - vm.label(0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE"); - vm.label(0xF887C4cFAAfB43d1AA7De204344895591016772c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE"); - vm.label(0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE"); - vm.label(0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE"); - vm.label(0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE"); - vm.label(0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE"); - vm.label(0x27E97F35D80514D5DD1Caa730e22a292E912a214, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE"); - vm.label(0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE"); - vm.label(0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE"); - vm.label(0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE"); - vm.label(0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CREWMEMBER"); - vm.label(0x3C2982CA260e870eee70c423818010DfeF212659, "Constants.ETH_FRAX_POOL_USDC"); - vm.label(0x1864Ca3d47AaB98Ee78D11fc9DCC5E7bADdA1c0d, "Constants.ETH_FRAX_POOL_USDC_V2"); - vm.label(0x7d3FCd3825AE54E8E8FFD3d0ce95882330d54968, "Constants.ETH_FRAX_POOL_USDT"); - vm.label(0x2fE065e6FFEf9ac95ab39E5042744d695F560729, "Constants.ETH_FRAX_POOL_V3"); - vm.label(0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9, "Constants.ETH_AAVE_ERC20"); - vm.label(0x3284E1BCEaf70767A7575d0e1e10fAFbC4618B52, "Constants.ETH_AAVE_TOKEN_DUAL_ORACLE_ADDRESS"); - vm.label(0x547a514d5e3769680Ce22B2361c10Ea13619e8a9, "Constants.ETH_AAVE_USD_CHAINLINK_ORACLE"); - vm.label(0x2CDF5812F4ebcF3BD533E8918D47Bd3e65514520, "Constants.ETH_APECOIN_DUAL_ORACLE_ADDRESS"); - vm.label(0x4d224452801ACEd8B2F0aebE155379bb5D594381, "Constants.ETH_APE_ERC20"); - vm.label(0xD10aBbC76679a20055E167BB80A24ac851b37056, "Constants.ETH_APE_USD_CHAINLINK_ORACLE"); - vm.label(0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c, "Constants.ETH_BTC_USD_CHAINLINK_ORACLE"); - vm.label(0x7F09c398740518F8e34556D8C1A1FBE1cb1F6Db0, "Constants.ETH_CHAIN_LINK_TOKEN_DUAL_ORACLE"); - vm.label(0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c, "Constants.ETH_CIRCUIT_BREAKER_ADDRESS"); - vm.label(0x878f2059435a19C79c20318ee57657bF4543B6d4, "Constants.ETH_COMBO_ORACLE"); - vm.label(0x734fd1fD1f3720379f52cB9d8168d76Cd1ca4A73, "Constants.ETH_COMBO_ORACLE_KYBERSWAP_ELASTIC"); - vm.label(0xc3a483Bb5F96bC4E6104325aa1A229A8E29166B3, "Constants.ETH_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); - vm.label(0x1cBE07F3b3bf3BDe44d363cecAecfe9a98EC2dff, "Constants.ETH_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0x168200cF227D4543302686124ac28aE0eaf2cA0B, "Constants.ETH_FRAXLEND_COMPTROLLER_ADDRESS"); - vm.label(0x8A2112B42AF1F997002FBAfF77dd09F42A281e8d, "Constants.ETH_CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP"); - vm.label(0x45127c7fA0c3Ce6A18fEc9604D96eDfBBc8A9700, "Constants.ETH_CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP"); - vm.label(0x54a3A6aFd87F10Eea4Acc2A067A2C0b612B6D315, "Constants.ETH_CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD"); - vm.label(0xd1b222AAEdf2877CeEB3c66BDaA6858200eb48fC, "Constants.ETH_CONVEX_WRAPPER_FRXETH_ETH_FRAXLEND_LP_OLD"); - vm.label(0x7086F2aCB5558043fF9cE3df346D8E3FB4F4f452, "Constants.ETH_CPI_TRACKER_ORACLE"); - vm.label(0x66B7DFF2Ac66dc4d6FBB3Db1CB627BBb01fF3146, "Constants.ETH_CPI_TRACKER_ORACLE_V2"); - vm.label(0xD533a949740bb3306d119CC777fa900bA034cd52, "Constants.ETH_CRV_ERC20"); - vm.label(0xCd627aA160A6fA45Eb793D19Ef54f5062F20f33f, "Constants.ETH_CRV_USD_CHAINLINK_ORACLE"); - vm.label(0x4e3FBD56CD56c3e72c1403e103b45Db9da5B9D2B, "Constants.ETH_CVX_ERC20"); - vm.label(0xd962fC30A72A84cE50161031391756Bf2876Af5D, "Constants.ETH_CVX_USD_CHAINLINK_ORACLE"); - vm.label(0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419, "Constants.ETH_ETH_USD_CHAINLINK_ORACLE"); - vm.label(0x8216AE38454cCe2d52dEcf0442042250Ea6A2510, "Constants.ETH_EZETHETH_DUAL_ORACLE"); - vm.label(0xB020ab0E609d907578f6899a9469E3CbD79e4e70, "Constants.ETH_EZETH_DUAL_ORACLE"); - vm.label(0xbf5495Efe5DB9ce00f80364C8B423567e58d2110, "Constants.ETH_EZETH_ERC20"); - vm.label(0xB8B01cec5CEd05C457654Fc0fda0948f859883CA, "Constants.ETH_FIL_ERC20"); - vm.label(0x0606Be69451B1C9861Ac6b3626b99093b713E801, "Constants.ETH_FIL_ETH_CHAINLINK_ORACLE"); - vm.label(0x1A31D42149e82Eb99777f903C08A2E41A00085d3, "Constants.ETH_FIL_USD_CHAINLINK_ORACLE"); - vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.ETH_FPIS_ERC20"); - vm.label(0x2397321b301B80A1C0911d6f9ED4b6033d43cF51, "Constants.ETH_FPI_CONTROLLER_POOL_ADDRESS"); - vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.ETH_FPI_ERC20"); - vm.label(0xd2516e709a2e9D64F66B4c4009efE4F74F5FA40D, "Constants.ETH_FPI_ORACLE"); - vm.label(0x2469757756ebA7Bea6B7F054896e3Db74103A962, "Constants.ETH_FPI_ORACLE_V2"); - vm.label(0x251d4fE77eD73126583Ee347041258ABeEcB7C66, "Constants.ETH_FRAXBP_CURVE_LP_DUAL_ORACLE"); - vm.label(0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044, "Constants.ETH_FRAXLEND_DEPLOYER_ADDRESS_V0"); - vm.label(0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044, "Constants.ETH_FRAXLEND_PAIRDEPLOYER"); - vm.label(0x26fa88b783cE712a2Fa10E91296Caf3daAE0AB37, "Constants.ETH_FRAXLEND_PAIRHELPER"); - vm.label(0x38488dE975B77dc1b0D4B8569f596f6FD6ca0B92, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_ADDRESS"); - vm.label(0xC4e34AD5908c4D2508a26C20c8687Ff64CB9e05b, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_CONVEX_ADDRESS"); - vm.label(0xaa913C26dD7723Fcae9dBD2036d28171a56C6251, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_V3_ADDRESS"); - vm.label(0xEb8816BAEB70690660ce6C0eDA2b07A21493e664, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_V41_ADDRESS"); - vm.label(0x7AB788d0483551428f2291232477F1818952998C, "Constants.ETH_FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS"); - vm.label(0x1b0bCeD6dd26a7c234506E261BC68C9A3A4031b7, "Constants.ETH_FRAXLEND_PAIR_HELPER"); - vm.label(0xD6E9D27C75Afd88ad24Cd5EdccdC76fd2fc3A751, "Constants.ETH_FRAXLEND_PAIR_REGISTRY_ADDRESS"); - vm.label(0x118C1462AA28bF2ea304f78f49C3388cfd93234e, "Constants.ETH_FRAXLEND_WHITELIST_ADDRESS"); - vm.label(0xC14d550632db8592D1243Edc8B95b0Ad06703867, "Constants.ETH_FRAXSWAP_ROUTER_ADDRESS"); - vm.label(0xdB3388e770F49A604E11f1a2084B39279492a61f, "Constants.ETH_FRAX_HOT_WALLET"); - vm.label(0x2Ad35cce2a690E0bF1e6dCAC2F9175389F31D7F4, "Constants.ETH_FRAX_USDC_CURVE_LP_DUAL_ORACLE_ADDRESS"); - vm.label(0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC, "Constants.ETH_FRAX_USDC_CURVE_POOL_LP_ERC20"); - vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_CURVE_POOL_NOT_LP"); - vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_PLAIN_POOL"); - vm.label(0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD, "Constants.ETH_FRAX_USD_CHAINLINK_ORACLE"); - vm.label(0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS"); - vm.label(0xf43211935C781D5ca1a41d2041F397B8A7366C7A, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_ERC20"); - vm.label(0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577, "Constants.ETH_FRXETH_ETH_CURVE_POOL_NOT_LP"); - vm.label(0xb12c19C838499E3447AFd9e59274B1BE56b1546A, "Constants.ETH_FRXETH_ETH_DUAL_ORACLE_ADDRESS"); - vm.label(0xC58F3385FBc1C8AD2c0C9a061D7c13b141D7A5Df, "Constants.ETH_FRXETH_FRAX_ORACLE_ADDRESS"); - vm.label(0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e, "Constants.ETH_FXB_20240630_ERC20"); - vm.label(0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97, "Constants.ETH_FXB_20240630_ORACLE"); - vm.label(0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09, "Constants.ETH_FXB_20241231_ERC20"); - vm.label(0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617, "Constants.ETH_FXB_20241231_ORACLE_ADAPTER"); - vm.label(0x76237BCfDbe8e06FB774663add96216961df4ff3, "Constants.ETH_FXB_20261231_ERC20"); - vm.label(0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3, "Constants.ETH_FXB_20261231_ORACLE_ADAPTER"); - vm.label(0x01480a0C134CeCC309015a564C7e292ba6E0F358, "Constants.ETH_FXB_VARIABLE_RATE_2"); - vm.label(0x6Ebc52C8C1089be9eB3945C4350B68B8E4C2233f, "Constants.ETH_FXS_USD_CHAINLINK_ORACLE"); - vm.label(0x0ab87046fBb341D058F17CBC4c1133F25a20a52f, "Constants.ETH_GOHM_ERC20"); - vm.label(0xe893297a9d4310976424fD0B25f53aC2B6464fe3, "Constants.ETH_GOHM_ORACLE"); - vm.label(0x883Aa2E1E46b53648520E0F6857e2ee1798F3e5d, "Constants.ETH_LDO_DUAL_ORACLE"); - vm.label(0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32, "Constants.ETH_LDO_ERC20"); - vm.label(0x4e844125952D32AcdF339BE976c98E22F6F318dB, "Constants.ETH_LDO_ETH_CHAINLINK_ORACLE"); - vm.label(0x9409280DC1e6D33AB7A8C6EC03e5763FB61772B5, "Constants.ETH_LDO_ETH_CURVE_V2_POOL"); - vm.label(0x2f3511C5E960040369F68508ebb366DF58DF1BF2, "Constants.ETH_LINEAR_INTEREST_RATE"); - vm.label(0x2f3511C5E960040369F68508ebb366DF58DF1BF2, "Constants.ETH_LINEAR_RATE_ADDRESS"); - vm.label(0x514910771AF9Ca656af840dff83E8264EcF986CA, "Constants.ETH_LINK_ERC20"); - vm.label(0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c, "Constants.ETH_LINK_USD_CHAINLINK_ORACLE"); - vm.label(0x4c7b43EcE8958D7f6b184B3833DD1D383db1f83b, "Constants.ETH_MAKER_DUAL_ORACLE_ADDRESS"); - vm.label(0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2, "Constants.ETH_MKR_ERC20"); - vm.label(0x24551a8Fb2A7211A25a17B1481f043A8a8adC7f2, "Constants.ETH_MKR_ETH_CHAINLINK_ORACLE"); - vm.label(0xec1D1B3b0443256cc3860e24a46F108e699484Aa, "Constants.ETH_MKR_USD_CHAINLINK_ORACLE"); - vm.label(0x9a72298ae3886221820B1c878d12D872087D3a23, "Constants.ETH_OHMV2_ETH_CHAINLINK_ORACLE"); - vm.label(0x8161EDD2208247066FA213EDA909B0D351543b3d, "Constants.ETH_RETH_DUAL_ORACLE"); - vm.label(0xae78736Cd615f374D3085123A210448E74Fc6393, "Constants.ETH_RETH_ERC20"); - vm.label(0x16BAb4C46b36587609093633550816fc828817Ba, "Constants.ETH_RSETHETH_DUAL_ORACLE"); - vm.label(0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7, "Constants.ETH_RSETH_ERC20"); - vm.label(0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32, "Constants.ETH_SFRAX_ERC20"); - vm.label(0xd2F0fa7f2E6a60EEcf4b78c5b6D81002b9789F2c, "Constants.ETH_SFRXETH_DUAL_ORACLE_ADDRESS"); - vm.label(0x1473F3e4d236CBBe3412b9f65B4c210756BE2C0E, "Constants.ETH_SFRXETH_ETH_DUAL_ORACLE_ADDRESS"); - vm.label(0xB9af7723CfBd4469A7E8aa60B93428D648Bda99d, "Constants.ETH_SFRXETH_FRAX_ORACLE_ADDRESS"); - vm.label(0x27942aFe4EcB7F9945168094e0749CAC749aC97B, "Constants.ETH_SFRXETH_ORACLE"); - vm.label(0x807502C8EAdAc82C3227249f8aCf54d9d98F76d1, "Constants.ETH_SFRXETH_ORACLE_V2"); - vm.label(0xAfBcCB0a8d301AA8c18eBb4Ac94aB32d394fDCeC, "Constants.ETH_SFRXETH_SFRAX_INVERSE_ORACLE_ADAPTER"); - vm.label(0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f, "Constants.ETH_SFRXETH_USDC_ORACLE_V2_ADAPTER"); - vm.label(0x3d3D868522b5a4035ADcb67BF0846D61597A6a6F, "Constants.ETH_SFRXETH_USD_ORACLE_V2"); - vm.label(0x9D39A5DE30e57443BfF2A8307A4256c8797A3497, "Constants.ETH_SUSDE_ERC20"); - vm.label(0x8Eb7a4Fa315620CC342073326acC206961F4BB62, "Constants.ETH_SUSDE_ORACLE"); - vm.label(0x33A9D662d9F7cb2153e3a5102615B08865BeAbdB, "Constants.ETH_UNISWAP_DUAL_ORACLE_ADDRESS"); - vm.label(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, "Constants.ETH_UNIV2_ROUTER"); - vm.label(0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984, "Constants.ETH_UNI_ERC20"); - vm.label(0x553303d460EE0afB37EdFf9bE42922D8FF63220e, "Constants.ETH_UNI_USD_CHAINLINK_ORACLE"); - vm.label(0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48, "Constants.ETH_USDC_ERC20"); - vm.label(0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6, "Constants.ETH_USDC_USD_CHAINLINK_ORACLE"); - vm.label(0x5dc1BF6f1e983C0b21EfB003c105133736fA0743, "Constants.ETH_USDE_CURVE_PAIR"); - vm.label(0x4c9EDD5852cd905f086C759E8383e09bff1E68B3, "Constants.ETH_USDE_ERC20"); - vm.label(0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838, "Constants.ETH_USDE_ORACLE"); - vm.label(0x18500cB1f2fE7a40eBdA393383A0B8548a31F261, "Constants.ETH_VARIABLE_RATE_2_ADDRESS"); - vm.label(0x576E23b6E2665A91DdF301DcfF53d1fFA2972bB5, "Constants.ETH_VARIABLE_RATE_2_ADDRESS_50"); - vm.label(0xFf7846bAcB63FE97406a1E1e48CAf1595f66A98c, "Constants.ETH_VARIABLE_RATE_50BP_ADDRESS"); - vm.label(0x9327058a739089869B7DC3436E074C6d56051C7A, "Constants.ETH_VARIABLE_RATE_ADDRESS"); - vm.label(0x3da1bf0Be175B7cAa38d67A6E78371947d2F51f7, "Constants.ETH_VARIABLE_RATE_ADDRESS_OLD"); - vm.label(0x9599033315C29Be9690b716bFE409381426dAD41, "Constants.ETH_VARIABLE_RATE_STABLE_ADDRESS"); - vm.label(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599, "Constants.ETH_WBTC_ERC20"); - vm.label(0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC, "Constants.ETH_WBTC_SFRAX_INVERSE_DUAL_ORACLE"); - vm.label(0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); - vm.label(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, "Constants.ETH_WETH_ERC20"); - vm.label(0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A, "Constants.ETH_WETH_FRAX_V3_POOL"); - vm.label(0x1cA1350F67575B0beE44EC9DC6725A4032431F33, "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); - vm.label(0xE0554a476A092703abdB3Ef35c80e0D76d32939F, "Constants.ETH_WETH_USDC_V3_POOL"); - vm.label(0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0, "Constants.ETH_WSTETH_ERC20"); - vm.label(0xe73375f36A1b17A21d7Aa0fDa092195431e7017a, "Constants.ETH_WSTETH_USD_DUAL_ORACLE_ADDRESS"); - vm.label(0x794F6B13FBd7EB7ef10d1ED205c9a416910207Ff, "Constants.ETH_FRAXLEND_PAIR_WETH_FRAX"); - vm.label(0x32467a5fc2d72D21E8DCe990906547A2b012f382, "Constants.ETH_FRAXLEND_PAIR_WBTC_FRAX"); - vm.label(0x78bB3aEC3d855431bd9289fD98dA13F9ebB7ef15, "Constants.ETH_FRAXLEND_PAIR_SFRXETH_FRAX"); - vm.label(0x281E6CB341a552E4faCCc6b4eEF1A6fCC523682d, "Constants.ETH_FRAXLEND_PAIR_CRVETHFRXETH_FRAX"); - vm.label(0xDbe88DBAc39263c47629ebbA02b3eF4cf0752A72, "Constants.ETH_FRAXLEND_PAIR_FXS_FRAX"); - vm.label(0x74F82Bd9D0390A4180DaaEc92D64cf0708751759, "Constants.ETH_FRAXLEND_PAIR_FPI_FRAX"); - vm.label(0x3a25B9aB8c07FfEFEe614531C75905E810d8A239, "Constants.ETH_FRAXLEND_PAIR_APE_FRAX"); - vm.label(0xa1D100a5bf6BFd2736837c97248853D989a9ED84, "Constants.ETH_FRAXLEND_PAIR_CVX_FRAX"); - vm.label(0x3835a58CA93Cdb5f912519ad366826aC9a752510, "Constants.ETH_FRAXLEND_PAIR_CRV_FRAX"); - vm.label(0x66bf36dBa79d4606039f04b32946A260BCd3FF52, "Constants.ETH_FRAXLEND_PAIR_GOHM_FRAX"); - vm.label(0x82Ec28636B77661a95f021090F6bE0C8d379DD5D, "Constants.ETH_FRAXLEND_PAIR_MKR_FRAX"); - vm.label(0xc6CadA314389430d396C7b0C70c6281e99ca7fe8, "Constants.ETH_FRAXLEND_PAIR_UNI_FRAX"); - vm.label(0xc779fEE076EB04b9F8EA424ec19DE27Efd17A68d, "Constants.ETH_FRAXLEND_PAIR_AAVE_FRAX"); - vm.label(0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF, "Constants.ETH_FRAXLEND_PAIR_FXB_20240630_FRAX"); - vm.label(0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a, "Constants.ETH_FRAXLEND_PAIR_FXB_20241231_FRAX"); - vm.label(0x1c0C222989a37247D974937782cebc8bF4f25733, "Constants.ETH_FRAXLEND_PAIR_FXB_20261231_FRAX"); - vm.label(0xeE847a804b67f4887c9E8fe559A2dA4278deFB52, "Constants.ETH_FRAXLEND_PAIR_SFRXETH_USDC"); - vm.label(0x7093F6141293F7C4F67E5efD922aC934402E452d, "Constants.ETH_FRAXLEND_PAIR_LINK_FRAX"); - vm.label(0xb5a46f712F03808aE5c4B885C6F598fA06442684, "Constants.ETH_FRAXLEND_PAIR_WSTETH_FRAX"); - vm.label(0x0601B72bEF2b3F09E9f48B7d60a8d7D2D3800C6e, "Constants.ETH_FRAXLEND_PAIR_LDO_FRAX"); - vm.label(0xa4Ddd4770588EF97A3a03E4B7E3885d824159bAA, "Constants.ETH_FRAXLEND_PAIR_RETH_FRAX"); - vm.label(0xb5Ae5b75C0DF5632c572A657109375646Ce66f90, "Constants.ETH_FRAXLEND_PAIR_SUSDE_FRAX"); - vm.label(0xb67Bd04f74BD79a505c5167675E8812355270eD5, "Constants.ETH_FRAXLEND_PAIR_SFRAX_WBTC"); - vm.label(0x501256B1DC7bb99CdE57AF188a69307BCC7E00E8, "Constants.ETH_FRAXLEND_PAIR_SFRAX_SFRXETH"); - vm.label(0x1eE17BE9B788bcf3EB86C08D0E2b049e036F6eb1, "Constants.ETH_FRAXLEND_PAIR_EZETH_FRXETH"); - vm.label(0xCfE3550206ea801c3F7Dc7997376F09E0b7e4B81, "Constants.ETH_FRAXLEND_PAIR_RSETH_FRXETH"); - vm.label(0xe5Ca8CB440A6f9F6fA1D535D94A839CED59D9942, "Constants.ETH_FRAXLEND_WRAPPER_FACTORY"); - vm.label(0xB076b06F669e682609fb4a8C6646D2619717Be4b, "Constants.ETH_FRAXSWAP_FACTORY_V1"); - vm.label(0x43eC799eAdd63848443E2347C49f5f52e8Fe0F6f, "Constants.ETH_FRAXSWAP_FACTORY_V2"); - vm.label(0x1C6cA5DEe97C8C368Ca559892CCce2454c8C35C7, "Constants.ETH_FRAXSWAP_ROUTER_V1"); - vm.label(0xC14d550632db8592D1243Edc8B95b0Ad06703867, "Constants.ETH_FRAXSWAP_ROUTER_V2"); - vm.label(0x25e9acA5951262241290841b6f863d59D37DC4f0, "Constants.ETH_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0x5A1eA0130Dc4DC38420AA77929f992f1FBd482Bb, "Constants.ETH_FRAXSWAP_PAIR_FRAX_FPI"); - vm.label(0xd79886841026a39cFF99321140B3c4D31314782B, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_FPI"); - vm.label(0x8206412c107eF1aDb70B9277974f5163760E128E, "Constants.ETH_FRAXSWAP_PAIR_FRAX_FXS"); - vm.label(0x03B59Bd1c8B9F6C265bA0c3421923B93f15036Fa, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_FXS"); - vm.label(0x99887AC15eBCcbad52FA2c9ceDc9D91A91e36051, "Constants.ETH_FRAXSWAP_PAIR_FRAX_FPIS"); - vm.label(0x56695c26b3Cdb528815cd22fF7B47510ab821EFd, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_FPIS"); - vm.label(0xD3542ec999ceA6C79f09483fF88833f154a5e92f, "Constants.ETH_FRAXSWAP_PAIR_FPI_FPIS"); - vm.label(0xF14766a7C44EFb7F71441B7114d5Dd295B637175, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FPI_FPIS"); - vm.label(0x843B5Ae5861362F20A3aC185A2dD2393D7526C65, "Constants.ETH_FRAXSWAP_PAIR_FPI_FXS"); - vm.label(0x3ECfdA4EfF6184cD8563772D6d024cB0Fb9cBf80, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FPI_FXS"); - vm.label(0x1306b420B4B5f99cBeE938E369f06863a0f419A5, "Constants.ETH_FRAXSWAP_PAIR_FXS_FPIS"); - vm.label(0x7a9Bd205B55cCB1Cc1c5B99FF5Db87a6e7B2C38b, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FXS_FPIS"); - vm.label(0x49FD21C5C8813B1bAE4e5507C556391D6Dd9e9f1, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FXS_FRXETH"); - vm.label(0x8300f0528e00Ad33b218bb05D396F61A9FDd68Cd, "Constants.ETH_FRAXSWAP_PAIR_FRAX_WETH"); - vm.label(0x31351Bf3fba544863FBff44DDC27bA880916A199, "Constants.ETH_FRAXSWAP_PAIR_FS_V2_FRAX_WETH"); - vm.label(0x0a92aC70B5A187fB509947916a8F63DD31600F80, "Constants.ETH_FRAXSWAP_PAIR_FRAX_PITCHFXS"); - vm.label(0x2bac101F9769AEfF63c63EFfB4189152e833649F, "Constants.ETH_FRAXSWAP_PAIR_FRAX_PITCHFXS_V2"); - vm.label(0xcB0bC7C879bb3E9CFEB9d8EFef653F33B3d242e9, "Constants.ETH_FRAXSWAP_PAIR_FRAX_IQ"); - vm.label(0x07AF6BB51d6Ad0Cf126E3eD2DeE6EaC34BF094F8, "Constants.ETH_FRAXSWAP_PAIR_FRAX_IQ_V2"); - vm.label(0x38633ed142BCc8128b45aB04A2e4A6e53774699F, "Constants.ETH_FRAXSWAP_PAIR_FRAX_OHM"); - vm.label(0x5769071665eb8Db80e7e9226F92336Bb2897DCFA, "Constants.ETH_FRAXSWAP_PAIR_FRAX_OHM_V2"); - vm.label(0xCCB26b5CC4e1Ce29521DA281a0107A6672bfe099, "Constants.ETH_FRAXSWAP_PAIR_FRAX_SDL_V2"); - vm.label(0x832c6f546Bf34A552DeB8773216a93bf6801028c, "Constants.ETH_FRAXSWAP_PAIR_FRAX_SYN_V2"); - vm.label(0x5E8c1aD4c3D04f059d5c1A2Ce4593e53be270bca, "Constants.ETH_FRAXSWAP_PAIR_FRAX_ZZ_V2"); - vm.label(0x8c5D64d10394cFa070066e70Ec19E67398b4dABE, "Constants.ETH_ADDRESS_MANAGER"); - vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_BASE_FEE_VAULT_RECIPIENT"); - vm.label(0xfF000000000000000000000000000000000420fC, "Constants.ETH_BATCH_INBOX"); - vm.label(0x6017f75108f251a488B045A7ce2a7C15b179d1f2, "Constants.ETH_BATCH_SENDER"); - vm.label(0x3AA7e876880CB34371c01f1510B1e0A932dCb8C1, "Constants.ETH_DISPUTE_GAME_FACTORY_PROXY"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_FINAL_SYSTEM_OWNER"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_FRAXTAL_COMPTROLLER"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_FRAXTAL_DEPLOYER"); - vm.label(0xC6e4ECE5576dC96846bb11eD8910f3dF3CE516b8, "Constants.ETH_L1_CROSS_DOMAIN_MESSENGER_IMPL_V2"); - vm.label(0x126bcc31Bc076B3d515f60FBC81FddE0B0d542Ed, "Constants.ETH_L1_CROSS_DOMAIN_MESSENGER_PROXY"); - vm.label(0x31c25985E6b10CF335FC01cf9790aF4890d0505c, "Constants.ETH_L1_CROSS_DOMAIN_MESSENGER__IMPL_V1"); - vm.label(0x7eE1637C33Ed0DFEE6403f3301B6d404106018e4, "Constants.ETH_L1_ERC721_BRIDGE_IMPL_V2"); - vm.label(0xa9B5Fb84B7aeAF0D51C95DB04a76B1D4738D0eC5, "Constants.ETH_L1_ERC721_BRIDGE_PROXY"); - vm.label(0x23A0478996241F9f966b7054c06FdeB96Ddf3475, "Constants.ETH_L1_ERC721_BRIDGE__IMPL_V1"); - vm.label(0x30Cd695249394eED44C576f2caEC5304be6455F9, "Constants.ETH_L1_STANDARD_BRIDGE_IMPL_V2_ADDR"); - vm.label(0x34C0bD5877A5Ee7099D0f5688D65F4bB9158BDE2, "Constants.ETH_L1_STANDARD_BRIDGE_PROXY"); - vm.label(0xCC26248B71284B812Ff7825e005560DB01a874C7, "Constants.ETH_L1_STANDARD_BRIDGE__IMPL_V1_ADDR"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_L2_OUTPUT_ORACLE_CHALLENGER"); - vm.label(0x6f3CcC8C9DAf8B9b39aDe481213Ff7A626a42B65, "Constants.ETH_L2_OUTPUT_ORACLE_IMPL_V2"); - vm.label(0xFb90465f3064fF63FC460F01A6307eC73d64bc50, "Constants.ETH_L2_OUTPUT_ORACLE_PROPOSER"); - vm.label(0x66CC916Ed5C6C2FA97014f7D1cD141528Ae171e4, "Constants.ETH_L2_OUTPUT_ORACLE_PROXY"); - vm.label(0xA30ADd78D5be6B2B55C934666bb4fF2C4429d800, "Constants.ETH_L2_OUTPUT_ORACLE__IMPL_V1"); - vm.label(0x11FE3be54aC01C13Dd985cE2BdD10eD77e1376cc, "Constants.ETH_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); - vm.label(0x47Ec03B67ba4f3C71a4320D2947f2173E0B45a23, "Constants.ETH_OPTIMISM_PORTAL_IMPL_V2_ADDR"); - vm.label(0x36cb65c1967A0Fb0EEE11569C51C2f2aA1Ca6f6D, "Constants.ETH_OPTIMISM_PORTAL_PROXY"); - vm.label(0x59B6903044Fa9439a5D621D3605789A6E654b1D6, "Constants.ETH_OPTIMISM_PORTAL__IMPL_V1_ADDR"); - vm.label(0xc88138f5c82DD1bD327708C7F1c15E44Ce7FdA0C, "Constants.ETH_P2P_SEQUENCER_ADDRESS"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_PORTAL_GUARDIAN"); - vm.label(0xeE1d28b0FB299BcE1E164aCc001c15e283082bA2, "Constants.ETH_PROTOCOL_VERSIONS_IMPL_V2"); - vm.label(0x3c7EA1c10Eb783fE86e4eEd202324dCFEEca9043, "Constants.ETH_PROTOCOL_VERSIONS_PROXY"); - vm.label(0x13Fe62cB24aEa5afd179F20D362c056c3881ABcA, "Constants.ETH_PROXY_ADMIN"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_PROXY_ADMIN_OWNER"); - vm.label(0x7a6b7F35D032c9b122C69F01EA4523e028f6ef4A, "Constants.ETH_STORAGE_SETTER"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_SUPERCHAIN_CONFIG_GUARDIAN"); - vm.label(0x0d9C39c64CF8eDA1EdFeBD78AFa895bAA797eFc4, "Constants.ETH_SUPERCHAIN_CONFIG_IMPL_V2"); - vm.label(0x61ca43CB037aC9181d8Fa5CD0073dC314065Ccc4, "Constants.ETH_SUPERCHAIN_CONFIG_PROXY"); - vm.label(0x4D7A1a16d0DA89B50FBd8b524508FC393A6Dc367, "Constants.ETH_SYSTEM_CONFIG_IMPL_V2_ADDR"); - vm.label(0x34a9f273cbD847d49c3De015FC26c3E66825f8b2, "Constants.ETH_SYSTEM_CONFIG_PROXY"); - vm.label(0x22052c592f763CA14a090D9974c5Bf9Fd3a44b8c, "Constants.ETH_SYSTEM_CONFIG__IMPL_V1_ADDR"); - vm.label(0xe0d7755252873c4eF5788f7f45764E0e17610508, "Constants.ETH_SYSTEM_OWNER_SAFE"); - vm.label(0xE3f4e2b79f1a8bf3b14d9100323Fca24D923f796, "Constants.ETH_BALANCER_FRXETH_BB_A_WETH_GAUGE"); - vm.label(0x636A9d7686bFA0a2ddd93b37A1E33bCdE6C31e8D, "Constants.ETH_CONVEX_FRAXBP_ARBITRUM"); - vm.label(0xba1ED260F9a81088Ecb7602F790a67C773817BDA, "Constants.ETH_CONVEX_FRAX_FXB_20241231_ARBITRUM"); - vm.label(0x2A8499c4a86F7c07e311c73E36575A0Dc2D362C3, "Constants.ETH_CONVEX_FRAX_FXB_20261231_ARBITRUM"); - vm.label(0x5608051D98377419d7D861531728DFB869dDc054, "Constants.ETH_CONVEX_FRXETH_WETH_ARBITRUM"); - vm.label(0x53e78a6e12146565c7d7307d07A3C1ABacf3E20F, "Constants.ETH_CONVEX_HFXB_FRAX_ARBITRUM"); - vm.label(0xE096E62B4b23C46a748828083458e22b014640f3, "Constants.ETH_CONVEX_SQUID_WFRXETH_FRAXTAL"); - vm.label(0x840f20ffED887c61435E81fd1231CB923df39d3d, "Constants.ETH_CONVEX_USD_FRAXBP"); - vm.label(0x127963A74c07f72D862F2Bdc225226c3251BD117, "Constants.ETH_CURVE_VSTFRAX_F"); - vm.label(0x6f82A6551cc351Bc295602C3ea99C78EdACF590C, "Constants.ETH_FLE_FXS_WFRXETH_FRAXTAL"); - vm.label(0x83Dc6775c1B0fc7AaA46680D78B04b4a3d4f5650, "Constants.ETH_FLE_FRAX_FXS_FRAXTAL"); - vm.label(0x3B78BdC7575896701C4e32f9D070AA387fcEB22b, "Constants.ETH_FRAXSWAP_V2_FRAX_FPI_FRAXTAL"); - vm.label(0x99FA1928A9Fea45b8d1395e870a92a0675A10E6E, "Constants.ETH_FRAXSWAP_V2_FRAX_FXS_FRAXTAL"); - vm.label(0x007c874a4240f8C31B4BfE6D91f47b903e2E3BE1, "Constants.ETH_FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL"); - vm.label(0x8Fa7B006538F0710BD5fEfBd5737eBDD8B487166, "Constants.ETH_FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL"); - vm.label(0x0884c9Bb52348fa76d4e1c6Ea042A2EaF0b72c6C, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM"); - vm.label(0x9c9e8E8ccD7dAF6AfAB436829992B3Cf408319B4, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM"); - vm.label(0x11c9C6F9e983bf6E10296A9ce09D4572F664FF25, "Constants.ETH_KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON"); - vm.label(0x3e14f6EEDCC5Bc1d0Fc7B20B45eAE7B1F74a6AeC, "Constants.ETH_MSTABLE_FRAX_MUSD"); - vm.label(0x9B8AEd182B8A9430C14e97Bf2C02F129f2b36854, "Constants.ETH_SADDLE_L2D4_ARBITRUM"); - vm.label(0x86c0A521807f43A646978e9f302BAF693350eAa3, "Constants.ETH_SENTIMENT_LFRAX"); - vm.label(0x66fD216bCBeb566EF038A116B7270f241005e186, "Constants.ETH_SNOWBALL_S4D"); - vm.label(0xebF993690F65B23862E10F489656529ac06A27B8, "Constants.ETH_SPIRITSWAP_FRAX_FXS"); - vm.label(0x66635DC1EdEfF19e839f152a67278151Aa6e1B61, "Constants.ETH_AAVE_AMO"); - vm.label(0xcf37B62109b537fa0Cb9A90Af4CA72f6fb85E241, "Constants.ETH_AMO_MINTER"); - vm.label(0x36a0B6a5F7b318A2B4Af75FFFb1b51a5C78dEB8C, "Constants.ETH_AMO_MINTER_OLD"); - vm.label(0x0be27F994E24F8C3E5f6D0C28AbB5732256ee205, "Constants.ETH_BALANCE_CHECKER"); - vm.label(0xD1a7b80a954e56bfd7bd889aF6e2BE8674719F5d, "Constants.ETH_BUNDLE_UTILS"); - vm.label(0x49ee75278820f409ecd67063D8D717B38d66bd71, "Constants.ETH_CONVEX_AMO"); - vm.label(0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A, "Constants.ETH_CONVEX_AMO_ADMIN"); - vm.label(0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139, "Constants.ETH_CRVFRAX_VAULT"); - vm.label(0x72170Cdc48C33a6AE6B3E83CD387ca3Fb9105da2, "Constants.ETH_CURVE_AMO"); - vm.label(0x5840Db064e17480f8e8E74fD6714C9c316f7DdFE, "Constants.ETH_CURVE_AMO_IMPL_V1"); - vm.label(0xbd061885260F176e05699fED9C5a4604fc7F2BDC, "Constants.ETH_CURVE_AMO_V1"); - vm.label(0xD103FEf74D05FbC20B5184FE85c7187735355DB3, "Constants.ETH_CURVE_AMO_V2"); - vm.label(0xf8a4ffe7C980fD50B160b7B86dCd5e9eb7E281a9, "Constants.ETH_CURVE_AMO_V5"); - vm.label(0x900909C07c2761d84C5d863FF5905102916DF69C, "Constants.ETH_CURVE_AMO_ADMIN"); - vm.label(0x70F55767B11c047C8397285E852919F5f6c8DC60, "Constants.ETH_CURVE_METAPOOL_LOCKER"); - vm.label(0xE4BD0461AE7fdc76c61CE286a80c9B55d83B204a, "Constants.ETH_CURVE_METAPOOL_LOCKER_2"); - vm.label(0x847FA1A5337C7f24D7066E467F2e2A0f969Ca79F, "Constants.ETH_CURVE_VOTER_PROXY"); - vm.label(0x7038C406e7e2C9F81571557190d26704bB39B8f3, "Constants.ETH_CVX_LOCKER_AMO"); - vm.label(0x72a19342e8F1838460eBFCCEf09F6585e32db86E, "Constants.ETH_CVX_LOCKER_AMO_V2"); - vm.label(0x00000000219ab540356cBB839Cbe05303d7705Fa, "Constants.ETH_DEPOSIT_CONTRACT_ADDRESS"); - vm.label(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE, "Constants.ETH_ETH_ADDRESS"); - vm.label(0x2397321b301B80A1C0911d6f9ED4b6033d43cF51, "Constants.ETH_FPI_CONTROLLER_AMO"); - vm.label(0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC, "Constants.ETH_FRAX3CRV_CURVE_FXS_DISTRIBUTOR"); - vm.label(0x73f9F84B04584227b4f0bafFd8B37D6D0C11a23c, "Constants.ETH_FRAX3CRV_CURVE_REWARDS_DISTRIBUTOR_EOA"); - vm.label(0x44ade9AA409B0C29463fF7fcf07c9d3c939166ce, "Constants.ETH_FRAX_GAUGE_CONTROLLER"); - vm.label(0x3669C421b77340B2979d1A00a792CC2ee0FcE737, "Constants.ETH_FRAX_GAUGE_CONTROLLER_V2"); - vm.label(0x278dC748edA1d8eFEf1aDFB518542612b49Fcd34, "Constants.ETH_FRAX_GAUGE_REWARDS_DISTRIBUTOR"); - vm.label(0x48D9A9e67e9deCfD493efE2B3D3B5291fc802e5F, "Constants.ETH_FRAX_GAUGE_NOOP_REWARDS_DISTRIBUTOR"); - vm.label(0x72E158d38dbd50A483501c24f792bDAAA3e7D55C, "Constants.ETH_FRAX_GAUGE_V2"); - vm.label(0x0Ed8fA7FC63A8eb5487E7F87CAF1aB3914eA4eCa, "Constants.ETH_FRAXLEND_AMO"); - vm.label(0xf6E697e95D4008f81044337A749ECF4d15C30Ea6, "Constants.ETH_FRAXLEND_AMO_V3"); - vm.label(0xbAFA44EFE7901E04E39Dad13167D089C559c1138, "Constants.ETH_FRXETH_MINTER"); - vm.label(0x9C6a04871D11b33645ab592f68C41bb2B41F51EE, "Constants.ETH_FXS_1559_AMO"); - vm.label(0xC80C48862E4254F37047235298eDb6AA35717C24, "Constants.ETH_FXS_1559_AMO_V2"); - vm.label(0xCaa487D113ad1C34Ce128c4f3a2A437614C6a692, "Constants.ETH_FXS_1559_AMO_V2_ADMIN"); - vm.label(0xCDe9A4e885B87a893b8817D136FD2F404B54294f, "Constants.ETH_FXS_1559_AMO_V2_IMPL_V1"); - vm.label(0xb524622901b3f7b5DeA6501E9830700C847C7DC5, "Constants.ETH_FXS_1559_AMO_V3"); - vm.label(0xB8315Af919729c823B2d996B1A6DDE381E7444f1, "Constants.ETH_INVESTOR_AMO"); - vm.label(0xEE5825d5185a1D512706f9068E69146A54B6e076, "Constants.ETH_INVESTOR_AMO_V1"); - vm.label(0x069c24600c2A03147D4E1D9b04d193151676F577, "Constants.ETH_INVESTOR_AMO_ADMIN"); - vm.label(0xdE3C8aA7f53a69c595b7720045000A68Cb9CB341, "Constants.ETH_INVESTOR_AMO_IMPL_V1"); - vm.label(0x9507189f5B6D820cd93d970d67893006968825ef, "Constants.ETH_LENDING_AMO"); - vm.label(0xEc8672dd770D59FaD9a811591a5Edd40e8F6A413, "Constants.ETH_MANUAL_TOKEN_TRACKER_AMO"); - vm.label(0x239c957d42343B3d91FABc7c16E7F1e30Bc32E5B, "Constants.ETH_MIGRATION_BUNDLE_UTILS"); - vm.label(0xe16723A08Ae054a8F20BDc0395389569011e78D6, "Constants.ETH_MIGRATION_HELPER"); - vm.label(0x31183a2CCe8d1BFBBFE140Ea1A1264A454Fc821E, "Constants.ETH_MIM_CONVEX_AMO"); - vm.label(0xE054C1ab5D548E0144ab3F89a8f5809137819906, "Constants.ETH_MINT_UTILITIES"); - vm.label(0x977eaDb6fa9b8E1a2A950CcDE1A75a7b527a8cBB, "Constants.ETH_MSIG_HELPER"); - vm.label(0x1EA632b997B7c7068ac48aDe8040652a8AF9FbbB, "Constants.ETH_MULTICALL_OZ_DELEGATECALL"); - vm.label(0xFa27873EA2F0eA9DcD2052848C4A7F8ADE8a3936, "Constants.ETH_MULTISIG"); - vm.label(0x5699d20732a2EFa9A895EF04bb210aa751C4dB96, "Constants.ETH_OHM_AMO"); - vm.label(0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A, "Constants.ETH_OHM_AMO_ADMIN"); - vm.label(0x96665d63c1B53f8335e3c9287Ee255f306C93c45, "Constants.ETH_RARI_AMO"); - vm.label(0xB12C76b92936d136Fd8264F6EFcBb06458338D97, "Constants.ETH_RAGEQUITTER_TEMPLE"); - vm.label(0x375278D3C65f29C1A90E8550888f1439cFeFe465, "Constants.ETH_STAKEDAO_AMO"); - vm.label(0xE4de6E1DF1FE135D6462554d0Fd36A14d787f689, "Constants.ETH_STAKING_UTILITIES"); - vm.label(0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA, "Constants.ETH_TIMELOCK"); - vm.label(0x4e710B33c87CEDF832Cd82E11d743A011864f733, "Constants.ETH_TOKEMAK_AMO"); - vm.label(0x3F702a8F6c9f9F7ABdfEA67f89d33F18e0368600, "Constants.ETH_TOKEN_TRACKER_AMO"); - vm.label(0x37336AD1F3A145C710247E6a14C9AcC7f34D09eE, "Constants.ETH_TOKEN_TRACKER_V2"); - vm.label(0x11Fc7df1fb0E51f9c9AB8f575d9bbaDC92FA425B, "Constants.ETH_TWAMM_AMO"); - vm.label(0x629C473e0E698FD101496E5fbDA4bcB58DA78dC4, "Constants.ETH_TWAMM_AMO_V2"); - vm.label(0x7b50137E8996A1717a6D97a0527e4c5D2D133405, "Constants.ETH_UNIV2_TO_UNIV3_MIGRATOR_ADDRESS"); - vm.label(0x3814307b86b54b1d8e7B2Ac34662De9125F8f4E6, "Constants.ETH_UNIV3_LIQUIDITY_AMO"); - vm.label(0xc91Bb4b0696e3b48c0C501B4ce8E7244Fc363A79, "Constants.ETH_UNIV3_LIQUIDITY_AMO_V2"); - vm.label(0x53c13BA8834a1567474b19822aAD85c6F90D9f9F, "Constants.ETH_VEFXS_SMART_WALLET_CHECKER"); - vm.label(0x19a0a70a68fbC604Bf20A03b787df8f7AC1d50f0, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR"); - vm.label(0x62C4cf364078C98fA08AfDB4D3d8D87e780Ebd45, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR_V2"); - vm.label(0xed2647Bbf875b2936AAF95a3F5bbc82819e3d3FE, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR_V3"); - vm.label(0xc6764e58b36e26b08Fd1d2AeD4538c02171fA872, "Constants.ETH_VEFXS_YIELD_DISTRIBUTOR_V4"); - vm.label(0xE6D31C144BA99Af564bE7E81261f7bD951b802F6, "Constants.ETH_VEFPIS_YIELD_DISTRIBUTOR_V4"); - vm.label(0x81903F6f9675f7b500eAFE20681bD2D7BAb7C71b, "Constants.ETH_VEFPIS_SMART_WALLET_CHECKER"); - vm.label(0x8971946467a77b798762823434c0f407d20F9df9, "Constants.ETH_YIELDSPACE_AMO"); - vm.label(0x874a873e4891fB760EdFDae0D26cA2c00922C404, "Constants.ETH_ADVISORS_MULTISIG"); - vm.label(0x733371d7C15ACECF9e120dd037D6BcDb6E069148, "Constants.ETH_BEE_USER"); - vm.label(0x63278bF9AcdFC9fA65CFa2940b89A34ADfbCb4A1, "Constants.ETH_COMMUNITY_MULTISIG"); - vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_COMPTROLLER"); - vm.label(0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27, "Constants.ETH_COMPTROLLER_MULTISIG"); - vm.label(0x8D8Cb63BcB8AD89Aa750B9f80Aa8Fa4CfBcC8E0C, "Constants.ETH_CURVEAMO_OPERATOR_ADDRESS"); - vm.label(0x6A7efa964Cf6D9Ab3BC3c47eBdDB853A8853C502, "Constants.ETH_FPI_COMPTROLLER_MULTISIG"); - vm.label(0x708695db8dF61e646571E78b9b3e2BAd7D6c42E3, "Constants.ETH_FPI_CORE_CONTRIBUTORS_TEAM_MULTISIG"); - vm.label(0x5181C3c36bD52F783e6E1771d80b1e3AdCB36019, "Constants.ETH_FPI_TREASURY_MULTISIG"); - vm.label(0x168200cF227D4543302686124ac28aE0eaf2cA0B, "Constants.ETH_FRAXLEND_MAIN_MULTISIG"); - vm.label(0xa4EC124e09D6D1A092c6BD16aFac9CD83f73E3c3, "Constants.ETH_FRAXLEND_OPERATOR_MULTISIG"); - vm.label(0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c, "Constants.ETH_FRAXLEND_CIRCUIT_BREAKER_MULTISIG"); - vm.label(0x8306300ffd616049FD7e4b0354a64Da835c1A81C, "Constants.ETH_FRXETH_COMPTROLLER"); - vm.label(0x8306300ffd616049FD7e4b0354a64Da835c1A81C, "Constants.ETH_FRXETH_OWNER"); - vm.label(0x831822660572bd54ebaa065C2acef662a6277D40, "Constants.ETH_FXB_MULTISIG"); - vm.label(0xa95f86fE0409030136D6b82491822B3D70F890b3, "Constants.ETH_INVESTORS_MULTISIG"); - vm.label(0x8D4392F55bC76A046E443eb3bab99887F4366BB0, "Constants.ETH_TEAM_MULTISIG"); - vm.label(0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA, "Constants.ETH_TIMELOCK_ADDRESS"); - vm.label(0x9AA7Db8E488eE3ffCC9CdFD4f2EaECC8ABeDCB48, "Constants.ETH_TREASURY_MULTISIG"); - vm.label(0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503, "Constants.ETH_WALLET_WITH_CRVFRAX"); - vm.label(0xD6216fC19DB775Df9774a6E33526131dA7D19a2c, "Constants.ETH_WALLET_WITH_USDC"); - vm.label(0x8EB8a3b98659Cce290402893d0123abb75E3ab28, "Constants.ETH_WALLET_WITH_WETH"); - vm.label(0xd4937682df3C8aEF4FE912A96A74121C0829E664, "Constants.ETH_AFRAX"); - vm.label(0x22e859Ee894c2068920858A60b51DC03ac5581c1, "Constants.ETH_AGEURFRAXBP"); - vm.label(0x58257e4291F95165184b4beA7793a1d6F8e7b627, "Constants.ETH_AGEURFRAXBP_POOL"); - vm.label(0xf985005a3793DbA4cCe241B3C19ddcd3Fe069ff4, "Constants.ETH_ALCXFRAXBP"); - vm.label(0x4149d1038575CE235E03E03B39487a80FD709D31, "Constants.ETH_ALCXFRAXBP_POOL"); - vm.label(0x97Ba76a574bC5709b944bB1887691301c72337Ca, "Constants.ETH_ALETHFRXETH"); - vm.label(0x97Ba76a574bC5709b944bB1887691301c72337Ca, "Constants.ETH_ALETHFRXETH_POOL"); - vm.label(0xB30dA2376F63De30b42dC055C93fa474F31330A5, "Constants.ETH_ALUSDFRAXBP"); - vm.label(0xB30dA2376F63De30b42dC055C93fa474F31330A5, "Constants.ETH_ALUSDFRAXBP_POOL"); - vm.label(0xa8e14F03124Ea156A4fc416537c82ff91a647D50, "Constants.ETH_ANKRETHFRXETH"); - vm.label(0x41eA4045de2676727883aa0B4E43D7e32261f559, "Constants.ETH_ANKRETHFRXETH_POOL"); - vm.label(0x04b727C7e246CA70d496ecF52E6b6280f3c8077D, "Constants.ETH_APEUSDFRAXBP"); - vm.label(0x04b727C7e246CA70d496ecF52E6b6280f3c8077D, "Constants.ETH_APEUSDFRAXBP_POOL"); - vm.label(0xBcca60bB61934080951369a648Fb03DF4F96263C, "Constants.ETH_AUSDC"); - vm.label(0x09b2E090531228d1b8E3d948C73b990Cb6e60720, "Constants.ETH_BADGERFRAXBP"); - vm.label(0x13B876C26Ad6d21cb87AE459EaF6d7A1b788A113, "Constants.ETH_BADGERFRAXBP_POOL"); - vm.label(0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190, "Constants.ETH_BUSDFRAXBP"); - vm.label(0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190, "Constants.ETH_BUSDFRAXBP_POOL"); - vm.label(0xe65cdB6479BaC1e22340E4E755fAE7E509EcD06c, "Constants.ETH_CAAVE"); - vm.label(0x548E063CE6F3BaC31457E4f5b4e2345286274257, "Constants.ETH_CBETHFRXETH"); - vm.label(0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D, "Constants.ETH_CBETHFRXETH_POOL"); - vm.label(0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C, "Constants.ETH_CLEVUSDFRAXBP"); - vm.label(0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C, "Constants.ETH_CLEVUSDFRAXBP_POOL"); - vm.label(0xb85010193FD15aF8390dbD62790Da70F46c1126B, "Constants.ETH_COILFRAXBP"); - vm.label(0xAF4264916B467e2c9C8aCF07Acc22b9EDdDaDF33, "Constants.ETH_COILFRAXBP_POOL"); - vm.label(0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC, "Constants.ETH_CRVFRAX"); - vm.label(0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503, "Constants.ETH_CRVFRAX_GAUGE"); - vm.label(0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974, "Constants.ETH_CRVFRXETH"); - vm.label(0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a, "Constants.ETH_CRVFRXETH_POOL"); - vm.label(0x0CD6f267b2086bea681E922E19D40512511BE538, "Constants.ETH_CRVUSDFRAX"); - vm.label(0x96424E6b5eaafe0c3B36CA82068d574D44BE4e3c, "Constants.ETH_CRVUSDFRAX_GAUGE"); - vm.label(0x0CD6f267b2086bea681E922E19D40512511BE538, "Constants.ETH_CRVUSDFRAX_POOL"); - vm.label(0x4e0915C88bC70750D68C481540F081fEFaF22273, "Constants.ETH_CURVE4POOL"); - vm.label(0x39AA39c021dfbaE8faC545936693aC917d5E7563, "Constants.ETH_CUSDC"); - vm.label(0x421E13b4e805993A0d50aD8c6c47A4F693f04424, "Constants.ETH_CVGFRAXBP"); - vm.label(0x8A111B47B31bBa40C2F0D2f9a8Cf6B6C4B50114E, "Constants.ETH_CVGFRAXBP_GAUGE"); - vm.label(0xa7B0E924c2dBB9B4F576CCE96ac80657E42c3e42, "Constants.ETH_CVGFRAXBP_POOL"); - vm.label(0x9e187393cBc76c8Bf8e8a06bD7737a7cabe9d66C, "Constants.ETH_CVXAGEURFRAXBP"); - vm.label(0x17962aB30c7F291b125A0A38d0ad220ab22F8a5B, "Constants.ETH_CVXAGEURFRAXBP_REWARDER"); - vm.label(0xCf9fC20189755354edDdED66C9ED9DFADAFd7a2E, "Constants.ETH_CVXALCXFRAXBP"); - vm.label(0xC10fD95fd3B56535668426B2c8681AD1E15Be608, "Constants.ETH_CVXALCXFRAXBP_REWARDER"); - vm.label(0x5BcAfc77f19F72bCf1420cC1722c3e06E16Ec29a, "Constants.ETH_CVXALUSDFRAXBP"); - vm.label(0x26598e3E511ADFadefD70ab2C3475Ff741741104, "Constants.ETH_CVXALUSDFRAXBP_REWARDER"); - vm.label(0x04b727C7e246CA70d496ecF52E6b6280f3c8077D, "Constants.ETH_CVXAPEUSDFRAXBP"); - vm.label(0x51e6B84968D56a1E5BC93Ee264e95b1Ea577339c, "Constants.ETH_CVXAPEUSDFRAXBP_REWARDER"); - vm.label(0x25f0b7c3A7A43b409634a5759526560cC3313d75, "Constants.ETH_CVXBADGERFRAXBP"); - vm.label(0xe0705A91984b076C250d410A41f615380aF1C2ed, "Constants.ETH_CVXBADGERFRAXBP_REWARDER"); - vm.label(0xf203A94e59d071062a0dd31f396bCb19a38809A4, "Constants.ETH_CVXBUSDFRAXBP"); - vm.label(0x9e6Daf019767D5cEAdE416ce77E8d187b5B254F3, "Constants.ETH_CVXBUSDFRAXBP_REWARDER"); - vm.label(0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C, "Constants.ETH_CVXCLEVUSDFRAXBP"); - vm.label(0x710e85B2793b3AE88Cb1Da3cb25b3d62D810d180, "Constants.ETH_CVXCLEVUSDFRAXBP_REWARDER"); - vm.label(0x624cEFdBe30507EEAc71882C9e42Ca0900D5B6a1, "Constants.ETH_CVXCOILFRAXBP"); - vm.label(0xAE0b6b66378C7DEFc0514D7cBc6E4e92Cf56b0af, "Constants.ETH_CVXCOILFRAXBP_REWARDER"); - vm.label(0x117A0bab81F25e60900787d98061cCFae023560c, "Constants.ETH_CVXCRVFRAX"); - vm.label(0x527331F3F550f6f85ACFEcAB9Cc0889180C6f1d5, "Constants.ETH_CVXCRVFRAXBP"); - vm.label(0x31c325A01861c7dBd331a9270296a31296D797A0, "Constants.ETH_CVXCRVFRAXBP_POOL"); - vm.label(0x7e880867363A7e321f5d260Cade2B0Bb2F717B02, "Constants.ETH_CVXCRVFRAX_REWARDER"); - vm.label(0x01CcDe1dFb6c84e1Cc13a6Bf777aa2160ABd11BA, "Constants.ETH_CVXCRVUSDFRAX"); - vm.label(0x3CfB4B26dc96B124D15A6f360503d028cF2a3c00, "Constants.ETH_CVXCRVUSDFRAX_REWARDER"); - vm.label(0x3Fe65692bfCD0e6CF84cB1E7d24108E434A7587e, "Constants.ETH_CVXCRV_REWARDER"); - vm.label(0x3cB8E5cac768D6Dd3E7683dBC78E255aae66EDBB, "Constants.ETH_CVXCVGFRAXBP"); - vm.label(0x0736b746F53826A1eEC888a05EBF592AF68946Db, "Constants.ETH_CVXCVGFRAXBP_REWARDER"); - vm.label(0x2aE739F40Cda5F053F9dbecE7E177Fcbdc4A07D9, "Constants.ETH_CVXCVXCRVFRAXBP"); - vm.label(0xdEbc7B51043b4D0dd4f3310C68A12382b8843ceE, "Constants.ETH_CVXCVXCRVFRAXBP_REWARDER"); - vm.label(0x123dC033d6fF314211F7953eD31bC805f85C13d5, "Constants.ETH_CVXCVXFRAXBP"); - vm.label(0xf02B3A77b1e7775de10294d78a4c3d77772B484A, "Constants.ETH_CVXCVXFRAXBP_REWARDER"); - vm.label(0xDad9DB2c7c96a1496493E6D48d131a2667f284f9, "Constants.ETH_CVXCVXFXSFRAXBP"); - vm.label(0x19eA715F854dB2196C6f45A174541a5Ac884D2f9, "Constants.ETH_CVXCVXFXSFRAXBP_REWARDER"); - vm.label(0xf7eCC27CC9DB5d28110AF2d89b176A6623c7E351, "Constants.ETH_CVXDOLAFRAXBP"); - vm.label(0x0404d05F3992347d2f0dC3a97bdd147D77C85c1c, "Constants.ETH_CVXDOLAFRAXBP_REWARDER"); - vm.label(0x430bE19e180fd8c2199eC5FAEabE2F5CDba68C94, "Constants.ETH_CVXDOLAFRAXPYUSD"); - vm.label(0xE8cBdBFD4A1D776AB1146B63ABD1718b2F92a823, "Constants.ETH_CVXDOLAFRAXPYUSD_REWARDER"); - vm.label(0x8e074d44aaBC1b3b4406fE03Da7ceF787ea85938, "Constants.ETH_CVXEUSDFRAXBP"); - vm.label(0xB468dB2E478885B87D7ce0C8DA1D4373A756C138, "Constants.ETH_CVXEUSDFRAXBP_REWARDER"); - vm.label(0x28ebAb5Ecbc3efB4116205c2D3237d8b16976B06, "Constants.ETH_CVXFPIFRAX_F"); - vm.label(0x7F17A6C77C3938D235b014818092eb6305BdA110, "Constants.ETH_CVXFRAXBP"); - vm.label(0xBEc570d92AFB7fFc553bdD9d4B4638121000b10D, "Constants.ETH_CVXFRAXBP_POOL"); - vm.label(0xBA927A88eb7B7902ffC5cd99b94fA2964d1a1E03, "Constants.ETH_CVXFRAXFPI_NG"); - vm.label(0x062450B06EB92F1C4E227C41c987ed97c93Ae232, "Constants.ETH_CVXFRAXFPI_NG_REWARDER"); - vm.label(0x5A82ae31C1a36833B9E148d01E967c1b05eDb346, "Constants.ETH_CVXFRAXFXB_20240630"); - vm.label(0x830a71574E3c8AE9da477cE1B7F12849E9f7c8c8, "Constants.ETH_CVXFRAXFXB_20240630_REWARDER"); - vm.label(0x06382622D0FafB372dA64b765EAd3d082a8BCabB, "Constants.ETH_CVXFRAXFXB_20241231"); - vm.label(0x249cE0b1a682AD7b02e43271f9f0C9ac85Ec47e8, "Constants.ETH_CVXFRAXFXB_20241231_REWARDER"); - vm.label(0x7Ce2F444D0B034f44EeA4FE77608f0c680966D20, "Constants.ETH_CVXFRAXFXB_20261231"); - vm.label(0xC9F6D73fD06b8EEB0A4E87cAd407219E10F31712, "Constants.ETH_CVXFRAXFXB_20261231_REWARDER"); - vm.label(0x839CF70a09f1CB104b4eb0B48E26B855A0F7e855, "Constants.ETH_CVXFRAXPYUSD"); - vm.label(0xB10a6e39Ed8a66fEd3aAef3866a95611a49B9a95, "Constants.ETH_CVXFRAXPYUSD_REWARDER"); - vm.label(0xAb4feFd9cabC03D935cAD345b7626C3180238fb3, "Constants.ETH_CVXFRAXSDAI"); - vm.label(0xE627082369689b2B86D948c377A4aE4e739C59eE, "Constants.ETH_CVXFRAXSDAI_REWARDER"); - vm.label(0x29c22337E3ce362Ce4ad8ecc9CE11fE5A08DBA3c, "Constants.ETH_CVXFRAXUSDP"); - vm.label(0x6991C1CD588c4e6f6f1de3A0bac5B8BbAb7aAF6d, "Constants.ETH_CVXFRAXUSDP_REWARDER"); - vm.label(0xBb2568deeb365b8B89ef7F9B53E86B34cd5D0490, "Constants.ETH_CVXFRXETH"); - vm.label(0x112E8f4b685475CcEd5C38142Cd7A2aE41ef6737, "Constants.ETH_CVXFRXETHALETH"); - vm.label(0xe0DbbCF08A5465db7c7401C86cce89030e11aB67, "Constants.ETH_CVXFRXETHALETH_REWARDER"); - vm.label(0xc18695D5824C49cF50E054953B3A5910c45597A0, "Constants.ETH_CVXFRXETHANKRETH"); - vm.label(0xc18695D5824C49cF50E054953B3A5910c45597A0, "Constants.ETH_CVXFRXETHANKRETH_REWARDER"); - vm.label(0x39E1Ea9CB87a352CfFd43e0b19D573d12cf110CC, "Constants.ETH_CVXFRXETHCBETH"); - vm.label(0x0080d49D4a4921dF0F3853c5e4533462A51fbb29, "Constants.ETH_CVXFRXETHCBETH_REWARDER"); - vm.label(0x41603dA2DD26E6fe29CAe074fC6772053A39C2A9, "Constants.ETH_CVXFRXETHCRV"); - vm.label(0xd5dC65ec6948845C1C428fb60BE38FE59B50BD13, "Constants.ETH_CVXFRXETHCRV_REWARDER"); - vm.label(0xAc4b1295F9Aeb1DB29acB37902bE349a79a66403, "Constants.ETH_CVXFRXETHCVX"); - vm.label(0xA064C1EeEbECD1DF41432f4B7264F508F005aF0C, "Constants.ETH_CVXFRXETHCVX_REWARDER"); - vm.label(0xC07e540DbFecCF7431EA2478Eb28A03918c1C30E, "Constants.ETH_CVXFRXETHETH"); - vm.label(0xbD5445402B0a287cbC77cb67B2a52e2FC635dce4, "Constants.ETH_CVXFRXETHETH_REWARDER"); - vm.label(0x29889a5fE8e467da8af697C5f1eB901F4911Ab50, "Constants.ETH_CVXFRXETHMSETH"); - vm.label(0x15507737f44446EB0A86147E2C72Aa6A111A64B2, "Constants.ETH_CVXFRXETHMSETH_REWARDER"); - vm.label(0x1941da8D12A6B39B76bd54c865c8cD3a4553E9C3, "Constants.ETH_CVXFRXETHPETH"); - vm.label(0x42aaC689261723d06d2a8f356448bd8249f831Bc, "Constants.ETH_CVXFRXETHPETH_REWARDER"); - vm.label(0xDE183818eb02AfEa367C1AAFF1BFdeDecE6B2B05, "Constants.ETH_CVXFRXETHPXETH"); - vm.label(0x72b99E2cf3f9A2bbDA1Cc76894E4554d7aA8FE2E, "Constants.ETH_CVXFRXETHPXETH_REWARDER"); - vm.label(0xeEC515BE690BF445c8C4d1625FD82FA75Bc38bf6, "Constants.ETH_CVXFRXETHRETH"); - vm.label(0x84754821b5484A69DB3164eF4eDC5A5657318039, "Constants.ETH_CVXFRXETHRETH_REWARDER"); - vm.label(0x02a2206268b49A9b3ee5DD51577E5bDa0072d5F1, "Constants.ETH_CVXFRXETHRETH_STAFI"); - vm.label(0xf011aD8E91D1dc8625e5548755AEa1F6Fff81089, "Constants.ETH_CVXFRXETHRETH_STAFI_REWARDER"); - vm.label(0xf67FEC3D0A32418813bE2BcdD78e058BCFa33AE8, "Constants.ETH_CVXFRXETHSETH"); - vm.label(0x55cdF6c7E6d04b83835E4702ed395D0263237DA2, "Constants.ETH_CVXFRXETHSETH_REWARDER"); - vm.label(0x01492A2cB0Bd14034710475197B4169501B49Ead, "Constants.ETH_CVXFRXETHSTETH"); - vm.label(0xC3D0B8170E105d6476fE407934492930CAc3BDAC, "Constants.ETH_CVXFRXETHSTETH_REWARDER"); - vm.label(0xAA71e0065A29F2529aBC0F615874009287966229, "Constants.ETH_CVXFRXETHWETH"); - vm.label(0xFafDE12dC476C4913e29F47B4747860C148c5E4f, "Constants.ETH_CVXFRXETHWETH_REWARDER"); - vm.label(0x52EdB08ab81e4Cc32cf318aed17dB11c09C3E8B9, "Constants.ETH_CVXFRXETHZETH"); - vm.label(0x98B662443695f7328F6A7fDe9894CC0E88630269, "Constants.ETH_CVXFRXETHZETH_REWARDER"); - vm.label(0xCB5d9126402cC17eF47b81BD48B43D52bF474Cd4, "Constants.ETH_CVXFRXETHZUNETH"); - vm.label(0x756d67A10974Fa0e0cE63F82AF4E7ef0d46d452D, "Constants.ETH_CVXFRXETHZUNETH_REWARDER"); - vm.label(0x6E855d08f2984516c40C4246A385bA4A2eDFcd0A, "Constants.ETH_CVXFRXETH_POOL"); - vm.label(0xF57ccaD8122B898A147Cc8601B1ECA88B1662c7E, "Constants.ETH_CVXFXSFRAXBP"); - vm.label(0x21d158d95C2e150e144c36FC64E3653B8D6c6267, "Constants.ETH_CVXFXSFRAXBP_POOL"); - vm.label(0x6CceedbC3551B619da21e552623Dc7C64Ae15168, "Constants.ETH_CVXGRAIFRAXBP"); - vm.label(0xC4581E043F676b95Eb1430474C69f3559a758086, "Constants.ETH_CVXGRAIFRAXBP_REWARDER"); - vm.label(0x15c2471ef46Fa721990730cfa526BcFb45574576, "Constants.ETH_CVXGUSD3CRV_FREE"); - vm.label(0xfbd79471A12929De8379a6CbaF320E150f139ac4, "Constants.ETH_CVXGUSDFRAXBP"); - vm.label(0x47809eE386D1dEC29c0b13f21ba30F564517538B, "Constants.ETH_CVXGUSDFRAXBP_REWARDER"); - vm.label(0xE8a371b5D32344033589A2F0a2712dBD12130b18, "Constants.ETH_CVXLUSDFRAXBP"); - vm.label(0x053e1dad223A206e6BCa24C77786bb69a10e427d, "Constants.ETH_CVXLUSDFRAXBP_REWARDER"); - vm.label(0xe79914274Ea1332222793d7ba931647531E10a5b, "Constants.ETH_CVXMAIFRAXBP"); - vm.label(0xD3C412C3cEdbEC604425B23DCd79Aa1ac810622f, "Constants.ETH_CVXMAIFRAXBP_REWARDER"); - vm.label(0x187601595F6D5746566BC0361a48d13066F11C71, "Constants.ETH_CVXMKUSDFRAXBP"); - vm.label(0x35FbE5520E70768DCD6E3215Ed54E14CBccA10D2, "Constants.ETH_CVXMKUSDFRAXBP_REWARDER"); - vm.label(0xc3b19502F8c02be75F3f77fd673503520DEB51dD, "Constants.ETH_CVXMSUSDFRAXBP"); - vm.label(0xF189A4a1E845Fd62944F93De497409798523B397, "Constants.ETH_CVXMSUSDFRAXBP_REWARDER"); - vm.label(0x5271045F7B73c17825A7A7aee6917eE46b0B7520, "Constants.ETH_CVXOHMFRAXBP"); - vm.label(0x27A8c58e3DE84280826d615D80ddb33930383fE9, "Constants.ETH_CVXOHMFRAXBP_REWARDER"); - vm.label(0xB17255D92892F1322d023befddaB85f172E36f67, "Constants.ETH_CVXPUSDFRAXBP"); - vm.label(0x6d096C99Cc2Ea52490355311b73D86365Acf087f, "Constants.ETH_CVXPUSDFRAXBP_REWARDER"); - vm.label(0x022600684e9492dA82f0da11Bf039c11109d0935, "Constants.ETH_CVXRSRFRAXBP"); - vm.label(0x28441fb9b8b026487A6174Ff39Be015810611C0F, "Constants.ETH_CVXRSRFRAXBP_REWARDER"); - vm.label(0x95B051E97957f1D48C622Bf73225E3d4c2B189fb, "Constants.ETH_CVXSDTFRAXBP"); - vm.label(0xc3df9cC2B8FFdB801E8e6E8FF9C1245E2dEcdA98, "Constants.ETH_CVXSDTFRAXBP_REWARDER"); - vm.label(0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8, "Constants.ETH_CVXSTGFRAXBP"); - vm.label(0xAa57A289Bb22a1A0C583db306F6566AE2c0CAf21, "Constants.ETH_CVXSTGFRAXBP_REWARDER"); - vm.label(0x8E2A6e9390CbD4C3895D07E4Cb171C0527990dF6, "Constants.ETH_CVXSUSDFRAXBP"); - vm.label(0x3fABBDfe05487De1720a9420fE2e16d2c3e79A9D, "Constants.ETH_CVXSUSDFRAXBP_REWARDER"); - vm.label(0x1fb9115929b32D4456C37B80536a2C9434061296, "Constants.ETH_CVXSWETHFRXETH"); - vm.label(0x91362eBf6DbFA5c0FD45CE4cF46DfFd4A8899c7C, "Constants.ETH_CVXSWETHFRXETH_REWARDER"); - vm.label(0xa0821fDc8d62413757B9da2357b0e5371f45335e, "Constants.ETH_CVXTRICRYPTOFRAX"); - vm.label(0x4af50A690062970DAf1d2f0Fa9042C6f5a5495E3, "Constants.ETH_CVXTRICRYPTOFRAX_REWARDER"); - vm.label(0x5C2c6E21e141Dd3D13C34754A20d620A1bb731B5, "Constants.ETH_CVXTRISDT"); - vm.label(0x1f2a117314e6e8655E0A1C97669b7B836e2cDb91, "Constants.ETH_CVXTRISDT_REWARDER"); - vm.label(0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893, "Constants.ETH_CVXTUSDFRAXBP"); - vm.label(0x4a744870fD705971c8c00aC510eAc2206C93d5bb, "Constants.ETH_CVXTUSDFRAXBP_REWARDER"); - vm.label(0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20, "Constants.ETH_CVXUSDDFRAXBP"); - vm.label(0x546cd3B917c1d8A6525b4A312bB0014BE031Eb28, "Constants.ETH_CVXUSDDFRAXBP_REWARDER"); - vm.label(0xe6c0fAA19A7fB6A0a2C01e0BBC1a782b9e4a7B48, "Constants.ETH_CVXUZDFRAXBP"); - vm.label(0x820Fad75512c8C3E57Ad021d016846CEEB5F7105, "Constants.ETH_CVXUZDFRAXBP_REWARDER"); - vm.label(0xEbB0Dd1AfE63813AdD4c38EEbd71CE7354dd9b7e, "Constants.ETH_CVXXAIFRAXBP"); - vm.label(0x4a866fE20A442Dff55FAA010684A5C1379151458, "Constants.ETH_CVXXAIFRAXBP_REWARDER"); - vm.label(0xd48494c36F98BE491f6Cfd6841617e847C819806, "Constants.ETH_CVXZUSDFRAXBP"); - vm.label(0xFd3A7636694259b32B3896f59436997AD25380cA, "Constants.ETH_CVXZUSDFRAXBP_REWARDER"); - vm.label(0xBaaa1F5DbA42C3389bDbc2c9D2dE134F5cD0Dc89, "Constants.ETH_D3POOL"); - vm.label(0xE57180685E3348589E9521aa53Af0BCD497E884d, "Constants.ETH_DOLAFRAXBP"); - vm.label(0xE57180685E3348589E9521aa53Af0BCD497E884d, "Constants.ETH_DOLAFRAXBP_POOL"); - vm.label(0xef484de8C07B6e2d732A92B5F78e81B38f99f95E, "Constants.ETH_DOLAFRAXPYUSD"); - vm.label(0x4B092818708A721cB187dFACF41f440ADb79044D, "Constants.ETH_DOLAFRAXPYUSD_GAUGE"); - vm.label(0xef484de8C07B6e2d732A92B5F78e81B38f99f95E, "Constants.ETH_DOLAFRAXPYUSD_POOL"); - vm.label(0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F, "Constants.ETH_EUSDFRAXBP"); - vm.label(0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F, "Constants.ETH_EUSDFRAXBP_POOL"); - vm.label(0x4704aB1fb693ce163F7c9D3A31b3FF4eaF797714, "Constants.ETH_FPIFRAX_F"); - vm.label(0xf861483fa7E511fbc37487D91B6FAa803aF5d37c, "Constants.ETH_FPIFRAX_F_POOL"); - vm.label(0xd632f22692FaC7611d2AA1C0D552930D43CAEd3B, "Constants.ETH_FRAX3CRV_F"); - vm.label(0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC, "Constants.ETH_FRAXBP"); - vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAXBP_POOL"); - vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI"); - vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI_NG"); - vm.label(0x107E4c1302403095e5A4Bc5e815982aa732e95BD, "Constants.ETH_FRAXFPI_NG_GAUGE"); - vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI_NG_POOL"); - vm.label(0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe, "Constants.ETH_FRAXFPI_POOL"); - vm.label(0x4ef4c7519023F30A78647EEab321d6cFabC2513c, "Constants.ETH_FRAXFXB_20240630"); - vm.label(0x35aD1ACf0C4BE5d4Ba11342128D440fDb9e189eb, "Constants.ETH_FRAXFXB_20240630_GAUGE"); - vm.label(0x4ef4c7519023F30A78647EEab321d6cFabC2513c, "Constants.ETH_FRAXFXB_20240630_POOL"); - vm.label(0x6307E6688819951Cf8D6B6066018243D2496952F, "Constants.ETH_FRAXFXB_20241231"); - vm.label(0xC2FE9D3c761994897594Df63B33b6D843Ab7b1cF, "Constants.ETH_FRAXFXB_20241231_GAUGE"); - vm.label(0x6307E6688819951Cf8D6B6066018243D2496952F, "Constants.ETH_FRAXFXB_20241231_POOL"); - vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_FRAXFXB_20261231"); - vm.label(0x0E83dF148F69965BfE752250835854b0dBeeaf01, "Constants.ETH_FRAXFXB_20261231_GAUGE"); - vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_FRAXFXB_20261231_POOL"); - vm.label(0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb, "Constants.ETH_FRAXPYUSD"); - vm.label(0xdc6d319FAc1498125e871ccEdF7f1B9998ebA3C5, "Constants.ETH_FRAXPYUSD_GAUGE"); - vm.label(0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb, "Constants.ETH_FRAXPYUSD_POOL"); - vm.label(0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7, "Constants.ETH_FRAXSDAI"); - vm.label(0xb9BDcDcD7c3C1A3255402D44639cb6c7281833cF, "Constants.ETH_FRAXSDAI_GAUGE"); - vm.label(0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7, "Constants.ETH_FRAXSDAI_POOL"); - vm.label(0xFC2838a17D8e8B1D5456E0a351B0708a09211147, "Constants.ETH_FRAXUSDP"); - vm.label(0xaE34574AC03A15cd58A92DC79De7B1A0800F1CE3, "Constants.ETH_FRAXUSDP_POOL"); - vm.label(0xB657B895B265C38c53FFF00166cF7F6A3C70587d, "Constants.ETH_FRXETHALETH"); - vm.label(0x415F30505368fa1dB82Feea02EB778be04e75907, "Constants.ETH_FRXETHALETH_GAUGE"); - vm.label(0xB657B895B265C38c53FFF00166cF7F6A3C70587d, "Constants.ETH_FRXETHALETH_POOL"); - vm.label(0xa8e14F03124Ea156A4fc416537c82ff91a647D50, "Constants.ETH_FRXETHANKRETH"); - vm.label(0x86f8d7Ced9A8F5563C1198466968B02238E05917, "Constants.ETH_FRXETHANKRETH_GAUGE"); - vm.label(0x41eA4045de2676727883aa0B4E43D7e32261f559, "Constants.ETH_FRXETHANKRETH_POOL"); - vm.label(0x548E063CE6F3BaC31457E4f5b4e2345286274257, "Constants.ETH_FRXETHCBETH"); - vm.label(0xD10C17D82053DD0AB65851a9A93a0abE0C4F4794, "Constants.ETH_FRXETHCBETH_GAUGE"); - vm.label(0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D, "Constants.ETH_FRXETHCBETH_POOL"); - vm.label(0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974, "Constants.ETH_FRXETHCRV"); - vm.label(0x266cE172a1180134cf6C7836C516bd6A58b1f619, "Constants.ETH_FRXETHCRV_GAUGE"); - vm.label(0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a, "Constants.ETH_FRXETHCRV_POOL"); - vm.label(0x6e52cCe4EaFDf77091dD1c82183b2D97b776b397, "Constants.ETH_FRXETHCVX"); - vm.label(0xc2075702490F0426E84E00d8B328119027813AC5, "Constants.ETH_FRXETHCVX_GAUGE"); - vm.label(0x47D5E1679Fe5f0D9f0A657c6715924e33Ce05093, "Constants.ETH_FRXETHCVX_POOL"); - vm.label(0xf43211935C781D5ca1a41d2041F397B8A7366C7A, "Constants.ETH_FRXETHETH"); - vm.label(0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577, "Constants.ETH_FRXETHETH_POOL"); - vm.label(0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A, "Constants.ETH_FRXETHMSETH"); - vm.label(0xB7A3C519889a916C5ecB54101E69ECf11DE60d0b, "Constants.ETH_FRXETHMSETH_GAUGE"); - vm.label(0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A, "Constants.ETH_FRXETHMSETH_POOL"); - vm.label(0x320B564Fb9CF36933eC507a846ce230008631fd3, "Constants.ETH_FRXETHPETH"); - vm.label(0x57e1947e1134F6e733A4a694dE6A163eF23EDf54, "Constants.ETH_FRXETHPETH_GAUGE"); - vm.label(0x320B564Fb9CF36933eC507a846ce230008631fd3, "Constants.ETH_FRXETHPETH_POOL"); - vm.label(0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987, "Constants.ETH_FRXETHPXETH"); - vm.label(0x277d1424a84B35ec0a8108482551b00b4fc1539b, "Constants.ETH_FRXETHPXETH_GAUGE"); - vm.label(0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987, "Constants.ETH_FRXETHPXETH_POOL"); - vm.label(0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1, "Constants.ETH_FRXETHRETH"); - vm.label(0xF20bd4D5A4112d5f9c64aDF53726F3ef1b7d0D61, "Constants.ETH_FRXETHRETH_GAUGE"); - vm.label(0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9, "Constants.ETH_FRXETHRETH_POOL"); - vm.label(0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B, "Constants.ETH_FRXETHRETH_STAFI"); - vm.label(0xb0549599d8446A196541dE11008eF5e79fA14F57, "Constants.ETH_FRXETHRETH_STAFI_GAUGE"); - vm.label(0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B, "Constants.ETH_FRXETHRETH_STAFI_POOL"); - vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_FRXETHSETH"); - vm.label(0x77ef5D544FF6C739E7E10a549f64Dd08055538d1, "Constants.ETH_FRXETHSETH_GAUGE"); - vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_FRXETHSETH_POOL"); - vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_FRXETHSTETH"); - vm.label(0x821529Bb07c83803C9CC7763e5974386e9eFEdC7, "Constants.ETH_FRXETHSTETH_GAUGE"); - vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_FRXETHSTETH_POOL"); - vm.label(0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc, "Constants.ETH_FRXETHWETH"); - vm.label(0x4E21418095d32d15c6e2B96A9910772613A50d50, "Constants.ETH_FRXETHWETH_GAUGE"); - vm.label(0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc, "Constants.ETH_FRXETHWETH_POOL"); - vm.label(0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018, "Constants.ETH_FRXETHZETH"); - vm.label(0xB3627140BEacb97f9CA52b34090352FdAfC77d72, "Constants.ETH_FRXETHZETH_GAUGE"); - vm.label(0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018, "Constants.ETH_FRXETHZETH_POOL"); - vm.label(0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA, "Constants.ETH_FRXETHZUNETH"); - vm.label(0x44f30D79f62a3D5340030d64806cD73239889F07, "Constants.ETH_FRXETHZUNETH_GAUGE"); - vm.label(0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA, "Constants.ETH_FRXETHZUNETH_POOL"); - vm.label(0xFd3300A9a74b3250F1b2AbC12B47611171910b07, "Constants.ETH_FTRIBE_8"); - vm.label(0x6f95d4d251053483f41c8718C30F4F3C404A8cf2, "Constants.ETH_FUSDC_18"); - vm.label(0x970FAA9aFBC5Feb3EC53059BA330DEe71E22B55B, "Constants.ETH_FXSFRXETH"); - vm.label(0x5133Da6Ba0474368Ad0398d953c8D31c1B75b82B, "Constants.ETH_FXSFRXETH_POOL"); - vm.label(0x0ab87046fBb341D058F17CBC4c1133F25a20a52f, "Constants.ETH_GOHM"); - vm.label(0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc, "Constants.ETH_GRAIFRAXBP"); - vm.label(0x8d5AF1F5DD3dC4B73e3A9Af682aDC3641FADE9a5, "Constants.ETH_GRAIFRAXBP_GAUGE"); - vm.label(0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc, "Constants.ETH_GRAIFRAXBP_POOL"); - vm.label(0xD2967f45c4f384DEEa880F807Be904762a3DeA07, "Constants.ETH_GUSD3CRV"); - vm.label(0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93, "Constants.ETH_GUSDFRAXBP"); - vm.label(0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93, "Constants.ETH_GUSDFRAXBP_POOL"); - vm.label(0x497CE58F34605B9944E6b15EcafE6b001206fd25, "Constants.ETH_LUSDFRAXBP"); - vm.label(0x497CE58F34605B9944E6b15EcafE6b001206fd25, "Constants.ETH_LUSDFRAXBP_POOL"); - vm.label(0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9, "Constants.ETH_MAIFRAXBP"); - vm.label(0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9, "Constants.ETH_MAIFRAXBP_POOL"); - vm.label(0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5, "Constants.ETH_MKUSDFRAXBP"); - vm.label(0xF184d80915Ba7d835D941BA70cDdf93DE36517ee, "Constants.ETH_MKUSDFRAXBP_GAUGE"); - vm.label(0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5, "Constants.ETH_MKUSDFRAXBP_POOL"); - vm.label(0xc3b19502F8c02be75F3f77fd673503520DEB51dD, "Constants.ETH_MSUSDFRAXBP"); - vm.label(0xc3b19502F8c02be75F3f77fd673503520DEB51dD, "Constants.ETH_MSUSDFRAXBP_POOL"); - vm.label(0x654590F810f01B51dc7B86915D4632977e49EA33, "Constants.ETH_OGTEMPLE"); - vm.label(0x5271045F7B73c17825A7A7aee6917eE46b0B7520, "Constants.ETH_OHMFRAXBP"); - vm.label(0xFc1e8bf3E81383Ef07Be24c3FD146745719DE48D, "Constants.ETH_OHMFRAXBP_POOL"); - vm.label(0x11EBe21e9d7BF541A18e1E3aC94939018Ce88F0b, "Constants.ETH_PITCHFXS"); - vm.label(0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B, "Constants.ETH_PUSDFRAXBP"); - vm.label(0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B, "Constants.ETH_PUSDFRAXBP_POOL"); - vm.label(0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1, "Constants.ETH_RETHFRXETH"); - vm.label(0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9, "Constants.ETH_RETHFRXETH_POOL"); - vm.label(0x3F436954afb722F5D14D868762a23faB6b0DAbF0, "Constants.ETH_RSRFRAXBP"); - vm.label(0x6a6283aB6e31C2AeC3fA08697A8F806b740660b2, "Constants.ETH_RSRFRAXBP_POOL"); - vm.label(0xd48cF4D7FB0824CC8bAe055dF3092584d0a1726A, "Constants.ETH_SADDLED4"); - vm.label(0xC69DDcd4DFeF25D8a793241834d4cc4b3668EAD6, "Constants.ETH_SADDLED4_POOL"); - vm.label(0x5af15DA84A4a6EDf2d9FA6720De921E1026E37b7, "Constants.ETH_SDFRAX3CRV_F"); - vm.label(0x3cF7b9479a01eeB3bbfC43581fa3bb21cd888e2A, "Constants.ETH_SDL_ALUSDFRAXBP"); - vm.label(0x953693DCB2E9DDC0c1398C1b540b81b63ceA5e16, "Constants.ETH_SDL_ALUSDFRAXBP_GAUGE"); - vm.label(0xFB516cF3710fC6901F2266aAEB8834cF5e4E9558, "Constants.ETH_SDL_ALUSDFRAXBP_POOL"); - vm.label(0x0785aDDf5F7334aDB7ec40cD785EBF39bfD91520, "Constants.ETH_SDL_FRAX3POOL"); - vm.label(0x13Ba45c2B686c6db7C2E28BD3a9E8EDd24B894eD, "Constants.ETH_SDL_FRAX3POOL_GAUGE"); - vm.label(0x8cAEa59f3Bf1F341f89c51607E4919841131e47a, "Constants.ETH_SDL_FRAX3POOL_POOL"); - vm.label(0x927E6f04609A45B107C789aF34BA90Ebbf479f7f, "Constants.ETH_SDL_FRAXBP"); - vm.label(0xB2Ac3382dA625eb41Fc803b57743f941a484e2a6, "Constants.ETH_SDL_FRAXBP_GAUGE"); - vm.label(0x13Cc34Aa8037f722405285AD2C82FE570bfa2bdc, "Constants.ETH_SDL_FRAXBP_POOL"); - vm.label(0x6Ac7a4cB3BFa90DC651CD53EB098e23c88d04e77, "Constants.ETH_SDL_SUSDFRAXBP"); - vm.label(0x104F44551386d603217450822443456229F73aE4, "Constants.ETH_SDL_SUSDFRAXBP_GAUGE"); - vm.label(0x69baA0d7c2e864b74173922Ca069Ac79d3be1556, "Constants.ETH_SDL_SUSDFRAXBP_POOL"); - vm.label(0x486DFCfdbF9025c062110E8c0344a15279aD0a85, "Constants.ETH_SDL_USDTFRAXBP"); - vm.label(0x6EC5DD7D8E396973588f0dEFD79dCA04F844d57C, "Constants.ETH_SDL_USDTFRAXBP_GAUGE"); - vm.label(0xC765Cd3d015626244AD63B5FB63a97c5634643b9, "Constants.ETH_SDL_USDTFRAXBP_POOL"); - vm.label(0xA3beCa25Bd2bDd67272556666A7791d772C36571, "Constants.ETH_SDL_VESPERFRAXEARNPOOLFRAXBP"); - vm.label(0x9980C9b35844946cF3451cC0B43D9b6501F4a96E, "Constants.ETH_SDL_VESPERFRAXEARNPOOLFRAXBP_GAUGE"); - vm.label(0x9AC17f026f0599F77b3513a0A35f0258B0ec77f3, "Constants.ETH_SDL_VESPERFRAXEARNPOOLFRAXBP_POOL"); - vm.label(0x893DA8A02b487FEF2F7e3F35DF49d7625aE549a3, "Constants.ETH_SDTFRAXBP"); - vm.label(0x3e3C6c7db23cdDEF80B694679aaF1bCd9517D0Ae, "Constants.ETH_SDTFRAXBP_POOL"); - vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_SETHFRXETH"); - vm.label(0x663aC72a1c3E1C4186CD3dCb184f216291F4878C, "Constants.ETH_SETHFRXETH_POOL"); - vm.label(0x04F2694C8fcee23e8Fd0dfEA1d4f5Bb8c352111F, "Constants.ETH_SOHM"); - vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_STETHFRXETH"); - vm.label(0x4d9f9D15101EEC665F77210cB999639f760F831E, "Constants.ETH_STETHFRXETH_POOL"); - vm.label(0x9de1c3D446237ab9BaFF74127eb4F303802a2683, "Constants.ETH_STGFRAXBP"); - vm.label(0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8, "Constants.ETH_STGFRAXBP_POOL"); - vm.label(0x4da27a545c0c5B758a6BA100e3a049001de870f5, "Constants.ETH_STKAAVE"); - vm.label(0x78b74C93c726B6e29d0Ef5A01764fA19eCCF0C1c, "Constants.ETH_STKCVXAGEURFRAXBP"); - vm.label(0xAF1b82809296E52A42B3452c52e301369Ce20554, "Constants.ETH_STKCVXALCXFRAXBP"); - vm.label(0xBE1C919cA137299715e9c929BC7126Af14f76091, "Constants.ETH_STKCVXALUSDFRAXBP"); - vm.label(0x6a20FC1654A2167d00614332A5aFbB7EBcD9d414, "Constants.ETH_STKCVXAPEUSDFRAXBP"); - vm.label(0xb92e3fD365Fc5E038aa304Afe919FeE158359C88, "Constants.ETH_STKCVXBADGERFRAXBP"); - vm.label(0x20c5177504A3f9Bad59c430791feA853EeAD4CCE, "Constants.ETH_STKCVXBUSDFRAXBP"); - vm.label(0x3199a1ed1Ad4cb1d1b57939809c8ee79eafE9934, "Constants.ETH_STKCVXCLEVUSDFRAXBP"); - vm.label(0xa5B6f8Ec4122c5Fe0dBc4Ead8Bfe66A412aE427C, "Constants.ETH_STKCVXCOILFRAXBP"); - vm.label(0xdA69CeC36AE581C1b2a2EEb77C527Fb7c1331310, "Constants.ETH_STKCVXCOILFRAXBP_DEPRECATED"); - vm.label(0xaa0C3f5F7DFD688C6E646F66CD2a6B66ACdbE434, "Constants.ETH_STKCVXCRV"); - vm.label(0xb6F63cc2066e7626fA47fCC37E78Df9fe89F1663, "Constants.ETH_STKCVXCRVUSDFRAX"); - vm.label(0x7B465174A93a6d0602fD4ea99eEc86C07e5E1568, "Constants.ETH_STKCVXCVGFRAXBP"); - vm.label(0xa103a6ca0C4D4072BA59a55FD453BFE4197A095B, "Constants.ETH_STKCVXCVXCRVFRAXBP"); - vm.label(0x93D1De20eaBB21686CFe716f78F67E51ee578185, "Constants.ETH_STKCVXCVXFRAXBP"); - vm.label(0xA6A8F315b1a8C9B05433d206b8fECfbF0fC96217, "Constants.ETH_STKCVXCVXFXSFRAXBP"); - vm.label(0xF06c8696730cf760619e4fA0eDd0f79ea50531A9, "Constants.ETH_STKCVXDOLAFRAXBP"); - vm.label(0x8aAa49650C4908156efAc3B47e00745a319c806c, "Constants.ETH_STKCVXDOLAFRAXPYUSD"); - vm.label(0x49BF6f9B860fAF73B0b515c06Be1Bcbf4A0db3dF, "Constants.ETH_STKCVXEUSDFRAXBP"); - vm.label(0x7287488F8Df7dddc5f373142D4827aAF92AAC845, "Constants.ETH_STKCVXFPIFRAX"); - vm.label(0x8a53ee42FB458D4897e15cc7dEa3F75D0F1c3475, "Constants.ETH_STKCVXFRAXBP"); - vm.label(0x562E4d6C958333a5f0988FFedA11e45C27722994, "Constants.ETH_STKCVXFRAXFPI_NG"); - vm.label(0x6E804b00fe562707E3a86bBbcC53Eb73c36c0cf6, "Constants.ETH_STKCVXFRAXFXB_20240630"); - vm.label(0xBb16610CF051AAc4bBEF9c53e2fc99b77BCE4A8c, "Constants.ETH_STKCVXFRAXFXB_20241231"); - vm.label(0x8aa015CE081505064a9cB8e7816deE3Bd7a45a12, "Constants.ETH_STKCVXFRAXFXB_20261231"); - vm.label(0x59Ae4E430be0bF47e758F7E022E9a50A8C7D09d6, "Constants.ETH_STKCVXFRAXPYUSD"); - vm.label(0x2EB43dBF8C0013712fEc7B2A57453e41B9907e95, "Constants.ETH_STKCVXFRAXSDAI"); - vm.label(0x5385AE7dC08F5C3799691E5b387cB01108B76627, "Constants.ETH_STKCVXFRAXUSDP"); - vm.label(0x8A59781B415288f9E633b948618726CB6E47e980, "Constants.ETH_STKCVXFRXETHALETH"); - vm.label(0x75A439b3F8106428b86198D8c306c57E9e7Bb3dC, "Constants.ETH_STKCVXFRXETHANKRETH"); - vm.label(0x4e9D8323603E69c1310E5e04Db172bD5aB07df95, "Constants.ETH_STKCVXFRXETHCBETH"); - vm.label(0x194aA54376886dAd3d08e71F47D189A88251D8Da, "Constants.ETH_STKCVXFRXETHCRV"); - vm.label(0x5B31bf2988E5388Edae2960504d96Bc142742dCb, "Constants.ETH_STKCVXFRXETHCVX"); - vm.label(0x4659d5fF63A1E1EDD6D5DD9CC315e063c95947d0, "Constants.ETH_STKCVXFRXETHETH"); - vm.label(0x09bFD0c760E4a1bFc970cdaAAD240307C917Aa6c, "Constants.ETH_STKCVXFRXETHMSETH"); - vm.label(0xeCF134dF5DE1e0E12A441D446ff81994Cb0301A2, "Constants.ETH_STKCVXFRXETHPETH"); - vm.label(0x51521Da84Cbce1B4A930B55d8D896b590532f7A6, "Constants.ETH_STKCVXFRXETHPXETH"); - vm.label(0xE0c65F74728Ff26219C6adddCEfB215484bb08DF, "Constants.ETH_STKCVXFRXETHRETH"); - vm.label(0xffAFA5aA5b0a9C0C8e05ec8b89056F018EE2Bad6, "Constants.ETH_STKCVXFRXETHRETH_STAFI"); - vm.label(0x44b51F7F92D761Cf2FC46011AD6b74Ce56447924, "Constants.ETH_STKCVXFRXETHSETH"); - vm.label(0xc2eC3d1209FD1Fc512950825f34281EaF9aB13A2, "Constants.ETH_STKCVXFRXETHSTETH"); - vm.label(0x08061feC3FC09Aa2Eb4B4B72EA618034CBFD22b0, "Constants.ETH_STKCVXFRXETHWETH"); - vm.label(0xd69068777d1b2dc74522117efA75AA195c0b57DB, "Constants.ETH_STKCVXFRXETHZETH"); - vm.label(0xD893522D2CCd40eA6C1414815e3eAD1B58a83D51, "Constants.ETH_STKCVXFRXETHZUNETH"); - vm.label(0xDf9BB26ba5a05fcFc2637dC763AA4eb735911568, "Constants.ETH_STKCVXGRAIFRAXBP"); - vm.label(0x16e9eaC2A9e29aF3c53d24ed0F07fc403E098b64, "Constants.ETH_STKCVXGUSDFRAXBP"); - vm.label(0x8C402989a966D37B96f60401A6158D5D49f1381D, "Constants.ETH_STKCVXLUSDFRAXBP"); - vm.label(0x787eB52b94c4610ABE2C9C5eE95c3a4a16533344, "Constants.ETH_STKCVXMAIFRAXBP"); - vm.label(0xd529a0FD4249f0b48171140873b1b13a1ad5286d, "Constants.ETH_STKCVXMKUSDFRAXBP"); - vm.label(0x227b7F44468A0EC0FDdfc3FB0cE09b294E62f875, "Constants.ETH_STKCVXMSUSDFRAXBP"); - vm.label(0x81b0dCDa53482A2EA9eb496342dC787643323e95, "Constants.ETH_STKCVXOHMFRAXBP"); - vm.label(0x7AEF5bDC573dCbfb40EC68b0BAAB03abB846C9c6, "Constants.ETH_STKCVXPUSDFRAXBP"); - vm.label(0xF37007f2b9DE656115e1B977Bb1fd38A99B8a2a6, "Constants.ETH_STKCVXRSRFRAXBP"); - vm.label(0xE6Aa75F98e6c105b821a2dba9Fbbd886b421F06b, "Constants.ETH_STKCVXSDTFRAXBP"); - vm.label(0xAe1bA2Cf0eBF00C5052309992d7B6c94e3EfcBEf, "Constants.ETH_STKCVXSTGFRAXBP"); - vm.label(0x9f0C2673a33b7087e367253f196A7E823fBc2341, "Constants.ETH_STKCVXSUSDFRAXBP"); - vm.label(0xa3ae006Cc863423F690ca01C2a8F692B97c93c3b, "Constants.ETH_STKCVXSWETHFRXETH"); - vm.label(0x0643d5C29498149D31bAd69a5bE2771b5440C58d, "Constants.ETH_STKCVXTRICRYPTOFRAX"); - vm.label(0xAD059ccF041e344eA52A3152Bbf654c605d68473, "Constants.ETH_STKCVXTRISDT"); - vm.label(0x32fA492Ac1F729E0eE9eDdfCBacc3ef72B234e27, "Constants.ETH_STKCVXTUSDFRAXBP"); - vm.label(0x507e41A64eB7AE47ee303e3B16237ab757F6C06c, "Constants.ETH_STKCVXUSDDFRAXBP"); - vm.label(0xaa236bd1302755937Aa46D6f3423655BbC654B02, "Constants.ETH_STKCVXUZDFRAXBP"); - vm.label(0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316, "Constants.ETH_STKCVXUZDFRAXBP_DEPRECATED"); - vm.label(0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316, "Constants.ETH_STKCVXUZDFRAXBP_DEPRECATED_OLD"); - vm.label(0x19f0a60f4635d3E2c48647822Eda5332BA094fd3, "Constants.ETH_STKCVXXAIFRAXBP"); - vm.label(0xFD2d7847E0f450d8B00d3D697D720C687E622a7B, "Constants.ETH_STKCVXZUSDFRAXBP"); - vm.label(0x8f2326316eC696F6d023E37A9931c2b2C177a3D7, "Constants.ETH_STKMTA"); - vm.label(0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF, "Constants.ETH_SUSDFRAXBP"); - vm.label(0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF, "Constants.ETH_SUSDFRAXBP_POOL"); - vm.label(0xe49AdDc2D1A131c6b8145F0EBa1C946B7198e0BA, "Constants.ETH_SWETHFRXETH"); - vm.label(0x67e0bDbe0A2C5999A60D048f50e794218056b767, "Constants.ETH_SWETHFRXETH_POOL"); - vm.label(0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2, "Constants.ETH_TFRAX"); - vm.label(0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655, "Constants.ETH_TFXS"); - vm.label(0x6c3F90f043a72FA612cbac8115EE7e52BDe6E490, "Constants.ETH_THREECRV_ERC20"); - vm.label(0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7, "Constants.ETH_THREECRV_POOL"); - vm.label(0x4D1941a887eC788F059b3bfcC8eE1E97b968825B, "Constants.ETH_TRICRYPTOFRAX"); - vm.label(0x4B43fEaB8f5ccD38Ac0831DD7eC797330114F058, "Constants.ETH_TRICRYPTOFRAX_GAUGE"); - vm.label(0x954313005C56b555bdC41B84D6c63B69049d7847, "Constants.ETH_TRISDT"); - vm.label(0x2DD2b7E07dD433B758B98A3889a63cbF48ef0D99, "Constants.ETH_TRISDT_GAUGE"); - vm.label(0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893, "Constants.ETH_TUSDFRAXBP"); - vm.label(0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893, "Constants.ETH_TUSDFRAXBP_POOL"); - vm.label(0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20, "Constants.ETH_USDDFRAXBP"); - vm.label(0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20, "Constants.ETH_USDDFRAXBP_POOL"); - vm.label(0x68934F60758243eafAf4D2cFeD27BF8010bede3a, "Constants.ETH_UZDFRAXBP"); - vm.label(0x68934F60758243eafAf4D2cFeD27BF8010bede3a, "Constants.ETH_UZDFRAXBP_POOL"); - vm.label(0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2, "Constants.ETH_VECRV"); - vm.label(0xD2751CdBED54B87777E805be36670D7aeAe73bb2, "Constants.ETH_VESDL"); - vm.label(0x72a19342e8F1838460eBFCCEf09F6585e32db86E, "Constants.ETH_VLCVX"); - vm.label(0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669, "Constants.ETH_XAIFRAXBP"); - vm.label(0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669, "Constants.ETH_XAIFRAXBP_POOL"); - vm.label(0xaC14864ce5A98aF3248Ffbf549441b04421247D3, "Constants.ETH_XSDT"); - vm.label(0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE, "Constants.ETH_YVUSDC"); - vm.label(0x400d4C984779A747462e88373c3fE369EF9F5b50, "Constants.ETH_ZUSDFRAXBP"); - vm.label(0x218E4678318ab5527e41135713193E5EAd73337f, "Constants.ETH_ZUSDFRAXBP_GAUGE"); - vm.label(0x400d4C984779A747462e88373c3fE369EF9F5b50, "Constants.ETH_ZUSDFRAXBP_POOL"); - vm.label(0x5aB53EE1d50eeF2C1DD3d5402789cd27bB52c1bB, "Constants.ETH_AAVE_ETH_UNI_V3_POOL"); - vm.label(0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF, "Constants.ETH_APE_WETH_UNI_V3_POOL"); - vm.label(0x97e7d56A0408570bA1a7852De36350f7713906ec, "Constants.ETH_FRAX_DAI_V3_POOL"); - vm.label(0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52, "Constants.ETH_FRAX_USDC_V3_POOL"); - vm.label(0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A, "Constants.ETH_FRAX_WETH_UNI_V3_POOL"); - vm.label(0x36C060Cc4b088c830a561E959A679A58205D3F56, "Constants.ETH_FRXETH_FRAX_V3_POOL"); - vm.label(0xa6Cc3C2531FdaA6Ae1A3CA84c2855806728693e8, "Constants.ETH_LINK_ETH_UNI_V3_POOL"); - vm.label(0xe8c6c9227491C0a8156A0106A0204d881BB7E531, "Constants.ETH_MKR_ETH_UNI_V3_POOL"); - vm.label(0xB210CE856631EeEB767eFa666EC7C1C57738d438, "Constants.ETH_STATIC_UNI_V3_ORACLE"); - vm.label(0x1d42064Fc4Beb5F8aAF85F4617AE8b3b5B8Bd801, "Constants.ETH_UNI_ETH_UNI_V3_POOL"); - vm.label(0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640, "Constants.ETH_USDC_WETH_UNI_V3_POOL"); - vm.label(0x5F1dddbf348aC2fbe22a163e30F99F9ECE3DD50a, "Constants.ETH_KYBERSWAP_ELASTIC_FACTORY"); - vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.ETH_KYBERSWAP_ELASTIC_FACTORY_V2"); - vm.label(0x2B1c7b41f6A8F2b2bc45C3233a5d5FB3cD6dC9A8, "Constants.ETH_KYBERSWAP_ELASTIC_POS_MGR"); - vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.ETH_KYBERSWAP_ELASTIC_POS_MGR_V2"); - vm.label(0xC1e7dFE73E1598E3910EF4C7845B68A9Ab6F4c83, "Constants.ETH_KYBERSWAP_ELASTIC_ROUTER"); - vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.ETH_KYBERSWAP_ELASTIC_ROUTER_V2"); - vm.label(0xD7ab1699280980E756C446769B4c0F04550f88c9, "Constants.ETH_KYBERSWAP_ELASTIC_TICK_FEES_READER"); - vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.ETH_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); - vm.label(0xC36442b4a4522E871399CD717aBDD847Ab11FE88, "Constants.ETH_NON_FUNGIBLE_POSITION_MANAGER"); - vm.label(0xE592427A0AEce92De3Edee1F18E0157C05861564, "Constants.ETH_SWAPROUTER"); - vm.label(0x1F98431c8aD98523631AE4a59f267346ea31F984, "Constants.ETH_UNISWAP_V3_FACTORY"); - vm.label(0x9033BAD7aA130a2466060A2dA71fAe2219781B4b, "Constants.ETH_FPIOFT"); - vm.label(0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6, "Constants.ETH_FRXETHOFT"); - vm.label(0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0, "Constants.ETH_FRXUSDOFT"); - vm.label(0xbBc424e58ED38dd911309611ae2d7A23014Bd960, "Constants.ETH_SFRXETHOFT"); - vm.label(0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126, "Constants.ETH_SFRXUSDOFT"); - vm.label(0x04ACaF8D2865c0714F79da09645C13FD2888977f, "Constants.ETH_WFRAXOFT"); - vm.label(0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E, "Constants.ETH_REMOTEHOP"); - vm.label(0x99B5587ab54A49e3F827D10175Caf69C0187bfA8, "Constants.ETH_REMOTEMINTREDEEMHOP"); - } -} -library Mode { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x486cb4788f1be7cdef9301a7a637b451df3cf262; - address internal constant REMOTEMINTREDEEMHOP = 0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9; -} - -abstract contract AddressHelperMode is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.undefined_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.undefined_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.undefined_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); - vm.label(0x486cb4788f1be7cdef9301a7a637b451df3cf262, "Constants.undefined_REMOTEHOP"); - vm.label(0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9, "Constants.undefined_REMOTEMINTREDEEMHOP"); - } -} -library Moonbeam { - address internal constant FRAX = 0x322E86852e492a7Ee17f28a78c663da38FB33bfb; - address internal constant FXS = 0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C; - address internal constant FRXETH = 0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99; - address internal constant SFRXETH = 0xecf91116348aF1cfFe335e9807f0051332BE128D; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = 0x78348E58582d0D1789da1621B79Fc62012485CAe; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant COMBO_ORACLE = 0x247A323DAA63cC97c2BAD61b4D6f1E0120B5c9e2; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x4A40198373dE481741bdf629B44Dc98f12f18161; - address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; - address internal constant FRAXSWAP_FACTORY_V2 = 0x51f9DBEd76f5Dcf209817f641b549aa82F35D23F; - address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; - address internal constant FRAXSWAP_ROUTER_V2 = 0xd95fe880d7717f7f20981FE6e41A2315f3EFeAb5; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; - address internal constant FRAXSWAP_V1_FRAX_FXS = 0x44E11b99ff8F6164FD54393a17b3CD4c57732dB7; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0x2974A0D3e70FDe22d44c188F770beE964205aCad; - address internal constant FRAXSWAP_V1_FRAX_WGLMR = 0xAE0b5be7d467C8c0898CaE4c96B2f40A6810DEBC; - address internal constant FRAXSWAP_V2_FRAX_WGLMR = 0xd3bE0E32147ae91378F035fF96f3e2cAb96aC48b; - address internal constant COMPTROLLER = 0x343e4f06BF240d22FbdFd4a2Fe5858BC66e79F12; - address internal constant FPI_COMPTROLLER = 0xc4d89dcE72cde17DC3BEF317E62530b6A0733971; - address internal constant ZENLINK_CANFRAX_CANFXS = 0x8ca030649720b94b16e8C3B551cc2ab88c681C0F; - address internal constant ZENLINK_CANFRAX_WGLMR = 0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04; -} - -abstract contract AddressHelperMoonbeam is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x322E86852e492a7Ee17f28a78c663da38FB33bfb, "Constants.MNBM_FRAX"); - vm.label(0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C, "Constants.MNBM_FXS"); - vm.label(0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99, "Constants.MNBM_FRXETH"); - vm.label(0xecf91116348aF1cfFe335e9807f0051332BE128D, "Constants.MNBM_SFRXETH"); - vm.label(0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE"); - vm.label(0x1E87990678f640BFfe5A118c331fEc296DDC8d89, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE"); - vm.label(0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE"); - vm.label(0x78348E58582d0D1789da1621B79Fc62012485CAe, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CREWMEMBER"); - vm.label(0x247A323DAA63cC97c2BAD61b4D6f1E0120B5c9e2, "Constants.MNBM_COMBO_ORACLE"); - vm.label(0x4A40198373dE481741bdf629B44Dc98f12f18161, "Constants.MNBM_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.MNBM_FRAXSWAP_FACTORY_V1"); - vm.label(0x51f9DBEd76f5Dcf209817f641b549aa82F35D23F, "Constants.MNBM_FRAXSWAP_FACTORY_V2"); - vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.MNBM_FRAXSWAP_ROUTER_V1"); - vm.label(0xd95fe880d7717f7f20981FE6e41A2315f3EFeAb5, "Constants.MNBM_FRAXSWAP_ROUTER_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.MNBM_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0x44E11b99ff8F6164FD54393a17b3CD4c57732dB7, "Constants.MNBM_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x2974A0D3e70FDe22d44c188F770beE964205aCad, "Constants.MNBM_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0xAE0b5be7d467C8c0898CaE4c96B2f40A6810DEBC, "Constants.MNBM_FRAXSWAP_V1_FRAX_WGLMR"); - vm.label(0xd3bE0E32147ae91378F035fF96f3e2cAb96aC48b, "Constants.MNBM_FRAXSWAP_V2_FRAX_WGLMR"); - vm.label(0x343e4f06BF240d22FbdFd4a2Fe5858BC66e79F12, "Constants.MNBM_COMPTROLLER"); - vm.label(0xc4d89dcE72cde17DC3BEF317E62530b6A0733971, "Constants.MNBM_FPI_COMPTROLLER"); - vm.label(0x8ca030649720b94b16e8C3B551cc2ab88c681C0F, "Constants.MNBM_ZENLINK_CANFRAX_CANFXS"); - vm.label(0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04, "Constants.MNBM_ZENLINK_CANFRAX_WGLMR"); - } -} -library Moonriver { - address internal constant FRAX = 0x1A93B23281CC1CDE4C4741353F3064709A16197d; - address internal constant FXS = 0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant ZENLINK_CANFRAX_WGLMR = 0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04; - address internal constant COMBO_ORACLE = 0x3B56E2DD29e4976B639BAd95044A0852BeeEBF02; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x212ae4B6e93a735840A431845833261CA9cA76ED; - address internal constant FRAXSWAP_FACTORY_V1 = 0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E; - address internal constant FRAXSWAP_FACTORY_V2 = 0x7FB05Ca29DAc7F5690E9b5AE0aF0415D579D7CD3; - address internal constant FRAXSWAP_ROUTER_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; - address internal constant FRAXSWAP_ROUTER_V2 = 0xD8FC27ec222E8d5172CD63aC453C6Dfb7467a3C7; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; - address internal constant FRAXSWAP_V1_FRAX_FXS = 0x2C803cd6E9a7AdAD813718a4767ECec4F6e0ca90; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0x08C81e49D695Ae8F50574144560a301542b05C60; - address internal constant FRAXSWAP_V1_FRAX_WMOVR = 0x3Dbb1Fd5E0b50a5905fc24Fc38D8e741C52F782b; - address internal constant FRAXSWAP_V2_FRAX_WMOVR = 0x72B7D2Bb0082cC9cDa8db55eca6Ce4dfcc954191; - address internal constant COMPTROLLER = 0x2bBbE751E8C36CD6c92767776067f8Dd3A21941f; - address internal constant SOLARBEAM_FRAX_ROME = 0x069C2065100b4D3D982383f7Ef3EcD1b95C05894; - address internal constant SOLARBEAM_FRAX_MOVR = 0x2cc54b4A3878e36E1C754871438113C1117a3ad7; - address internal constant SUSHI_FRAX_USDC_MOONRIVER = 0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3; - address internal constant SUSHI_CANFRAX_CANFXS = 0xC5147A6E773343aFE527249a26EF16AFc6a0013F; - address internal constant SUSHI_CANFRAX_ANYUSDC = 0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3; - address internal constant SUSHI_CANFRAX_WMOVR = 0x756057872D1Ad41C703B68e12701D27874fbe533; - address internal constant SUSHI_CANFXS_ANYUSDC = 0xc0EAB66DaDC825c95cA1951A2B02BC56073Fc7B2; -} - -abstract contract AddressHelperMoonriver is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x1A93B23281CC1CDE4C4741353F3064709A16197d, "Constants.MOVR_FRAX"); - vm.label(0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98, "Constants.MOVR_FXS"); - vm.label(0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE"); - vm.label(0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CREWMEMBER"); - vm.label(0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04, "Constants.MOVR_ZENLINK_CANFRAX_WGLMR"); - vm.label(0x3B56E2DD29e4976B639BAd95044A0852BeeEBF02, "Constants.MOVR_COMBO_ORACLE"); - vm.label(0x212ae4B6e93a735840A431845833261CA9cA76ED, "Constants.MOVR_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E, "Constants.MOVR_FRAXSWAP_FACTORY_V1"); - vm.label(0x7FB05Ca29DAc7F5690E9b5AE0aF0415D579D7CD3, "Constants.MOVR_FRAXSWAP_FACTORY_V2"); - vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.MOVR_FRAXSWAP_ROUTER_V1"); - vm.label(0xD8FC27ec222E8d5172CD63aC453C6Dfb7467a3C7, "Constants.MOVR_FRAXSWAP_ROUTER_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.MOVR_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0x2C803cd6E9a7AdAD813718a4767ECec4F6e0ca90, "Constants.MOVR_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x08C81e49D695Ae8F50574144560a301542b05C60, "Constants.MOVR_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0x3Dbb1Fd5E0b50a5905fc24Fc38D8e741C52F782b, "Constants.MOVR_FRAXSWAP_V1_FRAX_WMOVR"); - vm.label(0x72B7D2Bb0082cC9cDa8db55eca6Ce4dfcc954191, "Constants.MOVR_FRAXSWAP_V2_FRAX_WMOVR"); - vm.label(0x2bBbE751E8C36CD6c92767776067f8Dd3A21941f, "Constants.MOVR_COMPTROLLER"); - vm.label(0x069C2065100b4D3D982383f7Ef3EcD1b95C05894, "Constants.MOVR_SOLARBEAM_FRAX_ROME"); - vm.label(0x2cc54b4A3878e36E1C754871438113C1117a3ad7, "Constants.MOVR_SOLARBEAM_FRAX_MOVR"); - vm.label(0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3, "Constants.MOVR_SUSHI_FRAX_USDC_MOONRIVER"); - vm.label(0xC5147A6E773343aFE527249a26EF16AFc6a0013F, "Constants.MOVR_SUSHI_CANFRAX_CANFXS"); - vm.label(0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3, "Constants.MOVR_SUSHI_CANFRAX_ANYUSDC"); - vm.label(0x756057872D1Ad41C703B68e12701D27874fbe533, "Constants.MOVR_SUSHI_CANFRAX_WMOVR"); - vm.label(0xc0EAB66DaDC825c95cA1951A2B02BC56073Fc7B2, "Constants.MOVR_SUSHI_CANFXS_ANYUSDC"); - } -} -library Optimism { - address internal constant FRAX = 0x2E3D870790dC77A83DD1d18184Acc7439A53f475; - address internal constant FXS = 0x67CCEA5bb16181E7b4109c9c2143c24a1c2205Be; - address internal constant FPI = 0xC5d43A94e26fCa47A9b21CF547ae4AA0268670E1; - address internal constant FPIS = 0x8368Dca5CE2a4Db530c0F6e535d90B6826428Dee; - address internal constant FRXETH = 0x6806411765Af15Bddd26f8f544A34cC40cb9838B; - address internal constant SFRXETH = 0x484c2D6e3cDd945a8B2DF735e079178C1036578c; - address internal constant SFRAX = 0x2Dd1B4D4548aCCeA497050619965f91f78b3b532; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant COMBO_ORACLE = 0x626eFc448227d794dC8C02ffea6a932bB360f72a; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0xeba66661Afc03aB95ec37383b1BfB724abe14a0F; - address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3; - address internal constant FRAXSWAP_FACTORY_V1 = 0xBe90FD3CDdaf0D3B8576ffb5E51aDbfD304d0437; - address internal constant FRAXSWAP_FACTORY_V2 = 0x67a1412d2D6CbF211bb71F8e851b4393b491B10f; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; - address internal constant FRAXSWAP_ROUTER_V1 = 0xffE66A866B249f5d7C97b4a4c84742A393bC9354; - address internal constant FRAXSWAP_ROUTER_V2 = 0xB9A55F455e46e8D717eEA5E47D2c449416A0437F; - address internal constant FRAXSWAP_V1_FRAX_FXS = 0x25e2222Bc50E3B2dc945E1b9430F5498107FD3A5; - address internal constant FRAXSWAP_V1_FRAX_WETH = 0x0BC2D9B4c3f599BD85789EC3649774076A7D9264; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0x9456c020D3A05b159dAB4557535083fBA836c49A; - address internal constant FRAXSWAP_V2_FRAX_WETH = 0xCc4Dd8Bc7967D46060bA3fAAA8e525A35625F8b4; - address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; - address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; - address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; - address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; - address internal constant COMPTROLLER = 0x0dF840dCbf1229262A4125C1fc559bd338eC9491; - address internal constant FPI_COMPTROLLER = 0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635; - address internal constant CURVE_4POOL = 0x3da3153E26A230d918bb9F9428A8d60349B73379; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = 0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197; - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x31D982ebd82Ad900358984bd049207A4c2468640; - address internal constant REMOTEMINTREDEEMHOP = 0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A; -} - -abstract contract AddressHelperOptimism is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x2E3D870790dC77A83DD1d18184Acc7439A53f475, "Constants.OPTI_FRAX"); - vm.label(0x67CCEA5bb16181E7b4109c9c2143c24a1c2205Be, "Constants.OPTI_FXS"); - vm.label(0xC5d43A94e26fCa47A9b21CF547ae4AA0268670E1, "Constants.OPTI_FPI"); - vm.label(0x8368Dca5CE2a4Db530c0F6e535d90B6826428Dee, "Constants.OPTI_FPIS"); - vm.label(0x6806411765Af15Bddd26f8f544A34cC40cb9838B, "Constants.OPTI_FRXETH"); - vm.label(0x484c2D6e3cDd945a8B2DF735e079178C1036578c, "Constants.OPTI_SFRXETH"); - vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.OPTI_SFRAX"); - vm.label(0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE"); - vm.label(0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE"); - vm.label(0x053F082f3bC0C48B8409970c017b4F2a6f673e16, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE"); - vm.label(0xB84E29042Bfb489439949a79aed8a0e156169Ae5, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE"); - vm.label(0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE"); - vm.label(0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE"); - vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CREWMEMBER"); - vm.label(0x626eFc448227d794dC8C02ffea6a932bB360f72a, "Constants.OPTI_COMBO_ORACLE"); - vm.label(0xeba66661Afc03aB95ec37383b1BfB724abe14a0F, "Constants.OPTI_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.OPTI_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); - vm.label(0xBe90FD3CDdaf0D3B8576ffb5E51aDbfD304d0437, "Constants.OPTI_FRAXSWAP_FACTORY_V1"); - vm.label(0x67a1412d2D6CbF211bb71F8e851b4393b491B10f, "Constants.OPTI_FRAXSWAP_FACTORY_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.OPTI_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0xffE66A866B249f5d7C97b4a4c84742A393bC9354, "Constants.OPTI_FRAXSWAP_ROUTER_V1"); - vm.label(0xB9A55F455e46e8D717eEA5E47D2c449416A0437F, "Constants.OPTI_FRAXSWAP_ROUTER_V2"); - vm.label(0x25e2222Bc50E3B2dc945E1b9430F5498107FD3A5, "Constants.OPTI_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x0BC2D9B4c3f599BD85789EC3649774076A7D9264, "Constants.OPTI_FRAXSWAP_V1_FRAX_WETH"); - vm.label(0x9456c020D3A05b159dAB4557535083fBA836c49A, "Constants.OPTI_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0xCc4Dd8Bc7967D46060bA3fAAA8e525A35625F8b4, "Constants.OPTI_FRAXSWAP_V2_FRAX_WETH"); - vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.OPTI_KYBERSWAP_ELASTIC_FACTORY_V2"); - vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.OPTI_KYBERSWAP_ELASTIC_POS_MGR_V2"); - vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.OPTI_KYBERSWAP_ELASTIC_ROUTER_V2"); - vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.OPTI_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); - vm.label(0x0dF840dCbf1229262A4125C1fc559bd338eC9491, "Constants.OPTI_COMPTROLLER"); - vm.label(0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635, "Constants.OPTI_FPI_COMPTROLLER"); - vm.label(0x3da3153E26A230d918bb9F9428A8d60349B73379, "Constants.OPTI_CURVE_4POOL"); - vm.label(0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197, "Constants.OPTI_KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM"); - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.OPTI_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.OPTI_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.OPTI_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.OPTI_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.OPTI_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.OPTI_WFRAXOFT"); - vm.label(0x31D982ebd82Ad900358984bd049207A4c2468640, "Constants.OPTI_REMOTEHOP"); - vm.label(0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A, "Constants.OPTI_REMOTEMINTREDEEMHOP"); - } -} -library Plumephoenix { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876; - address internal constant REMOTEMINTREDEEMHOP = 0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb; -} - -abstract contract AddressHelperPlumephoenix is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.PLUME_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.PLUME_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.PLUME_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.PLUME_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.PLUME_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.PLUME_WFRAXOFT"); - vm.label(0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876, "Constants.PLUME_REMOTEHOP"); - vm.label(0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb, "Constants.PLUME_REMOTEMINTREDEEMHOP"); - } -} -library Polygon { - address internal constant FRAX = 0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89; - address internal constant FXS = 0x1a3acf6D19267E2d3e7f898f42803e90C9219062; - address internal constant FPI = 0x411C9cDd0fBBa243488988f2A3005D6fFf126661; - address internal constant FPIS = 0x84F6FCeb8E4A3EB87768C4a111273C17b54D4411; - address internal constant FRXETH = 0xEe327F889d5947c1dc1934Bb208a1E792F953E96; - address internal constant SFRXETH = 0x6d1FdBB266fCc09A16a22016369210A15bb95761; - address internal constant BALANCER_FRXETH_BB_A_WETH_GAUGE = 0x617430FF1C74faff0378726627F26a8704d03c8d; - address internal constant KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = 0x0363a32D18c25a3FD19a0d00B02106C03d8b8182; - address internal constant MSTABLE_FRAX_MUSD = 0xc425Fd9Ed3C892d849C9E1a971516da1C1B29696; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant DUMMY_TKN = 0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89; - address internal constant FERRY_TO_ARBITRUM = 0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; - address internal constant COMBO_ORACLE = 0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020; - address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; - address internal constant FRAXSWAP_FACTORY_V1 = 0xc2544A32872A91F4A553b404C6950e89De901fdb; - address internal constant FRAXSWAP_FACTORY_V2 = 0x54F454D747e037Da288dB568D4121117EAb34e79; - address internal constant FRAXSWAP_ROUTER_MULTI_HOP = 0x0000000000000000000000000000000000000000; - address internal constant FRAXSWAP_ROUTER_V1 = 0x9bc2152fD37b196C0Ff3C16f5533767c9A983971; - address internal constant FRAXSWAP_ROUTER_V2 = 0xE52D0337904D4D0519EF7487e707268E1DB6495F; - address internal constant FRAXSWAP_V1_FRAX_FXS = 0x60AC6d228ffeeefF423879baA02091558e6480dc; - address internal constant FRAXSWAP_V1_FRAX_WMATIC = 0x4F7267Af6DB7B284dF74BEA9e35402987D8C72a7; - address internal constant FRAXSWAP_V2_FRAX_FXS = 0xd2105fE5f1B631daf2398e918549758Cd181cA7C; - address internal constant FRAXSWAP_V2_FRAX_WMATIC = 0xA964b92C690f0B8efad5B46a278A84bD0EF8AC01; - address internal constant KYBERSWAP_ELASTIC_FACTORY_V2 = 0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A; - address internal constant KYBERSWAP_ELASTIC_POS_MGR_V2 = 0xe222fBE074A436145b255442D919E4E3A6c6a480; - address internal constant KYBERSWAP_ELASTIC_ROUTER_V2 = 0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4; - address internal constant KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = 0x8Fd8Cb948965d9305999D767A02bf79833EADbB3; - address internal constant COMPTROLLER = 0xDCB5A4b6Ee39447D700F4FA3303B1d1c25Ea9cA7; - address internal constant FPI_COMPTROLLER = 0x4EBd698a5dB2580587EE0000929128190524006c; - address internal constant CURVE4POOL = 0xe4ae3Ee65bb687045e401827b404FeE34BE4BA53; - address internal constant DYSTOPIA_STABLEV1_AMM___USDC_FRAX = 0x53227c83a98Ba1035FEd912Da6cE26a0c11C7C66; - address internal constant DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = 0xfC2e89aabD257471a461dd506188609B2Bec53Fa; - address internal constant FRAX3POOL = 0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac; - address internal constant HOP_LP_USDC = 0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A; - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C; - address internal constant REMOTEMINTREDEEMHOP = 0x5658e82E330e094627D9b362ed0E137eA06673C4; -} - -abstract contract AddressHelperPolygon is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89, "Constants.POLY_FRAX"); - vm.label(0x1a3acf6D19267E2d3e7f898f42803e90C9219062, "Constants.POLY_FXS"); - vm.label(0x411C9cDd0fBBa243488988f2A3005D6fFf126661, "Constants.POLY_FPI"); - vm.label(0x84F6FCeb8E4A3EB87768C4a111273C17b54D4411, "Constants.POLY_FPIS"); - vm.label(0xEe327F889d5947c1dc1934Bb208a1E792F953E96, "Constants.POLY_FRXETH"); - vm.label(0x6d1FdBB266fCc09A16a22016369210A15bb95761, "Constants.POLY_SFRXETH"); - vm.label(0x617430FF1C74faff0378726627F26a8704d03c8d, "Constants.POLY_BALANCER_FRXETH_BB_A_WETH_GAUGE"); - vm.label(0x0363a32D18c25a3FD19a0d00B02106C03d8b8182, "Constants.POLY_KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON"); - vm.label(0xc425Fd9Ed3C892d849C9E1a971516da1C1B29696, "Constants.POLY_MSTABLE_FRAX_MUSD"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_CREWMEMBER"); - vm.label(0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89, "Constants.POLY_DUMMY_TKN"); - vm.label(0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0, "Constants.POLY_FERRY_TO_ARBITRUM"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_FIRST_OFFICER"); - vm.label(0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE"); - vm.label(0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE"); - vm.label(0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE"); - vm.label(0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE"); - vm.label(0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3, "Constants.POLY_COMBO_ORACLE"); - vm.label(0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020, "Constants.POLY_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.POLY_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); - vm.label(0xc2544A32872A91F4A553b404C6950e89De901fdb, "Constants.POLY_FRAXSWAP_FACTORY_V1"); - vm.label(0x54F454D747e037Da288dB568D4121117EAb34e79, "Constants.POLY_FRAXSWAP_FACTORY_V2"); - vm.label(0x0000000000000000000000000000000000000000, "Constants.POLY_FRAXSWAP_ROUTER_MULTI_HOP"); - vm.label(0x9bc2152fD37b196C0Ff3C16f5533767c9A983971, "Constants.POLY_FRAXSWAP_ROUTER_V1"); - vm.label(0xE52D0337904D4D0519EF7487e707268E1DB6495F, "Constants.POLY_FRAXSWAP_ROUTER_V2"); - vm.label(0x60AC6d228ffeeefF423879baA02091558e6480dc, "Constants.POLY_FRAXSWAP_V1_FRAX_FXS"); - vm.label(0x4F7267Af6DB7B284dF74BEA9e35402987D8C72a7, "Constants.POLY_FRAXSWAP_V1_FRAX_WMATIC"); - vm.label(0xd2105fE5f1B631daf2398e918549758Cd181cA7C, "Constants.POLY_FRAXSWAP_V2_FRAX_FXS"); - vm.label(0xA964b92C690f0B8efad5B46a278A84bD0EF8AC01, "Constants.POLY_FRAXSWAP_V2_FRAX_WMATIC"); - vm.label(0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A, "Constants.POLY_KYBERSWAP_ELASTIC_FACTORY_V2"); - vm.label(0xe222fBE074A436145b255442D919E4E3A6c6a480, "Constants.POLY_KYBERSWAP_ELASTIC_POS_MGR_V2"); - vm.label(0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4, "Constants.POLY_KYBERSWAP_ELASTIC_ROUTER_V2"); - vm.label(0x8Fd8Cb948965d9305999D767A02bf79833EADbB3, "Constants.POLY_KYBERSWAP_ELASTIC_TICK_FEES_READER_V2"); - vm.label(0xDCB5A4b6Ee39447D700F4FA3303B1d1c25Ea9cA7, "Constants.POLY_COMPTROLLER"); - vm.label(0x4EBd698a5dB2580587EE0000929128190524006c, "Constants.POLY_FPI_COMPTROLLER"); - vm.label(0xe4ae3Ee65bb687045e401827b404FeE34BE4BA53, "Constants.POLY_CURVE4POOL"); - vm.label(0x53227c83a98Ba1035FEd912Da6cE26a0c11C7C66, "Constants.POLY_DYSTOPIA_STABLEV1_AMM___USDC_FRAX"); - vm.label(0xfC2e89aabD257471a461dd506188609B2Bec53Fa, "Constants.POLY_DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX"); - vm.label(0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac, "Constants.POLY_FRAX3POOL"); - vm.label(0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A, "Constants.POLY_HOP_LP_USDC"); - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_WFRAXOFT"); - vm.label(0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C, "Constants.POLY_REMOTEHOP"); - vm.label(0x5658e82E330e094627D9b362ed0E137eA06673C4, "Constants.POLY_REMOTEMINTREDEEMHOP"); - } -} -library PolygonzkEVM { - address internal constant FRAX = 0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D; - address internal constant FXS = 0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE; - address internal constant FPI = 0x7E5845b1bFc9e6620893e48346bdB8541995a8D9; - address internal constant FPIS = 0xdE7df9036801676aF0cB73661d93a098c0085fba; - address internal constant FRXETH = 0xCf7eceE185f19e2E970a301eE37F93536ed66179; - address internal constant SFRXETH = 0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04; - address internal constant SFRAX = 0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = 0x96720C1E893bB69C14291d8a85475ED9BC484b26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = 0xA31001fbe938C520C27204b984817d998bAeA885; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = 0x3d1bc21F8991091538FfEf535Fe96A449794461C; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = 0xA711F85672899331900359e5b89848A30BeEBDBe; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; - address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant COMBO_ORACLE = 0x030BD43af99cb72B51dA233A73F7697Cd2461C0b; - address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D; - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; - address internal constant REMOTEMINTREDEEMHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; -} - -abstract contract AddressHelperPolygonzkEVM is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D, "Constants.POLY_ZKEVM_FRAX"); - vm.label(0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE, "Constants.POLY_ZKEVM_FXS"); - vm.label(0x7E5845b1bFc9e6620893e48346bdB8541995a8D9, "Constants.POLY_ZKEVM_FPI"); - vm.label(0xdE7df9036801676aF0cB73661d93a098c0085fba, "Constants.POLY_ZKEVM_FPIS"); - vm.label(0xCf7eceE185f19e2E970a301eE37F93536ed66179, "Constants.POLY_ZKEVM_FRXETH"); - vm.label(0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04, "Constants.POLY_ZKEVM_SFRXETH"); - vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.POLY_ZKEVM_SFRAX"); - vm.label(0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE"); - vm.label(0x96720C1E893bB69C14291d8a85475ED9BC484b26, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE"); - vm.label(0xA31001fbe938C520C27204b984817d998bAeA885, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE"); - vm.label(0x3d1bc21F8991091538FfEf535Fe96A449794461C, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE"); - vm.label(0xA711F85672899331900359e5b89848A30BeEBDBe, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE"); - vm.label(0x4DB406906835ca0B28bFbef344c7d2C707BC4947, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE"); - vm.label(0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CAPTAIN"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_FIRST_OFFICER"); - vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CREWMEMBER"); - vm.label(0x030BD43af99cb72B51dA233A73F7697Cd2461C0b, "Constants.POLY_ZKEVM_COMBO_ORACLE"); - vm.label(0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D, "Constants.POLY_ZKEVM_COMBO_ORACLE_UNIV2_UNIV3"); - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.POLY_ZKEVM_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.POLY_ZKEVM_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.POLY_ZKEVM_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.POLY_ZKEVM_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.POLY_ZKEVM_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.POLY_ZKEVM_WFRAXOFT"); - vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.POLY_ZKEVM_REMOTEHOP"); - vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.POLY_ZKEVM_REMOTEMINTREDEEMHOP"); - } -} -library Scroll { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0xf6f45ccb5e85d1400067ee66f9e168f83e86124e; - address internal constant REMOTEMINTREDEEMHOP = 0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558; -} - -abstract contract AddressHelperScroll is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SCROLL_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SCROLL_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SCROLL_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SCROLL_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SCROLL_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SCROLL_WFRAXOFT"); - vm.label(0xf6f45ccb5e85d1400067ee66f9e168f83e86124e, "Constants.SCROLL_REMOTEHOP"); - vm.label(0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558, "Constants.SCROLL_REMOTEMINTREDEEMHOP"); - } -} -library Solana { - string internal constant FPIOFT = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH"; - string internal constant FRXETHOFT = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf"; - string internal constant FRXUSDOFT = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw"; - string internal constant SFRXETHOFT = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv"; - string internal constant SFRXUSDOFT = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45"; - string internal constant WFRAXOFT = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga"; - address internal constant FPIOFT_BYTES32 = 0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0; - address internal constant FRXETHOFT_BYTES32 = 0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3; - address internal constant FRXUSDOFT_BYTES32 = 0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad; - address internal constant SFRXETHOFT_BYTES32 = 0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61; - address internal constant SFRXUSDOFT_BYTES32 = 0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf; - address internal constant WFRAXOFT_BYTES32 = 0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa; -} - -abstract contract AddressHelperSolana is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH, "Constants.SOL_FPIOFT"); - vm.label(5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf, "Constants.SOL_FRXETHOFT"); - vm.label(GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw, "Constants.SOL_FRXUSDOFT"); - vm.label(58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv, "Constants.SOL_SFRXETHOFT"); - vm.label(DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45, "Constants.SOL_SFRXUSDOFT"); - vm.label(zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga, "Constants.SOL_WFRAXOFT"); - vm.label(0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0, "Constants.SOL_FPIOFT_BYTES32"); - vm.label(0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3, "Constants.SOL_FRXETHOFT_BYTES32"); - vm.label(0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad, "Constants.SOL_FRXUSDOFT_BYTES32"); - vm.label(0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61, "Constants.SOL_SFRXETHOFT_BYTES32"); - vm.label(0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf, "Constants.SOL_SFRXUSDOFT_BYTES32"); - vm.label(0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa, "Constants.SOL_WFRAXOFT_BYTES32"); - } -} -library Sonic { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23; - address internal constant REMOTEMINTREDEEMHOP = 0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b; -} - -abstract contract AddressHelperSonic is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.SONIC_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.SONIC_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.SONIC_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SONIC_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SONIC_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SONIC_WFRAXOFT"); - vm.label(0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23, "Constants.SONIC_REMOTEHOP"); - vm.label(0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b, "Constants.SONIC_REMOTEMINTREDEEMHOP"); - } -} -library Unichain { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0xc71BF5Ee4740405030eF521F18A96eA14fec802D; - address internal constant REMOTEMINTREDEEMHOP = 0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263; -} - -abstract contract AddressHelperUnichain is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.UNI_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.UNI_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.UNI_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.UNI_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.UNI_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.UNI_WFRAXOFT"); - vm.label(0xc71BF5Ee4740405030eF521F18A96eA14fec802D, "Constants.UNI_REMOTEHOP"); - vm.label(0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263, "Constants.UNI_REMOTEMINTREDEEMHOP"); - } -} -library Worldchain { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x938d99A81814f66b01010d19DDce92A633441699; - address internal constant REMOTEMINTREDEEMHOP = 0x111ddab65Af5fF96b674400246699ED40F550De1; -} - -abstract contract AddressHelperWorldchain is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.WRLD_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.WRLD_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.WRLD_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.WRLD_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.WRLD_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.WRLD_WFRAXOFT"); - vm.label(0x938d99A81814f66b01010d19DDce92A633441699, "Constants.WRLD_REMOTEHOP"); - vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.WRLD_REMOTEMINTREDEEMHOP"); - } -} -library XLayer { - address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; - address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; - address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; - address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; - address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; - address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396; - address internal constant REMOTEMINTREDEEMHOP = 0x45c6852a5188ce1905567ea83454329bd4982007; -} - -abstract contract AddressHelperXLayer is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927, "Constants.XLAYER_FPIOFT"); - vm.label(0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050, "Constants.XLAYER_FRXETHOFT"); - vm.label(0x80Eede496655FB9047dd39d9f418d5483ED600df, "Constants.XLAYER_FRXUSDOFT"); - vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.XLAYER_SFRXETHOFT"); - vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.XLAYER_SFRXUSDOFT"); - vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.XLAYER_WFRAXOFT"); - vm.label(0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396, "Constants.XLAYER_REMOTEHOP"); - vm.label(0x45c6852a5188ce1905567ea83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); - } -} -library ZkSync { - address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; - address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; - address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; - address internal constant SFRXETHOFT = 0xFD78FD3667DeF2F1097Ed221ec503AE477155394; - address internal constant SFRXUSDOFT = 0x9F87fbb47C33Cd0614E43500b9511018116F79eE; - address internal constant WFRAXOFT = 0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F; - address internal constant REMOTEHOP = 0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb; - address internal constant REMOTEMINTREDEEMHOP = 0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b; -} - -abstract contract AddressHelperZkSync is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E, "Constants.undefined_FPIOFT"); - vm.label(0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440, "Constants.undefined_FRXETHOFT"); - vm.label(0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d, "Constants.undefined_FRXUSDOFT"); - vm.label(0xFD78FD3667DeF2F1097Ed221ec503AE477155394, "Constants.undefined_SFRXETHOFT"); - vm.label(0x9F87fbb47C33Cd0614E43500b9511018116F79eE, "Constants.undefined_SFRXUSDOFT"); - vm.label(0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F, "Constants.undefined_WFRAXOFT"); - vm.label(0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb, "Constants.undefined_REMOTEHOP"); - vm.label(0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b, "Constants.undefined_REMOTEMINTREDEEMHOP"); - } -} diff --git a/src/contracts/chain-constants/Aptos.sol b/src/contracts/chain-constants/Aptos.sol index 50cbaf0..16594db 100644 --- a/src/contracts/chain-constants/Aptos.sol +++ b/src/contracts/chain-constants/Aptos.sol @@ -19,24 +19,3 @@ library Aptos { bytes32 internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; bytes32 internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; } - -abstract contract AddressHelperAptos is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2, "Constants.APT_FPI"); - vm.label(0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585, "Constants.APT_FRXETH"); - vm.label(0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5, "Constants.APT_FRXUSD"); - vm.label(0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a, "Constants.APT_SFRXETH"); - vm.label(0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2, "Constants.APT_SFRXUSD"); - vm.label(0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300, "Constants.APT_WFRAX"); - vm.label(0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864, "Constants.APT_FPIOFT"); - vm.label(0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c, "Constants.APT_FRXETHOFT"); - vm.label(0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b, "Constants.APT_FRXUSDOFT"); - vm.label(0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356, "Constants.APT_SFRXETHOFT"); - vm.label(0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9, "Constants.APT_SFRXUSDOFT"); - vm.label(0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2, "Constants.APT_WFRAXOFT"); - } -} diff --git a/src/contracts/chain-constants/Movement.sol b/src/contracts/chain-constants/Movement.sol new file mode 100644 index 0000000..a8872e7 --- /dev/null +++ b/src/contracts/chain-constants/Movement.sol @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + +library Movement { + bytes32 internal constant FPI = 0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2; + bytes32 internal constant FRXETH = 0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585; + bytes32 internal constant FRXUSD = 0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5; + bytes32 internal constant SFRXETH = 0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a; + bytes32 internal constant SFRXUSD = 0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2; + bytes32 internal constant WFRAX = 0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300; + bytes32 internal constant FPIOFT = 0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864; + bytes32 internal constant FRXETHOFT = 0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c; + bytes32 internal constant FRXUSDOFT = 0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b; + bytes32 internal constant SFRXETHOFT = 0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356; + bytes32 internal constant SFRXUSDOFT = 0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9; + bytes32 internal constant WFRAXOFT = 0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2; +} diff --git a/src/contracts/chain-constants/Solana.sol b/src/contracts/chain-constants/Solana.sol index bc29b3a..ca7cb5b 100644 --- a/src/contracts/chain-constants/Solana.sol +++ b/src/contracts/chain-constants/Solana.sol @@ -5,7 +5,7 @@ pragma solidity >=0.8.0; import { TestBase } from "forge-std/Test.sol"; - library Solana { +library Solana { string internal constant FPIOFT = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH"; string internal constant FRXETHOFT = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf"; string internal constant FRXUSDOFT = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw"; @@ -19,24 +19,3 @@ import { TestBase } from "forge-std/Test.sol"; bytes32 internal constant SFRXUSDOFT_BYTES32 = 0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf; bytes32 internal constant WFRAXOFT_BYTES32 = 0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa; } - -abstract contract AddressHelperSolana is TestBase { - constructor() { - labelConstants(); - } - - function labelConstants() public { - vm.label(8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH, "Constants.SOL_FPIOFT"); - vm.label(5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf, "Constants.SOL_FRXETHOFT"); - vm.label(GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw, "Constants.SOL_FRXUSDOFT"); - vm.label(58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv, "Constants.SOL_SFRXETHOFT"); - vm.label(DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45, "Constants.SOL_SFRXUSDOFT"); - vm.label(zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga, "Constants.SOL_WFRAXOFT"); - vm.label(0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0, "Constants.SOL_FPIOFT_BYTES32"); - vm.label(0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3, "Constants.SOL_FRXETHOFT_BYTES32"); - vm.label(0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad, "Constants.SOL_FRXUSDOFT_BYTES32"); - vm.label(0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61, "Constants.SOL_SFRXETHOFT_BYTES32"); - vm.label(0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf, "Constants.SOL_SFRXUSDOFT_BYTES32"); - vm.label(0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa, "Constants.SOL_WFRAXOFT_BYTES32"); - } -} From dd9e1b4916415f56d98d1900f98578ac0afd99f6 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Mon, 5 Jan 2026 00:39:46 +0000 Subject: [PATCH 05/27] (chore): fix lint --- .husky/pre-commit | 0 pnpm-lock.yaml | 1690 ++++++++--------- pnpm-workspace.yaml | 7 + src/Constants.sol | 922 ++++++--- src/contracts/chain-constants/Hyperliquid.sol | 10 +- 5 files changed, 1487 insertions(+), 1142 deletions(-) mode change 100755 => 100644 .husky/pre-commit create mode 100644 pnpm-workspace.yaml diff --git a/.husky/pre-commit b/.husky/pre-commit old mode 100755 new mode 100644 diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c39f2ce..c4f1d2a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,31 +8,31 @@ importers: .: dependencies: - "@fraxfinance/layerzero-v2-upgradeable": + '@fraxfinance/layerzero-v2-upgradeable': specifier: github:fraxfinance/LayerZero-v2-upgradeable#deps/pin-oz version: https://codeload.github.com/fraxfinance/LayerZero-v2-upgradeable/tar.gz/be5ffcbd818e2e87dcd3fb30d913c1a32511489b - "@layerzerolabs/lz-evm-protocol-v2": + '@layerzerolabs/lz-evm-protocol-v2': specifier: ^3.0.107 - version: 3.0.134(@openzeppelin/contracts-upgradeable@5.2.0(@openzeppelin/contracts@5.3.0))(@openzeppelin/contracts@5.3.0)(hardhat-deploy@0.12.4)(solidity-bytes-utils@https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9) - "@openzeppelin/contracts": + version: 3.0.151(@openzeppelin/contracts-upgradeable@4.8.1)(@openzeppelin/contracts@5.3.0)(hardhat-deploy@0.12.4)(solidity-bytes-utils@https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9) + '@openzeppelin/contracts': specifier: npm:@openzeppelin/contracts@5.3.0 version: 5.3.0 - "@openzeppelin/contracts-4.8.1": + '@openzeppelin/contracts-4.8.1': specifier: npm:@openzeppelin/contracts@4.8.1 - version: "@openzeppelin/contracts@4.8.1" - "@openzeppelin/contracts-5.2.0": + version: '@openzeppelin/contracts@4.8.1' + '@openzeppelin/contracts-5.2.0': specifier: npm:@openzeppelin/contracts@5.2.0 - version: "@openzeppelin/contracts@5.2.0" - "@openzeppelin/contracts-5.3.0": + version: '@openzeppelin/contracts@5.2.0' + '@openzeppelin/contracts-5.3.0': specifier: npm:@openzeppelin/contracts@5.3.0 - version: "@openzeppelin/contracts@5.3.0" - "@openzeppelin/contracts-upgradeable-4.8.1": + version: '@openzeppelin/contracts@5.3.0' + '@openzeppelin/contracts-upgradeable-4.8.1': specifier: npm:@openzeppelin/contracts-upgradeable@4.8.1 - version: "@openzeppelin/contracts-upgradeable@4.8.1" - "@openzeppelin/contracts-upgradeable-5.2.0": + version: '@openzeppelin/contracts-upgradeable@4.8.1' + '@openzeppelin/contracts-upgradeable-5.2.0': specifier: npm:@openzeppelin/contracts-upgradeable@5.2.0 - version: "@openzeppelin/contracts-upgradeable@5.2.0(@openzeppelin/contracts@5.3.0)" - "@prb/math": + version: '@openzeppelin/contracts-upgradeable@5.2.0(@openzeppelin/contracts@5.3.0)' + '@prb/math': specifier: ^4.1.0 version: 4.1.0 ds-test: @@ -43,20 +43,16 @@ importers: version: https://codeload.github.com/foundry-rs/forge-std/tar.gz/60acb7aaadcce2d68e52986a0a66fe79f07d138f frax-standard-solidity: specifier: github:FraxFinance/frax-standard-solidity - version: https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d + version: https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/5aab6135d727fd604f31f082fd061dd983b39b23 solidity-bytes-utils: specifier: github:GNSPS/solidity-bytes-utils version: https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9 - viem: - specifier: ^2.37.8 - version: 2.37.8(typescript@5.8.3) - devDependencies: - '@openzeppelin/contracts': - specifier: ^5.4.0 - version: 5.4.0 solmate: specifier: github:transmissions11/solmate#fadb2e2778adbf01c80275bfb99e5c14969d964b version: https://codeload.github.com/transmissions11/solmate/tar.gz/fadb2e2778adbf01c80275bfb99e5c14969d964b + viem: + specifier: ^2.37.8 + version: 2.43.5(typescript@5.9.3) devDependencies: husky: specifier: ^8.0.3 @@ -66,198 +62,170 @@ importers: version: 13.3.0(enquirer@2.4.1) prettier: specifier: ^3.6.2 - version: 3.6.2 + version: 3.7.4 prettier-plugin-solidity: specifier: ^1.4.3 - version: 1.4.3(prettier@3.6.2) + version: 1.4.3(prettier@3.7.4) prettier-plugin-svelte: specifier: ^3.4.0 - version: 3.4.0(prettier@3.6.2)(svelte@5.36.16) + version: 3.4.1(prettier@3.7.4)(svelte@5.46.1) solhint: specifier: ^3.6.2 - version: 3.6.2(typescript@5.8.3) + version: 3.6.2(typescript@5.9.3) solhint-plugin-prettier: specifier: ^0.1.0 - version: 0.1.0(prettier-plugin-solidity@1.4.3(prettier@3.6.2))(prettier@3.6.2) + version: 0.1.0(prettier-plugin-solidity@1.4.3(prettier@3.7.4))(prettier@3.7.4) ts-node: specifier: ^10.9.2 - version: 10.9.2(@types/node@18.19.120)(typescript@5.8.3) + version: 10.9.2(@types/node@24.10.4)(typescript@5.9.3) typescript: specifier: ^5.8.3 - version: 5.8.3 + version: 5.9.3 packages: '@adraffy/ens-normalize@1.11.1': resolution: {integrity: sha512-nhCBV3quEgesuf7c7KYfperqSS14T8bYuvJ8PcLJp6znkZpFc0AuW4qBtr8eKVyPPe/8RSr7sglCWPU5eaxwKQ==} - '@ampproject/remapping@2.3.0': - resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} - engines: {node: '>=6.0.0'} - '@babel/code-frame@7.27.1': resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.27.1': - resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + '@babel/helper-validator-identifier@7.28.5': + resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} engines: {node: '>=6.9.0'} - '@babel/runtime@7.28.2': - resolution: {integrity: sha512-KHp2IflsnGywDjBWDkR9iEqiWSpc8GIi0lgTT3mOElT0PP1tG26P4tmFI2YvAdzgq9RGyoHZQEIEdZy6Ec5xCA==} + '@babel/runtime@7.28.4': + resolution: {integrity: sha512-Q/N6JNWvIvPnLDvjlE1OUBLPQHH6l3CltCEsHIujp45zQUSSh8K+gHnaEX45yAT1nyngnINhvWtzN+Nb9D8RAQ==} engines: {node: '>=6.9.0'} - "@ethersproject/abi@5.8.0": - resolution: - { integrity: sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q== } - "@ethersproject/abstract-provider@5.8.0": - resolution: - { integrity: sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg== } + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} - "@ethersproject/abstract-signer@5.8.0": - resolution: - { integrity: sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA== } + '@ethersproject/abi@5.8.0': + resolution: {integrity: sha512-b9YS/43ObplgyV6SlyQsG53/vkSal0MNA1fskSC4mbnCMi8R+NkcH8K9FPYNESf6jUefBUniE4SOKms0E/KK1Q==} - "@ethersproject/address@5.8.0": - resolution: - { integrity: sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA== } + '@ethersproject/abstract-provider@5.8.0': + resolution: {integrity: sha512-wC9SFcmh4UK0oKuLJQItoQdzS/qZ51EJegK6EmAWlh+OptpQ/npECOR3QqECd8iGHC0RJb4WKbVdSfif4ammrg==} - "@ethersproject/base64@5.8.0": - resolution: - { integrity: sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ== } + '@ethersproject/abstract-signer@5.8.0': + resolution: {integrity: sha512-N0XhZTswXcmIZQdYtUnd79VJzvEwXQw6PK0dTl9VoYrEBxxCPXqS0Eod7q5TNKRxe1/5WUMuR0u0nqTF/avdCA==} - "@ethersproject/basex@5.8.0": - resolution: - { integrity: sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q== } - - "@ethersproject/bignumber@5.8.0": - resolution: - { integrity: sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA== } - - "@ethersproject/bytes@5.8.0": - resolution: - { integrity: sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A== } - - "@ethersproject/constants@5.8.0": - resolution: - { integrity: sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg== } - - "@ethersproject/contracts@5.8.0": - resolution: - { integrity: sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ== } - - "@ethersproject/hash@5.8.0": - resolution: - { integrity: sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA== } - - "@ethersproject/hdnode@5.8.0": - resolution: - { integrity: sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA== } - - "@ethersproject/json-wallets@5.8.0": - resolution: - { integrity: sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w== } - - "@ethersproject/keccak256@5.8.0": - resolution: - { integrity: sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng== } - - "@ethersproject/logger@5.8.0": - resolution: - { integrity: sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA== } - - "@ethersproject/networks@5.8.0": - resolution: - { integrity: sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg== } - - "@ethersproject/pbkdf2@5.8.0": - resolution: - { integrity: sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg== } - - "@ethersproject/properties@5.8.0": - resolution: - { integrity: sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw== } - - "@ethersproject/providers@5.8.0": - resolution: - { integrity: sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw== } - - "@ethersproject/random@5.8.0": - resolution: - { integrity: sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A== } - - "@ethersproject/rlp@5.8.0": - resolution: - { integrity: sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q== } - - "@ethersproject/sha2@5.8.0": - resolution: - { integrity: sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A== } - - "@ethersproject/signing-key@5.8.0": - resolution: - { integrity: sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w== } - - "@ethersproject/solidity@5.8.0": - resolution: - { integrity: sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA== } - - "@ethersproject/strings@5.8.0": - resolution: - { integrity: sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg== } - - "@ethersproject/transactions@5.8.0": - resolution: - { integrity: sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg== } + '@ethersproject/address@5.8.0': + resolution: {integrity: sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==} - "@ethersproject/units@5.8.0": - resolution: - { integrity: sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ== } + '@ethersproject/base64@5.8.0': + resolution: {integrity: sha512-lN0oIwfkYj9LbPx4xEkie6rAMJtySbpOAFXSDVQaBnAzYfB4X2Qr+FXJGxMoc3Bxp2Sm8OwvzMrywxyw0gLjIQ==} - "@ethersproject/wallet@5.8.0": - resolution: - { integrity: sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA== } + '@ethersproject/basex@5.8.0': + resolution: {integrity: sha512-PIgTszMlDRmNwW9nhS6iqtVfdTAKosA7llYXNmGPw4YAI1PUyMv28988wAb41/gHF/WqGdoLv0erHaRcHRKW2Q==} - "@ethersproject/web@5.8.0": - resolution: - { integrity: sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw== } + '@ethersproject/bignumber@5.8.0': + resolution: {integrity: sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==} - "@ethersproject/wordlists@5.8.0": - resolution: - { integrity: sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg== } + '@ethersproject/bytes@5.8.0': + resolution: {integrity: sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==} - "@fraxfinance/layerzero-v2-upgradeable@https://codeload.github.com/fraxfinance/LayerZero-v2-upgradeable/tar.gz/be5ffcbd818e2e87dcd3fb30d913c1a32511489b": - resolution: - { - tarball: https://codeload.github.com/fraxfinance/LayerZero-v2-upgradeable/tar.gz/be5ffcbd818e2e87dcd3fb30d913c1a32511489b, - } - version: 1.0.2 - engines: { node: ">=18.12.0" } + '@ethersproject/constants@5.8.0': + resolution: {integrity: sha512-wigX4lrf5Vu+axVTIvNsuL6YrV4O5AXl5ubcURKMEME5TnWBouUh0CDTWxZ2GpnRn1kcCgE7l8O5+VbV9QTTcg==} - "@jridgewell/gen-mapping@0.3.12": - resolution: - { integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg== } + '@ethersproject/contracts@5.8.0': + resolution: {integrity: sha512-0eFjGz9GtuAi6MZwhb4uvUM216F38xiuR0yYCjKJpNfSEy4HUM8hvqqBj9Jmm0IUz8l0xKEhWwLIhPgxNY0yvQ==} - '@cspotcode/source-map-support@0.8.1': - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} + '@ethersproject/hash@5.8.0': + resolution: {integrity: sha512-ac/lBcTbEWW/VGJij0CNSw/wPcw9bSRgCB0AIBz8CvED/jfvDoV9hsIIiWfvWmFEi8RcXtlNwp2jv6ozWOsooA==} + + '@ethersproject/hdnode@5.8.0': + resolution: {integrity: sha512-4bK1VF6E83/3/Im0ERnnUeWOY3P1BZml4ZD3wcH8Ys0/d1h1xaFt6Zc+Dh9zXf9TapGro0T4wvO71UTCp3/uoA==} + + '@ethersproject/json-wallets@5.8.0': + resolution: {integrity: sha512-HxblNck8FVUtNxS3VTEYJAcwiKYsBIF77W15HufqlBF9gGfhmYOJtYZp8fSDZtn9y5EaXTE87zDwzxRoTFk11w==} + + '@ethersproject/keccak256@5.8.0': + resolution: {integrity: sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==} + + '@ethersproject/logger@5.8.0': + resolution: {integrity: sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==} + + '@ethersproject/networks@5.8.0': + resolution: {integrity: sha512-egPJh3aPVAzbHwq8DD7Po53J4OUSsA1MjQp8Vf/OZPav5rlmWUaFLiq8cvQiGK0Z5K6LYzm29+VA/p4RL1FzNg==} + + '@ethersproject/pbkdf2@5.8.0': + resolution: {integrity: sha512-wuHiv97BrzCmfEaPbUFpMjlVg/IDkZThp9Ri88BpjRleg4iePJaj2SW8AIyE8cXn5V1tuAaMj6lzvsGJkGWskg==} + + '@ethersproject/properties@5.8.0': + resolution: {integrity: sha512-PYuiEoQ+FMaZZNGrStmN7+lWjlsoufGIHdww7454FIaGdbe/p5rnaCXTr5MtBYl3NkeoVhHZuyzChPeGeKIpQw==} + + '@ethersproject/providers@5.8.0': + resolution: {integrity: sha512-3Il3oTzEx3o6kzcg9ZzbE+oCZYyY+3Zh83sKkn4s1DZfTUjIegHnN2Cm0kbn9YFy45FDVcuCLLONhU7ny0SsCw==} + + '@ethersproject/random@5.8.0': + resolution: {integrity: sha512-E4I5TDl7SVqyg4/kkA/qTfuLWAQGXmSOgYyO01So8hLfwgKvYK5snIlzxJMk72IFdG/7oh8yuSqY2KX7MMwg+A==} + + '@ethersproject/rlp@5.8.0': + resolution: {integrity: sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==} + + '@ethersproject/sha2@5.8.0': + resolution: {integrity: sha512-dDOUrXr9wF/YFltgTBYS0tKslPEKr6AekjqDW2dbn1L1xmjGR+9GiKu4ajxovnrDbwxAKdHjW8jNcwfz8PAz4A==} + + '@ethersproject/signing-key@5.8.0': + resolution: {integrity: sha512-LrPW2ZxoigFi6U6aVkFN/fa9Yx/+4AtIUe4/HACTvKJdhm0eeb107EVCIQcrLZkxaSIgc/eCrX8Q1GtbH+9n3w==} + + '@ethersproject/solidity@5.8.0': + resolution: {integrity: sha512-4CxFeCgmIWamOHwYN9d+QWGxye9qQLilpgTU0XhYs1OahkclF+ewO+3V1U0mvpiuQxm5EHHmv8f7ClVII8EHsA==} + + '@ethersproject/strings@5.8.0': + resolution: {integrity: sha512-qWEAk0MAvl0LszjdfnZ2uC8xbR2wdv4cDabyHiBh3Cldq/T8dPH3V4BbBsAYJUeonwD+8afVXld274Ls+Y1xXg==} + + '@ethersproject/transactions@5.8.0': + resolution: {integrity: sha512-UglxSDjByHG0TuU17bDfCemZ3AnKO2vYrL5/2n2oXvKzvb7Cz+W9gOWXKARjp2URVwcWlQlPOEQyAviKwT4AHg==} + + '@ethersproject/units@5.8.0': + resolution: {integrity: sha512-lxq0CAnc5kMGIiWW4Mr041VT8IhNM+Pn5T3haO74XZWFulk7wH1Gv64HqE96hT4a7iiNMdOCFEBgaxWuk8ETKQ==} + + '@ethersproject/wallet@5.8.0': + resolution: {integrity: sha512-G+jnzmgg6UxurVKRKvw27h0kvG75YKXZKdlLYmAHeF32TGUzHkOFd7Zn6QHOTYRFWnfjtSSFjBowKo7vfrXzPA==} + + '@ethersproject/web@5.8.0': + resolution: {integrity: sha512-j7+Ksi/9KfGviws6Qtf9Q7KCqRhpwrYKQPs+JBA/rKVFF/yaWLHJEH3zfVP2plVu+eys0d2DlFmhoQJayFewcw==} + + '@ethersproject/wordlists@5.8.0': + resolution: {integrity: sha512-2df9bbXicZws2Sb5S6ET493uJ0Z84Fjr3pC4tu/qlnZERibZCeUVuqdtt+7Tv9xxhUxHoIekIA7avrKUWHrezg==} + + '@fraxfinance/layerzero-v2-upgradeable@https://codeload.github.com/fraxfinance/LayerZero-v2-upgradeable/tar.gz/be5ffcbd818e2e87dcd3fb30d913c1a32511489b': + resolution: {tarball: https://codeload.github.com/fraxfinance/LayerZero-v2-upgradeable/tar.gz/be5ffcbd818e2e87dcd3fb30d913c1a32511489b} + version: 1.0.2 + engines: {node: '>=18.12.0'} - '@jridgewell/gen-mapping@0.3.12': - resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==} + '@jridgewell/gen-mapping@0.3.13': + resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} + + '@jridgewell/remapping@2.3.5': + resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==} '@jridgewell/resolve-uri@3.1.2': resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} - '@jridgewell/sourcemap-codec@1.5.4': - resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==} + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} - '@jridgewell/trace-mapping@0.3.29': - resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==} + '@jridgewell/trace-mapping@0.3.31': + resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==} '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + '@layerzerolabs/lz-evm-protocol-v2@3.0.151': + resolution: {integrity: sha512-gaSRQ8yeWz19G2PXF7L24whbOF/GKS1D2gdBjBjoS+KHLNpXOT2xfRpsgj9CebIfeuhgoaUkVQ7PdCW3gCdxbg==} + version: 3.0.151 + peerDependencies: + '@openzeppelin/contracts': ^4.8.1 || ^5.0.0 + '@openzeppelin/contracts-upgradeable': ^4.8.1 || ^5.0.0 + hardhat-deploy: ^0.12.4 + solidity-bytes-utils: ^0.8.0 + '@noble/ciphers@1.3.0': resolution: {integrity: sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==} engines: {node: ^14.21.3 || >=16} @@ -270,54 +238,28 @@ packages: resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} engines: {node: ^14.21.3 || >=16} - '@openzeppelin/contracts@5.4.0': - resolution: {integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==} - - '@prettier/sync@0.3.0': - resolution: {integrity: sha512-3dcmCyAxIcxy036h1I7MQU/uEEBq8oLwf1CE3xeze+MPlgkdlb/+w6rGR/1dhp6Hqi17fRS6nvwnOzkESxEkOw==} - "@layerzerolabs/lz-evm-protocol-v2@3.0.134": - resolution: - { integrity: sha512-SCrHfg1IdHpkB2UNhvNo/2xftd1Qmr+FlEvZT69uv9PIv/Rp6FcOOFBPpGGwFWvs19nf7vH3wJOJCJm8txfyyw== } - version: 3.0.134 - peerDependencies: - "@openzeppelin/contracts": ^4.8.1 || ^5.0.0 - "@openzeppelin/contracts-upgradeable": ^4.8.1 || ^5.0.0 - hardhat-deploy: ^0.12.4 - solidity-bytes-utils: ^0.8.0 - - "@openzeppelin/contracts-upgradeable@4.8.1": - resolution: - { integrity: sha512-1wTv+20lNiC0R07jyIAbHU7TNHKRwGiTGRfiNnA8jOWjKT98g5OgLpYWOi40Vgpk8SPLA9EvfJAbAeIyVn+7Bw== } + '@openzeppelin/contracts-upgradeable@4.8.1': + resolution: {integrity: sha512-1wTv+20lNiC0R07jyIAbHU7TNHKRwGiTGRfiNnA8jOWjKT98g5OgLpYWOi40Vgpk8SPLA9EvfJAbAeIyVn+7Bw==} - "@openzeppelin/contracts-upgradeable@5.2.0": - resolution: - { integrity: sha512-mZIu9oa4tQTlGiOJHk6D3LdJlqFqF6oNOSn6S6UVJtzfs9UsY9/dhMEbAVTwElxUtJnjpf6yA062+oBp+eOyPg== } + '@openzeppelin/contracts-upgradeable@5.2.0': + resolution: {integrity: sha512-mZIu9oa4tQTlGiOJHk6D3LdJlqFqF6oNOSn6S6UVJtzfs9UsY9/dhMEbAVTwElxUtJnjpf6yA062+oBp+eOyPg==} peerDependencies: - "@openzeppelin/contracts": 5.2.0 + '@openzeppelin/contracts': 5.2.0 - "@openzeppelin/contracts@4.8.1": - resolution: - { integrity: sha512-xQ6eUZl+RDyb/FiZe1h+U7qr/f4p/SrTSQcTPH2bjur3C5DbuW/zFgCU/b1P/xcIaEqJep+9ju4xDRi3rmChdQ== } + '@openzeppelin/contracts@4.8.1': + resolution: {integrity: sha512-xQ6eUZl+RDyb/FiZe1h+U7qr/f4p/SrTSQcTPH2bjur3C5DbuW/zFgCU/b1P/xcIaEqJep+9ju4xDRi3rmChdQ==} - "@openzeppelin/contracts@5.2.0": - resolution: - { integrity: sha512-bxjNie5z89W1Ea0NZLZluFh8PrFNn9DH8DQlujEok2yjsOlraUPKID5p1Wk3qdNbf6XkQ1Os2RvfiHrrXLHWKA== } + '@openzeppelin/contracts@5.2.0': + resolution: {integrity: sha512-bxjNie5z89W1Ea0NZLZluFh8PrFNn9DH8DQlujEok2yjsOlraUPKID5p1Wk3qdNbf6XkQ1Os2RvfiHrrXLHWKA==} - "@openzeppelin/contracts@5.3.0": - resolution: - { integrity: sha512-zj/KGoW7zxWUE8qOI++rUM18v+VeLTTzKs/DJFkSzHpQFPD/jKKF0TrMxBfGLl3kpdELCNccvB3zmofSzm4nlA== } + '@openzeppelin/contracts@5.3.0': + resolution: {integrity: sha512-zj/KGoW7zxWUE8qOI++rUM18v+VeLTTzKs/DJFkSzHpQFPD/jKKF0TrMxBfGLl3kpdELCNccvB3zmofSzm4nlA==} - "@openzeppelin/contracts@5.4.0": - resolution: - { integrity: sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A== } + '@prb/math@4.1.0': + resolution: {integrity: sha512-ef5Xrlh3BeX4xT5/Wi810dpEPq2bYPndRxgFIaKSU1F/Op/s8af03kyom+mfU7gEpvfIZ46xu8W0duiHplbBMg==} - "@prb/math@4.1.0": - resolution: - { integrity: sha512-ef5Xrlh3BeX4xT5/Wi810dpEPq2bYPndRxgFIaKSU1F/Op/s8af03kyom+mfU7gEpvfIZ46xu8W0duiHplbBMg== } - - "@prettier/sync@0.3.0": - resolution: - { integrity: sha512-3dcmCyAxIcxy036h1I7MQU/uEEBq8oLwf1CE3xeze+MPlgkdlb/+w6rGR/1dhp6Hqi17fRS6nvwnOzkESxEkOw== } + '@prettier/sync@0.3.0': + resolution: {integrity: sha512-3dcmCyAxIcxy036h1I7MQU/uEEBq8oLwf1CE3xeze+MPlgkdlb/+w6rGR/1dhp6Hqi17fRS6nvwnOzkESxEkOw==} peerDependencies: prettier: ^3.0.0 @@ -336,13 +278,13 @@ packages: '@solidity-parser/parser@0.20.2': resolution: {integrity: sha512-rbu0bzwNvMcwAjH86hiEAcOeRI2EeK8zCkHDrFykh/Al8mvJeFmjy3UrE7GYQjNwOgbGUUtCn5/k8CB8zIu7QA==} - '@sveltejs/acorn-typescript@1.0.5': - resolution: {integrity: sha512-IwQk4yfwLdibDlrXVE04jTZYlLnwsTT2PIOQQGNLWfjavGifnk1JD1LcZjZaBTRcxZu2FfPfNLOE04DSu9lqtQ==} + '@sveltejs/acorn-typescript@1.0.8': + resolution: {integrity: sha512-esgN+54+q0NjB0Y/4BomT9samII7jGwNy/2a3wNZbT2A2RpmXsXwUt24LvLhx6jUq2gVk4cWEvcRO6MFQbOfNA==} peerDependencies: acorn: ^8.9.0 - '@tsconfig/node10@1.0.11': - resolution: {integrity: sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==} + '@tsconfig/node10@1.0.12': + resolution: {integrity: sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ==} '@tsconfig/node12@1.0.11': resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} @@ -362,11 +304,14 @@ packages: '@types/jsonfile@6.1.4': resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==} - '@types/node@18.19.120': - resolution: {integrity: sha512-WtCGHFXnVI8WHLxDAt5TbnCM4eSE+nI0QN2NJtwzcgMhht2eNz6V9evJrk+lwC8bCY8OWV5Ym8Jz7ZEyGnKnMA==} + '@types/node@24.10.4': + resolution: {integrity: sha512-vnDVpYPMzs4wunl27jHrfmwojOGKya0xyM3sH+UE5iv5uPS6vX7UIoh6m+vQc5LGBq52HBKPIn/zcSZVzeDEZg==} + + '@types/qs@6.14.0': + resolution: {integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ==} - abitype@1.1.0: - resolution: {integrity: sha512-6Vh4HcRxNMLA0puzPjM5GBgT4aAcFGKZzSgAXvuZ27shJP6NEpielTuqbBmZILR5/xd0PizkBGy5hReKz9jl5A==} + abitype@1.2.3: + resolution: {integrity: sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg==} peerDependencies: typescript: '>=5.0.4' zod: ^3.22.0 || ^4.0.0 @@ -376,10 +321,6 @@ packages: zod: optional: true - "@types/qs@6.14.0": - resolution: - { integrity: sha512-eOunJqu0K1923aExK6y8p6fsihYEn/BYuQ4g0CxAAgFc4b/ZLN4CrsRZ55srTdqoiLzU2B2evC+apEIxprEzkQ== } - acorn-walk@8.3.4: resolution: {integrity: sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==} engines: {node: '>=0.4.0'} @@ -390,8 +331,7 @@ packages: hasBin: true aes-js@3.0.0: - resolution: - { integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== } + resolution: {integrity: sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw==} ajv@6.12.6: resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} @@ -400,32 +340,31 @@ packages: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} ansi-colors@4.1.3: - resolution: - { integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== } - engines: { node: ">=6" } + resolution: {integrity: sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==} + engines: {node: '>=6'} ansi-escapes@5.0.0: resolution: {integrity: sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==} engines: {node: '>=12'} - ansi-escapes@7.0.0: - resolution: {integrity: sha512-GdYO7a61mR0fOlAsvC9/rIHf7L96sBc6dEWzeOu+KAea5bZyQRPIpojrVoI4AXGJS/ycu/fBTdLrUkA4ODrvjw==} + ansi-escapes@7.2.0: + resolution: {integrity: sha512-g6LhBsl+GBPRWGWsBtutpzBYuIIdBkLEvad5C/va/74Db018+5TZiyA26cZJAr3Rft5lprVqOIPxf5Vid6tqAw==} engines: {node: '>=18'} ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.1.0: - resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==} + ansi-regex@6.2.2: + resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==} engines: {node: '>=12'} ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} - ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + ansi-styles@6.2.3: + resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==} engines: {node: '>=12'} antlr4@4.13.2: @@ -436,9 +375,8 @@ packages: resolution: {integrity: sha512-WPQDt1B74OfPv/IMS2ekXAKkTZIHl88uMetg6q3OTqgFxZ/dxDXI0EWLyZid/1Pe6hTftyg5N7gel5wNAGxXyQ==} anymatch@3.1.3: - resolution: - { integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== } - engines: { node: ">= 8" } + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} arg@4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} @@ -458,12 +396,10 @@ packages: engines: {node: '>=8'} asynckit@0.4.0: - resolution: - { integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== } + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} axios@0.21.4: - resolution: - { integrity: sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== } + resolution: {integrity: sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==} axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} @@ -473,21 +409,17 @@ packages: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} bech32@1.1.4: - resolution: - { integrity: sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== } + resolution: {integrity: sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==} binary-extensions@2.3.0: - resolution: - { integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== } - engines: { node: ">=8" } + resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==} + engines: {node: '>=8'} bn.js@4.12.2: - resolution: - { integrity: sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw== } + resolution: {integrity: sha512-n4DSx829VRTRByMRGdjQ9iqsN0Bh4OolPsFnaZBLcbi8iXcB+kJ9s7EnRt4wILZNV3kPLHkRVfOc/HvhC3ovDw==} bn.js@5.2.2: - resolution: - { integrity: sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw== } + resolution: {integrity: sha512-v2YAxEmKaBLahNwE1mjp4WON6huMNeuDvagFZW+ASCuA/ku0bXR9hSMw0XpiqMoA3+rmnyck/tPRSFQkoC9Cuw==} brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} @@ -497,18 +429,15 @@ packages: engines: {node: '>=8'} brorand@1.1.0: - resolution: - { integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== } + resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==} call-bind-apply-helpers@1.0.2: - resolution: - { integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==} + engines: {node: '>= 0.4'} call-bound@1.0.4: - resolution: - { integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==} + engines: {node: '>= 0.4'} callsites@3.1.0: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} @@ -528,17 +457,12 @@ packages: resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - chalk@5.4.1: - resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - change-case@4.1.2: resolution: {integrity: sha512-bSxY2ws9OtviILG1EiY5K7NNxkqg/JnRnFxLtKQ96JaviiIxi7djMrSd0ECT9AC+lttClmYwKw53BWpOMblo7A==} chokidar@3.6.0: - resolution: - { integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== } - engines: { node: ">= 8.10.0" } + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} cli-cursor@4.0.0: resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} @@ -552,9 +476,9 @@ packages: resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - cli-truncate@4.0.0: - resolution: {integrity: sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==} - engines: {node: '>=18'} + cli-truncate@5.1.1: + resolution: {integrity: sha512-SroPvNHxUnk+vIW/dOSfNqdy1sPEFkrTk6TUtqLCnBlo3N7TNYYkzzN7uSD6+jVjrdO4+p8nH7JzH6cIvUem6A==} + engines: {node: '>=20'} clsx@2.1.1: resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==} @@ -571,9 +495,8 @@ packages: resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==} combined-stream@1.0.8: - resolution: - { integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== } - engines: { node: ">= 0.8" } + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} command-exists@1.2.9: resolution: {integrity: sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w==} @@ -586,8 +509,8 @@ packages: resolution: {integrity: sha512-9HMlXtt/BNoYr8ooyjjNRdIilOTkVJXB+GhxMTtOKwk0R4j4lS4NpjuqmRxroBfnfTSHQIHQB7wryHhXarNjmQ==} engines: {node: '>=16'} - commander@14.0.0: - resolution: {integrity: sha512-2uM9rYjPvyq39NwLRqaiLtWHyDC1FvryJDa2ATTVims5YAS4PupsEQsDvP14FqhFr0P49CYDugi59xaxJlTXRA==} + commander@14.0.2: + resolution: {integrity: sha512-TywoWNNRbhoD0BXs1P3ZEScW8W5iKrnbithIl0YH+uCmBd0QpPOA8yc82DS3BIE5Ma6FnBVUsJ7wVUDz4dvOWQ==} engines: {node: '>=20'} commander@8.3.0: @@ -626,8 +549,8 @@ packages: supports-color: optional: true - debug@4.4.1: - resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + debug@4.4.3: + resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -636,9 +559,11 @@ packages: optional: true delayed-stream@1.0.0: - resolution: - { integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== } - engines: { node: ">=0.4.0" } + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + devalue@5.6.1: + resolution: {integrity: sha512-jDwizj+IlEZBunHcOuuFVBnIMPAEHvTsJj0BcIp94xYguLRVBcXO853px/MyIJvbVzWdsGvrRweIUWJw8hBP7A==} diff@4.0.2: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} @@ -652,19 +577,17 @@ packages: version: 1.0.0 dunder-proto@1.0.1: - resolution: - { integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} + engines: {node: '>= 0.4'} eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} elliptic@6.6.1: - resolution: - { integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g== } + resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==} - emoji-regex@10.4.0: - resolution: {integrity: sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw==} + emoji-regex@10.6.0: + resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} emoji-regex@8.0.0: resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} @@ -673,50 +596,43 @@ packages: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} encode-utf8@1.0.3: - resolution: - { integrity: sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw== } + resolution: {integrity: sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==} enquirer@2.4.1: - resolution: - { integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ== } - engines: { node: ">=8.6" } + resolution: {integrity: sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==} + engines: {node: '>=8.6'} environment@1.1.0: resolution: {integrity: sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==} engines: {node: '>=18'} - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + error-ex@1.3.4: + resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==} es-define-property@1.0.1: - resolution: - { integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} + engines: {node: '>= 0.4'} es-errors@1.3.0: - resolution: - { integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} + engines: {node: '>= 0.4'} es-object-atoms@1.1.1: - resolution: - { integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} + engines: {node: '>= 0.4'} es-set-tostringtag@2.1.0: - resolution: - { integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==} + engines: {node: '>= 0.4'} esm-env@1.2.2: resolution: {integrity: sha512-Epxrv+Nr/CaL4ZcFGPJIYLWFom+YeV1DqMLHJoEd9SYRxNbaFruBwfEX/kkHUJf55j2+TUbmDcmuilbP1TmXHA==} - esrap@2.1.0: - resolution: {integrity: sha512-yzmPNpl7TBbMRC5Lj2JlJZNPml0tzqoqP5B1JXycNUwtqma9AKCO0M2wHrdgsHcy1WRW7S9rJknAMtByg3usgA==} + esrap@2.2.1: + resolution: {integrity: sha512-GiYWG34AN/4CUyaWAgunGt0Rxvr1PTMlGC0vvEov/uOQYWne2bpN03Um+k8jT+q3op33mKouP2zeJ6OlM+qeUg==} ethers@5.8.0: - resolution: - { integrity: sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg== } + resolution: {integrity: sha512-DUq+7fHrCg1aPDFCHx6UIPb3nmt2XMpM7Y/g2gLhsl3lIBqeAfOJIl1qEvRf2uq3BiKxmh6Fh5pfp2ieyek7Kg==} eventemitter3@5.0.1: resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} @@ -734,19 +650,18 @@ packages: fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} - fast-uri@3.0.6: - resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} fmix@0.1.0: - resolution: - { integrity: sha512-Y6hyofImk9JdzU8k5INtTXX1cu8LDlePWDFU5sftm9H+zKCr5SGrVjdhkvsim646cw5zD0nADj8oHyXMZmCZ9w== } + resolution: {integrity: sha512-Y6hyofImk9JdzU8k5INtTXX1cu8LDlePWDFU5sftm9H+zKCr5SGrVjdhkvsim646cw5zD0nADj8oHyXMZmCZ9w==} - follow-redirects@1.15.9: - resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==} + follow-redirects@1.15.11: + resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -758,59 +673,52 @@ packages: resolution: {tarball: https://codeload.github.com/foundry-rs/forge-std/tar.gz/60acb7aaadcce2d68e52986a0a66fe79f07d138f} version: 1.9.7 - form-data@4.0.4: - resolution: - { integrity: sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== } - engines: { node: ">= 6" } + form-data@4.0.5: + resolution: {integrity: sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==} + engines: {node: '>= 6'} - frax-standard-solidity@https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d: - resolution: {tarball: https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d} - version: 1.1.0 + frax-standard-solidity@https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/5aab6135d727fd604f31f082fd061dd983b39b23: + resolution: {tarball: https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/5aab6135d727fd604f31f082fd061dd983b39b23} + version: 1.1.3 fs-extra@10.1.0: - resolution: - { integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ== } - engines: { node: ">=12" } + resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} + engines: {node: '>=12'} - fs-extra@11.3.0: - resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==} + fs-extra@11.3.3: + resolution: {integrity: sha512-VWSRii4t0AFm6ixFFmLLx1t7wS1gh+ckoa84aOeapGum0h+EZd1EhEumSB+ZdDLnEPuucsVB9oB7cxJHap6Afg==} engines: {node: '>=14.14'} fs.realpath@1.0.0: resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} fsevents@2.3.3: - resolution: - { integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== } - engines: { node: ^8.16.0 || ^10.6.0 || >=11.0.0 } + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] function-bind@1.1.2: - resolution: - { integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== } + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - get-east-asian-width@1.3.0: - resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} + get-east-asian-width@1.4.0: + resolution: {integrity: sha512-QZjmEOC+IT1uk6Rx0sX22V6uHWVwbdbxf1faPqJ1QhLdGgsRGCZoyaQBm/piRdJy/D2um6hM1UP7ZEeQ4EkP+Q==} engines: {node: '>=18'} get-intrinsic@1.3.0: - resolution: - { integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==} + engines: {node: '>= 0.4'} get-proto@1.0.1: - resolution: - { integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==} + engines: {node: '>= 0.4'} get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} engines: {node: '>=10'} glob-parent@5.1.2: - resolution: - { integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== } - engines: { node: ">= 6" } + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} glob@8.1.0: resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} @@ -818,46 +726,39 @@ packages: deprecated: Glob versions prior to v9 are no longer supported gopd@1.2.0: - resolution: - { integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} hardhat-deploy@0.12.4: - resolution: - { integrity: sha512-bYO8DIyeGxZWlhnMoCBon9HNZb6ji0jQn7ngP1t5UmGhC8rQYhji7B73qETMOFhzt5ECZPr+U52duj3nubsqdQ== } + resolution: {integrity: sha512-bYO8DIyeGxZWlhnMoCBon9HNZb6ji0jQn7ngP1t5UmGhC8rQYhji7B73qETMOFhzt5ECZPr+U52duj3nubsqdQ==} has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} has-symbols@1.1.0: - resolution: - { integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} + engines: {node: '>= 0.4'} has-tostringtag@1.0.2: - resolution: - { integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==} + engines: {node: '>= 0.4'} hash.js@1.1.7: - resolution: - { integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== } + resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==} hasown@2.0.2: - resolution: - { integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} + engines: {node: '>= 0.4'} header-case@2.0.4: resolution: {integrity: sha512-H/vuk5TEEVZwrR0lp2zed9OCo1uAILMlx0JEMgC26rzyJJ3N1v6XkwHHXJQdR2doSjcGPM6OKPYoJgf0plJ11Q==} hmac-drbg@1.0.1: - resolution: - { integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== } + resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==} human-signals@4.3.1: resolution: {integrity: sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==} @@ -877,9 +778,8 @@ packages: engines: {node: '>=6'} imul@1.0.1: - resolution: - { integrity: sha512-WFAgfwPLAjU66EKt6vRdTlKj4nAgIDQzh29JonLa4Bqtl6D8JrIMvWjCnx7xEjVNmP3U0fM5o8ZObk7d0f62bA== } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-WFAgfwPLAjU66EKt6vRdTlKj4nAgIDQzh29JonLa4Bqtl6D8JrIMvWjCnx7xEjVNmP3U0fM5o8ZObk7d0f62bA==} + engines: {node: '>=0.10.0'} inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} @@ -892,14 +792,12 @@ packages: resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} is-binary-path@2.1.0: - resolution: - { integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== } - engines: { node: ">=8" } + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} is-extglob@2.1.1: - resolution: - { integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} is-fullwidth-code-point@3.0.0: resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} @@ -909,14 +807,13 @@ packages: resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} engines: {node: '>=12'} - is-fullwidth-code-point@5.0.0: - resolution: {integrity: sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==} + is-fullwidth-code-point@5.1.0: + resolution: {integrity: sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==} engines: {node: '>=18'} is-glob@4.0.3: - resolution: - { integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} is-number@7.0.0: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} @@ -943,8 +840,8 @@ packages: js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} hasBin: true json-parse-even-better-errors@2.3.1: @@ -956,17 +853,13 @@ packages: json-schema-traverse@1.0.0: resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + jsonfile@6.2.0: + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} lilconfig@2.1.0: resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==} engines: {node: '>=10'} - lilconfig@3.1.3: - resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==} - engines: {node: '>=14'} - lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} @@ -975,8 +868,8 @@ packages: engines: {node: ^16.14.0 || >=18.0.0} hasBin: true - lint-staged@16.1.2: - resolution: {integrity: sha512-sQKw2Si2g9KUZNY3XNvRuDq4UJqpHwF0/FQzZR2M7I5MvtpWvibikCjUVJzZdGE0ByurEl3KQNvsGetd1ty1/Q==} + lint-staged@16.2.7: + resolution: {integrity: sha512-lDIj4RnYmK7/kXMya+qJsmkRFkGolciXjrsZ6PC25GdTfWOAWetR0ZbsNXRAj1EHHImRSalc+whZFg56F5DVow==} engines: {node: '>=20.17'} hasBin: true @@ -989,9 +882,9 @@ packages: enquirer: optional: true - listr2@8.3.3: - resolution: {integrity: sha512-LWzX2KsqcB1wqQ4AHgYb4RsDXauQiqhjLk+6hjbaeHG4zpjjVAB6wC/gz6X0l+Du1cN3pUB5ZlrvTbhGSNnUQQ==} - engines: {node: '>=18.0.0'} + listr2@9.0.5: + resolution: {integrity: sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==} + engines: {node: '>=20.0.0'} locate-character@3.0.0: resolution: {integrity: sha512-SW13ws7BjaeJ6p7Q6CO2nchbYEc3X3J6WrmTTDto7yMPqVSZTUyY5Tjbid+Ab8gLnATtygYtiDIJGQRRn2ZOiA==} @@ -1013,20 +906,18 @@ packages: lower-case@2.0.2: resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} - magic-string@0.30.17: - resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==} + magic-string@0.30.21: + resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==} make-error@1.3.6: resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} match-all@1.2.7: - resolution: - { integrity: sha512-qSpsBKarh55r9KyXzFC3xBLRf2GlGasba2em9kbpRsSlGvdTAqjx3QD0r3FKSARiW+OE4iMHYsolM3aX9n5djw== } + resolution: {integrity: sha512-qSpsBKarh55r9KyXzFC3xBLRf2GlGasba2em9kbpRsSlGvdTAqjx3QD0r3FKSARiW+OE4iMHYsolM3aX9n5djw==} math-intrinsics@1.1.0: - resolution: - { integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} + engines: {node: '>= 0.4'} memorystream@0.3.1: resolution: {integrity: sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==} @@ -1044,14 +935,12 @@ packages: engines: {node: '>=8.6'} mime-db@1.52.0: - resolution: - { integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== } - engines: { node: ">= 0.6" } + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} mime-types@2.1.35: - resolution: - { integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== } - engines: { node: ">= 0.6" } + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} @@ -1066,12 +955,10 @@ packages: engines: {node: '>=18'} minimalistic-assert@1.0.1: - resolution: - { integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== } + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} minimalistic-crypto-utils@1.0.1: - resolution: - { integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== } + resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==} minimatch@5.1.6: resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} @@ -1084,29 +971,26 @@ packages: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} murmur-128@0.2.1: - resolution: - { integrity: sha512-WseEgiRkI6aMFBbj8Cg9yBj/y+OdipwVC7zUo3W2W1JAJITwouUOtpqsmGSg67EQmwwSyod7hsVsWY5LsrfQVg== } + resolution: {integrity: sha512-WseEgiRkI6aMFBbj8Cg9yBj/y+OdipwVC7zUo3W2W1JAJITwouUOtpqsmGSg67EQmwwSyod7hsVsWY5LsrfQVg==} - nano-spawn@1.0.2: - resolution: {integrity: sha512-21t+ozMQDAL/UGgQVBbZ/xXvNO10++ZPuTmKRO8k9V3AClVRht49ahtDjfY8l1q6nSHOrE5ASfthzH3ol6R/hg==} + nano-spawn@2.0.0: + resolution: {integrity: sha512-tacvGzUY5o2D8CBh2rrwxyNojUsZNU2zjNTzKQrkgGJQTbGAfArVWXSKMBokBeeg6C7OLRGUEyoFlYbfeWQIqw==} engines: {node: '>=20.17'} no-case@3.0.4: resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} normalize-path@3.0.0: - resolution: - { integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== } - engines: { node: ">=0.10.0" } + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} npm-run-path@5.3.0: resolution: {integrity: sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} object-inspect@1.13.4: - resolution: - { integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==} + engines: {node: '>= 0.4'} once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -1127,8 +1011,8 @@ packages: resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} engines: {node: '>=0.10.0'} - ox@0.9.6: - resolution: {integrity: sha512-8SuCbHPvv2eZLYXrNmC0EC12rdzXQLdhnOMlHDW2wiCPLxBrOOJwX5L5E61by+UjTPOryqQiRSnjIKCI+GykKg==} + ox@0.11.1: + resolution: {integrity: sha512-1l1gOLAqg0S0xiN1dH5nkPna8PucrZgrIJOfS49MLNiMevxu07Iz4ZjuJS9N+xifvT+PsZyIptS7WHM8nC+0+A==} peerDependencies: typescript: '>=5.4.0' peerDependenciesMeta: @@ -1180,8 +1064,8 @@ packages: resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} engines: {node: '>=4'} - prettier-linter-helpers@1.0.0: - resolution: {integrity: sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==} + prettier-linter-helpers@1.0.1: + resolution: {integrity: sha512-SxToR7P8Y2lWmv/kTzVLC1t/GDI2WGjMwNhLLE9qtH8Q13C+aEmuRlzDst4Up4s0Wc8sF2M+J57iB3cMLqftfg==} engines: {node: '>=6.0.0'} prettier-plugin-solidity@1.4.3: @@ -1190,8 +1074,8 @@ packages: peerDependencies: prettier: '>=2.3.0' - prettier-plugin-svelte@3.4.0: - resolution: {integrity: sha512-pn1ra/0mPObzqoIQn/vUTR3ZZI6UuZ0sHqMK5x2jMLGrs53h0sXhkVuDcrlssHwIMk7FYrMjHBPoUSyyEEDlBQ==} + prettier-plugin-svelte@3.4.1: + resolution: {integrity: sha512-xL49LCloMoZRvSwa6IEdN2GV6cq2IqpYGstYtMT+5wmml1/dClEoI0MZR78MiVPpu6BdQFfN0/y73yO6+br5Pg==} peerDependencies: prettier: ^3.0.0 svelte: ^3.2.0 || ^4.0.0-next.0 || ^5.0.0-next.0 @@ -1201,8 +1085,8 @@ packages: engines: {node: '>=10.13.0'} hasBin: true - prettier@3.6.2: - resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==} + prettier@3.7.4: + resolution: {integrity: sha512-v6UNi1+3hSlVvv8fSaoUbggEM5VErKmmpGA7Pl3HF8V6uKY7rvClBOJlH6yNwQtfTueNkGVpOv/mtWL9L4bgRA==} engines: {node: '>=14'} hasBin: true @@ -1210,15 +1094,13 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - qs@6.14.0: - resolution: - { integrity: sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w== } - engines: { node: ">=0.6" } + qs@6.14.1: + resolution: {integrity: sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==} + engines: {node: '>=0.6'} readdirp@3.6.0: - resolution: - { integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== } - engines: { node: ">=8.10.0" } + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} require-from-string@2.0.2: resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} @@ -1240,15 +1122,14 @@ packages: resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==} scrypt-js@3.0.1: - resolution: - { integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== } + resolution: {integrity: sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==} semver@5.7.2: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true - semver@7.7.2: - resolution: {integrity: sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA==} + semver@7.7.3: + resolution: {integrity: sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==} engines: {node: '>=10'} hasBin: true @@ -1264,24 +1145,20 @@ packages: engines: {node: '>=8'} side-channel-list@1.0.0: - resolution: - { integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} side-channel-map@1.0.1: - resolution: - { integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} side-channel-weakmap@1.0.2: - resolution: - { integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} side-channel@1.1.0: - resolution: - { integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== } - engines: { node: ">= 0.4" } + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} + engines: {node: '>= 0.4'} signal-exit@3.0.7: resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} @@ -1298,15 +1175,15 @@ packages: resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} engines: {node: '>=12'} - slice-ansi@7.1.0: - resolution: {integrity: sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==} + slice-ansi@7.1.2: + resolution: {integrity: sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==} engines: {node: '>=18'} snake-case@3.0.4: resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} - solc@0.8.30: - resolution: {integrity: sha512-9Srk/gndtBmoUbg4CE6ypAzPQlElv8ntbnl6SigUBAzgXKn35v87sj04uZeoZWjtDkdzT0qKFcIo/wl63UMxdw==} + solc@0.8.33: + resolution: {integrity: sha512-qPdHuAeg+DccqYz4Mq4grc7lOdgLA8wB8meCrMHcVXj70noKZhfAMzOCcOD/4RODZnn+sV3V6fWEyUkeVaBPVQ==} engines: {node: '>=12.0.0'} hasBin: true @@ -1328,8 +1205,7 @@ packages: version: 0.8.4 solmate@https://codeload.github.com/transmissions11/solmate/tar.gz/fadb2e2778adbf01c80275bfb99e5c14969d964b: - resolution: - { tarball: https://codeload.github.com/transmissions11/solmate/tar.gz/fadb2e2778adbf01c80275bfb99e5c14969d964b } + resolution: {tarball: https://codeload.github.com/transmissions11/solmate/tar.gz/fadb2e2778adbf01c80275bfb99e5c14969d964b} version: 6.2.0 string-argv@0.3.2: @@ -1348,12 +1224,16 @@ packages: resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} engines: {node: '>=18'} + string-width@8.1.0: + resolution: {integrity: sha512-Kxl3KJGb/gxkaUMOjRsQ8IrXiGW75O4E3RPjFIINOVH8AMl2SQ/yWdTzWwF3FevIX9LcMAjJW+GRwAlAbTSXdg==} + engines: {node: '>=20'} + strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} - strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + strip-ansi@7.1.2: + resolution: {integrity: sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==} engines: {node: '>=12'} strip-final-newline@3.0.0: @@ -1364,8 +1244,8 @@ packages: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} - svelte@5.36.16: - resolution: {integrity: sha512-C7HnyISfvZEofs7T4p7+bmjrbQlhd6lZfgV2tLYg6Eb3nUFM/Zu9dGlSg+GWbUBU/WPw6zDPOFNZAx9qXsoCkg==} + svelte@5.46.1: + resolution: {integrity: sha512-ynjfCHD3nP2el70kN5Pmg37sSi0EjOm9FgHYQdC4giWG/hzO3AatzXXJJgP305uIhGQxSufJLuYWtkY8uK/8RA==} engines: {node: '>=18'} table@6.9.0: @@ -1407,13 +1287,13 @@ packages: resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} engines: {node: '>=10'} - typescript@5.8.3: - resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + typescript@5.9.3: + resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} engines: {node: '>=14.17'} hasBin: true - undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + undici-types@7.16.0: + resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} universalify@2.0.1: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} @@ -1431,8 +1311,8 @@ packages: v8-compile-cache-lib@3.0.1: resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - viem@2.37.8: - resolution: {integrity: sha512-mL+5yvCQbRIR6QvngDQMfEiZTfNWfd+/QL5yFaOoYbpH3b1Q2ddwF7YG2eI2AcYSh9LE1gtUkbzZLFUAVyj4oQ==} + viem@2.43.5: + resolution: {integrity: sha512-QuJpuEMEPM3EreN+vX4mVY68Sci0+zDxozYfbh/WfV+SSy/Gthm74PH8XmitXdty1xY54uTCJ+/Gbbd1IiMPSA==} peerDependencies: typescript: '>=5.0.4' peerDependenciesMeta: @@ -1448,15 +1328,15 @@ packages: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} engines: {node: '>=12'} - wrap-ansi@9.0.0: - resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} + wrap-ansi@9.0.2: + resolution: {integrity: sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==} engines: {node: '>=18'} wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - ws@8.18.3: - resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + ws@8.18.0: + resolution: {integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -1467,13 +1347,12 @@ packages: utf-8-validate: optional: true - ws@8.18.0: - resolution: - { integrity: sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== } - engines: { node: ">=10.0.0" } + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 - utf-8-validate: ">=5.0.2" + utf-8-validate: '>=5.0.2' peerDependenciesMeta: bufferutil: optional: true @@ -1484,8 +1363,8 @@ packages: resolution: {integrity: sha512-2eHWfjaoXgTBC2jNM1LRef62VQa0umtvRiDSk6HSzW7RvS5YtkabJrwYLLEKWBc8a5U2PTSCs+dJjUTJdlHsWQ==} engines: {node: '>= 14'} - yaml@2.8.0: - resolution: {integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==} + yaml@2.8.2: + resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} engines: {node: '>= 14.6'} hasBin: true @@ -1493,13 +1372,12 @@ packages: resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} engines: {node: '>=6'} - zimmerframe@1.1.2: - resolution: {integrity: sha512-rAbqEGa8ovJy4pyBxZM70hg4pE6gDgaQ0Sl9M3enG3I0d6H4XSAM3GeNGLKnsBpuijUow064sf7ww1nutC5/3w==} + zimmerframe@1.1.4: + resolution: {integrity: sha512-B58NGBEoc8Y9MWWCQGl/gq9xBCe4IiKM0a2x7GZdQKOW5Exr8S1W24J6OgM1njK8xCRGvAJIL/MxXHf6SkmQKQ==} - zksync-ethers@5.10.0: - resolution: - { integrity: sha512-OAjTGAHF9wbdkRGkj7XZuF/a1Sk/FVbwH4pmLjAKlR7mJ7sQtQhBhrPU2dCc67xLaNvEESPfwil19ES5wooYFg== } - engines: { node: ">=16.0.0" } + zksync-ethers@5.11.1: + resolution: {integrity: sha512-Znl2p0gporGnHbAO0KKM1TIQpyRQKCi8nf1kOlZuTVCvlgBwhweWjTy53le96ZOoR3J5LUXAk7aYil2czSLJZw==} + engines: {node: '>=16.0.0'} peerDependencies: ethers: ~5.7.0 @@ -1507,302 +1385,307 @@ snapshots: '@adraffy/ens-normalize@1.11.1': {} - '@ampproject/remapping@2.3.0': - dependencies: - '@jridgewell/gen-mapping': 0.3.12 - '@jridgewell/trace-mapping': 0.3.29 - '@babel/code-frame@7.27.1': dependencies: - '@babel/helper-validator-identifier': 7.27.1 + '@babel/helper-validator-identifier': 7.28.5 js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/helper-validator-identifier@7.27.1': {} + '@babel/helper-validator-identifier@7.28.5': {} - '@babel/runtime@7.28.2': {} + '@babel/runtime@7.28.4': {} '@cspotcode/source-map-support@0.8.1': dependencies: '@jridgewell/trace-mapping': 0.3.9 - '@jridgewell/gen-mapping@0.3.12': - "@ethersproject/abi@5.8.0": + '@ethersproject/abi@5.8.0': dependencies: - "@ethersproject/address": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/hash": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/strings": 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 - "@ethersproject/abstract-provider@5.8.0": + '@ethersproject/abstract-provider@5.8.0': dependencies: - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/networks": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/transactions": 5.8.0 - "@ethersproject/web": 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 - "@ethersproject/abstract-signer@5.8.0": + '@ethersproject/abstract-signer@5.8.0': dependencies: - "@ethersproject/abstract-provider": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 - "@ethersproject/address@5.8.0": + '@ethersproject/address@5.8.0': dependencies: - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/rlp": 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/rlp': 5.8.0 - "@ethersproject/base64@5.8.0": + '@ethersproject/base64@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 + '@ethersproject/bytes': 5.8.0 - "@ethersproject/basex@5.8.0": + '@ethersproject/basex@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/properties": 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/properties': 5.8.0 - "@ethersproject/bignumber@5.8.0": + '@ethersproject/bignumber@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 bn.js: 5.2.2 - "@ethersproject/bytes@5.8.0": - dependencies: - "@ethersproject/logger": 5.8.0 - - "@ethersproject/constants@5.8.0": - dependencies: - "@ethersproject/bignumber": 5.8.0 - - "@ethersproject/contracts@5.8.0": - dependencies: - "@ethersproject/abi": 5.8.0 - "@ethersproject/abstract-provider": 5.8.0 - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/address": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/transactions": 5.8.0 - - "@ethersproject/hash@5.8.0": - dependencies: - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/address": 5.8.0 - "@ethersproject/base64": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/strings": 5.8.0 - - "@ethersproject/hdnode@5.8.0": - dependencies: - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/basex": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/pbkdf2": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/sha2": 5.8.0 - "@ethersproject/signing-key": 5.8.0 - "@ethersproject/strings": 5.8.0 - "@ethersproject/transactions": 5.8.0 - "@ethersproject/wordlists": 5.8.0 - - "@ethersproject/json-wallets@5.8.0": - dependencies: - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/address": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/hdnode": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/pbkdf2": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/random": 5.8.0 - "@ethersproject/strings": 5.8.0 - "@ethersproject/transactions": 5.8.0 + '@ethersproject/bytes@5.8.0': + dependencies: + '@ethersproject/logger': 5.8.0 + + '@ethersproject/constants@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + + '@ethersproject/contracts@5.8.0': + dependencies: + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/transactions': 5.8.0 + + '@ethersproject/hash@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/hdnode@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + + '@ethersproject/json-wallets@5.8.0': + dependencies: + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 aes-js: 3.0.0 scrypt-js: 3.0.1 - "@ethersproject/keccak256@5.8.0": + '@ethersproject/keccak256@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 + '@ethersproject/bytes': 5.8.0 js-sha3: 0.8.0 - "@ethersproject/logger@5.8.0": {} + '@ethersproject/logger@5.8.0': {} - "@ethersproject/networks@5.8.0": + '@ethersproject/networks@5.8.0': dependencies: - "@ethersproject/logger": 5.8.0 + '@ethersproject/logger': 5.8.0 - "@ethersproject/pbkdf2@5.8.0": + '@ethersproject/pbkdf2@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/sha2": 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/sha2': 5.8.0 - "@ethersproject/properties@5.8.0": + '@ethersproject/properties@5.8.0': dependencies: - "@ethersproject/logger": 5.8.0 + '@ethersproject/logger': 5.8.0 - "@ethersproject/providers@5.8.0": + '@ethersproject/providers@5.8.0': dependencies: - "@ethersproject/abstract-provider": 5.8.0 - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/address": 5.8.0 - "@ethersproject/base64": 5.8.0 - "@ethersproject/basex": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/hash": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/networks": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/random": 5.8.0 - "@ethersproject/rlp": 5.8.0 - "@ethersproject/sha2": 5.8.0 - "@ethersproject/strings": 5.8.0 - "@ethersproject/transactions": 5.8.0 - "@ethersproject/web": 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/web': 5.8.0 bech32: 1.1.4 ws: 8.18.0 transitivePeerDependencies: - bufferutil - utf-8-validate - "@ethersproject/random@5.8.0": + '@ethersproject/random@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 - "@ethersproject/rlp@5.8.0": + '@ethersproject/rlp@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 - "@ethersproject/sha2@5.8.0": + '@ethersproject/sha2@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 hash.js: 1.1.7 - "@ethersproject/signing-key@5.8.0": + '@ethersproject/signing-key@5.8.0': dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 bn.js: 5.2.2 elliptic: 6.6.1 hash.js: 1.1.7 - "@ethersproject/solidity@5.8.0": - dependencies: - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/sha2": 5.8.0 - "@ethersproject/strings": 5.8.0 - - "@ethersproject/strings@5.8.0": - dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/logger": 5.8.0 - - "@ethersproject/transactions@5.8.0": - dependencies: - "@ethersproject/address": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/rlp": 5.8.0 - "@ethersproject/signing-key": 5.8.0 - - "@ethersproject/units@5.8.0": - dependencies: - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/logger": 5.8.0 - - "@ethersproject/wallet@5.8.0": - dependencies: - "@ethersproject/abstract-provider": 5.8.0 - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/address": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/hash": 5.8.0 - "@ethersproject/hdnode": 5.8.0 - "@ethersproject/json-wallets": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/random": 5.8.0 - "@ethersproject/signing-key": 5.8.0 - "@ethersproject/transactions": 5.8.0 - "@ethersproject/wordlists": 5.8.0 - - "@ethersproject/web@5.8.0": - dependencies: - "@ethersproject/base64": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/strings": 5.8.0 - - "@ethersproject/wordlists@5.8.0": - dependencies: - "@ethersproject/bytes": 5.8.0 - "@ethersproject/hash": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/strings": 5.8.0 - - "@fraxfinance/layerzero-v2-upgradeable@https://codeload.github.com/fraxfinance/LayerZero-v2-upgradeable/tar.gz/be5ffcbd818e2e87dcd3fb30d913c1a32511489b": - {} - - "@jridgewell/gen-mapping@0.3.12": - dependencies: - '@jridgewell/sourcemap-codec': 1.5.4 - '@jridgewell/trace-mapping': 0.3.29 + '@ethersproject/solidity@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/strings@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/transactions@5.8.0': + dependencies: + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + + '@ethersproject/units@5.8.0': + dependencies: + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/logger': 5.8.0 + + '@ethersproject/wallet@5.8.0': + dependencies: + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/json-wallets': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wordlists': 5.8.0 + + '@ethersproject/web@5.8.0': + dependencies: + '@ethersproject/base64': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@ethersproject/wordlists@5.8.0': + dependencies: + '@ethersproject/bytes': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/strings': 5.8.0 + + '@fraxfinance/layerzero-v2-upgradeable@https://codeload.github.com/fraxfinance/LayerZero-v2-upgradeable/tar.gz/be5ffcbd818e2e87dcd3fb30d913c1a32511489b': {} + + '@jridgewell/gen-mapping@0.3.13': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.5 + '@jridgewell/trace-mapping': 0.3.31 + + '@jridgewell/remapping@2.3.5': + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/resolve-uri@3.1.2': {} - '@jridgewell/sourcemap-codec@1.5.4': {} + '@jridgewell/sourcemap-codec@1.5.5': {} - '@jridgewell/trace-mapping@0.3.29': + '@jridgewell/trace-mapping@0.3.31': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.4 + '@jridgewell/sourcemap-codec': 1.5.5 '@jridgewell/trace-mapping@0.3.9': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.4 + '@jridgewell/sourcemap-codec': 1.5.5 + + '@layerzerolabs/lz-evm-protocol-v2@3.0.151(@openzeppelin/contracts-upgradeable@4.8.1)(@openzeppelin/contracts@5.3.0)(hardhat-deploy@0.12.4)(solidity-bytes-utils@https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9)': + dependencies: + '@openzeppelin/contracts': 5.3.0 + '@openzeppelin/contracts-upgradeable': 4.8.1 + hardhat-deploy: 0.12.4 + solidity-bytes-utils: https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9 '@noble/ciphers@1.3.0': {} @@ -1812,35 +1695,23 @@ snapshots: '@noble/hashes@1.8.0': {} - '@openzeppelin/contracts@5.4.0': {} - - '@prettier/sync@0.3.0(prettier@3.6.2)': - "@layerzerolabs/lz-evm-protocol-v2@3.0.134(@openzeppelin/contracts-upgradeable@5.2.0(@openzeppelin/contracts@5.3.0))(@openzeppelin/contracts@5.3.0)(hardhat-deploy@0.12.4)(solidity-bytes-utils@https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9)": - dependencies: - "@openzeppelin/contracts": 5.3.0 - "@openzeppelin/contracts-upgradeable": 5.2.0(@openzeppelin/contracts@5.3.0) - hardhat-deploy: 0.12.4 - solidity-bytes-utils: https://codeload.github.com/GNSPS/solidity-bytes-utils/tar.gz/fc502455bb2a7e26a743378df042612dd50d1eb9 - - "@openzeppelin/contracts-upgradeable@4.8.1": {} + '@openzeppelin/contracts-upgradeable@4.8.1': {} - "@openzeppelin/contracts-upgradeable@5.2.0(@openzeppelin/contracts@5.3.0)": + '@openzeppelin/contracts-upgradeable@5.2.0(@openzeppelin/contracts@5.3.0)': dependencies: - "@openzeppelin/contracts": 5.3.0 + '@openzeppelin/contracts': 5.3.0 - "@openzeppelin/contracts@4.8.1": {} + '@openzeppelin/contracts@4.8.1': {} - "@openzeppelin/contracts@5.2.0": {} + '@openzeppelin/contracts@5.2.0': {} - "@openzeppelin/contracts@5.3.0": {} + '@openzeppelin/contracts@5.3.0': {} - "@openzeppelin/contracts@5.4.0": {} + '@prb/math@4.1.0': {} - "@prb/math@4.1.0": {} - - "@prettier/sync@0.3.0(prettier@3.6.2)": + '@prettier/sync@0.3.0(prettier@3.7.4)': dependencies: - prettier: 3.6.2 + prettier: 3.7.4 '@scure/base@1.2.6': {} @@ -1861,11 +1732,11 @@ snapshots: '@solidity-parser/parser@0.20.2': {} - '@sveltejs/acorn-typescript@1.0.5(acorn@8.15.0)': + '@sveltejs/acorn-typescript@1.0.8(acorn@8.15.0)': dependencies: acorn: 8.15.0 - '@tsconfig/node10@1.0.11': {} + '@tsconfig/node10@1.0.12': {} '@tsconfig/node12@1.0.11': {} @@ -1878,20 +1749,21 @@ snapshots: '@types/fs-extra@11.0.4': dependencies: '@types/jsonfile': 6.1.4 - '@types/node': 18.19.120 + '@types/node': 24.10.4 '@types/jsonfile@6.1.4': dependencies: - '@types/node': 18.19.120 + '@types/node': 24.10.4 - '@types/node@18.19.120': + '@types/node@24.10.4': dependencies: - undici-types: 5.26.5 + undici-types: 7.16.0 + + '@types/qs@6.14.0': {} - abitype@1.1.0(typescript@5.8.3): + abitype@1.2.3(typescript@5.9.3): optionalDependencies: - typescript: 5.8.3 - "@types/qs@6.14.0": {} + typescript: 5.9.3 acorn-walk@8.3.4: dependencies: @@ -1911,7 +1783,7 @@ snapshots: ajv@8.17.1: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.0.6 + fast-uri: 3.1.0 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -1921,19 +1793,19 @@ snapshots: dependencies: type-fest: 1.4.0 - ansi-escapes@7.0.0: + ansi-escapes@7.2.0: dependencies: environment: 1.1.0 ansi-regex@5.0.1: {} - ansi-regex@6.1.0: {} + ansi-regex@6.2.2: {} ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 - ansi-styles@6.2.1: {} + ansi-styles@6.2.3: {} antlr4@4.13.2: {} @@ -1956,9 +1828,9 @@ snapshots: asynckit@0.4.0: {} - axios@0.21.4(debug@4.4.1): + axios@0.21.4(debug@4.4.3): dependencies: - follow-redirects: 1.15.9(debug@4.4.1) + follow-redirects: 1.15.11(debug@4.4.3) transitivePeerDependencies: - debug @@ -2014,8 +1886,6 @@ snapshots: chalk@5.3.0: {} - chalk@5.4.1: {} - change-case@4.1.2: dependencies: camel-case: 4.1.2 @@ -2056,10 +1926,10 @@ snapshots: slice-ansi: 5.0.0 string-width: 5.1.2 - cli-truncate@4.0.0: + cli-truncate@5.1.1: dependencies: - slice-ansi: 5.0.0 - string-width: 7.2.0 + slice-ansi: 7.1.2 + string-width: 8.1.0 clsx@2.1.1: {} @@ -2081,7 +1951,7 @@ snapshots: commander@11.0.0: {} - commander@14.0.0: {} + commander@14.0.2: {} commander@8.3.0: {} @@ -2091,14 +1961,14 @@ snapshots: tslib: 2.8.1 upper-case: 2.0.2 - cosmiconfig@8.3.6(typescript@5.8.3): + cosmiconfig@8.3.6(typescript@5.9.3): dependencies: import-fresh: 3.3.1 - js-yaml: 4.1.0 + js-yaml: 4.1.1 parse-json: 5.2.0 path-type: 4.0.0 optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.3 create-require@1.1.1: {} @@ -2110,18 +1980,20 @@ snapshots: date-fns@2.30.0: dependencies: - '@babel/runtime': 7.28.2 + '@babel/runtime': 7.28.4 debug@4.3.4: dependencies: ms: 2.1.2 - debug@4.4.1: + debug@4.4.3: dependencies: ms: 2.1.3 delayed-stream@1.0.0: {} + devalue@5.6.1: {} + diff@4.0.2: {} dot-case@3.0.4: @@ -2149,7 +2021,7 @@ snapshots: minimalistic-assert: 1.0.1 minimalistic-crypto-utils: 1.0.1 - emoji-regex@10.4.0: {} + emoji-regex@10.6.0: {} emoji-regex@8.0.0: {} @@ -2164,7 +2036,7 @@ snapshots: environment@1.1.0: {} - error-ex@1.3.2: + error-ex@1.3.4: dependencies: is-arrayish: 0.2.1 @@ -2185,42 +2057,42 @@ snapshots: esm-env@1.2.2: {} - esrap@2.1.0: + esrap@2.2.1: dependencies: - '@jridgewell/sourcemap-codec': 1.5.4 + '@jridgewell/sourcemap-codec': 1.5.5 ethers@5.8.0: dependencies: - "@ethersproject/abi": 5.8.0 - "@ethersproject/abstract-provider": 5.8.0 - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/address": 5.8.0 - "@ethersproject/base64": 5.8.0 - "@ethersproject/basex": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/contracts": 5.8.0 - "@ethersproject/hash": 5.8.0 - "@ethersproject/hdnode": 5.8.0 - "@ethersproject/json-wallets": 5.8.0 - "@ethersproject/keccak256": 5.8.0 - "@ethersproject/logger": 5.8.0 - "@ethersproject/networks": 5.8.0 - "@ethersproject/pbkdf2": 5.8.0 - "@ethersproject/properties": 5.8.0 - "@ethersproject/providers": 5.8.0 - "@ethersproject/random": 5.8.0 - "@ethersproject/rlp": 5.8.0 - "@ethersproject/sha2": 5.8.0 - "@ethersproject/signing-key": 5.8.0 - "@ethersproject/solidity": 5.8.0 - "@ethersproject/strings": 5.8.0 - "@ethersproject/transactions": 5.8.0 - "@ethersproject/units": 5.8.0 - "@ethersproject/wallet": 5.8.0 - "@ethersproject/web": 5.8.0 - "@ethersproject/wordlists": 5.8.0 + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-provider': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/base64': 5.8.0 + '@ethersproject/basex': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/contracts': 5.8.0 + '@ethersproject/hash': 5.8.0 + '@ethersproject/hdnode': 5.8.0 + '@ethersproject/json-wallets': 5.8.0 + '@ethersproject/keccak256': 5.8.0 + '@ethersproject/logger': 5.8.0 + '@ethersproject/networks': 5.8.0 + '@ethersproject/pbkdf2': 5.8.0 + '@ethersproject/properties': 5.8.0 + '@ethersproject/providers': 5.8.0 + '@ethersproject/random': 5.8.0 + '@ethersproject/rlp': 5.8.0 + '@ethersproject/sha2': 5.8.0 + '@ethersproject/signing-key': 5.8.0 + '@ethersproject/solidity': 5.8.0 + '@ethersproject/strings': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/units': 5.8.0 + '@ethersproject/wallet': 5.8.0 + '@ethersproject/web': 5.8.0 + '@ethersproject/wordlists': 5.8.0 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -2245,7 +2117,7 @@ snapshots: fast-json-stable-stringify@2.1.0: {} - fast-uri@3.0.6: {} + fast-uri@3.1.0: {} fill-range@7.1.1: dependencies: @@ -2255,13 +2127,13 @@ snapshots: dependencies: imul: 1.0.1 - follow-redirects@1.15.9(debug@4.4.1): + follow-redirects@1.15.11(debug@4.4.3): optionalDependencies: - debug: 4.4.1 + debug: 4.4.3 forge-std@https://codeload.github.com/foundry-rs/forge-std/tar.gz/60acb7aaadcce2d68e52986a0a66fe79f07d138f: {} - form-data@4.0.4: + form-data@4.0.5: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 @@ -2269,44 +2141,42 @@ snapshots: hasown: 2.0.2 mime-types: 2.1.35 - frax-standard-solidity@https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/edd667c2be4b455176a799cff9b932386393ef8d: + frax-standard-solidity@https://codeload.github.com/FraxFinance/frax-standard-solidity/tar.gz/5aab6135d727fd604f31f082fd061dd983b39b23: dependencies: - '@openzeppelin/contracts': 5.4.0 '@types/fs-extra': 11.0.4 - '@types/node': 18.19.120 + '@types/node': 24.10.4 change-case: 4.1.2 commander: 10.0.1 date-fns: 2.30.0 ds-test: https://codeload.github.com/dapphub/ds-test/tar.gz/e282159d5170298eb2455a6c05280ab5a73a4ef0 forge-std: https://codeload.github.com/foundry-rs/forge-std/tar.gz/60acb7aaadcce2d68e52986a0a66fe79f07d138f - fs-extra: 11.3.0 + fs-extra: 11.3.3 husky: 8.0.3 - lint-staged: 16.1.2 - prettier: 3.6.2 - prettier-plugin-solidity: 1.4.3(prettier@3.6.2) - solc: 0.8.30 - solhint: 3.6.2(typescript@5.8.3) - solhint-plugin-prettier: 0.1.0(prettier-plugin-solidity@1.4.3(prettier@3.6.2))(prettier@3.6.2) + lint-staged: 16.2.7 + prettier: 3.7.4 + prettier-plugin-solidity: 1.4.3(prettier@3.7.4) + solc: 0.8.33 + solhint: 3.6.2(typescript@5.9.3) + solhint-plugin-prettier: 0.1.0(prettier-plugin-solidity@1.4.3(prettier@3.7.4))(prettier@3.7.4) solidity-bytes-utils: 0.8.4 toml: 3.0.0 - ts-node: 10.9.2(@types/node@18.19.120)(typescript@5.8.3) - typescript: 5.8.3 + ts-node: 10.9.2(@types/node@24.10.4)(typescript@5.9.3) + typescript: 5.9.3 transitivePeerDependencies: - '@swc/core' - '@swc/wasm' - debug - - supports-color fs-extra@10.1.0: dependencies: graceful-fs: 4.2.11 - jsonfile: 6.1.0 + jsonfile: 6.2.0 universalify: 2.0.1 - fs-extra@11.3.0: + fs-extra@11.3.3: dependencies: graceful-fs: 4.2.11 - jsonfile: 6.1.0 + jsonfile: 6.2.0 universalify: 2.0.1 fs.realpath@1.0.0: {} @@ -2316,7 +2186,7 @@ snapshots: function-bind@1.1.2: {} - get-east-asian-width@1.3.0: {} + get-east-asian-width@1.4.0: {} get-intrinsic@1.3.0: dependencies: @@ -2356,30 +2226,30 @@ snapshots: hardhat-deploy@0.12.4: dependencies: - "@ethersproject/abi": 5.8.0 - "@ethersproject/abstract-signer": 5.8.0 - "@ethersproject/address": 5.8.0 - "@ethersproject/bignumber": 5.8.0 - "@ethersproject/bytes": 5.8.0 - "@ethersproject/constants": 5.8.0 - "@ethersproject/contracts": 5.8.0 - "@ethersproject/providers": 5.8.0 - "@ethersproject/solidity": 5.8.0 - "@ethersproject/transactions": 5.8.0 - "@ethersproject/wallet": 5.8.0 - "@types/qs": 6.14.0 - axios: 0.21.4(debug@4.4.1) + '@ethersproject/abi': 5.8.0 + '@ethersproject/abstract-signer': 5.8.0 + '@ethersproject/address': 5.8.0 + '@ethersproject/bignumber': 5.8.0 + '@ethersproject/bytes': 5.8.0 + '@ethersproject/constants': 5.8.0 + '@ethersproject/contracts': 5.8.0 + '@ethersproject/providers': 5.8.0 + '@ethersproject/solidity': 5.8.0 + '@ethersproject/transactions': 5.8.0 + '@ethersproject/wallet': 5.8.0 + '@types/qs': 6.14.0 + axios: 0.21.4(debug@4.4.3) chalk: 4.1.2 chokidar: 3.6.0 - debug: 4.4.1 + debug: 4.4.3 enquirer: 2.4.1 ethers: 5.8.0 - form-data: 4.0.4 + form-data: 4.0.5 fs-extra: 10.1.0 match-all: 1.2.7 murmur-128: 0.2.1 - qs: 6.14.0 - zksync-ethers: 5.10.0(ethers@5.8.0) + qs: 6.14.1 + zksync-ethers: 5.11.1(ethers@5.8.0) transitivePeerDependencies: - bufferutil - supports-color @@ -2445,9 +2315,9 @@ snapshots: is-fullwidth-code-point@4.0.0: {} - is-fullwidth-code-point@5.0.0: + is-fullwidth-code-point@5.1.0: dependencies: - get-east-asian-width: 1.3.0 + get-east-asian-width: 1.4.0 is-glob@4.0.3: dependencies: @@ -2471,7 +2341,7 @@ snapshots: js-tokens@4.0.0: {} - js-yaml@4.1.0: + js-yaml@4.1.1: dependencies: argparse: 2.0.1 @@ -2481,7 +2351,7 @@ snapshots: json-schema-traverse@1.0.0: {} - jsonfile@6.1.0: + jsonfile@6.2.0: dependencies: universalify: 2.0.1 optionalDependencies: @@ -2489,8 +2359,6 @@ snapshots: lilconfig@2.1.0: {} - lilconfig@3.1.3: {} - lines-and-columns@1.2.4: {} lint-staged@13.3.0(enquirer@2.4.1): @@ -2509,20 +2377,15 @@ snapshots: - enquirer - supports-color - lint-staged@16.1.2: + lint-staged@16.2.7: dependencies: - chalk: 5.4.1 - commander: 14.0.0 - debug: 4.4.1 - lilconfig: 3.1.3 - listr2: 8.3.3 + commander: 14.0.2 + listr2: 9.0.5 micromatch: 4.0.8 - nano-spawn: 1.0.2 + nano-spawn: 2.0.0 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.8.0 - transitivePeerDependencies: - - supports-color + yaml: 2.8.2 listr2@6.6.1(enquirer@2.4.1): dependencies: @@ -2535,14 +2398,14 @@ snapshots: optionalDependencies: enquirer: 2.4.1 - listr2@8.3.3: + listr2@9.0.5: dependencies: - cli-truncate: 4.0.0 + cli-truncate: 5.1.1 colorette: 2.0.20 eventemitter3: 5.0.1 log-update: 6.1.0 rfdc: 1.4.1 - wrap-ansi: 9.0.0 + wrap-ansi: 9.0.2 locate-character@3.0.0: {} @@ -2555,24 +2418,24 @@ snapshots: ansi-escapes: 5.0.0 cli-cursor: 4.0.0 slice-ansi: 5.0.0 - strip-ansi: 7.1.0 + strip-ansi: 7.1.2 wrap-ansi: 8.1.0 log-update@6.1.0: dependencies: - ansi-escapes: 7.0.0 + ansi-escapes: 7.2.0 cli-cursor: 5.0.0 - slice-ansi: 7.1.0 - strip-ansi: 7.1.0 - wrap-ansi: 9.0.0 + slice-ansi: 7.1.2 + strip-ansi: 7.1.2 + wrap-ansi: 9.0.2 lower-case@2.0.2: dependencies: tslib: 2.8.1 - magic-string@0.30.17: + magic-string@0.30.21: dependencies: - '@jridgewell/sourcemap-codec': 1.5.4 + '@jridgewell/sourcemap-codec': 1.5.5 make-error@1.3.6: {} @@ -2624,7 +2487,7 @@ snapshots: fmix: 0.1.0 imul: 1.0.1 - nano-spawn@1.0.2: {} + nano-spawn@2.0.0: {} no-case@3.0.4: dependencies: @@ -2657,7 +2520,7 @@ snapshots: os-tmpdir@1.0.2: {} - ox@0.9.6(typescript@5.8.3): + ox@0.11.1(typescript@5.9.3): dependencies: '@adraffy/ens-normalize': 1.11.1 '@noble/ciphers': 1.3.0 @@ -2665,10 +2528,10 @@ snapshots: '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.1.0(typescript@5.8.3) + abitype: 1.2.3(typescript@5.9.3) eventemitter3: 5.0.1 optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.3 transitivePeerDependencies: - zod @@ -2684,7 +2547,7 @@ snapshots: parse-json@5.2.0: dependencies: '@babel/code-frame': 7.27.1 - error-ex: 1.3.2 + error-ex: 1.3.4 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -2712,29 +2575,29 @@ snapshots: pluralize@8.0.0: {} - prettier-linter-helpers@1.0.0: + prettier-linter-helpers@1.0.1: dependencies: fast-diff: 1.3.0 - prettier-plugin-solidity@1.4.3(prettier@3.6.2): + prettier-plugin-solidity@1.4.3(prettier@3.7.4): dependencies: '@solidity-parser/parser': 0.20.2 - prettier: 3.6.2 - semver: 7.7.2 + prettier: 3.7.4 + semver: 7.7.3 - prettier-plugin-svelte@3.4.0(prettier@3.6.2)(svelte@5.36.16): + prettier-plugin-svelte@3.4.1(prettier@3.7.4)(svelte@5.46.1): dependencies: - prettier: 3.6.2 - svelte: 5.36.16 + prettier: 3.7.4 + svelte: 5.46.1 prettier@2.8.8: optional: true - prettier@3.6.2: {} + prettier@3.7.4: {} punycode@2.3.1: {} - qs@6.14.0: + qs@6.14.1: dependencies: side-channel: 1.1.0 @@ -2762,7 +2625,7 @@ snapshots: semver@5.7.2: {} - semver@7.7.2: {} + semver@7.7.3: {} sentence-case@3.0.4: dependencies: @@ -2816,24 +2679,24 @@ snapshots: slice-ansi@5.0.0: dependencies: - ansi-styles: 6.2.1 + ansi-styles: 6.2.3 is-fullwidth-code-point: 4.0.0 - slice-ansi@7.1.0: + slice-ansi@7.1.2: dependencies: - ansi-styles: 6.2.1 - is-fullwidth-code-point: 5.0.0 + ansi-styles: 6.2.3 + is-fullwidth-code-point: 5.1.0 snake-case@3.0.4: dependencies: dot-case: 3.0.4 tslib: 2.8.1 - solc@0.8.30: + solc@0.8.33: dependencies: command-exists: 1.2.9 commander: 8.3.0 - follow-redirects: 1.15.9(debug@4.4.1) + follow-redirects: 1.15.11(debug@4.4.3) js-sha3: 0.8.0 memorystream: 0.3.1 semver: 5.7.2 @@ -2841,14 +2704,14 @@ snapshots: transitivePeerDependencies: - debug - solhint-plugin-prettier@0.1.0(prettier-plugin-solidity@1.4.3(prettier@3.6.2))(prettier@3.6.2): + solhint-plugin-prettier@0.1.0(prettier-plugin-solidity@1.4.3(prettier@3.7.4))(prettier@3.7.4): dependencies: - '@prettier/sync': 0.3.0(prettier@3.6.2) - prettier: 3.6.2 - prettier-linter-helpers: 1.0.0 - prettier-plugin-solidity: 1.4.3(prettier@3.6.2) + '@prettier/sync': 0.3.0(prettier@3.7.4) + prettier: 3.7.4 + prettier-linter-helpers: 1.0.1 + prettier-plugin-solidity: 1.4.3(prettier@3.7.4) - solhint@3.6.2(typescript@5.8.3): + solhint@3.6.2(typescript@5.9.3): dependencies: '@solidity-parser/parser': 0.16.2 ajv: 6.12.6 @@ -2856,14 +2719,14 @@ snapshots: ast-parents: 0.0.1 chalk: 4.1.2 commander: 10.0.1 - cosmiconfig: 8.3.6(typescript@5.8.3) + cosmiconfig: 8.3.6(typescript@5.9.3) fast-diff: 1.3.0 glob: 8.1.0 ignore: 5.3.2 - js-yaml: 4.1.0 + js-yaml: 4.1.1 lodash: 4.17.21 pluralize: 8.0.0 - semver: 7.7.2 + semver: 7.7.3 strip-ansi: 6.0.1 table: 6.9.0 text-table: 0.2.0 @@ -2890,21 +2753,26 @@ snapshots: dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 - strip-ansi: 7.1.0 + strip-ansi: 7.1.2 string-width@7.2.0: dependencies: - emoji-regex: 10.4.0 - get-east-asian-width: 1.3.0 - strip-ansi: 7.1.0 + emoji-regex: 10.6.0 + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.2 + + string-width@8.1.0: + dependencies: + get-east-asian-width: 1.4.0 + strip-ansi: 7.1.2 strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 - strip-ansi@7.1.0: + strip-ansi@7.1.2: dependencies: - ansi-regex: 6.1.0 + ansi-regex: 6.2.2 strip-final-newline@3.0.0: {} @@ -2912,22 +2780,23 @@ snapshots: dependencies: has-flag: 4.0.0 - svelte@5.36.16: + svelte@5.46.1: dependencies: - '@ampproject/remapping': 2.3.0 - '@jridgewell/sourcemap-codec': 1.5.4 - '@sveltejs/acorn-typescript': 1.0.5(acorn@8.15.0) + '@jridgewell/remapping': 2.3.5 + '@jridgewell/sourcemap-codec': 1.5.5 + '@sveltejs/acorn-typescript': 1.0.8(acorn@8.15.0) '@types/estree': 1.0.8 acorn: 8.15.0 aria-query: 5.3.2 axobject-query: 4.1.0 clsx: 2.1.1 + devalue: 5.6.1 esm-env: 1.2.2 - esrap: 2.1.0 + esrap: 2.2.1 is-reference: 3.0.3 locate-character: 3.0.0 - magic-string: 0.30.17 - zimmerframe: 1.1.2 + magic-string: 0.30.21 + zimmerframe: 1.1.4 table@6.9.0: dependencies: @@ -2949,21 +2818,21 @@ snapshots: toml@3.0.0: {} - ts-node@10.9.2(@types/node@18.19.120)(typescript@5.8.3): + ts-node@10.9.2(@types/node@24.10.4)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.11 + '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.120 + '@types/node': 24.10.4 acorn: 8.15.0 acorn-walk: 8.3.4 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.8.3 + typescript: 5.9.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 @@ -2971,9 +2840,9 @@ snapshots: type-fest@1.4.0: {} - typescript@5.8.3: {} + typescript@5.9.3: {} - undici-types@5.26.5: {} + undici-types@7.16.0: {} universalify@2.0.1: {} @@ -2991,18 +2860,18 @@ snapshots: v8-compile-cache-lib@3.0.1: {} - viem@2.37.8(typescript@5.8.3): + viem@2.43.5(typescript@5.9.3): dependencies: '@noble/curves': 1.9.1 '@noble/hashes': 1.8.0 '@scure/bip32': 1.7.0 '@scure/bip39': 1.6.0 - abitype: 1.1.0(typescript@5.8.3) + abitype: 1.2.3(typescript@5.9.3) isows: 1.0.7(ws@8.18.3) - ox: 0.9.6(typescript@5.8.3) + ox: 0.11.1(typescript@5.9.3) ws: 8.18.3 optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.3 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -3014,29 +2883,30 @@ snapshots: wrap-ansi@8.1.0: dependencies: - ansi-styles: 6.2.1 + ansi-styles: 6.2.3 string-width: 5.1.2 - strip-ansi: 7.1.0 + strip-ansi: 7.1.2 - wrap-ansi@9.0.0: + wrap-ansi@9.0.2: dependencies: - ansi-styles: 6.2.1 + ansi-styles: 6.2.3 string-width: 7.2.0 - strip-ansi: 7.1.0 + strip-ansi: 7.1.2 wrappy@1.0.2: {} - ws@8.18.3: {} ws@8.18.0: {} + ws@8.18.3: {} + yaml@2.3.1: {} - yaml@2.8.0: {} + yaml@2.8.2: {} yn@3.1.1: {} - zimmerframe@1.1.2: {} + zimmerframe@1.1.4: {} - zksync-ethers@5.10.0(ethers@5.8.0): + zksync-ethers@5.11.1(ethers@5.8.0): dependencies: ethers: 5.8.0 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 0000000..b608eac --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,7 @@ +onlyBuiltDependencies: + - "frax-standard-solidity" + - "forge-std" + - "ds-test" + - "solmate" + - "solidity-bytes-utils" + - "@fraxfinance/layerzero-v2-upgradeable" diff --git a/src/Constants.sol b/src/Constants.sol index 0a8bf4c..e53dbb1 100644 --- a/src/Constants.sol +++ b/src/Constants.sol @@ -5,7 +5,7 @@ pragma solidity >=0.8.0; import { TestBase } from "forge-std/Test.sol"; - library Abstract { +library Abstract { address internal constant FPIOFT = 0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E; address internal constant FRXETHOFT = 0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440; address internal constant FRXUSDOFT = 0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d; @@ -93,13 +93,20 @@ library Arbitrum { address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FERRY_TO_POLYGON = 0xe57314D4405289FfC91306E4574C28b7394c4822; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = 0x078Dd77De4e0f480D7442495d55707cE071B4B09; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = + 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = + 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = + 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = + 0x078Dd77De4e0f480D7442495d55707cE071B4B09; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = + 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = + 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; address internal constant FRAXLEND_WHITELIST_ADDRESS = 0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079; address internal constant FRAXLEND_HOT_WALLET = 0xdB3388e770F49A604E11f1a2084B39279492a61f; address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d; @@ -245,13 +252,34 @@ abstract contract AddressHelperArbitrum is TestBase { vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_CREWMEMBER"); vm.label(0xe57314D4405289FfC91306E4574C28b7394c4822, "Constants.ARBI_FERRY_TO_POLYGON"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_FIRST_OFFICER"); - vm.label(0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE"); - vm.label(0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE"); - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE"); - vm.label(0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE"); - vm.label(0x078Dd77De4e0f480D7442495d55707cE071B4B09, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE"); - vm.label(0x1B0b9991Df27a4F2847478127d51Fb29883882f5, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE"); - vm.label(0xf1C16E1c01e62716884ef947063e9C7D44eC287F, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE"); + vm.label( + 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, + "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE" + ); + vm.label( + 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE" + ); + vm.label( + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE" + ); + vm.label( + 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE" + ); + vm.label( + 0x078Dd77De4e0f480D7442495d55707cE071B4B09, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE" + ); + vm.label( + 0x1B0b9991Df27a4F2847478127d51Fb29883882f5, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE" + ); + vm.label( + 0xf1C16E1c01e62716884ef947063e9C7D44eC287F, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE" + ); vm.label(0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079, "Constants.ARBI_FRAXLEND_WHITELIST_ADDRESS"); vm.label(0xdB3388e770F49A604E11f1a2084B39279492a61f, "Constants.ARBI_FRAXLEND_HOT_WALLET"); vm.label(0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d, "Constants.ARBI_FRAXLEND_PAIR_REGISTRY_ADDRESS"); @@ -386,13 +414,20 @@ library Avalanche { address internal constant TRADER_JOE_FRAX_AVAX = 0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89; address internal constant TRADER_JOE_FRAX_GOHM = 0x3E6Be71dE004363379d864006AAC37C9F55F8329; address internal constant TRADER_JOE_FXS_AVAX = 0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = 0xC311b600bc926a3a8aC39945471427DFd9196930; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = + 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = + 0xC311b600bc926a3a8aC39945471427DFd9196930; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = + 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = + 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = + 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = + 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -447,13 +482,34 @@ abstract contract AddressHelperAvalanche is TestBase { vm.label(0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89, "Constants.AVAX_TRADER_JOE_FRAX_AVAX"); vm.label(0x3E6Be71dE004363379d864006AAC37C9F55F8329, "Constants.AVAX_TRADER_JOE_FRAX_GOHM"); vm.label(0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2, "Constants.AVAX_TRADER_JOE_FXS_AVAX"); - vm.label(0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE"); - vm.label(0xC311b600bc926a3a8aC39945471427DFd9196930, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE"); - vm.label(0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE"); - vm.label(0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE"); - vm.label(0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE"); - vm.label(0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE"); - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE"); + vm.label( + 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, + "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE" + ); + vm.label( + 0xC311b600bc926a3a8aC39945471427DFd9196930, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE" + ); + vm.label( + 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE" + ); + vm.label( + 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE" + ); + vm.label( + 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE" + ); + vm.label( + 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE" + ); + vm.label( + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CREWMEMBER"); @@ -588,7 +644,8 @@ library BSC { address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE = 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE = 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE = 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = 0x612015939f70C87E2041cc5daD909101c1A2383F; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = + 0x612015939f70C87E2041cc5daD909101c1A2383F; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE = 0x5E8422345238F34275888049021821E8E08CAa1f; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -640,13 +697,34 @@ abstract contract AddressHelperBSC is TestBase { vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.undefined_IMPOSSIBLE_FRAX_IF"); vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.undefined_IMPOSSIBLE_FRAX_FXS"); vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.undefined_PLANET_FINANCE_FRAX_LENDING"); - vm.label(0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, "Constants.undefined_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE"); - vm.label(0x5CD3d6465cd21b645F15175840f4659228C6195c, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE"); - vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE"); - vm.label(0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE"); - vm.label(0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE"); - vm.label(0x612015939f70C87E2041cc5daD909101c1A2383F, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE"); - vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE"); + vm.label( + 0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, + "Constants.undefined_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE" + ); + vm.label( + 0x5CD3d6465cd21b645F15175840f4659228C6195c, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE" + ); + vm.label( + 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE" + ); + vm.label( + 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE" + ); + vm.label( + 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE" + ); + vm.label( + 0x612015939f70C87E2041cc5daD909101c1A2383F, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE" + ); + vm.label( + 0x5E8422345238F34275888049021821E8E08CAa1f, + "Constants.undefined_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.undefined_CREWMEMBER"); @@ -691,10 +769,13 @@ library Fantom { address internal constant SPIRITSWAP_FRAX_FXS = 0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381; address internal constant SPIRITSWAP_FRAX_USDC = 0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d; address internal constant VEDAO_FRAX = 0xE04C26444d37fE103B9cc8033c99b09D47056f51; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = + 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE = 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = + 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = + 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -747,10 +828,22 @@ abstract contract AddressHelperFantom is TestBase { vm.label(0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381, "Constants.FTM_SPIRITSWAP_FRAX_FXS"); vm.label(0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d, "Constants.FTM_SPIRITSWAP_FRAX_USDC"); vm.label(0xE04C26444d37fE103B9cc8033c99b09D47056f51, "Constants.FTM_VEDAO_FRAX"); - vm.label(0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE"); - vm.label(0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE"); - vm.label(0x12b6a8178C67B2835E280E1Ed709F64446cddb08, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE"); - vm.label(0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE"); + vm.label( + 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, + "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE" + ); + vm.label( + 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, + "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE" + ); + vm.label( + 0x12b6a8178C67B2835E280E1Ed709F64446cddb08, + "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE" + ); + vm.label( + 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, + "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CREWMEMBER"); @@ -890,12 +983,18 @@ library FraxtalL2 { address internal constant FXB_20551231 = 0xc38173d34afaea88bc482813b3cd267bc8a1ea83; address internal constant FXB_20291231 = 0xf1e2b576af4c6a7ee966b14c810b772391e92153; address internal constant FXB_20251231 = 0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = 0xcD3A040f05769d7628582B403063e61B7D212F91; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = + 0x00160baF84b3D2014837cc12e838ea399f8b8478; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = + 0x24e927daC110Aab7189a4F864d41680e4F7865FB; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = + 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = + 0xcD3A040f05769d7628582B403063e61B7D212F91; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = + 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = + 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -987,7 +1086,8 @@ library FraxtalL2 { address internal constant L1VEFXS_PROXY = 0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F; address internal constant L1VEFXS_TOTAL_SUPPLY_ORACLE = 0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8; address internal constant FXB_AMO = 0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313; - address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = 0x111ddab65Af5fF96b674400246699ED40F550De1; + address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = + 0x111ddab65Af5fF96b674400246699ED40F550De1; address internal constant VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = 0x691d1AaFB550c35B24e09bb991AEC9612342eD93; address internal constant VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = 0x39333a540bbea6262e405E1A6d435Bd2e776561E; address internal constant YIELD_DISTRIBUTOR_PROXY = 0x21359d1697e610e25C8229B2C57907378eD09A2E; @@ -1055,12 +1155,30 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0xc38173d34afaea88bc482813b3cd267bc8a1ea83, "Constants.FXTL_FXB_20551231"); vm.label(0xf1e2b576af4c6a7ee966b14c810b772391e92153, "Constants.FXTL_FXB_20291231"); vm.label(0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca, "Constants.FXTL_FXB_20251231"); - vm.label(0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE"); - vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE"); - vm.label(0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE"); - vm.label(0xcD3A040f05769d7628582B403063e61B7D212F91, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE"); - vm.label(0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE"); - vm.label(0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE"); + vm.label( + 0x00160baF84b3D2014837cc12e838ea399f8b8478, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE" + ); + vm.label( + 0x24e927daC110Aab7189a4F864d41680e4F7865FB, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE" + ); + vm.label( + 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE" + ); + vm.label( + 0xcD3A040f05769d7628582B403063e61B7D212F91, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE" + ); + vm.label( + 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE" + ); + vm.label( + 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CREWMEMBER"); @@ -1152,7 +1270,10 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F, "Constants.FXTL_L1VEFXS_PROXY"); vm.label(0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8, "Constants.FXTL_L1VEFXS_TOTAL_SUPPLY_ORACLE"); vm.label(0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313, "Constants.FXTL_FXB_AMO"); - vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1"); + vm.label( + 0x111ddab65Af5fF96b674400246699ED40F550De1, + "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1" + ); vm.label(0x691d1AaFB550c35B24e09bb991AEC9612342eD93, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_IMPL_V1"); vm.label(0x39333a540bbea6262e405E1A6d435Bd2e776561E, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_PROXY_V1"); vm.label(0x21359d1697e610e25C8229B2C57907378eD09A2E, "Constants.FXTL_YIELD_DISTRIBUTOR_PROXY"); @@ -1211,7 +1332,10 @@ abstract contract AddressHelperFraxtalTestnetL1 is TestBase { vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.FXTL_TN_L1_L1_ERC721_BRIDGE_PROXY"); vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.FXTL_TN_L1_L1_STANDARD_BRIDGE_PROXY"); vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.FXTL_TN_L1_L2_OUTPUT_ORACLE_PROXY"); - vm.label(0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, "Constants.FXTL_TN_L1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); + vm.label( + 0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, + "Constants.FXTL_TN_L1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY" + ); vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.FXTL_TN_L1_OPTIMISM_PORTAL_PROXY"); vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.FXTL_TN_L1_SYSTEM_CONFIG_PROXY"); } @@ -1343,8 +1467,8 @@ abstract contract AddressHelperHyperliquid is TestBase { vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.HYPE_SFRXETHOFT"); vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.HYPE_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.HYPE_WFRAXOFT"); - vm.label(, "Constants.HYPE_REMOTEHOP"); - vm.label(, "Constants.HYPE_REMOTEMINTREDEEMHOP"); + vm.label(0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2, "Constants.HYPE_REMOTEHOP"); + vm.label(0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc, "Constants.HYPE_REMOTEMINTREDEEMHOP"); } } library Ink { @@ -1602,70 +1726,123 @@ library Mainnet { address internal constant CURVE_20261231_MAINNET_POOL = 0xe035e27A8eD6842b478933820f90093D205F7098; address internal constant CURVE_20261231_ARBITRUM_POOL = 0x946adc524BD312D036776798c46ceDD948DD0A0f; address internal constant CURVE_20261231_ARBITRUM_GAUGE = 0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = 0x4b8792aF00eaE944484bF572bc33029B2184a50C; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; - address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = 0xA381d58e96eC3818c825E1fb264099448945CF8b; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = 0x18A5ca670dC42D0551f00E11A730074f6787f17F; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = 0xF380200B115Caa22D49e6C115b758d6130377620; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = + 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = + 0x4b8792aF00eaE944484bF572bc33029B2184a50C; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = + 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = + 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = + 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = + 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = + 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; + address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = + 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = + 0xA381d58e96eC3818c825E1fb264099448945CF8b; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = + 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = + 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = + 0x18A5ca670dC42D0551f00E11A730074f6787f17F; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = + 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = + 0xF380200B115Caa22D49e6C115b758d6130377620; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = + 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; address internal constant FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE = 0x3eF1d856EA62A2292B8690855042095a7aC48B4b; address internal constant FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE = 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE = 0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE = 0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE = 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE = 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = 0x621D0e62f26314387f338A2509aFA3Ae3414661A; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = + 0x621D0e62f26314387f338A2509aFA3Ae3414661A; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE = 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9; address internal constant FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE = 0x2d2261f970F605C813f160E8BAEd455E9004A842; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = 0xfB788F9E20ef426a32A67986654750172A6c1788; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = + 0xfB788F9E20ef426a32A67986654750172A6c1788; address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE = 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = 0x9A576A3d39c589A861B46864C253288bcA428a6c; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = 0x958815f476cD07354c0BC034EE5077B20fD93003; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = 0x228567c10b7533C88057c10dDeA6349360F122c5; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = 0x86E71075e55F0aaD27D700017E0783458310c98a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = 0xF887C4cFAAfB43d1AA7De204344895591016772c; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = + 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = + 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = + 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = + 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = + 0x9A576A3d39c589A861B46864C253288bcA428a6c; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = + 0x958815f476cD07354c0BC034EE5077B20fD93003; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = + 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = + 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = + 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = + 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = + 0x228567c10b7533C88057c10dDeA6349360F122c5; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = + 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = + 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = + 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = + 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = + 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = + 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = + 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = + 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = + 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = + 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = + 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = + 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = + 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = + 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = + 0x86E71075e55F0aaD27D700017E0783458310c98a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = + 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = + 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = + 0xF887C4cFAAfB43d1AA7De204344895591016772c; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = + 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = + 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = + 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = + 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE = 0x27E97F35D80514D5DD1Caa730e22a292E912a214; address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE = 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = + 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = + 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = + 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; address internal constant FRAXFERRY_CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FRAXFERRY_FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FRAXFERRY_CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -2624,70 +2801,256 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_CURVE_20261231_MAINNET_POOL"); vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ETH_CURVE_20261231_ARBITRUM_POOL"); vm.label(0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9, "Constants.ETH_CURVE_20261231_ARBITRUM_GAUGE"); - vm.label(0x85c5f05Ae4CB68190C695a22b292C3bA90696128, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE"); - vm.label(0x4b8792aF00eaE944484bF572bc33029B2184a50C, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE"); - vm.label(0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE"); - vm.label(0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE"); - vm.label(0x505603e2440b44C1602b44D0Eb8385399b3F7bab, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE"); - vm.label(0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE"); - vm.label(0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE"); - vm.label(0x6ac96F65156281a9383455D704b58A74ea9C9eC4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE"); - vm.label(0xA381d58e96eC3818c825E1fb264099448945CF8b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE"); - vm.label(0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE"); - vm.label(0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE"); - vm.label(0x18A5ca670dC42D0551f00E11A730074f6787f17F, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE"); - vm.label(0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE"); - vm.label(0xF380200B115Caa22D49e6C115b758d6130377620, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE"); - vm.label(0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE"); - vm.label(0x3eF1d856EA62A2292B8690855042095a7aC48B4b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE"); - vm.label(0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE"); + vm.label( + 0x85c5f05Ae4CB68190C695a22b292C3bA90696128, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE" + ); + vm.label( + 0x4b8792aF00eaE944484bF572bc33029B2184a50C, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE" + ); + vm.label( + 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE" + ); + vm.label( + 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE" + ); + vm.label( + 0x505603e2440b44C1602b44D0Eb8385399b3F7bab, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE" + ); + vm.label( + 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE" + ); + vm.label( + 0x6ac96F65156281a9383455D704b58A74ea9C9eC4, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE" + ); + vm.label( + 0xA381d58e96eC3818c825E1fb264099448945CF8b, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE" + ); + vm.label( + 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE" + ); + vm.label( + 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE" + ); + vm.label( + 0x18A5ca670dC42D0551f00E11A730074f6787f17F, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE" + ); + vm.label( + 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE" + ); + vm.label( + 0xF380200B115Caa22D49e6C115b758d6130377620, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE" + ); + vm.label( + 0x3eF1d856EA62A2292B8690855042095a7aC48B4b, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE" + ); + vm.label( + 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE" + ); vm.label(0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE"); vm.label(0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE"); - vm.label(0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE"); - vm.label(0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE"); - vm.label(0x621D0e62f26314387f338A2509aFA3Ae3414661A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE"); - vm.label(0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE"); - vm.label(0x2d2261f970F605C813f160E8BAEd455E9004A842, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE"); - vm.label(0xfB788F9E20ef426a32A67986654750172A6c1788, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE"); - vm.label(0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE"); - vm.label(0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE"); - vm.label(0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE"); - vm.label(0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE"); - vm.label(0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE"); - vm.label(0x9A576A3d39c589A861B46864C253288bcA428a6c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE"); - vm.label(0x958815f476cD07354c0BC034EE5077B20fD93003, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE"); - vm.label(0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE"); - vm.label(0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE"); - vm.label(0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE"); - vm.label(0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE"); - vm.label(0x228567c10b7533C88057c10dDeA6349360F122c5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE"); - vm.label(0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE"); - vm.label(0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE"); - vm.label(0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE"); - vm.label(0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE"); - vm.label(0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE"); - vm.label(0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE"); - vm.label(0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE"); - vm.label(0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE"); - vm.label(0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE"); - vm.label(0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE"); - vm.label(0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE"); - vm.label(0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE"); - vm.label(0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE"); - vm.label(0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE"); - vm.label(0x86E71075e55F0aaD27D700017E0783458310c98a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE"); - vm.label(0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE"); - vm.label(0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE"); - vm.label(0xF887C4cFAAfB43d1AA7De204344895591016772c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE"); - vm.label(0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE"); - vm.label(0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE"); - vm.label(0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE"); - vm.label(0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE"); - vm.label(0x27E97F35D80514D5DD1Caa730e22a292E912a214, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE"); - vm.label(0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE"); - vm.label(0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE"); - vm.label(0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE"); - vm.label(0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE"); + vm.label( + 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE" + ); + vm.label( + 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE" + ); + vm.label( + 0x621D0e62f26314387f338A2509aFA3Ae3414661A, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE" + ); + vm.label( + 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE" + ); + vm.label( + 0x2d2261f970F605C813f160E8BAEd455E9004A842, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE" + ); + vm.label( + 0xfB788F9E20ef426a32A67986654750172A6c1788, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE" + ); + vm.label( + 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE" + ); + vm.label( + 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE" + ); + vm.label( + 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE" + ); + vm.label( + 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE" + ); + vm.label( + 0x9A576A3d39c589A861B46864C253288bcA428a6c, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE" + ); + vm.label( + 0x958815f476cD07354c0BC034EE5077B20fD93003, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE" + ); + vm.label( + 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE" + ); + vm.label( + 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE" + ); + vm.label( + 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE" + ); + vm.label( + 0x228567c10b7533C88057c10dDeA6349360F122c5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE" + ); + vm.label( + 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE" + ); + vm.label( + 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE" + ); + vm.label( + 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE" + ); + vm.label( + 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE" + ); + vm.label( + 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE" + ); + vm.label( + 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE" + ); + vm.label( + 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE" + ); + vm.label( + 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE" + ); + vm.label( + 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE" + ); + vm.label( + 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE" + ); + vm.label( + 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE" + ); + vm.label( + 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x86E71075e55F0aaD27D700017E0783458310c98a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE" + ); + vm.label( + 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE" + ); + vm.label( + 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE" + ); + vm.label( + 0xF887C4cFAAfB43d1AA7De204344895591016772c, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE" + ); + vm.label( + 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE" + ); + vm.label( + 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE" + ); + vm.label( + 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE" + ); + vm.label( + 0x27E97F35D80514D5DD1Caa730e22a292E912a214, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE" + ); + vm.label( + 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE" + ); + vm.label( + 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE" + ); + vm.label( + 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE" + ); + vm.label( + 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CREWMEMBER"); @@ -2750,7 +3113,10 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_CURVE_POOL_NOT_LP"); vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_PLAIN_POOL"); vm.label(0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD, "Constants.ETH_FRAX_USD_CHAINLINK_ORACLE"); - vm.label(0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS"); + vm.label( + 0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, + "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS" + ); vm.label(0xf43211935C781D5ca1a41d2041F397B8A7366C7A, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_ERC20"); vm.label(0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577, "Constants.ETH_FRXETH_ETH_CURVE_POOL_NOT_LP"); vm.label(0xb12c19C838499E3447AFd9e59274B1BE56b1546A, "Constants.ETH_FRXETH_ETH_DUAL_ORACLE_ADDRESS"); @@ -2810,10 +3176,16 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0x9599033315C29Be9690b716bFE409381426dAD41, "Constants.ETH_VARIABLE_RATE_STABLE_ADDRESS"); vm.label(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599, "Constants.ETH_WBTC_ERC20"); vm.label(0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC, "Constants.ETH_WBTC_SFRAX_INVERSE_DUAL_ORACLE"); - vm.label(0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); + vm.label( + 0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, + "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK" + ); vm.label(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, "Constants.ETH_WETH_ERC20"); vm.label(0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A, "Constants.ETH_WETH_FRAX_V3_POOL"); - vm.label(0x1cA1350F67575B0beE44EC9DC6725A4032431F33, "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); + vm.label( + 0x1cA1350F67575B0beE44EC9DC6725A4032431F33, + "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK" + ); vm.label(0xE0554a476A092703abdB3Ef35c80e0D76d32939F, "Constants.ETH_WETH_USDC_V3_POOL"); vm.label(0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0, "Constants.ETH_WSTETH_ERC20"); vm.label(0xe73375f36A1b17A21d7Aa0fDa092195431e7017a, "Constants.ETH_WSTETH_USD_DUAL_ORACLE_ADDRESS"); @@ -3500,10 +3872,14 @@ library Moonbeam { address internal constant FXS = 0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C; address internal constant FRXETH = 0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99; address internal constant SFRXETH = 0xecf91116348aF1cfFe335e9807f0051332BE128D; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = 0x78348E58582d0D1789da1621B79Fc62012485CAe; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = + 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = + 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = + 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = + 0x78348E58582d0D1789da1621B79Fc62012485CAe; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3534,10 +3910,22 @@ abstract contract AddressHelperMoonbeam is TestBase { vm.label(0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C, "Constants.MNBM_FXS"); vm.label(0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99, "Constants.MNBM_FRXETH"); vm.label(0xecf91116348aF1cfFe335e9807f0051332BE128D, "Constants.MNBM_SFRXETH"); - vm.label(0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE"); - vm.label(0x1E87990678f640BFfe5A118c331fEc296DDC8d89, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE"); - vm.label(0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE"); - vm.label(0x78348E58582d0D1789da1621B79Fc62012485CAe, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE"); + vm.label( + 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, + "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE" + ); + vm.label( + 0x1E87990678f640BFfe5A118c331fEc296DDC8d89, + "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE" + ); + vm.label( + 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, + "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE" + ); + vm.label( + 0x78348E58582d0D1789da1621B79Fc62012485CAe, + "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CREWMEMBER"); @@ -3561,8 +3949,10 @@ abstract contract AddressHelperMoonbeam is TestBase { library Moonriver { address internal constant FRAX = 0x1A93B23281CC1CDE4C4741353F3064709A16197d; address internal constant FXS = 0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = + 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = + 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3596,8 +3986,14 @@ abstract contract AddressHelperMoonriver is TestBase { function labelConstants() public { vm.label(0x1A93B23281CC1CDE4C4741353F3064709A16197d, "Constants.MOVR_FRAX"); vm.label(0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98, "Constants.MOVR_FXS"); - vm.label(0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE"); - vm.label(0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE"); + vm.label( + 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, + "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE" + ); + vm.label( + 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, + "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CREWMEMBER"); @@ -3645,13 +4041,20 @@ library Optimism { address internal constant FRXETH = 0x6806411765Af15Bddd26f8f544A34cC40cb9838B; address internal constant SFRXETH = 0x484c2D6e3cDd945a8B2DF735e079178C1036578c; address internal constant SFRAX = 0x2Dd1B4D4548aCCeA497050619965f91f78b3b532; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = + 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = + 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = + 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = + 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = + 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = + 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = + 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3698,13 +4101,34 @@ abstract contract AddressHelperOptimism is TestBase { vm.label(0x6806411765Af15Bddd26f8f544A34cC40cb9838B, "Constants.OPTI_FRXETH"); vm.label(0x484c2D6e3cDd945a8B2DF735e079178C1036578c, "Constants.OPTI_SFRXETH"); vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.OPTI_SFRAX"); - vm.label(0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE"); - vm.label(0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE"); - vm.label(0x053F082f3bC0C48B8409970c017b4F2a6f673e16, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE"); - vm.label(0xB84E29042Bfb489439949a79aed8a0e156169Ae5, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE"); - vm.label(0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE"); - vm.label(0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE"); - vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE"); + vm.label( + 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, + "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE" + ); + vm.label( + 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE" + ); + vm.label( + 0x053F082f3bC0C48B8409970c017b4F2a6f673e16, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE" + ); + vm.label( + 0xB84E29042Bfb489439949a79aed8a0e156169Ae5, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE" + ); + vm.label( + 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE" + ); + vm.label( + 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE" + ); + vm.label( + 0xD1738eB733A636d1b8665f48bC8a24dA889c2562, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CREWMEMBER"); @@ -3780,10 +4204,14 @@ library Polygon { address internal constant DUMMY_TKN = 0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89; address internal constant FERRY_TO_ARBITRUM = 0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = + 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = + 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = + 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = + 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; address internal constant COMBO_ORACLE = 0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3; address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020; address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; @@ -3837,10 +4265,22 @@ abstract contract AddressHelperPolygon is TestBase { vm.label(0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89, "Constants.POLY_DUMMY_TKN"); vm.label(0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0, "Constants.POLY_FERRY_TO_ARBITRUM"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_FIRST_OFFICER"); - vm.label(0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE"); - vm.label(0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE"); - vm.label(0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE"); - vm.label(0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE"); + vm.label( + 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, + "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE" + ); + vm.label( + 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, + "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE" + ); + vm.label( + 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, + "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE" + ); + vm.label( + 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, + "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE" + ); vm.label(0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3, "Constants.POLY_COMBO_ORACLE"); vm.label(0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020, "Constants.POLY_COMBO_ORACLE_UNIV2_UNIV3"); vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.POLY_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); @@ -3882,13 +4322,20 @@ library PolygonzkEVM { address internal constant FRXETH = 0xCf7eceE185f19e2E970a301eE37F93536ed66179; address internal constant SFRXETH = 0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04; address internal constant SFRAX = 0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = 0x96720C1E893bB69C14291d8a85475ED9BC484b26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = 0xA31001fbe938C520C27204b984817d998bAeA885; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = 0x3d1bc21F8991091538FfEf535Fe96A449794461C; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = 0xA711F85672899331900359e5b89848A30BeEBDBe; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = + 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = + 0x96720C1E893bB69C14291d8a85475ED9BC484b26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = + 0xA31001fbe938C520C27204b984817d998bAeA885; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = + 0x3d1bc21F8991091538FfEf535Fe96A449794461C; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = + 0xA711F85672899331900359e5b89848A30BeEBDBe; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = + 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = + 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3917,13 +4364,34 @@ abstract contract AddressHelperPolygonzkEVM is TestBase { vm.label(0xCf7eceE185f19e2E970a301eE37F93536ed66179, "Constants.POLY_ZKEVM_FRXETH"); vm.label(0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04, "Constants.POLY_ZKEVM_SFRXETH"); vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.POLY_ZKEVM_SFRAX"); - vm.label(0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE"); - vm.label(0x96720C1E893bB69C14291d8a85475ED9BC484b26, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE"); - vm.label(0xA31001fbe938C520C27204b984817d998bAeA885, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE"); - vm.label(0x3d1bc21F8991091538FfEf535Fe96A449794461C, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE"); - vm.label(0xA711F85672899331900359e5b89848A30BeEBDBe, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE"); - vm.label(0x4DB406906835ca0B28bFbef344c7d2C707BC4947, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE"); - vm.label(0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE"); + vm.label( + 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE" + ); + vm.label( + 0x96720C1E893bB69C14291d8a85475ED9BC484b26, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE" + ); + vm.label( + 0xA31001fbe938C520C27204b984817d998bAeA885, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE" + ); + vm.label( + 0x3d1bc21F8991091538FfEf535Fe96A449794461C, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE" + ); + vm.label( + 0xA711F85672899331900359e5b89848A30BeEBDBe, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE" + ); + vm.label( + 0x4DB406906835ca0B28bFbef344c7d2C707BC4947, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE" + ); + vm.label( + 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CREWMEMBER"); diff --git a/src/contracts/chain-constants/Hyperliquid.sol b/src/contracts/chain-constants/Hyperliquid.sol index ad3eb00..c26598a 100644 --- a/src/contracts/chain-constants/Hyperliquid.sol +++ b/src/contracts/chain-constants/Hyperliquid.sol @@ -5,15 +5,15 @@ pragma solidity >=0.8.0; import { TestBase } from "forge-std/Test.sol"; - library Hyperliquid { +library Hyperliquid { address internal constant FPIOFT = 0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927; address internal constant FRXETHOFT = 0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050; address internal constant FRXUSDOFT = 0x80Eede496655FB9047dd39d9f418d5483ED600df; address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - string internal constant REMOTEHOP = ""; - string internal constant REMOTEMINTREDEEMHOP = ""; + string internal constant REMOTEHOP = 0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2; + string internal constant REMOTEMINTREDEEMHOP = 0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc; } abstract contract AddressHelperHyperliquid is TestBase { @@ -28,7 +28,7 @@ abstract contract AddressHelperHyperliquid is TestBase { vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.HYPE_SFRXETHOFT"); vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.HYPE_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.HYPE_WFRAXOFT"); - vm.label(, "Constants.HYPE_REMOTEHOP"); - vm.label(, "Constants.HYPE_REMOTEMINTREDEEMHOP"); + vm.label(0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2, "Constants.HYPE_REMOTEHOP"); + vm.label(0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc, "Constants.HYPE_REMOTEMINTREDEEMHOP"); } } From 13397455abf6f89efea55342bfaca0faf336b1d5 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Mon, 5 Jan 2026 00:43:38 +0000 Subject: [PATCH 06/27] ci: update Node.js, pnpm, and actions to latest versions --- .github/workflows/main.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3d63e1d..ac5f219 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -14,13 +14,13 @@ jobs: ARBITRUM_URL: ${{ secrets.ARBITRUM_MAINNET_URL }} FRAXTAL_MAINNET_URL: ${{ secrets.FRAXTAL_MAINNET_RPC_URL }} steps: - - uses: actions/setup-node@v2 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: - node-version: 16.x - - uses: actions/checkout@v2 - - uses: pnpm/action-setup@v2 + node-version: 20.x + - uses: pnpm/action-setup@v4 with: - version: 8.11.0 + version: 9 - name: Install Foundry uses: foundry-rs/foundry-toolchain@v1 From 8414c132d3c1b130c1082575ec7caa5ab9e79b4d Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Mon, 5 Jan 2026 00:46:29 +0000 Subject: [PATCH 07/27] ci: use pnpm 10 and --no-frozen-lockfile --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ac5f219..9325b12 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -20,14 +20,14 @@ jobs: node-version: 20.x - uses: pnpm/action-setup@v4 with: - version: 9 + version: 10 - name: Install Foundry uses: foundry-rs/foundry-toolchain@v1 with: version: stable - run: forge --version - - run: pnpm i + - run: pnpm install --no-frozen-lockfile - run: pnpm lint:check - run: forge build --sizes # - run: forge test From b0f76f4e4c582dd014414ade62f80510431c9ec9 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Mon, 5 Jan 2026 17:09:28 +0000 Subject: [PATCH 08/27] fix: add packages field to pnpm-workspace.yaml --- pnpm-workspace.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index b608eac..72635df 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,3 +1,5 @@ +packages: [] + onlyBuiltDependencies: - "frax-standard-solidity" - "forge-std" From 2b160f827a1dcae0a184433fe56f14bf5793ef0a Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Mon, 5 Jan 2026 20:35:07 +0000 Subject: [PATCH 09/27] (chore): fix checksum --- src/Constants.sol | 24 +++++++++---------- src/contracts/chain-constants/FraxtalL2.sol | 12 +++++----- src/contracts/chain-constants/Hyperliquid.sol | 4 ++-- src/contracts/chain-constants/Mode.sol | 4 ++-- src/contracts/chain-constants/Scroll.sol | 4 ++-- src/contracts/chain-constants/XLayer.sol | 4 ++-- 6 files changed, 26 insertions(+), 26 deletions(-) diff --git a/src/Constants.sol b/src/Constants.sol index e53dbb1..42b889c 100644 --- a/src/Constants.sol +++ b/src/Constants.sol @@ -980,9 +980,9 @@ library FraxtalL2 { address internal constant FXB_20261231 = 0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e; address internal constant FXB_20241231 = 0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba; address internal constant FXB_20240630 = 0x758094A71a39De49626FE25B86631ED944558653; - address internal constant FXB_20551231 = 0xc38173d34afaea88bc482813b3cd267bc8a1ea83; - address internal constant FXB_20291231 = 0xf1e2b576af4c6a7ee966b14c810b772391e92153; - address internal constant FXB_20251231 = 0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca; + address internal constant FXB_20551231 = 0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83; + address internal constant FXB_20291231 = 0xF1e2b576aF4C6a7eE966b14C810b772391e92153; + address internal constant FXB_20251231 = 0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA; address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = @@ -1152,9 +1152,9 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e, "Constants.FXTL_FXB_20261231"); vm.label(0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba, "Constants.FXTL_FXB_20241231"); vm.label(0x758094A71a39De49626FE25B86631ED944558653, "Constants.FXTL_FXB_20240630"); - vm.label(0xc38173d34afaea88bc482813b3cd267bc8a1ea83, "Constants.FXTL_FXB_20551231"); - vm.label(0xf1e2b576af4c6a7ee966b14c810b772391e92153, "Constants.FXTL_FXB_20291231"); - vm.label(0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca, "Constants.FXTL_FXB_20251231"); + vm.label(0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83, "Constants.FXTL_FXB_20551231"); + vm.label(0xF1e2b576aF4C6a7eE966b14C810b772391e92153, "Constants.FXTL_FXB_20291231"); + vm.label(0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA, "Constants.FXTL_FXB_20251231"); vm.label( 0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE" @@ -3847,7 +3847,7 @@ library Mode { address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x486cb4788f1be7cdef9301a7a637b451df3cf262; + address internal constant REMOTEHOP = 0x486CB4788F1bE7cdEf9301a7a637B451df3Cf262; address internal constant REMOTEMINTREDEEMHOP = 0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9; } @@ -3863,7 +3863,7 @@ abstract contract AddressHelperMode is TestBase { vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); - vm.label(0x486cb4788f1be7cdef9301a7a637b451df3cf262, "Constants.undefined_REMOTEHOP"); + vm.label(0x486CB4788F1bE7cdEf9301a7a637B451df3Cf262, "Constants.undefined_REMOTEHOP"); vm.label(0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9, "Constants.undefined_REMOTEMINTREDEEMHOP"); } } @@ -4414,7 +4414,7 @@ library Scroll { address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0xf6f45ccb5e85d1400067ee66f9e168f83e86124e; + address internal constant REMOTEHOP = 0xF6f45CCB5E85D1400067ee66F9e168f83e86124E; address internal constant REMOTEMINTREDEEMHOP = 0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558; } @@ -4430,7 +4430,7 @@ abstract contract AddressHelperScroll is TestBase { vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SCROLL_SFRXETHOFT"); vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SCROLL_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SCROLL_WFRAXOFT"); - vm.label(0xf6f45ccb5e85d1400067ee66f9e168f83e86124e, "Constants.SCROLL_REMOTEHOP"); + vm.label(0xF6f45CCB5E85D1400067ee66F9e168f83e86124E, "Constants.SCROLL_REMOTEHOP"); vm.label(0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558, "Constants.SCROLL_REMOTEMINTREDEEMHOP"); } } @@ -4537,7 +4537,7 @@ library XLayer { address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; address internal constant REMOTEHOP = 0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396; - address internal constant REMOTEMINTREDEEMHOP = 0x45c6852a5188ce1905567ea83454329bd4982007; + address internal constant REMOTEMINTREDEEMHOP = 0x45c6852A5188Ce1905567EA83454329bd4982007; } abstract contract AddressHelperXLayer is TestBase { @@ -4553,7 +4553,7 @@ abstract contract AddressHelperXLayer is TestBase { vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.XLAYER_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.XLAYER_WFRAXOFT"); vm.label(0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396, "Constants.XLAYER_REMOTEHOP"); - vm.label(0x45c6852a5188ce1905567ea83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); + vm.label(0x45c6852A5188Ce1905567EA83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); } } library ZkSync { diff --git a/src/contracts/chain-constants/FraxtalL2.sol b/src/contracts/chain-constants/FraxtalL2.sol index 27557fe..51626f5 100644 --- a/src/contracts/chain-constants/FraxtalL2.sol +++ b/src/contracts/chain-constants/FraxtalL2.sol @@ -34,9 +34,9 @@ library FraxtalL2 { address internal constant FXB_20261231 = 0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e; address internal constant FXB_20241231 = 0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba; address internal constant FXB_20240630 = 0x758094A71a39De49626FE25B86631ED944558653; - address internal constant FXB_20551231 = 0xc38173d34afaea88bc482813b3cd267bc8a1ea83; - address internal constant FXB_20291231 = 0xf1e2b576af4c6a7ee966b14c810b772391e92153; - address internal constant FXB_20251231 = 0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca; + address internal constant FXB_20551231 = 0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83; + address internal constant FXB_20291231 = 0xF1e2b576aF4C6a7eE966b14C810b772391e92153; + address internal constant FXB_20251231 = 0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA; address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = @@ -206,9 +206,9 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e, "Constants.FXTL_FXB_20261231"); vm.label(0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba, "Constants.FXTL_FXB_20241231"); vm.label(0x758094A71a39De49626FE25B86631ED944558653, "Constants.FXTL_FXB_20240630"); - vm.label(0xc38173d34afaea88bc482813b3cd267bc8a1ea83, "Constants.FXTL_FXB_20551231"); - vm.label(0xf1e2b576af4c6a7ee966b14c810b772391e92153, "Constants.FXTL_FXB_20291231"); - vm.label(0xaca9a33698cf96413a40a4eb9e87906ff40fc6ca, "Constants.FXTL_FXB_20251231"); + vm.label(0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83, "Constants.FXTL_FXB_20551231"); + vm.label(0xF1e2b576aF4C6a7eE966b14C810b772391e92153, "Constants.FXTL_FXB_20291231"); + vm.label(0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA, "Constants.FXTL_FXB_20251231"); vm.label( 0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE" diff --git a/src/contracts/chain-constants/Hyperliquid.sol b/src/contracts/chain-constants/Hyperliquid.sol index c26598a..3b25794 100644 --- a/src/contracts/chain-constants/Hyperliquid.sol +++ b/src/contracts/chain-constants/Hyperliquid.sol @@ -12,8 +12,8 @@ library Hyperliquid { address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - string internal constant REMOTEHOP = 0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2; - string internal constant REMOTEMINTREDEEMHOP = 0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc; + address internal constant REMOTEHOP = 0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2; + address internal constant REMOTEMINTREDEEMHOP = 0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc; } abstract contract AddressHelperHyperliquid is TestBase { diff --git a/src/contracts/chain-constants/Mode.sol b/src/contracts/chain-constants/Mode.sol index 7f1d567..104672f 100644 --- a/src/contracts/chain-constants/Mode.sol +++ b/src/contracts/chain-constants/Mode.sol @@ -12,7 +12,7 @@ library Mode { address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0x486cb4788f1be7cdef9301a7a637b451df3cf262; + address internal constant REMOTEHOP = 0x486CB4788F1bE7cdEf9301a7a637B451df3Cf262; address internal constant REMOTEMINTREDEEMHOP = 0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9; } @@ -28,7 +28,7 @@ abstract contract AddressHelperMode is TestBase { vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.undefined_SFRXETHOFT"); vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.undefined_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.undefined_WFRAXOFT"); - vm.label(0x486cb4788f1be7cdef9301a7a637b451df3cf262, "Constants.undefined_REMOTEHOP"); + vm.label(0x486CB4788F1bE7cdEf9301a7a637B451df3Cf262, "Constants.undefined_REMOTEHOP"); vm.label(0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9, "Constants.undefined_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/Scroll.sol b/src/contracts/chain-constants/Scroll.sol index e14078f..c92b043 100644 --- a/src/contracts/chain-constants/Scroll.sol +++ b/src/contracts/chain-constants/Scroll.sol @@ -12,7 +12,7 @@ library Scroll { address internal constant SFRXETHOFT = 0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45; address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; - address internal constant REMOTEHOP = 0xf6f45ccb5e85d1400067ee66f9e168f83e86124e; + address internal constant REMOTEHOP = 0xF6f45CCB5E85D1400067ee66F9e168f83e86124E; address internal constant REMOTEMINTREDEEMHOP = 0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558; } @@ -28,7 +28,7 @@ abstract contract AddressHelperScroll is TestBase { vm.label(0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45, "Constants.SCROLL_SFRXETHOFT"); vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.SCROLL_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.SCROLL_WFRAXOFT"); - vm.label(0xf6f45ccb5e85d1400067ee66f9e168f83e86124e, "Constants.SCROLL_REMOTEHOP"); + vm.label(0xF6f45CCB5E85D1400067ee66F9e168f83e86124E, "Constants.SCROLL_REMOTEHOP"); vm.label(0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558, "Constants.SCROLL_REMOTEMINTREDEEMHOP"); } } diff --git a/src/contracts/chain-constants/XLayer.sol b/src/contracts/chain-constants/XLayer.sol index 757076d..2cd2e36 100644 --- a/src/contracts/chain-constants/XLayer.sol +++ b/src/contracts/chain-constants/XLayer.sol @@ -13,7 +13,7 @@ library XLayer { address internal constant SFRXUSDOFT = 0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0; address internal constant WFRAXOFT = 0x64445f0aecC51E94aD52d8AC56b7190e764E561a; address internal constant REMOTEHOP = 0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396; - address internal constant REMOTEMINTREDEEMHOP = 0x45c6852a5188ce1905567ea83454329bd4982007; + address internal constant REMOTEMINTREDEEMHOP = 0x45c6852A5188Ce1905567EA83454329bd4982007; } abstract contract AddressHelperXLayer is TestBase { @@ -29,6 +29,6 @@ abstract contract AddressHelperXLayer is TestBase { vm.label(0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0, "Constants.XLAYER_SFRXUSDOFT"); vm.label(0x64445f0aecC51E94aD52d8AC56b7190e764E561a, "Constants.XLAYER_WFRAXOFT"); vm.label(0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396, "Constants.XLAYER_REMOTEHOP"); - vm.label(0x45c6852a5188ce1905567ea83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); + vm.label(0x45c6852A5188Ce1905567EA83454329bd4982007, "Constants.XLAYER_REMOTEMINTREDEEMHOP"); } } From a7172548003aeeefa3245f0dff36647c64067d65 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 10 Feb 2026 02:09:33 +0000 Subject: [PATCH 10/27] feat: add LZ infra, chain IDs, hops, monad, stable constants for frax-lz-mesh --- scripts/constants/abstract.ts | 12 +++++++- scripts/constants/aptos.ts | 10 +++++++ scripts/constants/arbitrum.ts | 12 +++++++- scripts/constants/aurora.ts | 12 +++++++- scripts/constants/avalanche.ts | 11 +++++++ scripts/constants/base.ts | 12 +++++++- scripts/constants/bera.ts | 12 +++++++- scripts/constants/blast.ts | 12 +++++++- scripts/constants/bsc.ts | 12 +++++++- scripts/constants/ethereum.ts | 12 +++++++- scripts/constants/fraxtal-l2.ts | 14 +++++++-- scripts/constants/hyperliquid.ts | 14 +++++++-- scripts/constants/index.ts | 18 +++++++----- scripts/constants/ink.ts | 12 +++++++- scripts/constants/katana.ts | 12 +++++++- scripts/constants/linea.ts | 12 +++++++- scripts/constants/mode.ts | 12 +++++++- scripts/constants/monad.ts | 22 ++++++++++++++ scripts/constants/movement.ts | 10 +++++++ scripts/constants/optimism.ts | 12 +++++++- scripts/constants/plumephoenix.ts | 12 +++++++- scripts/constants/polygon.ts | 12 +++++++- scripts/constants/scroll.ts | 24 +++++++++++----- scripts/constants/sei.ts | 12 +++++++- scripts/constants/solana.ts | 48 +++++++++++++++++++++++++++---- scripts/constants/sonic.ts | 12 +++++++- scripts/constants/stable.ts | 22 ++++++++++++++ scripts/constants/unichain.ts | 12 +++++++- scripts/constants/worldchain.ts | 12 +++++++- scripts/constants/xlayer.ts | 12 +++++++- scripts/constants/zksync.ts | 12 +++++++- 31 files changed, 399 insertions(+), 46 deletions(-) create mode 100644 scripts/constants/monad.ts create mode 100644 scripts/constants/stable.ts diff --git a/scripts/constants/abstract.ts b/scripts/constants/abstract.ts index c1dbf58..1049ffb 100644 --- a/scripts/constants/abstract.ts +++ b/scripts/constants/abstract.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; // FraxtalLZHop export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; -export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x5c6cfF4b7C49805F8295Ff73C204ac83f3bC4AE7"; +export const LZ_RECEIVE_LIB_302 = "0x9d799c1935c51CA399e6465Ed9841DEbCcEc413E"; +export const LZ_SEND_LIB_302 = "0x166CAb679EBDB0853055522D3B523621b94029a1"; +export const LZ_BLOCK_SEND_LIB = "0x3258287147fb7887d8a643006e26e19368057377"; +export const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; + +// Chain IDs +export const LZ_CHAIN_ID = 30324; +export const CHAIN_ID = 2741; diff --git a/scripts/constants/aptos.ts b/scripts/constants/aptos.ts index 933ad7a..b01c985 100644 --- a/scripts/constants/aptos.ts +++ b/scripts/constants/aptos.ts @@ -13,3 +13,13 @@ export const FRXUSDOFT = "0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58 export const SFRXETHOFT = "0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356"; export const SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9"; export const WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; + +// LayerZeroInfra +export const LZ_ENDPOINT = "0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c"; +export const LZ_RECEIVE_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +export const LZ_SEND_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +export const LZ_BLOCK_SEND_LIB = "0x3ca0d187f1938cf9776a0aa821487a650fc7bb2ab1c1d241ba319192aae4afc6"; + +// Chain IDs +export const LZ_CHAIN_ID = 30108; +export const CHAIN_ID = 0; diff --git a/scripts/constants/arbitrum.ts b/scripts/constants/arbitrum.ts index f599455..230249f 100644 --- a/scripts/constants/arbitrum.ts +++ b/scripts/constants/arbitrum.ts @@ -162,4 +162,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A"; -export const REMOTEMINTREDEEMHOP = "0xa46A266dCBf199a71532c76967e200994C5A0D6d"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xa46A266dCBf199a71532c76967e200994C5A0D6d"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x7B9E184e07a6EE1aC23eAe0fe8D6Be2f663f05e6"; +export const LZ_SEND_LIB_302 = "0x975bcD720be66659e3EB3C0e4F1866a3020E493A"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30110; +export const CHAIN_ID = 42161; diff --git a/scripts/constants/aurora.ts b/scripts/constants/aurora.ts index 03321e6..7237114 100644 --- a/scripts/constants/aurora.ts +++ b/scripts/constants/aurora.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x53e36C8380Ff62D7964BFa4868A0045E58A52344"; -export const REMOTEMINTREDEEMHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x000CC1A759bC3A15e664Ed5379E321Be5de1c9B6"; +export const LZ_SEND_LIB_302 = "0x1aCe9DD1BC743aD036eF2D92Af42Ca70A1159df5"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30211; +export const CHAIN_ID = 1313161554; diff --git a/scripts/constants/avalanche.ts b/scripts/constants/avalanche.ts index ec46876..6eddef1 100644 --- a/scripts/constants/avalanche.ts +++ b/scripts/constants/avalanche.ts @@ -72,3 +72,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; + +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0xbf3521d309642FA9B1c91A08609505BA09752c61"; +export const LZ_SEND_LIB_302 = "0x197D1333DEA5Fe0D6600E9b396c7f1B1cFCc558a"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30106; +export const CHAIN_ID = 43114; diff --git a/scripts/constants/base.ts b/scripts/constants/base.ts index 945a9a0..6ee98bb 100644 --- a/scripts/constants/base.ts +++ b/scripts/constants/base.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf"; // FraxtalLZHop export const REMOTEHOP = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; -export const REMOTEMINTREDEEMHOP = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0xc70AB6f32772f59fBfc23889Caf4Ba3376C84bAf"; +export const LZ_SEND_LIB_302 = "0xB5320B0B3a13cC860893E2Bd79FCd7e13484Dda2"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0xF59C41A57AB4565AF7424F64981523DfD7A453c5"; + +// Chain IDs +export const LZ_CHAIN_ID = 30184; +export const CHAIN_ID = 8453; diff --git a/scripts/constants/bera.ts b/scripts/constants/bera.ts index 48b4cb8..97a8cb6 100644 --- a/scripts/constants/bera.ts +++ b/scripts/constants/bera.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; -export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30362; +export const CHAIN_ID = 80094; diff --git a/scripts/constants/blast.ts b/scripts/constants/blast.ts index f6f399a..21b0863 100644 --- a/scripts/constants/blast.ts +++ b/scripts/constants/blast.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0xe93Cb38f97469eac2f284a87813D0d701b28E58e"; -export const REMOTEMINTREDEEMHOP = "0x85b1714b25f40FD5025423124c076476073180b3"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x85b1714b25f40FD5025423124c076476073180b3"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x377530cdA84DFb2673bF4d145DCF0C4D7fdcB5b6"; +export const LZ_SEND_LIB_302 = "0xc1B621b18187F74c8F6D52a6F709Dd2780C09821"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30243; +export const CHAIN_ID = 81457; diff --git a/scripts/constants/bsc.ts b/scripts/constants/bsc.ts index a2cff5a..7a0075b 100644 --- a/scripts/constants/bsc.ts +++ b/scripts/constants/bsc.ts @@ -67,4 +67,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; -export const REMOTEMINTREDEEMHOP = "0xdee45510b42Cb0678C8A61D043C698aF66b0d852"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xdee45510b42Cb0678C8A61D043C698aF66b0d852"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0xB217266c3A98C8B2709Ee26836C98cf12f6cCEC1"; +export const LZ_SEND_LIB_302 = "0x9F8C645f2D0b2159767Bd6E0839DE4BE49e823DE"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30102; +export const CHAIN_ID = 56; diff --git a/scripts/constants/ethereum.ts b/scripts/constants/ethereum.ts index d85b055..7487c9f 100644 --- a/scripts/constants/ethereum.ts +++ b/scripts/constants/ethereum.ts @@ -17,4 +17,14 @@ export const WFRAXOFT = "0x04ACaF8D2865c0714F79da09645C13FD2888977f"; // FraxtalLZHop export const REMOTEHOP = "0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E"; -export const REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0xc02Ab410f0734EFa3F14628780e6e695156024C2"; +export const LZ_SEND_LIB_302 = "0xbB2Ea70C9E858123480642Cf96acbcCE1372dCe1"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30101; +export const CHAIN_ID = 1; diff --git a/scripts/constants/fraxtal-l2.ts b/scripts/constants/fraxtal-l2.ts index 18fdf10..9524369 100644 --- a/scripts/constants/fraxtal-l2.ts +++ b/scripts/constants/fraxtal-l2.ts @@ -1,5 +1,3 @@ -export const CHAIN_ID = 252; - // Canonicals export const FRXUSD = "0xFc00000000000000000000000000000000000001"; export const WFRAX = "0xFc00000000000000000000000000000000000002"; @@ -197,4 +195,14 @@ export const WFRAXOFT = "0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A"; // FraxtalLZHop export const FRAXTALHOP = "0x2A2019b30C157dB6c1C01306b8025167dBe1803B"; -export const FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; \ No newline at end of file +export const FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x8bC1e36F015b9902B54b1387A4d733cebc2f5A4e"; +export const LZ_SEND_LIB_302 = "0x377530cdA84DFb2673bF4d145DCF0C4D7fdcB5b6"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30255; +export const CHAIN_ID = 252; diff --git a/scripts/constants/hyperliquid.ts b/scripts/constants/hyperliquid.ts index 572031b..f06f463 100644 --- a/scripts/constants/hyperliquid.ts +++ b/scripts/constants/hyperliquid.ts @@ -7,5 +7,15 @@ export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop -export const REMOTEHOP = ""; -export const REMOTEMINTREDEEMHOP = ""; \ No newline at end of file +export const REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; +export const REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x3A73033C0b1407574C76BdBAc67f126f6b4a9AA9"; +export const LZ_RECEIVE_LIB_302 = "0x7cacBe439EaD55fa1c22790330b12835c6884a91"; +export const LZ_SEND_LIB_302 = "0xfd76d9CB0Bac839725aB79127E7411fe71b1e3CA"; +export const LZ_BLOCK_SEND_LIB = "0xf540d892bc671f08e0b1c5b61185c53c2211e8f7"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30367; +export const CHAIN_ID = 999; diff --git a/scripts/constants/index.ts b/scripts/constants/index.ts index a500d51..cdd0890 100644 --- a/scripts/constants/index.ts +++ b/scripts/constants/index.ts @@ -18,19 +18,23 @@ export * as Holesky from "./holesky"; export * as Hyperliquid from "./hyperliquid"; export * as Ink from "./ink"; export * as Katana from "./katana"; -export * as Linea from "./linea" +export * as Linea from "./linea"; export * as Mainnet from "./mainnet"; +export * as Monad from "./monad"; export * as Mode from "./mode"; export * as Moonbeam from "./moonbeam"; +export * as Movement from "./movement"; export * as Moonriver from "./moonriver"; export * as Optimism from "./optimism"; export * as Plumephoenix from "./plumephoenix"; export * as Polygon from "./polygon"; export * as PolygonzkEVM from "./polygon-zkevm"; export * as Scroll from "./scroll"; -export * as Solana from "./solana" -export * as Sonic from "./sonic" -export * as Unichain from "./unichain" -export * as Worldchain from "./worldchain" -export * as XLayer from "./xlayer" -export * as ZkSync from "./zksync" +export * as Sei from "./sei"; +export * as Solana from "./solana"; +export * as Sonic from "./sonic"; +export * as Stable from "./stable"; +export * as Unichain from "./unichain"; +export * as Worldchain from "./worldchain"; +export * as XLayer from "./xlayer"; +export * as ZkSync from "./zksync"; diff --git a/scripts/constants/ink.ts b/scripts/constants/ink.ts index 19273ee..3b4a470 100644 --- a/scripts/constants/ink.ts +++ b/scripts/constants/ink.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; -export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0xca29f3A6f966Cb2fc0dE625F8f325c0C46dbE958"; +export const LZ_RECEIVE_LIB_302 = "0x473132bb594caEF281c68718F4541f73FE14Dc89"; +export const LZ_SEND_LIB_302 = "0x76111DE813F83AAAdBD62773Bf41247634e2319a"; +export const LZ_BLOCK_SEND_LIB = "0x796862c4849662bfc30fe7559780923d519d3192"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30339; +export const CHAIN_ID = 57073; diff --git a/scripts/constants/katana.ts b/scripts/constants/katana.ts index ac818ab..4c6ffbd 100644 --- a/scripts/constants/katana.ts +++ b/scripts/constants/katana.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c"; -export const REMOTEMINTREDEEMHOP = "0xF6f45CCB5E85D1400067ee66F9e168f83e86124E"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xF6f45CCB5E85D1400067ee66F9e168f83e86124E"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30375; +export const CHAIN_ID = 747474; diff --git a/scripts/constants/linea.ts b/scripts/constants/linea.ts index 7391dde..0abdf1e 100644 --- a/scripts/constants/linea.ts +++ b/scripts/constants/linea.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5"; // FraxtalLZHop export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; -export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0xE22ED54177CE1148C557de74E4873619e6c6b205"; +export const LZ_SEND_LIB_302 = "0x32042142DD551b4EbE17B6FEd53131dd4b4eEa06"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; + +// Chain IDs +export const LZ_CHAIN_ID = 30183; +export const CHAIN_ID = 59144; diff --git a/scripts/constants/mode.ts b/scripts/constants/mode.ts index 652853a..fd3e07a 100644 --- a/scripts/constants/mode.ts +++ b/scripts/constants/mode.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x486cb4788f1be7cdef9301a7a637b451df3cf262"; -export const REMOTEMINTREDEEMHOP = "0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0xc1B621b18187F74c8F6D52a6F709Dd2780C09821"; +export const LZ_SEND_LIB_302 = "0x2367325334447C5E1E0f1b3a6fB947b262F58312"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30260; +export const CHAIN_ID = 34443; diff --git a/scripts/constants/monad.ts b/scripts/constants/monad.ts new file mode 100644 index 0000000..a103040 --- /dev/null +++ b/scripts/constants/monad.ts @@ -0,0 +1,22 @@ +// LayerZero +export const FPIOFT = "0xba554f7a47f0792b9fa41a1256d4cf628bb1d028"; +export const FRXETHOFT = "0x288f9d76019469bfeb56bb77d86afa2bf563b75b"; +export const FRXUSDOFT = "0x58e3ee6accd124642ddb5d3f91928816be8d8ed3"; +export const SFRXETHOFT = "0x3b4cf37a3335f21c945a40088404c715525fcb29"; +export const SFRXUSDOFT = "0x137643f7b2c189173867b3391f6629cab46f0f1a"; +export const WFRAXOFT = "0x29acc7c504665a5ea95344796f784095f0cfcc58"; + +// FraxtalLZHop +export const REMOTEHOP = "0x40F66FFf44DBBee88058185F2cFE287558D7E532"; +export const REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; + +// LayerZeroInfra +export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +export const FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; + +// Chain IDs +export const LZ_CHAIN_ID = 30390; +export const CHAIN_ID = 143; diff --git a/scripts/constants/movement.ts b/scripts/constants/movement.ts index 933ad7a..6f6fad2 100644 --- a/scripts/constants/movement.ts +++ b/scripts/constants/movement.ts @@ -13,3 +13,13 @@ export const FRXUSDOFT = "0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58 export const SFRXETHOFT = "0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356"; export const SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9"; export const WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; + +// LayerZeroInfra +export const LZ_ENDPOINT = "0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c"; +export const LZ_RECEIVE_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +export const LZ_SEND_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +export const LZ_BLOCK_SEND_LIB = "0x3ca0d187f1938cf9776a0aa821487a650fc7bb2ab1c1d241ba319192aae4afc6"; + +// Chain IDs +export const LZ_CHAIN_ID = 30325; +export const CHAIN_ID = 0; diff --git a/scripts/constants/optimism.ts b/scripts/constants/optimism.ts index d19245d..e18cb6a 100644 --- a/scripts/constants/optimism.ts +++ b/scripts/constants/optimism.ts @@ -63,4 +63,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x31D982ebd82Ad900358984bd049207A4c2468640"; -export const REMOTEMINTREDEEMHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x3c4962Ff6258dcfCafD23a814237B7d6Eb712063"; +export const LZ_SEND_LIB_302 = "0x1322871e4ab09Bc7f5717189434f97bBD9546e95"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30111; +export const CHAIN_ID = 10; diff --git a/scripts/constants/plumephoenix.ts b/scripts/constants/plumephoenix.ts index 1efb4e5..0b3f57f 100644 --- a/scripts/constants/plumephoenix.ts +++ b/scripts/constants/plumephoenix.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; -export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0xC1b15d3B262bEeC0e3565C11C9e0F6134BdaCB36"; +export const LZ_RECEIVE_LIB_302 = "0x5B19bd330A84c049b62D5B0FC2bA120217a18C1C"; +export const LZ_SEND_LIB_302 = "0xFe7C30860D01e28371D40434806F4A8fcDD3A098"; +export const LZ_BLOCK_SEND_LIB = "0x9e611db91ade3312534064ae6ae700f5b531844c"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30370; +export const CHAIN_ID = 98866; diff --git a/scripts/constants/polygon.ts b/scripts/constants/polygon.ts index 13a1816..9518650 100644 --- a/scripts/constants/polygon.ts +++ b/scripts/constants/polygon.ts @@ -67,4 +67,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C"; -export const REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x1322871e4ab09Bc7f5717189434f97bBD9546e95"; +export const LZ_SEND_LIB_302 = "0x6c26c61a97006888ea9E4FA36584c7df57Cd9dA3"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30109; +export const CHAIN_ID = 137; diff --git a/scripts/constants/scroll.ts b/scripts/constants/scroll.ts index 5db5344..6f1a268 100644 --- a/scripts/constants/scroll.ts +++ b/scripts/constants/scroll.ts @@ -1,11 +1,21 @@ // LayerZero -export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; -export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; -export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; -export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; -export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; -export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +export const FPIOFT = "0x93cDc5d29293Cb6983f059Fec6e4FFEb656b6a62"; +export const FRXETHOFT = "0x0097Cf8Ee15800d4f80da8A6cE4dF360D9449Ed5"; +export const FRXUSDOFT = "0x397F939C3b91A74C321ea7129396492bA9Cdce82"; +export const SFRXETHOFT = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; +export const SFRXUSDOFT = "0xC6B2BE25d65760B826D0C852FD35F364250619c2"; +export const WFRAXOFT = "0x879ba0efe1ab0119fefa745a21585fa205b07907"; // FraxtalLZHop export const REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; -export const REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x8363302080e711E0CAb978C081b9e69308d49808"; +export const LZ_SEND_LIB_302 = "0x9BbEb2B2184B9313Cf5ed4a4DDFEa2ef62a2a03B"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; + +// Chain IDs +export const LZ_CHAIN_ID = 30214; +export const CHAIN_ID = 534352; diff --git a/scripts/constants/sei.ts b/scripts/constants/sei.ts index 294d513..8fc0038 100644 --- a/scripts/constants/sei.ts +++ b/scripts/constants/sei.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x3a6F28e8DDD232B02C72C491Bd1626F69D2fb329"; -export const REMOTEMINTREDEEMHOP = "0x0255a172d0a060F2bEab3e7c12334dD73cCC26ba"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x0255a172d0a060F2bEab3e7c12334dD73cCC26ba"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30280; +export const CHAIN_ID = 1329; diff --git a/scripts/constants/solana.ts b/scripts/constants/solana.ts index e430102..e62dedd 100644 --- a/scripts/constants/solana.ts +++ b/scripts/constants/solana.ts @@ -1,13 +1,49 @@ // LayerZero +export const OFT_PROGRAM_ID = "E1ht9dUh1ZkgWWRRPCuN3kExEoF2FXiyADXeN3XyMHaQ"; export const FPIOFT = "0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0"; export const FRXETHOFT = "0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3"; export const FRXUSDOFT = "0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad"; export const SFRXETHOFT = "0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61"; export const SFRXUSDOFT = "0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf"; export const WFRAXOFT = "0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa"; -export const FPI = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH" -export const FRXETH = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf" -export const FRXUSD = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw" -export const SFRXETH = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv" -export const SFRXUSD = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45" -export const WFRAX = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga" \ No newline at end of file + +// Token Mints +export const FPI = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH"; +export const FRXETH = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf"; +export const FRXUSD = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw"; +export const SFRXETH = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv"; +export const SFRXUSD = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45"; +export const WFRAX = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga"; + +// Mint Authorities +export const FPI_MINT_AUTHORITY = "F3YLUzqvJndUpypxUgxsFZQFHD3KUNC5QrkpNJKLBGje"; +export const FRXETH_MINT_AUTHORITY = "Ea6GvxUc4xh4LoPgJXePhKFsUcuW8G2RASdNYyuoohxr"; +export const FRXUSD_MINT_AUTHORITY = "52e8UiVqx28VEqyiEqMbMVehFC3LheNGqnA9m82XF6GK"; +export const SFRXETH_MINT_AUTHORITY = "BVQcQygw2f6nrDu6HNTfQ1ECjRRx8nm2CnBANt4yqqvp"; +export const SFRXUSD_MINT_AUTHORITY = "EK2qrg4ggSVmxNDU3qSvVcKx7HYpmNT3kWbLHMtL5vaV"; +export const WFRAX_MINT_AUTHORITY = "CMCA6bzoCH4KcDZtwCviFYF2c5tasLHjEhX8ThMeCpqk"; + +// Escrows +export const FPI_ESCROW = "EPmy89v6at8rxrV2n1E3xZP74MzaGi7BWdFNiA2xW64Z"; +export const FRXETH_ESCROW = "H17Anco2cnEtSyfSwt4XKhsU7nbFyP57qqXhsff39UW3"; +export const FRXUSD_ESCROW = "84AFSH3TSzyjbEFJX9z8sjpV7npTWq7f8ZR5zkLG22hX"; +export const SFRXETH_ESCROW = "AmjMhAYdCz2crdKYG4U9WMPT7ccHsXSx12qJ5TTjoHYq"; +export const SFRXUSD_ESCROW = "8vRGMiktFX3VhQRfwkaWsAG3KHHzVnRYEKkDKEYzgmCa"; +export const WFRAX_ESCROW = "FwmRDpyFBLkdk7BLRkWF5p5DqwBX2LzVTARGkG5haHbV"; + +// OFT Stores +export const FPI_OFT_STORE = "FFozEKoFQ1CZD6Kn7bpwAxaWhK1jEA76pjucvBBHf9ZH"; +export const FRXETH_OFT_STORE = "4pyqBQFhzsuL7ED76x3AyzT4bCVpMpQWXhS1LqEsfQtz"; +export const FRXUSD_OFT_STORE = "7LS6y37WXXCyBHkBU6zVpiqaqbkXLr4P85ZhQi3eonSp"; +export const SFRXETH_OFT_STORE = "DsJYjDF5yVSopMC15q9W42v833MhWGhCxcU2J39oS3wN"; +export const SFRXUSD_OFT_STORE = "A28EK6j1euK4e6taP1KLFpGEoR1mDpXR4vtfiyCE1Nxv"; +export const WFRAX_OFT_STORE = "5vqBiG7nxNnoCst8mEVVS6ax7C1ypEEenPfcZ4kLgj9B"; +// LayerZeroInfra +export const LZ_ENDPOINT = "76y77prsiCMvXMjuoZ5VRrhG5qYBrUMYTE5WgHqgjEn6"; +export const LZ_RECEIVE_LIB_302 = "7a4WjyR8VZ7yZz5XJAKm39BUGn5iT9CKcv2pmG9tdXVH"; +export const LZ_SEND_LIB_302 = "7a4WjyR8VZ7yZz5XJAKm39BUGn5iT9CKcv2pmG9tdXVH"; +export const LZ_BLOCK_SEND_LIB = "2XrYqmhBMPJgDsb4SVbjV1PnJBprurd5bzRCkHwiFCJB"; + +// Chain IDs +export const LZ_CHAIN_ID = 30168; +export const CHAIN_ID = 0; diff --git a/scripts/constants/sonic.ts b/scripts/constants/sonic.ts index 5b0d672..32af62c 100644 --- a/scripts/constants/sonic.ts +++ b/scripts/constants/sonic.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23"; -export const REMOTEMINTREDEEMHOP = "0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30332; +export const CHAIN_ID = 146; diff --git a/scripts/constants/stable.ts b/scripts/constants/stable.ts new file mode 100644 index 0000000..54cf086 --- /dev/null +++ b/scripts/constants/stable.ts @@ -0,0 +1,22 @@ +// LayerZero +export const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; + +// FraxtalLZHop +export const REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; +export const REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; + +// LayerZeroInfra +export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +export const LZ_RECEIVE_LIB_302 = "0x15e51701F245F6D5bd0FEE87bCAf55B0841451B3"; +export const LZ_SEND_LIB_302 = "0x37aaaf95887624a363effB7762D489E3C05c2a02"; +export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30396; +export const CHAIN_ID = 988; diff --git a/scripts/constants/unichain.ts b/scripts/constants/unichain.ts index 48b4cb8..85c44f5 100644 --- a/scripts/constants/unichain.ts +++ b/scripts/constants/unichain.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; -export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30320; +export const CHAIN_ID = 130; diff --git a/scripts/constants/worldchain.ts b/scripts/constants/worldchain.ts index 4b82a1c..20244f5 100644 --- a/scripts/constants/worldchain.ts +++ b/scripts/constants/worldchain.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x938d99A81814f66b01010d19DDce92A633441699"; -export const REMOTEMINTREDEEMHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30319; +export const CHAIN_ID = 480; diff --git a/scripts/constants/xlayer.ts b/scripts/constants/xlayer.ts index b4e7183..d0dce09 100644 --- a/scripts/constants/xlayer.ts +++ b/scripts/constants/xlayer.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; // FraxtalLZHop export const REMOTEHOP = "0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396"; -export const REMOTEMINTREDEEMHOP = "0x45c6852a5188ce1905567ea83454329bd4982007"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0x45c6852a5188ce1905567ea83454329bd4982007"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +export const LZ_RECEIVE_LIB_302 = "0x2367325334447C5E1E0f1b3a6fB947b262F58312"; +export const LZ_SEND_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// Chain IDs +export const LZ_CHAIN_ID = 30274; +export const CHAIN_ID = 196; diff --git a/scripts/constants/zksync.ts b/scripts/constants/zksync.ts index c1dbf58..dcbd695 100644 --- a/scripts/constants/zksync.ts +++ b/scripts/constants/zksync.ts @@ -8,4 +8,14 @@ export const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; // FraxtalLZHop export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; -export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; \ No newline at end of file +export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; +// LayerZeroInfra +export const LZ_ENDPOINT = "0xd07C30aF3Ff30D96BDc9c6044958230Eb797DDBF"; +export const LZ_RECEIVE_LIB_302 = "0x04830f6deCF08Dec9eD6C3fCAD215245B78A59e1"; +export const LZ_SEND_LIB_302 = "0x07fD0e370B49919cA8dA0CE842B8177263c0E12c"; +export const LZ_BLOCK_SEND_LIB = "0x0fddfc529b5912e1cbe38ccedf8e226566e596d3"; +export const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; + +// Chain IDs +export const LZ_CHAIN_ID = 30165; +export const CHAIN_ID = 324; From ed76392f1f3534931e904682ac73b7a95aa64d69 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 10 Feb 2026 03:14:17 +0000 Subject: [PATCH 11/27] feat: add OFT ABI exports for frax-lz-mesh --- scripts/abis/OFT_ABI.json | 1699 ++++++++++++++++++++ scripts/abis/OFT_ADAPTER_ABI.json | 106 ++ scripts/abis/OFT_MINTABLE_ADAPTER_ABI.json | 1531 ++++++++++++++++++ scripts/abis/index.ts | 5 + tsconfig.json | 2 +- 5 files changed, 3342 insertions(+), 1 deletion(-) create mode 100644 scripts/abis/OFT_ABI.json create mode 100644 scripts/abis/OFT_ADAPTER_ABI.json create mode 100644 scripts/abis/OFT_MINTABLE_ADAPTER_ABI.json create mode 100644 scripts/abis/index.ts diff --git a/scripts/abis/OFT_ABI.json b/scripts/abis/OFT_ABI.json new file mode 100644 index 0000000..a0d74ea --- /dev/null +++ b/scripts/abis/OFT_ABI.json @@ -0,0 +1,1699 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "_lzEndpoint", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "SEND", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint16", + "internalType": "uint16" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "SEND_AND_CALL", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint16", + "internalType": "uint16" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "allowInitializePath", + "inputs": [ + { + "name": "origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "allowance", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approvalRequired", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "approve", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "balanceOf", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "buildMsgAndOptions", + "inputs": [ + { + "name": "_sendParam", + "type": "tuple", + "internalType": "struct SendParam", + "components": [ + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "extraOptions", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "composeMsg", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "oftCmd", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "options", + "type": "bytes", + "internalType": "bytes" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "combineOptions", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_msgType", + "type": "uint16", + "internalType": "uint16" + }, + { + "name": "_extraOptions", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "composeMsgSender", + "inputs": [], + "outputs": [ + { + "name": "sender", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "debitView", + "inputs": [ + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "_minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "amountSentLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimalConversionRate", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decreaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "subtractedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "endpoint", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract ILayerZeroEndpointV2" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "enforcedOptions", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_msgType", + "type": "uint16", + "internalType": "uint16" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "increaseAllowance", + "inputs": [ + { + "name": "spender", + "type": "address", + "internalType": "address" + }, + { + "name": "addedValue", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "initialize", + "inputs": [ + { + "name": "_name", + "type": "string", + "internalType": "string" + }, + { + "name": "_symbol", + "type": "string", + "internalType": "string" + }, + { + "name": "_delegate", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "isPeer", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_peer", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lzReceive", + "inputs": [ + { + "name": "_origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + }, + { + "name": "_guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "_executor", + "type": "address", + "internalType": "address" + }, + { + "name": "_extraData", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "lzReceiveAndRevert", + "inputs": [ + { + "name": "_packets", + "type": "tuple[]", + "internalType": "struct InboundPacket[]", + "components": [ + { + "name": "origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + }, + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "receiver", + "type": "address", + "internalType": "address" + }, + { + "name": "guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "executor", + "type": "address", + "internalType": "address" + }, + { + "name": "message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "extraData", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "lzReceiveSimulate", + "inputs": [ + { + "name": "_origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + }, + { + "name": "_guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "_executor", + "type": "address", + "internalType": "address" + }, + { + "name": "_extraData", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "msgInspector", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "name", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "nextNonce", + "inputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "oApp", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "oAppVersion", + "inputs": [], + "outputs": [ + { + "name": "senderVersion", + "type": "uint64", + "internalType": "uint64" + }, + { + "name": "receiverVersion", + "type": "uint64", + "internalType": "uint64" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "oftVersion", + "inputs": [], + "outputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + }, + { + "name": "version", + "type": "uint64", + "internalType": "uint64" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "owner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "peers", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "preCrime", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quoteOFT", + "inputs": [ + { + "name": "_sendParam", + "type": "tuple", + "internalType": "struct SendParam", + "components": [ + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "extraOptions", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "composeMsg", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "oftCmd", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "outputs": [ + { + "name": "oftLimit", + "type": "tuple", + "internalType": "struct OFTLimit", + "components": [ + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxAmountLD", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "oftFeeDetails", + "type": "tuple[]", + "internalType": "struct OFTFeeDetail[]", + "components": [ + { + "name": "feeAmountLD", + "type": "int256", + "internalType": "int256" + }, + { + "name": "description", + "type": "string", + "internalType": "string" + } + ] + }, + { + "name": "oftReceipt", + "type": "tuple", + "internalType": "struct OFTReceipt", + "components": [ + { + "name": "amountSentLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quoteSend", + "inputs": [ + { + "name": "_sendParam", + "type": "tuple", + "internalType": "struct SendParam", + "components": [ + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "extraOptions", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "composeMsg", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "oftCmd", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "name": "_payInLzToken", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [ + { + "name": "msgFee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "removeDust", + "inputs": [ + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "renounceOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "send", + "inputs": [ + { + "name": "_sendParam", + "type": "tuple", + "internalType": "struct SendParam", + "components": [ + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "extraOptions", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "composeMsg", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "oftCmd", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "name": "_fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "_refundAddress", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "msgReceipt", + "type": "tuple", + "internalType": "struct MessagingReceipt", + "components": [ + { + "name": "guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + }, + { + "name": "fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ] + }, + { + "name": "oftReceipt", + "type": "tuple", + "internalType": "struct OFTReceipt", + "components": [ + { + "name": "amountSentLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "setDelegate", + "inputs": [ + { + "name": "_delegate", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setEnforcedOptions", + "inputs": [ + { + "name": "_enforcedOptions", + "type": "tuple[]", + "internalType": "struct EnforcedOptionParam[]", + "components": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "msgType", + "type": "uint16", + "internalType": "uint16" + }, + { + "name": "options", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setMsgInspector", + "inputs": [ + { + "name": "_msgInspector", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setPeer", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_peer", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setPreCrime", + "inputs": [ + { + "name": "_preCrime", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "sharedDecimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "symbol", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "toLD", + "inputs": [ + { + "name": "_amountSD", + "type": "uint64", + "internalType": "uint64" + } + ], + "outputs": [ + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "toSD", + "inputs": [ + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "amountSD", + "type": "uint64", + "internalType": "uint64" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "token", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transfer", + "inputs": [ + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferFrom", + "inputs": [ + { + "name": "from", + "type": "address", + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "internalType": "address" + }, + { + "name": "amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferOwnership", + "inputs": [ + { + "name": "newOwner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "version", + "inputs": [], + "outputs": [ + { + "name": "major", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minor", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "patch", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "pure" + }, + { + "type": "event", + "name": "Approval", + "inputs": [ + { + "name": "owner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "spender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "EnforcedOptionSet", + "inputs": [ + { + "name": "_enforcedOptions", + "type": "tuple[]", + "indexed": false, + "internalType": "struct EnforcedOptionParam[]", + "components": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "msgType", + "type": "uint16", + "internalType": "uint16" + }, + { + "name": "options", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Initialized", + "inputs": [ + { + "name": "version", + "type": "uint8", + "indexed": false, + "internalType": "uint8" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MsgInspectorSet", + "inputs": [ + { + "name": "inspector", + "type": "address", + "indexed": false, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OFTReceived", + "inputs": [ + { + "name": "guid", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "srcEid", + "type": "uint32", + "indexed": false, + "internalType": "uint32" + }, + { + "name": "toAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OFTSent", + "inputs": [ + { + "name": "guid", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "dstEid", + "type": "uint32", + "indexed": false, + "internalType": "uint32" + }, + { + "name": "fromAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountSentLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OwnershipTransferred", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "PeerSet", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "indexed": false, + "internalType": "uint32" + }, + { + "name": "peer", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "PreCrimeSet", + "inputs": [ + { + "name": "preCrimeAddress", + "type": "address", + "indexed": false, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Transfer", + "inputs": [ + { + "name": "from", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "to", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "value", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "InvalidDelegate", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidEndpointCall", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidLocalDecimals", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidOptions", + "inputs": [ + { + "name": "options", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "type": "error", + "name": "LzTokenUnavailable", + "inputs": [] + }, + { + "type": "error", + "name": "NoPeer", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + } + ] + }, + { + "type": "error", + "name": "NotEnoughNative", + "inputs": [ + { + "name": "msgValue", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "OnlyEndpoint", + "inputs": [ + { + "name": "addr", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "OnlyPeer", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + } + ] + }, + { + "type": "error", + "name": "OnlySelf", + "inputs": [] + }, + { + "type": "error", + "name": "SimulationResult", + "inputs": [ + { + "name": "result", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "type": "error", + "name": "SlippageExceeded", + "inputs": [ + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] diff --git a/scripts/abis/OFT_ADAPTER_ABI.json b/scripts/abis/OFT_ADAPTER_ABI.json new file mode 100644 index 0000000..1e99b62 --- /dev/null +++ b/scripts/abis/OFT_ADAPTER_ABI.json @@ -0,0 +1,106 @@ +[ + { + "inputs": [], + "name": "token", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [{ "internalType": "uint32", "name": "_eid", "type": "uint32" }], + "name": "peers", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "endpoint", + "outputs": [ + { + "internalType": "contract ILayerZeroEndpointV2", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "uint16", + "name": "_msgType", + "type": "uint16" + }, + { + "internalType": "bytes", + "name": "_extraOptions", + "type": "bytes" + } + ], + "name": "combineOptions", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "uint16", + "name": "_msgType", + "type": "uint16" + } + ], + "name": "enforcedOptions", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "_peer", + "type": "bytes32" + } + ], + "name": "isPeer", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } +] diff --git a/scripts/abis/OFT_MINTABLE_ADAPTER_ABI.json b/scripts/abis/OFT_MINTABLE_ADAPTER_ABI.json new file mode 100644 index 0000000..c42a109 --- /dev/null +++ b/scripts/abis/OFT_MINTABLE_ADAPTER_ABI.json @@ -0,0 +1,1531 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "_token", + "type": "address", + "internalType": "address" + }, + { + "name": "_lzEndpoint", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "SEND", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint16", + "internalType": "uint16" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "SEND_AND_CALL", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint16", + "internalType": "uint16" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "allowInitializePath", + "inputs": [ + { + "name": "origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approvalRequired", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "combineOptions", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_msgType", + "type": "uint16", + "internalType": "uint16" + }, + { + "name": "_extraOptions", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "composeMsgSender", + "inputs": [], + "outputs": [ + { + "name": "sender", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "decimalConversionRate", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "endpoint", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract ILayerZeroEndpointV2" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "enforcedOptions", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_msgType", + "type": "uint16", + "internalType": "uint16" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "initialTotalSupply", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "isPeer", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_peer", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lzReceive", + "inputs": [ + { + "name": "_origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + }, + { + "name": "_guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "_executor", + "type": "address", + "internalType": "address" + }, + { + "name": "_extraData", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "lzReceiveAndRevert", + "inputs": [ + { + "name": "_packets", + "type": "tuple[]", + "internalType": "struct InboundPacket[]", + "components": [ + { + "name": "origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + }, + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "receiver", + "type": "address", + "internalType": "address" + }, + { + "name": "guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "executor", + "type": "address", + "internalType": "address" + }, + { + "name": "message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "extraData", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "lzReceiveSimulate", + "inputs": [ + { + "name": "_origin", + "type": "tuple", + "internalType": "struct Origin", + "components": [ + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ] + }, + { + "name": "_guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "_executor", + "type": "address", + "internalType": "address" + }, + { + "name": "_extraData", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "msgInspector", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "nextNonce", + "inputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "oApp", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "oAppVersion", + "inputs": [], + "outputs": [ + { + "name": "senderVersion", + "type": "uint64", + "internalType": "uint64" + }, + { + "name": "receiverVersion", + "type": "uint64", + "internalType": "uint64" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "oftVersion", + "inputs": [], + "outputs": [ + { + "name": "interfaceId", + "type": "bytes4", + "internalType": "bytes4" + }, + { + "name": "version", + "type": "uint64", + "internalType": "uint64" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "owner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "peers", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "preCrime", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quoteOFT", + "inputs": [ + { + "name": "_sendParam", + "type": "tuple", + "internalType": "struct SendParam", + "components": [ + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "extraOptions", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "composeMsg", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "oftCmd", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "outputs": [ + { + "name": "oftLimit", + "type": "tuple", + "internalType": "struct OFTLimit", + "components": [ + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "maxAmountLD", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "oftFeeDetails", + "type": "tuple[]", + "internalType": "struct OFTFeeDetail[]", + "components": [ + { + "name": "feeAmountLD", + "type": "int256", + "internalType": "int256" + }, + { + "name": "description", + "type": "string", + "internalType": "string" + } + ] + }, + { + "name": "oftReceipt", + "type": "tuple", + "internalType": "struct OFTReceipt", + "components": [ + { + "name": "amountSentLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quoteSend", + "inputs": [ + { + "name": "_sendParam", + "type": "tuple", + "internalType": "struct SendParam", + "components": [ + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "extraOptions", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "composeMsg", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "oftCmd", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "name": "_payInLzToken", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [ + { + "name": "msgFee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "recover", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "renounceOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "send", + "inputs": [ + { + "name": "_sendParam", + "type": "tuple", + "internalType": "struct SendParam", + "components": [ + { + "name": "dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "extraOptions", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "composeMsg", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "oftCmd", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "name": "_fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "_refundAddress", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "msgReceipt", + "type": "tuple", + "internalType": "struct MessagingReceipt", + "components": [ + { + "name": "guid", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + }, + { + "name": "fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ] + }, + { + "name": "oftReceipt", + "type": "tuple", + "internalType": "struct OFTReceipt", + "components": [ + { + "name": "amountSentLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "setDelegate", + "inputs": [ + { + "name": "_delegate", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setEnforcedOptions", + "inputs": [ + { + "name": "_enforcedOptions", + "type": "tuple[]", + "internalType": "struct EnforcedOptionParam[]", + "components": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "msgType", + "type": "uint16", + "internalType": "uint16" + }, + { + "name": "options", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setInitialTotalSupply", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_amount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setMsgInspector", + "inputs": [ + { + "name": "_msgInspector", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setPeer", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_peer", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setPreCrime", + "inputs": [ + { + "name": "_preCrime", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "sharedDecimals", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "pure" + }, + { + "type": "function", + "name": "token", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalSupply", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalTransferFrom", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalTransferFromSum", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalTransferTo", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalTransferToSum", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalTransfers", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "from", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "totalTransfersAndInitialTotalSupply", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "from", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "to", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "initialTotalSupply_", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferOwnership", + "inputs": [ + { + "name": "newOwner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "version", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "pure" + }, + { + "type": "event", + "name": "AddToTotalTransferFromEid", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "previousTotalAmount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddToTotalTransferFromSum", + "inputs": [ + { + "name": "previousTotalAmount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddToTotalTransferToEid", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "previousTotalAmount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "AddToTotalTransferToSum", + "inputs": [ + { + "name": "previousTotalAmount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "EnforcedOptionSet", + "inputs": [ + { + "name": "_enforcedOptions", + "type": "tuple[]", + "indexed": false, + "internalType": "struct EnforcedOptionParam[]", + "components": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "msgType", + "type": "uint16", + "internalType": "uint16" + }, + { + "name": "options", + "type": "bytes", + "internalType": "bytes" + } + ] + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "Initialized", + "inputs": [ + { + "name": "version", + "type": "uint8", + "indexed": false, + "internalType": "uint8" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MsgInspectorSet", + "inputs": [ + { + "name": "inspector", + "type": "address", + "indexed": false, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OFTReceived", + "inputs": [ + { + "name": "guid", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "srcEid", + "type": "uint32", + "indexed": false, + "internalType": "uint32" + }, + { + "name": "toAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OFTSent", + "inputs": [ + { + "name": "guid", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "dstEid", + "type": "uint32", + "indexed": false, + "internalType": "uint32" + }, + { + "name": "fromAddress", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountSentLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "amountReceivedLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OwnershipTransferred", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "PeerSet", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "indexed": false, + "internalType": "uint32" + }, + { + "name": "peer", + "type": "bytes32", + "indexed": false, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "PreCrimeSet", + "inputs": [ + { + "name": "preCrimeAddress", + "type": "address", + "indexed": false, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "SetInitialTotalSupply", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "InvalidDelegate", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidEndpointCall", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidLocalDecimals", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidOptions", + "inputs": [ + { + "name": "options", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "type": "error", + "name": "LzTokenUnavailable", + "inputs": [] + }, + { + "type": "error", + "name": "NoPeer", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + } + ] + }, + { + "type": "error", + "name": "NotEnoughNative", + "inputs": [ + { + "name": "msgValue", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "OnlyEndpoint", + "inputs": [ + { + "name": "addr", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "OnlyPeer", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "sender", + "type": "bytes32", + "internalType": "bytes32" + } + ] + }, + { + "type": "error", + "name": "OnlySelf", + "inputs": [] + }, + { + "type": "error", + "name": "SimulationResult", + "inputs": [ + { + "name": "result", + "type": "bytes", + "internalType": "bytes" + } + ] + }, + { + "type": "error", + "name": "SlippageExceeded", + "inputs": [ + { + "name": "amountLD", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "minAmountLD", + "type": "uint256", + "internalType": "uint256" + } + ] + } +] diff --git a/scripts/abis/index.ts b/scripts/abis/index.ts new file mode 100644 index 0000000..a2d67c7 --- /dev/null +++ b/scripts/abis/index.ts @@ -0,0 +1,5 @@ +import OFT_ABI from "./OFT_ABI.json"; +import OFT_ADAPTER_ABI from "./OFT_ADAPTER_ABI.json"; +import OFT_MINTABLE_ADAPTER_ABI from "./OFT_MINTABLE_ADAPTER_ABI.json"; + +export { OFT_ABI, OFT_ADAPTER_ABI, OFT_MINTABLE_ADAPTER_ABI }; diff --git a/tsconfig.json b/tsconfig.json index 2aad328..b350858 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -18,5 +18,5 @@ "outDir": "dist" }, "exclude": ["node_modules"], - "include": ["script/**/*"] + "include": ["script/**/*", "scripts/**/*"] } From 77a0078cf70c1577dcc761cb70e791b5be275a13 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 10 Feb 2026 03:22:28 +0000 Subject: [PATCH 12/27] feat: add all LZ ABIs (endpoint, ULN, hops, proxy admin, ERC20) --- scripts/abis/ENDPOINTV2_ABI.json | 2352 +++++++++++++++++++++ scripts/abis/ERC20/index.js | 225 ++ scripts/abis/ERC20/index.ts | 222 ++ scripts/abis/FRAXTAL_HOP.json | 448 ++++ scripts/abis/FRAXTAL_MINT_REDEEM_HOP.json | 559 +++++ scripts/abis/FRAX_PROXY_ADMIN_ABI.json | 172 ++ scripts/abis/RECEIVE_ULN302_ABI.json | 748 +++++++ scripts/abis/REMOTE_HOP_ABI.json | 642 ++++++ scripts/abis/REMOTE_MINT_REDEEM_HOP.json | 610 ++++++ scripts/abis/SEND_ULN302_ABI.json | 1250 +++++++++++ scripts/abis/index.ts | 23 +- 11 files changed, 7250 insertions(+), 1 deletion(-) create mode 100644 scripts/abis/ENDPOINTV2_ABI.json create mode 100644 scripts/abis/ERC20/index.js create mode 100644 scripts/abis/ERC20/index.ts create mode 100644 scripts/abis/FRAXTAL_HOP.json create mode 100644 scripts/abis/FRAXTAL_MINT_REDEEM_HOP.json create mode 100644 scripts/abis/FRAX_PROXY_ADMIN_ABI.json create mode 100644 scripts/abis/RECEIVE_ULN302_ABI.json create mode 100644 scripts/abis/REMOTE_HOP_ABI.json create mode 100644 scripts/abis/REMOTE_MINT_REDEEM_HOP.json create mode 100644 scripts/abis/SEND_ULN302_ABI.json diff --git a/scripts/abis/ENDPOINTV2_ABI.json b/scripts/abis/ENDPOINTV2_ABI.json new file mode 100644 index 0000000..c33f3f4 --- /dev/null +++ b/scripts/abis/ENDPOINTV2_ABI.json @@ -0,0 +1,2352 @@ +[ + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_owner", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "LZ_AlreadyRegistered", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ComposeExists", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "expected", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "actual", + "type": "bytes32" + } + ], + "name": "LZ_ComposeNotFound", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_DefaultReceiveLibUnavailable", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_DefaultSendLibUnavailable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "requiredNative", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "suppliedNative", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "requiredLzToken", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "suppliedLzToken", + "type": "uint256" + } + ], + "name": "LZ_InsufficientFee", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_InvalidExpiry", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "name": "LZ_InvalidNonce", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_InvalidPayloadHash", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_InvalidReceiveLibrary", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_LzTokenUnavailable", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_OnlyNonDefaultLib", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_OnlyReceiveLib", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_OnlyRegisteredLib", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_OnlyRegisteredOrDefaultLib", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_OnlySendLib", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_PathNotInitializable", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_PathNotVerifiable", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "expected", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "actual", + "type": "bytes32" + } + ], + "name": "LZ_PayloadHashNotFound", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_SameValue", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_SendReentrancy", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_Unauthorized", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_UnsupportedEid", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_UnsupportedInterface", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ZeroLzTokenFee", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "Transfer_NativeFailed", + "type": "error" + }, + { + "inputs": [], + "name": "Transfer_ToAddressIsZero", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "index", + "type": "uint16" + } + ], + "name": "ComposeDelivered", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "index", + "type": "uint16" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "message", + "type": "bytes" + } + ], + "name": "ComposeSent", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "address", + "name": "newLib", + "type": "address" + } + ], + "name": "DefaultReceiveLibrarySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "address", + "name": "oldLib", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "expiry", + "type": "uint256" + } + ], + "name": "DefaultReceiveLibraryTimeoutSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "address", + "name": "newLib", + "type": "address" + } + ], + "name": "DefaultSendLibrarySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "delegate", + "type": "address" + } + ], + "name": "DelegateSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "name": "InboundNonceSkipped", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "newLib", + "type": "address" + } + ], + "name": "LibraryRegistered", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "executor", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint16", + "name": "index", + "type": "uint16" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gas", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "message", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "reason", + "type": "bytes" + } + ], + "name": "LzComposeAlert", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "executor", + "type": "address" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "indexed": false, + "internalType": "struct Origin", + "name": "origin", + "type": "tuple" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "gas", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "value", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "message", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "extraData", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "reason", + "type": "bytes" + } + ], + "name": "LzReceiveAlert", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "token", + "type": "address" + } + ], + "name": "LzTokenSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + } + ], + "name": "PacketBurnt", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "indexed": false, + "internalType": "struct Origin", + "name": "origin", + "type": "tuple" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + } + ], + "name": "PacketDelivered", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + } + ], + "name": "PacketNilified", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "bytes", + "name": "encodedPayload", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "options", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "address", + "name": "sendLibrary", + "type": "address" + } + ], + "name": "PacketSent", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "indexed": false, + "internalType": "struct Origin", + "name": "origin", + "type": "tuple" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + } + ], + "name": "PacketVerified", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "address", + "name": "newLib", + "type": "address" + } + ], + "name": "ReceiveLibrarySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "address", + "name": "oldLib", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "timeout", + "type": "uint256" + } + ], + "name": "ReceiveLibraryTimeoutSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "indexed": false, + "internalType": "address", + "name": "newLib", + "type": "address" + } + ], + "name": "SendLibrarySet", + "type": "event" + }, + { + "inputs": [], + "name": "EMPTY_PAYLOAD_HASH", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "NIL_PAYLOAD_HASH", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "blockedLibrary", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "_sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "_nonce", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "_payloadHash", + "type": "bytes32" + } + ], + "name": "burn", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "internalType": "struct Origin", + "name": "_origin", + "type": "tuple" + }, + { + "internalType": "bytes32", + "name": "_guid", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "_message", + "type": "bytes" + } + ], + "name": "clear", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "from", + "type": "address" + }, + { + "internalType": "address", + "name": "to", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "index", + "type": "uint16" + } + ], + "name": "composeQueue", + "outputs": [ + { + "internalType": "bytes32", + "name": "messageHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + } + ], + "name": "defaultReceiveLibrary", + "outputs": [ + { + "internalType": "address", + "name": "lib", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + } + ], + "name": "defaultReceiveLibraryTimeout", + "outputs": [ + { + "internalType": "address", + "name": "lib", + "type": "address" + }, + { + "internalType": "uint256", + "name": "expiry", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "dstEid", + "type": "uint32" + } + ], + "name": "defaultSendLibrary", + "outputs": [ + { + "internalType": "address", + "name": "lib", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "oapp", + "type": "address" + } + ], + "name": "delegates", + "outputs": [ + { + "internalType": "address", + "name": "delegate", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "eid", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "address", + "name": "_lib", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "_configType", + "type": "uint32" + } + ], + "name": "getConfig", + "outputs": [ + { + "internalType": "bytes", + "name": "config", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_srcEid", + "type": "uint32" + } + ], + "name": "getReceiveLibrary", + "outputs": [ + { + "internalType": "address", + "name": "lib", + "type": "address" + }, + { + "internalType": "bool", + "name": "isDefault", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getRegisteredLibraries", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getSendContext", + "outputs": [ + { + "internalType": "uint32", + "name": "", + "type": "uint32" + }, + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_dstEid", + "type": "uint32" + } + ], + "name": "getSendLibrary", + "outputs": [ + { + "internalType": "address", + "name": "lib", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "_sender", + "type": "bytes32" + } + ], + "name": "inboundNonce", + "outputs": [ + { + "internalType": "uint64", + "name": "", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "inboundNonce", + "type": "uint64" + } + ], + "name": "inboundPayloadHash", + "outputs": [ + { + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "internalType": "struct Origin", + "name": "_origin", + "type": "tuple" + }, + { + "internalType": "address", + "name": "_receiver", + "type": "address" + } + ], + "name": "initializable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_dstEid", + "type": "uint32" + } + ], + "name": "isDefaultSendLibrary", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "lib", + "type": "address" + } + ], + "name": "isRegisteredLibrary", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isSendingMessage", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + } + ], + "name": "isSupportedEid", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_srcEid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_actualReceiveLib", + "type": "address" + } + ], + "name": "isValidReceiveLibrary", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + } + ], + "name": "lazyInboundNonce", + "outputs": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_guid", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "_index", + "type": "uint16" + }, + { + "internalType": "bytes", + "name": "_message", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "_extraData", + "type": "bytes" + } + ], + "name": "lzCompose", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_from", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_guid", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "_index", + "type": "uint16" + }, + { + "internalType": "uint256", + "name": "_gas", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_message", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "_extraData", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "_reason", + "type": "bytes" + } + ], + "name": "lzComposeAlert", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "internalType": "struct Origin", + "name": "_origin", + "type": "tuple" + }, + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_guid", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "_message", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "_extraData", + "type": "bytes" + } + ], + "name": "lzReceive", + "outputs": [], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "internalType": "struct Origin", + "name": "_origin", + "type": "tuple" + }, + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_guid", + "type": "bytes32" + }, + { + "internalType": "uint256", + "name": "_gas", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + }, + { + "internalType": "bytes", + "name": "_message", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "_extraData", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "_reason", + "type": "bytes" + } + ], + "name": "lzReceiveAlert", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "lzToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "nativeToken", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_sender", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_dstEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "_receiver", + "type": "bytes32" + } + ], + "name": "nextGuid", + "outputs": [ + { + "internalType": "bytes32", + "name": "", + "type": "bytes32" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "_sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "_nonce", + "type": "uint64" + }, + { + "internalType": "bytes32", + "name": "_payloadHash", + "type": "bytes32" + } + ], + "name": "nilify", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint32", + "name": "dstEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "receiver", + "type": "bytes32" + } + ], + "name": "outboundNonce", + "outputs": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "dstEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "receiver", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "message", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "options", + "type": "bytes" + }, + { + "internalType": "bool", + "name": "payInLzToken", + "type": "bool" + } + ], + "internalType": "struct MessagingParams", + "name": "_params", + "type": "tuple" + }, + { + "internalType": "address", + "name": "_sender", + "type": "address" + } + ], + "name": "quote", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "nativeFee", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lzTokenFee", + "type": "uint256" + } + ], + "internalType": "struct MessagingFee", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + } + ], + "name": "receiveLibraryTimeout", + "outputs": [ + { + "internalType": "address", + "name": "lib", + "type": "address" + }, + { + "internalType": "uint256", + "name": "expiry", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_token", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "recoverToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_lib", + "type": "address" + } + ], + "name": "registerLibrary", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "dstEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "receiver", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "message", + "type": "bytes" + }, + { + "internalType": "bytes", + "name": "options", + "type": "bytes" + }, + { + "internalType": "bool", + "name": "payInLzToken", + "type": "bool" + } + ], + "internalType": "struct MessagingParams", + "name": "_params", + "type": "tuple" + }, + { + "internalType": "address", + "name": "_refundAddress", + "type": "address" + } + ], + "name": "send", + "outputs": [ + { + "components": [ + { + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + }, + { + "components": [ + { + "internalType": "uint256", + "name": "nativeFee", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lzTokenFee", + "type": "uint256" + } + ], + "internalType": "struct MessagingFee", + "name": "fee", + "type": "tuple" + } + ], + "internalType": "struct MessagingReceipt", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "payable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_guid", + "type": "bytes32" + }, + { + "internalType": "uint16", + "name": "_index", + "type": "uint16" + }, + { + "internalType": "bytes", + "name": "_message", + "type": "bytes" + } + ], + "name": "sendCompose", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "address", + "name": "_lib", + "type": "address" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "configType", + "type": "uint32" + }, + { + "internalType": "bytes", + "name": "config", + "type": "bytes" + } + ], + "internalType": "struct SetConfigParam[]", + "name": "_params", + "type": "tuple[]" + } + ], + "name": "setConfig", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_newLib", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_gracePeriod", + "type": "uint256" + } + ], + "name": "setDefaultReceiveLibrary", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_lib", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_expiry", + "type": "uint256" + } + ], + "name": "setDefaultReceiveLibraryTimeout", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_newLib", + "type": "address" + } + ], + "name": "setDefaultSendLibrary", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_delegate", + "type": "address" + } + ], + "name": "setDelegate", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_lzToken", + "type": "address" + } + ], + "name": "setLzToken", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_newLib", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_gracePeriod", + "type": "uint256" + } + ], + "name": "setReceiveLibrary", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_lib", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_expiry", + "type": "uint256" + } + ], + "name": "setReceiveLibraryTimeout", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_newLib", + "type": "address" + } + ], + "name": "setSendLibrary", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "_sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "_nonce", + "type": "uint64" + } + ], + "name": "skip", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "internalType": "struct Origin", + "name": "_origin", + "type": "tuple" + }, + { + "internalType": "address", + "name": "_receiver", + "type": "address" + } + ], + "name": "verifiable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "sender", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + } + ], + "internalType": "struct Origin", + "name": "_origin", + "type": "tuple" + }, + { + "internalType": "address", + "name": "_receiver", + "type": "address" + }, + { + "internalType": "bytes32", + "name": "_payloadHash", + "type": "bytes32" + } + ], + "name": "verify", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + } +] diff --git a/scripts/abis/ERC20/index.js b/scripts/abis/ERC20/index.js new file mode 100644 index 0000000..63b05e4 --- /dev/null +++ b/scripts/abis/ERC20/index.js @@ -0,0 +1,225 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ERC20ABI = void 0; +exports.ERC20ABI = [ + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + name: "_spender", + type: "address", + }, + { + name: "_value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + name: "_from", + type: "address", + }, + { + name: "_to", + type: "address", + }, + { + name: "_value", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + name: "_owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + name: "balance", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + name: "_to", + type: "address", + }, + { + name: "_value", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + name: "_owner", + type: "address", + }, + { + name: "_spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + payable: true, + stateMutability: "payable", + type: "fallback", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + name: "owner", + type: "address", + }, + { + indexed: true, + name: "spender", + type: "address", + }, + { + indexed: false, + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + name: "from", + type: "address", + }, + { + indexed: true, + name: "to", + type: "address", + }, + { + indexed: false, + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, +]; diff --git a/scripts/abis/ERC20/index.ts b/scripts/abis/ERC20/index.ts new file mode 100644 index 0000000..67be949 --- /dev/null +++ b/scripts/abis/ERC20/index.ts @@ -0,0 +1,222 @@ +export const ERC20ABI = [ + { + constant: true, + inputs: [], + name: "name", + outputs: [ + { + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + name: "_spender", + type: "address", + }, + { + name: "_value", + type: "uint256", + }, + ], + name: "approve", + outputs: [ + { + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "totalSupply", + outputs: [ + { + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + name: "_from", + type: "address", + }, + { + name: "_to", + type: "address", + }, + { + name: "_value", + type: "uint256", + }, + ], + name: "transferFrom", + outputs: [ + { + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [], + name: "decimals", + outputs: [ + { + name: "", + type: "uint8", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [ + { + name: "_owner", + type: "address", + }, + ], + name: "balanceOf", + outputs: [ + { + name: "balance", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: true, + inputs: [], + name: "symbol", + outputs: [ + { + name: "", + type: "string", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + constant: false, + inputs: [ + { + name: "_to", + type: "address", + }, + { + name: "_value", + type: "uint256", + }, + ], + name: "transfer", + outputs: [ + { + name: "", + type: "bool", + }, + ], + payable: false, + stateMutability: "nonpayable", + type: "function", + }, + { + constant: true, + inputs: [ + { + name: "_owner", + type: "address", + }, + { + name: "_spender", + type: "address", + }, + ], + name: "allowance", + outputs: [ + { + name: "", + type: "uint256", + }, + ], + payable: false, + stateMutability: "view", + type: "function", + }, + { + payable: true, + stateMutability: "payable", + type: "fallback", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + name: "owner", + type: "address", + }, + { + indexed: true, + name: "spender", + type: "address", + }, + { + indexed: false, + name: "value", + type: "uint256", + }, + ], + name: "Approval", + type: "event", + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + name: "from", + type: "address", + }, + { + indexed: true, + name: "to", + type: "address", + }, + { + indexed: false, + name: "value", + type: "uint256", + }, + ], + name: "Transfer", + type: "event", + }, +]; diff --git a/scripts/abis/FRAXTAL_HOP.json b/scripts/abis/FRAXTAL_HOP.json new file mode 100644 index 0000000..d8d07ce --- /dev/null +++ b/scripts/abis/FRAXTAL_HOP.json @@ -0,0 +1,448 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "_approvedOfts", + "type": "address[]", + "internalType": "address[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "receive", + "stateMutability": "payable" + }, + { + "type": "function", + "name": "ENDPOINT", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "acceptOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedOft", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lzCompose", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "messageProcessed", + "inputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "owner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pause", + "inputs": [ + { + "name": "_paused", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "paused", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pendingOwner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quote", + "inputs": [ + { + "name": "oft", + "type": "address", + "internalType": "address" + }, + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "recoverERC20", + "inputs": [ + { + "name": "tokenAddress", + "type": "address", + "internalType": "address" + }, + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "recoverETH", + "inputs": [ + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "remoteHop", + "inputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "renounceOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setMessageProcessed", + "inputs": [ + { + "name": "oft", + "type": "address", + "internalType": "address" + }, + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + }, + { + "name": "composeFrom", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setRemoteHop", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_remoteHop", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setRemoteHop", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_remoteHop", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "toggleOFTApproval", + "inputs": [ + { + "name": "oft", + "type": "address", + "internalType": "address" + }, + { + "name": "approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferOwnership", + "inputs": [ + { + "name": "newOwner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Hop", + "inputs": [ + { + "name": "oft", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "srcEid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "dstEid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "recipient", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + }, + { + "name": "options", + "type": "bytes", + "indexed": false, + "internalType": "bytes" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MessagingFeePaid", + "inputs": [ + { + "name": "fee", + "type": "tuple", + "indexed": false, + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "name": "payer", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "paymentData", + "type": "bytes", + "indexed": false, + "internalType": "bytes" + } + ], + "anonymous": false + } +] diff --git a/scripts/abis/FRAXTAL_MINT_REDEEM_HOP.json b/scripts/abis/FRAXTAL_MINT_REDEEM_HOP.json new file mode 100644 index 0000000..29156c6 --- /dev/null +++ b/scripts/abis/FRAXTAL_MINT_REDEEM_HOP.json @@ -0,0 +1,559 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "_frxUsdLockbox", + "type": "address", + "internalType": "address" + }, + { + "name": "_sfrxUsdLockbox", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "receive", + "stateMutability": "payable" + }, + { + "type": "function", + "name": "ENDPOINT", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "acceptOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "fraxtalERC4626MintRedeemer", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract IFraxtalERC4626MintRedeemer" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "frxUsdLockbox", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "lzCompose", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_message", + "type": "bytes", + "internalType": "bytes" + }, + { + "name": "", + "type": "address", + "internalType": "address" + }, + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "messageProcessed", + "inputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "owner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pause", + "inputs": [ + { + "name": "_paused", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "paused", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pendingOwner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quote", + "inputs": [ + { + "name": "oft", + "type": "address", + "internalType": "address" + }, + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "recoverERC20", + "inputs": [ + { + "name": "tokenAddress", + "type": "address", + "internalType": "address" + }, + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "recoverETH", + "inputs": [ + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "remoteHop", + "inputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "renounceOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setFrxUsdLockbox", + "inputs": [ + { + "name": "_frxUsdLockbox", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setMessageProcessed", + "inputs": [ + { + "name": "oft", + "type": "address", + "internalType": "address" + }, + { + "name": "srcEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "nonce", + "type": "uint64", + "internalType": "uint64" + }, + { + "name": "composeFrom", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setRemoteHop", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_remoteHop", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setRemoteHop", + "inputs": [ + { + "name": "_eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_remoteHop", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setSfrxUsdLockbox", + "inputs": [ + { + "name": "_sfrxUsdLockbox", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "sfrxUsdLockbox", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferOwnership", + "inputs": [ + { + "name": "newOwner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "event", + "name": "Hop", + "inputs": [ + { + "name": "oft", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "srcEid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "dstEid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "recipient", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "amount", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "MessageHash", + "inputs": [ + { + "name": "oft", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "srcEid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "nonce", + "type": "uint64", + "indexed": true, + "internalType": "uint64" + }, + { + "name": "composeFrom", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OwnershipTransferStarted", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OwnershipTransferred", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "HopPaused", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidOFT", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidSourceChain", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidSourceHop", + "inputs": [] + }, + { + "type": "error", + "name": "NotEndpoint", + "inputs": [] + }, + { + "type": "error", + "name": "OwnableInvalidOwner", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "OwnableUnauthorizedAccount", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "ZeroAmountSend", + "inputs": [] + } +] diff --git a/scripts/abis/FRAX_PROXY_ADMIN_ABI.json b/scripts/abis/FRAX_PROXY_ADMIN_ABI.json new file mode 100644 index 0000000..fefc146 --- /dev/null +++ b/scripts/abis/FRAX_PROXY_ADMIN_ABI.json @@ -0,0 +1,172 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "_admin", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "changeProxyAdmin", + "inputs": [ + { + "name": "proxy", + "type": "address", + "internalType": "contract TransparentUpgradeableProxy" + }, + { + "name": "newAdmin", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "getProxyAdmin", + "inputs": [ + { + "name": "proxy", + "type": "address", + "internalType": "contract TransparentUpgradeableProxy" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getProxyImplementation", + "inputs": [ + { + "name": "proxy", + "type": "address", + "internalType": "contract TransparentUpgradeableProxy" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "owner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "renounceOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferOwnership", + "inputs": [ + { + "name": "newOwner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "upgrade", + "inputs": [ + { + "name": "proxy", + "type": "address", + "internalType": "contract TransparentUpgradeableProxy" + }, + { + "name": "implementation", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "upgradeAndCall", + "inputs": [ + { + "name": "proxy", + "type": "address", + "internalType": "contract TransparentUpgradeableProxy" + }, + { + "name": "implementation", + "type": "address", + "internalType": "address" + }, + { + "name": "data", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "event", + "name": "OwnershipTransferred", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "AdminCallFailed", + "inputs": [] + }, + { + "type": "error", + "name": "ImplementationCallFailed", + "inputs": [] + } +] diff --git a/scripts/abis/RECEIVE_ULN302_ABI.json b/scripts/abis/RECEIVE_ULN302_ABI.json new file mode 100644 index 0000000..8b39a4f --- /dev/null +++ b/scripts/abis/RECEIVE_ULN302_ABI.json @@ -0,0 +1,748 @@ +[ + { + "inputs": [ + { + "internalType": "address", + "name": "_endpoint", + "type": "address" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "LZ_MessageLib_OnlyEndpoint", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_AtLeastOneDVN", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "configType", + "type": "uint32" + } + ], + "name": "LZ_ULN_InvalidConfigType", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidConfirmations", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidEid", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidOptionalDVNCount", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidOptionalDVNThreshold", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidPacketHeader", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidPacketVersion", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidRequiredDVNCount", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_Unsorted", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + } + ], + "name": "LZ_ULN_UnsupportedEid", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_Verifying", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "config", + "type": "tuple" + } + ], + "indexed": false, + "internalType": "struct SetDefaultUlnConfigParam[]", + "name": "params", + "type": "tuple[]" + } + ], + "name": "DefaultUlnConfigsSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "dvn", + "type": "address" + }, + { + "indexed": false, + "internalType": "bytes", + "name": "header", + "type": "bytes" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "confirmations", + "type": "uint256" + }, + { + "indexed": false, + "internalType": "bytes32", + "name": "proofHash", + "type": "bytes32" + } + ], + "name": "PayloadVerified", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "oapp", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "indexed": false, + "internalType": "struct UlnConfig", + "name": "config", + "type": "tuple" + } + ], + "name": "UlnConfigSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_packetHeader", + "type": "bytes" + }, + { + "internalType": "uint32", + "name": "_localEid", + "type": "uint32" + } + ], + "name": "assertHeader", + "outputs": [], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_packetHeader", + "type": "bytes" + }, + { + "internalType": "bytes32", + "name": "_payloadHash", + "type": "bytes32" + } + ], + "name": "commitVerification", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_remoteEid", + "type": "uint32" + } + ], + "name": "getAppUlnConfig", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_configType", + "type": "uint32" + } + ], + "name": "getConfig", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_remoteEid", + "type": "uint32" + } + ], + "name": "getUlnConfig", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "rtnConfig", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes32", + "name": "headerHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "payloadHash", + "type": "bytes32" + }, + { + "internalType": "address", + "name": "dvn", + "type": "address" + } + ], + "name": "hashLookup", + "outputs": [ + { + "internalType": "bool", + "name": "submitted", + "type": "bool" + }, + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + } + ], + "name": "isSupportedEid", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "messageLibType", + "outputs": [ + { + "internalType": "enum MessageLibType", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "configType", + "type": "uint32" + }, + { + "internalType": "bytes", + "name": "config", + "type": "bytes" + } + ], + "internalType": "struct SetConfigParam[]", + "name": "_params", + "type": "tuple[]" + } + ], + "name": "setConfig", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "config", + "type": "tuple" + } + ], + "internalType": "struct SetDefaultUlnConfigParam[]", + "name": "_params", + "type": "tuple[]" + } + ], + "name": "setDefaultUlnConfigs", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "_interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "_config", + "type": "tuple" + }, + { + "internalType": "bytes32", + "name": "_headerHash", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "_payloadHash", + "type": "bytes32" + } + ], + "name": "verifiable", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes", + "name": "_packetHeader", + "type": "bytes" + }, + { + "internalType": "bytes32", + "name": "_payloadHash", + "type": "bytes32" + }, + { + "internalType": "uint64", + "name": "_confirmations", + "type": "uint64" + } + ], + "name": "verify", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "version", + "outputs": [ + { + "internalType": "uint64", + "name": "major", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "minor", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "endpointVersion", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + } +] diff --git a/scripts/abis/REMOTE_HOP_ABI.json b/scripts/abis/REMOTE_HOP_ABI.json new file mode 100644 index 0000000..466ec29 --- /dev/null +++ b/scripts/abis/REMOTE_HOP_ABI.json @@ -0,0 +1,642 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "_owner", + "type": "address", + "internalType": "address" + }, + { + "name": "_fraxtalHop", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_numDVNs", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "_EXECUTOR", + "type": "address", + "internalType": "address" + }, + { + "name": "_DVN", + "type": "address", + "internalType": "address" + }, + { + "name": "_TREASURY", + "type": "address", + "internalType": "address" + }, + { + "name": "_approvedOfts", + "type": "address[]", + "internalType": "address[]" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "receive", + "stateMutability": "payable" + }, + { + "type": "function", + "name": "DVN", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "EXECUTOR", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "TREASURY", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "acceptOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "approvedOft", + "inputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "executorOptions", + "inputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "fraxtalHop", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hopFee", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "numDVNs", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "owner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pause", + "inputs": [ + { + "name": "_paused", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "paused", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pendingOwner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quote", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + }, + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quoteHop", + "inputs": [ + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "finalFee", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "recoverERC20", + "inputs": [ + { + "name": "tokenAddress", + "type": "address", + "internalType": "address" + }, + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "recoverETH", + "inputs": [ + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "renounceOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "sendOFT", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + }, + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "setExecutorOptions", + "inputs": [ + { + "name": "eid", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_options", + "type": "bytes", + "internalType": "bytes" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setFraxtalHop", + "inputs": [ + { + "name": "_fraxtalHop", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setFraxtalHop", + "inputs": [ + { + "name": "_fraxtalHop", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setHopFee", + "inputs": [ + { + "name": "_hopFee", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setNumDVNs", + "inputs": [ + { + "name": "_numDVNs", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "toggleOFTApproval", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + }, + { + "name": "_approved", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "transferOwnership", + "inputs": [ + { + "name": "newOwner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "version", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "pure" + }, + { + "type": "event", + "name": "OwnershipTransferStarted", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OwnershipTransferred", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "SendOFT", + "inputs": [ + { + "name": "oft", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "dstEid", + "type": "uint32", + "indexed": true, + "internalType": "uint32" + }, + { + "name": "to", + "type": "bytes32", + "indexed": true, + "internalType": "bytes32" + }, + { + "name": "amountLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "HopPaused", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientFee", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidOFT", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidOptionType", + "inputs": [ + { + "name": "optionType", + "type": "uint16", + "internalType": "uint16" + } + ] + }, + { + "type": "error", + "name": "NotEndpoint", + "inputs": [] + }, + { + "type": "error", + "name": "OwnableInvalidOwner", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "OwnableUnauthorizedAccount", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "RefundFailed", + "inputs": [] + }, + { + "type": "error", + "name": "SafeCastOverflowedUintDowncast", + "inputs": [ + { + "name": "bits", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "SafeERC20FailedOperation", + "inputs": [ + { + "name": "token", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "ZeroAmountSend", + "inputs": [] + } +] diff --git a/scripts/abis/REMOTE_MINT_REDEEM_HOP.json b/scripts/abis/REMOTE_MINT_REDEEM_HOP.json new file mode 100644 index 0000000..bd1ff61 --- /dev/null +++ b/scripts/abis/REMOTE_MINT_REDEEM_HOP.json @@ -0,0 +1,610 @@ +[ + { + "type": "constructor", + "inputs": [ + { + "name": "_owner", + "type": "address", + "internalType": "address" + }, + { + "name": "_fraxtalHop", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_numDVNs", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "_EXECUTOR", + "type": "address", + "internalType": "address" + }, + { + "name": "_DVN", + "type": "address", + "internalType": "address" + }, + { + "name": "_TREASURY", + "type": "address", + "internalType": "address" + }, + { + "name": "_EID", + "type": "uint32", + "internalType": "uint32" + }, + { + "name": "_frxUsdOft", + "type": "address", + "internalType": "address" + }, + { + "name": "_sfrxUsdOft", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "nonpayable" + }, + { + "type": "receive", + "stateMutability": "payable" + }, + { + "type": "function", + "name": "DVN", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "EID", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "EXECUTOR", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "TREASURY", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "acceptOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "fraxtalHop", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "frxUsdOft", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hopFee", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "mintRedeem", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + }, + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "payable" + }, + { + "type": "function", + "name": "numDVNs", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "owner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pause", + "inputs": [ + { + "name": "_paused", + "type": "bool", + "internalType": "bool" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "paused", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "pendingOwner", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quote", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + }, + { + "name": "_to", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "_amountLD", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "fee", + "type": "tuple", + "internalType": "struct MessagingFee", + "components": [ + { + "name": "nativeFee", + "type": "uint256", + "internalType": "uint256" + }, + { + "name": "lzTokenFee", + "type": "uint256", + "internalType": "uint256" + } + ] + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "quoteHop", + "inputs": [], + "outputs": [ + { + "name": "finalFee", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "recoverERC20", + "inputs": [ + { + "name": "tokenAddress", + "type": "address", + "internalType": "address" + }, + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "recoverETH", + "inputs": [ + { + "name": "recipient", + "type": "address", + "internalType": "address" + }, + { + "name": "tokenAmount", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "renounceOwnership", + "inputs": [], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setFraxtalHop", + "inputs": [ + { + "name": "_fraxtalHop", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setFraxtalHop", + "inputs": [ + { + "name": "_fraxtalHop", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setFrxUsdOft", + "inputs": [ + { + "name": "_frxUsdOft", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setHopFee", + "inputs": [ + { + "name": "_hopFee", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setNumDVNs", + "inputs": [ + { + "name": "_numDVNs", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "setSfrxUsdOft", + "inputs": [ + { + "name": "_sfrxUsdOft", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "sfrxUsdOft", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "transferOwnership", + "inputs": [ + { + "name": "newOwner", + "type": "address", + "internalType": "address" + } + ], + "outputs": [], + "stateMutability": "nonpayable" + }, + { + "type": "function", + "name": "version", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "string", + "internalType": "string" + } + ], + "stateMutability": "pure" + }, + { + "type": "event", + "name": "MintRedeem", + "inputs": [ + { + "name": "oft", + "type": "address", + "indexed": false, + "internalType": "address" + }, + { + "name": "sender", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "amountLD", + "type": "uint256", + "indexed": false, + "internalType": "uint256" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OwnershipTransferStarted", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "event", + "name": "OwnershipTransferred", + "inputs": [ + { + "name": "previousOwner", + "type": "address", + "indexed": true, + "internalType": "address" + }, + { + "name": "newOwner", + "type": "address", + "indexed": true, + "internalType": "address" + } + ], + "anonymous": false + }, + { + "type": "error", + "name": "HopPaused", + "inputs": [] + }, + { + "type": "error", + "name": "InsufficientFee", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidOFT", + "inputs": [] + }, + { + "type": "error", + "name": "InvalidOptionType", + "inputs": [ + { + "name": "optionType", + "type": "uint16", + "internalType": "uint16" + } + ] + }, + { + "type": "error", + "name": "NotEndpoint", + "inputs": [] + }, + { + "type": "error", + "name": "OwnableInvalidOwner", + "inputs": [ + { + "name": "owner", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "OwnableUnauthorizedAccount", + "inputs": [ + { + "name": "account", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "RefundFailed", + "inputs": [] + }, + { + "type": "error", + "name": "SafeCastOverflowedUintDowncast", + "inputs": [ + { + "name": "bits", + "type": "uint8", + "internalType": "uint8" + }, + { + "name": "value", + "type": "uint256", + "internalType": "uint256" + } + ] + }, + { + "type": "error", + "name": "SafeERC20FailedOperation", + "inputs": [ + { + "name": "token", + "type": "address", + "internalType": "address" + } + ] + }, + { + "type": "error", + "name": "ZeroAmountSend", + "inputs": [] + } +] diff --git a/scripts/abis/SEND_ULN302_ABI.json b/scripts/abis/SEND_ULN302_ABI.json new file mode 100644 index 0000000..46bf3f5 --- /dev/null +++ b/scripts/abis/SEND_ULN302_ABI.json @@ -0,0 +1,1250 @@ +[ + { + "inputs": [ + { + "internalType": "address", + "name": "_endpoint", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_treasuryGasLimit", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "_treasuryGasForFeeCap", + "type": "uint256" + } + ], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "DVN_InvalidDVNIdx", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "cursor", + "type": "uint256" + } + ], + "name": "DVN_InvalidDVNOptions", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_MessageLib_CannotWithdrawAltToken", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "requested", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "available", + "type": "uint256" + } + ], + "name": "LZ_MessageLib_InvalidAmount", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_MessageLib_InvalidExecutor", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "actual", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "max", + "type": "uint256" + } + ], + "name": "LZ_MessageLib_InvalidMessageSize", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_MessageLib_NotTreasury", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_MessageLib_OnlyEndpoint", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_MessageLib_TransferFailed", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_MessageLib_ZeroMessageSize", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_AtLeastOneDVN", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "configType", + "type": "uint32" + } + ], + "name": "LZ_ULN_InvalidConfigType", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidConfirmations", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidLegacyType1Option", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidLegacyType2Option", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidOptionalDVNCount", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidOptionalDVNThreshold", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_InvalidRequiredDVNCount", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint8", + "name": "workerId", + "type": "uint8" + } + ], + "name": "LZ_ULN_InvalidWorkerId", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "cursor", + "type": "uint256" + } + ], + "name": "LZ_ULN_InvalidWorkerOptions", + "type": "error" + }, + { + "inputs": [], + "name": "LZ_ULN_Unsorted", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + } + ], + "name": "LZ_ULN_UnsupportedEid", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "uint16", + "name": "optionType", + "type": "uint16" + } + ], + "name": "LZ_ULN_UnsupportedOptionType", + "type": "error" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_value", + "type": "uint256" + } + ], + "name": "Transfer_NativeFailed", + "type": "error" + }, + { + "inputs": [], + "name": "Transfer_ToAddressIsZero", + "type": "error" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "indexed": false, + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + }, + { + "indexed": false, + "internalType": "uint256[]", + "name": "fees", + "type": "uint256[]" + } + ], + "name": "DVNFeePaid", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "maxMessageSize", + "type": "uint32" + }, + { + "internalType": "address", + "name": "executor", + "type": "address" + } + ], + "internalType": "struct ExecutorConfig", + "name": "config", + "type": "tuple" + } + ], + "indexed": false, + "internalType": "struct SetDefaultExecutorConfigParam[]", + "name": "params", + "type": "tuple[]" + } + ], + "name": "DefaultExecutorConfigsSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "config", + "type": "tuple" + } + ], + "indexed": false, + "internalType": "struct SetDefaultUlnConfigParam[]", + "name": "params", + "type": "tuple[]" + } + ], + "name": "DefaultUlnConfigsSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "oapp", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "maxMessageSize", + "type": "uint32" + }, + { + "internalType": "address", + "name": "executor", + "type": "address" + } + ], + "indexed": false, + "internalType": "struct ExecutorConfig", + "name": "config", + "type": "tuple" + } + ], + "name": "ExecutorConfigSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "executor", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "fee", + "type": "uint256" + } + ], + "name": "ExecutorFeePaid", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "lzToken", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "LzTokenFeeWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "worker", + "type": "address" + }, + { + "indexed": false, + "internalType": "address", + "name": "receiver", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint256", + "name": "amount", + "type": "uint256" + } + ], + "name": "NativeFeeWithdrawn", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "internalType": "address", + "name": "previousOwner", + "type": "address" + }, + { + "indexed": true, + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "OwnershipTransferred", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "uint256", + "name": "newTreasuryNativeFeeCap", + "type": "uint256" + } + ], + "name": "TreasuryNativeFeeCapSet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "treasury", + "type": "address" + } + ], + "name": "TreasurySet", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "internalType": "address", + "name": "oapp", + "type": "address" + }, + { + "indexed": false, + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "indexed": false, + "internalType": "struct UlnConfig", + "name": "config", + "type": "tuple" + } + ], + "name": "UlnConfigSet", + "type": "event" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + } + ], + "name": "executorConfigs", + "outputs": [ + { + "internalType": "uint32", + "name": "maxMessageSize", + "type": "uint32" + }, + { + "internalType": "address", + "name": "executor", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "worker", + "type": "address" + } + ], + "name": "fees", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_remoteEid", + "type": "uint32" + } + ], + "name": "getAppUlnConfig", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_configType", + "type": "uint32" + } + ], + "name": "getConfig", + "outputs": [ + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_remoteEid", + "type": "uint32" + } + ], + "name": "getExecutorConfig", + "outputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "maxMessageSize", + "type": "uint32" + }, + { + "internalType": "address", + "name": "executor", + "type": "address" + } + ], + "internalType": "struct ExecutorConfig", + "name": "rtnConfig", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "internalType": "uint32", + "name": "_remoteEid", + "type": "uint32" + } + ], + "name": "getUlnConfig", + "outputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "rtnConfig", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint32", + "name": "_eid", + "type": "uint32" + } + ], + "name": "isSupportedEid", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "messageLibType", + "outputs": [ + { + "internalType": "enum MessageLibType", + "name": "", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [], + "name": "owner", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint32", + "name": "dstEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "receiver", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "message", + "type": "bytes" + } + ], + "internalType": "struct Packet", + "name": "_packet", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "_options", + "type": "bytes" + }, + { + "internalType": "bool", + "name": "_payInLzToken", + "type": "bool" + } + ], + "name": "quote", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "nativeFee", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lzTokenFee", + "type": "uint256" + } + ], + "internalType": "struct MessagingFee", + "name": "", + "type": "tuple" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "renounceOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint64", + "name": "nonce", + "type": "uint64" + }, + { + "internalType": "uint32", + "name": "srcEid", + "type": "uint32" + }, + { + "internalType": "address", + "name": "sender", + "type": "address" + }, + { + "internalType": "uint32", + "name": "dstEid", + "type": "uint32" + }, + { + "internalType": "bytes32", + "name": "receiver", + "type": "bytes32" + }, + { + "internalType": "bytes32", + "name": "guid", + "type": "bytes32" + }, + { + "internalType": "bytes", + "name": "message", + "type": "bytes" + } + ], + "internalType": "struct Packet", + "name": "_packet", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "_options", + "type": "bytes" + }, + { + "internalType": "bool", + "name": "_payInLzToken", + "type": "bool" + } + ], + "name": "send", + "outputs": [ + { + "components": [ + { + "internalType": "uint256", + "name": "nativeFee", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "lzTokenFee", + "type": "uint256" + } + ], + "internalType": "struct MessagingFee", + "name": "", + "type": "tuple" + }, + { + "internalType": "bytes", + "name": "", + "type": "bytes" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_oapp", + "type": "address" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "internalType": "uint32", + "name": "configType", + "type": "uint32" + }, + { + "internalType": "bytes", + "name": "config", + "type": "bytes" + } + ], + "internalType": "struct SetConfigParam[]", + "name": "_params", + "type": "tuple[]" + } + ], + "name": "setConfig", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint32", + "name": "maxMessageSize", + "type": "uint32" + }, + { + "internalType": "address", + "name": "executor", + "type": "address" + } + ], + "internalType": "struct ExecutorConfig", + "name": "config", + "type": "tuple" + } + ], + "internalType": "struct SetDefaultExecutorConfigParam[]", + "name": "_params", + "type": "tuple[]" + } + ], + "name": "setDefaultExecutorConfigs", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "components": [ + { + "internalType": "uint32", + "name": "eid", + "type": "uint32" + }, + { + "components": [ + { + "internalType": "uint64", + "name": "confirmations", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "requiredDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNCount", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "optionalDVNThreshold", + "type": "uint8" + }, + { + "internalType": "address[]", + "name": "requiredDVNs", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "optionalDVNs", + "type": "address[]" + } + ], + "internalType": "struct UlnConfig", + "name": "config", + "type": "tuple" + } + ], + "internalType": "struct SetDefaultUlnConfigParam[]", + "name": "_params", + "type": "tuple[]" + } + ], + "name": "setDefaultUlnConfigs", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_treasury", + "type": "address" + } + ], + "name": "setTreasury", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "_newTreasuryNativeFeeCap", + "type": "uint256" + } + ], + "name": "setTreasuryNativeFeeCap", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "bytes4", + "name": "_interfaceId", + "type": "bytes4" + } + ], + "name": "supportsInterface", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "treasury", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "version", + "outputs": [ + { + "internalType": "uint64", + "name": "major", + "type": "uint64" + }, + { + "internalType": "uint8", + "name": "minor", + "type": "uint8" + }, + { + "internalType": "uint8", + "name": "endpointVersion", + "type": "uint8" + } + ], + "stateMutability": "pure", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "withdrawFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "_lzToken", + "type": "address" + }, + { + "internalType": "address", + "name": "_to", + "type": "address" + }, + { + "internalType": "uint256", + "name": "_amount", + "type": "uint256" + } + ], + "name": "withdrawLzTokenFee", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } +] diff --git a/scripts/abis/index.ts b/scripts/abis/index.ts index a2d67c7..e4a33a9 100644 --- a/scripts/abis/index.ts +++ b/scripts/abis/index.ts @@ -1,5 +1,26 @@ import OFT_ABI from "./OFT_ABI.json"; import OFT_ADAPTER_ABI from "./OFT_ADAPTER_ABI.json"; import OFT_MINTABLE_ADAPTER_ABI from "./OFT_MINTABLE_ADAPTER_ABI.json"; +import ENDPOINTV2_ABI from "./ENDPOINTV2_ABI.json"; +import FRAX_PROXY_ADMIN_ABI from "./FRAX_PROXY_ADMIN_ABI.json"; +import FRAXTAL_HOP_ABI from "./FRAXTAL_HOP.json"; +import FRAXTAL_MINT_REDEEM_HOP_ABI from "./FRAXTAL_MINT_REDEEM_HOP.json"; +import RECEIVE_ULN302_ABI from "./RECEIVE_ULN302_ABI.json"; +import REMOTE_HOP_ABI from "./REMOTE_HOP_ABI.json"; +import REMOTE_MINT_REDEEM_HOP_ABI from "./REMOTE_MINT_REDEEM_HOP.json"; +import SEND_ULN302_ABI from "./SEND_ULN302_ABI.json"; +export { ERC20ABI } from "./ERC20"; -export { OFT_ABI, OFT_ADAPTER_ABI, OFT_MINTABLE_ADAPTER_ABI }; +export { + OFT_ABI, + OFT_ADAPTER_ABI, + OFT_MINTABLE_ADAPTER_ABI, + ENDPOINTV2_ABI, + FRAX_PROXY_ADMIN_ABI, + FRAXTAL_HOP_ABI, + FRAXTAL_MINT_REDEEM_HOP_ABI, + RECEIVE_ULN302_ABI, + REMOTE_HOP_ABI, + REMOTE_MINT_REDEEM_HOP_ABI, + SEND_ULN302_ABI, +}; From 441c832db2c6f59fe4b2068b58b1db7337254a45 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 10 Feb 2026 03:31:21 +0000 Subject: [PATCH 13/27] build: add compiled JS for scripts/constants and scripts/abis --- scripts/abis/index.js | 49 + scripts/constants/TEMPLATE.js | 9 + scripts/constants/abstract.js | 37 + scripts/constants/aptos.js | 43 + scripts/constants/arbitrum.js | 320 ++++ scripts/constants/aurora.js | 37 + scripts/constants/avalanche.js | 137 ++ scripts/constants/base.js | 37 + scripts/constants/bera.js | 37 + scripts/constants/blast.js | 37 + scripts/constants/bsc.js | 129 ++ scripts/constants/ethereum.js | 52 + scripts/constants/fantom.js | 108 ++ scripts/constants/fraxtal-devnet-l1.js | 43 + scripts/constants/fraxtal-devnet-l2.js | 43 + scripts/constants/fraxtal-l2.js | 357 ++++ scripts/constants/fraxtal-testnet-l1.js | 34 + scripts/constants/fraxtal-testnet-l2.js | 46 + scripts/constants/holesky.js | 66 + scripts/constants/hyperliquid.js | 37 + scripts/constants/index.js | 134 ++ scripts/constants/ink.js | 37 + scripts/constants/katana.js | 37 + scripts/constants/linea.js | 37 + scripts/constants/mainnet.js | 2051 +++++++++++++++++++++++ scripts/constants/mode.js | 37 + scripts/constants/monad.js | 37 + scripts/constants/moonbeam.js | 64 + scripts/constants/moonriver.js | 66 + scripts/constants/movement.js | 43 + scripts/constants/optimism.js | 119 ++ scripts/constants/plumephoenix.js | 37 + scripts/constants/polygon-zkevm.js | 68 + scripts/constants/polygon.js | 129 ++ scripts/constants/scroll.js | 37 + scripts/constants/sei.js | 37 + scripts/constants/solana.js | 84 + scripts/constants/sonic.js | 37 + scripts/constants/stable.js | 37 + scripts/constants/unichain.js | 37 + scripts/constants/worldchain.js | 37 + scripts/constants/xlayer.js | 37 + scripts/constants/zksync.js | 37 + scripts/generateConstants.js | 185 ++ 44 files changed, 5119 insertions(+) create mode 100644 scripts/abis/index.js create mode 100644 scripts/constants/TEMPLATE.js create mode 100644 scripts/constants/abstract.js create mode 100644 scripts/constants/aptos.js create mode 100644 scripts/constants/arbitrum.js create mode 100644 scripts/constants/aurora.js create mode 100644 scripts/constants/avalanche.js create mode 100644 scripts/constants/base.js create mode 100644 scripts/constants/bera.js create mode 100644 scripts/constants/blast.js create mode 100644 scripts/constants/bsc.js create mode 100644 scripts/constants/ethereum.js create mode 100644 scripts/constants/fantom.js create mode 100644 scripts/constants/fraxtal-devnet-l1.js create mode 100644 scripts/constants/fraxtal-devnet-l2.js create mode 100644 scripts/constants/fraxtal-l2.js create mode 100644 scripts/constants/fraxtal-testnet-l1.js create mode 100644 scripts/constants/fraxtal-testnet-l2.js create mode 100644 scripts/constants/holesky.js create mode 100644 scripts/constants/hyperliquid.js create mode 100644 scripts/constants/index.js create mode 100644 scripts/constants/ink.js create mode 100644 scripts/constants/katana.js create mode 100644 scripts/constants/linea.js create mode 100644 scripts/constants/mainnet.js create mode 100644 scripts/constants/mode.js create mode 100644 scripts/constants/monad.js create mode 100644 scripts/constants/moonbeam.js create mode 100644 scripts/constants/moonriver.js create mode 100644 scripts/constants/movement.js create mode 100644 scripts/constants/optimism.js create mode 100644 scripts/constants/plumephoenix.js create mode 100644 scripts/constants/polygon-zkevm.js create mode 100644 scripts/constants/polygon.js create mode 100644 scripts/constants/scroll.js create mode 100644 scripts/constants/sei.js create mode 100644 scripts/constants/solana.js create mode 100644 scripts/constants/sonic.js create mode 100644 scripts/constants/stable.js create mode 100644 scripts/constants/unichain.js create mode 100644 scripts/constants/worldchain.js create mode 100644 scripts/constants/xlayer.js create mode 100644 scripts/constants/zksync.js create mode 100644 scripts/generateConstants.js diff --git a/scripts/abis/index.js b/scripts/abis/index.js new file mode 100644 index 0000000..ee8f648 --- /dev/null +++ b/scripts/abis/index.js @@ -0,0 +1,49 @@ +"use strict"; +var __importDefault = + (this && this.__importDefault) || + function (mod) { + return mod && mod.__esModule ? mod : { default: mod }; + }; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SEND_ULN302_ABI = + exports.REMOTE_MINT_REDEEM_HOP_ABI = + exports.REMOTE_HOP_ABI = + exports.RECEIVE_ULN302_ABI = + exports.FRAXTAL_MINT_REDEEM_HOP_ABI = + exports.FRAXTAL_HOP_ABI = + exports.FRAX_PROXY_ADMIN_ABI = + exports.ENDPOINTV2_ABI = + exports.OFT_MINTABLE_ADAPTER_ABI = + exports.OFT_ADAPTER_ABI = + exports.OFT_ABI = + exports.ERC20ABI = + void 0; +const OFT_ABI_json_1 = __importDefault(require("./OFT_ABI.json")); +exports.OFT_ABI = OFT_ABI_json_1.default; +const OFT_ADAPTER_ABI_json_1 = __importDefault(require("./OFT_ADAPTER_ABI.json")); +exports.OFT_ADAPTER_ABI = OFT_ADAPTER_ABI_json_1.default; +const OFT_MINTABLE_ADAPTER_ABI_json_1 = __importDefault(require("./OFT_MINTABLE_ADAPTER_ABI.json")); +exports.OFT_MINTABLE_ADAPTER_ABI = OFT_MINTABLE_ADAPTER_ABI_json_1.default; +const ENDPOINTV2_ABI_json_1 = __importDefault(require("./ENDPOINTV2_ABI.json")); +exports.ENDPOINTV2_ABI = ENDPOINTV2_ABI_json_1.default; +const FRAX_PROXY_ADMIN_ABI_json_1 = __importDefault(require("./FRAX_PROXY_ADMIN_ABI.json")); +exports.FRAX_PROXY_ADMIN_ABI = FRAX_PROXY_ADMIN_ABI_json_1.default; +const FRAXTAL_HOP_json_1 = __importDefault(require("./FRAXTAL_HOP.json")); +exports.FRAXTAL_HOP_ABI = FRAXTAL_HOP_json_1.default; +const FRAXTAL_MINT_REDEEM_HOP_json_1 = __importDefault(require("./FRAXTAL_MINT_REDEEM_HOP.json")); +exports.FRAXTAL_MINT_REDEEM_HOP_ABI = FRAXTAL_MINT_REDEEM_HOP_json_1.default; +const RECEIVE_ULN302_ABI_json_1 = __importDefault(require("./RECEIVE_ULN302_ABI.json")); +exports.RECEIVE_ULN302_ABI = RECEIVE_ULN302_ABI_json_1.default; +const REMOTE_HOP_ABI_json_1 = __importDefault(require("./REMOTE_HOP_ABI.json")); +exports.REMOTE_HOP_ABI = REMOTE_HOP_ABI_json_1.default; +const REMOTE_MINT_REDEEM_HOP_json_1 = __importDefault(require("./REMOTE_MINT_REDEEM_HOP.json")); +exports.REMOTE_MINT_REDEEM_HOP_ABI = REMOTE_MINT_REDEEM_HOP_json_1.default; +const SEND_ULN302_ABI_json_1 = __importDefault(require("./SEND_ULN302_ABI.json")); +exports.SEND_ULN302_ABI = SEND_ULN302_ABI_json_1.default; +var ERC20_1 = require("./ERC20"); +Object.defineProperty(exports, "ERC20ABI", { + enumerable: true, + get: function () { + return ERC20_1.ERC20ABI; + }, +}); diff --git a/scripts/constants/TEMPLATE.js b/scripts/constants/TEMPLATE.js new file mode 100644 index 0000000..02081ca --- /dev/null +++ b/scripts/constants/TEMPLATE.js @@ -0,0 +1,9 @@ +// Canonicals +// Farms +// FraxBonds +// FraxFerry +// FraxlendAndOracles +// Fraxswap +// Misc +// Multisigs +// PoolRelatedTokens diff --git a/scripts/constants/abstract.js b/scripts/constants/abstract.js new file mode 100644 index 0000000..d70c41d --- /dev/null +++ b/scripts/constants/abstract.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E"; +exports.FRXETHOFT = "0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440"; +exports.FRXUSDOFT = "0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d"; +exports.SFRXETHOFT = "0xFD78FD3667DeF2F1097Ed221ec503AE477155394"; +exports.SFRXUSDOFT = "0x9F87fbb47C33Cd0614E43500b9511018116F79eE"; +exports.WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; +// FraxtalLZHop +exports.REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; +exports.REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x5c6cfF4b7C49805F8295Ff73C204ac83f3bC4AE7"; +exports.LZ_RECEIVE_LIB_302 = "0x9d799c1935c51CA399e6465Ed9841DEbCcEc413E"; +exports.LZ_SEND_LIB_302 = "0x166CAb679EBDB0853055522D3B523621b94029a1"; +exports.LZ_BLOCK_SEND_LIB = "0x3258287147fb7887d8a643006e26e19368057377"; +exports.FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; +// Chain IDs +exports.LZ_CHAIN_ID = 30324; +exports.CHAIN_ID = 2741; diff --git a/scripts/constants/aptos.js b/scripts/constants/aptos.js new file mode 100644 index 0000000..9069b8b --- /dev/null +++ b/scripts/constants/aptos.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.WFRAX = + exports.SFRXUSD = + exports.SFRXETH = + exports.FRXUSD = + exports.FRXETH = + exports.FPI = + void 0; +// Canonicals +exports.FPI = "0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2"; +exports.FRXETH = "0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585"; +exports.FRXUSD = "0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5"; +exports.SFRXETH = "0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a"; +exports.SFRXUSD = "0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2"; +exports.WFRAX = "0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300"; +// LayerZero +exports.FPIOFT = "0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864"; +exports.FRXETHOFT = "0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c"; +exports.FRXUSDOFT = "0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b"; +exports.SFRXETHOFT = "0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356"; +exports.SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9"; +exports.WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c"; +exports.LZ_RECEIVE_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +exports.LZ_SEND_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +exports.LZ_BLOCK_SEND_LIB = "0x3ca0d187f1938cf9776a0aa821487a650fc7bb2ab1c1d241ba319192aae4afc6"; +// Chain IDs +exports.LZ_CHAIN_ID = 30108; +exports.CHAIN_ID = 0; diff --git a/scripts/constants/arbitrum.js b/scripts/constants/arbitrum.js new file mode 100644 index 0000000..4a7cca5 --- /dev/null +++ b/scripts/constants/arbitrum.js @@ -0,0 +1,320 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = + exports.FIRST_OFFICER = + exports.FERRY_TO_POLYGON = + exports.CREWMEMBER = + exports.CAPTAIN = + exports.STARGATE_BRIDGE_LIQUIDITY_FRAX_ARBITRUM = + exports.SENTIMENT_LFRAX = + exports.SADDLE_L2D4_ARBITRUM = + exports.SADDLE_FRAX_USDC_BP_ARBITRUM = + exports.SADDLE_FRAXBP_USX_ARBITRUM = + exports.SADDLE_FRAXBP_USDT_ARBITRUM = + exports.SADDLE_FRAXBP_USDS_ARBITRUM = + exports.SADDLE_ARBUSD_V2_ARBITRUM = + exports.RAMSES_VRAMM_FRAX_FXS = + exports.RAMSES_VRAMM_FRAX_AGEUR = + exports.RAMSES_CRAMM_FRXETH_WETH = + exports.RAMSES_CRAMM_FRXETH_SFRXETH = + exports.RAMSES_CRAMM_FRAX_USDC = + exports.RAMSES_CRAMM_FRAX_MAI = + exports.RAMSES_CRAMM_FRAX_DOLA = + exports.KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = + exports.HUNDRED_FRAX_LENDING_ARBITRUM = + exports.DFORCE_FRAX_LENDING_ARBITRUM = + exports.CURVE_VSTFRAX_F = + exports.CONVEX_USD_PLUS_FRAXBP = + exports.CONVEX_HFXB_FRAX_ARBITRUM = + exports.CONVEX_FRXETH_WETH_ARBITRUM = + exports.CONVEX_FRAX_FXB_20261231_ARBITRUM = + exports.CONVEX_FRAX_FXB_20241231_ARBITRUM = + exports.CONVEX_FRAXBP_ARBITRUM = + exports.CHRONOS_SAMM_FRXETH_WETH = + exports.CHRONOS_SAMM_FRXETH_SFRXETH = + exports.CHRONOS_SAMM_FRAX_USD_PLUS = + exports.CHRONOS_SAMM_FRAX_MAI = + exports.ARBIDEX_FRXETH_WETH = + exports.ARBIDEX_FRAX_WETH = + exports.ARBIDEX_FRAX_USDCE = + exports.ARBIDEX_FRAX_USD_PLUS = + exports.ARBIDEX_FRAX_FRXETH = + exports.ARBIDEX_FRAX_DAI_PLUS = + exports.SFRAX = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +exports.CVXUSDPLUSFRAXBP_REWARDER = + exports.CVXUSDPLUSFRAXBP = + exports.CVXHFXBFRAX_REWARDER = + exports.CVXHFXBFRAX = + exports.CVXFRXETHWETH_REWARDER = + exports.CVXFRXETHWETH = + exports.CVXFRAXFXB_20261231_ARBITRUM = + exports.CVXFRAXFXB_20241231_ARBITRUM = + exports.CVXFRAXBP_REWARDER = + exports.CVXFRAXBP = + exports.CURVE4POOL = + exports.TIMELOCK_ADDRESS = + exports.MAIN_COMPTROLLER = + exports.FRAX_MASTER_MULTISIG_ADDRESS = + exports.FRAXLEND_COMPTROLLER_ADDRESS = + exports.FPI_COMPTROLLER = + exports.CIRCUIT_BREAKER_ADDRESS = + exports.FRAXLEND_AMO = + exports.FRAX_AMO_MINTER_LAYER_2 = + exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = + exports.KYBERSWAP_ELASTIC_ROUTER_V2 = + exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = + exports.KYBERSWAP_ELASTIC_FACTORY_V2 = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.WBTC_ERC20 = + exports.WBTC_DUAL_ORACLE_ADDRESS = + exports.FRAXLENDPAIR_WBTC_FRAX = + exports.GMX_ERC20 = + exports.GMX_DUAL_ORACLE_ADDRESS = + exports.FRAXLEND_PAIR_GMX_FRAX = + exports.VARIABLE_RATE_V2 = + exports.FRAX_ERC20 = + exports.WETH_ERC20 = + exports.ARB_ERC20 = + exports.ETH_USD_CHAINLINK_ORACLE = + exports.ARB_USD_CHAINLINK_ORACLE = + exports.ARB_ETH_UNI_V3_POOL = + exports.ARBITRUM_DUAL_ORACLE_ADDRESS = + exports.FRAXLEND_PAIR_ARB_FRAX = + exports.FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = + exports.FRAXLEND_PAIR_REGISTRY_ADDRESS = + exports.FRAXLEND_HOT_WALLET = + exports.FRAXLEND_WHITELIST_ADDRESS = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = + void 0; +exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.VERAM = + exports.VECHR = + exports.USDPLUSFRAXBP_POOL = + exports.USDPLUSFRAXBP_GAUGE = + exports.USDPLUSFRAXBP = + exports.SDL_USXFRAXBP_POOL = + exports.SDL_USXFRAXBP = + exports.SDL_USDTFRAXBP_POOL = + exports.SDL_USDTFRAXBP = + exports.SDL_USDSFRAXBP_POOL = + exports.SDL_USDSFRAXBP = + exports.SDL_FRAXBP_POOL = + exports.SDL_FRAXBP = + exports.SDL_ARBUSDV2_POOL = + exports.SDL_ARBUSDV2 = + exports.SADDLEL2D4_PERMISSIONLESS_SWAP = + exports.SADDLEL2D4 = + exports.SADDLEARBUSDV2 = + exports.LFRAX = + exports.HFXBFRAX_POOL = + exports.HFXBFRAX_GAUGE = + exports.HFXBFRAX = + exports.HFRAX = + exports.FRXETHWETH_POOL = + exports.FRXETHWETH_GAUGE = + exports.FRXETHWETH = + exports.FRAXFXB_20261231_POOL = + exports.FRAXFXB_20261231_GAUGE = + exports.FRAXFXB_20261231 = + exports.FRAXFXB_20241231_POOL = + exports.FRAXFXB_20241231_GAUGE = + exports.FRAXFXB_20241231 = + exports.FRAXBP_POOL = + exports.FRAXBP_GAUGE = + exports.FRAXBP = + exports.FRAX2POOL = + void 0; +exports.CHAIN_ID = void 0; +// Canonicals +exports.FRAX = "0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F"; +exports.FXS = "0x9d2F299715D94d8A7E6F5eaa8E654E8c74a988A7"; +exports.FPI = "0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09"; +exports.FPIS = "0x3405E88af759992937b84E58F2Fe691EF0EeA320"; +exports.FRXETH = "0x178412e79c25968a32e89b11f63B33F733770c2A"; +exports.SFRXETH = "0x95aB45875cFFdba1E5f451B950bC2E42c0053f39"; +exports.SFRAX = "0xe3b3FE7bcA19cA77Ad877A5Bebab186bEcfAD906"; +// Farms +exports.ARBIDEX_FRAX_DAI_PLUS = "0x56328f7138C3A4ebD2Bb1D126d28f62FcD5bac5d"; +exports.ARBIDEX_FRAX_FRXETH = "0x436eE91dB228267c6a19b2A3F158fffCe5a4489c"; +exports.ARBIDEX_FRAX_USD_PLUS = "0xe876230251cc14Ec0027b2a4aFc46B4c262d13D0"; +exports.ARBIDEX_FRAX_USDCE = "0x11205af33F2F7006bB932953b10Ab5EeD78105Ca"; +exports.ARBIDEX_FRAX_WETH = "0xf0677E33Fa38A023ec798F97D195d85d19823e7C"; +exports.ARBIDEX_FRXETH_WETH = "0xc74c0Fcb777521F3D8747f338a024e9F3fD91608"; +exports.CHRONOS_SAMM_FRAX_MAI = "0x1371512f45d85e6247aBfA2926Ac5213324a6BEB"; +exports.CHRONOS_SAMM_FRAX_USD_PLUS = "0xaF618E6F5EF781e3aCFe00708BD005E0cc9A2e6F"; +exports.CHRONOS_SAMM_FRXETH_SFRXETH = "0x548e0D4Fcb6b82a025E6770066b4127C5FCcBF07"; +exports.CHRONOS_SAMM_FRXETH_WETH = "0x9A028F3Dd7067479b51ee89CDb0Db594744ebfAd"; +exports.CONVEX_FRAXBP_ARBITRUM = "0x421Efd53FA0d90687db5ef370D5DCD7f89CbD9dE"; +exports.CONVEX_FRAX_FXB_20241231_ARBITRUM = "0xB8c52da3db9EdF9Da6a20959410B007a2387E5a2"; +exports.CONVEX_FRAX_FXB_20261231_ARBITRUM = "0xA81F4b86B412CcB51C7420000F59a639F3459f49"; +exports.CONVEX_FRXETH_WETH_ARBITRUM = "0x24e927daC110Aab7189a4F864d41680e4F7865FB"; +exports.CONVEX_HFXB_FRAX_ARBITRUM = "0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a"; +exports.CONVEX_USD_PLUS_FRAXBP = "0x56390acF12bce9675ab3922060D8d955149BE286"; +exports.CURVE_VSTFRAX_F = "0x127963A74c07f72D862F2Bdc225226c3251BD117"; +exports.DFORCE_FRAX_LENDING_ARBITRUM = "0xb3ab7148cCCAf66686AD6C1bE24D83e58E6a504e"; +exports.HUNDRED_FRAX_LENDING_ARBITRUM = "0xd7f3Bf2085AD32ff95E1bCC408d37F10f6949270"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = "0xbAFA44EFE7901E04E39Dad13167D089C559c1138"; +exports.RAMSES_CRAMM_FRAX_DOLA = "0xF8719BC4a1A81969F00233a8D9409755d4366d28"; +exports.RAMSES_CRAMM_FRAX_MAI = "0x385E1c3f90C52f5253EaBb015576E95a4886E552"; +exports.RAMSES_CRAMM_FRAX_USDC = "0x22B6C54dC1cCD6CDF53723BEc88327c908258367"; +exports.RAMSES_CRAMM_FRXETH_SFRXETH = "0x11C1060e12F3Ec480D47AD867583353496a1B0b8"; +exports.RAMSES_CRAMM_FRXETH_WETH = "0x148Ca200d452AD9F310501ca3fd5C3bD4a5aBe81"; +exports.RAMSES_VRAMM_FRAX_AGEUR = "0x0A923435Eb4C3FC740bbA0c000F16Cb1F6cd7Afb"; +exports.RAMSES_VRAMM_FRAX_FXS = "0xdf725A7315d3d246a39C8887870f6cb0Fe73e36d"; +exports.SADDLE_ARBUSD_V2_ARBITRUM = "0x6e1af6FB2B4006603c65dD8FC7796Ccff09c86a1"; +exports.SADDLE_FRAXBP_USDS_ARBITRUM = "0x289532cA1DccE36D05e19Af468EC46fc9CB1390E"; +exports.SADDLE_FRAXBP_USDT_ARBITRUM = "0xb306b7E9D895748A2779586C83112035D8223C7F"; +exports.SADDLE_FRAXBP_USX_ARBITRUM = "0x0A18D5679C5c8b56Da0D87E308DB9EE2db701BaC"; +exports.SADDLE_FRAX_USDC_BP_ARBITRUM = "0xBBcaeA4e732173C0De28397421c17A595372C9CF"; +exports.SADDLE_L2D4_ARBITRUM = "0xd1dF24e8D225b20F9c8f4912BE88cCCec93f36E5"; +exports.SENTIMENT_LFRAX = "0xcdE7054e7a232938CdDe8BF40faf827e6f377f54"; +exports.STARGATE_BRIDGE_LIQUIDITY_FRAX_ARBITRUM = "0xeA8DfEE1898a7e0a59f7527F076106d7e44c2176"; +// FraxBonds +// FraxFerry +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FERRY_TO_POLYGON = "0xe57314D4405289FfC91306E4574C28b7394c4822"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = "0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = "0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = "0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = "0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = "0x078Dd77De4e0f480D7442495d55707cE071B4B09"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = "0x1B0b9991Df27a4F2847478127d51Fb29883882f5"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = "0xf1C16E1c01e62716884ef947063e9C7D44eC287F"; +// FraxlendAndOracles +exports.FRAXLEND_WHITELIST_ADDRESS = "0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079"; +exports.FRAXLEND_HOT_WALLET = "0xdB3388e770F49A604E11f1a2084B39279492a61f"; +exports.FRAXLEND_PAIR_REGISTRY_ADDRESS = "0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d"; +exports.FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = "0xc70CC721d19dC7e627B81fEacb6a357Fb11200Af"; +exports.FRAXLEND_PAIR_ARB_FRAX = "0x2D0483FefAbA4325c7521539a3DFaCf94A19C472"; +exports.ARBITRUM_DUAL_ORACLE_ADDRESS = "0x5985FBb03b6A5EA390871c2bB9742cD406575667"; +exports.ARB_ETH_UNI_V3_POOL = "0xC6F780497A95e246EB9449f5e4770916DCd6396A"; +exports.ARB_USD_CHAINLINK_ORACLE = "0xb2A824043730FE05F3DA2efaFa1CBbe83fa548D6"; +exports.ETH_USD_CHAINLINK_ORACLE = "0x639Fe6ab55C921f74e7fac1ee960C0B6293ba612"; +exports.ARB_ERC20 = "0x912CE59144191C1204E64559FE8253a0e49E6548"; +exports.WETH_ERC20 = "0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"; +exports.FRAX_ERC20 = "0x17FC002b466eEc40DaE837Fc4bE5c67993ddBd6F"; +exports.VARIABLE_RATE_V2 = "0x6c1b76Ca12d74970d40Aec4d6f2E3A653CC58685"; +exports.FRAXLEND_PAIR_GMX_FRAX = "0x6076ebDFE17555ed3E6869CF9C373Bbd9aD55d38"; +exports.GMX_DUAL_ORACLE_ADDRESS = "0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3"; +exports.GMX_ERC20 = "0xfc5A1A6EB076a2C7aD06eD22C90d7E710E35ad0a"; +exports.FRAXLENDPAIR_WBTC_FRAX = "0x9168AC3a83A31bd85c93F4429a84c05db2CaEF08"; +exports.WBTC_DUAL_ORACLE_ADDRESS = "0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617"; +exports.WBTC_ERC20 = "0x2f2a2543B76A4166549F7aaB2e75Bef0aefC5B0f"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E"; +exports.FRAXSWAP_FACTORY_V2 = "0x8374A74A728f06bEa6B7259C68AA7BBB732bfeaD"; +exports.FRAXSWAP_ROUTER_V1 = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FRAXSWAP_ROUTER_V2 = "0xCAAaB0A72f781B92bA63Af27477aA46aB8F653E7"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +exports.KYBERSWAP_ELASTIC_FACTORY_V2 = "0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A"; +exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = "0xe222fBE074A436145b255442D919E4E3A6c6a480"; +exports.KYBERSWAP_ELASTIC_ROUTER_V2 = "0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4"; +exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = "0x8Fd8Cb948965d9305999D767A02bf79833EADbB3"; +// Misc +exports.FRAX_AMO_MINTER_LAYER_2 = "0x1c5400491fE82EE8FC21489C51e402B3c8a2fB81"; +exports.FRAXLEND_AMO = "0xCDeE1B853AD2E96921250775b7A60D6ff78fD8B4"; +// Multisigs +exports.CIRCUIT_BREAKER_ADDRESS = "0xDF85346111C0F9680a77d4c496b6fd5278516fa6"; +exports.FPI_COMPTROLLER = "0xF0D5007dB0393c9D5F6A88A5F82Df520EA483fDb"; +exports.FRAXLEND_COMPTROLLER_ADDRESS = "0x0B6A2B7fc025ce864A7CBF9df6e940C614C31f74"; +exports.FRAX_MASTER_MULTISIG_ADDRESS = "0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10"; +exports.MAIN_COMPTROLLER = "0xe61D9ed1e5Dc261D1e90a99304fADCef2c76FD10"; +exports.TIMELOCK_ADDRESS = "0xB426B13372B7c967C4a2371B5e95FC7dc37545Db"; +// PoolRelatedTokens +exports.CURVE4POOL = "0x1C5ffa4FB4907B681c61B8c82b28C4672ceb1974"; +exports.CVXFRAXBP = "0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0"; +exports.CVXFRAXBP_REWARDER = "0x93729702Bf9E1687Ae2124e191B8fFbcC0C8A0B0"; +exports.CVXFRAXFXB_20241231_ARBITRUM = "0xCDA69af1077765a89eA156aCe7a6f8b476e4aF12"; +exports.CVXFRAXFXB_20261231_ARBITRUM = "0x2026681d569f80aE0A86D7c90bc81065D9A3AD42"; +exports.CVXFRXETHWETH = "0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3"; +exports.CVXFRXETHWETH_REWARDER = "0xd2D8BEB901f90163bE4667A85cDDEbB7177eb3E3"; +exports.CVXHFXBFRAX = "0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6"; +exports.CVXHFXBFRAX_REWARDER = "0x256F53F13AdfF53CB888bc19ea0003651Be8F3B6"; +exports.CVXUSDPLUSFRAXBP = "0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9"; +exports.CVXUSDPLUSFRAXBP_REWARDER = "0x11F2217fa1D5c44Eae310b9b985E2964FC47D8f9"; +exports.FRAX2POOL = "0xf07d553B195080F84F582e88ecdD54bAa122b279"; +exports.FRAXBP = "0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5"; +exports.FRAXBP_GAUGE = "0x95285Ea6fF14F80A2fD3989a6bAb993Bd6b5fA13"; +exports.FRAXBP_POOL = "0xC9B8a3FDECB9D5b218d02555a8Baf332E5B740d5"; +exports.FRAXFXB_20241231 = "0xE920eEdAff6c3BEd1Ef61010B64d46986634E908"; +exports.FRAXFXB_20241231_GAUGE = "0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68"; +exports.FRAXFXB_20241231_POOL = "0xE920eEdAff6c3BEd1Ef61010B64d46986634E908"; +exports.FRAXFXB_20261231 = "0x946adc524BD312D036776798c46ceDD948DD0A0f"; +exports.FRAXFXB_20261231_GAUGE = "0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9"; +exports.FRAXFXB_20261231_POOL = "0x946adc524BD312D036776798c46ceDD948DD0A0f"; +exports.FRXETHWETH = "0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523"; +exports.FRXETHWETH_GAUGE = "0x46FEc59Eb30C2D610917ebf4CE5114f7425b2c4A"; +exports.FRXETHWETH_POOL = "0x1DeB3b1cA6afca0FF9C5cE9301950dC98Ac0D523"; +exports.HFRAX = "0xb1c4426C86082D91a6c097fC588E5D5d8dD1f5a8"; +exports.HFXBFRAX = "0x8f5d46267EB52F3aA6E141004A781469D445888c"; +exports.HFXBFRAX_GAUGE = "0x725E997571F4fD144bB741762E8fA9f1D11761a7"; +exports.HFXBFRAX_POOL = "0x8f5d46267EB52F3aA6E141004A781469D445888c"; +exports.LFRAX = "0x2E9963ae673A885b6bfeDa2f80132CE28b784C40"; +exports.SADDLEARBUSDV2 = "0x0a20c2FFa10cD43F67D06170422505b7D6fC0953"; +exports.SADDLEL2D4 = "0x147D0Af556C6D89640BFa915D2b9619d7b55947a"; +exports.SADDLEL2D4_PERMISSIONLESS_SWAP = "0xF2839E0b30B5e96083085F498b14bbc12530b734"; +exports.SDL_ARBUSDV2 = "0x0a20c2FFa10cD43F67D06170422505b7D6fC0953"; +exports.SDL_ARBUSDV2_POOL = "0xfeEa4D1BacB0519E8f952460A70719944fe56Ee0"; +exports.SDL_FRAXBP = "0x896935B02D3cBEb152192774e4F1991bb1D2ED3f"; +exports.SDL_FRAXBP_POOL = "0x401AFbc31ad2A3Bc0eD8960d63eFcDEA749b4849"; +exports.SDL_USDSFRAXBP = "0x1e491122f3C096392b40a4EA27aa1a29360d38a1"; +exports.SDL_USDSFRAXBP_POOL = "0xa5bD85ed9fA27ba23BfB702989e7218E44fd4706"; +exports.SDL_USDTFRAXBP = "0x166680852ae9Dec3d63374c5eBf89E974448BFE9"; +exports.SDL_USDTFRAXBP_POOL = "0xf8504e92428d65E56e495684A38f679C1B1DC30b"; +exports.SDL_USXFRAXBP = "0x721DaC7d5ACc8Aa62946fd583C1F999e1570b97D"; +exports.SDL_USXFRAXBP_POOL = "0xb2a2764D0DCAB445E24f4b813bE3f6ef8AE5f84D"; +exports.USDPLUSFRAXBP = "0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013"; +exports.USDPLUSFRAXBP_GAUGE = "0x4645e6476D3A5595Be9Efd39426cc10586a8393D"; +exports.USDPLUSFRAXBP_POOL = "0xb34a7d1444a707349Bc7b981B7F2E1f20F81F013"; +exports.VECHR = "0x9A01857f33aa382b1d5bb96C3180347862432B0d"; +exports.VERAM = "0xAAA343032aA79eE9a6897Dab03bef967c3289a06"; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A"; +exports.REMOTEMINTREDEEMHOP = "0xa46A266dCBf199a71532c76967e200994C5A0D6d"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x7B9E184e07a6EE1aC23eAe0fe8D6Be2f663f05e6"; +exports.LZ_SEND_LIB_302 = "0x975bcD720be66659e3EB3C0e4F1866a3020E493A"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30110; +exports.CHAIN_ID = 42161; diff --git a/scripts/constants/aurora.js b/scripts/constants/aurora.js new file mode 100644 index 0000000..d9e0930 --- /dev/null +++ b/scripts/constants/aurora.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x53e36C8380Ff62D7964BFa4868A0045E58A52344"; +exports.REMOTEMINTREDEEMHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x000CC1A759bC3A15e664Ed5379E321Be5de1c9B6"; +exports.LZ_SEND_LIB_302 = "0x1aCe9DD1BC743aD036eF2D92Af42Ca70A1159df5"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30211; +exports.CHAIN_ID = 1313161554; diff --git a/scripts/constants/avalanche.js b/scripts/constants/avalanche.js new file mode 100644 index 0000000..9c88123 --- /dev/null +++ b/scripts/constants/avalanche.js @@ -0,0 +1,137 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.TRADER_JOE_FRAX_WAVAX = + exports.PANGOLIN_CANFXS_USDC_E = + exports.PANGOLIN_CANFRAX_WAVAX = + exports.PANGOLIN_CANFRAX_USDC_E = + exports.PANGOLIN_CANFRAX_CANFXS = + exports.GOHM = + exports.FRAX3CRV_F = + exports.CURVE_4POOL = + exports.CURVE4POOL = + exports.AXIAL_AC4D_TSD_MIM_FRAX_DAI_E = + exports.FPI_COMPTROLLER = + exports.COMPTROLLER = + exports.FRAXSWAP_V2_FRAX_WAVAX = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V1_FRAX_WAVAX = + exports.FRAXSWAP_V1_FRAX_FXS = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = + exports.TRADER_JOE_FXS_AVAX = + exports.TRADER_JOE_FRAX_GOHM = + exports.TRADER_JOE_FRAX_AVAX = + exports.SNOWBALL_S4D = + exports.PANGOLIN_FXS_AVAX = + exports.PANGOLIN_FRAX_AVAX = + exports.SFRAX = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + void 0; +// Canonicals +exports.FRAX = "0xD24C2Ad096400B6FBcd2ad8B24E7acBc21A1da64"; +exports.FXS = "0x214DB107654fF987AD859F34125307783fC8e387"; +exports.FPI = "0xF530904FD8F9ce55F40b7cc78382A13B0cd5C48c"; +exports.FPIS = "0xee7cBa1403A2B0C53181B3980D52f9C5EdEEcC9e"; +exports.FRXETH = "0x2018B0CA0eDcE80800851958bD094dD4a8DA1fc4"; +exports.SFRXETH = "0x6D3B126ae28f3E39894070148B377624F6Ab4a45"; +exports.SFRAX = "0x3405E88af759992937b84E58F2Fe691EF0EeA320"; +// Farms +exports.PANGOLIN_FRAX_AVAX = "0x1f806f7C8dED893fd3caE279191ad7Aa3798E928"; +exports.PANGOLIN_FXS_AVAX = "0x76Ad5c64Fe6B26b6aD9aaAA19eBa00e9eCa31FE1"; +exports.SNOWBALL_S4D = "0x0bd7964E2E03bdb9703658A1e88F4Dc786FfA551"; +exports.TRADER_JOE_FRAX_AVAX = "0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89"; +exports.TRADER_JOE_FRAX_GOHM = "0x3E6Be71dE004363379d864006AAC37C9F55F8329"; +exports.TRADER_JOE_FXS_AVAX = "0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2"; +// FraxBonds +// FraxFerry +exports.FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = "0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = "0xC311b600bc926a3a8aC39945471427DFd9196930"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = "0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = "0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = "0x8f4312DAB71BaAaF64917556333B004db5f3D7DA"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = "0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = "0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxlendAndOracles +exports.COMBO_ORACLE = "0xf22460b939F1490b485005C0fe4643951724f822"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0xfD1a5eD9FaE84f06Ab2e846851F256D4d07B1A17"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E"; +exports.FRAXSWAP_FACTORY_V2 = "0xf77ca9B635898980fb219b4F4605C50e4ba58afF"; +exports.FRAXSWAP_ROUTER_V1 = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FRAXSWAP_ROUTER_V2 = "0x5977b16AA9aBC4D1281058C73B789C65Bf9ab3d3"; +exports.FRAXSWAP_V1_FRAX_FXS = "0xEa9345507c4055b2aC73c67e56f7207702FE66Cc"; +exports.FRAXSWAP_V1_FRAX_WAVAX = "0x48A7d7d9b6d6529a3d191E434b71CDB874f29011"; +exports.FRAXSWAP_V2_FRAX_FXS = "0x27cc2Be95D1492bbA726E10Eba57968A065F05eC"; +exports.FRAXSWAP_V2_FRAX_WAVAX = "0xC725819a7c2A5d3DA243e02eb886b4C5f2B4dc6A"; +// Misc +// Multisigs +exports.COMPTROLLER = "0xc036Caff65c1A31eAa53e60F6E17f1E6689937AA"; +exports.FPI_COMPTROLLER = "0xB3e03c9C1820C6216953FB1BBC6fFd232ac12a19"; +// PoolRelatedTokens +exports.AXIAL_AC4D_TSD_MIM_FRAX_DAI_E = "0x4da067E13974A4d32D342d86fBBbE4fb0f95f382"; +exports.CURVE4POOL = "0xcb11EE4B70d73e38a383b8691cAFb221059669cC"; +exports.CURVE_4POOL = "0xcb11EE4B70d73e38a383b8691cAFb221059669cC"; +exports.FRAX3CRV_F = "0xE013593CEA239E445d2271106836b00C9E7356ae"; +exports.GOHM = "0x321E7092a180BB43555132ec53AaA65a5bF84251"; +exports.PANGOLIN_CANFRAX_CANFXS = "0xe0CC7ed0666B29e60a21aF8636bBC69b21eDc434"; +exports.PANGOLIN_CANFRAX_USDC_E = "0x0c8249757b8d66cB2b6155281A5e4f8F53C94c05"; +exports.PANGOLIN_CANFRAX_WAVAX = "0x0CE543c0f81ac9AAa665cCaAe5EeC70861a6b559"; +exports.PANGOLIN_CANFXS_USDC_E = "0x8614F7ca1f4b08Ef2C158a3027EA55fAA8384aC8"; +exports.TRADER_JOE_FRAX_WAVAX = "0x0d84595e8638dBc631076c51000B2d31120D8aa1"; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; +exports.REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0xbf3521d309642FA9B1c91A08609505BA09752c61"; +exports.LZ_SEND_LIB_302 = "0x197D1333DEA5Fe0D6600E9b396c7f1B1cFCc558a"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30106; +exports.CHAIN_ID = 43114; diff --git a/scripts/constants/base.js b/scripts/constants/base.js new file mode 100644 index 0000000..cc609a7 --- /dev/null +++ b/scripts/constants/base.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0xEEdd3A0DDDF977462A97C1F0eBb89C3fbe8D084B"; +exports.FRXETHOFT = "0x7eb8d1E4E2D0C8b9bEDA7a97b305cF49F3eeE8dA"; +exports.FRXUSDOFT = "0xe5020A6d073a794B6E7f05678707dE47986Fb0b6"; +exports.SFRXETHOFT = "0x192e0C7Cc9B263D93fa6d472De47bBefe1Fb12bA"; +exports.SFRXUSDOFT = "0x91A3f8a8d7a881fBDfcfEcd7A2Dc92a46DCfa14e"; +exports.WFRAXOFT = "0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf"; +// FraxtalLZHop +exports.REMOTEHOP = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.REMOTEMINTREDEEMHOP = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0xc70AB6f32772f59fBfc23889Caf4Ba3376C84bAf"; +exports.LZ_SEND_LIB_302 = "0xB5320B0B3a13cC860893E2Bd79FCd7e13484Dda2"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0xF59C41A57AB4565AF7424F64981523DfD7A453c5"; +// Chain IDs +exports.LZ_CHAIN_ID = 30184; +exports.CHAIN_ID = 8453; diff --git a/scripts/constants/bera.js b/scripts/constants/bera.js new file mode 100644 index 0000000..c4c2209 --- /dev/null +++ b/scripts/constants/bera.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; +exports.REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30362; +exports.CHAIN_ID = 80094; diff --git a/scripts/constants/blast.js b/scripts/constants/blast.js new file mode 100644 index 0000000..702ee65 --- /dev/null +++ b/scripts/constants/blast.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0xe93Cb38f97469eac2f284a87813D0d701b28E58e"; +exports.REMOTEMINTREDEEMHOP = "0x85b1714b25f40FD5025423124c076476073180b3"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x377530cdA84DFb2673bF4d145DCF0C4D7fdcB5b6"; +exports.LZ_SEND_LIB_302 = "0xc1B621b18187F74c8F6D52a6F709Dd2780C09821"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30243; +exports.CHAIN_ID = 81457; diff --git a/scripts/constants/bsc.js b/scripts/constants/bsc.js new file mode 100644 index 0000000..fe7fa36 --- /dev/null +++ b/scripts/constants/bsc.js @@ -0,0 +1,129 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.SADDLE_FRAX_BUSD = + exports.APESWAP_CANFXS_USDC = + exports.APESWAP_CANFRAX_USDC = + exports.APESWAP_CANFRAX_WBNB = + exports.APESWAP_CANFRAX_CANFXS = + exports.GFRAX = + exports.FPI_COMPTROLLER = + exports.COMPTROLLER = + exports.FRAXSWAP_V2_FRAX_WBNB = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V1_FRAX_WBNB = + exports.FRAXSWAP_V1_FRAX_FXS = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE = + exports.PLANET_FINANCE_FRAX_LENDING = + exports.IMPOSSIBLE_FRAX_FXS = + exports.IMPOSSIBLE_FRAX_IF = + exports.APESWAP_CANFXS_WBNB = + exports.APESWAP_CANFRAX_BUSD = + exports.SFRAX = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + void 0; +// Canonicals +exports.FRAX = "0x90C97F71E18723b0Cf0dfa30ee176Ab653E89F40"; +exports.FXS = "0xe48A3d7d0Bc88d552f730B62c006bC925eadB9eE"; +exports.FPI = "0x2Dd1B4D4548aCCeA497050619965f91f78b3b532"; +exports.FPIS = "0xD1738eB733A636d1b8665f48bC8a24dA889c2562"; +exports.FRXETH = "0x64048A7eEcF3a2F1BA9e144aAc3D7dB6e58F555e"; +exports.SFRXETH = "0x3Cd55356433C89E50DC51aB07EE0fa0A95623D53"; +exports.SFRAX = "0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3"; +// Farms +exports.APESWAP_CANFRAX_BUSD = "0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9"; +exports.APESWAP_CANFXS_WBNB = "0x5c8D727b265DBAfaba67E050f2f739cAeEB4A6F9"; +exports.IMPOSSIBLE_FRAX_IF = "0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5"; +exports.IMPOSSIBLE_FRAX_FXS = "0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32"; +exports.PLANET_FINANCE_FRAX_LENDING = "0x6022bA7e5A70E1bAA98d47a566F3495A26511b25"; +// FraxBonds +// FraxFerry +exports.FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE = "0x10Ef54F944639764d2d5Efa272262f06cfaF09AE"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE = "0x5CD3d6465cd21b645F15175840f4659228C6195c"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE = "0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE = "0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE = "0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = "0x612015939f70C87E2041cc5daD909101c1A2383F"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE = "0x5E8422345238F34275888049021821E8E08CAa1f"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxlendAndOracles +exports.COMBO_ORACLE = "0x1B3C6BdEACdc4DD9B0C8E3e2Fd222b4581a52A1A"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0x8159D9CD28B7A140Fd92311C1E5c667d97176727"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0xa007a9716dba05289df85A90d0Fd9D39BEE808dE"; +exports.FRAXSWAP_FACTORY_V2 = "0xf89e6CA06121B6d4370f4B196Ae458e8b969A011"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +exports.FRAXSWAP_ROUTER_V1 = "0x0AE84c1A6E142Ed90f8A35a7E7B216CB25469E37"; +exports.FRAXSWAP_ROUTER_V2 = "0x67F755137E0AE2a2aa0323c047715Bf6523116E5"; +exports.FRAXSWAP_V1_FRAX_FXS = "0xC86B106F76ef5b9A085071365eD5355592A7aFa4"; +exports.FRAXSWAP_V1_FRAX_WBNB = "0x84eE532a0d4238f5fC4a1E8c043f8749eD4F274D"; +exports.FRAXSWAP_V2_FRAX_FXS = "0xF51709f61447E2647528CCC9030d6FE492C30D63"; +exports.FRAXSWAP_V2_FRAX_WBNB = "0x14732123c443f8E815D5c64f3C7ecb63bCeEab74"; +// Misc +// Multisigs +exports.COMPTROLLER = "0x8811Da0385cCf1848B21475A42eA4D07Fc5d964a"; +exports.FPI_COMPTROLLER = "0x49f9cbf5333d8e50c9BE76c775777DB2ACb1d456"; +// PoolRelatedTokens +exports.GFRAX = "0x6022bA7e5A70E1bAA98d47a566F3495A26511b25"; +exports.APESWAP_CANFRAX_CANFXS = "0x489c8fF79245f14AEEE9520d28209844790cB979"; +exports.APESWAP_CANFRAX_WBNB = "0x16BDb03E6074759943149eBB1526DDfD1AA5fc56"; +exports.APESWAP_CANFRAX_USDC = "0x885BE9bCbCdcB70c59F56A78ae64A820e0448589"; +exports.APESWAP_CANFXS_USDC = "0x84f2781E4E60f97D2963260A7b20D883F04F0d20"; +exports.SADDLE_FRAX_BUSD = "0xBD0091CC77Fd3bDb620985a1dD8D3f94E071CCE3"; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; +exports.REMOTEMINTREDEEMHOP = "0xdee45510b42Cb0678C8A61D043C698aF66b0d852"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0xB217266c3A98C8B2709Ee26836C98cf12f6cCEC1"; +exports.LZ_SEND_LIB_302 = "0x9F8C645f2D0b2159767Bd6E0839DE4BE49e823DE"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30102; +exports.CHAIN_ID = 56; diff --git a/scripts/constants/ethereum.js b/scripts/constants/ethereum.js new file mode 100644 index 0000000..8ddffb9 --- /dev/null +++ b/scripts/constants/ethereum.js @@ -0,0 +1,52 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.FXS = + exports.FRAX = + exports.SFRXUSD = + exports.SFRXETH = + exports.FRXUSD = + exports.FRXETH = + exports.FPI = + void 0; +// Canonicals +exports.FPI = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FRXETH = "0x5E8422345238F34275888049021821E8E08CAa1f"; +exports.FRXUSD = "0xCAcd6fd266aF91b8AeD52aCCc382b4e165586E29"; +exports.SFRXETH = "0xac3E018457B222d93114458476f3E3416Abbe38F"; +exports.SFRXUSD = "0xcf62F905562626CfcDD2261162a51fd02Fc9c5b6"; +exports.FRAX = "0x853d955aCEf822Db058eb8505911ED77F175b99e"; +exports.FXS = "0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0"; +// LayerZero +exports.FPIOFT = "0x9033BAD7aA130a2466060A2dA71fAe2219781B4b"; +exports.FRXETHOFT = "0x1c1649A38f4A3c5A0c4a24070f688C525AB7D6E6"; +exports.FRXUSDOFT = "0x566a6442A5A6e9895B9dCA97cC7879D632c6e4B0"; +exports.SFRXETHOFT = "0xbBc424e58ED38dd911309611ae2d7A23014Bd960"; +exports.SFRXUSDOFT = "0x7311CEA93ccf5f4F7b789eE31eBA5D9B9290E126"; +exports.WFRAXOFT = "0x04ACaF8D2865c0714F79da09645C13FD2888977f"; +// FraxtalLZHop +exports.REMOTEHOP = "0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E"; +exports.REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0xc02Ab410f0734EFa3F14628780e6e695156024C2"; +exports.LZ_SEND_LIB_302 = "0xbB2Ea70C9E858123480642Cf96acbcCE1372dCe1"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30101; +exports.CHAIN_ID = 1; diff --git a/scripts/constants/fantom.js b/scripts/constants/fantom.js new file mode 100644 index 0000000..99f5506 --- /dev/null +++ b/scripts/constants/fantom.js @@ -0,0 +1,108 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SPIRITSWAP_CANFXS_ANYUSDC = + exports.SPIRITSWAP_CANFRAX_FTM = + exports.SPIRITSWAP_CANFRAX_CANFXS = + exports.SPIRITSWAP_CANFRAX_ANYUSDC = + exports.SOLIDLY_VOLATILEV1_AMM___FXS_FRAX = + exports.SOLIDLY_STABLEV1_AMM___USDC_FRAX = + exports.SEX_VAMM_FXS_FRAX_DEPOSIT = + exports.SEX_SAMM_USDC_FRAX_DEPOSIT = + exports.SCFRAX = + exports.SADDLE_FRAX_USDC = + exports.OX_VAMM_FXS_FRAX_DEPOSIT = + exports.OXSOLID = + exports.OFRAX = + exports.HFRAX = + exports.FRAX2POOL = + exports.CURVE_4POOL = + exports.CURVE4POOL = + exports.FPI_COMPTROLLER = + exports.COMPTROLLER = + exports.FRAXSWAP_V2_FRAX_WFTM = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V1_FRAX_WFTM = + exports.FRAXSWAP_V1_FRAX_FXS = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = + exports.VEDAO_FRAX = + exports.SPIRITSWAP_FRAX_USDC = + exports.SPIRITSWAP_FRAX_FXS = + exports.SPIRITSWAP_FRAX_FTM = + exports.LIQUID_DRIVER_FRAX_FTM = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +// Canonicals +exports.FRAX = "0xdc301622e621166BD8E82f2cA0A26c13Ad0BE355"; +exports.FXS = "0x7d016eec9c25232b01F23EF992D98ca97fc2AF5a"; +exports.FPI = "0xAb069E73f1AA50c37A7171D16dCc3614c705101B"; +exports.FPIS = "0x3bb6B72dC07D7bFDa981F70C631482e9517CF6EE"; +exports.FRXETH = "0x9E73F99EE061C8807F69f9c6CCc44ea3d8c373ee"; +exports.SFRXETH = "0xb90CCD563918fF900928dc529aA01046795ccb4A"; +// Farms +exports.LIQUID_DRIVER_FRAX_FTM = "0x6e2ad6527901c9664f016466b8DA1357a004db0f"; +exports.SPIRITSWAP_FRAX_FTM = "0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D"; +exports.SPIRITSWAP_FRAX_FXS = "0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381"; +exports.SPIRITSWAP_FRAX_USDC = "0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d"; +exports.VEDAO_FRAX = "0xE04C26444d37fE103B9cc8033c99b09D47056f51"; +// FraxBonds +// FraxFerry +exports.FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = "0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE"; +exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE = "0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c"; +exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = "0x12b6a8178C67B2835E280E1Ed709F64446cddb08"; +exports.FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = "0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxlendAndOracles +exports.COMBO_ORACLE = "0x496E5c8F169C2930Dd67B821d8DdDDC78542f290"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0x689C5BC12B0A80a8aa33dc38dfDFB7E858A49601"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0xF55C563148cA0c0F1626834ec1B8651844D76792"; +exports.FRAXSWAP_FACTORY_V2 = "0xDc745E09fC459aDC295E2e7baACe881354dB7F64"; +exports.FRAXSWAP_ROUTER_V1 = "0xa007a9716dba05289df85A90d0Fd9D39BEE808dE"; +exports.FRAXSWAP_ROUTER_V2 = "0x7D21C651Dd333306B35F2FeAC2a19FA1e1241545"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +exports.FRAXSWAP_V1_FRAX_FXS = "0xB186ad077cA69e860476B2C84ecD0DE3572A10F5"; +exports.FRAXSWAP_V1_FRAX_WFTM = "0xc736279b8371c736f027cCC3F77755D7931F8845"; +exports.FRAXSWAP_V2_FRAX_FXS = "0x4ac3de029F4C11ab40a51336F7229d67cd1e92A5"; +exports.FRAXSWAP_V2_FRAX_WFTM = "0x173F3e43F0414F903620948F9d2094F9dbD92F15"; +// Misc +// Multisigs +exports.COMPTROLLER = "0xE838c61635dd1D41952c68E47159329443283d90"; +exports.FPI_COMPTROLLER = "0xe722B0fA594e290a8E53bFB5654cE4Ad8a4BE811"; +// PoolRelatedTokens +exports.CURVE4POOL = "0x9dc516a18775d492c9f061211C8a3FDCd476558d"; +exports.CURVE_4POOL = "0x9dc516a18775d492c9f061211C8a3FDCd476558d"; +exports.FRAX2POOL = "0x7a656B342E14F745e2B164890E88017e27AE7320"; +exports.HFRAX = "0xb4300e088a3AE4e624EE5C71Bc1822F68BB5f2bc"; +exports.OFRAX = "0x88c05534566f3bD6b6D704c9259408fF1F1a3F00"; +exports.OXSOLID = "0xDA0053F0bEfCbcaC208A3f867BB243716734D809"; +exports.OX_VAMM_FXS_FRAX_DEPOSIT = "0x9601f81F35B2F00549a654E3f2E5D7c87F733530"; +exports.SADDLE_FRAX_USDC = "0xc969dD0A7AB0F8a0C5A69C0839dB39b6C928bC08"; +exports.SCFRAX = "0x4E6854EA84884330207fB557D1555961D85Fc17E"; +exports.SEX_SAMM_USDC_FRAX_DEPOSIT = "0xF3E57E9cba43F9998559161DDd40aaeB2225E700"; +exports.SEX_VAMM_FXS_FRAX_DEPOSIT = "0xa5944150136aCF58e4e9752703Fcf7B13e8579E7"; +exports.SOLIDLY_STABLEV1_AMM___USDC_FRAX = "0x154eA0E896695824C87985a52230674C2BE7731b"; +exports.SOLIDLY_VOLATILEV1_AMM___FXS_FRAX = "0x4bBd8467ccd49D5360648CE14830f43a7fEB6e45"; +exports.SPIRITSWAP_CANFRAX_ANYUSDC = "0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d"; +exports.SPIRITSWAP_CANFRAX_CANFXS = "0x7a2aD237e389De505DE7a89768143337E516C6Ce"; +exports.SPIRITSWAP_CANFRAX_FTM = "0x7ed0cdDB9BB6c6dfEa6fB63E117c8305479B8D7D"; +exports.SPIRITSWAP_CANFXS_ANYUSDC = "0xB269A9969A437e778A8BFdB48A720aD366742554"; diff --git a/scripts/constants/fraxtal-devnet-l1.js b/scripts/constants/fraxtal-devnet-l1.js new file mode 100644 index 0000000..db28f1f --- /dev/null +++ b/scripts/constants/fraxtal-devnet-l1.js @@ -0,0 +1,43 @@ +"use strict"; +// export const FPI_ERC20 = "0x67218f66a84809201CfBa5c8b46dBd3aB95A42da"; +// export const FPIS_ERC20 = "0xC0497C072d3015fd7D45893157bCDCC1BcfEb6b5"; +// export const FRAX_ERC20 = "0xac3E018457B222d93114458476f3E3416Abbe38F"; +// export const FXS_ERC20 = "0xbAFA44EFE7901E04E39Dad13167D089C559c1138"; +// export const SFRXETH_ERC20 = "0x56390acF12bce9675ab3922060D8d955149BE286"; +// export const FRXETH_ERC20 = "0xB1C4e5a15544f005166880749C46D35a00916462"; +// export const FRXETH_MINTER = "0x80f1C4F5CD94D49e98D0a975690796f1E8C0379e"; +// export const FRXBTC_ERC20 = "0x3fe0150F6Daa6a54C585f85f0e78d665532e5b74"; +// export const SFRAX_ERC20 = "0x1D348307745645b91c49716Fae22Ad5d4CC0b94a"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.COMPTROLLER = + exports.FRXETH_MINTER = + exports.CHAIN_ID = + exports.SFRAX = + exports.SFRXETH = + exports.FRXETH = + exports.FRXBTC = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +// Canonicals +exports.FRAX = "0x114a0318Da080A2Ee3380269d796E93DF767D24F"; +exports.FXS = "0xD86518aDB08DF9AcF9E84EB216d7862bc0F634C0"; +exports.FPI = "0xfC75d8fD01fD999D2A4731a01d87131b40A8a645"; +exports.FPIS = "0x9445aD9a63def63CA9D23cfd7cd72538BbF1780A"; +exports.FRXBTC = "0x2a2acd879050aC8910d80dccb428a0AEf77fFA36"; +exports.FRXETH = "0x51Ed07ceB785d2983e56CF00CAf65499dae5df3B"; +exports.SFRXETH = "0x2787eC65f085acbbE94F1bB7E099dF06B56b6DaC"; +exports.SFRAX = "0xB26fDD0FF10A287a73EFaa0b18A0e57fd8168835"; +// Farms +// FraxBonds +// FraxFerry +// FraxlendAndOracles +// Fraxswap +// Misc +exports.CHAIN_ID = 2520; +exports.FRXETH_MINTER = "0x890205b3397a1F273BaD55476F2856886964E788"; +// Multisigs +exports.COMPTROLLER = "0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160"; +// PoolRelatedTokens diff --git a/scripts/constants/fraxtal-devnet-l2.js b/scripts/constants/fraxtal-devnet-l2.js new file mode 100644 index 0000000..67bd12b --- /dev/null +++ b/scripts/constants/fraxtal-devnet-l2.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.L2_TO_L1_MESSAGE_PASSER = + exports.L2_STANDARD_BRIDGE_PROXY = + exports.ERC20_FACTORY_PROXY = + exports.CROSS_DOMAIN_MESSENGER = + exports.COMPTROLLER = + exports.PROXY_ADMIN = + exports.CHAIN_ID = + exports.SFRAX = + exports.SFRXETH = + exports.WFRXETH = + exports.FRXBTC = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +// Canonicals +exports.FRAX = "0xFc00000000000000000000000000000000000001"; +exports.FXS = "0xFc00000000000000000000000000000000000002"; +exports.FPI = "0xFc00000000000000000000000000000000000003"; +exports.FPIS = "0xfc00000000000000000000000000000000000004"; +exports.FRXBTC = "0xfC00000000000000000000000000000000000007"; +exports.WFRXETH = "0xFC00000000000000000000000000000000000006"; +exports.SFRXETH = "0xFC00000000000000000000000000000000000005"; +exports.SFRAX = "0xfc00000000000000000000000000000000000008"; +// Farms +// FraxBonds +// FraxFerry +// FraxlendAndOracles +// Fraxswap +// Misc +exports.CHAIN_ID = 2521; +exports.PROXY_ADMIN = "0xfC00000000000000000000000000000000000009"; +// Multisigs +exports.COMPTROLLER = "0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160"; +// PoolRelatedTokens +// SystemContracts +exports.CROSS_DOMAIN_MESSENGER = "0x4200000000000000000000000000000000000007"; +exports.ERC20_FACTORY_PROXY = "0x4200000000000000000000000000000000000012"; +exports.L2_STANDARD_BRIDGE_PROXY = "0x4200000000000000000000000000000000000010"; +exports.L2_TO_L1_MESSAGE_PASSER = "0x4200000000000000000000000000000000000016"; diff --git a/scripts/constants/fraxtal-l2.js b/scripts/constants/fraxtal-l2.js new file mode 100644 index 0000000..b00195c --- /dev/null +++ b/scripts/constants/fraxtal-l2.js @@ -0,0 +1,357 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.FXB_20240630_ORACLE = + exports.FRXETH_DUAL_ORACLE_REDSTONE = + exports.FRAXTAL_STATE_ROOT_ORACLE = + exports.FRAXTAL_MERKLE_PRICE_SOURCE = + exports.FRAXTAL_BLOCKHASH_PROVIDER = + exports.FRAXLEND_WHITELIST_ADDRESS = + exports.FRAXLEND_PAIR_REGISTRY_ADDRESS = + exports.FRAXLEND_HOT_WALLET = + exports.FRAXLEND_DEPLOYER_V4 = + exports.CIRCUIT_BREAKER_ADDRESS = + exports.CHAINLINK_ETH_USD_ORACLE = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = + exports.FXB_20251231 = + exports.FXB_20291231 = + exports.FXB_20551231 = + exports.FXB_20240630 = + exports.FXB_20241231 = + exports.FXB_20261231 = + exports.FXB_TIMED_LOCKER_20261231 = + exports.FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = + exports.FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = + exports.FRAXSWAP_V2_FRAX_FXS_FRAXTAL = + exports.FRAXSWAP_V2_FRAX_FPI_FRAXTAL = + exports.FLE_FXS_WFRXETH_FRAXTAL = + exports.FLE_FRAX_FXS_FRAXTAL = + exports.CONVEX_SQUID_WFRXETH_FRAXTAL = + exports.SFRAX_PROXY = + exports.FRXBTC_PROXY = + exports.WFRXETH_PROXY = + exports.SFRXETH_PROXY = + exports.FPIS_PROXY = + exports.FPI_PROXY = + exports.WFRAX_PROXY = + exports.FRXUSD_PROXY = + exports.SFRAX = + exports.FRXBTC = + exports.WFRXETH = + exports.SFRXETH = + exports.FPIS = + exports.FPI = + exports.WFRAX = + exports.FRXUSD = + void 0; +exports.FRAXFERRY_ETHEREUM_FXS = + exports.FRAXFERRY_ETHEREUM_FRAX = + exports.SFRAX_ERC4626_MINT_REDEEMER_IMPL = + exports.SFRAX_ERC4626_MINT_REDEEMER_PROXY = + exports.FRAXTAL_POINTS_FXTL = + exports.FPIS_LOCKER_UTILS = + exports.FPIS_LOCKER_IMPL = + exports.FPIS_LOCKER_PROXY = + exports.DELEGATION_REGISTRY = + exports.BALANCE_CHECKER = + exports.FRAXSWAP_WFRX_ETH_PAIR = + exports.FRAXSWAP_ROUTER_MULTIHOP = + exports.FRAXSWAP_ROUTER = + exports.FRAXSWAP_FRAX_WFRXETH_FARM = + exports.FRAXSWAP_FRAX_SFRXETH_PAIR = + exports.FRAXSWAP_FRAX_SFRXETH_FARM = + exports.FRAXSWAP_FRAX_FXS_PAIR = + exports.FRAXSWAP_FRAX_FXS_FARM = + exports.FRAXSWAP_FRAX_FPI_PAIR = + exports.FRAXSWAP_FRAX_FPI_FARM = + exports.FRAXSWAP_FRAX_FPIS_PAIR = + exports.FRAXSWAP_FACTORY = + exports.SUSDE_MERKLE_PRICE_SOURCE = + exports.SUSDE_ERC4626_ORACLE = + exports.SFRXETH_MERKLE_PRICE_SOURCE = + exports.SFRXETH_ERC4626_ORACLE = + exports.SFRAX_MERKLE_PRICE_SOURCE = + exports.SFRAX_ERC4626_ORACLE = + exports.SDAI_ORACLE_MERKLE_PRICE_SOURCE = + exports.SDAI_ERC4626_ORACLE = + exports.FRAXLEND_PAIR_SFRAX_SFRXETH = + exports.FRAXLEND_PAIR_FXS_FRAX = + exports.FRAXLEND_PAIR_SFRXETH_FRAX = + exports.FRAXLEND_PAIR_FXB_20251231_FRAX = + exports.FRAXLEND_PAIR_FXB_20291231_FRAX = + exports.FRAXLEND_PAIR_FXB_20240630_FRAX = + exports.FRAXLEND_PAIR_FXB_20241231_FRAX = + exports.FRAXLEND_PAIR_FXB_20261231_FRAX = + exports.VARIABLE_RATE_2_ADDRESS_50 = + exports.VARIABLE_RATE_2_ADDRESS = + exports.TIMELOCK_ADDRESS = + exports.SFRXETH_DUAL_ORACLE_REDSTONE = + exports.SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE = + exports.FXS_DUAL_ORACLE_REDSTONE = + exports.FXB_VARIABLE_RATE_2 = + exports.FXB_20251231_ORACLE = + exports.FXB_20291231_ORACLE = + exports.FXB_20551231_ORACLE = + exports.FXB_20261231_ORACLE = + exports.FXB_20241231_ORACLE = + void 0; +exports.FPIOFT = + exports.L2_TO_L1_MESSAGE_PASSER = + exports.L2_STANDARD_BRIDGE_PROXY = + exports.ERC20_FACTORY_PROXY = + exports.CROSS_DOMAIN_MESSENGER = + exports.SQUIDWFRXETH_POOL = + exports.SQUIDWFRXETH_GAUGE = + exports.SQUIDWFRXETH = + exports.CVXSQUIDWFRXETH_REWARDER = + exports.CVXSQUIDWFRXETH = + exports.GOV_PROPOSER_MSIG = + exports.PROPOSER_MULTI_SIG = + exports.COMPTROLLERS = + exports.VEFXS_AGGREGATOR_IMPL = + exports.VEFXS_AGGREGATOR_PROXY = + exports.VESTEDFXS_PROXY = + exports.VESTEDFXS_IMPL_V1 = + exports.VESTEDFXS_UTILS = + exports.YIELD_DISTRIBUTOR_IMPL = + exports.YIELD_DISTRIBUTOR_PROXY = + exports.VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = + exports.VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = + exports.OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = + exports.FXB_AMO = + exports.L1VEFXS_TOTAL_SUPPLY_ORACLE = + exports.L1VEFXS_PROXY = + exports.L1VEFXS_IMPL_V1 = + exports.L1VEFXS_PROXY_ADMIN = + exports.L1VEFXS_PROXY_ADMIN_OWNER = + exports.L1VEFXS_IMPLEMENTATION_OWNER = + exports.FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE_OLD = + exports.FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE_OLD = + exports.FRAXTAL_SUSDE_MERKLE_PRICE_SOURCE = + exports.FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE = + exports.FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE = + exports.FRAXTAL_SDAI_MERKLE_PRICE_SOURCE = + exports.SFRAX_L2_RATE_ORACLE_OLD = + exports.SFRXETH_L2_RATE_ORACLE_OLD = + exports.SUSDE_L2_RATE_ORACLE = + exports.SDAI_L2_RATE_ORACLE = + exports.SFRAX_L2_RATE_ORACLE = + exports.SFRXETH_L2_RATE_ORACLE = + exports.CHAINLINK_MERKLE_PRICE_SOURCE = + exports.MERKLE_PRICE_SOURCE = + exports.STATE_ROOT_ORACLE = + exports.BLOCKHASH_PROVIDER = + exports.FRAXFERRY_ETHEREUM_SFRAX = + exports.FRAXFERRY_ETHEREUM_SFRXETH = + exports.FRAXFERRY_ETHEREUM_FPIS = + exports.FRAXFERRY_ETHEREUM_FPI = + void 0; +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.FRAXTALMINTREDEEMHOP = + exports.FRAXTALHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + void 0; +// Canonicals +exports.FRXUSD = "0xFc00000000000000000000000000000000000001"; +exports.WFRAX = "0xFc00000000000000000000000000000000000002"; +exports.FPI = "0xFc00000000000000000000000000000000000003"; +exports.FPIS = "0xfc00000000000000000000000000000000000004"; +exports.SFRXETH = "0xFC00000000000000000000000000000000000005"; +exports.WFRXETH = "0xFC00000000000000000000000000000000000006"; +exports.FRXBTC = "0xfC00000000000000000000000000000000000007"; +exports.SFRAX = "0xfc00000000000000000000000000000000000008"; +exports.FRXUSD_PROXY = exports.FRXUSD; +exports.WFRAX_PROXY = exports.WFRAX; +exports.FPI_PROXY = exports.FPI; +exports.FPIS_PROXY = exports.FPIS; +exports.SFRXETH_PROXY = exports.SFRXETH; +exports.WFRXETH_PROXY = exports.WFRXETH; +exports.FRXBTC_PROXY = exports.FRXBTC; +exports.SFRAX_PROXY = exports.SFRAX; +// Farms +exports.CONVEX_SQUID_WFRXETH_FRAXTAL = "0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc"; +exports.FLE_FRAX_FXS_FRAXTAL = "0xCe70630b4b2E889AdC558b58B2980437f58003D4"; +exports.FLE_FXS_WFRXETH_FRAXTAL = "0x7A6BE195f9931341c1f4c4230fc48F8B9b9dE91b"; +exports.FRAXSWAP_V2_FRAX_FPI_FRAXTAL = "0x7b8848f10A016341c9B2427e8541C19F31C2D243"; +exports.FRAXSWAP_V2_FRAX_FXS_FRAXTAL = "0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25"; +exports.FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = "0xe402a39F788f90607A50254fAf56316E6a78231A"; +exports.FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = "0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7"; +exports.FXB_TIMED_LOCKER_20261231 = "0x00a5b34d4b436E3276695a1EaA8242FA2FC11dC5"; +// FraxBonds +exports.FXB_20261231 = "0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e"; +exports.FXB_20241231 = "0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba"; +exports.FXB_20240630 = "0x758094A71a39De49626FE25B86631ED944558653"; +exports.FXB_20551231 = "0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83"; +exports.FXB_20291231 = "0xF1e2b576aF4C6a7eE966b14C810b772391e92153"; +exports.FXB_20251231 = "0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA"; +// FraxFerry +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = "0x00160baF84b3D2014837cc12e838ea399f8b8478"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = "0x24e927daC110Aab7189a4F864d41680e4F7865FB"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = "0xEcf63fd1A839fF54949eB786693237bEEC59C6e7"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = "0xcD3A040f05769d7628582B403063e61B7D212F91"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = "0x67c6A8A715fc726ffD0A40588701813d9eC04d9C"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = "0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxlendAndOracles +exports.CHAINLINK_ETH_USD_ORACLE = "0xA6cBe9aB6075d8b1049Db7528f2fCf22FC7d051B"; +exports.CIRCUIT_BREAKER_ADDRESS = "0x0eD01ea3B95e0f68DF2c9CD67F138ff3547b311C"; +exports.FRAXLEND_DEPLOYER_V4 = "0x4C3B0e85CD8C12E049E07D9a4d68C441196E6a12"; +exports.FRAXLEND_HOT_WALLET = "0x31562ae726AFEBe25417df01bEdC72EF489F45b3"; +exports.FRAXLEND_PAIR_REGISTRY_ADDRESS = "0x8c22EBc8f9B96cEac97EA21c53F3B27ef2F45e57"; +exports.FRAXLEND_WHITELIST_ADDRESS = "0x64F85076665dcE1FbEfC23391b8BFB2595c250f6"; +exports.FRAXTAL_BLOCKHASH_PROVIDER = "0x4200000000000000000000000000000000000015"; +exports.FRAXTAL_MERKLE_PRICE_SOURCE = "0x9990eb28E58380122AA3AdF64ea6f874df51114C"; +exports.FRAXTAL_STATE_ROOT_ORACLE = "0xeD403d48e2bC946438B5686AA1AD65056Ccf9512"; +exports.FRXETH_DUAL_ORACLE_REDSTONE = "0x4b0Ca693e29e5FD2AA39332a0387BBCD0f91a527"; +exports.FXB_20240630_ORACLE = "0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7"; +exports.FXB_20241231_ORACLE = "0x01480a0C134CeCC309015a564C7e292ba6E0F358"; +exports.FXB_20261231_ORACLE = "0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3"; +exports.FXB_20551231_ORACLE = "0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6"; +exports.FXB_20291231_ORACLE = "0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b"; +exports.FXB_20251231_ORACLE = "0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18"; +exports.FXB_VARIABLE_RATE_2 = "0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f"; +exports.FXS_DUAL_ORACLE_REDSTONE = "0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2"; +exports.SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE = "0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c"; +exports.SFRXETH_DUAL_ORACLE_REDSTONE = "0xfbcDf41Cc692ed529b9a8cC1A5867B9524FD0164"; +exports.TIMELOCK_ADDRESS = "0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2"; +exports.VARIABLE_RATE_2_ADDRESS = "0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652"; +exports.VARIABLE_RATE_2_ADDRESS_50 = "0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2"; +exports.FRAXLEND_PAIR_FXB_20261231_FRAX = "0x032578d99b1070682a5E171012BE1756a50a17d4"; +exports.FRAXLEND_PAIR_FXB_20241231_FRAX = "0x6154334A7D0E7f5f0479599D15F462B200C721E1"; +exports.FRAXLEND_PAIR_FXB_20240630_FRAX = "0x57b709e214B239821A78dFCF09c89f52bA3D80aD"; +exports.FRAXLEND_PAIR_FXB_20291231_FRAX = "0x3e92765eE2B009b104A8A7baf3759B159c19AbA1"; +exports.FRAXLEND_PAIR_FXB_20251231_FRAX = "0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5"; +exports.FRAXLEND_PAIR_SFRXETH_FRAX = "0x4F968317721B9c300afBff3FD37365637318271D"; +exports.FRAXLEND_PAIR_FXS_FRAX = "0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2"; +exports.FRAXLEND_PAIR_SFRAX_SFRXETH = "0xB71E4829e81f72f7F36A0d858e58109f5948A713"; +exports.SDAI_ERC4626_ORACLE = "0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838"; +exports.SDAI_ORACLE_MERKLE_PRICE_SOURCE = "0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a"; +exports.SFRAX_ERC4626_ORACLE = "0xF750636E1df115e3B334eD06E5b45c375107FC60"; +exports.SFRAX_MERKLE_PRICE_SOURCE = "0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5"; +exports.SFRXETH_ERC4626_ORACLE = "0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5"; +exports.SFRXETH_MERKLE_PRICE_SOURCE = "0xa560E014501f96752726f65c27E96C3e9127Ce32"; +exports.SUSDE_ERC4626_ORACLE = "0xd295936C8Bb465ADd1eC756a51698127CB4F4910"; +exports.SUSDE_MERKLE_PRICE_SOURCE = "0xc2B984E37D1CAf5Eef82D9D892287361058955E9"; +// Fraxswap +exports.FRAXSWAP_FACTORY = "0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6"; +exports.FRAXSWAP_FRAX_FPIS_PAIR = "0x78d264E25781f31343352A0f91875B655c79B843"; +exports.FRAXSWAP_FRAX_FPI_FARM = "0x7b8848f10A016341c9B2427e8541C19F31C2D243"; +exports.FRAXSWAP_FRAX_FPI_PAIR = "0x0EFFABede4e31101DE5209096611D073981A817b"; +exports.FRAXSWAP_FRAX_FXS_FARM = "0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25"; +exports.FRAXSWAP_FRAX_FXS_PAIR = "0xb4dA8dA10ffF1F6127ab71395053Aa1d499b503F"; +exports.FRAXSWAP_FRAX_SFRXETH_FARM = "0xe402a39F788f90607A50254fAf56316E6a78231A"; +exports.FRAXSWAP_FRAX_SFRXETH_PAIR = "0xEBD293F2173082320d88533316F5964298dE316E"; +exports.FRAXSWAP_FRAX_WFRXETH_FARM = "0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7"; +exports.FRAXSWAP_ROUTER = "0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6"; +exports.FRAXSWAP_ROUTER_MULTIHOP = "0x67E04873691258950299Bd8610403D69bA0A1e10"; +exports.FRAXSWAP_WFRX_ETH_PAIR = "0x4527bcEd9d41706D1436507e9a6e354d3FF44ff9"; +// Misc +exports.BALANCE_CHECKER = "0x219356ef2f11a314Dd0D8bfd7f4B0B951Cb16c3a"; +exports.DELEGATION_REGISTRY = "0x098c837FeF2e146e96ceAF58A10F68Fc6326DC4C"; +exports.FPIS_LOCKER_PROXY = "0x437E9F65cA234eCfed12149109587139d435AD35"; +exports.FPIS_LOCKER_IMPL = "0x2b72DF3116cEb8E8a7391024f69A0BfF2718389D"; +exports.FPIS_LOCKER_UTILS = "0x9E461cF6773F168A991A7aD73E2aD89ecD737745"; +exports.FRAXTAL_POINTS_FXTL = "0xaB4b7c5C9A7C8EbB97877085A6C3550ad4Ed3f97"; +exports.SFRAX_ERC4626_MINT_REDEEMER_PROXY = "0xBFc4D34Db83553725eC6c768da71D2D9c1456B55"; +exports.SFRAX_ERC4626_MINT_REDEEMER_IMPL = "0x0aF57786D6B2447EA2E04F9FAB36a239c2E8C9d5"; +// Fraxferry +exports.FRAXFERRY_ETHEREUM_FRAX = "0x00160baF84b3D2014837cc12e838ea399f8b8478"; +exports.FRAXFERRY_ETHEREUM_FXS = "0x24e927daC110Aab7189a4F864d41680e4F7865FB"; +exports.FRAXFERRY_ETHEREUM_FPI = "0xEcf63fd1A839fF54949eB786693237bEEC59C6e7"; +exports.FRAXFERRY_ETHEREUM_FPIS = "0xcD3A040f05769d7628582B403063e61B7D212F91"; +exports.FRAXFERRY_ETHEREUM_SFRXETH = "0x67c6A8A715fc726ffD0A40588701813d9eC04d9C"; +exports.FRAXFERRY_ETHEREUM_SFRAX = "0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB"; +// Global State Root +exports.BLOCKHASH_PROVIDER = "0x4200000000000000000000000000000000000015"; +exports.STATE_ROOT_ORACLE = "0xeD403d48e2bC946438B5686AA1AD65056Ccf9512"; +exports.MERKLE_PRICE_SOURCE = "0x9990eb28E58380122AA3AdF64ea6f874df51114C"; +exports.CHAINLINK_MERKLE_PRICE_SOURCE = "0x4AD728706bFe28A3F090b3f1D8Ac3A8515805B41"; +// RateTransport Oracles +exports.SFRXETH_L2_RATE_ORACLE = "0xEE095b7d9191603126Da584a1179BB403a027c3A"; +exports.SFRAX_L2_RATE_ORACLE = "0x1B680F4385f24420D264D78cab7C58365ED3F1FF"; +exports.SDAI_L2_RATE_ORACLE = "0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838"; +exports.SUSDE_L2_RATE_ORACLE = "0xd295936C8Bb465ADd1eC756a51698127CB4F4910"; +// RateTransport Oracles Old +exports.SFRXETH_L2_RATE_ORACLE_OLD = "0x8865435777730eAAbAAF2d1F55F115a87AbCf91A"; +exports.SFRAX_L2_RATE_ORACLE_OLD = "0xF750636E1df115e3B334eD06E5b45c375107FC60"; +// ERC4626 Rate Oracle Proover +exports.FRAXTAL_SDAI_MERKLE_PRICE_SOURCE = "0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a"; +exports.FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE = "0xE25D8aaa6dF41B94A415EE39cCEE0DF6673B9bDb"; +exports.FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE = "0xabca0b314d15B3e28F24AC0ee84A63001d1b44Db"; +exports.FRAXTAL_SUSDE_MERKLE_PRICE_SOURCE = "0xc2B984E37D1CAf5Eef82D9D892287361058955E9"; +// ERC4626 Rate Oracle Proover Old +exports.FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE_OLD = "0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5"; +exports.FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE_OLD = "0xa560E014501f96752726f65c27E96C3e9127Ce32"; +// L1VeFXS +exports.L1VEFXS_IMPLEMENTATION_OWNER = "0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6"; +exports.L1VEFXS_PROXY_ADMIN_OWNER = "0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6"; +exports.L1VEFXS_PROXY_ADMIN = "0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F"; +exports.L1VEFXS_IMPL_V1 = "0xBDB5088A8e89e9ec83e82caA01EC20Ed976459eD"; +exports.L1VEFXS_PROXY = "0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F"; +exports.L1VEFXS_TOTAL_SUPPLY_ORACLE = "0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8"; +// FXB AMO +exports.FXB_AMO = "0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313"; +exports.OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = "0x111ddab65Af5fF96b674400246699ED40F550De1"; +// veFXS Related +exports.VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = "0x691d1AaFB550c35B24e09bb991AEC9612342eD93"; +exports.VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = "0x39333a540bbea6262e405E1A6d435Bd2e776561E"; +exports.YIELD_DISTRIBUTOR_PROXY = "0x21359d1697e610e25C8229B2C57907378eD09A2E"; +exports.YIELD_DISTRIBUTOR_IMPL = "0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B"; +exports.VESTEDFXS_UTILS = "0xC540f05BF5a09336078634D65E46242DFBa55030"; +exports.VESTEDFXS_IMPL_V1 = "0x54bd5c72645fed784C117cA83533e0584b24Ee5c"; +exports.VESTEDFXS_PROXY = "0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF"; +exports.VEFXS_AGGREGATOR_PROXY = "0x176A4e081653EbB8a2246BAfbfCf663782426531"; +exports.VEFXS_AGGREGATOR_IMPL = "0xF9Ca1Dc83B16C72b3359CEcD1d3Fc96d80dC4Fa6"; +// Multisigs +exports.COMPTROLLERS = "0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6"; +exports.PROPOSER_MULTI_SIG = "0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE"; +exports.GOV_PROPOSER_MSIG = "0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE"; +// PoolRelatedTokens +exports.CVXSQUIDWFRXETH = "0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d"; +exports.CVXSQUIDWFRXETH_REWARDER = "0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d"; +exports.SQUIDWFRXETH = "0x277FA53c8a53C880E0625c92C92a62a9F60f3f04"; +exports.SQUIDWFRXETH_GAUGE = "0xe5E5ed1B50AE33E66ca69dF17Aa6381FDe4e9C7e"; +exports.SQUIDWFRXETH_POOL = "0x277FA53c8a53C880E0625c92C92a62a9F60f3f04"; +// SystemContracts +exports.CROSS_DOMAIN_MESSENGER = "0x4200000000000000000000000000000000000007"; +exports.ERC20_FACTORY_PROXY = "0x4200000000000000000000000000000000000012"; +exports.L2_STANDARD_BRIDGE_PROXY = "0x4200000000000000000000000000000000000010"; +exports.L2_TO_L1_MESSAGE_PASSER = "0x4200000000000000000000000000000000000016"; +// LayerZero +exports.FPIOFT = "0x75c38D46001b0F8108c4136216bd2694982C20FC"; +exports.FRXETHOFT = "0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604"; +exports.FRXUSDOFT = "0x96A394058E2b84A89bac9667B19661Ed003cF5D4"; +exports.SFRXETHOFT = "0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168"; +exports.SFRXUSDOFT = "0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361"; +exports.WFRAXOFT = "0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A"; +// FraxtalLZHop +exports.FRAXTALHOP = "0x2A2019b30C157dB6c1C01306b8025167dBe1803B"; +exports.FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x8bC1e36F015b9902B54b1387A4d733cebc2f5A4e"; +exports.LZ_SEND_LIB_302 = "0x377530cdA84DFb2673bF4d145DCF0C4D7fdcB5b6"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30255; +exports.CHAIN_ID = 252; diff --git a/scripts/constants/fraxtal-testnet-l1.js b/scripts/constants/fraxtal-testnet-l1.js new file mode 100644 index 0000000..028a14d --- /dev/null +++ b/scripts/constants/fraxtal-testnet-l1.js @@ -0,0 +1,34 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SYSTEM_CONFIG_PROXY = + exports.OPTIMISM_PORTAL_PROXY = + exports.OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = + exports.L2_OUTPUT_ORACLE_PROXY = + exports.L1_STANDARD_BRIDGE_PROXY = + exports.L1_ERC721_BRIDGE_PROXY = + exports.L1_CROSS_DOMAIN_MESSENGER_PROXY = + exports.ADDRESS_MANAGER = + exports.COMPTROLLER = + exports.PROXY_ADMIN = + exports.CHAIN_ID = + void 0; +exports.CHAIN_ID = 17000; +exports.PROXY_ADMIN = "0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e"; +exports.COMPTROLLER = "0x88699c59E413e8A47117820D15d8D33b09B21edD"; +exports.ADDRESS_MANAGER = "0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6"; +exports.L1_CROSS_DOMAIN_MESSENGER_PROXY = "0x45A98115D5722C6cfC48D711e0053758E7C0b8ad"; +exports.L1_ERC721_BRIDGE_PROXY = "0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53"; +exports.L1_STANDARD_BRIDGE_PROXY = "0x0BaafC217162f64930909aD9f2B27125121d6332"; +exports.L2_OUTPUT_ORACLE_PROXY = "0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32"; +exports.OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = "0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6"; +exports.OPTIMISM_PORTAL_PROXY = "0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d"; +exports.SYSTEM_CONFIG_PROXY = "0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db"; +// Canonicals +// Farms +// FraxBonds +// FraxFerry +// FraxlendAndOracles +// Fraxswap +// Misc +// Multisigs +// PoolRelatedTokens diff --git a/scripts/constants/fraxtal-testnet-l2.js b/scripts/constants/fraxtal-testnet-l2.js new file mode 100644 index 0000000..b5a8ac2 --- /dev/null +++ b/scripts/constants/fraxtal-testnet-l2.js @@ -0,0 +1,46 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.L2_TO_L1_MESSAGE_PASSER = + exports.L2_STANDARD_BRIDGE_PROXY = + exports.ERC20_FACTORY_PROXY = + exports.CROSS_DOMAIN_MESSENGER = + exports.PROXY_ADMIN = + exports.COMPTROLLER = + exports.FRAXSWAP_ROUTER_MULTIHOP = + exports.FRAXSWAP_ROUTER = + exports.FRAXSWAP_FACTORY = + exports.WFRXETH = + exports.SFRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + exports.CHAIN_ID = + void 0; +exports.CHAIN_ID = 2522; +// Canonicals +exports.FRAX = "0xFc00000000000000000000000000000000000001"; +exports.FXS = "0xFc00000000000000000000000000000000000002"; +exports.FPI = "0xFc00000000000000000000000000000000000003"; +exports.FPIS = "0xfc00000000000000000000000000000000000004"; +exports.SFRXETH = "0xFC00000000000000000000000000000000000005"; +exports.WFRXETH = "0xFC00000000000000000000000000000000000006"; +// Farms +// FraxBonds +// FraxFerry +// FraxlendAndOracles +// Fraxswap +exports.FRAXSWAP_FACTORY = "0xbc679bdd1bA59654bD50DEB03fd80dC97c713fF2"; +exports.FRAXSWAP_ROUTER = "0x938d99A81814f66b01010d19DDce92A633441699"; +exports.FRAXSWAP_ROUTER_MULTIHOP = "0x509728dC748586214Fa30cEF61359f136523F24d"; +// Misc +// Multisigs +exports.COMPTROLLER = "0x8b1E899ec5d51387a41Ee68261149F7d3Dfd7160"; +exports.PROXY_ADMIN = "0xfC00000000000000000000000000000000000007"; +// export const COMPTROLLER = "0x012fcFb933b9a4335B1BCC836e6a9a475146beBd"; +// PoolRelatedTokens +/// SystemContracts +exports.CROSS_DOMAIN_MESSENGER = "0x4200000000000000000000000000000000000007"; +exports.ERC20_FACTORY_PROXY = "0x4200000000000000000000000000000000000012"; +exports.L2_STANDARD_BRIDGE_PROXY = "0x4200000000000000000000000000000000000010"; +exports.L2_TO_L1_MESSAGE_PASSER = "0x4200000000000000000000000000000000000016"; diff --git a/scripts/constants/holesky.js b/scripts/constants/holesky.js new file mode 100644 index 0000000..54fd36e --- /dev/null +++ b/scripts/constants/holesky.js @@ -0,0 +1,66 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.FRXETH_MINTER = + exports.SYSTEM_CONFIG_PROXY = + exports.SUPERCHAIN_CONFIG_PROXY = + exports.PROXY_ADMIN = + exports.PROTOCOL_VERSIONS_PROXY = + exports.OPTIMISM_PORTAL_PROXY = + exports.OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = + exports.L2_OUTPUT_ORACLE_PROXY = + exports.L1_STANDARD_BRIDGE_PROXY = + exports.L1_ERC721_BRIDGE_PROXY = + exports.L1_CROSS_DOMAIN_MESSENGER_PROXY = + exports.FRAXTAL_COMPTROLLER = + exports.ADDRESS_MANAGER = + exports.FRXETH_ERC20 = + exports.SFRXETH_ERC20 = + exports.FXS_ERC20 = + exports.FRAX_ERC20 = + exports.FPIS_ERC20 = + exports.FPI_ERC20 = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + exports.CHAIN_ID = + void 0; +exports.CHAIN_ID = 17000; +// Canonicals +exports.FRAX = "0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E"; +exports.FXS = "0x4e7300F74F59AFaEcCdc0d434758Df9be238F0BF"; +exports.FPI = "0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F"; +exports.FPIS = "0x0363a32D18c25a3FD19a0d00B02106C03d8b8182"; +exports.FRXETH = "0x17845EA6a9BfD2caF1b9E558948BB4999dF2656e"; +exports.SFRXETH = "0xa63f56985F9C7F3bc9fFc5685535649e0C1a55f3"; +exports.FPI_ERC20 = exports.FPI; +exports.FPIS_ERC20 = exports.FPIS; +exports.FRAX_ERC20 = exports.FRAX; +exports.FXS_ERC20 = exports.FXS; +exports.SFRXETH_ERC20 = exports.SFRXETH; +exports.FRXETH_ERC20 = exports.FRXETH; +// Farms +// FraxBonds +// FraxFerry +// FraxlendAndOracles +// Fraxswap +// FraxtalL1 +exports.ADDRESS_MANAGER = "0x6C52d1f7aAdD1F27aaa6A9e228CE0312E3CB09A6"; +exports.FRAXTAL_COMPTROLLER = "0x88699c59E413e8A47117820D15d8D33b09B21edD"; +exports.L1_CROSS_DOMAIN_MESSENGER_PROXY = "0x45A98115D5722C6cfC48D711e0053758E7C0b8ad"; +exports.L1_ERC721_BRIDGE_PROXY = "0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53"; +exports.L1_STANDARD_BRIDGE_PROXY = "0x0BaafC217162f64930909aD9f2B27125121d6332"; +exports.L2_OUTPUT_ORACLE_PROXY = "0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32"; +exports.OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = "0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6"; +exports.OPTIMISM_PORTAL_PROXY = "0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d"; +exports.PROTOCOL_VERSIONS_PROXY = "0x0D2d3D6540638291C50db5521527d4115c8eddB7"; +exports.PROXY_ADMIN = "0xA0c6294D524f56fF9BdAeE94b69064c529cB9a1e"; +exports.SUPERCHAIN_CONFIG_PROXY = "0x089065000De745708B5EE76Be5dF236Eb6453b82"; +exports.SYSTEM_CONFIG_PROXY = "0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db"; +// Misc +exports.FRXETH_MINTER = "0x5E8422345238F34275888049021821E8E08CAa1f"; +// Multisigs +// PoolRelatedTokens +// SystemContracts diff --git a/scripts/constants/hyperliquid.js b/scripts/constants/hyperliquid.js new file mode 100644 index 0000000..ae55f90 --- /dev/null +++ b/scripts/constants/hyperliquid.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; +exports.REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x3A73033C0b1407574C76BdBAc67f126f6b4a9AA9"; +exports.LZ_RECEIVE_LIB_302 = "0x7cacBe439EaD55fa1c22790330b12835c6884a91"; +exports.LZ_SEND_LIB_302 = "0xfd76d9CB0Bac839725aB79127E7411fe71b1e3CA"; +exports.LZ_BLOCK_SEND_LIB = "0xf540d892bc671f08e0b1c5b61185c53c2211e8f7"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30367; +exports.CHAIN_ID = 999; diff --git a/scripts/constants/index.js b/scripts/constants/index.js new file mode 100644 index 0000000..87804bd --- /dev/null +++ b/scripts/constants/index.js @@ -0,0 +1,134 @@ +"use strict"; +var __createBinding = + (this && this.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + }, + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; + }); +var __setModuleDefault = + (this && this.__setModuleDefault) || + (Object.create + ? function (o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } + : function (o, v) { + o["default"] = v; + }); +var __importStar = + (this && this.__importStar) || + (function () { + var ownKeys = function (o) { + ownKeys = + Object.getOwnPropertyNames || + function (o) { + var ar = []; + for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; + return ar; + }; + return ownKeys(o); + }; + return function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) + for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); + __setModuleDefault(result, mod); + return result; + }; + })(); +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ZkSync = + exports.XLayer = + exports.Worldchain = + exports.Unichain = + exports.Stable = + exports.Sonic = + exports.Solana = + exports.Sei = + exports.Scroll = + exports.PolygonzkEVM = + exports.Polygon = + exports.Plumephoenix = + exports.Optimism = + exports.Moonriver = + exports.Movement = + exports.Moonbeam = + exports.Mode = + exports.Monad = + exports.Mainnet = + exports.Linea = + exports.Katana = + exports.Ink = + exports.Hyperliquid = + exports.Holesky = + exports.FraxtalTestnetL2 = + exports.FraxtalTestnetL1 = + exports.FraxtalL2 = + exports.FraxtalL2Devnet = + exports.FraxtalL1Devnet = + exports.Fantom = + exports.Ethereum = + exports.BSC = + exports.Blast = + exports.Bera = + exports.Base = + exports.Avalanche = + exports.Aurora = + exports.Arbitrum = + exports.Aptos = + exports.Abstract = + void 0; +exports.Abstract = __importStar(require("./abstract")); +exports.Aptos = __importStar(require("./aptos")); +exports.Arbitrum = __importStar(require("./arbitrum")); +exports.Aurora = __importStar(require("./aurora")); +exports.Avalanche = __importStar(require("./avalanche")); +exports.Base = __importStar(require("./base")); +exports.Bera = __importStar(require("./bera")); +exports.Blast = __importStar(require("./blast")); +exports.BSC = __importStar(require("./bsc")); +exports.Ethereum = __importStar(require("./ethereum")); +exports.Fantom = __importStar(require("./fantom")); +exports.FraxtalL1Devnet = __importStar(require("./fraxtal-devnet-l1")); +exports.FraxtalL2Devnet = __importStar(require("./fraxtal-devnet-l2")); +exports.FraxtalL2 = __importStar(require("./fraxtal-l2")); +exports.FraxtalTestnetL1 = __importStar(require("./fraxtal-testnet-l1")); +exports.FraxtalTestnetL2 = __importStar(require("./fraxtal-testnet-l2")); +exports.Holesky = __importStar(require("./holesky")); +exports.Hyperliquid = __importStar(require("./hyperliquid")); +exports.Ink = __importStar(require("./ink")); +exports.Katana = __importStar(require("./katana")); +exports.Linea = __importStar(require("./linea")); +exports.Mainnet = __importStar(require("./mainnet")); +exports.Monad = __importStar(require("./monad")); +exports.Mode = __importStar(require("./mode")); +exports.Moonbeam = __importStar(require("./moonbeam")); +exports.Movement = __importStar(require("./movement")); +exports.Moonriver = __importStar(require("./moonriver")); +exports.Optimism = __importStar(require("./optimism")); +exports.Plumephoenix = __importStar(require("./plumephoenix")); +exports.Polygon = __importStar(require("./polygon")); +exports.PolygonzkEVM = __importStar(require("./polygon-zkevm")); +exports.Scroll = __importStar(require("./scroll")); +exports.Sei = __importStar(require("./sei")); +exports.Solana = __importStar(require("./solana")); +exports.Sonic = __importStar(require("./sonic")); +exports.Stable = __importStar(require("./stable")); +exports.Unichain = __importStar(require("./unichain")); +exports.Worldchain = __importStar(require("./worldchain")); +exports.XLayer = __importStar(require("./xlayer")); +exports.ZkSync = __importStar(require("./zksync")); diff --git a/scripts/constants/ink.js b/scripts/constants/ink.js new file mode 100644 index 0000000..3415b26 --- /dev/null +++ b/scripts/constants/ink.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; +exports.REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0xca29f3A6f966Cb2fc0dE625F8f325c0C46dbE958"; +exports.LZ_RECEIVE_LIB_302 = "0x473132bb594caEF281c68718F4541f73FE14Dc89"; +exports.LZ_SEND_LIB_302 = "0x76111DE813F83AAAdBD62773Bf41247634e2319a"; +exports.LZ_BLOCK_SEND_LIB = "0x796862c4849662bfc30fe7559780923d519d3192"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30339; +exports.CHAIN_ID = 57073; diff --git a/scripts/constants/katana.js b/scripts/constants/katana.js new file mode 100644 index 0000000..96a1c9c --- /dev/null +++ b/scripts/constants/katana.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c"; +exports.REMOTEMINTREDEEMHOP = "0xF6f45CCB5E85D1400067ee66F9e168f83e86124E"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30375; +exports.CHAIN_ID = 747474; diff --git a/scripts/constants/linea.js b/scripts/constants/linea.js new file mode 100644 index 0000000..22dad70 --- /dev/null +++ b/scripts/constants/linea.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4"; +exports.FRXETHOFT = "0xB1aFD04774c02AE84692619448B08BA79F19b1ff"; +exports.FRXUSDOFT = "0xC7346783f5e645aa998B106Ef9E7f499528673D8"; +exports.SFRXETHOFT = "0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2"; +exports.SFRXUSDOFT = "0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6"; +exports.WFRAXOFT = "0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5"; +// FraxtalLZHop +exports.REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; +exports.REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0xE22ED54177CE1148C557de74E4873619e6c6b205"; +exports.LZ_SEND_LIB_302 = "0x32042142DD551b4EbE17B6FEd53131dd4b4eEa06"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; +// Chain IDs +exports.LZ_CHAIN_ID = 30183; +exports.CHAIN_ID = 59144; diff --git a/scripts/constants/mainnet.js b/scripts/constants/mainnet.js new file mode 100644 index 0000000..be8273d --- /dev/null +++ b/scripts/constants/mainnet.js @@ -0,0 +1,2051 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CONVEX_STKCVXFRXETHCVX = + exports.CONVEX_STKCVXFRXETHCRV = + exports.CONVEX_STKCVXFRXETHCBETH = + exports.CONVEX_STKCVXFRXETHANKRETH = + exports.CONVEX_STKCVXFRXETHALETH = + exports.CONVEX_STKCVXFRAXUSDP = + exports.CONVEX_STKCVXFRAXSDAI = + exports.CONVEX_STKCVXFRAXPYUSD = + exports.CONVEX_STKCVXFRAXFXB_20261231 = + exports.CONVEX_STKCVXFRAXFXB_20241231 = + exports.CONVEX_STKCVXFRAXFXB_20240630 = + exports.CONVEX_STKCVXFRAXFPI_NG = + exports.CONVEX_STKCVXFRAXBP = + exports.CONVEX_STKCVXFPIFRAX = + exports.CONVEX_STKCVXEUSDFRAXBP = + exports.CONVEX_STKCVXDOLAFRAXPYUSD = + exports.CONVEX_STKCVXDOLAFRAXBP = + exports.CONVEX_STKCVXCVXFXSFRAXBP = + exports.CONVEX_STKCVXCVXFRAXBP = + exports.CONVEX_STKCVXCVXCRVFRAXBP = + exports.CONVEX_STKCVXCVGFRAXBP = + exports.CONVEX_STKCVXCRVUSDFRAX = + exports.CONVEX_STKCVXCOILFRAXBP_DEPRECATED = + exports.CONVEX_STKCVXCOILFRAXBP = + exports.CONVEX_STKCVXCLEVUSDFRAXBP = + exports.CONVEX_STKCVXBUSDFRAXBP = + exports.CONVEX_STKCVXBADGERFRAXBP = + exports.CONVEX_STKCVXAPEUSDFRAXBP = + exports.CONVEX_STKCVXALUSDFRAXBP = + exports.CONVEX_STKCVXALCXFRAXBP = + exports.CONVEX_STKCVXAGEURFRAXBP = + exports.BUNNI_FRXETH_WETH_GAUGE = + exports.BUNNI_FRAX_USDC_GAUGE = + exports.BALANCER_SFRXETH_STETH_RETH_BPT = + exports.BALANCER_FRXETH_PXETH_GAUGE_DEPRECATED = + exports.AURA_FRXETH_PXETH_DEPOSIT = + exports.ANGLE_FRAX_AGEUR_STAKING = + exports.AAVE_AFRAX = + exports.SFRXETH_ERC20 = + exports.FRXETH_ERC20 = + exports.FXS_ERC20 = + exports.FRAX_ERC20 = + exports.SFRAX = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + exports.CHAIN_ID = + void 0; +exports.FRAXSWAP_V2_FRAX_SDL = + exports.FRAXSWAP_V2_FRAX_PITCHFXS = + exports.FRAXSWAP_V2_FRAX_OHM = + exports.FRAXSWAP_V2_FRAX_IQ = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V2_FRAX_FPIS = + exports.FRAXSWAP_V1_FRAX_SYN = + exports.FRAXSWAP_V1_FRAX_PITCHFXS_V3 = + exports.FRAXSWAP_V1_FRAX_PITCHFXS_V2 = + exports.FRAXSWAP_V1_FRAX_PITCHFXS = + exports.FRAXSWAP_V1_FRAX_IQ_V3 = + exports.FRAXSWAP_V1_FRAX_IQ_V2 = + exports.FRAXSWAP_V1_FRAX_IQ = + exports.FRAXLEND_V1_FRAX_FXS = + exports.FLUX_FINANCE_FFRAX = + exports.DFORCE_FRAX_LENDING_ETHEREUM = + exports.CURVE_FRAX3CRV_F_2 = + exports.CONVEX_STKCVXZUSDFRAXBP = + exports.CONVEX_STKCVXXAIFRAXBP = + exports.CONVEX_STKCVXUZDFRAXBP_DEPRECATED_OLD = + exports.CONVEX_STKCVXUZDFRAXBP_DEPRECATED = + exports.CONVEX_STKCVXUZDFRAXBP = + exports.CONVEX_STKCVXUSDDFRAXBP = + exports.CONVEX_STKCVXTUSDFRAXBP = + exports.CONVEX_STKCVXTRISDT = + exports.CONVEX_STKCVXTRICRYPTOFRAX = + exports.CONVEX_STKCVXSWETHFRXETH = + exports.CONVEX_STKCVXSUSDFRAXBP = + exports.CONVEX_STKCVXSTGFRAXBP = + exports.CONVEX_STKCVXSDTFRAXBP = + exports.CONVEX_STKCVXRSRFRAXBP = + exports.CONVEX_STKCVXPUSDFRAXBP = + exports.CONVEX_STKCVXOHMFRAXBP = + exports.CONVEX_STKCVXMSUSDFRAXBP = + exports.CONVEX_STKCVXMKUSDFRAXBP = + exports.CONVEX_STKCVXMAIFRAXBP = + exports.CONVEX_STKCVXLUSDFRAXBP = + exports.CONVEX_STKCVXGUSDFRAXBP = + exports.CONVEX_STKCVXGRAIFRAXBP = + exports.CONVEX_STKCVXFRXETHZUNETH = + exports.CONVEX_STKCVXFRXETHZETH = + exports.CONVEX_STKCVXFRXETHWETH = + exports.CONVEX_STKCVXFRXETHSTETH = + exports.CONVEX_STKCVXFRXETHSETH = + exports.CONVEX_STKCVXFRXETHRETH_STAFI = + exports.CONVEX_STKCVXFRXETHRETH = + exports.CONVEX_STKCVXFRXETHPXETH = + exports.CONVEX_STKCVXFRXETHPETH = + exports.CONVEX_STKCVXFRXETHMSETH = + exports.CONVEX_STKCVXFRXETHETH = + void 0; +exports.VEFPIS_FPIS_STAKING = + exports.UNISWAP_V3_FRAX_USDC = + exports.UNISWAP_V3_FRAX_DAI = + exports.UNISWAP_V3_FRAX_AGEUR = + exports.UNISWAP_FXS_WETH = + exports.UNISWAP_FRAX_WETH = + exports.UNISWAP_FRAX_USDC = + exports.UNISWAP_FRAX_OHM = + exports.UNISWAP_FRAX_IQ = + exports.UNISWAP_FRAX_FXS = + exports.UNISWAP_FEI_TRIBE = + exports.TOKEMAK_FXS_STAKING = + exports.TOKEMAK_FRAX_STAKING = + exports.TEMPLE_FRAX_TEMPLE = + exports.SUSHI_FRAX_SUSHI = + exports.STARGATE_BRIDGE_LIQUIDITY_FRAX_ETHEREUM = + exports.STAKEDAO_SFRXETH_STETH_RETH_BPT = + exports.STAKEDAO_SDFXS_FXS = + exports.STAKEDAO_SDFXS = + exports.STAKEDAO_SDFRAX3CRV_F = + exports.STAKEDAO_SDETH_FRAXPUT = + exports.STAKEDAO_SANFRAX = + exports.STAKEDAO_FRXETHCRV = + exports.STAKEDAO_FRAX_USDC = + exports.STAKEDAO_FRAX3CRV = + exports.STAKEDAO_CVXFXS_FXS = + exports.SOMMELIER_FRAXIMAL = + exports.SOLIDLY_VAMM_FXS_FRXETH = + exports.SOLIDLY_VAMM_FRAX_FRXETH = + exports.SOLIDLY_SAMM_FRXETH_WETH = + exports.SOLIDLY_SAMM_FRAX_USDT = + exports.SOLIDLY_SAMM_FRAX_USDC = + exports.SADDLE_ALUSD_FEI_FRAX_LUSD = + exports.PICKLE_FINANCE_UNIV3_FRAX_USDC = + exports.PICKLE_FINANCE_UNIV3_FRAX_DAI = + exports.PICKLE_FINANCE_SADDLE_D4 = + exports.PICKLE_FINANCE_PVEFXS_BRINERY = + exports.PICKLE_FINANCE_CURVE_CVXFXS_FXS = + exports.MONOLITH_MO_VAMM_FXS_FRXETH = + exports.MONOLITH_MO_SAMM_FRXETH_WETH = + exports.MONOLITH_MO_SAMM_FRAX_USDT = + exports.KYBERSWAP_ELASTIC_FRXETH_FRAX = + exports.KYBERSWAP_ELASTIC_FRXETH_ETH_DEPRECATED = + exports.KYBERSWAP_ELASTIC_FRXETH_ETH = + exports.KYBERSWAP_ELASTIC_FRAX_USDC_DEPRECATED = + exports.KYBERSWAP_ELASTIC_FRAX_USDC = + exports.GELATO_UNISWAP_FRAX_DAI = + exports.GEARBOX_DFRAX = + exports.FRAXSWAP_V2_FRAX_ZZ = + exports.FRAXSWAP_V2_FRAX_SYN = + void 0; +exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = + exports.CURVE_20261231_ARBITRUM_GAUGE = + exports.CURVE_20261231_ARBITRUM_POOL = + exports.CURVE_20261231_MAINNET_POOL = + exports.FXB_20261231_ORACLE = + exports.AUCTION_20261231 = + exports.FXB_20261231 = + exports.CURVE_20241231_ARBITRUM_GAUGE = + exports.CURVE_20241231_ARBITRUM_POOL = + exports.CURVE_20241231_MAINNET_POOL = + exports.FXB_20241231_ORACLE = + exports.AUCTION_20241231 = + exports.FXB_20241231 = + exports.CURVE_20240630_MAINNET_POOL = + exports.ORACLE_20240630 = + exports.AUCTION_20240630 = + exports.FXB_20240630 = + exports.FXB_AMO_TIMELOCK = + exports.FXB_AMO = + exports.FXB_FACTORY = + exports.SLIPPAGE_AUCTION_FACTORY = + exports.YEARN_CRVFRAX_VAULT_V3 = + exports.VESPER_ORBIT_FRAX = + exports.VEFXS_FXS_STAKING = + void 0; +exports.APE_USD_CHAINLINK_ORACLE = + exports.APE_ERC20 = + exports.APECOIN_DUAL_ORACLE_ADDRESS = + exports.AAVE_USD_CHAINLINK_ORACLE = + exports.AAVE_TOKEN_DUAL_ORACLE_ADDRESS = + exports.AAVE_ERC20 = + exports.FRAX_POOL_V3 = + exports.FRAX_POOL_USDT = + exports.FRAX_POOL_USDC_V2 = + exports.FRAX_POOL_USDC = + exports.FRAXFERRY_CREWMEMBER = + exports.FRAXFERRY_FIRST_OFFICER = + exports.FRAXFERRY_CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = + void 0; +exports.FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS = + exports.FRAX_USD_CHAINLINK_ORACLE = + exports.FRAX_USDC_PLAIN_POOL = + exports.FRAX_USDC_CURVE_POOL_NOT_LP = + exports.FRAX_USDC_CURVE_POOL_LP_ERC20 = + exports.FRAX_USDC_CURVE_LP_DUAL_ORACLE_ADDRESS = + exports.FRAX_HOT_WALLET = + exports.FRAXSWAP_ROUTER_ADDRESS = + exports.FRAXLEND_WHITELIST_ADDRESS = + exports.FRAXLEND_PAIR_REGISTRY_ADDRESS = + exports.FRAXLEND_PAIR_HELPER = + exports.FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = + exports.FRAXLEND_PAIR_DEPLOYER_V41_ADDRESS = + exports.FRAXLEND_PAIR_DEPLOYER_V3_ADDRESS = + exports.FRAXLEND_PAIR_DEPLOYER_CONVEX_ADDRESS = + exports.FRAXLEND_PAIR_DEPLOYER_ADDRESS = + exports.FRAXLEND_PAIRHELPER = + exports.FRAXLEND_PAIRDEPLOYER = + exports.FRAXLEND_DEPLOYER_ADDRESS_V0 = + exports.FRAXBP_CURVE_LP_DUAL_ORACLE = + exports.FPI_ORACLE_V2 = + exports.FPI_ORACLE = + exports.FPI_ERC20 = + exports.FPI_CONTROLLER_POOL_ADDRESS = + exports.FPIS_ERC20 = + exports.FIL_USD_CHAINLINK_ORACLE = + exports.FIL_ETH_CHAINLINK_ORACLE = + exports.FIL_ERC20 = + exports.EZETH_ERC20 = + exports.EZETH_DUAL_ORACLE = + exports.EZETHETH_DUAL_ORACLE = + exports.ETH_USD_CHAINLINK_ORACLE = + exports.CVX_USD_CHAINLINK_ORACLE = + exports.CVX_ERC20 = + exports.CRV_USD_CHAINLINK_ORACLE = + exports.CRV_ERC20 = + exports.CPI_TRACKER_ORACLE_V2 = + exports.CPI_TRACKER_ORACLE = + exports.CONVEX_WRAPPER_FRXETH_ETH_FRAXLEND_LP_OLD = + exports.CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD = + exports.CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP = + exports.CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP = + exports.FRAXLEND_COMPTROLLER_ADDRESS = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = + exports.COMBO_ORACLE_KYBERSWAP_ELASTIC = + exports.COMBO_ORACLE = + exports.CIRCUIT_BREAKER_ADDRESS = + exports.CHAIN_LINK_TOKEN_DUAL_ORACLE = + exports.BTC_USD_CHAINLINK_ORACLE = + void 0; +exports.USDE_ERC20 = + exports.USDE_CURVE_PAIR = + exports.USDC_USD_CHAINLINK_ORACLE = + exports.USDC_ERC20 = + exports.UNI_USD_CHAINLINK_ORACLE = + exports.UNI_ERC20 = + exports.UNIV2_ROUTER = + exports.UNISWAP_DUAL_ORACLE_ADDRESS = + exports.SUSDE_ORACLE = + exports.SUSDE_ERC20 = + exports.SFRXETH_USD_ORACLE_V2 = + exports.SFRXETH_USDC_ORACLE_V2_ADAPTER = + exports.SFRXETH_SFRAX_INVERSE_ORACLE_ADAPTER = + exports.SFRXETH_ORACLE_V2 = + exports.SFRXETH_ORACLE = + exports.SFRXETH_FRAX_ORACLE_ADDRESS = + exports.SFRXETH_ETH_DUAL_ORACLE_ADDRESS = + exports.SFRXETH_DUAL_ORACLE_ADDRESS = + exports.SFRAX_ERC20 = + exports.RSETH_ERC20 = + exports.RSETHETH_DUAL_ORACLE = + exports.RETH_ERC20 = + exports.RETH_DUAL_ORACLE = + exports.OHMV2_ETH_CHAINLINK_ORACLE = + exports.MKR_USD_CHAINLINK_ORACLE = + exports.MKR_ETH_CHAINLINK_ORACLE = + exports.MKR_ERC20 = + exports.MAKER_DUAL_ORACLE_ADDRESS = + exports.LINK_USD_CHAINLINK_ORACLE = + exports.LINK_ERC20 = + exports.LINEAR_RATE_ADDRESS = + exports.LINEAR_INTEREST_RATE = + exports.LDO_ETH_CURVE_V2_POOL = + exports.LDO_ETH_CHAINLINK_ORACLE = + exports.LDO_ERC20 = + exports.LDO_DUAL_ORACLE = + exports.GOHM_ORACLE = + exports.GOHM_ERC20 = + exports.FXS_USD_CHAINLINK_ORACLE = + exports.FXB_VARIABLE_RATE_2 = + exports.FXB_20261231_ORACLE_ADAPTER = + exports.FXB_20261231_ERC20 = + exports.FXB_20241231_ORACLE_ADAPTER = + exports.FXB_20241231_ERC20 = + exports.FXB_20240630_ORACLE = + exports.FXB_20240630_ERC20 = + exports.FRXETH_FRAX_ORACLE_ADDRESS = + exports.FRXETH_ETH_DUAL_ORACLE_ADDRESS = + exports.FRXETH_ETH_CURVE_POOL_NOT_LP = + exports.FRXETH_ETH_CURVE_POOL_LP_ERC20 = + void 0; +exports.FRAXSWAP_PAIR_FS_V2_FRAX_FPI = + exports.FRAXSWAP_PAIR_FRAX_FPI = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.FRAXLEND_WRAPPER_FACTORY = + exports.FRAXLEND_PAIR_RSETH_FRXETH = + exports.FRAXLEND_PAIR_EZETH_FRXETH = + exports.FRAXLEND_PAIR_SFRAX_SFRXETH = + exports.FRAXLEND_PAIR_SFRAX_WBTC = + exports.FRAXLEND_PAIR_SUSDE_FRAX = + exports.FRAXLEND_PAIR_RETH_FRAX = + exports.FRAXLEND_PAIR_LDO_FRAX = + exports.FRAXLEND_PAIR_WSTETH_FRAX = + exports.FRAXLEND_PAIR_LINK_FRAX = + exports.FRAXLEND_PAIR_SFRXETH_USDC = + exports.FRAXLEND_PAIR_FXB_20261231_FRAX = + exports.FRAXLEND_PAIR_FXB_20241231_FRAX = + exports.FRAXLEND_PAIR_FXB_20240630_FRAX = + exports.FRAXLEND_PAIR_AAVE_FRAX = + exports.FRAXLEND_PAIR_UNI_FRAX = + exports.FRAXLEND_PAIR_MKR_FRAX = + exports.FRAXLEND_PAIR_GOHM_FRAX = + exports.FRAXLEND_PAIR_CRV_FRAX = + exports.FRAXLEND_PAIR_CVX_FRAX = + exports.FRAXLEND_PAIR_APE_FRAX = + exports.FRAXLEND_PAIR_FPI_FRAX = + exports.FRAXLEND_PAIR_FXS_FRAX = + exports.FRAXLEND_PAIR_CRVETHFRXETH_FRAX = + exports.FRAXLEND_PAIR_SFRXETH_FRAX = + exports.FRAXLEND_PAIR_WBTC_FRAX = + exports.FRAXLEND_PAIR_WETH_FRAX = + exports.WSTETH_USD_DUAL_ORACLE_ADDRESS = + exports.WSTETH_ERC20 = + exports.WETH_USDC_V3_POOL = + exports.WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = + exports.WETH_FRAX_V3_POOL = + exports.WETH_ERC20 = + exports.WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = + exports.WBTC_SFRAX_INVERSE_DUAL_ORACLE = + exports.WBTC_ERC20 = + exports.VARIABLE_RATE_STABLE_ADDRESS = + exports.VARIABLE_RATE_ADDRESS_OLD = + exports.VARIABLE_RATE_ADDRESS = + exports.VARIABLE_RATE_50BP_ADDRESS = + exports.VARIABLE_RATE_2_ADDRESS_50 = + exports.VARIABLE_RATE_2_ADDRESS = + exports.USDE_ORACLE = + void 0; +exports.PORTAL_GUARDIAN = + exports.P2P_SEQUENCER_ADDRESS = + exports.OPTIMISM_PORTAL__IMPL_V1_ADDR = + exports.OPTIMISM_PORTAL_PROXY = + exports.OPTIMISM_PORTAL_IMPL_V2_ADDR = + exports.OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = + exports.L2_OUTPUT_ORACLE__IMPL_V1 = + exports.L2_OUTPUT_ORACLE_PROXY = + exports.L2_OUTPUT_ORACLE_PROPOSER = + exports.L2_OUTPUT_ORACLE_IMPL_V2 = + exports.L2_OUTPUT_ORACLE_CHALLENGER = + exports.L1_STANDARD_BRIDGE__IMPL_V1_ADDR = + exports.L1_STANDARD_BRIDGE_PROXY = + exports.L1_STANDARD_BRIDGE_IMPL_V2_ADDR = + exports.L1_ERC721_BRIDGE__IMPL_V1 = + exports.L1_ERC721_BRIDGE_PROXY = + exports.L1_ERC721_BRIDGE_IMPL_V2 = + exports.L1_CROSS_DOMAIN_MESSENGER__IMPL_V1 = + exports.L1_CROSS_DOMAIN_MESSENGER_PROXY = + exports.L1_CROSS_DOMAIN_MESSENGER_IMPL_V2 = + exports.FRAXTAL_DEPLOYER = + exports.FRAXTAL_COMPTROLLER = + exports.FINAL_SYSTEM_OWNER = + exports.DISPUTE_GAME_FACTORY_PROXY = + exports.BATCH_SENDER = + exports.BATCH_INBOX = + exports.BASE_FEE_VAULT_RECIPIENT = + exports.ADDRESS_MANAGER = + exports.FRAXSWAP_PAIR_FRAX_ZZ_V2 = + exports.FRAXSWAP_PAIR_FRAX_SYN_V2 = + exports.FRAXSWAP_PAIR_FRAX_SDL_V2 = + exports.FRAXSWAP_PAIR_FRAX_OHM_V2 = + exports.FRAXSWAP_PAIR_FRAX_OHM = + exports.FRAXSWAP_PAIR_FRAX_IQ_V2 = + exports.FRAXSWAP_PAIR_FRAX_IQ = + exports.FRAXSWAP_PAIR_FRAX_PITCHFXS_V2 = + exports.FRAXSWAP_PAIR_FRAX_PITCHFXS = + exports.FRAXSWAP_PAIR_FS_V2_FRAX_WETH = + exports.FRAXSWAP_PAIR_FRAX_WETH = + exports.FRAXSWAP_PAIR_FS_V2_FXS_FRXETH = + exports.FRAXSWAP_PAIR_FS_V2_FXS_FPIS = + exports.FRAXSWAP_PAIR_FXS_FPIS = + exports.FRAXSWAP_PAIR_FS_V2_FPI_FXS = + exports.FRAXSWAP_PAIR_FPI_FXS = + exports.FRAXSWAP_PAIR_FS_V2_FPI_FPIS = + exports.FRAXSWAP_PAIR_FPI_FPIS = + exports.FRAXSWAP_PAIR_FS_V2_FRAX_FPIS = + exports.FRAXSWAP_PAIR_FRAX_FPIS = + exports.FRAXSWAP_PAIR_FS_V2_FRAX_FXS = + exports.FRAXSWAP_PAIR_FRAX_FXS = + void 0; +exports.CURVE_METAPOOL_LOCKER = + exports.CURVE_AMO_ADMIN = + exports.CURVE_AMO_V5 = + exports.CURVE_AMO_V2 = + exports.CURVE_AMO_V1 = + exports.CURVE_AMO_IMPL_V1 = + exports.CURVE_AMO = + exports.CRVFRAX_VAULT = + exports.CONVEX_AMO_ADMIN = + exports.CONVEX_AMO = + exports.BUNDLE_UTILS = + exports.BALANCE_CHECKER = + exports.AMO_MINTER_OLD = + exports.AMO_MINTER = + exports.AAVE_AMO = + exports.SPIRITSWAP_FRAX_FXS = + exports.SNOWBALL_S4D = + exports.SENTIMENT_LFRAX = + exports.SADDLE_L2D4_ARBITRUM = + exports.MSTABLE_FRAX_MUSD = + exports.KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = + exports.KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = + exports.KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = + exports.FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = + exports.FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = + exports.FRAXSWAP_V2_FRAX_FXS_FRAXTAL = + exports.FRAXSWAP_V2_FRAX_FPI_FRAXTAL = + exports.FLE_FRAX_FXS_FRAXTAL = + exports.FLE_FXS_WFRXETH_FRAXTAL = + exports.CURVE_VSTFRAX_F = + exports.CONVEX_USD_FRAXBP = + exports.CONVEX_SQUID_WFRXETH_FRAXTAL = + exports.CONVEX_HFXB_FRAX_ARBITRUM = + exports.CONVEX_FRXETH_WETH_ARBITRUM = + exports.CONVEX_FRAX_FXB_20261231_ARBITRUM = + exports.CONVEX_FRAX_FXB_20241231_ARBITRUM = + exports.CONVEX_FRAXBP_ARBITRUM = + exports.BALANCER_FRXETH_BB_A_WETH_GAUGE = + exports.SYSTEM_OWNER_SAFE = + exports.SYSTEM_CONFIG__IMPL_V1_ADDR = + exports.SYSTEM_CONFIG_PROXY = + exports.SYSTEM_CONFIG_IMPL_V2_ADDR = + exports.SUPERCHAIN_CONFIG_PROXY = + exports.SUPERCHAIN_CONFIG_IMPL_V2 = + exports.SUPERCHAIN_CONFIG_GUARDIAN = + exports.STORAGE_SETTER = + exports.PROXY_ADMIN_OWNER = + exports.PROXY_ADMIN = + exports.PROTOCOL_VERSIONS_PROXY = + exports.PROTOCOL_VERSIONS_IMPL_V2 = + void 0; +exports.UNIV3_LIQUIDITY_AMO_V2 = + exports.UNIV3_LIQUIDITY_AMO = + exports.UNIV2_TO_UNIV3_MIGRATOR_ADDRESS = + exports.TWAMM_AMO_V2 = + exports.TWAMM_AMO = + exports.TOKEN_TRACKER_V2 = + exports.TOKEN_TRACKER_AMO = + exports.TOKEMAK_AMO = + exports.TIMELOCK = + exports.STAKING_UTILITIES = + exports.STAKEDAO_AMO = + exports.RAGEQUITTER_TEMPLE = + exports.RARI_AMO = + exports.OHM_AMO_ADMIN = + exports.OHM_AMO = + exports.MULTISIG = + exports.MULTICALL_OZ_DELEGATECALL = + exports.MSIG_HELPER = + exports.MINT_UTILITIES = + exports.MIM_CONVEX_AMO = + exports.MIGRATION_HELPER = + exports.MIGRATION_BUNDLE_UTILS = + exports.MANUAL_TOKEN_TRACKER_AMO = + exports.LENDING_AMO = + exports.INVESTOR_AMO_IMPL_V1 = + exports.INVESTOR_AMO_ADMIN = + exports.INVESTOR_AMO_V1 = + exports.INVESTOR_AMO = + exports.FXS_1559_AMO_V3 = + exports.FXS_1559_AMO_V2_IMPL_V1 = + exports.FXS_1559_AMO_V2_ADMIN = + exports.FXS_1559_AMO_V2 = + exports.FXS_1559_AMO = + exports.FRXETH_MINTER = + exports.FRAXLEND_AMO_V3 = + exports.FRAXLEND_AMO = + exports.FRAX_GAUGE_V2 = + exports.FRAX_GAUGE_NOOP_REWARDS_DISTRIBUTOR = + exports.FRAX_GAUGE_REWARDS_DISTRIBUTOR = + exports.FRAX_GAUGE_CONTROLLER_V2 = + exports.FRAX_GAUGE_CONTROLLER = + exports.FRAX3CRV_CURVE_REWARDS_DISTRIBUTOR_EOA = + exports.FRAX3CRV_CURVE_FXS_DISTRIBUTOR = + exports.FPI_CONTROLLER_AMO = + exports.ETH_ADDRESS = + exports.DEPOSIT_CONTRACT_ADDRESS = + exports.CVX_LOCKER_AMO_V2 = + exports.CVX_LOCKER_AMO = + exports.CURVE_VOTER_PROXY = + exports.CURVE_METAPOOL_LOCKER_2 = + void 0; +exports.CBETHFRXETH = + exports.CAAVE = + exports.BUSDFRAXBP_POOL = + exports.BUSDFRAXBP = + exports.BADGERFRAXBP_POOL = + exports.BADGERFRAXBP = + exports.AUSDC = + exports.APEUSDFRAXBP_POOL = + exports.APEUSDFRAXBP = + exports.ANKRETHFRXETH_POOL = + exports.ANKRETHFRXETH = + exports.ALUSDFRAXBP_POOL = + exports.ALUSDFRAXBP = + exports.ALETHFRXETH_POOL = + exports.ALETHFRXETH = + exports.ALCXFRAXBP_POOL = + exports.ALCXFRAXBP = + exports.AGEURFRAXBP_POOL = + exports.AGEURFRAXBP = + exports.AFRAX = + exports.WALLET_WITH_WETH = + exports.WALLET_WITH_USDC = + exports.WALLET_WITH_CRVFRAX = + exports.TREASURY_MULTISIG = + exports.TIMELOCK_ADDRESS = + exports.TEAM_MULTISIG = + exports.INVESTORS_MULTISIG = + exports.FXB_MULTISIG = + exports.FRXETH_OWNER = + exports.FRXETH_COMPTROLLER = + exports.FRAXLEND_CIRCUIT_BREAKER_MULTISIG = + exports.FRAXLEND_OPERATOR_MULTISIG = + exports.FRAXLEND_MAIN_MULTISIG = + exports.FPI_TREASURY_MULTISIG = + exports.FPI_CORE_CONTRIBUTORS_TEAM_MULTISIG = + exports.FPI_COMPTROLLER_MULTISIG = + exports.CURVEAMO_OPERATOR_ADDRESS = + exports.COMPTROLLER_MULTISIG = + exports.COMPTROLLER = + exports.COMMUNITY_MULTISIG = + exports.BEE_USER = + exports.ADVISORS_MULTISIG = + exports.YIELDSPACE_AMO = + exports.VEFPIS_SMART_WALLET_CHECKER = + exports.VEFPIS_YIELD_DISTRIBUTOR_V4 = + exports.VEFXS_YIELD_DISTRIBUTOR_V4 = + exports.VEFXS_YIELD_DISTRIBUTOR_V3 = + exports.VEFXS_YIELD_DISTRIBUTOR_V2 = + exports.VEFXS_YIELD_DISTRIBUTOR = + exports.VEFXS_SMART_WALLET_CHECKER = + void 0; +exports.CVXDOLAFRAXBP_REWARDER = + exports.CVXDOLAFRAXBP = + exports.CVXCVXFXSFRAXBP_REWARDER = + exports.CVXCVXFXSFRAXBP = + exports.CVXCVXFRAXBP_REWARDER = + exports.CVXCVXFRAXBP = + exports.CVXCVXCRVFRAXBP_REWARDER = + exports.CVXCVXCRVFRAXBP = + exports.CVXCVGFRAXBP_REWARDER = + exports.CVXCVGFRAXBP = + exports.CVXCRV_REWARDER = + exports.CVXCRVUSDFRAX_REWARDER = + exports.CVXCRVUSDFRAX = + exports.CVXCRVFRAX_REWARDER = + exports.CVXCRVFRAXBP_POOL = + exports.CVXCRVFRAXBP = + exports.CVXCRVFRAX = + exports.CVXCOILFRAXBP_REWARDER = + exports.CVXCOILFRAXBP = + exports.CVXCLEVUSDFRAXBP_REWARDER = + exports.CVXCLEVUSDFRAXBP = + exports.CVXBUSDFRAXBP_REWARDER = + exports.CVXBUSDFRAXBP = + exports.CVXBADGERFRAXBP_REWARDER = + exports.CVXBADGERFRAXBP = + exports.CVXAPEUSDFRAXBP_REWARDER = + exports.CVXAPEUSDFRAXBP = + exports.CVXALUSDFRAXBP_REWARDER = + exports.CVXALUSDFRAXBP = + exports.CVXALCXFRAXBP_REWARDER = + exports.CVXALCXFRAXBP = + exports.CVXAGEURFRAXBP_REWARDER = + exports.CVXAGEURFRAXBP = + exports.CVGFRAXBP_POOL = + exports.CVGFRAXBP_GAUGE = + exports.CVGFRAXBP = + exports.CUSDC = + exports.CURVE4POOL = + exports.CRVUSDFRAX_POOL = + exports.CRVUSDFRAX_GAUGE = + exports.CRVUSDFRAX = + exports.CRVFRXETH_POOL = + exports.CRVFRXETH = + exports.CRVFRAX_GAUGE = + exports.CRVFRAX = + exports.COILFRAXBP_POOL = + exports.COILFRAXBP = + exports.CLEVUSDFRAXBP_POOL = + exports.CLEVUSDFRAXBP = + exports.CBETHFRXETH_POOL = + void 0; +exports.CVXFRXETHWETH_REWARDER = + exports.CVXFRXETHWETH = + exports.CVXFRXETHSTETH_REWARDER = + exports.CVXFRXETHSTETH = + exports.CVXFRXETHSETH_REWARDER = + exports.CVXFRXETHSETH = + exports.CVXFRXETHRETH_STAFI_REWARDER = + exports.CVXFRXETHRETH_STAFI = + exports.CVXFRXETHRETH_REWARDER = + exports.CVXFRXETHRETH = + exports.CVXFRXETHPXETH_REWARDER = + exports.CVXFRXETHPXETH = + exports.CVXFRXETHPETH_REWARDER = + exports.CVXFRXETHPETH = + exports.CVXFRXETHMSETH_REWARDER = + exports.CVXFRXETHMSETH = + exports.CVXFRXETHETH_REWARDER = + exports.CVXFRXETHETH = + exports.CVXFRXETHCVX_REWARDER = + exports.CVXFRXETHCVX = + exports.CVXFRXETHCRV_REWARDER = + exports.CVXFRXETHCRV = + exports.CVXFRXETHCBETH_REWARDER = + exports.CVXFRXETHCBETH = + exports.CVXFRXETHANKRETH_REWARDER = + exports.CVXFRXETHANKRETH = + exports.CVXFRXETHALETH_REWARDER = + exports.CVXFRXETHALETH = + exports.CVXFRXETH = + exports.CVXFRAXUSDP_REWARDER = + exports.CVXFRAXUSDP = + exports.CVXFRAXSDAI_REWARDER = + exports.CVXFRAXSDAI = + exports.CVXFRAXPYUSD_REWARDER = + exports.CVXFRAXPYUSD = + exports.CVXFRAXFXB_20261231_REWARDER = + exports.CVXFRAXFXB_20261231 = + exports.CVXFRAXFXB_20241231_REWARDER = + exports.CVXFRAXFXB_20241231 = + exports.CVXFRAXFXB_20240630_REWARDER = + exports.CVXFRAXFXB_20240630 = + exports.CVXFRAXFPI_NG_REWARDER = + exports.CVXFRAXFPI_NG = + exports.CVXFRAXBP_POOL = + exports.CVXFRAXBP = + exports.CVXFPIFRAX_F = + exports.CVXEUSDFRAXBP_REWARDER = + exports.CVXEUSDFRAXBP = + exports.CVXDOLAFRAXPYUSD_REWARDER = + exports.CVXDOLAFRAXPYUSD = + void 0; +exports.DOLAFRAXBP = + exports.D3POOL = + exports.CVXZUSDFRAXBP_REWARDER = + exports.CVXZUSDFRAXBP = + exports.CVXXAIFRAXBP_REWARDER = + exports.CVXXAIFRAXBP = + exports.CVXUZDFRAXBP_REWARDER = + exports.CVXUZDFRAXBP = + exports.CVXUSDDFRAXBP_REWARDER = + exports.CVXUSDDFRAXBP = + exports.CVXTUSDFRAXBP_REWARDER = + exports.CVXTUSDFRAXBP = + exports.CVXTRISDT_REWARDER = + exports.CVXTRISDT = + exports.CVXTRICRYPTOFRAX_REWARDER = + exports.CVXTRICRYPTOFRAX = + exports.CVXSWETHFRXETH_REWARDER = + exports.CVXSWETHFRXETH = + exports.CVXSUSDFRAXBP_REWARDER = + exports.CVXSUSDFRAXBP = + exports.CVXSTGFRAXBP_REWARDER = + exports.CVXSTGFRAXBP = + exports.CVXSDTFRAXBP_REWARDER = + exports.CVXSDTFRAXBP = + exports.CVXRSRFRAXBP_REWARDER = + exports.CVXRSRFRAXBP = + exports.CVXPUSDFRAXBP_REWARDER = + exports.CVXPUSDFRAXBP = + exports.CVXOHMFRAXBP_REWARDER = + exports.CVXOHMFRAXBP = + exports.CVXMSUSDFRAXBP_REWARDER = + exports.CVXMSUSDFRAXBP = + exports.CVXMKUSDFRAXBP_REWARDER = + exports.CVXMKUSDFRAXBP = + exports.CVXMAIFRAXBP_REWARDER = + exports.CVXMAIFRAXBP = + exports.CVXLUSDFRAXBP_REWARDER = + exports.CVXLUSDFRAXBP = + exports.CVXGUSDFRAXBP_REWARDER = + exports.CVXGUSDFRAXBP = + exports.CVXGUSD3CRV_FREE = + exports.CVXGRAIFRAXBP_REWARDER = + exports.CVXGRAIFRAXBP = + exports.CVXFXSFRAXBP_POOL = + exports.CVXFXSFRAXBP = + exports.CVXFRXETH_POOL = + exports.CVXFRXETHZUNETH_REWARDER = + exports.CVXFRXETHZUNETH = + exports.CVXFRXETHZETH_REWARDER = + exports.CVXFRXETHZETH = + void 0; +exports.FRXETHETH_POOL = + exports.FRXETHETH = + exports.FRXETHCVX_POOL = + exports.FRXETHCVX_GAUGE = + exports.FRXETHCVX = + exports.FRXETHCRV_POOL = + exports.FRXETHCRV_GAUGE = + exports.FRXETHCRV = + exports.FRXETHCBETH_POOL = + exports.FRXETHCBETH_GAUGE = + exports.FRXETHCBETH = + exports.FRXETHANKRETH_POOL = + exports.FRXETHANKRETH_GAUGE = + exports.FRXETHANKRETH = + exports.FRXETHALETH_POOL = + exports.FRXETHALETH_GAUGE = + exports.FRXETHALETH = + exports.FRAXUSDP_POOL = + exports.FRAXUSDP = + exports.FRAXSDAI_POOL = + exports.FRAXSDAI_GAUGE = + exports.FRAXSDAI = + exports.FRAXPYUSD_POOL = + exports.FRAXPYUSD_GAUGE = + exports.FRAXPYUSD = + exports.FRAXFXB_20261231_POOL = + exports.FRAXFXB_20261231_GAUGE = + exports.FRAXFXB_20261231 = + exports.FRAXFXB_20241231_POOL = + exports.FRAXFXB_20241231_GAUGE = + exports.FRAXFXB_20241231 = + exports.FRAXFXB_20240630_POOL = + exports.FRAXFXB_20240630_GAUGE = + exports.FRAXFXB_20240630 = + exports.FRAXFPI_POOL = + exports.FRAXFPI_NG_POOL = + exports.FRAXFPI_NG_GAUGE = + exports.FRAXFPI_NG = + exports.FRAXFPI = + exports.FRAXBP_POOL = + exports.FRAXBP = + exports.FRAX3CRV_F = + exports.FPIFRAX_F_POOL = + exports.FPIFRAX_F = + exports.EUSDFRAXBP_POOL = + exports.EUSDFRAXBP = + exports.DOLAFRAXPYUSD_POOL = + exports.DOLAFRAXPYUSD_GAUGE = + exports.DOLAFRAXPYUSD = + exports.DOLAFRAXBP_POOL = + void 0; +exports.MSUSDFRAXBP_POOL = + exports.MSUSDFRAXBP = + exports.MKUSDFRAXBP_POOL = + exports.MKUSDFRAXBP_GAUGE = + exports.MKUSDFRAXBP = + exports.MAIFRAXBP_POOL = + exports.MAIFRAXBP = + exports.LUSDFRAXBP_POOL = + exports.LUSDFRAXBP = + exports.GUSDFRAXBP_POOL = + exports.GUSDFRAXBP = + exports.GUSD3CRV = + exports.GRAIFRAXBP_POOL = + exports.GRAIFRAXBP_GAUGE = + exports.GRAIFRAXBP = + exports.GOHM = + exports.FXSFRXETH_POOL = + exports.FXSFRXETH = + exports.FUSDC_18 = + exports.FTRIBE_8 = + exports.FRXETHZUNETH_POOL = + exports.FRXETHZUNETH_GAUGE = + exports.FRXETHZUNETH = + exports.FRXETHZETH_POOL = + exports.FRXETHZETH_GAUGE = + exports.FRXETHZETH = + exports.FRXETHWETH_POOL = + exports.FRXETHWETH_GAUGE = + exports.FRXETHWETH = + exports.FRXETHSTETH_POOL = + exports.FRXETHSTETH_GAUGE = + exports.FRXETHSTETH = + exports.FRXETHSETH_POOL = + exports.FRXETHSETH_GAUGE = + exports.FRXETHSETH = + exports.FRXETHRETH_STAFI_POOL = + exports.FRXETHRETH_STAFI_GAUGE = + exports.FRXETHRETH_STAFI = + exports.FRXETHRETH_POOL = + exports.FRXETHRETH_GAUGE = + exports.FRXETHRETH = + exports.FRXETHPXETH_POOL = + exports.FRXETHPXETH_GAUGE = + exports.FRXETHPXETH = + exports.FRXETHPETH_POOL = + exports.FRXETHPETH_GAUGE = + exports.FRXETHPETH = + exports.FRXETHMSETH_POOL = + exports.FRXETHMSETH_GAUGE = + exports.FRXETHMSETH = + void 0; +exports.STKCVXCOILFRAXBP_DEPRECATED = + exports.STKCVXCOILFRAXBP = + exports.STKCVXCLEVUSDFRAXBP = + exports.STKCVXBUSDFRAXBP = + exports.STKCVXBADGERFRAXBP = + exports.STKCVXAPEUSDFRAXBP = + exports.STKCVXALUSDFRAXBP = + exports.STKCVXALCXFRAXBP = + exports.STKCVXAGEURFRAXBP = + exports.STKAAVE = + exports.STGFRAXBP_POOL = + exports.STGFRAXBP = + exports.STETHFRXETH_POOL = + exports.STETHFRXETH = + exports.SOHM = + exports.SETHFRXETH_POOL = + exports.SETHFRXETH = + exports.SDTFRAXBP_POOL = + exports.SDTFRAXBP = + exports.SDL_VESPERFRAXEARNPOOLFRAXBP_POOL = + exports.SDL_VESPERFRAXEARNPOOLFRAXBP_GAUGE = + exports.SDL_VESPERFRAXEARNPOOLFRAXBP = + exports.SDL_USDTFRAXBP_POOL = + exports.SDL_USDTFRAXBP_GAUGE = + exports.SDL_USDTFRAXBP = + exports.SDL_SUSDFRAXBP_POOL = + exports.SDL_SUSDFRAXBP_GAUGE = + exports.SDL_SUSDFRAXBP = + exports.SDL_FRAXBP_POOL = + exports.SDL_FRAXBP_GAUGE = + exports.SDL_FRAXBP = + exports.SDL_FRAX3POOL_POOL = + exports.SDL_FRAX3POOL_GAUGE = + exports.SDL_FRAX3POOL = + exports.SDL_ALUSDFRAXBP_POOL = + exports.SDL_ALUSDFRAXBP_GAUGE = + exports.SDL_ALUSDFRAXBP = + exports.SDFRAX3CRV_F = + exports.SADDLED4_POOL = + exports.SADDLED4 = + exports.RSRFRAXBP_POOL = + exports.RSRFRAXBP = + exports.RETHFRXETH_POOL = + exports.RETHFRXETH = + exports.PUSDFRAXBP_POOL = + exports.PUSDFRAXBP = + exports.PITCHFXS = + exports.OHMFRAXBP_POOL = + exports.OHMFRAXBP = + exports.OGTEMPLE = + void 0; +exports.STKCVXTUSDFRAXBP = + exports.STKCVXTRISDT = + exports.STKCVXTRICRYPTOFRAX = + exports.STKCVXSWETHFRXETH = + exports.STKCVXSUSDFRAXBP = + exports.STKCVXSTGFRAXBP = + exports.STKCVXSDTFRAXBP = + exports.STKCVXRSRFRAXBP = + exports.STKCVXPUSDFRAXBP = + exports.STKCVXOHMFRAXBP = + exports.STKCVXMSUSDFRAXBP = + exports.STKCVXMKUSDFRAXBP = + exports.STKCVXMAIFRAXBP = + exports.STKCVXLUSDFRAXBP = + exports.STKCVXGUSDFRAXBP = + exports.STKCVXGRAIFRAXBP = + exports.STKCVXFRXETHZUNETH = + exports.STKCVXFRXETHZETH = + exports.STKCVXFRXETHWETH = + exports.STKCVXFRXETHSTETH = + exports.STKCVXFRXETHSETH = + exports.STKCVXFRXETHRETH_STAFI = + exports.STKCVXFRXETHRETH = + exports.STKCVXFRXETHPXETH = + exports.STKCVXFRXETHPETH = + exports.STKCVXFRXETHMSETH = + exports.STKCVXFRXETHETH = + exports.STKCVXFRXETHCVX = + exports.STKCVXFRXETHCRV = + exports.STKCVXFRXETHCBETH = + exports.STKCVXFRXETHANKRETH = + exports.STKCVXFRXETHALETH = + exports.STKCVXFRAXUSDP = + exports.STKCVXFRAXSDAI = + exports.STKCVXFRAXPYUSD = + exports.STKCVXFRAXFXB_20261231 = + exports.STKCVXFRAXFXB_20241231 = + exports.STKCVXFRAXFXB_20240630 = + exports.STKCVXFRAXFPI_NG = + exports.STKCVXFRAXBP = + exports.STKCVXFPIFRAX = + exports.STKCVXEUSDFRAXBP = + exports.STKCVXDOLAFRAXPYUSD = + exports.STKCVXDOLAFRAXBP = + exports.STKCVXCVXFXSFRAXBP = + exports.STKCVXCVXFRAXBP = + exports.STKCVXCVXCRVFRAXBP = + exports.STKCVXCVGFRAXBP = + exports.STKCVXCRVUSDFRAX = + exports.STKCVXCRV = + void 0; +exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = + exports.KYBERSWAP_ELASTIC_POS_MGR = + exports.KYBERSWAP_ELASTIC_FACTORY_V2 = + exports.KYBERSWAP_ELASTIC_FACTORY = + exports.USDC_WETH_UNI_V3_POOL = + exports.UNI_ETH_UNI_V3_POOL = + exports.STATIC_UNI_V3_ORACLE = + exports.MKR_ETH_UNI_V3_POOL = + exports.LINK_ETH_UNI_V3_POOL = + exports.FRXETH_FRAX_V3_POOL = + exports.FRAX_WETH_UNI_V3_POOL = + exports.FRAX_USDC_V3_POOL = + exports.FRAX_DAI_V3_POOL = + exports.APE_WETH_UNI_V3_POOL = + exports.AAVE_ETH_UNI_V3_POOL = + exports.ZUSDFRAXBP_POOL = + exports.ZUSDFRAXBP_GAUGE = + exports.ZUSDFRAXBP = + exports.YVUSDC = + exports.XSDT = + exports.XAIFRAXBP_POOL = + exports.XAIFRAXBP = + exports.VLCVX = + exports.VESDL = + exports.VECRV = + exports.UZDFRAXBP_POOL = + exports.UZDFRAXBP = + exports.USDDFRAXBP_POOL = + exports.USDDFRAXBP = + exports.TUSDFRAXBP_POOL = + exports.TUSDFRAXBP = + exports.TRISDT_GAUGE = + exports.TRISDT = + exports.TRICRYPTOFRAX_GAUGE = + exports.TRICRYPTOFRAX = + exports.THREECRV_POOL = + exports.THREECRV_ERC20 = + exports.TFXS = + exports.TFRAX = + exports.SWETHFRXETH_POOL = + exports.SWETHFRXETH = + exports.SUSDFRAXBP_POOL = + exports.SUSDFRAXBP = + exports.STKMTA = + exports.STKCVXZUSDFRAXBP = + exports.STKCVXXAIFRAXBP = + exports.STKCVXUZDFRAXBP_DEPRECATED_OLD = + exports.STKCVXUZDFRAXBP_DEPRECATED = + exports.STKCVXUZDFRAXBP = + exports.STKCVXUSDDFRAXBP = + void 0; +exports.UNISWAP_V3_FACTORY = + exports.SWAPROUTER = + exports.NON_FUNGIBLE_POSITION_MANAGER = + exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = + exports.KYBERSWAP_ELASTIC_TICK_FEES_READER = + exports.KYBERSWAP_ELASTIC_ROUTER_V2 = + exports.KYBERSWAP_ELASTIC_ROUTER = + void 0; +// Canonicals +exports.CHAIN_ID = 1; +exports.FRAX = "0x853d955aCEf822Db058eb8505911ED77F175b99e"; +exports.FXS = "0x3432B6A60D23Ca0dFCa7761B7ab56459D9C964D0"; +exports.FPI = "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E"; +exports.FPIS = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FRXETH = "0x5E8422345238F34275888049021821E8E08CAa1f"; +exports.SFRXETH = "0xac3E018457B222d93114458476f3E3416Abbe38F"; +exports.SFRAX = "0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32"; +exports.FRAX_ERC20 = exports.FRAX; +exports.FXS_ERC20 = exports.FXS; +exports.FRXETH_ERC20 = exports.FRXETH; +exports.SFRXETH_ERC20 = exports.SFRXETH; +// Farms +exports.AAVE_AFRAX = "0x02577b426F223A6B4f2351315A19ecD6F357d65c"; +exports.ANGLE_FRAX_AGEUR_STAKING = "0xb40432243E4F317cE287398e72Ab8f0312fc2FE8"; +exports.AURA_FRXETH_PXETH_DEPOSIT = "0x60aaA9b33e712A76F9421E46a75ec47fBDc8d4CB"; +exports.BALANCER_FRXETH_PXETH_GAUGE_DEPRECATED = "0x1e64E373c143810524BDb1Ac8Dce35977d12e55d"; +exports.BALANCER_SFRXETH_STETH_RETH_BPT = "0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a"; +exports.BUNNI_FRAX_USDC_GAUGE = "0x50B4cDb17D3e10C9BC88b3744F3fD7c25695EEE7"; +exports.BUNNI_FRXETH_WETH_GAUGE = "0xcbcCBA2FA84606Df153B593dD01c37a50ac8427C"; +exports.CONVEX_STKCVXAGEURFRAXBP = "0xd1f21322bBDd3586dC1151ADCcaA2684641c2b31"; +exports.CONVEX_STKCVXALCXFRAXBP = "0xA0657642224Fc53dAB4a3d2069430afe157BEc5D"; +exports.CONVEX_STKCVXALUSDFRAXBP = "0x711d650Cd10dF656C2c28D375649689f137005fA"; +exports.CONVEX_STKCVXAPEUSDFRAXBP = "0xa810D1268cEF398EC26095c27094596374262826"; +exports.CONVEX_STKCVXBADGERFRAXBP = "0x5a92EF27f4baA7C766aee6d751f754EBdEBd9fae"; +exports.CONVEX_STKCVXBUSDFRAXBP = "0xaCf54f101B86f9e55d35C0674Ebd8C854E5f80e4"; +exports.CONVEX_STKCVXCLEVUSDFRAXBP = "0x5745506D56b0088f800085b1227B3f1F7d419c89"; +exports.CONVEX_STKCVXCOILFRAXBP = "0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6"; +exports.CONVEX_STKCVXCOILFRAXBP_DEPRECATED = "0x94c491e298625b1226a89DDA091B3932c59FAbc1"; +exports.CONVEX_STKCVXCRVUSDFRAX = "0x67CC47cF82785728DD5E3AE9900873a074328658"; +exports.CONVEX_STKCVXCVGFRAXBP = "0x1ee8D379e374A4A00e7d79AF4Bf2eD2b591561c2"; +exports.CONVEX_STKCVXCVXCRVFRAXBP = "0x57c9F019B25AaAF822926f4Cacf0a860f61eDd8D"; +exports.CONVEX_STKCVXCVXFRAXBP = "0xeC670c5e0A8A8d5ae5639158565D840DE44CA03f"; +exports.CONVEX_STKCVXCVXFXSFRAXBP = "0x2F9504988675c91787E188Ed928D6E042d9052e9"; +exports.CONVEX_STKCVXDOLAFRAXBP = "0xE7211E87D60177575846936F2123b5FA6f0ce8Ab"; +exports.CONVEX_STKCVXDOLAFRAXPYUSD = "0x972d92f4563Ac9581c730A13A47Ae9d6dCdf18b7"; +exports.CONVEX_STKCVXEUSDFRAXBP = "0x4c9AD8c53d0a001E7fF08a3E5E26dE6795bEA5ac"; +exports.CONVEX_STKCVXFPIFRAX = "0x0a08673E3d7c454E1c6b27acD059C50Df6727FC9"; +exports.CONVEX_STKCVXFRAXBP = "0x963f487796d54d2f27bA6F3Fbe91154cA103b199"; +exports.CONVEX_STKCVXFRAXFPI_NG = "0x7d69b887751Af59fB4b56BC98fcA0234096Eb267"; +exports.CONVEX_STKCVXFRAXFXB_20240630 = "0x6D54747fC8e32cA1A91bA2fd36aB673bD84E2e7b"; +exports.CONVEX_STKCVXFRAXFXB_20241231 = "0x9D7eB7Ec34283D93C6677AE30F3983399Ab72A2f"; +exports.CONVEX_STKCVXFRAXFXB_20261231 = "0x9A95396eC04B55de54859C06fd75dFb8466F4653"; +exports.CONVEX_STKCVXFRAXPYUSD = "0x18FEFE5Db2D63aCaa8b5520AFde32507216d39e1"; +exports.CONVEX_STKCVXFRAXSDAI = "0x90EB2F13Acf1bc35c2c40c0EBaff2De4d2Eb0d6b"; +exports.CONVEX_STKCVXFRAXUSDP = "0x2A5b8C7DFE489CeB00ec80524C0bA0C1b78433A9"; +exports.CONVEX_STKCVXFRXETHALETH = "0x56790e4A08eD17aa3b7b4B1b23A6a84D731Fd77e"; +exports.CONVEX_STKCVXFRXETHANKRETH = "0x854B98dC1F76c92b22F75d1f33D23FEb64D8087F"; +exports.CONVEX_STKCVXFRXETHCBETH = "0x16e55917849aC7fA4341470FA3A22bB503D5cACD"; +exports.CONVEX_STKCVXFRXETHCRV = "0xDA0622cBa8cC821ee0d4AfA366Df95E948b43297"; +exports.CONVEX_STKCVXFRXETHCVX = "0xb01BaB994b52A37a231551f00a1B7cAcd43bc8C9"; +exports.CONVEX_STKCVXFRXETHETH = "0xa537d64881b84faffb9Ae43c951EEbF368b71cdA"; +exports.CONVEX_STKCVXFRXETHMSETH = "0x2816Ab1F4Db656602b6B0041c006652A4F5D0437"; +exports.CONVEX_STKCVXFRXETHPETH = "0xD591A551bC1776A7Ce066a5Df7640266afc850bF"; +exports.CONVEX_STKCVXFRXETHPXETH = "0xC68A0174401AE002D6DbA8C9788C6dF4c807BD52"; +exports.CONVEX_STKCVXFRXETHRETH = "0x719505cB97DF15565255eb1bDe65586271dB873C"; +exports.CONVEX_STKCVXFRXETHRETH_STAFI = "0x76CF35aB1450D3A6c84EdDB8A960A5F65B76e706"; +exports.CONVEX_STKCVXFRXETHSETH = "0xd79Ae34eD6D11A235629A48aeA9F661a241faD4f"; +exports.CONVEX_STKCVXFRXETHSTETH = "0x68921998fbc43B360D3cF14a03aF4273CB0cFA44"; +exports.CONVEX_STKCVXFRXETHWETH = "0xB4fdD7444E1d86b2035c97124C46b1528802DA35"; +exports.CONVEX_STKCVXFRXETHZETH = "0x882B9fad02D1a7436449dcdE9934Eeb9E287909c"; +exports.CONVEX_STKCVXFRXETHZUNETH = "0xE2E998A68C6f1D10c41884931457B7C302C6fA97"; +exports.CONVEX_STKCVXGRAIFRAXBP = "0x5684d5566bb438D8Ef7B3C1E5da9450cD19C1b9f"; +exports.CONVEX_STKCVXGUSDFRAXBP = "0xF0Ffe16810B7f412c52C1610e3BC9819A7Dcb366"; +exports.CONVEX_STKCVXLUSDFRAXBP = "0xF0A9b6F6593b4Bf96E1Ab13921A8a3FbFd9d4F16"; +exports.CONVEX_STKCVXMAIFRAXBP = "0xdE5684F85a78F6CcCFFB4b9301ad0944eb5CE3eE"; +exports.CONVEX_STKCVXMKUSDFRAXBP = "0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc"; +exports.CONVEX_STKCVXMSUSDFRAXBP = "0xfB2CCc82755A734C53C8B45f260fFc2df026fe87"; +exports.CONVEX_STKCVXOHMFRAXBP = "0xc96e1a26264D965078bd01eaceB129A65C09FFE7"; +exports.CONVEX_STKCVXPUSDFRAXBP = "0x40b42E4ab3c044e67CBFb0bD99C9E975dcB83668"; +exports.CONVEX_STKCVXRSRFRAXBP = "0xF22D3C85e41Ef4b5Ac8Cb8B89a14718e290a0561"; +exports.CONVEX_STKCVXSDTFRAXBP = "0x9C8d9667d5726aEcA4d24171958BeE9F46861bed"; +exports.CONVEX_STKCVXSTGFRAXBP = "0xd600A3E4F57E718A7ad6A0cbb10c2A92c57827e6"; +exports.CONVEX_STKCVXSUSDFRAXBP = "0x560c7668459221e33ED515D1D17c09ECda1996f5"; +exports.CONVEX_STKCVXSWETHFRXETH = "0x7b8848f10A016341c9B2427e8541C19F31C2D243"; +exports.CONVEX_STKCVXTRICRYPTOFRAX = "0x5C0238c4C8f13370001632806C87066B90F1E383"; +exports.CONVEX_STKCVXTRISDT = "0x50Cde910D1f8b6C787b7903d23082542593E0710"; +exports.CONVEX_STKCVXTUSDFRAXBP = "0xb324b2BD8a3Dc55b04111E84d5cce0c3771F8889"; +exports.CONVEX_STKCVXUSDDFRAXBP = "0xF7242A1cE383174802818febB36B6eebb56d5BFb"; +exports.CONVEX_STKCVXUZDFRAXBP = "0xb8ebc210BCF78be8Ef3F09Dd0d8e85Fa5e252e86"; +exports.CONVEX_STKCVXUZDFRAXBP_DEPRECATED = "0x7838d18AD75372061a1e71e1499b7E90832c1508"; +exports.CONVEX_STKCVXUZDFRAXBP_DEPRECATED_OLD = "0x7677D1AADcd42dC40E758115FfDE5e1E10B7f30b"; +exports.CONVEX_STKCVXXAIFRAXBP = "0x4edF7C64dAD8c256f6843AcFe56876024b54A1b6"; +exports.CONVEX_STKCVXZUSDFRAXBP = "0x107a33019910E57533Ad4F75762d6A958630cA3d"; +exports.CURVE_FRAX3CRV_F_2 = "0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC"; +exports.DFORCE_FRAX_LENDING_ETHEREUM = "0x71173e3c6999c2C72ccf363f4Ae7b67BCc7E8F63"; +exports.FLUX_FINANCE_FFRAX = "0x1C9A2d6b33B4826757273D47ebEe0e2DddcD978B"; +exports.FRAXLEND_V1_FRAX_FXS = "0x73e1e624C6d3E027b8674e6C72F104F1429FC17E"; +exports.FRAXSWAP_V1_FRAX_IQ = "0x5e15E40A3AA06bECA711EdE9F3F76E1d80C34490"; +exports.FRAXSWAP_V1_FRAX_IQ_V2 = "0xBF33B67F243a4DAbED494Ff5840f113B2E202a0d"; +exports.FRAXSWAP_V1_FRAX_IQ_V3 = "0x35678017e1D252dA1CdD6745b147E3e75d1f9C27"; +exports.FRAXSWAP_V1_FRAX_PITCHFXS = "0x9E66E7811fEacf5402B65021475d1A293f7ea797"; +exports.FRAXSWAP_V1_FRAX_PITCHFXS_V2 = "0x899Aa575E0e46344D18471f69337663C48b76e35"; +exports.FRAXSWAP_V1_FRAX_PITCHFXS_V3 = "0x24C66Ba25ca2A53bB97B452B9F45DD075b07Cf55"; +exports.FRAXSWAP_V1_FRAX_SYN = "0xE8453a2e8E97cba69365A1d727Fde3768b18d814"; +exports.FRAXSWAP_V2_FRAX_FPIS = "0x9d46C0584C5C89e14fb1143e2414712feF36f00F"; +exports.FRAXSWAP_V2_FRAX_FXS = "0x3F2E53B1A3036Fd33F3c2f3cC49daB26A88DF2e0"; +exports.FRAXSWAP_V2_FRAX_IQ = "0x7af00CF8D3a8A75210a5Ed74f2254E2EC43B5B5b"; +exports.FRAXSWAP_V2_FRAX_OHM = "0xf562B2f33b3c90d5D273f88Cdf0CeD866E17092e"; +exports.FRAXSWAP_V2_FRAX_PITCHFXS = "0xa632Fab76Fe013199c8271Ac22b466b9D11BFe88"; +exports.FRAXSWAP_V2_FRAX_SDL = "0x8875A328EaDb1e142f4021Fc2098096796a30cf8"; +exports.FRAXSWAP_V2_FRAX_SYN = "0x788E44b6424A0e4160Ae4766E86640EC5a6baD5b"; +exports.FRAXSWAP_V2_FRAX_ZZ = "0x38950D42CD549842B3Fc862a45F00eB24331F462"; +exports.GEARBOX_DFRAX = "0x8A1112AFef7F4FC7c066a77AABBc01b3Fff31D47"; +exports.GELATO_UNISWAP_FRAX_DAI = "0xcdfc491804A420b677f8e788B5157856910E2F6f"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC = "0x21AF9DBa45989512468B08d13978e9040cc0cEF6"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC_DEPRECATED = "0x90d52cdc60B7FF7994095Aa184694225035E8A60"; +exports.KYBERSWAP_ELASTIC_FRXETH_ETH = "0x6b96465F5e51C01134e0e64bff19f922fA7337C7"; +exports.KYBERSWAP_ELASTIC_FRXETH_ETH_DEPRECATED = "0x0cF99bbc8794e09e713769c4352eB3318e25c975"; +exports.KYBERSWAP_ELASTIC_FRXETH_FRAX = "0xaDf48a504b7E7262FE9BFC62Ab11894187590BB7"; +exports.MONOLITH_MO_SAMM_FRAX_USDT = "0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264"; +exports.MONOLITH_MO_SAMM_FRXETH_WETH = "0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96"; +exports.MONOLITH_MO_VAMM_FXS_FRXETH = "0x520b8e754768EEed9a37d78de76Cd5d75456b92F"; +exports.PICKLE_FINANCE_CURVE_CVXFXS_FXS = "0x6667c53D631410649B1826D21cFdf41E7a7aE6b1"; +exports.PICKLE_FINANCE_PVEFXS_BRINERY = "0x62826760CC53AE076a7523Fd9dCF4f8Dbb1dA140"; +exports.PICKLE_FINANCE_SADDLE_D4 = "0x08cb0A0ba8e4f143e4e6F7BED65E02b6dFb9A16C"; +exports.PICKLE_FINANCE_UNIV3_FRAX_DAI = "0xA50e005c3f2f3Cd1f56B09DF558816CfCe25E934"; +exports.PICKLE_FINANCE_UNIV3_FRAX_USDC = "0x6092cdE5762FA9F5c8D081fb0c5eD23601f0F400"; +exports.SADDLE_ALUSD_FEI_FRAX_LUSD = "0x0639076265e9f88542C91DCdEda65127974A5CA5"; +exports.SOLIDLY_SAMM_FRAX_USDC = "0x810E190Be9592615D75c514C0f9D8c9b79eB8056"; +exports.SOLIDLY_SAMM_FRAX_USDT = "0x9972F7c292Deae7759a3831b1aDFF54dD43Dc264"; +exports.SOLIDLY_SAMM_FRXETH_WETH = "0x4E30fc7ccD2dF3ddCA39a69d2085334Ee63b9c96"; +exports.SOLIDLY_VAMM_FRAX_FRXETH = "0xFae2B6Cac80635Cf768c9B68A4f453DB00BC79F0"; +exports.SOLIDLY_VAMM_FXS_FRXETH = "0x520b8e754768EEed9a37d78de76Cd5d75456b92F"; +exports.SOMMELIER_FRAXIMAL = "0x290a42E913083Edf5AEFb241f8A12B306C19f8f9"; +exports.STAKEDAO_CVXFXS_FXS = "0xAB1927160EC7414C6Fa71763E2a9f3D107c126dd"; +exports.STAKEDAO_FRAX3CRV = "0x72E158d38dbd50A483501c24f792bDAAA3e7D55C"; +exports.STAKEDAO_FRAX_USDC = "0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503"; +exports.STAKEDAO_FRXETHCRV = "0x2932a86df44Fe8D2A706d8e9c5d51c24883423F5"; +exports.STAKEDAO_SANFRAX = "0xb40432243E4F317cE287398e72Ab8f0312fc2FE8"; +exports.STAKEDAO_SDETH_FRAXPUT = "0x0A53544b2194Dd8Ebc62c779043fc0624705BB56"; +exports.STAKEDAO_SDFRAX3CRV_F = "0xEB81b86248d3C2b618CcB071ADB122109DA96Da2"; +exports.STAKEDAO_SDFXS = "0xF3C6e8fbB946260e8c2a55d48a5e01C82fD63106"; +exports.STAKEDAO_SDFXS_FXS = "0xa9A9BC60fc80478059A83f516D5215185eeC2fc0"; +exports.STAKEDAO_SFRXETH_STETH_RETH_BPT = "0x3F0FB52648Eb3981EA598716b7320081d1c8Ba1a"; +exports.STARGATE_BRIDGE_LIQUIDITY_FRAX_ETHEREUM = "0xB0D502E938ed5f4df2E681fE6E419ff29631d62b"; +exports.SUSHI_FRAX_SUSHI = "0xb4Ab0dE6581FBD3A02cF8f9f265138691c3A7d5D"; +exports.TEMPLE_FRAX_TEMPLE = "0x10460d02226d6ef7B2419aE150E6377BdbB7Ef16"; +exports.TOKEMAK_FRAX_STAKING = "0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2"; +exports.TOKEMAK_FXS_STAKING = "0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655"; +exports.UNISWAP_FEI_TRIBE = "0x9928e4046d7c6513326cCeA028cD3e7a91c7590A"; +exports.UNISWAP_FRAX_FXS = "0xda2c338350a0E59Ce71CDCED9679A3A590Dd9BEC"; +exports.UNISWAP_FRAX_IQ = "0xF37057823910653a554d996B49E3399DC87fAE1b"; +exports.UNISWAP_FRAX_OHM = "0xfC77A420f56Dec53e3b91D7FC936902e132335FF"; +exports.UNISWAP_FRAX_USDC = "0xa29367a3f057F3191b62bd4055845a33411892b6"; +exports.UNISWAP_FRAX_WETH = "0xD875628B942f8970De3CcEaf6417005F68540d4f"; +exports.UNISWAP_FXS_WETH = "0xDc65f3514725206Dd83A8843AAE2aC3D99771C88"; +exports.UNISWAP_V3_FRAX_AGEUR = "0xf8caEd1943B15B877D7105B9906a618c154f69E8"; +exports.UNISWAP_V3_FRAX_DAI = "0xF22471AC2156B489CC4a59092c56713F813ff53e"; +exports.UNISWAP_V3_FRAX_USDC = "0x3EF26504dbc8Dd7B7aa3E97Bc9f3813a9FC0B4B0"; +exports.VEFPIS_FPIS_STAKING = "0x574C154C83432B0A45BA3ad2429C3fA242eD7359"; +exports.VEFXS_FXS_STAKING = "0xc8418aF6358FFddA74e09Ca9CC3Fe03Ca6aDC5b0"; +exports.VESPER_ORBIT_FRAX = "0x698137C473bc1F0Ea9b85adE45Caf64ef2DF48d6"; +exports.YEARN_CRVFRAX_VAULT_V3 = "0x1A5ebfF0E881Aec34837845e4D0EB430a1B4b737"; +// FraxBonds +exports.SLIPPAGE_AUCTION_FACTORY = "0xc9268c7F59850B26567b0f5d3Dcc317cEDC43490"; +exports.FXB_FACTORY = "0xa8478781D9605E17c3b4c9C79e7127c4597116E4"; +exports.FXB_AMO = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; +exports.FXB_AMO_TIMELOCK = "0x831822660572bd54ebaa065C2acef662a6277D40"; +exports.FXB_20240630 = "0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e"; +exports.AUCTION_20240630 = "0xC92067D8DDb1970ecB93202DA31a3C45cC2c1F44"; +exports.ORACLE_20240630 = "0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97"; +exports.CURVE_20240630_MAINNET_POOL = "0x4ef4c7519023F30A78647EEab321d6cFabC2513c"; +exports.FXB_20241231 = "0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09"; +exports.AUCTION_20241231 = "0xc9aa98788a675FF0846E8856cb83F19452f3b0c8"; +exports.FXB_20241231_ORACLE = "0x08a0748cF885F46e20fA30A50a035808eab293D3"; +exports.CURVE_20241231_MAINNET_POOL = "0x6307E6688819951Cf8D6B6066018243D2496952F"; +exports.CURVE_20241231_ARBITRUM_POOL = "0xE920eEdAff6c3BEd1Ef61010B64d46986634E908"; +exports.CURVE_20241231_ARBITRUM_GAUGE = "0x05824D6D4DE8A0ede4e12b98387A4f035a67ee68"; +exports.FXB_20261231 = "0x76237BCfDbe8e06FB774663add96216961df4ff3"; +exports.AUCTION_20261231 = "0x63981f5E690eaF7E8795c42832664e8848F532fB"; +exports.FXB_20261231_ORACLE = "0x2ec5D1C13fEF1C7029eE329a1D31B2180c9b3707"; +exports.CURVE_20261231_MAINNET_POOL = "0xe035e27A8eD6842b478933820f90093D205F7098"; +exports.CURVE_20261231_ARBITRUM_POOL = "0x946adc524BD312D036776798c46ceDD948DD0A0f"; +exports.CURVE_20261231_ARBITRUM_GAUGE = "0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9"; +// FraxFerry +exports.FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = "0x85c5f05Ae4CB68190C695a22b292C3bA90696128"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = "0x4b8792aF00eaE944484bF572bc33029B2184a50C"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = "0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = "0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = "0x505603e2440b44C1602b44D0Eb8385399b3F7bab"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = "0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6"; +exports.FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = "0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d"; +exports.FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = "0x6ac96F65156281a9383455D704b58A74ea9C9eC4"; +exports.FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = "0xA381d58e96eC3818c825E1fb264099448945CF8b"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = "0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = "0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = "0x18A5ca670dC42D0551f00E11A730074f6787f17F"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = "0x94ddd112C9ea0fb534e376BE09A50d310F0612b4"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = "0xF380200B115Caa22D49e6C115b758d6130377620"; +exports.FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = "0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9"; +exports.FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE = "0x3eF1d856EA62A2292B8690855042095a7aC48B4b"; +exports.FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE = "0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE = "0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE = "0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE = "0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE = "0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = "0x621D0e62f26314387f338A2509aFA3Ae3414661A"; +exports.FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE = "0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9"; +exports.FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE = "0x2d2261f970F605C813f160E8BAEd455E9004A842"; +exports.FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = "0xfB788F9E20ef426a32A67986654750172A6c1788"; +exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE = "0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622"; +exports.FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = "0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE"; +exports.FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = "0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = "0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = "0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = "0x9A576A3d39c589A861B46864C253288bcA428a6c"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = "0x958815f476cD07354c0BC034EE5077B20fD93003"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = "0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3"; +exports.FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = "0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47"; +exports.FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = "0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242"; +exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = "0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A"; +exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = "0x228567c10b7533C88057c10dDeA6349360F122c5"; +exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = "0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187"; +exports.FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = "0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0"; +exports.FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = "0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE"; +exports.FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = "0x06Fa869caa1160754C6a0B744Da6454c5EA325d4"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = "0x6650D5183C4Cd294a81B1F724c365b0c42f8270a"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = "0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = "0x8Bf7Af56bB721BC3d015111508593Fcb301546F0"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = "0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = "0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = "0x9694dcF5b6CCF6216B05FE64945f62603e2d2367"; +exports.FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = "0x43959A388603DCb6B02Ca084A55d4c7f3b442c57"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = "0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = "0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = "0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = "0x86E71075e55F0aaD27D700017E0783458310c98a"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = "0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = "0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = "0xF887C4cFAAfB43d1AA7De204344895591016772c"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = "0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = "0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = "0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E"; +exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = "0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4"; +exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE = "0x27E97F35D80514D5DD1Caa730e22a292E912a214"; +exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE = "0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5"; +exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = "0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482"; +exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = "0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9"; +exports.FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = "0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37"; +exports.FRAXFERRY_CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FRAXFERRY_FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FRAXFERRY_CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxMinterPools +exports.FRAX_POOL_USDC = "0x3C2982CA260e870eee70c423818010DfeF212659"; +exports.FRAX_POOL_USDC_V2 = "0x1864Ca3d47AaB98Ee78D11fc9DCC5E7bADdA1c0d"; +exports.FRAX_POOL_USDT = "0x7d3FCd3825AE54E8E8FFD3d0ce95882330d54968"; +exports.FRAX_POOL_V3 = "0x2fE065e6FFEf9ac95ab39E5042744d695F560729"; +// FraxlendAndOracles +exports.AAVE_ERC20 = "0x7Fc66500c84A76Ad7e9c93437bFc5Ac33E2DDaE9"; +exports.AAVE_TOKEN_DUAL_ORACLE_ADDRESS = "0x3284E1BCEaf70767A7575d0e1e10fAFbC4618B52"; +exports.AAVE_USD_CHAINLINK_ORACLE = "0x547a514d5e3769680Ce22B2361c10Ea13619e8a9"; +exports.APECOIN_DUAL_ORACLE_ADDRESS = "0x2CDF5812F4ebcF3BD533E8918D47Bd3e65514520"; +exports.APE_ERC20 = "0x4d224452801ACEd8B2F0aebE155379bb5D594381"; +exports.APE_USD_CHAINLINK_ORACLE = "0xD10aBbC76679a20055E167BB80A24ac851b37056"; +exports.BTC_USD_CHAINLINK_ORACLE = "0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c"; +exports.CHAIN_LINK_TOKEN_DUAL_ORACLE = "0x7F09c398740518F8e34556D8C1A1FBE1cb1F6Db0"; +exports.CIRCUIT_BREAKER_ADDRESS = "0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c"; +exports.COMBO_ORACLE = "0x878f2059435a19C79c20318ee57657bF4543B6d4"; +exports.COMBO_ORACLE_KYBERSWAP_ELASTIC = "0x734fd1fD1f3720379f52cB9d8168d76Cd1ca4A73"; +exports.COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = "0xc3a483Bb5F96bC4E6104325aa1A229A8E29166B3"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0x1cBE07F3b3bf3BDe44d363cecAecfe9a98EC2dff"; +exports.FRAXLEND_COMPTROLLER_ADDRESS = "0x168200cF227D4543302686124ac28aE0eaf2cA0B"; +exports.CONVEX_WRAPPER_FRAX_USDC_CURVE_POOL_LP = "0x8A2112B42AF1F997002FBAfF77dd09F42A281e8d"; +exports.CONVEX_WRAPPER_FRXETH_ETH_CURVE_POOL_LP = "0x45127c7fA0c3Ce6A18fEc9604D96eDfBBc8A9700"; +exports.CONVEX_WRAPPER_FRAX_USDC_FRAXLEND_LP_OLD = "0x54a3A6aFd87F10Eea4Acc2A067A2C0b612B6D315"; +exports.CONVEX_WRAPPER_FRXETH_ETH_FRAXLEND_LP_OLD = "0xd1b222AAEdf2877CeEB3c66BDaA6858200eb48fC"; +exports.CPI_TRACKER_ORACLE = "0x7086F2aCB5558043fF9cE3df346D8E3FB4F4f452"; +exports.CPI_TRACKER_ORACLE_V2 = "0x66B7DFF2Ac66dc4d6FBB3Db1CB627BBb01fF3146"; +exports.CRV_ERC20 = "0xD533a949740bb3306d119CC777fa900bA034cd52"; +exports.CRV_USD_CHAINLINK_ORACLE = "0xCd627aA160A6fA45Eb793D19Ef54f5062F20f33f"; +exports.CVX_ERC20 = "0x4e3FBD56CD56c3e72c1403e103b45Db9da5B9D2B"; +exports.CVX_USD_CHAINLINK_ORACLE = "0xd962fC30A72A84cE50161031391756Bf2876Af5D"; +exports.ETH_USD_CHAINLINK_ORACLE = "0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419"; +exports.EZETHETH_DUAL_ORACLE = "0x8216AE38454cCe2d52dEcf0442042250Ea6A2510"; +exports.EZETH_DUAL_ORACLE = "0xB020ab0E609d907578f6899a9469E3CbD79e4e70"; +exports.EZETH_ERC20 = "0xbf5495Efe5DB9ce00f80364C8B423567e58d2110"; +exports.FIL_ERC20 = "0xB8B01cec5CEd05C457654Fc0fda0948f859883CA"; +exports.FIL_ETH_CHAINLINK_ORACLE = "0x0606Be69451B1C9861Ac6b3626b99093b713E801"; +exports.FIL_USD_CHAINLINK_ORACLE = "0x1A31D42149e82Eb99777f903C08A2E41A00085d3"; +exports.FPIS_ERC20 = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FPI_CONTROLLER_POOL_ADDRESS = "0x2397321b301B80A1C0911d6f9ED4b6033d43cF51"; +exports.FPI_ERC20 = "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E"; +exports.FPI_ORACLE = "0xd2516e709a2e9D64F66B4c4009efE4F74F5FA40D"; +exports.FPI_ORACLE_V2 = "0x2469757756ebA7Bea6B7F054896e3Db74103A962"; +exports.FRAXBP_CURVE_LP_DUAL_ORACLE = "0x251d4fE77eD73126583Ee347041258ABeEcB7C66"; +exports.FRAXLEND_DEPLOYER_ADDRESS_V0 = "0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044"; +exports.FRAXLEND_PAIRDEPLOYER = "0x5d6e79Bcf90140585CE88c7119b7E43CAaA67044"; +exports.FRAXLEND_PAIRHELPER = "0x26fa88b783cE712a2Fa10E91296Caf3daAE0AB37"; +exports.FRAXLEND_PAIR_DEPLOYER_ADDRESS = "0x38488dE975B77dc1b0D4B8569f596f6FD6ca0B92"; +exports.FRAXLEND_PAIR_DEPLOYER_CONVEX_ADDRESS = "0xC4e34AD5908c4D2508a26C20c8687Ff64CB9e05b"; +exports.FRAXLEND_PAIR_DEPLOYER_V3_ADDRESS = "0xaa913C26dD7723Fcae9dBD2036d28171a56C6251"; +exports.FRAXLEND_PAIR_DEPLOYER_V41_ADDRESS = "0xEb8816BAEB70690660ce6C0eDA2b07A21493e664"; +exports.FRAXLEND_PAIR_DEPLOYER_V4_ADDRESS = "0x7AB788d0483551428f2291232477F1818952998C"; +exports.FRAXLEND_PAIR_HELPER = "0x1b0bCeD6dd26a7c234506E261BC68C9A3A4031b7"; +exports.FRAXLEND_PAIR_REGISTRY_ADDRESS = "0xD6E9D27C75Afd88ad24Cd5EdccdC76fd2fc3A751"; +exports.FRAXLEND_WHITELIST_ADDRESS = "0x118C1462AA28bF2ea304f78f49C3388cfd93234e"; +exports.FRAXSWAP_ROUTER_ADDRESS = "0xC14d550632db8592D1243Edc8B95b0Ad06703867"; +exports.FRAX_HOT_WALLET = "0xdB3388e770F49A604E11f1a2084B39279492a61f"; +exports.FRAX_USDC_CURVE_LP_DUAL_ORACLE_ADDRESS = "0x2Ad35cce2a690E0bF1e6dCAC2F9175389F31D7F4"; +exports.FRAX_USDC_CURVE_POOL_LP_ERC20 = "0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC"; +exports.FRAX_USDC_CURVE_POOL_NOT_LP = "0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2"; +exports.FRAX_USDC_PLAIN_POOL = "0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2"; +exports.FRAX_USD_CHAINLINK_ORACLE = "0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD"; +exports.FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS = "0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB"; +exports.FRXETH_ETH_CURVE_POOL_LP_ERC20 = "0xf43211935C781D5ca1a41d2041F397B8A7366C7A"; +exports.FRXETH_ETH_CURVE_POOL_NOT_LP = "0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577"; +exports.FRXETH_ETH_DUAL_ORACLE_ADDRESS = "0xb12c19C838499E3447AFd9e59274B1BE56b1546A"; +exports.FRXETH_FRAX_ORACLE_ADDRESS = "0xC58F3385FBc1C8AD2c0C9a061D7c13b141D7A5Df"; +exports.FXB_20240630_ERC20 = "0x0dE54CFdfeD8005176f8b7A9D5438B45c4F1df1e"; +exports.FXB_20240630_ORACLE = "0x27F4f8ca2f906B73c5eD8d794d1eA016f2cA0A97"; +exports.FXB_20241231_ERC20 = "0xF8FDe8A259A3698902C88bdB1E13Ff28Cd7f6F09"; +exports.FXB_20241231_ORACLE_ADAPTER = "0x34b7525FB0735342Ef3E73d0ED2a912aaAC6c617"; +exports.FXB_20261231_ERC20 = "0x76237BCfDbe8e06FB774663add96216961df4ff3"; +exports.FXB_20261231_ORACLE_ADAPTER = "0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3"; +exports.FXB_VARIABLE_RATE_2 = "0x01480a0C134CeCC309015a564C7e292ba6E0F358"; +exports.FXS_USD_CHAINLINK_ORACLE = "0x6Ebc52C8C1089be9eB3945C4350B68B8E4C2233f"; +exports.GOHM_ERC20 = "0x0ab87046fBb341D058F17CBC4c1133F25a20a52f"; +exports.GOHM_ORACLE = "0xe893297a9d4310976424fD0B25f53aC2B6464fe3"; +exports.LDO_DUAL_ORACLE = "0x883Aa2E1E46b53648520E0F6857e2ee1798F3e5d"; +exports.LDO_ERC20 = "0x5A98FcBEA516Cf06857215779Fd812CA3beF1B32"; +exports.LDO_ETH_CHAINLINK_ORACLE = "0x4e844125952D32AcdF339BE976c98E22F6F318dB"; +exports.LDO_ETH_CURVE_V2_POOL = "0x9409280DC1e6D33AB7A8C6EC03e5763FB61772B5"; +exports.LINEAR_INTEREST_RATE = "0x2f3511C5E960040369F68508ebb366DF58DF1BF2"; +exports.LINEAR_RATE_ADDRESS = "0x2f3511C5E960040369F68508ebb366DF58DF1BF2"; +exports.LINK_ERC20 = "0x514910771AF9Ca656af840dff83E8264EcF986CA"; +exports.LINK_USD_CHAINLINK_ORACLE = "0x2c1d072e956AFFC0D435Cb7AC38EF18d24d9127c"; +exports.MAKER_DUAL_ORACLE_ADDRESS = "0x4c7b43EcE8958D7f6b184B3833DD1D383db1f83b"; +exports.MKR_ERC20 = "0x9f8F72aA9304c8B593d555F12eF6589cC3A579A2"; +exports.MKR_ETH_CHAINLINK_ORACLE = "0x24551a8Fb2A7211A25a17B1481f043A8a8adC7f2"; +exports.MKR_USD_CHAINLINK_ORACLE = "0xec1D1B3b0443256cc3860e24a46F108e699484Aa"; +exports.OHMV2_ETH_CHAINLINK_ORACLE = "0x9a72298ae3886221820B1c878d12D872087D3a23"; +exports.RETH_DUAL_ORACLE = "0x8161EDD2208247066FA213EDA909B0D351543b3d"; +exports.RETH_ERC20 = "0xae78736Cd615f374D3085123A210448E74Fc6393"; +exports.RSETHETH_DUAL_ORACLE = "0x16BAb4C46b36587609093633550816fc828817Ba"; +exports.RSETH_ERC20 = "0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7"; +exports.SFRAX_ERC20 = "0xA663B02CF0a4b149d2aD41910CB81e23e1c41c32"; +exports.SFRXETH_DUAL_ORACLE_ADDRESS = "0xd2F0fa7f2E6a60EEcf4b78c5b6D81002b9789F2c"; +exports.SFRXETH_ETH_DUAL_ORACLE_ADDRESS = "0x1473F3e4d236CBBe3412b9f65B4c210756BE2C0E"; +exports.SFRXETH_FRAX_ORACLE_ADDRESS = "0xB9af7723CfBd4469A7E8aa60B93428D648Bda99d"; +exports.SFRXETH_ORACLE = "0x27942aFe4EcB7F9945168094e0749CAC749aC97B"; +exports.SFRXETH_ORACLE_V2 = "0x807502C8EAdAc82C3227249f8aCf54d9d98F76d1"; +exports.SFRXETH_SFRAX_INVERSE_ORACLE_ADAPTER = "0xAfBcCB0a8d301AA8c18eBb4Ac94aB32d394fDCeC"; +exports.SFRXETH_USDC_ORACLE_V2_ADAPTER = "0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f"; +exports.SFRXETH_USD_ORACLE_V2 = "0x3d3D868522b5a4035ADcb67BF0846D61597A6a6F"; +exports.SUSDE_ERC20 = "0x9D39A5DE30e57443BfF2A8307A4256c8797A3497"; +exports.SUSDE_ORACLE = "0x8Eb7a4Fa315620CC342073326acC206961F4BB62"; +exports.UNISWAP_DUAL_ORACLE_ADDRESS = "0x33A9D662d9F7cb2153e3a5102615B08865BeAbdB"; +exports.UNIV2_ROUTER = "0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D"; +exports.UNI_ERC20 = "0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984"; +exports.UNI_USD_CHAINLINK_ORACLE = "0x553303d460EE0afB37EdFf9bE42922D8FF63220e"; +exports.USDC_ERC20 = "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"; +exports.USDC_USD_CHAINLINK_ORACLE = "0x8fFfFfd4AfB6115b954Bd326cbe7B4BA576818f6"; +exports.USDE_CURVE_PAIR = "0x5dc1BF6f1e983C0b21EfB003c105133736fA0743"; +exports.USDE_ERC20 = "0x4c9EDD5852cd905f086C759E8383e09bff1E68B3"; +exports.USDE_ORACLE = "0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838"; +exports.VARIABLE_RATE_2_ADDRESS = "0x18500cB1f2fE7a40eBdA393383A0B8548a31F261"; +exports.VARIABLE_RATE_2_ADDRESS_50 = "0x576E23b6E2665A91DdF301DcfF53d1fFA2972bB5"; +exports.VARIABLE_RATE_50BP_ADDRESS = "0xFf7846bAcB63FE97406a1E1e48CAf1595f66A98c"; +exports.VARIABLE_RATE_ADDRESS = "0x9327058a739089869B7DC3436E074C6d56051C7A"; +exports.VARIABLE_RATE_ADDRESS_OLD = "0x3da1bf0Be175B7cAa38d67A6E78371947d2F51f7"; +exports.VARIABLE_RATE_STABLE_ADDRESS = "0x9599033315C29Be9690b716bFE409381426dAD41"; +exports.WBTC_ERC20 = "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599"; +exports.WBTC_SFRAX_INVERSE_DUAL_ORACLE = "0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC"; +exports.WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = "0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b"; +exports.WETH_ERC20 = "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"; +exports.WETH_FRAX_V3_POOL = "0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A"; +exports.WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK = "0x1cA1350F67575B0beE44EC9DC6725A4032431F33"; +exports.WETH_USDC_V3_POOL = "0xE0554a476A092703abdB3Ef35c80e0D76d32939F"; +exports.WSTETH_ERC20 = "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0"; +exports.WSTETH_USD_DUAL_ORACLE_ADDRESS = "0xe73375f36A1b17A21d7Aa0fDa092195431e7017a"; +exports.FRAXLEND_PAIR_WETH_FRAX = "0x794F6B13FBd7EB7ef10d1ED205c9a416910207Ff"; +exports.FRAXLEND_PAIR_WBTC_FRAX = "0x32467a5fc2d72D21E8DCe990906547A2b012f382"; +exports.FRAXLEND_PAIR_SFRXETH_FRAX = "0x78bB3aEC3d855431bd9289fD98dA13F9ebB7ef15"; +exports.FRAXLEND_PAIR_CRVETHFRXETH_FRAX = "0x281E6CB341a552E4faCCc6b4eEF1A6fCC523682d"; +exports.FRAXLEND_PAIR_FXS_FRAX = "0xDbe88DBAc39263c47629ebbA02b3eF4cf0752A72"; +exports.FRAXLEND_PAIR_FPI_FRAX = "0x74F82Bd9D0390A4180DaaEc92D64cf0708751759"; +exports.FRAXLEND_PAIR_APE_FRAX = "0x3a25B9aB8c07FfEFEe614531C75905E810d8A239"; +exports.FRAXLEND_PAIR_CVX_FRAX = "0xa1D100a5bf6BFd2736837c97248853D989a9ED84"; +exports.FRAXLEND_PAIR_CRV_FRAX = "0x3835a58CA93Cdb5f912519ad366826aC9a752510"; +exports.FRAXLEND_PAIR_GOHM_FRAX = "0x66bf36dBa79d4606039f04b32946A260BCd3FF52"; +exports.FRAXLEND_PAIR_MKR_FRAX = "0x82Ec28636B77661a95f021090F6bE0C8d379DD5D"; +exports.FRAXLEND_PAIR_UNI_FRAX = "0xc6CadA314389430d396C7b0C70c6281e99ca7fe8"; +exports.FRAXLEND_PAIR_AAVE_FRAX = "0xc779fEE076EB04b9F8EA424ec19DE27Efd17A68d"; +exports.FRAXLEND_PAIR_FXB_20240630_FRAX = "0x35E08B28d5b01D058cbB1c39dA9188CC521a79aF"; +exports.FRAXLEND_PAIR_FXB_20241231_FRAX = "0xd1887398f3bbdC9d10D0d5616AD83506DdF5057a"; +exports.FRAXLEND_PAIR_FXB_20261231_FRAX = "0x1c0C222989a37247D974937782cebc8bF4f25733"; +exports.FRAXLEND_PAIR_SFRXETH_USDC = "0xeE847a804b67f4887c9E8fe559A2dA4278deFB52"; +exports.FRAXLEND_PAIR_LINK_FRAX = "0x7093F6141293F7C4F67E5efD922aC934402E452d"; +exports.FRAXLEND_PAIR_WSTETH_FRAX = "0xb5a46f712F03808aE5c4B885C6F598fA06442684"; +exports.FRAXLEND_PAIR_LDO_FRAX = "0x0601B72bEF2b3F09E9f48B7d60a8d7D2D3800C6e"; +exports.FRAXLEND_PAIR_RETH_FRAX = "0xa4Ddd4770588EF97A3a03E4B7E3885d824159bAA"; +exports.FRAXLEND_PAIR_SUSDE_FRAX = "0xb5Ae5b75C0DF5632c572A657109375646Ce66f90"; +exports.FRAXLEND_PAIR_SFRAX_WBTC = "0xb67Bd04f74BD79a505c5167675E8812355270eD5"; +exports.FRAXLEND_PAIR_SFRAX_SFRXETH = "0x501256B1DC7bb99CdE57AF188a69307BCC7E00E8"; +exports.FRAXLEND_PAIR_EZETH_FRXETH = "0x1eE17BE9B788bcf3EB86C08D0E2b049e036F6eb1"; +exports.FRAXLEND_PAIR_RSETH_FRXETH = "0xCfE3550206ea801c3F7Dc7997376F09E0b7e4B81"; +exports.FRAXLEND_WRAPPER_FACTORY = "0xe5Ca8CB440A6f9F6fA1D535D94A839CED59D9942"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0xB076b06F669e682609fb4a8C6646D2619717Be4b"; +exports.FRAXSWAP_FACTORY_V2 = "0x43eC799eAdd63848443E2347C49f5f52e8Fe0F6f"; +exports.FRAXSWAP_ROUTER_V1 = "0x1C6cA5DEe97C8C368Ca559892CCce2454c8C35C7"; +exports.FRAXSWAP_ROUTER_V2 = "0xC14d550632db8592D1243Edc8B95b0Ad06703867"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x25e9acA5951262241290841b6f863d59D37DC4f0"; +exports.FRAXSWAP_PAIR_FRAX_FPI = "0x5A1eA0130Dc4DC38420AA77929f992f1FBd482Bb"; +exports.FRAXSWAP_PAIR_FS_V2_FRAX_FPI = "0xd79886841026a39cFF99321140B3c4D31314782B"; +exports.FRAXSWAP_PAIR_FRAX_FXS = "0x8206412c107eF1aDb70B9277974f5163760E128E"; +exports.FRAXSWAP_PAIR_FS_V2_FRAX_FXS = "0x03B59Bd1c8B9F6C265bA0c3421923B93f15036Fa"; +exports.FRAXSWAP_PAIR_FRAX_FPIS = "0x99887AC15eBCcbad52FA2c9ceDc9D91A91e36051"; +exports.FRAXSWAP_PAIR_FS_V2_FRAX_FPIS = "0x56695c26b3Cdb528815cd22fF7B47510ab821EFd"; +exports.FRAXSWAP_PAIR_FPI_FPIS = "0xD3542ec999ceA6C79f09483fF88833f154a5e92f"; +exports.FRAXSWAP_PAIR_FS_V2_FPI_FPIS = "0xF14766a7C44EFb7F71441B7114d5Dd295B637175"; +exports.FRAXSWAP_PAIR_FPI_FXS = "0x843B5Ae5861362F20A3aC185A2dD2393D7526C65"; +exports.FRAXSWAP_PAIR_FS_V2_FPI_FXS = "0x3ECfdA4EfF6184cD8563772D6d024cB0Fb9cBf80"; +exports.FRAXSWAP_PAIR_FXS_FPIS = "0x1306b420B4B5f99cBeE938E369f06863a0f419A5"; +exports.FRAXSWAP_PAIR_FS_V2_FXS_FPIS = "0x7a9Bd205B55cCB1Cc1c5B99FF5Db87a6e7B2C38b"; +exports.FRAXSWAP_PAIR_FS_V2_FXS_FRXETH = "0x49FD21C5C8813B1bAE4e5507C556391D6Dd9e9f1"; +exports.FRAXSWAP_PAIR_FRAX_WETH = "0x8300f0528e00Ad33b218bb05D396F61A9FDd68Cd"; +exports.FRAXSWAP_PAIR_FS_V2_FRAX_WETH = "0x31351Bf3fba544863FBff44DDC27bA880916A199"; +exports.FRAXSWAP_PAIR_FRAX_PITCHFXS = "0x0a92aC70B5A187fB509947916a8F63DD31600F80"; +exports.FRAXSWAP_PAIR_FRAX_PITCHFXS_V2 = "0x2bac101F9769AEfF63c63EFfB4189152e833649F"; +exports.FRAXSWAP_PAIR_FRAX_IQ = "0xcB0bC7C879bb3E9CFEB9d8EFef653F33B3d242e9"; +exports.FRAXSWAP_PAIR_FRAX_IQ_V2 = "0x07AF6BB51d6Ad0Cf126E3eD2DeE6EaC34BF094F8"; +exports.FRAXSWAP_PAIR_FRAX_OHM = "0x38633ed142BCc8128b45aB04A2e4A6e53774699F"; +exports.FRAXSWAP_PAIR_FRAX_OHM_V2 = "0x5769071665eb8Db80e7e9226F92336Bb2897DCFA"; +exports.FRAXSWAP_PAIR_FRAX_SDL_V2 = "0xCCB26b5CC4e1Ce29521DA281a0107A6672bfe099"; +exports.FRAXSWAP_PAIR_FRAX_SYN_V2 = "0x832c6f546Bf34A552DeB8773216a93bf6801028c"; +exports.FRAXSWAP_PAIR_FRAX_ZZ_V2 = "0x5E8c1aD4c3D04f059d5c1A2Ce4593e53be270bca"; +// FraxtalL1 +exports.ADDRESS_MANAGER = "0x8c5D64d10394cFa070066e70Ec19E67398b4dABE"; +exports.BASE_FEE_VAULT_RECIPIENT = "0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27"; +exports.BATCH_INBOX = "0xfF000000000000000000000000000000000420fC"; +exports.BATCH_SENDER = "0x6017f75108f251a488B045A7ce2a7C15b179d1f2"; +exports.DISPUTE_GAME_FACTORY_PROXY = "0x3AA7e876880CB34371c01f1510B1e0A932dCb8C1"; +exports.FINAL_SYSTEM_OWNER = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +exports.FRAXTAL_COMPTROLLER = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +exports.FRAXTAL_DEPLOYER = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +exports.L1_CROSS_DOMAIN_MESSENGER_IMPL_V2 = "0xC6e4ECE5576dC96846bb11eD8910f3dF3CE516b8"; +exports.L1_CROSS_DOMAIN_MESSENGER_PROXY = "0x126bcc31Bc076B3d515f60FBC81FddE0B0d542Ed"; +exports.L1_CROSS_DOMAIN_MESSENGER__IMPL_V1 = "0x31c25985E6b10CF335FC01cf9790aF4890d0505c"; +exports.L1_ERC721_BRIDGE_IMPL_V2 = "0x7eE1637C33Ed0DFEE6403f3301B6d404106018e4"; +exports.L1_ERC721_BRIDGE_PROXY = "0xa9B5Fb84B7aeAF0D51C95DB04a76B1D4738D0eC5"; +exports.L1_ERC721_BRIDGE__IMPL_V1 = "0x23A0478996241F9f966b7054c06FdeB96Ddf3475"; +exports.L1_STANDARD_BRIDGE_IMPL_V2_ADDR = "0x30Cd695249394eED44C576f2caEC5304be6455F9"; +exports.L1_STANDARD_BRIDGE_PROXY = "0x34C0bD5877A5Ee7099D0f5688D65F4bB9158BDE2"; +exports.L1_STANDARD_BRIDGE__IMPL_V1_ADDR = "0xCC26248B71284B812Ff7825e005560DB01a874C7"; +exports.L2_OUTPUT_ORACLE_CHALLENGER = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +exports.L2_OUTPUT_ORACLE_IMPL_V2 = "0x6f3CcC8C9DAf8B9b39aDe481213Ff7A626a42B65"; +exports.L2_OUTPUT_ORACLE_PROPOSER = "0xFb90465f3064fF63FC460F01A6307eC73d64bc50"; +exports.L2_OUTPUT_ORACLE_PROXY = "0x66CC916Ed5C6C2FA97014f7D1cD141528Ae171e4"; +exports.L2_OUTPUT_ORACLE__IMPL_V1 = "0xA30ADd78D5be6B2B55C934666bb4fF2C4429d800"; +exports.OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY = "0x11FE3be54aC01C13Dd985cE2BdD10eD77e1376cc"; +exports.OPTIMISM_PORTAL_IMPL_V2_ADDR = "0x47Ec03B67ba4f3C71a4320D2947f2173E0B45a23"; +exports.OPTIMISM_PORTAL_PROXY = "0x36cb65c1967A0Fb0EEE11569C51C2f2aA1Ca6f6D"; +exports.OPTIMISM_PORTAL__IMPL_V1_ADDR = "0x59B6903044Fa9439a5D621D3605789A6E654b1D6"; +exports.P2P_SEQUENCER_ADDRESS = "0xc88138f5c82DD1bD327708C7F1c15E44Ce7FdA0C"; +exports.PORTAL_GUARDIAN = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +exports.PROTOCOL_VERSIONS_IMPL_V2 = "0xeE1d28b0FB299BcE1E164aCc001c15e283082bA2"; +exports.PROTOCOL_VERSIONS_PROXY = "0x3c7EA1c10Eb783fE86e4eEd202324dCFEEca9043"; +exports.PROXY_ADMIN = "0x13Fe62cB24aEa5afd179F20D362c056c3881ABcA"; +exports.PROXY_ADMIN_OWNER = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +exports.STORAGE_SETTER = "0x7a6b7F35D032c9b122C69F01EA4523e028f6ef4A"; +exports.SUPERCHAIN_CONFIG_GUARDIAN = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +exports.SUPERCHAIN_CONFIG_IMPL_V2 = "0x0d9C39c64CF8eDA1EdFeBD78AFa895bAA797eFc4"; +exports.SUPERCHAIN_CONFIG_PROXY = "0x61ca43CB037aC9181d8Fa5CD0073dC314065Ccc4"; +exports.SYSTEM_CONFIG_IMPL_V2_ADDR = "0x4D7A1a16d0DA89B50FBd8b524508FC393A6Dc367"; +exports.SYSTEM_CONFIG_PROXY = "0x34a9f273cbD847d49c3De015FC26c3E66825f8b2"; +exports.SYSTEM_CONFIG__IMPL_V1_ADDR = "0x22052c592f763CA14a090D9974c5Bf9Fd3a44b8c"; +exports.SYSTEM_OWNER_SAFE = "0xe0d7755252873c4eF5788f7f45764E0e17610508"; +// MiddlemanGauges +exports.BALANCER_FRXETH_BB_A_WETH_GAUGE = "0xE3f4e2b79f1a8bf3b14d9100323Fca24D923f796"; +exports.CONVEX_FRAXBP_ARBITRUM = "0x636A9d7686bFA0a2ddd93b37A1E33bCdE6C31e8D"; +exports.CONVEX_FRAX_FXB_20241231_ARBITRUM = "0xba1ED260F9a81088Ecb7602F790a67C773817BDA"; +exports.CONVEX_FRAX_FXB_20261231_ARBITRUM = "0x2A8499c4a86F7c07e311c73E36575A0Dc2D362C3"; +exports.CONVEX_FRXETH_WETH_ARBITRUM = "0x5608051D98377419d7D861531728DFB869dDc054"; +exports.CONVEX_HFXB_FRAX_ARBITRUM = "0x53e78a6e12146565c7d7307d07A3C1ABacf3E20F"; +exports.CONVEX_SQUID_WFRXETH_FRAXTAL = "0xE096E62B4b23C46a748828083458e22b014640f3"; +exports.CONVEX_USD_FRAXBP = "0x840f20ffED887c61435E81fd1231CB923df39d3d"; +exports.CURVE_VSTFRAX_F = "0x127963A74c07f72D862F2Bdc225226c3251BD117"; +exports.FLE_FXS_WFRXETH_FRAXTAL = "0x6f82A6551cc351Bc295602C3ea99C78EdACF590C"; +exports.FLE_FRAX_FXS_FRAXTAL = "0x83Dc6775c1B0fc7AaA46680D78B04b4a3d4f5650"; +exports.FRAXSWAP_V2_FRAX_FPI_FRAXTAL = "0x3B78BdC7575896701C4e32f9D070AA387fcEB22b"; +exports.FRAXSWAP_V2_FRAX_FXS_FRAXTAL = "0x99FA1928A9Fea45b8d1395e870a92a0675A10E6E"; +exports.FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = "0x007c874a4240f8C31B4BfE6D91f47b903e2E3BE1"; +exports.FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = "0x8Fa7B006538F0710BD5fEfBd5737eBDD8B487166"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC_ARBITRUM = "0x0884c9Bb52348fa76d4e1c6Ea042A2EaF0b72c6C"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = "0x9c9e8E8ccD7dAF6AfAB436829992B3Cf408319B4"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = "0x11c9C6F9e983bf6E10296A9ce09D4572F664FF25"; +exports.MSTABLE_FRAX_MUSD = "0x3e14f6EEDCC5Bc1d0Fc7B20B45eAE7B1F74a6AeC"; +exports.SADDLE_L2D4_ARBITRUM = "0x9B8AEd182B8A9430C14e97Bf2C02F129f2b36854"; +exports.SENTIMENT_LFRAX = "0x86c0A521807f43A646978e9f302BAF693350eAa3"; +exports.SNOWBALL_S4D = "0x66fD216bCBeb566EF038A116B7270f241005e186"; +exports.SPIRITSWAP_FRAX_FXS = "0xebF993690F65B23862E10F489656529ac06A27B8"; +// Misc +exports.AAVE_AMO = "0x66635DC1EdEfF19e839f152a67278151Aa6e1B61"; +exports.AMO_MINTER = "0xcf37B62109b537fa0Cb9A90Af4CA72f6fb85E241"; // Old: 0xF9931973fCc0c37908687Eec2CCB28fC3B94B086 +exports.AMO_MINTER_OLD = "0x36a0B6a5F7b318A2B4Af75FFFb1b51a5C78dEB8C"; +exports.BALANCE_CHECKER = "0x0be27F994E24F8C3E5f6D0C28AbB5732256ee205"; +exports.BUNDLE_UTILS = "0xD1a7b80a954e56bfd7bd889aF6e2BE8674719F5d"; +exports.CONVEX_AMO = "0x49ee75278820f409ecd67063D8D717B38d66bd71"; // Impl: 0x49f77ddd4d57636ab4c98d8f18ca5f4b5210983d +exports.CONVEX_AMO_ADMIN = "0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A"; +exports.CRVFRAX_VAULT = "0xB4AdA607B9d6b2c9Ee07A275e9616B84AC560139"; +exports.CURVE_AMO = "0x72170Cdc48C33a6AE6B3E83CD387ca3Fb9105da2"; // Impl: 0xC3204838aF4CE0597476aDF367B4C9a3cf9a1B51 +exports.CURVE_AMO_IMPL_V1 = "0x5840Db064e17480f8e8E74fD6714C9c316f7DdFE"; // Old2: 0xbd061885260F176e05699fED9C5a4604fc7F2BDC, Old1: 0x77746DC37Deae008c7149EDc1b1A8D6d63e08Be5, Old2: 0x25e9702359bAf56E505F0BA981eeBFA23ceB030A, Old3: 0x19a47F38D39692617C9D9012eC0176C9ead00a5e +exports.CURVE_AMO_V1 = "0xbd061885260F176e05699fED9C5a4604fc7F2BDC"; +exports.CURVE_AMO_V2 = "0xD103FEf74D05FbC20B5184FE85c7187735355DB3"; // 0xeF8c0b4902b985bF64B8cfF6BbCD0AC1FDc8d5d3, // Proxy: 0x7e983e4f98b16cee76f8f9a6a1e87b5861de8769 +exports.CURVE_AMO_V5 = "0xf8a4ffe7C980fD50B160b7B86dCd5e9eb7E281a9"; +exports.CURVE_AMO_ADMIN = "0x900909C07c2761d84C5d863FF5905102916DF69C"; +exports.CURVE_METAPOOL_LOCKER = "0x70F55767B11c047C8397285E852919F5f6c8DC60"; +exports.CURVE_METAPOOL_LOCKER_2 = "0xE4BD0461AE7fdc76c61CE286a80c9B55d83B204a"; +exports.CURVE_VOTER_PROXY = "0x847FA1A5337C7f24D7066E467F2e2A0f969Ca79F"; +exports.CVX_LOCKER_AMO = "0x7038C406e7e2C9F81571557190d26704bB39B8f3"; +exports.CVX_LOCKER_AMO_V2 = "0x72a19342e8F1838460eBFCCEf09F6585e32db86E"; +exports.DEPOSIT_CONTRACT_ADDRESS = "0x00000000219ab540356cBB839Cbe05303d7705Fa"; +exports.ETH_ADDRESS = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"; +exports.FPI_CONTROLLER_AMO = "0x2397321b301B80A1C0911d6f9ED4b6033d43cF51"; // Old: 0x309AC8840f9b4C7eEB5bAb1e89669d8dbb86c060 +exports.FRAX3CRV_CURVE_FXS_DISTRIBUTOR = "0xBBbAf1adf4d39B2843928CCa1E65564e5ce99ccC"; // MAY NEED TO CALL APPROVE FIRST +exports.FRAX3CRV_CURVE_REWARDS_DISTRIBUTOR_EOA = "0x73f9F84B04584227b4f0bafFd8B37D6D0C11a23c"; +exports.FRAX_GAUGE_CONTROLLER = "0x44ade9AA409B0C29463fF7fcf07c9d3c939166ce"; +exports.FRAX_GAUGE_CONTROLLER_V2 = "0x3669C421b77340B2979d1A00a792CC2ee0FcE737"; +exports.FRAX_GAUGE_REWARDS_DISTRIBUTOR = "0x278dC748edA1d8eFEf1aDFB518542612b49Fcd34"; +exports.FRAX_GAUGE_NOOP_REWARDS_DISTRIBUTOR = "0x48D9A9e67e9deCfD493efE2B3D3B5291fc802e5F"; +exports.FRAX_GAUGE_V2 = "0x72E158d38dbd50A483501c24f792bDAAA3e7D55C"; +exports.FRAXLEND_AMO = "0x0Ed8fA7FC63A8eb5487E7F87CAF1aB3914eA4eCa"; +exports.FRAXLEND_AMO_V3 = "0xf6E697e95D4008f81044337A749ECF4d15C30Ea6"; +exports.FRXETH_MINTER = "0xbAFA44EFE7901E04E39Dad13167D089C559c1138"; +exports.FXS_1559_AMO = "0x9C6a04871D11b33645ab592f68C41bb2B41F51EE"; // Old1: 0xaf02be5968D8Fe9536e24E4c7e888C59A58Bc077 +exports.FXS_1559_AMO_V2 = "0xC80C48862E4254F37047235298eDb6AA35717C24"; // Proxy +exports.FXS_1559_AMO_V2_ADMIN = "0xCaa487D113ad1C34Ce128c4f3a2A437614C6a692"; // Proxy admin +exports.FXS_1559_AMO_V2_IMPL_V1 = "0xCDe9A4e885B87a893b8817D136FD2F404B54294f"; +exports.FXS_1559_AMO_V3 = "0xb524622901b3f7b5DeA6501E9830700C847C7DC5"; // Old: 0x7301BB959ee286D8ABC46f341144afE443CEdAe5 +exports.INVESTOR_AMO = "0xB8315Af919729c823B2d996B1A6DDE381E7444f1"; // Old proxy: 0x2B4d259a8f6E765AD881C4C1D04045D629dA01b4 +exports.INVESTOR_AMO_V1 = "0xEE5825d5185a1D512706f9068E69146A54B6e076"; +exports.INVESTOR_AMO_ADMIN = "0x069c24600c2A03147D4E1D9b04d193151676F577"; +exports.INVESTOR_AMO_IMPL_V1 = "0xdE3C8aA7f53a69c595b7720045000A68Cb9CB341"; // Old V3: 0xEccA5a27B4f8f92a2bFFd006F20168A7188C0A0C, Old V2: 0xEE5825d5185a1D512706f9068E69146A54B6e076, // Old: 0xe09394AE14d7c3b1798e4dbEa4c280973B2689A4 +exports.LENDING_AMO = "0x9507189f5B6D820cd93d970d67893006968825ef"; // Old: 0xDA9d06166c2085988920Fb35EB2d322B4aaDF1EE +exports.MANUAL_TOKEN_TRACKER_AMO = "0xEc8672dd770D59FaD9a811591a5Edd40e8F6A413"; +exports.MIGRATION_BUNDLE_UTILS = "0x239c957d42343B3d91FABc7c16E7F1e30Bc32E5B"; // same bytecode: 0x2fFFFbA4F562569bec2D4FC1c36F7797ffb173Cd +exports.MIGRATION_HELPER = "0xe16723A08Ae054a8F20BDc0395389569011e78D6"; +exports.MIM_CONVEX_AMO = "0x31183a2CCe8d1BFBBFE140Ea1A1264A454Fc821E"; +exports.MINT_UTILITIES = "0xE054C1ab5D548E0144ab3F89a8f5809137819906"; +exports.MSIG_HELPER = "0x977eaDb6fa9b8E1a2A950CcDE1A75a7b527a8cBB"; +exports.MULTICALL_OZ_DELEGATECALL = "0x1EA632b997B7c7068ac48aDe8040652a8AF9FbbB"; +exports.MULTISIG = "0xFa27873EA2F0eA9DcD2052848C4A7F8ADE8a3936"; +exports.OHM_AMO = "0x5699d20732a2EFa9A895EF04bb210aa751C4dB96"; // Impl:0x89a5CeC88598c0CE4d4E331D0b027499edd3dfFa +exports.OHM_AMO_ADMIN = "0xE53d45ABe10Ce20427D20c5a1b6360Fa5BA0cE0A"; +exports.RARI_AMO = "0x96665d63c1B53f8335e3c9287Ee255f306C93c45"; +exports.RAGEQUITTER_TEMPLE = "0xB12C76b92936d136Fd8264F6EFcBb06458338D97"; +exports.STAKEDAO_AMO = "0x375278D3C65f29C1A90E8550888f1439cFeFe465"; // Impl:0xcf1e6926b2167f83ec3300bed04a672abd93e646 +exports.STAKING_UTILITIES = "0xE4de6E1DF1FE135D6462554d0Fd36A14d787f689"; +exports.TIMELOCK = "0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA"; +exports.TOKEMAK_AMO = "0x4e710B33c87CEDF832Cd82E11d743A011864f733"; +exports.TOKEN_TRACKER_AMO = "0x3F702a8F6c9f9F7ABdfEA67f89d33F18e0368600"; +exports.TOKEN_TRACKER_V2 = "0x37336AD1F3A145C710247E6a14C9AcC7f34D09eE"; +exports.TWAMM_AMO = "0x11Fc7df1fb0E51f9c9AB8f575d9bbaDC92FA425B"; +exports.TWAMM_AMO_V2 = "0x629C473e0E698FD101496E5fbDA4bcB58DA78dC4"; +exports.UNIV2_TO_UNIV3_MIGRATOR_ADDRESS = "0x7b50137E8996A1717a6D97a0527e4c5D2D133405"; +exports.UNIV3_LIQUIDITY_AMO = "0x3814307b86b54b1d8e7B2Ac34662De9125F8f4E6"; // Old:"0xef2b0895f986Afd7Eb7939B65E2883C5e199751f +exports.UNIV3_LIQUIDITY_AMO_V2 = "0xc91Bb4b0696e3b48c0C501B4ce8E7244Fc363A79"; +exports.VEFXS_SMART_WALLET_CHECKER = "0x53c13BA8834a1567474b19822aAD85c6F90D9f9F"; +exports.VEFXS_YIELD_DISTRIBUTOR = "0x19a0a70a68fbC604Bf20A03b787df8f7AC1d50f0"; +exports.VEFXS_YIELD_DISTRIBUTOR_V2 = "0x62C4cf364078C98fA08AfDB4D3d8D87e780Ebd45"; +exports.VEFXS_YIELD_DISTRIBUTOR_V3 = "0xed2647Bbf875b2936AAF95a3F5bbc82819e3d3FE"; +exports.VEFXS_YIELD_DISTRIBUTOR_V4 = "0xc6764e58b36e26b08Fd1d2AeD4538c02171fA872"; +exports.VEFPIS_YIELD_DISTRIBUTOR_V4 = "0xE6D31C144BA99Af564bE7E81261f7bD951b802F6"; // V5 really, but keeping name here for DB compatibility +exports.VEFPIS_SMART_WALLET_CHECKER = "0x81903F6f9675f7b500eAFE20681bD2D7BAb7C71b"; +exports.YIELDSPACE_AMO = "0x8971946467a77b798762823434c0f407d20F9df9"; +// Multisigs +exports.ADVISORS_MULTISIG = "0x874a873e4891fB760EdFDae0D26cA2c00922C404"; +exports.BEE_USER = "0x733371d7C15ACECF9e120dd037D6BcDb6E069148"; +exports.COMMUNITY_MULTISIG = "0x63278bF9AcdFC9fA65CFa2940b89A34ADfbCb4A1"; +exports.COMPTROLLER = "0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27"; +exports.COMPTROLLER_MULTISIG = "0xB1748C79709f4Ba2Dd82834B8c82D4a505003f27"; +exports.CURVEAMO_OPERATOR_ADDRESS = "0x8D8Cb63BcB8AD89Aa750B9f80Aa8Fa4CfBcC8E0C"; +exports.FPI_COMPTROLLER_MULTISIG = "0x6A7efa964Cf6D9Ab3BC3c47eBdDB853A8853C502"; +exports.FPI_CORE_CONTRIBUTORS_TEAM_MULTISIG = "0x708695db8dF61e646571E78b9b3e2BAd7D6c42E3"; +exports.FPI_TREASURY_MULTISIG = "0x5181C3c36bD52F783e6E1771d80b1e3AdCB36019"; +exports.FRAXLEND_MAIN_MULTISIG = "0x168200cF227D4543302686124ac28aE0eaf2cA0B"; +exports.FRAXLEND_OPERATOR_MULTISIG = "0xa4EC124e09D6D1A092c6BD16aFac9CD83f73E3c3"; +exports.FRAXLEND_CIRCUIT_BREAKER_MULTISIG = "0xfd3065C629ee890Fd74F43b802c2fea4B7279B8c"; +exports.FRXETH_COMPTROLLER = "0x8306300ffd616049FD7e4b0354a64Da835c1A81C"; +exports.FRXETH_OWNER = "0x8306300ffd616049FD7e4b0354a64Da835c1A81C"; +exports.FXB_MULTISIG = "0x831822660572bd54ebaa065C2acef662a6277D40"; +exports.INVESTORS_MULTISIG = "0xa95f86fE0409030136D6b82491822B3D70F890b3"; +exports.TEAM_MULTISIG = "0x8D4392F55bC76A046E443eb3bab99887F4366BB0"; +exports.TIMELOCK_ADDRESS = "0x8412ebf45bAC1B340BbE8F318b928C466c4E39CA"; +exports.TREASURY_MULTISIG = "0x9AA7Db8E488eE3ffCC9CdFD4f2EaECC8ABeDCB48"; +exports.WALLET_WITH_CRVFRAX = "0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503"; +exports.WALLET_WITH_USDC = "0xD6216fC19DB775Df9774a6E33526131dA7D19a2c"; +exports.WALLET_WITH_WETH = "0x8EB8a3b98659Cce290402893d0123abb75E3ab28"; +// PoolRelatedTokens +exports.AFRAX = "0xd4937682df3C8aEF4FE912A96A74121C0829E664"; +exports.AGEURFRAXBP = "0x22e859Ee894c2068920858A60b51DC03ac5581c1"; +exports.AGEURFRAXBP_POOL = "0x58257e4291F95165184b4beA7793a1d6F8e7b627"; +exports.ALCXFRAXBP = "0xf985005a3793DbA4cCe241B3C19ddcd3Fe069ff4"; +exports.ALCXFRAXBP_POOL = "0x4149d1038575CE235E03E03B39487a80FD709D31"; +exports.ALETHFRXETH = "0x97Ba76a574bC5709b944bB1887691301c72337Ca"; +exports.ALETHFRXETH_POOL = "0x97Ba76a574bC5709b944bB1887691301c72337Ca"; +exports.ALUSDFRAXBP = "0xB30dA2376F63De30b42dC055C93fa474F31330A5"; +exports.ALUSDFRAXBP_POOL = "0xB30dA2376F63De30b42dC055C93fa474F31330A5"; +exports.ANKRETHFRXETH = "0xa8e14F03124Ea156A4fc416537c82ff91a647D50"; +exports.ANKRETHFRXETH_POOL = "0x41eA4045de2676727883aa0B4E43D7e32261f559"; +exports.APEUSDFRAXBP = "0x04b727C7e246CA70d496ecF52E6b6280f3c8077D"; +exports.APEUSDFRAXBP_POOL = "0x04b727C7e246CA70d496ecF52E6b6280f3c8077D"; +exports.AUSDC = "0xBcca60bB61934080951369a648Fb03DF4F96263C"; +exports.BADGERFRAXBP = "0x09b2E090531228d1b8E3d948C73b990Cb6e60720"; +exports.BADGERFRAXBP_POOL = "0x13B876C26Ad6d21cb87AE459EaF6d7A1b788A113"; +exports.BUSDFRAXBP = "0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190"; +exports.BUSDFRAXBP_POOL = "0x8fdb0bB9365a46B145Db80D0B1C5C5e979C84190"; +exports.CAAVE = "0xe65cdB6479BaC1e22340E4E755fAE7E509EcD06c"; +exports.CBETHFRXETH = "0x548E063CE6F3BaC31457E4f5b4e2345286274257"; +exports.CBETHFRXETH_POOL = "0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D"; +exports.CLEVUSDFRAXBP = "0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C"; +exports.CLEVUSDFRAXBP_POOL = "0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C"; +exports.COILFRAXBP = "0xb85010193FD15aF8390dbD62790Da70F46c1126B"; +exports.COILFRAXBP_POOL = "0xAF4264916B467e2c9C8aCF07Acc22b9EDdDaDF33"; +exports.CRVFRAX = "0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC"; +exports.CRVFRAX_GAUGE = "0xCFc25170633581Bf896CB6CDeE170e3E3Aa59503"; +exports.CRVFRXETH = "0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974"; +exports.CRVFRXETH_POOL = "0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a"; +exports.CRVUSDFRAX = "0x0CD6f267b2086bea681E922E19D40512511BE538"; +exports.CRVUSDFRAX_GAUGE = "0x96424E6b5eaafe0c3B36CA82068d574D44BE4e3c"; +exports.CRVUSDFRAX_POOL = "0x0CD6f267b2086bea681E922E19D40512511BE538"; +exports.CURVE4POOL = "0x4e0915C88bC70750D68C481540F081fEFaF22273"; +exports.CUSDC = "0x39AA39c021dfbaE8faC545936693aC917d5E7563"; +exports.CVGFRAXBP = "0x421E13b4e805993A0d50aD8c6c47A4F693f04424"; +exports.CVGFRAXBP_GAUGE = "0x8A111B47B31bBa40C2F0D2f9a8Cf6B6C4B50114E"; +exports.CVGFRAXBP_POOL = "0xa7B0E924c2dBB9B4F576CCE96ac80657E42c3e42"; +exports.CVXAGEURFRAXBP = "0x9e187393cBc76c8Bf8e8a06bD7737a7cabe9d66C"; +exports.CVXAGEURFRAXBP_REWARDER = "0x17962aB30c7F291b125A0A38d0ad220ab22F8a5B"; +exports.CVXALCXFRAXBP = "0xCf9fC20189755354edDdED66C9ED9DFADAFd7a2E"; +exports.CVXALCXFRAXBP_REWARDER = "0xC10fD95fd3B56535668426B2c8681AD1E15Be608"; +exports.CVXALUSDFRAXBP = "0x5BcAfc77f19F72bCf1420cC1722c3e06E16Ec29a"; +exports.CVXALUSDFRAXBP_REWARDER = "0x26598e3E511ADFadefD70ab2C3475Ff741741104"; +exports.CVXAPEUSDFRAXBP = "0x04b727C7e246CA70d496ecF52E6b6280f3c8077D"; +exports.CVXAPEUSDFRAXBP_REWARDER = "0x51e6B84968D56a1E5BC93Ee264e95b1Ea577339c"; +exports.CVXBADGERFRAXBP = "0x25f0b7c3A7A43b409634a5759526560cC3313d75"; +exports.CVXBADGERFRAXBP_REWARDER = "0xe0705A91984b076C250d410A41f615380aF1C2ed"; +exports.CVXBUSDFRAXBP = "0xf203A94e59d071062a0dd31f396bCb19a38809A4"; +exports.CVXBUSDFRAXBP_REWARDER = "0x9e6Daf019767D5cEAdE416ce77E8d187b5B254F3"; +exports.CVXCLEVUSDFRAXBP = "0x84C333e94AEA4a51a21F6cf0C7F528C50Dc7592C"; +exports.CVXCLEVUSDFRAXBP_REWARDER = "0x710e85B2793b3AE88Cb1Da3cb25b3d62D810d180"; +exports.CVXCOILFRAXBP = "0x624cEFdBe30507EEAc71882C9e42Ca0900D5B6a1"; +exports.CVXCOILFRAXBP_REWARDER = "0xAE0b6b66378C7DEFc0514D7cBc6E4e92Cf56b0af"; +exports.CVXCRVFRAX = "0x117A0bab81F25e60900787d98061cCFae023560c"; +exports.CVXCRVFRAXBP = "0x527331F3F550f6f85ACFEcAB9Cc0889180C6f1d5"; +exports.CVXCRVFRAXBP_POOL = "0x31c325A01861c7dBd331a9270296a31296D797A0"; +exports.CVXCRVFRAX_REWARDER = "0x7e880867363A7e321f5d260Cade2B0Bb2F717B02"; +exports.CVXCRVUSDFRAX = "0x01CcDe1dFb6c84e1Cc13a6Bf777aa2160ABd11BA"; +exports.CVXCRVUSDFRAX_REWARDER = "0x3CfB4B26dc96B124D15A6f360503d028cF2a3c00"; +exports.CVXCRV_REWARDER = "0x3Fe65692bfCD0e6CF84cB1E7d24108E434A7587e"; +exports.CVXCVGFRAXBP = "0x3cB8E5cac768D6Dd3E7683dBC78E255aae66EDBB"; +exports.CVXCVGFRAXBP_REWARDER = "0x0736b746F53826A1eEC888a05EBF592AF68946Db"; +exports.CVXCVXCRVFRAXBP = "0x2aE739F40Cda5F053F9dbecE7E177Fcbdc4A07D9"; +exports.CVXCVXCRVFRAXBP_REWARDER = "0xdEbc7B51043b4D0dd4f3310C68A12382b8843ceE"; +exports.CVXCVXFRAXBP = "0x123dC033d6fF314211F7953eD31bC805f85C13d5"; +exports.CVXCVXFRAXBP_REWARDER = "0xf02B3A77b1e7775de10294d78a4c3d77772B484A"; +exports.CVXCVXFXSFRAXBP = "0xDad9DB2c7c96a1496493E6D48d131a2667f284f9"; +exports.CVXCVXFXSFRAXBP_REWARDER = "0x19eA715F854dB2196C6f45A174541a5Ac884D2f9"; +exports.CVXDOLAFRAXBP = "0xf7eCC27CC9DB5d28110AF2d89b176A6623c7E351"; +exports.CVXDOLAFRAXBP_REWARDER = "0x0404d05F3992347d2f0dC3a97bdd147D77C85c1c"; +exports.CVXDOLAFRAXPYUSD = "0x430bE19e180fd8c2199eC5FAEabE2F5CDba68C94"; +exports.CVXDOLAFRAXPYUSD_REWARDER = "0xE8cBdBFD4A1D776AB1146B63ABD1718b2F92a823"; +exports.CVXEUSDFRAXBP = "0x8e074d44aaBC1b3b4406fE03Da7ceF787ea85938"; +exports.CVXEUSDFRAXBP_REWARDER = "0xB468dB2E478885B87D7ce0C8DA1D4373A756C138"; +exports.CVXFPIFRAX_F = "0x28ebAb5Ecbc3efB4116205c2D3237d8b16976B06"; +exports.CVXFRAXBP = "0x7F17A6C77C3938D235b014818092eb6305BdA110"; +exports.CVXFRAXBP_POOL = "0xBEc570d92AFB7fFc553bdD9d4B4638121000b10D"; +exports.CVXFRAXFPI_NG = "0xBA927A88eb7B7902ffC5cd99b94fA2964d1a1E03"; +exports.CVXFRAXFPI_NG_REWARDER = "0x062450B06EB92F1C4E227C41c987ed97c93Ae232"; +exports.CVXFRAXFXB_20240630 = "0x5A82ae31C1a36833B9E148d01E967c1b05eDb346"; +exports.CVXFRAXFXB_20240630_REWARDER = "0x830a71574E3c8AE9da477cE1B7F12849E9f7c8c8"; +exports.CVXFRAXFXB_20241231 = "0x06382622D0FafB372dA64b765EAd3d082a8BCabB"; +exports.CVXFRAXFXB_20241231_REWARDER = "0x249cE0b1a682AD7b02e43271f9f0C9ac85Ec47e8"; +exports.CVXFRAXFXB_20261231 = "0x7Ce2F444D0B034f44EeA4FE77608f0c680966D20"; +exports.CVXFRAXFXB_20261231_REWARDER = "0xC9F6D73fD06b8EEB0A4E87cAd407219E10F31712"; +exports.CVXFRAXPYUSD = "0x839CF70a09f1CB104b4eb0B48E26B855A0F7e855"; +exports.CVXFRAXPYUSD_REWARDER = "0xB10a6e39Ed8a66fEd3aAef3866a95611a49B9a95"; +exports.CVXFRAXSDAI = "0xAb4feFd9cabC03D935cAD345b7626C3180238fb3"; +exports.CVXFRAXSDAI_REWARDER = "0xE627082369689b2B86D948c377A4aE4e739C59eE"; +exports.CVXFRAXUSDP = "0x29c22337E3ce362Ce4ad8ecc9CE11fE5A08DBA3c"; +exports.CVXFRAXUSDP_REWARDER = "0x6991C1CD588c4e6f6f1de3A0bac5B8BbAb7aAF6d"; +exports.CVXFRXETH = "0xBb2568deeb365b8B89ef7F9B53E86B34cd5D0490"; +exports.CVXFRXETHALETH = "0x112E8f4b685475CcEd5C38142Cd7A2aE41ef6737"; +exports.CVXFRXETHALETH_REWARDER = "0xe0DbbCF08A5465db7c7401C86cce89030e11aB67"; +exports.CVXFRXETHANKRETH = "0xc18695D5824C49cF50E054953B3A5910c45597A0"; +exports.CVXFRXETHANKRETH_REWARDER = "0xc18695D5824C49cF50E054953B3A5910c45597A0"; +exports.CVXFRXETHCBETH = "0x39E1Ea9CB87a352CfFd43e0b19D573d12cf110CC"; +exports.CVXFRXETHCBETH_REWARDER = "0x0080d49D4a4921dF0F3853c5e4533462A51fbb29"; +exports.CVXFRXETHCRV = "0x41603dA2DD26E6fe29CAe074fC6772053A39C2A9"; +exports.CVXFRXETHCRV_REWARDER = "0xd5dC65ec6948845C1C428fb60BE38FE59B50BD13"; +exports.CVXFRXETHCVX = "0xAc4b1295F9Aeb1DB29acB37902bE349a79a66403"; +exports.CVXFRXETHCVX_REWARDER = "0xA064C1EeEbECD1DF41432f4B7264F508F005aF0C"; +exports.CVXFRXETHETH = "0xC07e540DbFecCF7431EA2478Eb28A03918c1C30E"; +exports.CVXFRXETHETH_REWARDER = "0xbD5445402B0a287cbC77cb67B2a52e2FC635dce4"; +exports.CVXFRXETHMSETH = "0x29889a5fE8e467da8af697C5f1eB901F4911Ab50"; +exports.CVXFRXETHMSETH_REWARDER = "0x15507737f44446EB0A86147E2C72Aa6A111A64B2"; +exports.CVXFRXETHPETH = "0x1941da8D12A6B39B76bd54c865c8cD3a4553E9C3"; +exports.CVXFRXETHPETH_REWARDER = "0x42aaC689261723d06d2a8f356448bd8249f831Bc"; +exports.CVXFRXETHPXETH = "0xDE183818eb02AfEa367C1AAFF1BFdeDecE6B2B05"; +exports.CVXFRXETHPXETH_REWARDER = "0x72b99E2cf3f9A2bbDA1Cc76894E4554d7aA8FE2E"; +exports.CVXFRXETHRETH = "0xeEC515BE690BF445c8C4d1625FD82FA75Bc38bf6"; +exports.CVXFRXETHRETH_REWARDER = "0x84754821b5484A69DB3164eF4eDC5A5657318039"; +exports.CVXFRXETHRETH_STAFI = "0x02a2206268b49A9b3ee5DD51577E5bDa0072d5F1"; +exports.CVXFRXETHRETH_STAFI_REWARDER = "0xf011aD8E91D1dc8625e5548755AEa1F6Fff81089"; +exports.CVXFRXETHSETH = "0xf67FEC3D0A32418813bE2BcdD78e058BCFa33AE8"; +exports.CVXFRXETHSETH_REWARDER = "0x55cdF6c7E6d04b83835E4702ed395D0263237DA2"; +exports.CVXFRXETHSTETH = "0x01492A2cB0Bd14034710475197B4169501B49Ead"; +exports.CVXFRXETHSTETH_REWARDER = "0xC3D0B8170E105d6476fE407934492930CAc3BDAC"; +exports.CVXFRXETHWETH = "0xAA71e0065A29F2529aBC0F615874009287966229"; +exports.CVXFRXETHWETH_REWARDER = "0xFafDE12dC476C4913e29F47B4747860C148c5E4f"; +exports.CVXFRXETHZETH = "0x52EdB08ab81e4Cc32cf318aed17dB11c09C3E8B9"; +exports.CVXFRXETHZETH_REWARDER = "0x98B662443695f7328F6A7fDe9894CC0E88630269"; +exports.CVXFRXETHZUNETH = "0xCB5d9126402cC17eF47b81BD48B43D52bF474Cd4"; +exports.CVXFRXETHZUNETH_REWARDER = "0x756d67A10974Fa0e0cE63F82AF4E7ef0d46d452D"; +exports.CVXFRXETH_POOL = "0x6E855d08f2984516c40C4246A385bA4A2eDFcd0A"; +exports.CVXFXSFRAXBP = "0xF57ccaD8122B898A147Cc8601B1ECA88B1662c7E"; +exports.CVXFXSFRAXBP_POOL = "0x21d158d95C2e150e144c36FC64E3653B8D6c6267"; +exports.CVXGRAIFRAXBP = "0x6CceedbC3551B619da21e552623Dc7C64Ae15168"; +exports.CVXGRAIFRAXBP_REWARDER = "0xC4581E043F676b95Eb1430474C69f3559a758086"; +exports.CVXGUSD3CRV_FREE = "0x15c2471ef46Fa721990730cfa526BcFb45574576"; +exports.CVXGUSDFRAXBP = "0xfbd79471A12929De8379a6CbaF320E150f139ac4"; +exports.CVXGUSDFRAXBP_REWARDER = "0x47809eE386D1dEC29c0b13f21ba30F564517538B"; +exports.CVXLUSDFRAXBP = "0xE8a371b5D32344033589A2F0a2712dBD12130b18"; +exports.CVXLUSDFRAXBP_REWARDER = "0x053e1dad223A206e6BCa24C77786bb69a10e427d"; +exports.CVXMAIFRAXBP = "0xe79914274Ea1332222793d7ba931647531E10a5b"; +exports.CVXMAIFRAXBP_REWARDER = "0xD3C412C3cEdbEC604425B23DCd79Aa1ac810622f"; +exports.CVXMKUSDFRAXBP = "0x187601595F6D5746566BC0361a48d13066F11C71"; +exports.CVXMKUSDFRAXBP_REWARDER = "0x35FbE5520E70768DCD6E3215Ed54E14CBccA10D2"; +exports.CVXMSUSDFRAXBP = "0xc3b19502F8c02be75F3f77fd673503520DEB51dD"; +exports.CVXMSUSDFRAXBP_REWARDER = "0xF189A4a1E845Fd62944F93De497409798523B397"; +exports.CVXOHMFRAXBP = "0x5271045F7B73c17825A7A7aee6917eE46b0B7520"; +exports.CVXOHMFRAXBP_REWARDER = "0x27A8c58e3DE84280826d615D80ddb33930383fE9"; +exports.CVXPUSDFRAXBP = "0xB17255D92892F1322d023befddaB85f172E36f67"; +exports.CVXPUSDFRAXBP_REWARDER = "0x6d096C99Cc2Ea52490355311b73D86365Acf087f"; +exports.CVXRSRFRAXBP = "0x022600684e9492dA82f0da11Bf039c11109d0935"; +exports.CVXRSRFRAXBP_REWARDER = "0x28441fb9b8b026487A6174Ff39Be015810611C0F"; +exports.CVXSDTFRAXBP = "0x95B051E97957f1D48C622Bf73225E3d4c2B189fb"; +exports.CVXSDTFRAXBP_REWARDER = "0xc3df9cC2B8FFdB801E8e6E8FF9C1245E2dEcdA98"; +exports.CVXSTGFRAXBP = "0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8"; +exports.CVXSTGFRAXBP_REWARDER = "0xAa57A289Bb22a1A0C583db306F6566AE2c0CAf21"; +exports.CVXSUSDFRAXBP = "0x8E2A6e9390CbD4C3895D07E4Cb171C0527990dF6"; +exports.CVXSUSDFRAXBP_REWARDER = "0x3fABBDfe05487De1720a9420fE2e16d2c3e79A9D"; +exports.CVXSWETHFRXETH = "0x1fb9115929b32D4456C37B80536a2C9434061296"; +exports.CVXSWETHFRXETH_REWARDER = "0x91362eBf6DbFA5c0FD45CE4cF46DfFd4A8899c7C"; +exports.CVXTRICRYPTOFRAX = "0xa0821fDc8d62413757B9da2357b0e5371f45335e"; +exports.CVXTRICRYPTOFRAX_REWARDER = "0x4af50A690062970DAf1d2f0Fa9042C6f5a5495E3"; +exports.CVXTRISDT = "0x5C2c6E21e141Dd3D13C34754A20d620A1bb731B5"; +exports.CVXTRISDT_REWARDER = "0x1f2a117314e6e8655E0A1C97669b7B836e2cDb91"; +exports.CVXTUSDFRAXBP = "0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893"; +exports.CVXTUSDFRAXBP_REWARDER = "0x4a744870fD705971c8c00aC510eAc2206C93d5bb"; +exports.CVXUSDDFRAXBP = "0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20"; +exports.CVXUSDDFRAXBP_REWARDER = "0x546cd3B917c1d8A6525b4A312bB0014BE031Eb28"; +exports.CVXUZDFRAXBP = "0xe6c0fAA19A7fB6A0a2C01e0BBC1a782b9e4a7B48"; +exports.CVXUZDFRAXBP_REWARDER = "0x820Fad75512c8C3E57Ad021d016846CEEB5F7105"; +exports.CVXXAIFRAXBP = "0xEbB0Dd1AfE63813AdD4c38EEbd71CE7354dd9b7e"; +exports.CVXXAIFRAXBP_REWARDER = "0x4a866fE20A442Dff55FAA010684A5C1379151458"; +exports.CVXZUSDFRAXBP = "0xd48494c36F98BE491f6Cfd6841617e847C819806"; +exports.CVXZUSDFRAXBP_REWARDER = "0xFd3A7636694259b32B3896f59436997AD25380cA"; +exports.D3POOL = "0xBaaa1F5DbA42C3389bDbc2c9D2dE134F5cD0Dc89"; +exports.DOLAFRAXBP = "0xE57180685E3348589E9521aa53Af0BCD497E884d"; +exports.DOLAFRAXBP_POOL = "0xE57180685E3348589E9521aa53Af0BCD497E884d"; +exports.DOLAFRAXPYUSD = "0xef484de8C07B6e2d732A92B5F78e81B38f99f95E"; +exports.DOLAFRAXPYUSD_GAUGE = "0x4B092818708A721cB187dFACF41f440ADb79044D"; +exports.DOLAFRAXPYUSD_POOL = "0xef484de8C07B6e2d732A92B5F78e81B38f99f95E"; +exports.EUSDFRAXBP = "0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F"; +exports.EUSDFRAXBP_POOL = "0xAEda92e6A3B1028edc139A4ae56Ec881f3064D4F"; +exports.FPIFRAX_F = "0x4704aB1fb693ce163F7c9D3A31b3FF4eaF797714"; +exports.FPIFRAX_F_POOL = "0xf861483fa7E511fbc37487D91B6FAa803aF5d37c"; +exports.FRAX3CRV_F = "0xd632f22692FaC7611d2AA1C0D552930D43CAEd3B"; +exports.FRAXBP = "0x3175Df0976dFA876431C2E9eE6Bc45b65d3473CC"; +exports.FRAXBP_POOL = "0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2"; +exports.FRAXFPI = "0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe"; +exports.FRAXFPI_NG = "0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe"; +exports.FRAXFPI_NG_GAUGE = "0x107E4c1302403095e5A4Bc5e815982aa732e95BD"; +exports.FRAXFPI_NG_POOL = "0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe"; +exports.FRAXFPI_POOL = "0x2Cf99A343e4ECF49623E82f2Ec6A9b62e16Ff3fe"; +exports.FRAXFXB_20240630 = "0x4ef4c7519023F30A78647EEab321d6cFabC2513c"; +exports.FRAXFXB_20240630_GAUGE = "0x35aD1ACf0C4BE5d4Ba11342128D440fDb9e189eb"; +exports.FRAXFXB_20240630_POOL = "0x4ef4c7519023F30A78647EEab321d6cFabC2513c"; +exports.FRAXFXB_20241231 = "0x6307E6688819951Cf8D6B6066018243D2496952F"; +exports.FRAXFXB_20241231_GAUGE = "0xC2FE9D3c761994897594Df63B33b6D843Ab7b1cF"; +exports.FRAXFXB_20241231_POOL = "0x6307E6688819951Cf8D6B6066018243D2496952F"; +exports.FRAXFXB_20261231 = "0xe035e27A8eD6842b478933820f90093D205F7098"; +exports.FRAXFXB_20261231_GAUGE = "0x0E83dF148F69965BfE752250835854b0dBeeaf01"; +exports.FRAXFXB_20261231_POOL = "0xe035e27A8eD6842b478933820f90093D205F7098"; +exports.FRAXPYUSD = "0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb"; +exports.FRAXPYUSD_GAUGE = "0xdc6d319FAc1498125e871ccEdF7f1B9998ebA3C5"; +exports.FRAXPYUSD_POOL = "0xA5588F7cdf560811710A2D82D3C9c99769DB1Dcb"; +exports.FRAXSDAI = "0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7"; +exports.FRAXSDAI_GAUGE = "0xb9BDcDcD7c3C1A3255402D44639cb6c7281833cF"; +exports.FRAXSDAI_POOL = "0xcE6431D21E3fb1036CE9973a3312368ED96F5CE7"; +exports.FRAXUSDP = "0xFC2838a17D8e8B1D5456E0a351B0708a09211147"; +exports.FRAXUSDP_POOL = "0xaE34574AC03A15cd58A92DC79De7B1A0800F1CE3"; +exports.FRXETHALETH = "0xB657B895B265C38c53FFF00166cF7F6A3C70587d"; +exports.FRXETHALETH_GAUGE = "0x415F30505368fa1dB82Feea02EB778be04e75907"; +exports.FRXETHALETH_POOL = "0xB657B895B265C38c53FFF00166cF7F6A3C70587d"; +exports.FRXETHANKRETH = "0xa8e14F03124Ea156A4fc416537c82ff91a647D50"; +exports.FRXETHANKRETH_GAUGE = "0x86f8d7Ced9A8F5563C1198466968B02238E05917"; +exports.FRXETHANKRETH_POOL = "0x41eA4045de2676727883aa0B4E43D7e32261f559"; +exports.FRXETHCBETH = "0x548E063CE6F3BaC31457E4f5b4e2345286274257"; +exports.FRXETHCBETH_GAUGE = "0xD10C17D82053DD0AB65851a9A93a0abE0C4F4794"; +exports.FRXETHCBETH_POOL = "0x73069892f6750CCaaAbabaDC54b6b6b36B3A057D"; +exports.FRXETHCRV = "0xc34993c9aDf6a5AB3b4cA27dC71b9c7894A53974"; +exports.FRXETHCRV_GAUGE = "0x266cE172a1180134cf6C7836C516bd6A58b1f619"; +exports.FRXETHCRV_POOL = "0x442F37cfD85D3f35e576AD7D63bBa7Bb36fCFe4a"; +exports.FRXETHCVX = "0x6e52cCe4EaFDf77091dD1c82183b2D97b776b397"; +exports.FRXETHCVX_GAUGE = "0xc2075702490F0426E84E00d8B328119027813AC5"; +exports.FRXETHCVX_POOL = "0x47D5E1679Fe5f0D9f0A657c6715924e33Ce05093"; +exports.FRXETHETH = "0xf43211935C781D5ca1a41d2041F397B8A7366C7A"; +exports.FRXETHETH_POOL = "0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577"; +exports.FRXETHMSETH = "0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A"; +exports.FRXETHMSETH_GAUGE = "0xB7A3C519889a916C5ecB54101E69ECf11DE60d0b"; +exports.FRXETHMSETH_POOL = "0x2d600BbBcC3F1B6Cb9910A70BaB59eC9d5F81B9A"; +exports.FRXETHPETH = "0x320B564Fb9CF36933eC507a846ce230008631fd3"; +exports.FRXETHPETH_GAUGE = "0x57e1947e1134F6e733A4a694dE6A163eF23EDf54"; +exports.FRXETHPETH_POOL = "0x320B564Fb9CF36933eC507a846ce230008631fd3"; +exports.FRXETHPXETH = "0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987"; +exports.FRXETHPXETH_GAUGE = "0x277d1424a84B35ec0a8108482551b00b4fc1539b"; +exports.FRXETHPXETH_POOL = "0xe2Ed1dAc3A9547BC6057e32bf8133b5268D7d987"; +exports.FRXETHRETH = "0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1"; +exports.FRXETHRETH_GAUGE = "0xF20bd4D5A4112d5f9c64aDF53726F3ef1b7d0D61"; +exports.FRXETHRETH_POOL = "0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9"; +exports.FRXETHRETH_STAFI = "0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B"; +exports.FRXETHRETH_STAFI_GAUGE = "0xb0549599d8446A196541dE11008eF5e79fA14F57"; +exports.FRXETHRETH_STAFI_POOL = "0xfcc067EFb7bE2EEbD32615F14fC22195abB68e9B"; +exports.FRXETHSETH = "0x663aC72a1c3E1C4186CD3dCb184f216291F4878C"; +exports.FRXETHSETH_GAUGE = "0x77ef5D544FF6C739E7E10a549f64Dd08055538d1"; +exports.FRXETHSETH_POOL = "0x663aC72a1c3E1C4186CD3dCb184f216291F4878C"; +exports.FRXETHSTETH = "0x4d9f9D15101EEC665F77210cB999639f760F831E"; +exports.FRXETHSTETH_GAUGE = "0x821529Bb07c83803C9CC7763e5974386e9eFEdC7"; +exports.FRXETHSTETH_POOL = "0x4d9f9D15101EEC665F77210cB999639f760F831E"; +exports.FRXETHWETH = "0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc"; +exports.FRXETHWETH_GAUGE = "0x4E21418095d32d15c6e2B96A9910772613A50d50"; +exports.FRXETHWETH_POOL = "0x9c3B46C0Ceb5B9e304FCd6D88Fc50f7DD24B31Bc"; +exports.FRXETHZETH = "0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018"; +exports.FRXETHZETH_GAUGE = "0xB3627140BEacb97f9CA52b34090352FdAfC77d72"; +exports.FRXETHZETH_POOL = "0xfC89b519658967fCBE1f525f1b8f4bf62d9b9018"; +exports.FRXETHZUNETH = "0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA"; +exports.FRXETHZUNETH_GAUGE = "0x44f30D79f62a3D5340030d64806cD73239889F07"; +exports.FRXETHZUNETH_POOL = "0x3A65cbaebBFecbeA5D0CB523ab56fDbda7fF9aAA"; +exports.FTRIBE_8 = "0xFd3300A9a74b3250F1b2AbC12B47611171910b07"; +exports.FUSDC_18 = "0x6f95d4d251053483f41c8718C30F4F3C404A8cf2"; +exports.FXSFRXETH = "0x970FAA9aFBC5Feb3EC53059BA330DEe71E22B55B"; +exports.FXSFRXETH_POOL = "0x5133Da6Ba0474368Ad0398d953c8D31c1B75b82B"; +exports.GOHM = "0x0ab87046fBb341D058F17CBC4c1133F25a20a52f"; +exports.GRAIFRAXBP = "0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc"; +exports.GRAIFRAXBP_GAUGE = "0x8d5AF1F5DD3dC4B73e3A9Af682aDC3641FADE9a5"; +exports.GRAIFRAXBP_POOL = "0x3175f54A354C83e8ADe950c14FA3e32fc794c0Dc"; +exports.GUSD3CRV = "0xD2967f45c4f384DEEa880F807Be904762a3DeA07"; +exports.GUSDFRAXBP = "0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93"; +exports.GUSDFRAXBP_POOL = "0x4e43151b78b5fbb16298C1161fcbF7531d5F8D93"; +exports.LUSDFRAXBP = "0x497CE58F34605B9944E6b15EcafE6b001206fd25"; +exports.LUSDFRAXBP_POOL = "0x497CE58F34605B9944E6b15EcafE6b001206fd25"; +exports.MAIFRAXBP = "0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9"; +exports.MAIFRAXBP_POOL = "0x66E335622ad7a6C9c72c98dbfCCE684996a20Ef9"; +exports.MKUSDFRAXBP = "0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5"; +exports.MKUSDFRAXBP_GAUGE = "0xF184d80915Ba7d835D941BA70cDdf93DE36517ee"; +exports.MKUSDFRAXBP_POOL = "0x0CFe5C777A7438C9Dd8Add53ed671cEc7A5FAeE5"; +exports.MSUSDFRAXBP = "0xc3b19502F8c02be75F3f77fd673503520DEB51dD"; +exports.MSUSDFRAXBP_POOL = "0xc3b19502F8c02be75F3f77fd673503520DEB51dD"; +exports.OGTEMPLE = "0x654590F810f01B51dc7B86915D4632977e49EA33"; +exports.OHMFRAXBP = "0x5271045F7B73c17825A7A7aee6917eE46b0B7520"; +exports.OHMFRAXBP_POOL = "0xFc1e8bf3E81383Ef07Be24c3FD146745719DE48D"; +exports.PITCHFXS = "0x11EBe21e9d7BF541A18e1E3aC94939018Ce88F0b"; +exports.PUSDFRAXBP = "0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B"; +exports.PUSDFRAXBP_POOL = "0xC47EBd6c0f68fD5963005D28D0ba533750E5C11B"; +exports.RETHFRXETH = "0xbA6c373992AD8ec1f7520E5878E5540Eb36DeBf1"; +exports.RETHFRXETH_POOL = "0xe7c6E0A739021CdbA7aAC21b4B728779EeF974D9"; +exports.RSRFRAXBP = "0x3F436954afb722F5D14D868762a23faB6b0DAbF0"; +exports.RSRFRAXBP_POOL = "0x6a6283aB6e31C2AeC3fA08697A8F806b740660b2"; +exports.SADDLED4 = "0xd48cF4D7FB0824CC8bAe055dF3092584d0a1726A"; +exports.SADDLED4_POOL = "0xC69DDcd4DFeF25D8a793241834d4cc4b3668EAD6"; +exports.SDFRAX3CRV_F = "0x5af15DA84A4a6EDf2d9FA6720De921E1026E37b7"; +exports.SDL_ALUSDFRAXBP = "0x3cF7b9479a01eeB3bbfC43581fa3bb21cd888e2A"; +exports.SDL_ALUSDFRAXBP_GAUGE = "0x953693DCB2E9DDC0c1398C1b540b81b63ceA5e16"; +exports.SDL_ALUSDFRAXBP_POOL = "0xFB516cF3710fC6901F2266aAEB8834cF5e4E9558"; +exports.SDL_FRAX3POOL = "0x0785aDDf5F7334aDB7ec40cD785EBF39bfD91520"; +exports.SDL_FRAX3POOL_GAUGE = "0x13Ba45c2B686c6db7C2E28BD3a9E8EDd24B894eD"; +exports.SDL_FRAX3POOL_POOL = "0x8cAEa59f3Bf1F341f89c51607E4919841131e47a"; +exports.SDL_FRAXBP = "0x927E6f04609A45B107C789aF34BA90Ebbf479f7f"; +exports.SDL_FRAXBP_GAUGE = "0xB2Ac3382dA625eb41Fc803b57743f941a484e2a6"; +exports.SDL_FRAXBP_POOL = "0x13Cc34Aa8037f722405285AD2C82FE570bfa2bdc"; +exports.SDL_SUSDFRAXBP = "0x6Ac7a4cB3BFa90DC651CD53EB098e23c88d04e77"; +exports.SDL_SUSDFRAXBP_GAUGE = "0x104F44551386d603217450822443456229F73aE4"; +exports.SDL_SUSDFRAXBP_POOL = "0x69baA0d7c2e864b74173922Ca069Ac79d3be1556"; +exports.SDL_USDTFRAXBP = "0x486DFCfdbF9025c062110E8c0344a15279aD0a85"; +exports.SDL_USDTFRAXBP_GAUGE = "0x6EC5DD7D8E396973588f0dEFD79dCA04F844d57C"; +exports.SDL_USDTFRAXBP_POOL = "0xC765Cd3d015626244AD63B5FB63a97c5634643b9"; +exports.SDL_VESPERFRAXEARNPOOLFRAXBP = "0xA3beCa25Bd2bDd67272556666A7791d772C36571"; +exports.SDL_VESPERFRAXEARNPOOLFRAXBP_GAUGE = "0x9980C9b35844946cF3451cC0B43D9b6501F4a96E"; +exports.SDL_VESPERFRAXEARNPOOLFRAXBP_POOL = "0x9AC17f026f0599F77b3513a0A35f0258B0ec77f3"; +exports.SDTFRAXBP = "0x893DA8A02b487FEF2F7e3F35DF49d7625aE549a3"; +exports.SDTFRAXBP_POOL = "0x3e3C6c7db23cdDEF80B694679aaF1bCd9517D0Ae"; +exports.SETHFRXETH = "0x663aC72a1c3E1C4186CD3dCb184f216291F4878C"; +exports.SETHFRXETH_POOL = "0x663aC72a1c3E1C4186CD3dCb184f216291F4878C"; +exports.SOHM = "0x04F2694C8fcee23e8Fd0dfEA1d4f5Bb8c352111F"; +exports.STETHFRXETH = "0x4d9f9D15101EEC665F77210cB999639f760F831E"; +exports.STETHFRXETH_POOL = "0x4d9f9D15101EEC665F77210cB999639f760F831E"; +exports.STGFRAXBP = "0x9de1c3D446237ab9BaFF74127eb4F303802a2683"; +exports.STGFRAXBP_POOL = "0x867fe27FC2462cff8890B54DfD64E6d42a9D1aC8"; +exports.STKAAVE = "0x4da27a545c0c5B758a6BA100e3a049001de870f5"; +exports.STKCVXAGEURFRAXBP = "0x78b74C93c726B6e29d0Ef5A01764fA19eCCF0C1c"; +exports.STKCVXALCXFRAXBP = "0xAF1b82809296E52A42B3452c52e301369Ce20554"; +exports.STKCVXALUSDFRAXBP = "0xBE1C919cA137299715e9c929BC7126Af14f76091"; +exports.STKCVXAPEUSDFRAXBP = "0x6a20FC1654A2167d00614332A5aFbB7EBcD9d414"; +exports.STKCVXBADGERFRAXBP = "0xb92e3fD365Fc5E038aa304Afe919FeE158359C88"; +exports.STKCVXBUSDFRAXBP = "0x20c5177504A3f9Bad59c430791feA853EeAD4CCE"; +exports.STKCVXCLEVUSDFRAXBP = "0x3199a1ed1Ad4cb1d1b57939809c8ee79eafE9934"; +exports.STKCVXCOILFRAXBP = "0xa5B6f8Ec4122c5Fe0dBc4Ead8Bfe66A412aE427C"; +exports.STKCVXCOILFRAXBP_DEPRECATED = "0xdA69CeC36AE581C1b2a2EEb77C527Fb7c1331310"; +exports.STKCVXCRV = "0xaa0C3f5F7DFD688C6E646F66CD2a6B66ACdbE434"; +exports.STKCVXCRVUSDFRAX = "0xb6F63cc2066e7626fA47fCC37E78Df9fe89F1663"; +exports.STKCVXCVGFRAXBP = "0x7B465174A93a6d0602fD4ea99eEc86C07e5E1568"; +exports.STKCVXCVXCRVFRAXBP = "0xa103a6ca0C4D4072BA59a55FD453BFE4197A095B"; +exports.STKCVXCVXFRAXBP = "0x93D1De20eaBB21686CFe716f78F67E51ee578185"; +exports.STKCVXCVXFXSFRAXBP = "0xA6A8F315b1a8C9B05433d206b8fECfbF0fC96217"; +exports.STKCVXDOLAFRAXBP = "0xF06c8696730cf760619e4fA0eDd0f79ea50531A9"; +exports.STKCVXDOLAFRAXPYUSD = "0x8aAa49650C4908156efAc3B47e00745a319c806c"; +exports.STKCVXEUSDFRAXBP = "0x49BF6f9B860fAF73B0b515c06Be1Bcbf4A0db3dF"; +exports.STKCVXFPIFRAX = "0x7287488F8Df7dddc5f373142D4827aAF92AAC845"; +exports.STKCVXFRAXBP = "0x8a53ee42FB458D4897e15cc7dEa3F75D0F1c3475"; +exports.STKCVXFRAXFPI_NG = "0x562E4d6C958333a5f0988FFedA11e45C27722994"; +exports.STKCVXFRAXFXB_20240630 = "0x6E804b00fe562707E3a86bBbcC53Eb73c36c0cf6"; +exports.STKCVXFRAXFXB_20241231 = "0xBb16610CF051AAc4bBEF9c53e2fc99b77BCE4A8c"; +exports.STKCVXFRAXFXB_20261231 = "0x8aa015CE081505064a9cB8e7816deE3Bd7a45a12"; +exports.STKCVXFRAXPYUSD = "0x59Ae4E430be0bF47e758F7E022E9a50A8C7D09d6"; +exports.STKCVXFRAXSDAI = "0x2EB43dBF8C0013712fEc7B2A57453e41B9907e95"; +exports.STKCVXFRAXUSDP = "0x5385AE7dC08F5C3799691E5b387cB01108B76627"; +exports.STKCVXFRXETHALETH = "0x8A59781B415288f9E633b948618726CB6E47e980"; +exports.STKCVXFRXETHANKRETH = "0x75A439b3F8106428b86198D8c306c57E9e7Bb3dC"; +exports.STKCVXFRXETHCBETH = "0x4e9D8323603E69c1310E5e04Db172bD5aB07df95"; +exports.STKCVXFRXETHCRV = "0x194aA54376886dAd3d08e71F47D189A88251D8Da"; +exports.STKCVXFRXETHCVX = "0x5B31bf2988E5388Edae2960504d96Bc142742dCb"; +exports.STKCVXFRXETHETH = "0x4659d5fF63A1E1EDD6D5DD9CC315e063c95947d0"; +exports.STKCVXFRXETHMSETH = "0x09bFD0c760E4a1bFc970cdaAAD240307C917Aa6c"; +exports.STKCVXFRXETHPETH = "0xeCF134dF5DE1e0E12A441D446ff81994Cb0301A2"; +exports.STKCVXFRXETHPXETH = "0x51521Da84Cbce1B4A930B55d8D896b590532f7A6"; +exports.STKCVXFRXETHRETH = "0xE0c65F74728Ff26219C6adddCEfB215484bb08DF"; +exports.STKCVXFRXETHRETH_STAFI = "0xffAFA5aA5b0a9C0C8e05ec8b89056F018EE2Bad6"; +exports.STKCVXFRXETHSETH = "0x44b51F7F92D761Cf2FC46011AD6b74Ce56447924"; +exports.STKCVXFRXETHSTETH = "0xc2eC3d1209FD1Fc512950825f34281EaF9aB13A2"; +exports.STKCVXFRXETHWETH = "0x08061feC3FC09Aa2Eb4B4B72EA618034CBFD22b0"; +exports.STKCVXFRXETHZETH = "0xd69068777d1b2dc74522117efA75AA195c0b57DB"; +exports.STKCVXFRXETHZUNETH = "0xD893522D2CCd40eA6C1414815e3eAD1B58a83D51"; +exports.STKCVXGRAIFRAXBP = "0xDf9BB26ba5a05fcFc2637dC763AA4eb735911568"; +exports.STKCVXGUSDFRAXBP = "0x16e9eaC2A9e29aF3c53d24ed0F07fc403E098b64"; +exports.STKCVXLUSDFRAXBP = "0x8C402989a966D37B96f60401A6158D5D49f1381D"; +exports.STKCVXMAIFRAXBP = "0x787eB52b94c4610ABE2C9C5eE95c3a4a16533344"; +exports.STKCVXMKUSDFRAXBP = "0xd529a0FD4249f0b48171140873b1b13a1ad5286d"; +exports.STKCVXMSUSDFRAXBP = "0x227b7F44468A0EC0FDdfc3FB0cE09b294E62f875"; +exports.STKCVXOHMFRAXBP = "0x81b0dCDa53482A2EA9eb496342dC787643323e95"; +exports.STKCVXPUSDFRAXBP = "0x7AEF5bDC573dCbfb40EC68b0BAAB03abB846C9c6"; +exports.STKCVXRSRFRAXBP = "0xF37007f2b9DE656115e1B977Bb1fd38A99B8a2a6"; +exports.STKCVXSDTFRAXBP = "0xE6Aa75F98e6c105b821a2dba9Fbbd886b421F06b"; +exports.STKCVXSTGFRAXBP = "0xAe1bA2Cf0eBF00C5052309992d7B6c94e3EfcBEf"; +exports.STKCVXSUSDFRAXBP = "0x9f0C2673a33b7087e367253f196A7E823fBc2341"; +exports.STKCVXSWETHFRXETH = "0xa3ae006Cc863423F690ca01C2a8F692B97c93c3b"; +exports.STKCVXTRICRYPTOFRAX = "0x0643d5C29498149D31bAd69a5bE2771b5440C58d"; +exports.STKCVXTRISDT = "0xAD059ccF041e344eA52A3152Bbf654c605d68473"; +exports.STKCVXTUSDFRAXBP = "0x32fA492Ac1F729E0eE9eDdfCBacc3ef72B234e27"; +exports.STKCVXUSDDFRAXBP = "0x507e41A64eB7AE47ee303e3B16237ab757F6C06c"; +exports.STKCVXUZDFRAXBP = "0xaa236bd1302755937Aa46D6f3423655BbC654B02"; +exports.STKCVXUZDFRAXBP_DEPRECATED = "0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316"; +exports.STKCVXUZDFRAXBP_DEPRECATED_OLD = "0x57Fb068BDa27351EF0913113264Ce3EF4EeA3316"; +exports.STKCVXXAIFRAXBP = "0x19f0a60f4635d3E2c48647822Eda5332BA094fd3"; +exports.STKCVXZUSDFRAXBP = "0xFD2d7847E0f450d8B00d3D697D720C687E622a7B"; +exports.STKMTA = "0x8f2326316eC696F6d023E37A9931c2b2C177a3D7"; +exports.SUSDFRAXBP = "0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF"; +exports.SUSDFRAXBP_POOL = "0xe3c190c57b5959Ae62EfE3B6797058B76bA2f5eF"; +exports.SWETHFRXETH = "0xe49AdDc2D1A131c6b8145F0EBa1C946B7198e0BA"; +exports.SWETHFRXETH_POOL = "0x67e0bDbe0A2C5999A60D048f50e794218056b767"; +exports.TFRAX = "0x94671A3ceE8C7A12Ea72602978D1Bb84E920eFB2"; +exports.TFXS = "0xADF15Ec41689fc5b6DcA0db7c53c9bFE7981E655"; +exports.THREECRV_ERC20 = "0x6c3F90f043a72FA612cbac8115EE7e52BDe6E490"; +exports.THREECRV_POOL = "0xbEbc44782C7dB0a1A60Cb6fe97d0b483032FF1C7"; +exports.TRICRYPTOFRAX = "0x4D1941a887eC788F059b3bfcC8eE1E97b968825B"; +exports.TRICRYPTOFRAX_GAUGE = "0x4B43fEaB8f5ccD38Ac0831DD7eC797330114F058"; +exports.TRISDT = "0x954313005C56b555bdC41B84D6c63B69049d7847"; +exports.TRISDT_GAUGE = "0x2DD2b7E07dD433B758B98A3889a63cbF48ef0D99"; +exports.TUSDFRAXBP = "0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893"; +exports.TUSDFRAXBP_POOL = "0x33baeDa08b8afACc4d3d07cf31d49FC1F1f3E893"; +exports.USDDFRAXBP = "0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20"; +exports.USDDFRAXBP_POOL = "0x4606326b4Db89373F5377C316d3b0F6e55Bc6A20"; +exports.UZDFRAXBP = "0x68934F60758243eafAf4D2cFeD27BF8010bede3a"; +exports.UZDFRAXBP_POOL = "0x68934F60758243eafAf4D2cFeD27BF8010bede3a"; +exports.VECRV = "0x5f3b5DfEb7B28CDbD7FAba78963EE202a494e2A2"; +exports.VESDL = "0xD2751CdBED54B87777E805be36670D7aeAe73bb2"; +exports.VLCVX = "0x72a19342e8F1838460eBFCCEf09F6585e32db86E"; +exports.XAIFRAXBP = "0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669"; +exports.XAIFRAXBP_POOL = "0x326290A1B0004eeE78fa6ED4F1d8f4b2523ab669"; +exports.XSDT = "0xaC14864ce5A98aF3248Ffbf549441b04421247D3"; +exports.YVUSDC = "0xa354F35829Ae975e850e23e9615b11Da1B3dC4DE"; +exports.ZUSDFRAXBP = "0x400d4C984779A747462e88373c3fE369EF9F5b50"; +exports.ZUSDFRAXBP_GAUGE = "0x218E4678318ab5527e41135713193E5EAd73337f"; +exports.ZUSDFRAXBP_POOL = "0x400d4C984779A747462e88373c3fE369EF9F5b50"; +// UniV3Pools +exports.AAVE_ETH_UNI_V3_POOL = "0x5aB53EE1d50eeF2C1DD3d5402789cd27bB52c1bB"; +exports.APE_WETH_UNI_V3_POOL = "0xAc4b3DacB91461209Ae9d41EC517c2B9Cb1B7DAF"; +exports.FRAX_DAI_V3_POOL = "0x97e7d56A0408570bA1a7852De36350f7713906ec"; +exports.FRAX_USDC_V3_POOL = "0xc63B0708E2F7e69CB8A1df0e1389A98C35A76D52"; +exports.FRAX_WETH_UNI_V3_POOL = "0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A"; +exports.FRXETH_FRAX_V3_POOL = "0x36C060Cc4b088c830a561E959A679A58205D3F56"; +exports.LINK_ETH_UNI_V3_POOL = "0xa6Cc3C2531FdaA6Ae1A3CA84c2855806728693e8"; +exports.MKR_ETH_UNI_V3_POOL = "0xe8c6c9227491C0a8156A0106A0204d881BB7E531"; +exports.STATIC_UNI_V3_ORACLE = "0xB210CE856631EeEB767eFa666EC7C1C57738d438"; +exports.UNI_ETH_UNI_V3_POOL = "0x1d42064Fc4Beb5F8aAF85F4617AE8b3b5B8Bd801"; +exports.USDC_WETH_UNI_V3_POOL = "0x88e6A0c2dDD26FEEb64F039a2c41296FcB3f5640"; +// UniswapV3Misc +exports.KYBERSWAP_ELASTIC_FACTORY = "0x5F1dddbf348aC2fbe22a163e30F99F9ECE3DD50a"; +exports.KYBERSWAP_ELASTIC_FACTORY_V2 = "0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A"; +exports.KYBERSWAP_ELASTIC_POS_MGR = "0x2B1c7b41f6A8F2b2bc45C3233a5d5FB3cD6dC9A8"; +exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = "0xe222fBE074A436145b255442D919E4E3A6c6a480"; +exports.KYBERSWAP_ELASTIC_ROUTER = "0xC1e7dFE73E1598E3910EF4C7845B68A9Ab6F4c83"; +exports.KYBERSWAP_ELASTIC_ROUTER_V2 = "0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4"; +exports.KYBERSWAP_ELASTIC_TICK_FEES_READER = "0xD7ab1699280980E756C446769B4c0F04550f88c9"; +exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = "0x8Fd8Cb948965d9305999D767A02bf79833EADbB3"; +exports.NON_FUNGIBLE_POSITION_MANAGER = "0xC36442b4a4522E871399CD717aBDD847Ab11FE88"; +exports.SWAPROUTER = "0xE592427A0AEce92De3Edee1F18E0157C05861564"; +exports.UNISWAP_V3_FACTORY = "0x1F98431c8aD98523631AE4a59f267346ea31F984"; diff --git a/scripts/constants/mode.js b/scripts/constants/mode.js new file mode 100644 index 0000000..364ab3c --- /dev/null +++ b/scripts/constants/mode.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x486cb4788f1be7cdef9301a7a637b451df3cf262"; +exports.REMOTEMINTREDEEMHOP = "0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0xc1B621b18187F74c8F6D52a6F709Dd2780C09821"; +exports.LZ_SEND_LIB_302 = "0x2367325334447C5E1E0f1b3a6fB947b262F58312"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30260; +exports.CHAIN_ID = 34443; diff --git a/scripts/constants/monad.js b/scripts/constants/monad.js new file mode 100644 index 0000000..9f7159e --- /dev/null +++ b/scripts/constants/monad.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0xba554f7a47f0792b9fa41a1256d4cf628bb1d028"; +exports.FRXETHOFT = "0x288f9d76019469bfeb56bb77d86afa2bf563b75b"; +exports.FRXUSDOFT = "0x58e3ee6accd124642ddb5d3f91928816be8d8ed3"; +exports.SFRXETHOFT = "0x3b4cf37a3335f21c945a40088404c715525fcb29"; +exports.SFRXUSDOFT = "0x137643f7b2c189173867b3391f6629cab46f0f1a"; +exports.WFRAXOFT = "0x29acc7c504665a5ea95344796f784095f0cfcc58"; +// FraxtalLZHop +exports.REMOTEHOP = "0x40F66FFf44DBBee88058185F2cFE287558D7E532"; +exports.REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +exports.FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; +// Chain IDs +exports.LZ_CHAIN_ID = 30390; +exports.CHAIN_ID = 143; diff --git a/scripts/constants/moonbeam.js b/scripts/constants/moonbeam.js new file mode 100644 index 0000000..b8a2bd5 --- /dev/null +++ b/scripts/constants/moonbeam.js @@ -0,0 +1,64 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.ZENLINK_CANFRAX_WGLMR = + exports.ZENLINK_CANFRAX_CANFXS = + exports.FPI_COMPTROLLER = + exports.COMPTROLLER = + exports.FRAXSWAP_V2_FRAX_WGLMR = + exports.FRAXSWAP_V1_FRAX_WGLMR = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V1_FRAX_FXS = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = + exports.SFRXETH = + exports.FRXETH = + exports.FXS = + exports.FRAX = + void 0; +// Canonicals +exports.FRAX = "0x322E86852e492a7Ee17f28a78c663da38FB33bfb"; +exports.FXS = "0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C"; +exports.FRXETH = "0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99"; +exports.SFRXETH = "0xecf91116348aF1cfFe335e9807f0051332BE128D"; +// Farms +// FraxBonds +// FraxFerry +exports.FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = "0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d"; +exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = "0x1E87990678f640BFfe5A118c331fEc296DDC8d89"; +exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = "0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504"; +exports.FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = "0x78348E58582d0D1789da1621B79Fc62012485CAe"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxlendAndOracles +exports.COMBO_ORACLE = "0x247A323DAA63cC97c2BAD61b4D6f1E0120B5c9e2"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0x4A40198373dE481741bdf629B44Dc98f12f18161"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E"; +exports.FRAXSWAP_FACTORY_V2 = "0x51f9DBEd76f5Dcf209817f641b549aa82F35D23F"; +exports.FRAXSWAP_ROUTER_V1 = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FRAXSWAP_ROUTER_V2 = "0xd95fe880d7717f7f20981FE6e41A2315f3EFeAb5"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +exports.FRAXSWAP_V1_FRAX_FXS = "0x44E11b99ff8F6164FD54393a17b3CD4c57732dB7"; +exports.FRAXSWAP_V2_FRAX_FXS = "0x2974A0D3e70FDe22d44c188F770beE964205aCad"; +exports.FRAXSWAP_V1_FRAX_WGLMR = "0xAE0b5be7d467C8c0898CaE4c96B2f40A6810DEBC"; +exports.FRAXSWAP_V2_FRAX_WGLMR = "0xd3bE0E32147ae91378F035fF96f3e2cAb96aC48b"; +// Misc +// Multisigs +exports.COMPTROLLER = "0x343e4f06BF240d22FbdFd4a2Fe5858BC66e79F12"; +exports.FPI_COMPTROLLER = "0xc4d89dcE72cde17DC3BEF317E62530b6A0733971"; +// PoolRelatedTokens +exports.ZENLINK_CANFRAX_CANFXS = "0x8ca030649720b94b16e8C3B551cc2ab88c681C0F"; +exports.ZENLINK_CANFRAX_WGLMR = "0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04"; diff --git a/scripts/constants/moonriver.js b/scripts/constants/moonriver.js new file mode 100644 index 0000000..c434524 --- /dev/null +++ b/scripts/constants/moonriver.js @@ -0,0 +1,66 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.SUSHI_CANFXS_ANYUSDC = + exports.SUSHI_CANFRAX_WMOVR = + exports.SUSHI_CANFRAX_ANYUSDC = + exports.SUSHI_CANFRAX_CANFXS = + exports.SUSHI_FRAX_USDC_MOONRIVER = + exports.SOLARBEAM_FRAX_MOVR = + exports.SOLARBEAM_FRAX_ROME = + exports.COMPTROLLER = + exports.FRAXSWAP_V2_FRAX_WMOVR = + exports.FRAXSWAP_V1_FRAX_WMOVR = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V1_FRAX_FXS = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.ZENLINK_CANFRAX_WGLMR = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = + exports.FXS = + exports.FRAX = + void 0; +// Canonicals +exports.FRAX = "0x1A93B23281CC1CDE4C4741353F3064709A16197d"; +exports.FXS = "0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98"; +// Farms +// FraxBonds +// FraxFerry +exports.FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = "0x81dbcc69937DAd14e358B1a16Ba7ea047703c404"; +exports.FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = "0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.ZENLINK_CANFRAX_WGLMR = "0xd341D2191bb0F84E5c29cB301deF5753Dab1ac04"; +// FraxlendAndOracles +exports.COMBO_ORACLE = "0x3B56E2DD29e4976B639BAd95044A0852BeeEBF02"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0x212ae4B6e93a735840A431845833261CA9cA76ED"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0x5Ca135cB8527d76e932f34B5145575F9d8cbE08E"; +exports.FRAXSWAP_FACTORY_V2 = "0x7FB05Ca29DAc7F5690E9b5AE0aF0415D579D7CD3"; +exports.FRAXSWAP_ROUTER_V1 = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FRAXSWAP_ROUTER_V2 = "0xD8FC27ec222E8d5172CD63aC453C6Dfb7467a3C7"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +exports.FRAXSWAP_V1_FRAX_FXS = "0x2C803cd6E9a7AdAD813718a4767ECec4F6e0ca90"; +exports.FRAXSWAP_V2_FRAX_FXS = "0x08C81e49D695Ae8F50574144560a301542b05C60"; +exports.FRAXSWAP_V1_FRAX_WMOVR = "0x3Dbb1Fd5E0b50a5905fc24Fc38D8e741C52F782b"; +exports.FRAXSWAP_V2_FRAX_WMOVR = "0x72B7D2Bb0082cC9cDa8db55eca6Ce4dfcc954191"; +// Misc +// Multisigs +exports.COMPTROLLER = "0x2bBbE751E8C36CD6c92767776067f8Dd3A21941f"; +// PoolRelatedTokens +exports.SOLARBEAM_FRAX_ROME = "0x069C2065100b4D3D982383f7Ef3EcD1b95C05894"; +exports.SOLARBEAM_FRAX_MOVR = "0x2cc54b4A3878e36E1C754871438113C1117a3ad7"; +exports.SUSHI_FRAX_USDC_MOONRIVER = "0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3"; +exports.SUSHI_CANFRAX_CANFXS = "0xC5147A6E773343aFE527249a26EF16AFc6a0013F"; +exports.SUSHI_CANFRAX_ANYUSDC = "0x310C4d18640aF4878567c4A31cB9cBde7Cd234A3"; +exports.SUSHI_CANFRAX_WMOVR = "0x756057872D1Ad41C703B68e12701D27874fbe533"; +exports.SUSHI_CANFXS_ANYUSDC = "0xc0EAB66DaDC825c95cA1951A2B02BC56073Fc7B2"; diff --git a/scripts/constants/movement.js b/scripts/constants/movement.js new file mode 100644 index 0000000..d1d7a4a --- /dev/null +++ b/scripts/constants/movement.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.WFRAX = + exports.SFRXUSD = + exports.SFRXETH = + exports.FRXUSD = + exports.FRXETH = + exports.FPI = + void 0; +// Canonicals +exports.FPI = "0x15607151cc023512886f5af24d4f77e6e7a5d6fb8a482dfb56b9c4f5c1fca0b2"; +exports.FRXETH = "0x8645126a60d36e138d435a28875a2aeef253bf80aae22bebcd411ad4251f1585"; +exports.FRXUSD = "0xe4354602aa4311f36240dd57f3f3435ffccdbd0cd2963f1a69da39a2dbcd59b5"; +exports.SFRXETH = "0x80d729c4632bcc6279b7bed2542e01e2cebd34ca9f3f15963c29d1621efc221a"; +exports.SFRXUSD = "0xbf2efbffbbd7083aaf006379d96b866b73bb4eb9684a7504c62feafe670962c2"; +exports.WFRAX = "0x4e4cce8f877d7ad45c896c1823017fe07874f3d8db6e15960eda26e211151300"; +// LayerZero +exports.FPIOFT = "0xadf0ffffa5ee44a94f0c65be05e701951e65e276419f7460286a139d9403e864"; +exports.FRXETHOFT = "0xecb3a766f12981919158fc8ec3b98dd3f8b39a59280e62e80c600cea1b2c0f9c"; +exports.FRXUSDOFT = "0xe067037681385b86d8344e6b7746023604c6ac90ddc997ba3c58396c258ad17b"; +exports.SFRXETHOFT = "0x28b7264258592031a024ed8e1632090648ec53797c269ac91aa0c9ed94268356"; +exports.SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0203aba634a1c9"; +exports.WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c"; +exports.LZ_RECEIVE_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +exports.LZ_SEND_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; +exports.LZ_BLOCK_SEND_LIB = "0x3ca0d187f1938cf9776a0aa821487a650fc7bb2ab1c1d241ba319192aae4afc6"; +// Chain IDs +exports.LZ_CHAIN_ID = 30325; +exports.CHAIN_ID = 0; diff --git a/scripts/constants/optimism.js b/scripts/constants/optimism.js new file mode 100644 index 0000000..1d2bd00 --- /dev/null +++ b/scripts/constants/optimism.js @@ -0,0 +1,119 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = + exports.CURVE_4POOL = + exports.FPI_COMPTROLLER = + exports.COMPTROLLER = + exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = + exports.KYBERSWAP_ELASTIC_ROUTER_V2 = + exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = + exports.KYBERSWAP_ELASTIC_FACTORY_V2 = + exports.FRAXSWAP_V2_FRAX_WETH = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V1_FRAX_WETH = + exports.FRAXSWAP_V1_FRAX_FXS = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = + exports.SFRAX = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +exports.CHAIN_ID = exports.LZ_CHAIN_ID = void 0; +// Canonicals +exports.FRAX = "0x2E3D870790dC77A83DD1d18184Acc7439A53f475"; +exports.FXS = "0x67CCEA5bb16181E7b4109c9c2143c24a1c2205Be"; +exports.FPI = "0xC5d43A94e26fCa47A9b21CF547ae4AA0268670E1"; +exports.FPIS = "0x8368Dca5CE2a4Db530c0F6e535d90B6826428Dee"; +exports.FRXETH = "0x6806411765Af15Bddd26f8f544A34cC40cb9838B"; +exports.SFRXETH = "0x484c2D6e3cDd945a8B2DF735e079178C1036578c"; +exports.SFRAX = "0x2Dd1B4D4548aCCeA497050619965f91f78b3b532"; +// Farms +// FraxBonds +// FraxFerry +exports.FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = "0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = "0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = "0x053F082f3bC0C48B8409970c017b4F2a6f673e16"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = "0xB84E29042Bfb489439949a79aed8a0e156169Ae5"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = "0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = "0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C"; +exports.FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = "0xD1738eB733A636d1b8665f48bC8a24dA889c2562"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxlendAndOracles +exports.COMBO_ORACLE = "0x626eFc448227d794dC8C02ffea6a932bB360f72a"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0xeba66661Afc03aB95ec37383b1BfB724abe14a0F"; +exports.COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = "0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0xBe90FD3CDdaf0D3B8576ffb5E51aDbfD304d0437"; +exports.FRAXSWAP_FACTORY_V2 = "0x67a1412d2D6CbF211bb71F8e851b4393b491B10f"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +exports.FRAXSWAP_ROUTER_V1 = "0xffE66A866B249f5d7C97b4a4c84742A393bC9354"; +exports.FRAXSWAP_ROUTER_V2 = "0xB9A55F455e46e8D717eEA5E47D2c449416A0437F"; +exports.FRAXSWAP_V1_FRAX_FXS = "0x25e2222Bc50E3B2dc945E1b9430F5498107FD3A5"; +exports.FRAXSWAP_V1_FRAX_WETH = "0x0BC2D9B4c3f599BD85789EC3649774076A7D9264"; +exports.FRAXSWAP_V2_FRAX_FXS = "0x9456c020D3A05b159dAB4557535083fBA836c49A"; +exports.FRAXSWAP_V2_FRAX_WETH = "0xCc4Dd8Bc7967D46060bA3fAAA8e525A35625F8b4"; +exports.KYBERSWAP_ELASTIC_FACTORY_V2 = "0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A"; +exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = "0xe222fBE074A436145b255442D919E4E3A6c6a480"; +exports.KYBERSWAP_ELASTIC_ROUTER_V2 = "0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4"; +exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = "0x8Fd8Cb948965d9305999D767A02bf79833EADbB3"; +// Misc +// Multisigs +exports.COMPTROLLER = "0x0dF840dCbf1229262A4125C1fc559bd338eC9491"; +exports.FPI_COMPTROLLER = "0x8Acc8819cBB632dE4a8E732f08b9E578D2A8F635"; +// PoolRelatedTokens +exports.CURVE_4POOL = "0x3da3153E26A230d918bb9F9428A8d60349B73379"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC_OPTIMISM = "0x97cB76cbb84Aa35deaF1dAC3101a506588B6c197"; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x31D982ebd82Ad900358984bd049207A4c2468640"; +exports.REMOTEMINTREDEEMHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x3c4962Ff6258dcfCafD23a814237B7d6Eb712063"; +exports.LZ_SEND_LIB_302 = "0x1322871e4ab09Bc7f5717189434f97bBD9546e95"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30111; +exports.CHAIN_ID = 10; diff --git a/scripts/constants/plumephoenix.js b/scripts/constants/plumephoenix.js new file mode 100644 index 0000000..802b1d6 --- /dev/null +++ b/scripts/constants/plumephoenix.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; +exports.REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0xC1b15d3B262bEeC0e3565C11C9e0F6134BdaCB36"; +exports.LZ_RECEIVE_LIB_302 = "0x5B19bd330A84c049b62D5B0FC2bA120217a18C1C"; +exports.LZ_SEND_LIB_302 = "0xFe7C30860D01e28371D40434806F4A8fcDD3A098"; +exports.LZ_BLOCK_SEND_LIB = "0x9e611db91ade3312534064ae6ae700f5b531844c"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30370; +exports.CHAIN_ID = 98866; diff --git a/scripts/constants/polygon-zkevm.js b/scripts/constants/polygon-zkevm.js new file mode 100644 index 0000000..368f90b --- /dev/null +++ b/scripts/constants/polygon-zkevm.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.CREWMEMBER = + exports.FIRST_OFFICER = + exports.CAPTAIN = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = + exports.SFRAX = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +// Canonicals +exports.FRAX = "0xFf8544feD5379D9ffa8D47a74cE6b91e632AC44D"; +exports.FXS = "0x6b856a14CeA1d7dCfaF80fA6936c0b75972cCacE"; +exports.FPI = "0x7E5845b1bFc9e6620893e48346bdB8541995a8D9"; +exports.FPIS = "0xdE7df9036801676aF0cB73661d93a098c0085fba"; +exports.FRXETH = "0xCf7eceE185f19e2E970a301eE37F93536ed66179"; +exports.SFRXETH = "0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04"; +exports.SFRAX = "0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3"; +// Farms +// FraxBonds +// FraxFerry +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = "0xEaBd7625056bbD2c260f90D0B08759C69d971a5B"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = "0x96720C1E893bB69C14291d8a85475ED9BC484b26"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = "0xA31001fbe938C520C27204b984817d998bAeA885"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = "0x3d1bc21F8991091538FfEf535Fe96A449794461C"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = "0xA711F85672899331900359e5b89848A30BeEBDBe"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = "0x4DB406906835ca0B28bFbef344c7d2C707BC4947"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = "0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6"; +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +// FraxlendAndOracles +// Fraxswap +// Misc +// Multisigs +exports.COMBO_ORACLE = "0x030BD43af99cb72B51dA233A73F7697Cd2461C0b"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0x967d0c5f7362A54b156cf2831Fb17dA8681FAD7D"; +// PoolRelatedTokens +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; +exports.REMOTEMINTREDEEMHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; diff --git a/scripts/constants/polygon.js b/scripts/constants/polygon.js new file mode 100644 index 0000000..8ccbb13 --- /dev/null +++ b/scripts/constants/polygon.js @@ -0,0 +1,129 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.HOP_LP_USDC = + exports.FRAX3POOL = + exports.DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = + exports.DYSTOPIA_STABLEV1_AMM___USDC_FRAX = + exports.CURVE4POOL = + exports.FPI_COMPTROLLER = + exports.COMPTROLLER = + exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = + exports.KYBERSWAP_ELASTIC_ROUTER_V2 = + exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = + exports.KYBERSWAP_ELASTIC_FACTORY_V2 = + exports.FRAXSWAP_V2_FRAX_WMATIC = + exports.FRAXSWAP_V2_FRAX_FXS = + exports.FRAXSWAP_V1_FRAX_WMATIC = + exports.FRAXSWAP_V1_FRAX_FXS = + exports.FRAXSWAP_ROUTER_V2 = + exports.FRAXSWAP_ROUTER_V1 = + exports.FRAXSWAP_ROUTER_MULTI_HOP = + exports.FRAXSWAP_FACTORY_V2 = + exports.FRAXSWAP_FACTORY_V1 = + exports.COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = + exports.COMBO_ORACLE_UNIV2_UNIV3 = + exports.COMBO_ORACLE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = + exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = + exports.FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = + exports.FIRST_OFFICER = + exports.FERRY_TO_ARBITRUM = + exports.DUMMY_TKN = + exports.CREWMEMBER = + exports.CAPTAIN = + exports.MSTABLE_FRAX_MUSD = + exports.KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = + exports.BALANCER_FRXETH_BB_A_WETH_GAUGE = + exports.SFRXETH = + exports.FRXETH = + exports.FPIS = + exports.FPI = + exports.FXS = + exports.FRAX = + void 0; +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + void 0; +// Canonicals +exports.FRAX = "0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89"; +exports.FXS = "0x1a3acf6D19267E2d3e7f898f42803e90C9219062"; +exports.FPI = "0x411C9cDd0fBBa243488988f2A3005D6fFf126661"; +exports.FPIS = "0x84F6FCeb8E4A3EB87768C4a111273C17b54D4411"; +exports.FRXETH = "0xEe327F889d5947c1dc1934Bb208a1E792F953E96"; +exports.SFRXETH = "0x6d1FdBB266fCc09A16a22016369210A15bb95761"; +// Farms +exports.BALANCER_FRXETH_BB_A_WETH_GAUGE = "0x617430FF1C74faff0378726627F26a8704d03c8d"; +exports.KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = "0x0363a32D18c25a3FD19a0d00B02106C03d8b8182"; +exports.MSTABLE_FRAX_MUSD = "0xc425Fd9Ed3C892d849C9E1a971516da1C1B29696"; +// FraxBonds +// FraxFerry +exports.CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.DUMMY_TKN = "0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89"; +exports.FERRY_TO_ARBITRUM = "0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0"; +exports.FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +exports.FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = "0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = "0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = "0x6f71Ea0e9679389854010eE48a7D237cB430DBA4"; +exports.FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = "0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63"; +// FraxlendAndOracles +exports.COMBO_ORACLE = "0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3"; +exports.COMBO_ORACLE_UNIV2_UNIV3 = "0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020"; +exports.COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = "0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F"; +// Fraxswap +exports.FRAXSWAP_FACTORY_V1 = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +exports.FRAXSWAP_FACTORY_V2 = "0x54F454D747e037Da288dB568D4121117EAb34e79"; +exports.FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +exports.FRAXSWAP_ROUTER_V1 = "0x9bc2152fD37b196C0Ff3C16f5533767c9A983971"; +exports.FRAXSWAP_ROUTER_V2 = "0xE52D0337904D4D0519EF7487e707268E1DB6495F"; +exports.FRAXSWAP_V1_FRAX_FXS = "0x60AC6d228ffeeefF423879baA02091558e6480dc"; +exports.FRAXSWAP_V1_FRAX_WMATIC = "0x4F7267Af6DB7B284dF74BEA9e35402987D8C72a7"; +exports.FRAXSWAP_V2_FRAX_FXS = "0xd2105fE5f1B631daf2398e918549758Cd181cA7C"; +exports.FRAXSWAP_V2_FRAX_WMATIC = "0xA964b92C690f0B8efad5B46a278A84bD0EF8AC01"; +exports.KYBERSWAP_ELASTIC_FACTORY_V2 = "0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A"; +exports.KYBERSWAP_ELASTIC_POS_MGR_V2 = "0xe222fBE074A436145b255442D919E4E3A6c6a480"; +exports.KYBERSWAP_ELASTIC_ROUTER_V2 = "0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4"; +exports.KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = "0x8Fd8Cb948965d9305999D767A02bf79833EADbB3"; +// Misc +// Multisigs +exports.COMPTROLLER = "0xDCB5A4b6Ee39447D700F4FA3303B1d1c25Ea9cA7"; +exports.FPI_COMPTROLLER = "0x4EBd698a5dB2580587EE0000929128190524006c"; +// PoolRelatedTokens +exports.CURVE4POOL = "0xe4ae3Ee65bb687045e401827b404FeE34BE4BA53"; +exports.DYSTOPIA_STABLEV1_AMM___USDC_FRAX = "0x53227c83a98Ba1035FEd912Da6cE26a0c11C7C66"; +exports.DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = "0xfC2e89aabD257471a461dd506188609B2Bec53Fa"; +exports.FRAX3POOL = "0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac"; +exports.HOP_LP_USDC = "0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A"; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C"; +exports.REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x1322871e4ab09Bc7f5717189434f97bBD9546e95"; +exports.LZ_SEND_LIB_302 = "0x6c26c61a97006888ea9E4FA36584c7df57Cd9dA3"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30109; +exports.CHAIN_ID = 137; diff --git a/scripts/constants/scroll.js b/scripts/constants/scroll.js new file mode 100644 index 0000000..90780d8 --- /dev/null +++ b/scripts/constants/scroll.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x93cDc5d29293Cb6983f059Fec6e4FFEb656b6a62"; +exports.FRXETHOFT = "0x0097Cf8Ee15800d4f80da8A6cE4dF360D9449Ed5"; +exports.FRXUSDOFT = "0x397F939C3b91A74C321ea7129396492bA9Cdce82"; +exports.SFRXETHOFT = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; +exports.SFRXUSDOFT = "0xC6B2BE25d65760B826D0C852FD35F364250619c2"; +exports.WFRAXOFT = "0x879ba0efe1ab0119fefa745a21585fa205b07907"; +// FraxtalLZHop +exports.REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; +exports.REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x8363302080e711E0CAb978C081b9e69308d49808"; +exports.LZ_SEND_LIB_302 = "0x9BbEb2B2184B9313Cf5ed4a4DDFEa2ef62a2a03B"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; +// Chain IDs +exports.LZ_CHAIN_ID = 30214; +exports.CHAIN_ID = 534352; diff --git a/scripts/constants/sei.js b/scripts/constants/sei.js new file mode 100644 index 0000000..b21b7da --- /dev/null +++ b/scripts/constants/sei.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x3a6F28e8DDD232B02C72C491Bd1626F69D2fb329"; +exports.REMOTEMINTREDEEMHOP = "0x0255a172d0a060F2bEab3e7c12334dD73cCC26ba"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30280; +exports.CHAIN_ID = 1329; diff --git a/scripts/constants/solana.js b/scripts/constants/solana.js new file mode 100644 index 0000000..c6cec7f --- /dev/null +++ b/scripts/constants/solana.js @@ -0,0 +1,84 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.WFRAX_OFT_STORE = + exports.SFRXUSD_OFT_STORE = + exports.SFRXETH_OFT_STORE = + exports.FRXUSD_OFT_STORE = + exports.FRXETH_OFT_STORE = + exports.FPI_OFT_STORE = + exports.WFRAX_ESCROW = + exports.SFRXUSD_ESCROW = + exports.SFRXETH_ESCROW = + exports.FRXUSD_ESCROW = + exports.FRXETH_ESCROW = + exports.FPI_ESCROW = + exports.WFRAX_MINT_AUTHORITY = + exports.SFRXUSD_MINT_AUTHORITY = + exports.SFRXETH_MINT_AUTHORITY = + exports.FRXUSD_MINT_AUTHORITY = + exports.FRXETH_MINT_AUTHORITY = + exports.FPI_MINT_AUTHORITY = + exports.WFRAX = + exports.SFRXUSD = + exports.SFRXETH = + exports.FRXUSD = + exports.FRXETH = + exports.FPI = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + exports.OFT_PROGRAM_ID = + void 0; +// LayerZero +exports.OFT_PROGRAM_ID = "E1ht9dUh1ZkgWWRRPCuN3kExEoF2FXiyADXeN3XyMHaQ"; +exports.FPIOFT = "0xd3cee058686107cc51844f331ee213a33142ab299b5ce473c1cf3a8ddaa721a0"; +exports.FRXETHOFT = "0x38dd9e11bbf63835dc61d3cbf259f4221f5987ac92982c96609b99634662dfb3"; +exports.FRXUSDOFT = "0x5e208a73d5bb1c78e9dbf53badd7299afd6bee9acacdcd4fd668833e53c538ad"; +exports.SFRXETHOFT = "0xbf2f1fc27286a43f25b05bd843a74a5478c4246343fa90c1fcb641a1caf46c61"; +exports.SFRXUSDOFT = "0x8602f005ca65b6da46a3c6ce66ecd1d15be911ca650d5f418d369df184b584cf"; +exports.WFRAXOFT = "0x4939035f8dd13d15a9386e28b6705519aa6f488791323466a3c0116a201e51aa"; +// Token Mints +exports.FPI = "8xKX8CRH9LxriRUNCPittu1jiovyQQr4EonWQjHZjWyH"; +exports.FRXETH = "5sDrwVNiHMM2jC78hRBH1CtysDQYiNKihubgW2zNu8tf"; +exports.FRXUSD = "GzX1ireZDU865FiMaKrdVB1H6AE8LAqWYCg6chrMrfBw"; +exports.SFRXETH = "58zpC9acE6F4FBtd88L64NoWHJcmzLsQSy5bjz35Ydgv"; +exports.SFRXUSD = "DUvWQMyASSkLNJFwsMDA4kwxEvmfaqpPGrvUVKtitX45"; +exports.WFRAX = "zZbQjiRg8uSxZaPu996XuviuZeSY6nsaMuutKZQBJga"; +// Mint Authorities +exports.FPI_MINT_AUTHORITY = "F3YLUzqvJndUpypxUgxsFZQFHD3KUNC5QrkpNJKLBGje"; +exports.FRXETH_MINT_AUTHORITY = "Ea6GvxUc4xh4LoPgJXePhKFsUcuW8G2RASdNYyuoohxr"; +exports.FRXUSD_MINT_AUTHORITY = "52e8UiVqx28VEqyiEqMbMVehFC3LheNGqnA9m82XF6GK"; +exports.SFRXETH_MINT_AUTHORITY = "BVQcQygw2f6nrDu6HNTfQ1ECjRRx8nm2CnBANt4yqqvp"; +exports.SFRXUSD_MINT_AUTHORITY = "EK2qrg4ggSVmxNDU3qSvVcKx7HYpmNT3kWbLHMtL5vaV"; +exports.WFRAX_MINT_AUTHORITY = "CMCA6bzoCH4KcDZtwCviFYF2c5tasLHjEhX8ThMeCpqk"; +// Escrows +exports.FPI_ESCROW = "EPmy89v6at8rxrV2n1E3xZP74MzaGi7BWdFNiA2xW64Z"; +exports.FRXETH_ESCROW = "H17Anco2cnEtSyfSwt4XKhsU7nbFyP57qqXhsff39UW3"; +exports.FRXUSD_ESCROW = "84AFSH3TSzyjbEFJX9z8sjpV7npTWq7f8ZR5zkLG22hX"; +exports.SFRXETH_ESCROW = "AmjMhAYdCz2crdKYG4U9WMPT7ccHsXSx12qJ5TTjoHYq"; +exports.SFRXUSD_ESCROW = "8vRGMiktFX3VhQRfwkaWsAG3KHHzVnRYEKkDKEYzgmCa"; +exports.WFRAX_ESCROW = "FwmRDpyFBLkdk7BLRkWF5p5DqwBX2LzVTARGkG5haHbV"; +// OFT Stores +exports.FPI_OFT_STORE = "FFozEKoFQ1CZD6Kn7bpwAxaWhK1jEA76pjucvBBHf9ZH"; +exports.FRXETH_OFT_STORE = "4pyqBQFhzsuL7ED76x3AyzT4bCVpMpQWXhS1LqEsfQtz"; +exports.FRXUSD_OFT_STORE = "7LS6y37WXXCyBHkBU6zVpiqaqbkXLr4P85ZhQi3eonSp"; +exports.SFRXETH_OFT_STORE = "DsJYjDF5yVSopMC15q9W42v833MhWGhCxcU2J39oS3wN"; +exports.SFRXUSD_OFT_STORE = "A28EK6j1euK4e6taP1KLFpGEoR1mDpXR4vtfiyCE1Nxv"; +exports.WFRAX_OFT_STORE = "5vqBiG7nxNnoCst8mEVVS6ax7C1ypEEenPfcZ4kLgj9B"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "76y77prsiCMvXMjuoZ5VRrhG5qYBrUMYTE5WgHqgjEn6"; +exports.LZ_RECEIVE_LIB_302 = "7a4WjyR8VZ7yZz5XJAKm39BUGn5iT9CKcv2pmG9tdXVH"; +exports.LZ_SEND_LIB_302 = "7a4WjyR8VZ7yZz5XJAKm39BUGn5iT9CKcv2pmG9tdXVH"; +exports.LZ_BLOCK_SEND_LIB = "2XrYqmhBMPJgDsb4SVbjV1PnJBprurd5bzRCkHwiFCJB"; +// Chain IDs +exports.LZ_CHAIN_ID = 30168; +exports.CHAIN_ID = 0; diff --git a/scripts/constants/sonic.js b/scripts/constants/sonic.js new file mode 100644 index 0000000..03bde42 --- /dev/null +++ b/scripts/constants/sonic.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23"; +exports.REMOTEMINTREDEEMHOP = "0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30332; +exports.CHAIN_ID = 146; diff --git a/scripts/constants/stable.js b/scripts/constants/stable.js new file mode 100644 index 0000000..4fafc99 --- /dev/null +++ b/scripts/constants/stable.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; +exports.REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +exports.LZ_RECEIVE_LIB_302 = "0x15e51701F245F6D5bd0FEE87bCAf55B0841451B3"; +exports.LZ_SEND_LIB_302 = "0x37aaaf95887624a363effB7762D489E3C05c2a02"; +exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30396; +exports.CHAIN_ID = 988; diff --git a/scripts/constants/unichain.js b/scripts/constants/unichain.js new file mode 100644 index 0000000..bc11ac0 --- /dev/null +++ b/scripts/constants/unichain.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; +exports.REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30320; +exports.CHAIN_ID = 130; diff --git a/scripts/constants/worldchain.js b/scripts/constants/worldchain.js new file mode 100644 index 0000000..2db01d6 --- /dev/null +++ b/scripts/constants/worldchain.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x938d99A81814f66b01010d19DDce92A633441699"; +exports.REMOTEMINTREDEEMHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; +exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; +exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30319; +exports.CHAIN_ID = 480; diff --git a/scripts/constants/xlayer.js b/scripts/constants/xlayer.js new file mode 100644 index 0000000..48ceb72 --- /dev/null +++ b/scripts/constants/xlayer.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +exports.FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +exports.FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +exports.SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +exports.SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +// FraxtalLZHop +exports.REMOTEHOP = "0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396"; +exports.REMOTEMINTREDEEMHOP = "0x45c6852a5188ce1905567ea83454329bd4982007"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; +exports.LZ_RECEIVE_LIB_302 = "0x2367325334447C5E1E0f1b3a6fB947b262F58312"; +exports.LZ_SEND_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; +exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; +exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +// Chain IDs +exports.LZ_CHAIN_ID = 30274; +exports.CHAIN_ID = 196; diff --git a/scripts/constants/zksync.js b/scripts/constants/zksync.js new file mode 100644 index 0000000..a6df7fb --- /dev/null +++ b/scripts/constants/zksync.js @@ -0,0 +1,37 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.CHAIN_ID = + exports.LZ_CHAIN_ID = + exports.FRAX_PROXY_ADMIN = + exports.LZ_BLOCK_SEND_LIB = + exports.LZ_SEND_LIB_302 = + exports.LZ_RECEIVE_LIB_302 = + exports.LZ_ENDPOINT = + exports.REMOTEMINTREDEEMHOP = + exports.REMOTEHOP = + exports.WFRAXOFT = + exports.SFRXUSDOFT = + exports.SFRXETHOFT = + exports.FRXUSDOFT = + exports.FRXETHOFT = + exports.FPIOFT = + void 0; +// LayerZero +exports.FPIOFT = "0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E"; +exports.FRXETHOFT = "0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440"; +exports.FRXUSDOFT = "0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d"; +exports.SFRXETHOFT = "0xFD78FD3667DeF2F1097Ed221ec503AE477155394"; +exports.SFRXUSDOFT = "0x9F87fbb47C33Cd0614E43500b9511018116F79eE"; +exports.WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; +// FraxtalLZHop +exports.REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; +exports.REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; +// LayerZeroInfra +exports.LZ_ENDPOINT = "0xd07C30aF3Ff30D96BDc9c6044958230Eb797DDBF"; +exports.LZ_RECEIVE_LIB_302 = "0x04830f6deCF08Dec9eD6C3fCAD215245B78A59e1"; +exports.LZ_SEND_LIB_302 = "0x07fD0e370B49919cA8dA0CE842B8177263c0E12c"; +exports.LZ_BLOCK_SEND_LIB = "0x0fddfc529b5912e1cbe38ccedf8e226566e596d3"; +exports.FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; +// Chain IDs +exports.LZ_CHAIN_ID = 30165; +exports.CHAIN_ID = 324; diff --git a/scripts/generateConstants.js b/scripts/generateConstants.js new file mode 100644 index 0000000..bcff438 --- /dev/null +++ b/scripts/generateConstants.js @@ -0,0 +1,185 @@ +"use strict"; +var __createBinding = + (this && this.__createBinding) || + (Object.create + ? function (o, m, k, k2) { + if (k2 === undefined) k2 = k; + var desc = Object.getOwnPropertyDescriptor(m, k); + if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { + desc = { + enumerable: true, + get: function () { + return m[k]; + }, + }; + } + Object.defineProperty(o, k2, desc); + } + : function (o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; + }); +var __setModuleDefault = + (this && this.__setModuleDefault) || + (Object.create + ? function (o, v) { + Object.defineProperty(o, "default", { enumerable: true, value: v }); + } + : function (o, v) { + o["default"] = v; + }); +var __importStar = + (this && this.__importStar) || + (function () { + var ownKeys = function (o) { + ownKeys = + Object.getOwnPropertyNames || + function (o) { + var ar = []; + for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k; + return ar; + }; + return ownKeys(o); + }; + return function (mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) + for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]); + __setModuleDefault(result, mod); + return result; + }; + })(); +var __importDefault = + (this && this.__importDefault) || + function (mod) { + return mod && mod.__esModule ? mod : { default: mod }; + }; +Object.defineProperty(exports, "__esModule", { value: true }); +const fs = __importStar(require("fs/promises")); +const path_1 = __importDefault(require("path")); +const constants = __importStar(require("./constants")); +const networkPrefixes = { + Abstract: "ABS", + Aptos: "APT", + Arbitrum: "ARBI", + Aurora: "AUR", + Avalanche: "AVAX", + BASE: "BASE", + BERA: "BERA", + BLAST: "BLAST", + BSC: "BSC", + Ethereum: "ETH", + Fantom: "FTM", + FraxtalL1Devnet: "FXTL_L1_DN", + FraxtalL2Devnet: "FXTL_L2_DN", + FraxtalL2: "FXTL", + FraxtalTestnetL1: "FXTL_TN_L1", + FraxtalTestnetL2: "FXTL_TN_L2", + Holesky: "HOLESKY", + Hyperliquid: "HYPE", + Katana: "KTN", + Mainnet: "ETH", + Moonbeam: "MNBM", + Moonriver: "MOVR", + Optimism: "OPTI", + Polygon: "POLY", + PolygonzkEVM: "POLY_ZKEVM", + Scroll: "SCROLL", + Sei: "SEI", + Solana: "SOL", + Sonic: "SONIC", + Unichain: "UNI", + Worldchain: "WRLD", + Linea: "LINEA", + Zksync: "ZKSYNC", +}; +const REMOVE_DUPLICATE_LABELS = false; +async function main() { + // Get all the network names + const networks = Object.keys(constants); + // Prepare seen/duplicate values + const seenValues = []; + // Generate the files + for (let n = 0; n < networks.length; n++) { + const networkName = networks[n]; + const outputString = await handleSingleNetwork(networkName, constants[networkName], seenValues); + const finalString = + `// SPDX-License-Identifier: ISC +pragma solidity >=0.8.0; + +// **NOTE** Generated code, do not modify. Run 'npm run generate:constants'. + +import { TestBase } from "forge-std/Test.sol"; + + ` + outputString; + await fs.writeFile(path_1.default.resolve("src/contracts/chain-constants", `${networkName}.sol`), finalString); + } +} +async function handleSingleNetwork(networkName, constants, seenValues) { + let numberValues = []; + const constantString = Object.entries(constants) + .map(([key, value]) => { + if (typeof value === "string") { + // Determine whether it is an address or a string + if (value.startsWith("0x")) { + return ` address internal constant ${key} = ${value};`; + } + return ` string internal constant ${key} = "${value}";`; + } else { + // number + // Note the value is a number + numberValues.push(value); + return ` uint256 internal constant ${key} = ${value};`; + } + }) + .join("\n"); + // Remove certain values from being labeled + let constantsToLabel = {}; + Object.entries(constants).forEach(([key, value]) => { + // Check if the value has been labeled already + const alreadySeen = REMOVE_DUPLICATE_LABELS ? seenValues.includes(value) : false; + // Check if the value is a number + const isANumber = numberValues.includes(value); + // Check for rejects + if (alreadySeen) { + // Do not label already-seen addresses (optional) + console.log(`Removing duplicate value ${value}`); + } else if (isANumber) { + // Do not label numbers + console.log(`Removing number value ${value}`); + } else { + // Otherwise, it can be labeled + constantsToLabel[key] = value; + } + }); + // Generate the labels for the entries + const labelStrings = Object.entries(constantsToLabel) + .map(([key, value]) => { + // Add the value to the seen list + seenValues.push(value); + // Return the string + return ` vm.label(${value}, "Constants.${networkPrefixes[networkName]}_${key}");`; + }) + .join("\n"); + const contractString = `library ${networkName} { +${constantString} +} +`; + // if (networkName == "Mainnet") { + const constantsHelper = ` +abstract contract AddressHelper${networkName} is TestBase { + constructor() { + labelConstants(); + } + + function labelConstants() public { +${labelStrings} + } +} +`; + return contractString + constantsHelper; + // } + // return contractString; +} +main(); From 86d33fdd08bf2a4d12fe2fe4579ae882e5ff6609 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Wed, 11 Feb 2026 01:46:10 +0000 Subject: [PATCH 14/27] refactor: remove LZ infra constants from chain files Remove LZ_ENDPOINT, LZ_SEND_LIB_302, LZ_RECEIVE_LIB_302, LZ_BLOCK_SEND_LIB, LZ_CHAIN_ID, and CHAIN_ID from all chain constant files. These values are now sourced at runtime from the LayerZero metadata API. --- scripts/constants/abstract.ts | 8 -------- scripts/constants/aptos.ts | 8 -------- scripts/constants/arbitrum.ts | 8 -------- scripts/constants/aurora.ts | 8 -------- scripts/constants/avalanche.ts | 8 -------- scripts/constants/base.ts | 8 -------- scripts/constants/bera.ts | 8 -------- scripts/constants/blast.ts | 8 -------- scripts/constants/bsc.ts | 8 -------- scripts/constants/ethereum.ts | 8 -------- scripts/constants/fraxtal-l2.ts | 8 -------- scripts/constants/hyperliquid.ts | 8 -------- scripts/constants/ink.ts | 8 -------- scripts/constants/katana.ts | 8 -------- scripts/constants/linea.ts | 8 -------- scripts/constants/mode.ts | 8 -------- scripts/constants/monad.ts | 8 -------- scripts/constants/movement.ts | 8 -------- scripts/constants/optimism.ts | 8 -------- scripts/constants/plumephoenix.ts | 8 -------- scripts/constants/polygon.ts | 8 -------- scripts/constants/scroll.ts | 8 -------- scripts/constants/sei.ts | 8 -------- scripts/constants/solana.ts | 8 -------- scripts/constants/sonic.ts | 8 -------- scripts/constants/stable.ts | 8 -------- scripts/constants/unichain.ts | 8 -------- scripts/constants/worldchain.ts | 8 -------- scripts/constants/xlayer.ts | 8 -------- scripts/constants/zksync.ts | 8 -------- 30 files changed, 240 deletions(-) diff --git a/scripts/constants/abstract.ts b/scripts/constants/abstract.ts index 1049ffb..c6f233f 100644 --- a/scripts/constants/abstract.ts +++ b/scripts/constants/abstract.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x5c6cfF4b7C49805F8295Ff73C204ac83f3bC4AE7"; -export const LZ_RECEIVE_LIB_302 = "0x9d799c1935c51CA399e6465Ed9841DEbCcEc413E"; -export const LZ_SEND_LIB_302 = "0x166CAb679EBDB0853055522D3B523621b94029a1"; -export const LZ_BLOCK_SEND_LIB = "0x3258287147fb7887d8a643006e26e19368057377"; export const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; - -// Chain IDs -export const LZ_CHAIN_ID = 30324; -export const CHAIN_ID = 2741; diff --git a/scripts/constants/aptos.ts b/scripts/constants/aptos.ts index b01c985..bca2b28 100644 --- a/scripts/constants/aptos.ts +++ b/scripts/constants/aptos.ts @@ -15,11 +15,3 @@ export const SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0 export const WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; // LayerZeroInfra -export const LZ_ENDPOINT = "0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c"; -export const LZ_RECEIVE_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; -export const LZ_SEND_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; -export const LZ_BLOCK_SEND_LIB = "0x3ca0d187f1938cf9776a0aa821487a650fc7bb2ab1c1d241ba319192aae4afc6"; - -// Chain IDs -export const LZ_CHAIN_ID = 30108; -export const CHAIN_ID = 0; diff --git a/scripts/constants/arbitrum.ts b/scripts/constants/arbitrum.ts index 230249f..f35b906 100644 --- a/scripts/constants/arbitrum.ts +++ b/scripts/constants/arbitrum.ts @@ -164,12 +164,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A"; export const REMOTEMINTREDEEMHOP = "0xa46A266dCBf199a71532c76967e200994C5A0D6d"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x7B9E184e07a6EE1aC23eAe0fe8D6Be2f663f05e6"; -export const LZ_SEND_LIB_302 = "0x975bcD720be66659e3EB3C0e4F1866a3020E493A"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30110; -export const CHAIN_ID = 42161; diff --git a/scripts/constants/aurora.ts b/scripts/constants/aurora.ts index 7237114..701e05b 100644 --- a/scripts/constants/aurora.ts +++ b/scripts/constants/aurora.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x53e36C8380Ff62D7964BFa4868A0045E58A52344"; export const REMOTEMINTREDEEMHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x000CC1A759bC3A15e664Ed5379E321Be5de1c9B6"; -export const LZ_SEND_LIB_302 = "0x1aCe9DD1BC743aD036eF2D92Af42Ca70A1159df5"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30211; -export const CHAIN_ID = 1313161554; diff --git a/scripts/constants/avalanche.ts b/scripts/constants/avalanche.ts index 6eddef1..a5a916a 100644 --- a/scripts/constants/avalanche.ts +++ b/scripts/constants/avalanche.ts @@ -74,12 +74,4 @@ export const REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0xbf3521d309642FA9B1c91A08609505BA09752c61"; -export const LZ_SEND_LIB_302 = "0x197D1333DEA5Fe0D6600E9b396c7f1B1cFCc558a"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30106; -export const CHAIN_ID = 43114; diff --git a/scripts/constants/base.ts b/scripts/constants/base.ts index 6ee98bb..fc6f4af 100644 --- a/scripts/constants/base.ts +++ b/scripts/constants/base.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x0CEAC003B0d2479BebeC9f4b2EBAd0a803759bbf"; export const REMOTEHOP = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; export const REMOTEMINTREDEEMHOP = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0xc70AB6f32772f59fBfc23889Caf4Ba3376C84bAf"; -export const LZ_SEND_LIB_302 = "0xB5320B0B3a13cC860893E2Bd79FCd7e13484Dda2"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0xF59C41A57AB4565AF7424F64981523DfD7A453c5"; - -// Chain IDs -export const LZ_CHAIN_ID = 30184; -export const CHAIN_ID = 8453; diff --git a/scripts/constants/bera.ts b/scripts/constants/bera.ts index 97a8cb6..7d2c84e 100644 --- a/scripts/constants/bera.ts +++ b/scripts/constants/bera.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30362; -export const CHAIN_ID = 80094; diff --git a/scripts/constants/blast.ts b/scripts/constants/blast.ts index 21b0863..d015f59 100644 --- a/scripts/constants/blast.ts +++ b/scripts/constants/blast.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0xe93Cb38f97469eac2f284a87813D0d701b28E58e"; export const REMOTEMINTREDEEMHOP = "0x85b1714b25f40FD5025423124c076476073180b3"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x377530cdA84DFb2673bF4d145DCF0C4D7fdcB5b6"; -export const LZ_SEND_LIB_302 = "0xc1B621b18187F74c8F6D52a6F709Dd2780C09821"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30243; -export const CHAIN_ID = 81457; diff --git a/scripts/constants/bsc.ts b/scripts/constants/bsc.ts index 7a0075b..c68be6e 100644 --- a/scripts/constants/bsc.ts +++ b/scripts/constants/bsc.ts @@ -69,12 +69,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; export const REMOTEMINTREDEEMHOP = "0xdee45510b42Cb0678C8A61D043C698aF66b0d852"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0xB217266c3A98C8B2709Ee26836C98cf12f6cCEC1"; -export const LZ_SEND_LIB_302 = "0x9F8C645f2D0b2159767Bd6E0839DE4BE49e823DE"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30102; -export const CHAIN_ID = 56; diff --git a/scripts/constants/ethereum.ts b/scripts/constants/ethereum.ts index 7487c9f..ba67f2f 100644 --- a/scripts/constants/ethereum.ts +++ b/scripts/constants/ethereum.ts @@ -19,12 +19,4 @@ export const WFRAXOFT = "0x04ACaF8D2865c0714F79da09645C13FD2888977f"; export const REMOTEHOP = "0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E"; export const REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0xc02Ab410f0734EFa3F14628780e6e695156024C2"; -export const LZ_SEND_LIB_302 = "0xbB2Ea70C9E858123480642Cf96acbcCE1372dCe1"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30101; -export const CHAIN_ID = 1; diff --git a/scripts/constants/fraxtal-l2.ts b/scripts/constants/fraxtal-l2.ts index 9524369..3cc3481 100644 --- a/scripts/constants/fraxtal-l2.ts +++ b/scripts/constants/fraxtal-l2.ts @@ -197,12 +197,4 @@ export const WFRAXOFT = "0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A"; export const FRAXTALHOP = "0x2A2019b30C157dB6c1C01306b8025167dBe1803B"; export const FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x8bC1e36F015b9902B54b1387A4d733cebc2f5A4e"; -export const LZ_SEND_LIB_302 = "0x377530cdA84DFb2673bF4d145DCF0C4D7fdcB5b6"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30255; -export const CHAIN_ID = 252; diff --git a/scripts/constants/hyperliquid.ts b/scripts/constants/hyperliquid.ts index f06f463..b965ff5 100644 --- a/scripts/constants/hyperliquid.ts +++ b/scripts/constants/hyperliquid.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; export const REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x3A73033C0b1407574C76BdBAc67f126f6b4a9AA9"; -export const LZ_RECEIVE_LIB_302 = "0x7cacBe439EaD55fa1c22790330b12835c6884a91"; -export const LZ_SEND_LIB_302 = "0xfd76d9CB0Bac839725aB79127E7411fe71b1e3CA"; -export const LZ_BLOCK_SEND_LIB = "0xf540d892bc671f08e0b1c5b61185c53c2211e8f7"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30367; -export const CHAIN_ID = 999; diff --git a/scripts/constants/ink.ts b/scripts/constants/ink.ts index 3b4a470..55de4e4 100644 --- a/scripts/constants/ink.ts +++ b/scripts/constants/ink.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; // LayerZeroInfra -export const LZ_ENDPOINT = "0xca29f3A6f966Cb2fc0dE625F8f325c0C46dbE958"; -export const LZ_RECEIVE_LIB_302 = "0x473132bb594caEF281c68718F4541f73FE14Dc89"; -export const LZ_SEND_LIB_302 = "0x76111DE813F83AAAdBD62773Bf41247634e2319a"; -export const LZ_BLOCK_SEND_LIB = "0x796862c4849662bfc30fe7559780923d519d3192"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30339; -export const CHAIN_ID = 57073; diff --git a/scripts/constants/katana.ts b/scripts/constants/katana.ts index 4c6ffbd..2f9c782 100644 --- a/scripts/constants/katana.ts +++ b/scripts/constants/katana.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c"; export const REMOTEMINTREDEEMHOP = "0xF6f45CCB5E85D1400067ee66F9e168f83e86124E"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30375; -export const CHAIN_ID = 747474; diff --git a/scripts/constants/linea.ts b/scripts/constants/linea.ts index 0abdf1e..1faa00a 100644 --- a/scripts/constants/linea.ts +++ b/scripts/constants/linea.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5"; export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0xE22ED54177CE1148C557de74E4873619e6c6b205"; -export const LZ_SEND_LIB_302 = "0x32042142DD551b4EbE17B6FEd53131dd4b4eEa06"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; - -// Chain IDs -export const LZ_CHAIN_ID = 30183; -export const CHAIN_ID = 59144; diff --git a/scripts/constants/mode.ts b/scripts/constants/mode.ts index fd3e07a..7deb5ce 100644 --- a/scripts/constants/mode.ts +++ b/scripts/constants/mode.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x486cb4788f1be7cdef9301a7a637b451df3cf262"; export const REMOTEMINTREDEEMHOP = "0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0xc1B621b18187F74c8F6D52a6F709Dd2780C09821"; -export const LZ_SEND_LIB_302 = "0x2367325334447C5E1E0f1b3a6fB947b262F58312"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30260; -export const CHAIN_ID = 34443; diff --git a/scripts/constants/monad.ts b/scripts/constants/monad.ts index a103040..b673828 100644 --- a/scripts/constants/monad.ts +++ b/scripts/constants/monad.ts @@ -11,12 +11,4 @@ export const REMOTEHOP = "0x40F66FFf44DBBee88058185F2cFE287558D7E532"; export const REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; export const FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; - -// Chain IDs -export const LZ_CHAIN_ID = 30390; -export const CHAIN_ID = 143; diff --git a/scripts/constants/movement.ts b/scripts/constants/movement.ts index 6f6fad2..bca2b28 100644 --- a/scripts/constants/movement.ts +++ b/scripts/constants/movement.ts @@ -15,11 +15,3 @@ export const SFRXUSDOFT = "0xc9bdfdc965bb7fcdcfa6b45870eab33bfaf8f4e8e3f6b89d3e0 export const WFRAXOFT = "0x267749b1a80d9d582019e6b0572c1dbc98648e24101b0861395cdbed095ceff2"; // LayerZeroInfra -export const LZ_ENDPOINT = "0xe60045e20fc2c99e869c1c34a65b9291c020cd12a0d37a00a53ac1348af4f43c"; -export const LZ_RECEIVE_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; -export const LZ_SEND_LIB_302 = "0xc33752e0220faf79e45385dd73fb28d681dcd9f1569a1480725507c1f3c3aba9"; -export const LZ_BLOCK_SEND_LIB = "0x3ca0d187f1938cf9776a0aa821487a650fc7bb2ab1c1d241ba319192aae4afc6"; - -// Chain IDs -export const LZ_CHAIN_ID = 30325; -export const CHAIN_ID = 0; diff --git a/scripts/constants/optimism.ts b/scripts/constants/optimism.ts index e18cb6a..14eb1ec 100644 --- a/scripts/constants/optimism.ts +++ b/scripts/constants/optimism.ts @@ -65,12 +65,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x31D982ebd82Ad900358984bd049207A4c2468640"; export const REMOTEMINTREDEEMHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x3c4962Ff6258dcfCafD23a814237B7d6Eb712063"; -export const LZ_SEND_LIB_302 = "0x1322871e4ab09Bc7f5717189434f97bBD9546e95"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30111; -export const CHAIN_ID = 10; diff --git a/scripts/constants/plumephoenix.ts b/scripts/constants/plumephoenix.ts index 0b3f57f..3975093 100644 --- a/scripts/constants/plumephoenix.ts +++ b/scripts/constants/plumephoenix.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; // LayerZeroInfra -export const LZ_ENDPOINT = "0xC1b15d3B262bEeC0e3565C11C9e0F6134BdaCB36"; -export const LZ_RECEIVE_LIB_302 = "0x5B19bd330A84c049b62D5B0FC2bA120217a18C1C"; -export const LZ_SEND_LIB_302 = "0xFe7C30860D01e28371D40434806F4A8fcDD3A098"; -export const LZ_BLOCK_SEND_LIB = "0x9e611db91ade3312534064ae6ae700f5b531844c"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30370; -export const CHAIN_ID = 98866; diff --git a/scripts/constants/polygon.ts b/scripts/constants/polygon.ts index 9518650..1e3bacb 100644 --- a/scripts/constants/polygon.ts +++ b/scripts/constants/polygon.ts @@ -69,12 +69,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C"; export const REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x1322871e4ab09Bc7f5717189434f97bBD9546e95"; -export const LZ_SEND_LIB_302 = "0x6c26c61a97006888ea9E4FA36584c7df57Cd9dA3"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30109; -export const CHAIN_ID = 137; diff --git a/scripts/constants/scroll.ts b/scripts/constants/scroll.ts index 6f1a268..59aedb4 100644 --- a/scripts/constants/scroll.ts +++ b/scripts/constants/scroll.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x879ba0efe1ab0119fefa745a21585fa205b07907"; export const REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; export const REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x8363302080e711E0CAb978C081b9e69308d49808"; -export const LZ_SEND_LIB_302 = "0x9BbEb2B2184B9313Cf5ed4a4DDFEa2ef62a2a03B"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; - -// Chain IDs -export const LZ_CHAIN_ID = 30214; -export const CHAIN_ID = 534352; diff --git a/scripts/constants/sei.ts b/scripts/constants/sei.ts index 8fc0038..018729b 100644 --- a/scripts/constants/sei.ts +++ b/scripts/constants/sei.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x3a6F28e8DDD232B02C72C491Bd1626F69D2fb329"; export const REMOTEMINTREDEEMHOP = "0x0255a172d0a060F2bEab3e7c12334dD73cCC26ba"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30280; -export const CHAIN_ID = 1329; diff --git a/scripts/constants/solana.ts b/scripts/constants/solana.ts index e62dedd..601a20a 100644 --- a/scripts/constants/solana.ts +++ b/scripts/constants/solana.ts @@ -39,11 +39,3 @@ export const SFRXETH_OFT_STORE = "DsJYjDF5yVSopMC15q9W42v833MhWGhCxcU2J39oS3wN"; export const SFRXUSD_OFT_STORE = "A28EK6j1euK4e6taP1KLFpGEoR1mDpXR4vtfiyCE1Nxv"; export const WFRAX_OFT_STORE = "5vqBiG7nxNnoCst8mEVVS6ax7C1ypEEenPfcZ4kLgj9B"; // LayerZeroInfra -export const LZ_ENDPOINT = "76y77prsiCMvXMjuoZ5VRrhG5qYBrUMYTE5WgHqgjEn6"; -export const LZ_RECEIVE_LIB_302 = "7a4WjyR8VZ7yZz5XJAKm39BUGn5iT9CKcv2pmG9tdXVH"; -export const LZ_SEND_LIB_302 = "7a4WjyR8VZ7yZz5XJAKm39BUGn5iT9CKcv2pmG9tdXVH"; -export const LZ_BLOCK_SEND_LIB = "2XrYqmhBMPJgDsb4SVbjV1PnJBprurd5bzRCkHwiFCJB"; - -// Chain IDs -export const LZ_CHAIN_ID = 30168; -export const CHAIN_ID = 0; diff --git a/scripts/constants/sonic.ts b/scripts/constants/sonic.ts index 32af62c..a92cc84 100644 --- a/scripts/constants/sonic.ts +++ b/scripts/constants/sonic.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23"; export const REMOTEMINTREDEEMHOP = "0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30332; -export const CHAIN_ID = 146; diff --git a/scripts/constants/stable.ts b/scripts/constants/stable.ts index 54cf086..74f74c7 100644 --- a/scripts/constants/stable.ts +++ b/scripts/constants/stable.ts @@ -11,12 +11,4 @@ export const REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; export const REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -export const LZ_RECEIVE_LIB_302 = "0x15e51701F245F6D5bd0FEE87bCAf55B0841451B3"; -export const LZ_SEND_LIB_302 = "0x37aaaf95887624a363effB7762D489E3C05c2a02"; -export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30396; -export const CHAIN_ID = 988; diff --git a/scripts/constants/unichain.ts b/scripts/constants/unichain.ts index 85c44f5..7d2c84e 100644 --- a/scripts/constants/unichain.ts +++ b/scripts/constants/unichain.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30320; -export const CHAIN_ID = 130; diff --git a/scripts/constants/worldchain.ts b/scripts/constants/worldchain.ts index 20244f5..e419b56 100644 --- a/scripts/constants/worldchain.ts +++ b/scripts/constants/worldchain.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x938d99A81814f66b01010d19DDce92A633441699"; export const REMOTEMINTREDEEMHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -export const LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -export const LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30319; -export const CHAIN_ID = 480; diff --git a/scripts/constants/xlayer.ts b/scripts/constants/xlayer.ts index d0dce09..734a396 100644 --- a/scripts/constants/xlayer.ts +++ b/scripts/constants/xlayer.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; export const REMOTEHOP = "0x79152c303AD5aE429eDefa4553CB1Ad2c6EE1396"; export const REMOTEMINTREDEEMHOP = "0x45c6852a5188ce1905567ea83454329bd4982007"; // LayerZeroInfra -export const LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -export const LZ_RECEIVE_LIB_302 = "0x2367325334447C5E1E0f1b3a6fB947b262F58312"; -export const LZ_SEND_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -export const LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; - -// Chain IDs -export const LZ_CHAIN_ID = 30274; -export const CHAIN_ID = 196; diff --git a/scripts/constants/zksync.ts b/scripts/constants/zksync.ts index dcbd695..c6f233f 100644 --- a/scripts/constants/zksync.ts +++ b/scripts/constants/zksync.ts @@ -10,12 +10,4 @@ export const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; // LayerZeroInfra -export const LZ_ENDPOINT = "0xd07C30aF3Ff30D96BDc9c6044958230Eb797DDBF"; -export const LZ_RECEIVE_LIB_302 = "0x04830f6deCF08Dec9eD6C3fCAD215245B78A59e1"; -export const LZ_SEND_LIB_302 = "0x07fD0e370B49919cA8dA0CE842B8177263c0E12c"; -export const LZ_BLOCK_SEND_LIB = "0x0fddfc529b5912e1cbe38ccedf8e226566e596d3"; export const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; - -// Chain IDs -export const LZ_CHAIN_ID = 30165; -export const CHAIN_ID = 324; From 9f859f0a15b1d5cd04cd99a87402bcb4d870d3f7 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Thu, 5 Mar 2026 00:45:14 +0000 Subject: [PATCH 15/27] feat: add HopV2 constants and ABI for frax-lz-mesh scanner - Add REMOTEHOPV2 + REMOTEADMINV2 to spoke chain constants - Add FRAXTALHOPV2 to fraxtal-l2 constants - Add HOP_V2_ABI.json with all HopV2 view functions + AccessControlEnumerable - Update abis index to export HOP_V2_ABI - Includes compiled JS output --- scripts/abis/HOP_V2_ABI.json | 262 +++++++++++++++++++++++++++++++ scripts/abis/index.js | 5 +- scripts/abis/index.ts | 2 + scripts/constants/arbitrum.js | 4 + scripts/constants/arbitrum.ts | 4 + scripts/constants/avalanche.js | 4 + scripts/constants/avalanche.ts | 4 + scripts/constants/base.js | 4 + scripts/constants/base.ts | 4 + scripts/constants/bera.js | 4 + scripts/constants/bera.ts | 4 + scripts/constants/bsc.js | 4 + scripts/constants/bsc.ts | 4 + scripts/constants/ethereum.js | 4 + scripts/constants/ethereum.ts | 4 + scripts/constants/fraxtal-l2.js | 3 + scripts/constants/fraxtal-l2.ts | 3 + scripts/constants/hyperliquid.js | 4 + scripts/constants/hyperliquid.ts | 4 + scripts/constants/ink.js | 4 + scripts/constants/ink.ts | 4 + scripts/constants/katana.js | 4 + scripts/constants/katana.ts | 4 + scripts/constants/mode.js | 4 + scripts/constants/mode.ts | 4 + scripts/constants/optimism.js | 4 + scripts/constants/optimism.ts | 4 + scripts/constants/sei.js | 4 + scripts/constants/sei.ts | 4 + scripts/constants/sonic.js | 4 + scripts/constants/sonic.ts | 4 + scripts/constants/unichain.js | 4 + scripts/constants/unichain.ts | 4 + scripts/constants/worldchain.js | 4 + scripts/constants/worldchain.ts | 4 + 35 files changed, 394 insertions(+), 1 deletion(-) create mode 100644 scripts/abis/HOP_V2_ABI.json diff --git a/scripts/abis/HOP_V2_ABI.json b/scripts/abis/HOP_V2_ABI.json new file mode 100644 index 0000000..28652ae --- /dev/null +++ b/scripts/abis/HOP_V2_ABI.json @@ -0,0 +1,262 @@ +[ + { + "type": "function", + "name": "localEid", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint32", + "internalType": "uint32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "endpoint", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "contract ILayerZeroEndpointV2" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "paused", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "numDVNs", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint8", + "internalType": "uint8" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hopFee", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "EXECUTOR", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "DVN", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "TREASURY", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "remoteHop", + "inputs": [ + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "executorOptions", + "inputs": [ + { + "name": "_dstEid", + "type": "uint32", + "internalType": "uint32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes", + "internalType": "bytes" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "approvedOft", + "inputs": [ + { + "name": "_oft", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "hasRole", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "account", + "type": "address", + "internalType": "address" + } + ], + "outputs": [ + { + "name": "", + "type": "bool", + "internalType": "bool" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getRoleMemberCount", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "uint256", + "internalType": "uint256" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getRoleMember", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "internalType": "bytes32" + }, + { + "name": "index", + "type": "uint256", + "internalType": "uint256" + } + ], + "outputs": [ + { + "name": "", + "type": "address", + "internalType": "address" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "getRoleAdmin", + "inputs": [ + { + "name": "role", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + }, + { + "type": "function", + "name": "DEFAULT_ADMIN_ROLE", + "inputs": [], + "outputs": [ + { + "name": "", + "type": "bytes32", + "internalType": "bytes32" + } + ], + "stateMutability": "view" + } +] diff --git a/scripts/abis/index.js b/scripts/abis/index.js index ee8f648..6bf3c95 100644 --- a/scripts/abis/index.js +++ b/scripts/abis/index.js @@ -5,7 +5,8 @@ var __importDefault = return mod && mod.__esModule ? mod : { default: mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.SEND_ULN302_ABI = +exports.HOP_V2_ABI = + exports.SEND_ULN302_ABI = exports.REMOTE_MINT_REDEEM_HOP_ABI = exports.REMOTE_HOP_ABI = exports.RECEIVE_ULN302_ABI = @@ -40,6 +41,8 @@ const REMOTE_MINT_REDEEM_HOP_json_1 = __importDefault(require("./REMOTE_MINT_RED exports.REMOTE_MINT_REDEEM_HOP_ABI = REMOTE_MINT_REDEEM_HOP_json_1.default; const SEND_ULN302_ABI_json_1 = __importDefault(require("./SEND_ULN302_ABI.json")); exports.SEND_ULN302_ABI = SEND_ULN302_ABI_json_1.default; +const HOP_V2_ABI_json_1 = __importDefault(require("./HOP_V2_ABI.json")); +exports.HOP_V2_ABI = HOP_V2_ABI_json_1.default; var ERC20_1 = require("./ERC20"); Object.defineProperty(exports, "ERC20ABI", { enumerable: true, diff --git a/scripts/abis/index.ts b/scripts/abis/index.ts index e4a33a9..a11b147 100644 --- a/scripts/abis/index.ts +++ b/scripts/abis/index.ts @@ -9,6 +9,7 @@ import RECEIVE_ULN302_ABI from "./RECEIVE_ULN302_ABI.json"; import REMOTE_HOP_ABI from "./REMOTE_HOP_ABI.json"; import REMOTE_MINT_REDEEM_HOP_ABI from "./REMOTE_MINT_REDEEM_HOP.json"; import SEND_ULN302_ABI from "./SEND_ULN302_ABI.json"; +import HOP_V2_ABI from "./HOP_V2_ABI.json"; export { ERC20ABI } from "./ERC20"; export { @@ -23,4 +24,5 @@ export { REMOTE_HOP_ABI, REMOTE_MINT_REDEEM_HOP_ABI, SEND_ULN302_ABI, + HOP_V2_ABI, }; diff --git a/scripts/constants/arbitrum.js b/scripts/constants/arbitrum.js index 4a7cca5..41330c2 100644 --- a/scripts/constants/arbitrum.js +++ b/scripts/constants/arbitrum.js @@ -318,3 +318,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30110; exports.CHAIN_ID = 42161; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/arbitrum.ts b/scripts/constants/arbitrum.ts index f35b906..4910e96 100644 --- a/scripts/constants/arbitrum.ts +++ b/scripts/constants/arbitrum.ts @@ -165,3 +165,7 @@ export const REMOTEHOP = "0x29F5DBD0FE72d8f11271FCBE79Cb87E18a83C70A"; export const REMOTEMINTREDEEMHOP = "0xa46A266dCBf199a71532c76967e200994C5A0D6d"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/avalanche.js b/scripts/constants/avalanche.js index 9c88123..fd6477f 100644 --- a/scripts/constants/avalanche.js +++ b/scripts/constants/avalanche.js @@ -135,3 +135,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30106; exports.CHAIN_ID = 43114; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/avalanche.ts b/scripts/constants/avalanche.ts index a5a916a..92e3cb3 100644 --- a/scripts/constants/avalanche.ts +++ b/scripts/constants/avalanche.ts @@ -75,3 +75,7 @@ export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/base.js b/scripts/constants/base.js index cc609a7..876d6e3 100644 --- a/scripts/constants/base.js +++ b/scripts/constants/base.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0xF59C41A57AB4565AF7424F64981523DfD7A453c5"; // Chain IDs exports.LZ_CHAIN_ID = 30184; exports.CHAIN_ID = 8453; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x07dB789aD17573e5169eDEfe14df91CC305715AA"; diff --git a/scripts/constants/base.ts b/scripts/constants/base.ts index fc6f4af..d37e964 100644 --- a/scripts/constants/base.ts +++ b/scripts/constants/base.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; export const REMOTEMINTREDEEMHOP = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0xF59C41A57AB4565AF7424F64981523DfD7A453c5"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x07dB789aD17573e5169eDEfe14df91CC305715AA"; diff --git a/scripts/constants/bera.js b/scripts/constants/bera.js index c4c2209..b19923d 100644 --- a/scripts/constants/bera.js +++ b/scripts/constants/bera.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30362; exports.CHAIN_ID = 80094; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/bera.ts b/scripts/constants/bera.ts index 7d2c84e..482cefd 100644 --- a/scripts/constants/bera.ts +++ b/scripts/constants/bera.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/bsc.js b/scripts/constants/bsc.js index fe7fa36..43f19f7 100644 --- a/scripts/constants/bsc.js +++ b/scripts/constants/bsc.js @@ -127,3 +127,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30102; exports.CHAIN_ID = 56; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/bsc.ts b/scripts/constants/bsc.ts index c68be6e..65c3714 100644 --- a/scripts/constants/bsc.ts +++ b/scripts/constants/bsc.ts @@ -70,3 +70,7 @@ export const REMOTEHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; export const REMOTEMINTREDEEMHOP = "0xdee45510b42Cb0678C8A61D043C698aF66b0d852"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/ethereum.js b/scripts/constants/ethereum.js index 8ddffb9..601b580 100644 --- a/scripts/constants/ethereum.js +++ b/scripts/constants/ethereum.js @@ -50,3 +50,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30101; exports.CHAIN_ID = 1; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x181EBC9deA868ED8e5EeeAef7f767D43BF390dFa"; diff --git a/scripts/constants/ethereum.ts b/scripts/constants/ethereum.ts index ba67f2f..fe0afe9 100644 --- a/scripts/constants/ethereum.ts +++ b/scripts/constants/ethereum.ts @@ -20,3 +20,7 @@ export const REMOTEHOP = "0x3ad4dC2319394bB4BE99A0e4aE2AbF7bCEbD648E"; export const REMOTEMINTREDEEMHOP = "0x99B5587ab54A49e3F827D10175Caf69C0187bfA8"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x181EBC9deA868ED8e5EeeAef7f767D43BF390dFa"; diff --git a/scripts/constants/fraxtal-l2.js b/scripts/constants/fraxtal-l2.js index b00195c..276dd75 100644 --- a/scripts/constants/fraxtal-l2.js +++ b/scripts/constants/fraxtal-l2.js @@ -355,3 +355,6 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30255; exports.CHAIN_ID = 252; + +// HopV2 +exports.FRAXTALHOPV2 = "0x00000000e18aFc20Afe54d4B2C8688bB60c06B36"; diff --git a/scripts/constants/fraxtal-l2.ts b/scripts/constants/fraxtal-l2.ts index 3cc3481..897a7b5 100644 --- a/scripts/constants/fraxtal-l2.ts +++ b/scripts/constants/fraxtal-l2.ts @@ -198,3 +198,6 @@ export const FRAXTALHOP = "0x2A2019b30C157dB6c1C01306b8025167dBe1803B"; export const FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; + +// HopV2 +export const FRAXTALHOPV2 = "0x00000000e18aFc20Afe54d4B2C8688bB60c06B36"; diff --git a/scripts/constants/hyperliquid.js b/scripts/constants/hyperliquid.js index ae55f90..9f01251 100644 --- a/scripts/constants/hyperliquid.js +++ b/scripts/constants/hyperliquid.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30367; exports.CHAIN_ID = 999; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/hyperliquid.ts b/scripts/constants/hyperliquid.ts index b965ff5..b4ad62d 100644 --- a/scripts/constants/hyperliquid.ts +++ b/scripts/constants/hyperliquid.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; export const REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/ink.js b/scripts/constants/ink.js index 3415b26..9df213a 100644 --- a/scripts/constants/ink.js +++ b/scripts/constants/ink.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30339; exports.CHAIN_ID = 57073; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/ink.ts b/scripts/constants/ink.ts index 55de4e4..0dfaeaf 100644 --- a/scripts/constants/ink.ts +++ b/scripts/constants/ink.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; export const REMOTEMINTREDEEMHOP = "0x452420df4AC1e3db5429b5FD629f3047482C543C"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/katana.js b/scripts/constants/katana.js index 96a1c9c..d5aa5e0 100644 --- a/scripts/constants/katana.js +++ b/scripts/constants/katana.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30375; exports.CHAIN_ID = 747474; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/katana.ts b/scripts/constants/katana.ts index 2f9c782..2d66ef0 100644 --- a/scripts/constants/katana.ts +++ b/scripts/constants/katana.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x5d8EB59A12Bc98708702305A7b032f4b69Dd5b5c"; export const REMOTEMINTREDEEMHOP = "0xF6f45CCB5E85D1400067ee66F9e168f83e86124E"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/mode.js b/scripts/constants/mode.js index 364ab3c..8ba0d86 100644 --- a/scripts/constants/mode.js +++ b/scripts/constants/mode.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30260; exports.CHAIN_ID = 34443; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/mode.ts b/scripts/constants/mode.ts index 7deb5ce..031c9dc 100644 --- a/scripts/constants/mode.ts +++ b/scripts/constants/mode.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x486cb4788f1be7cdef9301a7a637b451df3cf262"; export const REMOTEMINTREDEEMHOP = "0x7360575f6f8F91b38dD078241b0Df508f5fBfDf9"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/optimism.js b/scripts/constants/optimism.js index 1d2bd00..9a71b44 100644 --- a/scripts/constants/optimism.js +++ b/scripts/constants/optimism.js @@ -117,3 +117,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30111; exports.CHAIN_ID = 10; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/optimism.ts b/scripts/constants/optimism.ts index 14eb1ec..375a5b2 100644 --- a/scripts/constants/optimism.ts +++ b/scripts/constants/optimism.ts @@ -66,3 +66,7 @@ export const REMOTEHOP = "0x31D982ebd82Ad900358984bd049207A4c2468640"; export const REMOTEMINTREDEEMHOP = "0x7a07D606c87b7251c2953A30Fa445d8c5F856C7A"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/sei.js b/scripts/constants/sei.js index b21b7da..532cc69 100644 --- a/scripts/constants/sei.js +++ b/scripts/constants/sei.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30280; exports.CHAIN_ID = 1329; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/sei.ts b/scripts/constants/sei.ts index 018729b..6f887ad 100644 --- a/scripts/constants/sei.ts +++ b/scripts/constants/sei.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x3a6F28e8DDD232B02C72C491Bd1626F69D2fb329"; export const REMOTEMINTREDEEMHOP = "0x0255a172d0a060F2bEab3e7c12334dD73cCC26ba"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/sonic.js b/scripts/constants/sonic.js index 03bde42..53f335d 100644 --- a/scripts/constants/sonic.js +++ b/scripts/constants/sonic.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30332; exports.CHAIN_ID = 146; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/sonic.ts b/scripts/constants/sonic.ts index a92cc84..a8b91f2 100644 --- a/scripts/constants/sonic.ts +++ b/scripts/constants/sonic.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x3A5cDA3Ac66Aa80573402610c94B74eD6cdb2F23"; export const REMOTEMINTREDEEMHOP = "0xf6115Bb9b6A4b3660dA409cB7afF1fb773efaD0b"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/unichain.js b/scripts/constants/unichain.js index bc11ac0..a4ca98c 100644 --- a/scripts/constants/unichain.js +++ b/scripts/constants/unichain.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30320; exports.CHAIN_ID = 130; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/unichain.ts b/scripts/constants/unichain.ts index 7d2c84e..482cefd 100644 --- a/scripts/constants/unichain.ts +++ b/scripts/constants/unichain.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0xc71BF5Ee4740405030eF521F18A96eA14fec802D"; export const REMOTEMINTREDEEMHOP = "0x983aF86c94Fe3963989c22CeeEb6eA8Eac32D263"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/worldchain.js b/scripts/constants/worldchain.js index 2db01d6..ebfc00a 100644 --- a/scripts/constants/worldchain.js +++ b/scripts/constants/worldchain.js @@ -35,3 +35,7 @@ exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; // Chain IDs exports.LZ_CHAIN_ID = 30319; exports.CHAIN_ID = 480; + +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/worldchain.ts b/scripts/constants/worldchain.ts index e419b56..b387da2 100644 --- a/scripts/constants/worldchain.ts +++ b/scripts/constants/worldchain.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x938d99A81814f66b01010d19DDce92A633441699"; export const REMOTEMINTREDEEMHOP = "0x111ddab65Af5fF96b674400246699ED40F550De1"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; From cdd5efad1fb31d8141f81a6c72527c8207e429b6 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Thu, 5 Mar 2026 02:09:15 +0000 Subject: [PATCH 16/27] feat: add REMOTE_ADMIN_V2_ABI --- scripts/abis/REMOTE_ADMIN_V2_ABI.json | 23 +++++++++++++++++++++ scripts/abis/index.d.ts | 29 +++++++++++++++++++++++++++ scripts/abis/index.js | 5 ++++- scripts/abis/index.ts | 2 ++ 4 files changed, 58 insertions(+), 1 deletion(-) create mode 100644 scripts/abis/REMOTE_ADMIN_V2_ABI.json create mode 100644 scripts/abis/index.d.ts diff --git a/scripts/abis/REMOTE_ADMIN_V2_ABI.json b/scripts/abis/REMOTE_ADMIN_V2_ABI.json new file mode 100644 index 0000000..de4b6d0 --- /dev/null +++ b/scripts/abis/REMOTE_ADMIN_V2_ABI.json @@ -0,0 +1,23 @@ +[ + { + "inputs": [], + "name": "frxUsdOft", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "hopV2", + "outputs": [{ "internalType": "address", "name": "", "type": "address" }], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "fraxtalMsig", + "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], + "stateMutability": "view", + "type": "function" + } +] diff --git a/scripts/abis/index.d.ts b/scripts/abis/index.d.ts new file mode 100644 index 0000000..4198103 --- /dev/null +++ b/scripts/abis/index.d.ts @@ -0,0 +1,29 @@ +import OFT_ABI from "./OFT_ABI.json"; +import OFT_ADAPTER_ABI from "./OFT_ADAPTER_ABI.json"; +import OFT_MINTABLE_ADAPTER_ABI from "./OFT_MINTABLE_ADAPTER_ABI.json"; +import ENDPOINTV2_ABI from "./ENDPOINTV2_ABI.json"; +import FRAX_PROXY_ADMIN_ABI from "./FRAX_PROXY_ADMIN_ABI.json"; +import FRAXTAL_HOP_ABI from "./FRAXTAL_HOP.json"; +import FRAXTAL_MINT_REDEEM_HOP_ABI from "./FRAXTAL_MINT_REDEEM_HOP.json"; +import RECEIVE_ULN302_ABI from "./RECEIVE_ULN302_ABI.json"; +import REMOTE_HOP_ABI from "./REMOTE_HOP_ABI.json"; +import REMOTE_MINT_REDEEM_HOP_ABI from "./REMOTE_MINT_REDEEM_HOP.json"; +import SEND_ULN302_ABI from "./SEND_ULN302_ABI.json"; +import HOP_V2_ABI from "./HOP_V2_ABI.json"; +import REMOTE_ADMIN_V2_ABI from "./REMOTE_ADMIN_V2_ABI.json"; +export { ERC20ABI } from "./ERC20"; +export { + OFT_ABI, + OFT_ADAPTER_ABI, + OFT_MINTABLE_ADAPTER_ABI, + ENDPOINTV2_ABI, + FRAX_PROXY_ADMIN_ABI, + FRAXTAL_HOP_ABI, + FRAXTAL_MINT_REDEEM_HOP_ABI, + RECEIVE_ULN302_ABI, + REMOTE_HOP_ABI, + REMOTE_MINT_REDEEM_HOP_ABI, + SEND_ULN302_ABI, + HOP_V2_ABI, + REMOTE_ADMIN_V2_ABI, +}; diff --git a/scripts/abis/index.js b/scripts/abis/index.js index 6bf3c95..be697e5 100644 --- a/scripts/abis/index.js +++ b/scripts/abis/index.js @@ -5,7 +5,8 @@ var __importDefault = return mod && mod.__esModule ? mod : { default: mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); -exports.HOP_V2_ABI = +exports.REMOTE_ADMIN_V2_ABI = + exports.HOP_V2_ABI = exports.SEND_ULN302_ABI = exports.REMOTE_MINT_REDEEM_HOP_ABI = exports.REMOTE_HOP_ABI = @@ -43,6 +44,8 @@ const SEND_ULN302_ABI_json_1 = __importDefault(require("./SEND_ULN302_ABI.json") exports.SEND_ULN302_ABI = SEND_ULN302_ABI_json_1.default; const HOP_V2_ABI_json_1 = __importDefault(require("./HOP_V2_ABI.json")); exports.HOP_V2_ABI = HOP_V2_ABI_json_1.default; +const REMOTE_ADMIN_V2_ABI_json_1 = __importDefault(require("./REMOTE_ADMIN_V2_ABI.json")); +exports.REMOTE_ADMIN_V2_ABI = REMOTE_ADMIN_V2_ABI_json_1.default; var ERC20_1 = require("./ERC20"); Object.defineProperty(exports, "ERC20ABI", { enumerable: true, diff --git a/scripts/abis/index.ts b/scripts/abis/index.ts index a11b147..8312136 100644 --- a/scripts/abis/index.ts +++ b/scripts/abis/index.ts @@ -10,6 +10,7 @@ import REMOTE_HOP_ABI from "./REMOTE_HOP_ABI.json"; import REMOTE_MINT_REDEEM_HOP_ABI from "./REMOTE_MINT_REDEEM_HOP.json"; import SEND_ULN302_ABI from "./SEND_ULN302_ABI.json"; import HOP_V2_ABI from "./HOP_V2_ABI.json"; +import REMOTE_ADMIN_V2_ABI from "./REMOTE_ADMIN_V2_ABI.json"; export { ERC20ABI } from "./ERC20"; export { @@ -25,4 +26,5 @@ export { REMOTE_MINT_REDEEM_HOP_ABI, SEND_ULN302_ABI, HOP_V2_ABI, + REMOTE_ADMIN_V2_ABI, }; From 8ba0e179b1a273fb6750886f968ba017d055ba95 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Thu, 5 Mar 2026 02:24:45 +0000 Subject: [PATCH 17/27] feat: add REMOTEADMINV2 to fraxtal-l2 constants --- scripts/constants/fraxtal-l2.js | 17 +++-------------- scripts/constants/fraxtal-l2.ts | 1 + 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/scripts/constants/fraxtal-l2.js b/scripts/constants/fraxtal-l2.js index 276dd75..40d3d63 100644 --- a/scripts/constants/fraxtal-l2.js +++ b/scripts/constants/fraxtal-l2.js @@ -153,13 +153,9 @@ exports.FPIOFT = exports.FRAXFERRY_ETHEREUM_FPIS = exports.FRAXFERRY_ETHEREUM_FPI = void 0; -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.FRAXTALHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.FRAXTALMINTREDEEMHOP = exports.FRAXTALHOP = exports.WFRAXOFT = @@ -347,14 +343,7 @@ exports.WFRAXOFT = "0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A"; exports.FRAXTALHOP = "0x2A2019b30C157dB6c1C01306b8025167dBe1803B"; exports.FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -exports.LZ_RECEIVE_LIB_302 = "0x8bC1e36F015b9902B54b1387A4d733cebc2f5A4e"; -exports.LZ_SEND_LIB_302 = "0x377530cdA84DFb2673bF4d145DCF0C4D7fdcB5b6"; -exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; -// Chain IDs -exports.LZ_CHAIN_ID = 30255; -exports.CHAIN_ID = 252; - // HopV2 exports.FRAXTALHOPV2 = "0x00000000e18aFc20Afe54d4B2C8688bB60c06B36"; +exports.REMOTEADMINV2 = "0x34029e02821178B4387e12644896994f910D6E73"; diff --git a/scripts/constants/fraxtal-l2.ts b/scripts/constants/fraxtal-l2.ts index 897a7b5..22d5710 100644 --- a/scripts/constants/fraxtal-l2.ts +++ b/scripts/constants/fraxtal-l2.ts @@ -201,3 +201,4 @@ export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; // HopV2 export const FRAXTALHOPV2 = "0x00000000e18aFc20Afe54d4B2C8688bB60c06B36"; +export const REMOTEADMINV2 = "0x34029e02821178B4387e12644896994f910D6E73"; From 0dadde0b1c203ba64f33e705107201a8b37fa1e4 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Thu, 5 Mar 2026 02:37:42 +0000 Subject: [PATCH 18/27] feat: add REMOTEHOPV2 and REMOTEADMINV2 for polygon, linea, plumephoenix, scroll, stable, monad --- scripts/constants/linea.d.ts | 11 ++++++ scripts/constants/linea.js | 18 +++------- scripts/constants/linea.ts | 4 +++ scripts/constants/monad.d.ts | 11 ++++++ scripts/constants/monad.js | 18 +++------- scripts/constants/monad.ts | 4 +++ scripts/constants/plumephoenix.d.ts | 11 ++++++ scripts/constants/plumephoenix.js | 18 +++------- scripts/constants/plumephoenix.ts | 4 +++ scripts/constants/polygon.d.ts | 52 +++++++++++++++++++++++++++++ scripts/constants/polygon.js | 20 +++-------- scripts/constants/polygon.ts | 4 +++ scripts/constants/scroll.d.ts | 11 ++++++ scripts/constants/scroll.js | 18 +++------- scripts/constants/scroll.ts | 4 +++ scripts/constants/stable.d.ts | 11 ++++++ scripts/constants/stable.js | 18 +++------- scripts/constants/stable.ts | 4 +++ 18 files changed, 161 insertions(+), 80 deletions(-) create mode 100644 scripts/constants/linea.d.ts create mode 100644 scripts/constants/monad.d.ts create mode 100644 scripts/constants/plumephoenix.d.ts create mode 100644 scripts/constants/polygon.d.ts create mode 100644 scripts/constants/scroll.d.ts create mode 100644 scripts/constants/stable.d.ts diff --git a/scripts/constants/linea.d.ts b/scripts/constants/linea.d.ts new file mode 100644 index 0000000..bc9022a --- /dev/null +++ b/scripts/constants/linea.d.ts @@ -0,0 +1,11 @@ +export declare const FPIOFT = "0xDaF72Aa849d3C4FAA8A9c8c99f240Cf33dA02fc4"; +export declare const FRXETHOFT = "0xB1aFD04774c02AE84692619448B08BA79F19b1ff"; +export declare const FRXUSDOFT = "0xC7346783f5e645aa998B106Ef9E7f499528673D8"; +export declare const SFRXETHOFT = "0x383Eac7CcaA89684b8277cBabC25BCa8b13B7Aa2"; +export declare const SFRXUSDOFT = "0x592a48c0FB9c7f8BF1701cB0136b90DEa2A5B7B6"; +export declare const WFRAXOFT = "0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5"; +export declare const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; +export declare const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; +export declare const FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/linea.js b/scripts/constants/linea.js index 22dad70..f66a5cc 100644 --- a/scripts/constants/linea.js +++ b/scripts/constants/linea.js @@ -1,12 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.REMOTEHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -27,11 +23,7 @@ exports.WFRAXOFT = "0x5217Ab28ECE654Aab2C68efedb6A22739df6C3D5"; exports.REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; exports.REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -exports.LZ_RECEIVE_LIB_302 = "0xE22ED54177CE1148C557de74E4873619e6c6b205"; -exports.LZ_SEND_LIB_302 = "0x32042142DD551b4EbE17B6FEd53131dd4b4eEa06"; -exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; exports.FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; -// Chain IDs -exports.LZ_CHAIN_ID = 30183; -exports.CHAIN_ID = 59144; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/linea.ts b/scripts/constants/linea.ts index 1faa00a..3b7d163 100644 --- a/scripts/constants/linea.ts +++ b/scripts/constants/linea.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/monad.d.ts b/scripts/constants/monad.d.ts new file mode 100644 index 0000000..5671ff6 --- /dev/null +++ b/scripts/constants/monad.d.ts @@ -0,0 +1,11 @@ +export declare const FPIOFT = "0xba554f7a47f0792b9fa41a1256d4cf628bb1d028"; +export declare const FRXETHOFT = "0x288f9d76019469bfeb56bb77d86afa2bf563b75b"; +export declare const FRXUSDOFT = "0x58e3ee6accd124642ddb5d3f91928816be8d8ed3"; +export declare const SFRXETHOFT = "0x3b4cf37a3335f21c945a40088404c715525fcb29"; +export declare const SFRXUSDOFT = "0x137643f7b2c189173867b3391f6629cab46f0f1a"; +export declare const WFRAXOFT = "0x29acc7c504665a5ea95344796f784095f0cfcc58"; +export declare const REMOTEHOP = "0x40F66FFf44DBBee88058185F2cFE287558D7E532"; +export declare const REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; +export declare const FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/monad.js b/scripts/constants/monad.js index 9f7159e..1b94f18 100644 --- a/scripts/constants/monad.js +++ b/scripts/constants/monad.js @@ -1,12 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.REMOTEHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -27,11 +23,7 @@ exports.WFRAXOFT = "0x29acc7c504665a5ea95344796f784095f0cfcc58"; exports.REMOTEHOP = "0x40F66FFf44DBBee88058185F2cFE287558D7E532"; exports.REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -exports.LZ_RECEIVE_LIB_302 = "0xe1844c5D63a9543023008D332Bd3d2e6f1FE1043"; -exports.LZ_SEND_LIB_302 = "0xC39161c743D0307EB9BCc9FEF03eeb9Dc4802de7"; -exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; exports.FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; -// Chain IDs -exports.LZ_CHAIN_ID = 30390; -exports.CHAIN_ID = 143; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/monad.ts b/scripts/constants/monad.ts index b673828..b9159c5 100644 --- a/scripts/constants/monad.ts +++ b/scripts/constants/monad.ts @@ -12,3 +12,7 @@ export const REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/plumephoenix.d.ts b/scripts/constants/plumephoenix.d.ts new file mode 100644 index 0000000..cb4487a --- /dev/null +++ b/scripts/constants/plumephoenix.d.ts @@ -0,0 +1,11 @@ +export declare const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export declare const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export declare const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export declare const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export declare const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export declare const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +export declare const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; +export declare const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; +export declare const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/plumephoenix.js b/scripts/constants/plumephoenix.js index 802b1d6..fb91583 100644 --- a/scripts/constants/plumephoenix.js +++ b/scripts/constants/plumephoenix.js @@ -1,12 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.REMOTEHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -27,11 +23,7 @@ exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; exports.REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; exports.REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0xC1b15d3B262bEeC0e3565C11C9e0F6134BdaCB36"; -exports.LZ_RECEIVE_LIB_302 = "0x5B19bd330A84c049b62D5B0FC2bA120217a18C1C"; -exports.LZ_SEND_LIB_302 = "0xFe7C30860D01e28371D40434806F4A8fcDD3A098"; -exports.LZ_BLOCK_SEND_LIB = "0x9e611db91ade3312534064ae6ae700f5b531844c"; exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; -// Chain IDs -exports.LZ_CHAIN_ID = 30370; -exports.CHAIN_ID = 98866; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/plumephoenix.ts b/scripts/constants/plumephoenix.ts index 3975093..7f5f0e0 100644 --- a/scripts/constants/plumephoenix.ts +++ b/scripts/constants/plumephoenix.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; export const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/polygon.d.ts b/scripts/constants/polygon.d.ts new file mode 100644 index 0000000..1afc407 --- /dev/null +++ b/scripts/constants/polygon.d.ts @@ -0,0 +1,52 @@ +export declare const FRAX = "0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89"; +export declare const FXS = "0x1a3acf6D19267E2d3e7f898f42803e90C9219062"; +export declare const FPI = "0x411C9cDd0fBBa243488988f2A3005D6fFf126661"; +export declare const FPIS = "0x84F6FCeb8E4A3EB87768C4a111273C17b54D4411"; +export declare const FRXETH = "0xEe327F889d5947c1dc1934Bb208a1E792F953E96"; +export declare const SFRXETH = "0x6d1FdBB266fCc09A16a22016369210A15bb95761"; +export declare const BALANCER_FRXETH_BB_A_WETH_GAUGE = "0x617430FF1C74faff0378726627F26a8704d03c8d"; +export declare const KYBERSWAP_ELASTIC_FRAX_USDC_POLYGON = "0x0363a32D18c25a3FD19a0d00B02106C03d8b8182"; +export declare const MSTABLE_FRAX_MUSD = "0xc425Fd9Ed3C892d849C9E1a971516da1C1B29696"; +export declare const CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +export declare const CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +export declare const DUMMY_TKN = "0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89"; +export declare const FERRY_TO_ARBITRUM = "0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0"; +export declare const FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +export declare const FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = "0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7"; +export declare const FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = "0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1"; +export declare const FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = "0x6f71Ea0e9679389854010eE48a7D237cB430DBA4"; +export declare const FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = "0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63"; +export declare const COMBO_ORACLE = "0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3"; +export declare const COMBO_ORACLE_UNIV2_UNIV3 = "0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020"; +export declare const COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = "0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F"; +export declare const FRAXSWAP_FACTORY_V1 = "0xc2544A32872A91F4A553b404C6950e89De901fdb"; +export declare const FRAXSWAP_FACTORY_V2 = "0x54F454D747e037Da288dB568D4121117EAb34e79"; +export declare const FRAXSWAP_ROUTER_MULTI_HOP = "0x0000000000000000000000000000000000000000"; +export declare const FRAXSWAP_ROUTER_V1 = "0x9bc2152fD37b196C0Ff3C16f5533767c9A983971"; +export declare const FRAXSWAP_ROUTER_V2 = "0xE52D0337904D4D0519EF7487e707268E1DB6495F"; +export declare const FRAXSWAP_V1_FRAX_FXS = "0x60AC6d228ffeeefF423879baA02091558e6480dc"; +export declare const FRAXSWAP_V1_FRAX_WMATIC = "0x4F7267Af6DB7B284dF74BEA9e35402987D8C72a7"; +export declare const FRAXSWAP_V2_FRAX_FXS = "0xd2105fE5f1B631daf2398e918549758Cd181cA7C"; +export declare const FRAXSWAP_V2_FRAX_WMATIC = "0xA964b92C690f0B8efad5B46a278A84bD0EF8AC01"; +export declare const KYBERSWAP_ELASTIC_FACTORY_V2 = "0xC7a590291e07B9fe9E64b86c58fD8fC764308C4A"; +export declare const KYBERSWAP_ELASTIC_POS_MGR_V2 = "0xe222fBE074A436145b255442D919E4E3A6c6a480"; +export declare const KYBERSWAP_ELASTIC_ROUTER_V2 = "0xF9c2b5746c946EF883ab2660BbbB1f10A5bdeAb4"; +export declare const KYBERSWAP_ELASTIC_TICK_FEES_READER_V2 = "0x8Fd8Cb948965d9305999D767A02bf79833EADbB3"; +export declare const COMPTROLLER = "0xDCB5A4b6Ee39447D700F4FA3303B1d1c25Ea9cA7"; +export declare const FPI_COMPTROLLER = "0x4EBd698a5dB2580587EE0000929128190524006c"; +export declare const CURVE4POOL = "0xe4ae3Ee65bb687045e401827b404FeE34BE4BA53"; +export declare const DYSTOPIA_STABLEV1_AMM___USDC_FRAX = "0x53227c83a98Ba1035FEd912Da6cE26a0c11C7C66"; +export declare const DYSTOPIA_VOLATILEV1_AMM___FXS_FRAX = "0xfC2e89aabD257471a461dd506188609B2Bec53Fa"; +export declare const FRAX3POOL = "0x5e5A23b52Cb48F5E70271Be83079cA5bC9c9e9ac"; +export declare const HOP_LP_USDC = "0x9D373d22FD091d7f9A6649EB067557cc12Fb1A0A"; +export declare const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export declare const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export declare const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export declare const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export declare const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export declare const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +export declare const REMOTEHOP = "0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C"; +export declare const REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; +export declare const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/polygon.js b/scripts/constants/polygon.js index 8ccbb13..ff584fd 100644 --- a/scripts/constants/polygon.js +++ b/scripts/constants/polygon.js @@ -1,6 +1,6 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.LZ_ENDPOINT = +exports.FRAX_PROXY_ADMIN = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -51,13 +51,7 @@ exports.LZ_ENDPOINT = exports.FXS = exports.FRAX = void 0; -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = - exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - void 0; +exports.REMOTEADMINV2 = exports.REMOTEHOPV2 = void 0; // Canonicals exports.FRAX = "0x45c32fA6DF82ead1e2EF74d17b76547EDdFaFF89"; exports.FXS = "0x1a3acf6D19267E2d3e7f898f42803e90C9219062"; @@ -119,11 +113,7 @@ exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; exports.REMOTEHOP = "0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C"; exports.REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -exports.LZ_RECEIVE_LIB_302 = "0x1322871e4ab09Bc7f5717189434f97bBD9546e95"; -exports.LZ_SEND_LIB_302 = "0x6c26c61a97006888ea9E4FA36584c7df57Cd9dA3"; -exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; -// Chain IDs -exports.LZ_CHAIN_ID = 30109; -exports.CHAIN_ID = 137; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/polygon.ts b/scripts/constants/polygon.ts index 1e3bacb..1472858 100644 --- a/scripts/constants/polygon.ts +++ b/scripts/constants/polygon.ts @@ -70,3 +70,7 @@ export const REMOTEHOP = "0xf74D38A26948E9DDa53eD85cF03C6b1188FbB30C"; export const REMOTEMINTREDEEMHOP = "0x5658e82E330e094627D9b362ed0E137eA06673C4"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/scroll.d.ts b/scripts/constants/scroll.d.ts new file mode 100644 index 0000000..6f82ceb --- /dev/null +++ b/scripts/constants/scroll.d.ts @@ -0,0 +1,11 @@ +export declare const FPIOFT = "0x93cDc5d29293Cb6983f059Fec6e4FFEb656b6a62"; +export declare const FRXETHOFT = "0x0097Cf8Ee15800d4f80da8A6cE4dF360D9449Ed5"; +export declare const FRXUSDOFT = "0x397F939C3b91A74C321ea7129396492bA9Cdce82"; +export declare const SFRXETHOFT = "0x73382eb28F35d80Df8C3fe04A3EED71b1aFce5dE"; +export declare const SFRXUSDOFT = "0xC6B2BE25d65760B826D0C852FD35F364250619c2"; +export declare const WFRAXOFT = "0x879ba0efe1ab0119fefa745a21585fa205b07907"; +export declare const REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; +export declare const REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; +export declare const FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/scroll.js b/scripts/constants/scroll.js index 90780d8..20caf6e 100644 --- a/scripts/constants/scroll.js +++ b/scripts/constants/scroll.js @@ -1,12 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.REMOTEHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -27,11 +23,7 @@ exports.WFRAXOFT = "0x879ba0efe1ab0119fefa745a21585fa205b07907"; exports.REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; exports.REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0x1a44076050125825900e736c501f859c50fE728c"; -exports.LZ_RECEIVE_LIB_302 = "0x8363302080e711E0CAb978C081b9e69308d49808"; -exports.LZ_SEND_LIB_302 = "0x9BbEb2B2184B9313Cf5ed4a4DDFEa2ef62a2a03B"; -exports.LZ_BLOCK_SEND_LIB = "0x1ccbf0db9c192d969de57e25b3ff09a25bb1d862"; exports.FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; -// Chain IDs -exports.LZ_CHAIN_ID = 30214; -exports.CHAIN_ID = 534352; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/scroll.ts b/scripts/constants/scroll.ts index 59aedb4..dfd3c6e 100644 --- a/scripts/constants/scroll.ts +++ b/scripts/constants/scroll.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; export const REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/stable.d.ts b/scripts/constants/stable.d.ts new file mode 100644 index 0000000..9016d2d --- /dev/null +++ b/scripts/constants/stable.d.ts @@ -0,0 +1,11 @@ +export declare const FPIOFT = "0x90581eCa9469D8D7F5D3B60f4715027aDFCf7927"; +export declare const FRXETHOFT = "0x43eDD7f3831b08FE70B7555ddD373C8bF65a9050"; +export declare const FRXUSDOFT = "0x80Eede496655FB9047dd39d9f418d5483ED600df"; +export declare const SFRXETHOFT = "0x3Ec3849C33291a9eF4c5dB86De593EB4A37fDe45"; +export declare const SFRXUSDOFT = "0x5Bff88cA1442c2496f7E475E9e7786383Bc070c0"; +export declare const WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; +export declare const REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; +export declare const REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; +export declare const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/stable.js b/scripts/constants/stable.js index 4fafc99..15b82c9 100644 --- a/scripts/constants/stable.js +++ b/scripts/constants/stable.js @@ -1,12 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.REMOTEHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -27,11 +23,7 @@ exports.WFRAXOFT = "0x64445f0aecC51E94aD52d8AC56b7190e764E561a"; exports.REMOTEHOP = "0x8EbB34b1880B2EA5e458082590B3A2c9Ea7C41A2"; exports.REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0x6F475642a6e85809B1c36Fa62763669b1b48DD5B"; -exports.LZ_RECEIVE_LIB_302 = "0x15e51701F245F6D5bd0FEE87bCAf55B0841451B3"; -exports.LZ_SEND_LIB_302 = "0x37aaaf95887624a363effB7762D489E3C05c2a02"; -exports.LZ_BLOCK_SEND_LIB = "0xc1ce56b2099ca68720592583c7984cab4b6d7e7a"; exports.FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; -// Chain IDs -exports.LZ_CHAIN_ID = 30396; -exports.CHAIN_ID = 988; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; diff --git a/scripts/constants/stable.ts b/scripts/constants/stable.ts index 74f74c7..1c76fa9 100644 --- a/scripts/constants/stable.ts +++ b/scripts/constants/stable.ts @@ -12,3 +12,7 @@ export const REMOTEMINTREDEEMHOP = "0xb85A8FDa7F5e52E32fa5582847CFfFee9456a5Dc"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85c96157c0efa18cd6c5405c"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; From 14d7e3d88ce3a1582095afd38d9ed7388abf5571 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Thu, 5 Mar 2026 05:06:19 +0000 Subject: [PATCH 19/27] fix: correct REMOTEADMINV2 for linea, scroll, monad --- scripts/constants/linea.d.ts | 2 +- scripts/constants/linea.js | 2 +- scripts/constants/linea.ts | 2 +- scripts/constants/monad.d.ts | 2 +- scripts/constants/monad.js | 2 +- scripts/constants/monad.ts | 2 +- scripts/constants/scroll.d.ts | 2 +- scripts/constants/scroll.js | 2 +- scripts/constants/scroll.ts | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/scripts/constants/linea.d.ts b/scripts/constants/linea.d.ts index bc9022a..15932ea 100644 --- a/scripts/constants/linea.d.ts +++ b/scripts/constants/linea.d.ts @@ -8,4 +8,4 @@ export declare const REMOTEHOP = "0x6cA98f43719231d38F6426DB64C7F3D5C7CE7876"; export declare const REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; export declare const FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +export declare const REMOTEADMINV2 = "0xfa803b63DaACCa6CD953061BDBa4E3da6b177447"; diff --git a/scripts/constants/linea.js b/scripts/constants/linea.js index f66a5cc..5e9cfd8 100644 --- a/scripts/constants/linea.js +++ b/scripts/constants/linea.js @@ -26,4 +26,4 @@ exports.REMOTEMINTREDEEMHOP = "0xa71f2204EDDB8d84F411A0C712687FAe5002e7Fb"; exports.FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; // HopV2 exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +exports.REMOTEADMINV2 = "0xfa803b63DaACCa6CD953061BDBa4E3da6b177447"; diff --git a/scripts/constants/linea.ts b/scripts/constants/linea.ts index 3b7d163..394ca04 100644 --- a/scripts/constants/linea.ts +++ b/scripts/constants/linea.ts @@ -14,4 +14,4 @@ export const FRAX_PROXY_ADMIN = "0x3cf371c128b092b085B7732069cEAF3Fd863F270"; // HopV2 export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +export const REMOTEADMINV2 = "0xfa803b63DaACCa6CD953061BDBa4E3da6b177447"; diff --git a/scripts/constants/monad.d.ts b/scripts/constants/monad.d.ts index 5671ff6..8a6d90b 100644 --- a/scripts/constants/monad.d.ts +++ b/scripts/constants/monad.d.ts @@ -8,4 +8,4 @@ export declare const REMOTEHOP = "0x40F66FFf44DBBee88058185F2cFE287558D7E532"; export declare const REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; export declare const FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +export declare const REMOTEADMINV2 = "0x4bE0942c2CbFd741DB5906CF2831c1AF29fcEa55"; diff --git a/scripts/constants/monad.js b/scripts/constants/monad.js index 1b94f18..7a704a0 100644 --- a/scripts/constants/monad.js +++ b/scripts/constants/monad.js @@ -26,4 +26,4 @@ exports.REMOTEMINTREDEEMHOP = "0x92E6892706053ee85fC1178AFFCB3803118D2C4F"; exports.FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; // HopV2 exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +exports.REMOTEADMINV2 = "0x4bE0942c2CbFd741DB5906CF2831c1AF29fcEa55"; diff --git a/scripts/constants/monad.ts b/scripts/constants/monad.ts index b9159c5..cf917ff 100644 --- a/scripts/constants/monad.ts +++ b/scripts/constants/monad.ts @@ -15,4 +15,4 @@ export const FRAX_PROXY_ADMIN = "0xc2871eae630640ce1a16b39a17c498f22d76c21a"; // HopV2 export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +export const REMOTEADMINV2 = "0x4bE0942c2CbFd741DB5906CF2831c1AF29fcEa55"; diff --git a/scripts/constants/scroll.d.ts b/scripts/constants/scroll.d.ts index 6f82ceb..cca3152 100644 --- a/scripts/constants/scroll.d.ts +++ b/scripts/constants/scroll.d.ts @@ -8,4 +8,4 @@ export declare const REMOTEHOP = "0xf6f45ccb5e85d1400067ee66f9e168f83e86124e"; export declare const REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; export declare const FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -export declare const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +export declare const REMOTEADMINV2 = "0x1dE5910A2b0f860A226a8a43148aeA91afbE3d01"; diff --git a/scripts/constants/scroll.js b/scripts/constants/scroll.js index 20caf6e..a6cacc5 100644 --- a/scripts/constants/scroll.js +++ b/scripts/constants/scroll.js @@ -26,4 +26,4 @@ exports.REMOTEMINTREDEEMHOP = "0x91DDB0E0C36B901C6BF53B9Eb5ACa0Eb1465F558"; exports.FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; // HopV2 exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -exports.REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +exports.REMOTEADMINV2 = "0x1dE5910A2b0f860A226a8a43148aeA91afbE3d01"; diff --git a/scripts/constants/scroll.ts b/scripts/constants/scroll.ts index dfd3c6e..88351e3 100644 --- a/scripts/constants/scroll.ts +++ b/scripts/constants/scroll.ts @@ -14,4 +14,4 @@ export const FRAX_PROXY_ADMIN = "0x8f1b9c1fd67136d525e14d96efb3887a33f16250"; // HopV2 export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; -export const REMOTEADMINV2 = "0x954286118E93df807aB6f99aE0454f8710f0a8B9"; +export const REMOTEADMINV2 = "0x1dE5910A2b0f860A226a8a43148aeA91afbE3d01"; From 69c58734d39df5ecf7ec523e3c5966f03494c3dd Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Thu, 5 Mar 2026 05:13:17 +0000 Subject: [PATCH 20/27] feat: add REMOTEHOPV2 and REMOTEADMINV2 for zksync, abstract --- scripts/constants/abstract.d.ts | 11 +++++++++++ scripts/constants/abstract.js | 18 +++++------------- scripts/constants/abstract.ts | 4 ++++ scripts/constants/zksync.d.ts | 11 +++++++++++ scripts/constants/zksync.js | 18 +++++------------- scripts/constants/zksync.ts | 4 ++++ 6 files changed, 40 insertions(+), 26 deletions(-) create mode 100644 scripts/constants/abstract.d.ts create mode 100644 scripts/constants/zksync.d.ts diff --git a/scripts/constants/abstract.d.ts b/scripts/constants/abstract.d.ts new file mode 100644 index 0000000..bc10685 --- /dev/null +++ b/scripts/constants/abstract.d.ts @@ -0,0 +1,11 @@ +export declare const FPIOFT = "0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E"; +export declare const FRXETHOFT = "0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440"; +export declare const FRXUSDOFT = "0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d"; +export declare const SFRXETHOFT = "0xFD78FD3667DeF2F1097Ed221ec503AE477155394"; +export declare const SFRXUSDOFT = "0x9F87fbb47C33Cd0614E43500b9511018116F79eE"; +export declare const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; +export declare const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; +export declare const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; +export declare const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x000000000E0E120FCAc7b4d98e9E35E1DE6fdadb"; diff --git a/scripts/constants/abstract.js b/scripts/constants/abstract.js index d70c41d..1b958d6 100644 --- a/scripts/constants/abstract.js +++ b/scripts/constants/abstract.js @@ -1,12 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.REMOTEHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -27,11 +23,7 @@ exports.WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; exports.REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; exports.REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0x5c6cfF4b7C49805F8295Ff73C204ac83f3bC4AE7"; -exports.LZ_RECEIVE_LIB_302 = "0x9d799c1935c51CA399e6465Ed9841DEbCcEc413E"; -exports.LZ_SEND_LIB_302 = "0x166CAb679EBDB0853055522D3B523621b94029a1"; -exports.LZ_BLOCK_SEND_LIB = "0x3258287147fb7887d8a643006e26e19368057377"; exports.FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; -// Chain IDs -exports.LZ_CHAIN_ID = 30324; -exports.CHAIN_ID = 2741; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x000000000E0E120FCAc7b4d98e9E35E1DE6fdadb"; diff --git a/scripts/constants/abstract.ts b/scripts/constants/abstract.ts index c6f233f..cd23c50 100644 --- a/scripts/constants/abstract.ts +++ b/scripts/constants/abstract.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x000000000E0E120FCAc7b4d98e9E35E1DE6fdadb"; diff --git a/scripts/constants/zksync.d.ts b/scripts/constants/zksync.d.ts new file mode 100644 index 0000000..bc10685 --- /dev/null +++ b/scripts/constants/zksync.d.ts @@ -0,0 +1,11 @@ +export declare const FPIOFT = "0x580F2ee1476eDF4B1760bd68f6AaBaD57dec420E"; +export declare const FRXETHOFT = "0xc7Ab797019156b543B7a3fBF5A99ECDab9eb4440"; +export declare const FRXUSDOFT = "0xEa77c590Bb36c43ef7139cE649cFBCFD6163170d"; +export declare const SFRXETHOFT = "0xFD78FD3667DeF2F1097Ed221ec503AE477155394"; +export declare const SFRXUSDOFT = "0x9F87fbb47C33Cd0614E43500b9511018116F79eE"; +export declare const WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; +export declare const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; +export declare const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; +export declare const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; +export declare const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export declare const REMOTEADMINV2 = "0x000000000E0E120FCAc7b4d98e9E35E1DE6fdadb"; diff --git a/scripts/constants/zksync.js b/scripts/constants/zksync.js index a6df7fb..1b958d6 100644 --- a/scripts/constants/zksync.js +++ b/scripts/constants/zksync.js @@ -1,12 +1,8 @@ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); -exports.CHAIN_ID = - exports.LZ_CHAIN_ID = +exports.REMOTEADMINV2 = + exports.REMOTEHOPV2 = exports.FRAX_PROXY_ADMIN = - exports.LZ_BLOCK_SEND_LIB = - exports.LZ_SEND_LIB_302 = - exports.LZ_RECEIVE_LIB_302 = - exports.LZ_ENDPOINT = exports.REMOTEMINTREDEEMHOP = exports.REMOTEHOP = exports.WFRAXOFT = @@ -27,11 +23,7 @@ exports.WFRAXOFT = "0xAf01aE13Fb67AD2bb2D76f29A83961069a5F245F"; exports.REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; exports.REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; // LayerZeroInfra -exports.LZ_ENDPOINT = "0xd07C30aF3Ff30D96BDc9c6044958230Eb797DDBF"; -exports.LZ_RECEIVE_LIB_302 = "0x04830f6deCF08Dec9eD6C3fCAD215245B78A59e1"; -exports.LZ_SEND_LIB_302 = "0x07fD0e370B49919cA8dA0CE842B8177263c0E12c"; -exports.LZ_BLOCK_SEND_LIB = "0x0fddfc529b5912e1cbe38ccedf8e226566e596d3"; exports.FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; -// Chain IDs -exports.LZ_CHAIN_ID = 30165; -exports.CHAIN_ID = 324; +// HopV2 +exports.REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +exports.REMOTEADMINV2 = "0x000000000E0E120FCAc7b4d98e9E35E1DE6fdadb"; diff --git a/scripts/constants/zksync.ts b/scripts/constants/zksync.ts index c6f233f..cd23c50 100644 --- a/scripts/constants/zksync.ts +++ b/scripts/constants/zksync.ts @@ -11,3 +11,7 @@ export const REMOTEHOP = "0xc5e4A0cfef8D801278927C25fB51C1DB7b69dDFb"; export const REMOTEMINTREDEEMHOP = "0xa05E9F9B97c963B5651ed6A50Fae46625a8C400b"; // LayerZeroInfra export const FRAX_PROXY_ADMIN = "0xe59dcae52a4ffa39be99588486c84bc2dc1ba52f"; + +// HopV2 +export const REMOTEHOPV2 = "0x0000006D38568b00B457580b734e0076C62de659"; +export const REMOTEADMINV2 = "0x000000000E0E120FCAc7b4d98e9E35E1DE6fdadb"; From e8a8df8662346d9d082505c14dd9eced40c2f0da Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Thu, 5 Mar 2026 05:45:19 +0000 Subject: [PATCH 21/27] chore: remove fraxtalMsig from REMOTE_ADMIN_V2_ABI --- scripts/abis/ERC20/index.d.ts | 42 +++++++ scripts/abis/REMOTE_ADMIN_V2_ABI.json | 7 -- scripts/constants/fraxtal-l2.d.ts | 160 ++++++++++++++++++++++++++ 3 files changed, 202 insertions(+), 7 deletions(-) create mode 100644 scripts/abis/ERC20/index.d.ts create mode 100644 scripts/constants/fraxtal-l2.d.ts diff --git a/scripts/abis/ERC20/index.d.ts b/scripts/abis/ERC20/index.d.ts new file mode 100644 index 0000000..b0d83b5 --- /dev/null +++ b/scripts/abis/ERC20/index.d.ts @@ -0,0 +1,42 @@ +export declare const ERC20ABI: ( + | { + constant: boolean; + inputs: { + name: string; + type: string; + }[]; + name: string; + outputs: { + name: string; + type: string; + }[]; + payable: boolean; + stateMutability: string; + type: string; + anonymous?: undefined; + } + | { + payable: boolean; + stateMutability: string; + type: string; + constant?: undefined; + inputs?: undefined; + name?: undefined; + outputs?: undefined; + anonymous?: undefined; + } + | { + anonymous: boolean; + inputs: { + indexed: boolean; + name: string; + type: string; + }[]; + name: string; + type: string; + constant?: undefined; + outputs?: undefined; + payable?: undefined; + stateMutability?: undefined; + } +)[]; diff --git a/scripts/abis/REMOTE_ADMIN_V2_ABI.json b/scripts/abis/REMOTE_ADMIN_V2_ABI.json index de4b6d0..3eec92b 100644 --- a/scripts/abis/REMOTE_ADMIN_V2_ABI.json +++ b/scripts/abis/REMOTE_ADMIN_V2_ABI.json @@ -12,12 +12,5 @@ "outputs": [{ "internalType": "address", "name": "", "type": "address" }], "stateMutability": "view", "type": "function" - }, - { - "inputs": [], - "name": "fraxtalMsig", - "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], - "stateMutability": "view", - "type": "function" } ] diff --git a/scripts/constants/fraxtal-l2.d.ts b/scripts/constants/fraxtal-l2.d.ts new file mode 100644 index 0000000..7513728 --- /dev/null +++ b/scripts/constants/fraxtal-l2.d.ts @@ -0,0 +1,160 @@ +export declare const FRXUSD = "0xFc00000000000000000000000000000000000001"; +export declare const WFRAX = "0xFc00000000000000000000000000000000000002"; +export declare const FPI = "0xFc00000000000000000000000000000000000003"; +export declare const FPIS = "0xfc00000000000000000000000000000000000004"; +export declare const SFRXETH = "0xFC00000000000000000000000000000000000005"; +export declare const WFRXETH = "0xFC00000000000000000000000000000000000006"; +export declare const FRXBTC = "0xfC00000000000000000000000000000000000007"; +export declare const SFRAX = "0xfc00000000000000000000000000000000000008"; +export declare const FRXUSD_PROXY = "0xFc00000000000000000000000000000000000001"; +export declare const WFRAX_PROXY = "0xFc00000000000000000000000000000000000002"; +export declare const FPI_PROXY = "0xFc00000000000000000000000000000000000003"; +export declare const FPIS_PROXY = "0xfc00000000000000000000000000000000000004"; +export declare const SFRXETH_PROXY = "0xFC00000000000000000000000000000000000005"; +export declare const WFRXETH_PROXY = "0xFC00000000000000000000000000000000000006"; +export declare const FRXBTC_PROXY = "0xfC00000000000000000000000000000000000007"; +export declare const SFRAX_PROXY = "0xfc00000000000000000000000000000000000008"; +export declare const CONVEX_SQUID_WFRXETH_FRAXTAL = "0x95AB2a2F6e701873cEA0070dAc735589D089f6Bc"; +export declare const FLE_FRAX_FXS_FRAXTAL = "0xCe70630b4b2E889AdC558b58B2980437f58003D4"; +export declare const FLE_FXS_WFRXETH_FRAXTAL = "0x7A6BE195f9931341c1f4c4230fc48F8B9b9dE91b"; +export declare const FRAXSWAP_V2_FRAX_FPI_FRAXTAL = "0x7b8848f10A016341c9B2427e8541C19F31C2D243"; +export declare const FRAXSWAP_V2_FRAX_FXS_FRAXTAL = "0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25"; +export declare const FRAXSWAP_V2_FRAX_SFRXETH_FRAXTAL = "0xe402a39F788f90607A50254fAf56316E6a78231A"; +export declare const FRAXSWAP_V2_FRAX_WFRXETH_FRAXTAL = "0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7"; +export declare const FXB_TIMED_LOCKER_20261231 = "0x00a5b34d4b436E3276695a1EaA8242FA2FC11dC5"; +export declare const FXB_20261231 = "0x8e9C334afc76106F08E0383907F4Fca9bB10BA3e"; +export declare const FXB_20241231 = "0xa71bB8c79dc8FfA90A6Dd711aA9Fbe5114c19cba"; +export declare const FXB_20240630 = "0x758094A71a39De49626FE25B86631ED944558653"; +export declare const FXB_20551231 = "0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83"; +export declare const FXB_20291231 = "0xF1e2b576aF4C6a7eE966b14C810b772391e92153"; +export declare const FXB_20251231 = "0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA"; +export declare const FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = "0x00160baF84b3D2014837cc12e838ea399f8b8478"; +export declare const FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = "0x24e927daC110Aab7189a4F864d41680e4F7865FB"; +export declare const FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = "0xEcf63fd1A839fF54949eB786693237bEEC59C6e7"; +export declare const FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = "0xcD3A040f05769d7628582B403063e61B7D212F91"; +export declare const FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = "0x67c6A8A715fc726ffD0A40588701813d9eC04d9C"; +export declare const FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = "0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB"; +export declare const CAPTAIN = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +export declare const FIRST_OFFICER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +export declare const CREWMEMBER = "0xBB437059584e30598b3AF0154472E47E6e2a45B9"; +export declare const CHAINLINK_ETH_USD_ORACLE = "0xA6cBe9aB6075d8b1049Db7528f2fCf22FC7d051B"; +export declare const CIRCUIT_BREAKER_ADDRESS = "0x0eD01ea3B95e0f68DF2c9CD67F138ff3547b311C"; +export declare const FRAXLEND_DEPLOYER_V4 = "0x4C3B0e85CD8C12E049E07D9a4d68C441196E6a12"; +export declare const FRAXLEND_HOT_WALLET = "0x31562ae726AFEBe25417df01bEdC72EF489F45b3"; +export declare const FRAXLEND_PAIR_REGISTRY_ADDRESS = "0x8c22EBc8f9B96cEac97EA21c53F3B27ef2F45e57"; +export declare const FRAXLEND_WHITELIST_ADDRESS = "0x64F85076665dcE1FbEfC23391b8BFB2595c250f6"; +export declare const FRAXTAL_BLOCKHASH_PROVIDER = "0x4200000000000000000000000000000000000015"; +export declare const FRAXTAL_MERKLE_PRICE_SOURCE = "0x9990eb28E58380122AA3AdF64ea6f874df51114C"; +export declare const FRAXTAL_STATE_ROOT_ORACLE = "0xeD403d48e2bC946438B5686AA1AD65056Ccf9512"; +export declare const FRXETH_DUAL_ORACLE_REDSTONE = "0x4b0Ca693e29e5FD2AA39332a0387BBCD0f91a527"; +export declare const FXB_20240630_ORACLE = "0x1A60b40601Bb5AA192389b05F80A7BeAde6d77d7"; +export declare const FXB_20241231_ORACLE = "0x01480a0C134CeCC309015a564C7e292ba6E0F358"; +export declare const FXB_20261231_ORACLE = "0x92e606Fd8b99F99928f690a5bEb20f6f6e3ec0f3"; +export declare const FXB_20551231_ORACLE = "0x8a081F35aE1cB4314c73CdDE63CC022Ca6AdEAa6"; +export declare const FXB_20291231_ORACLE = "0x859e3b11d9f8ff5d4c4beA569F76cdD25D5Ffc4b"; +export declare const FXB_20251231_ORACLE = "0x9c51c8ba9Ce85984C2389e13Fa1b77Cd587A2A18"; +export declare const FXB_VARIABLE_RATE_2 = "0x3FdA3e9E78EAcd7381F1ED2CF145B93537878c1f"; +export declare const FXS_DUAL_ORACLE_REDSTONE = "0xB99c9d329Bd69dDf8AF57110e011F5D81801c6d2"; +export declare const SFRAX_SFRXETH_INVERSE_ORACLE_REDSTONE = "0x1010E24A2F0e6954c6456Bf925764eCc8577Fa2c"; +export declare const SFRXETH_DUAL_ORACLE_REDSTONE = "0xfbcDf41Cc692ed529b9a8cC1A5867B9524FD0164"; +export declare const TIMELOCK_ADDRESS = "0xc16068d1ca7E24E20e56bB70af4D00D92AA4f0b2"; +export declare const VARIABLE_RATE_2_ADDRESS = "0xFA7207F02ba29Cd122A9d49ce96F6cA7707A1652"; +export declare const VARIABLE_RATE_2_ADDRESS_50 = "0x3Fdb6BC356dAD0D7260E9619efa125409a08C3B2"; +export declare const FRAXLEND_PAIR_FXB_20261231_FRAX = "0x032578d99b1070682a5E171012BE1756a50a17d4"; +export declare const FRAXLEND_PAIR_FXB_20241231_FRAX = "0x6154334A7D0E7f5f0479599D15F462B200C721E1"; +export declare const FRAXLEND_PAIR_FXB_20240630_FRAX = "0x57b709e214B239821A78dFCF09c89f52bA3D80aD"; +export declare const FRAXLEND_PAIR_FXB_20291231_FRAX = "0x3e92765eE2B009b104A8A7baf3759B159c19AbA1"; +export declare const FRAXLEND_PAIR_FXB_20251231_FRAX = "0x1b48c9595385F1780d7Be1aB57f8eAcFeA3A5cE5"; +export declare const FRAXLEND_PAIR_SFRXETH_FRAX = "0x4F968317721B9c300afBff3FD37365637318271D"; +export declare const FRAXLEND_PAIR_FXS_FRAX = "0x8EdA613EC96992D3C42BCd9aC2Ae58a92929Ceb2"; +export declare const FRAXLEND_PAIR_SFRAX_SFRXETH = "0xB71E4829e81f72f7F36A0d858e58109f5948A713"; +export declare const SDAI_ERC4626_ORACLE = "0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838"; +export declare const SDAI_ORACLE_MERKLE_PRICE_SOURCE = "0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a"; +export declare const SFRAX_ERC4626_ORACLE = "0xF750636E1df115e3B334eD06E5b45c375107FC60"; +export declare const SFRAX_MERKLE_PRICE_SOURCE = "0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5"; +export declare const SFRXETH_ERC4626_ORACLE = "0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5"; +export declare const SFRXETH_MERKLE_PRICE_SOURCE = "0xa560E014501f96752726f65c27E96C3e9127Ce32"; +export declare const SUSDE_ERC4626_ORACLE = "0xd295936C8Bb465ADd1eC756a51698127CB4F4910"; +export declare const SUSDE_MERKLE_PRICE_SOURCE = "0xc2B984E37D1CAf5Eef82D9D892287361058955E9"; +export declare const FRAXSWAP_FACTORY = "0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6"; +export declare const FRAXSWAP_FRAX_FPIS_PAIR = "0x78d264E25781f31343352A0f91875B655c79B843"; +export declare const FRAXSWAP_FRAX_FPI_FARM = "0x7b8848f10A016341c9B2427e8541C19F31C2D243"; +export declare const FRAXSWAP_FRAX_FPI_PAIR = "0x0EFFABede4e31101DE5209096611D073981A817b"; +export declare const FRAXSWAP_FRAX_FXS_FARM = "0x8fE4C7F2eF79AEDd8A6e40398a17ed4DaE18Ee25"; +export declare const FRAXSWAP_FRAX_FXS_PAIR = "0xb4dA8dA10ffF1F6127ab71395053Aa1d499b503F"; +export declare const FRAXSWAP_FRAX_SFRXETH_FARM = "0xe402a39F788f90607A50254fAf56316E6a78231A"; +export declare const FRAXSWAP_FRAX_SFRXETH_PAIR = "0xEBD293F2173082320d88533316F5964298dE316E"; +export declare const FRAXSWAP_FRAX_WFRXETH_FARM = "0xfbf1d253FcAA3cE13187dBD5B8610C15Cc8241c7"; +export declare const FRAXSWAP_ROUTER = "0x39cd4db6460d8B5961F73E997E86DdbB7Ca4D5F6"; +export declare const FRAXSWAP_ROUTER_MULTIHOP = "0x67E04873691258950299Bd8610403D69bA0A1e10"; +export declare const FRAXSWAP_WFRX_ETH_PAIR = "0x4527bcEd9d41706D1436507e9a6e354d3FF44ff9"; +export declare const BALANCE_CHECKER = "0x219356ef2f11a314Dd0D8bfd7f4B0B951Cb16c3a"; +export declare const DELEGATION_REGISTRY = "0x098c837FeF2e146e96ceAF58A10F68Fc6326DC4C"; +export declare const FPIS_LOCKER_PROXY = "0x437E9F65cA234eCfed12149109587139d435AD35"; +export declare const FPIS_LOCKER_IMPL = "0x2b72DF3116cEb8E8a7391024f69A0BfF2718389D"; +export declare const FPIS_LOCKER_UTILS = "0x9E461cF6773F168A991A7aD73E2aD89ecD737745"; +export declare const FRAXTAL_POINTS_FXTL = "0xaB4b7c5C9A7C8EbB97877085A6C3550ad4Ed3f97"; +export declare const SFRAX_ERC4626_MINT_REDEEMER_PROXY = "0xBFc4D34Db83553725eC6c768da71D2D9c1456B55"; +export declare const SFRAX_ERC4626_MINT_REDEEMER_IMPL = "0x0aF57786D6B2447EA2E04F9FAB36a239c2E8C9d5"; +export declare const FRAXFERRY_ETHEREUM_FRAX = "0x00160baF84b3D2014837cc12e838ea399f8b8478"; +export declare const FRAXFERRY_ETHEREUM_FXS = "0x24e927daC110Aab7189a4F864d41680e4F7865FB"; +export declare const FRAXFERRY_ETHEREUM_FPI = "0xEcf63fd1A839fF54949eB786693237bEEC59C6e7"; +export declare const FRAXFERRY_ETHEREUM_FPIS = "0xcD3A040f05769d7628582B403063e61B7D212F91"; +export declare const FRAXFERRY_ETHEREUM_SFRXETH = "0x67c6A8A715fc726ffD0A40588701813d9eC04d9C"; +export declare const FRAXFERRY_ETHEREUM_SFRAX = "0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB"; +export declare const BLOCKHASH_PROVIDER = "0x4200000000000000000000000000000000000015"; +export declare const STATE_ROOT_ORACLE = "0xeD403d48e2bC946438B5686AA1AD65056Ccf9512"; +export declare const MERKLE_PRICE_SOURCE = "0x9990eb28E58380122AA3AdF64ea6f874df51114C"; +export declare const CHAINLINK_MERKLE_PRICE_SOURCE = "0x4AD728706bFe28A3F090b3f1D8Ac3A8515805B41"; +export declare const SFRXETH_L2_RATE_ORACLE = "0xEE095b7d9191603126Da584a1179BB403a027c3A"; +export declare const SFRAX_L2_RATE_ORACLE = "0x1B680F4385f24420D264D78cab7C58365ED3F1FF"; +export declare const SDAI_L2_RATE_ORACLE = "0xfdE8C36F32Bf32e73A1bdeb4ef3E17709674a838"; +export declare const SUSDE_L2_RATE_ORACLE = "0xd295936C8Bb465ADd1eC756a51698127CB4F4910"; +export declare const SFRXETH_L2_RATE_ORACLE_OLD = "0x8865435777730eAAbAAF2d1F55F115a87AbCf91A"; +export declare const SFRAX_L2_RATE_ORACLE_OLD = "0xF750636E1df115e3B334eD06E5b45c375107FC60"; +export declare const FRAXTAL_SDAI_MERKLE_PRICE_SOURCE = "0xf3E3E2a376939bfF87e9cac84e0E5A35e495417a"; +export declare const FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE = "0xE25D8aaa6dF41B94A415EE39cCEE0DF6673B9bDb"; +export declare const FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE = "0xabca0b314d15B3e28F24AC0ee84A63001d1b44Db"; +export declare const FRAXTAL_SUSDE_MERKLE_PRICE_SOURCE = "0xc2B984E37D1CAf5Eef82D9D892287361058955E9"; +export declare const FRAXTAL_SFRAX_MERKLE_PRICE_SOURCE_OLD = "0xe7C6385Cf5d4Ea61774A56E3aeaf60a09fC8E1d5"; +export declare const FRAXTAL_SFRXETH_MERKLE_PRICE_SOURCE_OLD = "0xa560E014501f96752726f65c27E96C3e9127Ce32"; +export declare const L1VEFXS_IMPLEMENTATION_OWNER = "0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6"; +export declare const L1VEFXS_PROXY_ADMIN_OWNER = "0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6"; +export declare const L1VEFXS_PROXY_ADMIN = "0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F"; +export declare const L1VEFXS_IMPL_V1 = "0xBDB5088A8e89e9ec83e82caA01EC20Ed976459eD"; +export declare const L1VEFXS_PROXY = "0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F"; +export declare const L1VEFXS_TOTAL_SUPPLY_ORACLE = "0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8"; +export declare const FXB_AMO = "0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313"; +export declare const OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = "0x111ddab65Af5fF96b674400246699ED40F550De1"; +export declare const VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = "0x691d1AaFB550c35B24e09bb991AEC9612342eD93"; +export declare const VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = "0x39333a540bbea6262e405E1A6d435Bd2e776561E"; +export declare const YIELD_DISTRIBUTOR_PROXY = "0x21359d1697e610e25C8229B2C57907378eD09A2E"; +export declare const YIELD_DISTRIBUTOR_IMPL = "0x08de0C3BCBa9529fe59FA4e4593805Bd55A54B0B"; +export declare const VESTEDFXS_UTILS = "0xC540f05BF5a09336078634D65E46242DFBa55030"; +export declare const VESTEDFXS_IMPL_V1 = "0x54bd5c72645fed784C117cA83533e0584b24Ee5c"; +export declare const VESTEDFXS_PROXY = "0x007FD070a7E1B0fA1364044a373Ac1339bAD89CF"; +export declare const VEFXS_AGGREGATOR_PROXY = "0x176A4e081653EbB8a2246BAfbfCf663782426531"; +export declare const VEFXS_AGGREGATOR_IMPL = "0xF9Ca1Dc83B16C72b3359CEcD1d3Fc96d80dC4Fa6"; +export declare const COMPTROLLERS = "0xC4EB45d80DC1F079045E75D5d55de8eD1c1090E6"; +export declare const PROPOSER_MULTI_SIG = "0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE"; +export declare const GOV_PROPOSER_MSIG = "0xc188a8f8066e720D892c0cfAE9B9865e3425fCdE"; +export declare const CVXSQUIDWFRXETH = "0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d"; +export declare const CVXSQUIDWFRXETH_REWARDER = "0x29FF8F9ACb27727D8A2A52D16091c12ea56E9E4d"; +export declare const SQUIDWFRXETH = "0x277FA53c8a53C880E0625c92C92a62a9F60f3f04"; +export declare const SQUIDWFRXETH_GAUGE = "0xe5E5ed1B50AE33E66ca69dF17Aa6381FDe4e9C7e"; +export declare const SQUIDWFRXETH_POOL = "0x277FA53c8a53C880E0625c92C92a62a9F60f3f04"; +export declare const CROSS_DOMAIN_MESSENGER = "0x4200000000000000000000000000000000000007"; +export declare const ERC20_FACTORY_PROXY = "0x4200000000000000000000000000000000000012"; +export declare const L2_STANDARD_BRIDGE_PROXY = "0x4200000000000000000000000000000000000010"; +export declare const L2_TO_L1_MESSAGE_PASSER = "0x4200000000000000000000000000000000000016"; +export declare const FPIOFT = "0x75c38D46001b0F8108c4136216bd2694982C20FC"; +export declare const FRXETHOFT = "0x9aBFE1F8a999B0011ecD6116649AEe8D575F5604"; +export declare const FRXUSDOFT = "0x96A394058E2b84A89bac9667B19661Ed003cF5D4"; +export declare const SFRXETHOFT = "0x999dfAbe3b1cc2EF66eB032Eea42FeA329bBa168"; +export declare const SFRXUSDOFT = "0x88Aa7854D3b2dAA5e37E7Ce73A1F39669623a361"; +export declare const WFRAXOFT = "0xd86fBBd0c8715d2C1f40e451e5C3514e65E7576A"; +export declare const FRAXTALHOP = "0x2A2019b30C157dB6c1C01306b8025167dBe1803B"; +export declare const FRAXTALMINTREDEEMHOP = "0x3e6a2cBaFD864e09e6DAb9Cf035a0AbEa32bc0BC"; +export declare const FRAX_PROXY_ADMIN = "0x223a681fc5c5522c85C96157c0efA18cd6c5405c"; +export declare const FRAXTALHOPV2 = "0x00000000e18aFc20Afe54d4B2C8688bB60c06B36"; +export declare const REMOTEADMINV2 = "0x34029e02821178B4387e12644896994f910D6E73"; From 175c2ba0fb5f428d4133302862e67fbab3759b60 Mon Sep 17 00:00:00 2001 From: Thomas Clement Date: Wed, 11 Mar 2026 16:17:32 -0400 Subject: [PATCH 22/27] Re-Add Audited Functionality + Additional Test Cases --- .../ethereum/frxUSD/versioning/FrxUSD2.sol | 31 +- .../fraxtal/frxUSD/versioning/FrxUSD2.sol | 31 +- src/test/FrxUSD/Fraxtal/CompilanceTests.t.sol | 395 +++++++++++++++++- src/test/FrxUSD/Mainnet/CompilanceTests.t.sol | 395 +++++++++++++++++- 4 files changed, 846 insertions(+), 6 deletions(-) diff --git a/src/contracts/ethereum/frxUSD/versioning/FrxUSD2.sol b/src/contracts/ethereum/frxUSD/versioning/FrxUSD2.sol index 78531c7..9732b66 100644 --- a/src/contracts/ethereum/frxUSD/versioning/FrxUSD2.sol +++ b/src/contracts/ethereum/frxUSD/versioning/FrxUSD2.sol @@ -25,6 +25,8 @@ contract FrxUSD2 is ERC20Permit, ERC20Burnable, Ownable2Step { /// @notice Whether or not the contract is paused bool public isPaused; + mapping(address => bool) public isFreezer; + function version() public pure virtual returns (string memory) { return "2.0.1"; } @@ -98,6 +100,18 @@ contract FrxUSD2 is ERC20Permit, ERC20Burnable, Ownable2Step { emit MinterRemoved(minter_address); } + function addFreezer(address _freezer) external onlyOwner { + if (isFreezer[_freezer]) revert AlreadyFreezer(); + isFreezer[_freezer] = true; + emit AddFreezer(_freezer); + } + + function removeFreezer(address _freezer) external onlyOwner { + if (!isFreezer[_freezer]) revert NotFreezer(); + isFreezer[_freezer] = false; + emit RemoveFreezer(_freezer); + } + /// @notice External admin gated function to unfreeze a set of accounts /// @param _owners Array of accounts to be unfrozen function thawMany(address[] memory _owners) external onlyOwner { @@ -115,7 +129,8 @@ contract FrxUSD2 is ERC20Permit, ERC20Burnable, Ownable2Step { /// @notice External admin gated function to batch freeze a set of accounts /// @param _owners Array of accounts to be frozen - function freezeMany(address[] memory _owners) external onlyOwner { + function freezeMany(address[] memory _owners) external { + if (!isFreezer[msg.sender] && msg.sender != owner()) revert NotFreezer(); uint256 len = _owners.length; for (uint256 i; i < len; ++i) { _freeze(_owners[i]); @@ -124,7 +139,9 @@ contract FrxUSD2 is ERC20Permit, ERC20Burnable, Ownable2Step { /// @notice External admin gated function to freeze a given account /// @param _owner The account to be frozen - function freeze(address _owner) external onlyOwner { + function freeze(address _owner) external { + if (!isFreezer[msg.sender] && msg.sender != owner()) revert NotFreezer(); + _freeze(_owner); } @@ -240,9 +257,19 @@ contract FrxUSD2 is ERC20Permit, ERC20Burnable, Ownable2Step { /// @param account The account being thawed event AccountThawed(address account); + /// @notice Event Emitted when an address is added as a freezer + /// @param account The account being added as a freezer + event AddFreezer(address account); + + /// @notice Event Emitted when an address is removed as a freezer + /// @param account The account being removed as a freezer + event RemoveFreezer(address account); + /* ========== ERRORS ========== */ error ArrayMisMatch(); error IsPaused(); error IsFrozen(); + error NotFreezer(); + error AlreadyFreezer(); error OwnerCannotInitToZeroAddress(); } diff --git a/src/contracts/fraxtal/frxUSD/versioning/FrxUSD2.sol b/src/contracts/fraxtal/frxUSD/versioning/FrxUSD2.sol index 00c5db5..3de1947 100644 --- a/src/contracts/fraxtal/frxUSD/versioning/FrxUSD2.sol +++ b/src/contracts/fraxtal/frxUSD/versioning/FrxUSD2.sol @@ -9,6 +9,9 @@ contract FrxUSD2 is ERC20PermitPermissionedOptiMintable { /// @notice Whether or not the contract is paused bool public isPaused; + /// @notice Mapping indicating which addresses can freeze accounts + mapping(address => bool) public isFreezer; + /// @notice Upgrade version of the contract /// @dev Does not impact EIP712 version, which is automatically set to "1" in constructor function version() public pure virtual override returns (string memory) { @@ -35,6 +38,18 @@ contract FrxUSD2 is ERC20PermitPermissionedOptiMintable { ) {} + function addFreezer(address _freezer) external onlyOwner { + if (isFreezer[_freezer]) revert AlreadyFreezer(); + isFreezer[_freezer] = true; + emit AddFreezer(_freezer); + } + + function removeFreezer(address _freezer) external onlyOwner { + if (!isFreezer[_freezer]) revert NotFreezer(); + isFreezer[_freezer] = false; + emit RemoveFreezer(_freezer); + } + /// @notice External admin gated function to unfreeze a set of accounts /// @param _owners Array of accounts to be unfrozen function thawMany(address[] memory _owners) external onlyOwner { @@ -52,7 +67,8 @@ contract FrxUSD2 is ERC20PermitPermissionedOptiMintable { /// @notice External admin gated function to batch freeze a set of accounts /// @param _owners Array of accounts to be frozen - function freezeMany(address[] memory _owners) external onlyOwner { + function freezeMany(address[] memory _owners) external { + if (!isFreezer[msg.sender] && msg.sender != owner) revert NotFreezer(); uint256 len = _owners.length; for (uint256 i; i < len; ++i) { _freeze(_owners[i]); @@ -61,7 +77,8 @@ contract FrxUSD2 is ERC20PermitPermissionedOptiMintable { /// @notice External admin gated function to freeze a given account /// @param _owner The account to be frozen - function freeze(address _owner) external onlyOwner { + function freeze(address _owner) external { + if (!isFreezer[msg.sender] && msg.sender != owner) revert NotFreezer(); _freeze(_owner); } @@ -147,8 +164,18 @@ contract FrxUSD2 is ERC20PermitPermissionedOptiMintable { /// @param account The account being thawed event AccountThawed(address account); + /// @notice Event Emitted when an address is added as a freezer + /// @param account The account being added as a freezer + event AddFreezer(address account); + + /// @notice Event Emitted when an address is removed as a freezer + /// @param account The account being removed as a freezer + event RemoveFreezer(address account); + /* ========== ERRORS ========== */ error ArrayMisMatch(); error IsPaused(); error IsFrozen(); + error NotFreezer(); + error AlreadyFreezer(); } diff --git a/src/test/FrxUSD/Fraxtal/CompilanceTests.t.sol b/src/test/FrxUSD/Fraxtal/CompilanceTests.t.sol index ea197cd..98d7402 100644 --- a/src/test/FrxUSD/Fraxtal/CompilanceTests.t.sol +++ b/src/test/FrxUSD/Fraxtal/CompilanceTests.t.sol @@ -6,13 +6,17 @@ import { IERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import { FrxUSD } from "src/contracts/fraxtal/frxUSD/FrxUSD.sol"; import { IFrxUSD } from "src/contracts/fraxtal/frxUSD/IFrxUSD.sol"; import { IProxy } from "src/test/helpers/IProxy.sol"; +import { SigUtils } from "src/test/utils/SigUtils.sol"; +import { EIP3009Module } from "src/contracts/shared/core/modules/EIP3009Module.sol"; import "src/Constants.sol" as Constants; contract FrxUSD_Fraxtal_Compliance is FraxTest { FrxUSD public constant frxusd = FrxUSD(0xFc00000000000000000000000000000000000001); FrxUSD public implV2; + SigUtils public sigUtils; - address al = address(0xa1); + uint256 alPrivateKey = 0x42; + address al; address bob = address(0xb0b); address carl = address(0xca71); address alice = address(0xa11ce); @@ -23,9 +27,16 @@ contract FrxUSD_Fraxtal_Compliance is FraxTest { bytes32[] frxusdStorageLayoutInitial; + // EIP-3009 test parameters + bytes32 eip3009Nonce = bytes32(abi.encode(1)); + uint256 validAfter; + uint256 validBefore; + function setUp() public virtual { vm.createSelectFork(vm.envString("FRAXTAL_MAINNET_URL")); + al = vm.addr(alPrivateKey); + /// @notice needed to register under coverage report // implV2 = FrxUSD(deployFrxUsdImplementationFraxtal()); // implV2 = FrxUSD(0x00000000cd6f03dd0A6389C40c263838636c2C01); @@ -36,6 +47,12 @@ contract FrxUSD_Fraxtal_Compliance is FraxTest { deal(address(frxusd), al, 5000e18); deal(address(frxusd), bob, 15e18); deal(address(frxusd), carl, 69e18); + + // Ensure al is an EOA for signature tests + vm.etch(al, hex""); + + validAfter = block.timestamp - 1; + validBefore = block.timestamp + 1 days; } function test_assert_balances_remain_constant() public { @@ -555,6 +572,348 @@ contract FrxUSD_Fraxtal_Compliance is FraxTest { frxusd.burnMany(targets, amounts); } + /* + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + <*> EIP-3009 Compliance w/ Freeze & Pause <*> + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + */ + + function test_transferWithAuthorization_when_from_frozen_reverts() public { + _upgradeAndFreeze(al); + + (uint8 v, bytes32 r, bytes32 s) = _signTransferAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + frxusd.transferWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_transferWithAuthorization_when_to_frozen_reverts() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.freeze(bob); + + (uint8 v, bytes32 r, bytes32 s) = _signTransferAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + frxusd.transferWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_transferWithAuthorization_when_paused_reverts() public { + test_upgrade_and_pause_successful(); + + (uint8 v, bytes32 r, bytes32 s) = _signTransferAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsPaused()"))); + frxusd.transferWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_receiveWithAuthorization_when_from_frozen_reverts() public { + _upgradeAndFreeze(al); + + (uint8 v, bytes32 r, bytes32 s) = _signReceiveAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + frxusd.receiveWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_receiveWithAuthorization_when_to_frozen_reverts() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.freeze(bob); + + (uint8 v, bytes32 r, bytes32 s) = _signReceiveAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + frxusd.receiveWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_receiveWithAuthorization_when_paused_reverts() public { + test_upgrade_and_pause_successful(); + + (uint8 v, bytes32 r, bytes32 s) = _signReceiveAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsPaused()"))); + frxusd.receiveWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_permit_succeeds_but_transferFrom_reverts_when_frozen() public { + _upgradeAndFreeze(al); + + uint256 deadline = block.timestamp + 1 days; + SigUtils.Permit memory _permit = SigUtils.Permit({ + owner: al, + spender: bob, + value: 1e18, + nonce: frxusd.nonces(al), + deadline: deadline + }); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(alPrivateKey, sigUtils.getPermitTypedDataHash(_permit)); + + // permit succeeds — approval is not gated by freeze + vm.prank(bob); + frxusd.permit({ owner: al, spender: bob, value: 1e18, deadline: deadline, v: v, r: r, s: s }); + + assertEq({ + left: frxusd.allowance(al, bob), + right: 1e18, + err: "// THEN: permit should set allowance even when frozen" + }); + + // but transferFrom using that allowance reverts + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + frxusd.transferFrom(al, alice, 1e18); + } + + function test_permit_succeeds_but_transferFrom_reverts_when_paused() public { + test_upgrade_and_pause_successful(); + + uint256 deadline = block.timestamp + 1 days; + SigUtils.Permit memory _permit = SigUtils.Permit({ + owner: al, + spender: bob, + value: 1e18, + nonce: frxusd.nonces(al), + deadline: deadline + }); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(alPrivateKey, sigUtils.getPermitTypedDataHash(_permit)); + + // permit succeeds — approval is not gated by pause + vm.prank(bob); + frxusd.permit({ owner: al, spender: bob, value: 1e18, deadline: deadline, v: v, r: r, s: s }); + + assertEq({ + left: frxusd.allowance(al, bob), + right: 1e18, + err: "// THEN: permit should set allowance even when paused" + }); + + // but transferFrom using that allowance reverts + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsPaused()"))); + frxusd.transferFrom(al, alice, 1e18); + } + + /* + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + <*> Freezer Role Delegation Tests <*> + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + */ + + function test_addFreezer_successful() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + assertTrue(frxusd.isFreezer(carl), "// THEN: carl should be a freezer"); + } + + function test_addFreezer_reverts_if_already_freezer() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + vm.prank(frxusd.owner()); + vm.expectRevert(bytes4(keccak256("AlreadyFreezer()"))); + frxusd.addFreezer(carl); + } + + function test_only_owner_can_addFreezer() public { + _upgradeFrxUSD(); + + vm.prank(badActor); + vm.expectRevert(bytes4(keccak256("OnlyOwner()"))); + frxusd.addFreezer(carl); + } + + function test_removeFreezer_successful() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + vm.prank(frxusd.owner()); + frxusd.removeFreezer(carl); + + assertFalse(frxusd.isFreezer(carl), "// THEN: carl should no longer be a freezer"); + } + + function test_removeFreezer_reverts_if_not_freezer() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + frxusd.removeFreezer(carl); + } + + function test_only_owner_can_removeFreezer() public { + _upgradeFrxUSD(); + + vm.prank(badActor); + vm.expectRevert(bytes4(keccak256("OnlyOwner()"))); + frxusd.removeFreezer(carl); + } + + function test_freezer_can_freeze() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + vm.prank(carl); + frxusd.freeze(al); + + assertTrue(frxusd.isFrozen(al), "// THEN: al should be frozen by freezer"); + } + + function test_freezer_can_freezeMany() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + targets.push(al); + targets.push(bob); + + vm.prank(carl); + frxusd.freezeMany(targets); + + assertTrue(frxusd.isFrozen(al), "// THEN: al should be frozen"); + assertTrue(frxusd.isFrozen(bob), "// THEN: bob should be frozen"); + } + + function test_non_freezer_cannot_freeze() public { + _upgradeFrxUSD(); + + vm.prank(badActor); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + frxusd.freeze(al); + } + + function test_non_freezer_cannot_freezeMany() public { + _upgradeFrxUSD(); + + targets.push(al); + + vm.prank(badActor); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + frxusd.freezeMany(targets); + } + + function test_removed_freezer_cannot_freeze() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + vm.prank(frxusd.owner()); + frxusd.removeFreezer(carl); + + vm.prank(carl); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + frxusd.freeze(al); + } + + function test_freezer_cannot_thaw() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + vm.prank(carl); + frxusd.freeze(al); + + vm.prank(carl); + vm.expectRevert(bytes4(keccak256("OnlyOwner()"))); + frxusd.thaw(al); + } + + function test_freezer_cannot_thawMany() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.addFreezer(carl); + + targets.push(al); + + vm.prank(carl); + frxusd.freezeMany(targets); + + vm.prank(carl); + vm.expectRevert(bytes4(keccak256("OnlyOwner()"))); + frxusd.thawMany(targets); + } + /* <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> <*> Helper functions to move state <*> @@ -570,6 +929,38 @@ contract FrxUSD_Fraxtal_Compliance is FraxTest { assertEq({ left: frxusd.isFrozen(toFreeze), right: true, err: "// THEN: users account is not frozen" }); } + function _signTransferAuthorization( + address from, + address to, + uint256 value + ) internal view returns (uint8 v, bytes32 r, bytes32 s) { + SigUtils.Authorization memory authorization = SigUtils.Authorization({ + from: from, + to: to, + value: value, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce + }); + (v, r, s) = vm.sign(alPrivateKey, sigUtils.getTransferWithAuthorizationTypedDataHash(authorization)); + } + + function _signReceiveAuthorization( + address from, + address to, + uint256 value + ) internal view returns (uint8 v, bytes32 r, bytes32 s) { + SigUtils.Authorization memory authorization = SigUtils.Authorization({ + from: from, + to: to, + value: value, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce + }); + (v, r, s) = vm.sign(alPrivateKey, sigUtils.getReceiveWithAuthorizationTypedDataHash(authorization)); + } + function _upgradeFrxUSD() internal { address admin = address( uint160(uint256(vm.load(address(frxusd), bytes32(uint256(keccak256("eip1967.proxy.admin")) - 1)))) @@ -585,6 +976,8 @@ contract FrxUSD_Fraxtal_Compliance is FraxTest { uint160(uint256(vm.load(address(frxusd), bytes32(uint256(keccak256("eip1967.proxy.implementation")) - 1)))) ); assertEq({ left: address(implV2), right: impl_post }); + + sigUtils = new SigUtils(frxusd.DOMAIN_SEPARATOR()); } function test_case() public { diff --git a/src/test/FrxUSD/Mainnet/CompilanceTests.t.sol b/src/test/FrxUSD/Mainnet/CompilanceTests.t.sol index 03d3924..33ce68f 100644 --- a/src/test/FrxUSD/Mainnet/CompilanceTests.t.sol +++ b/src/test/FrxUSD/Mainnet/CompilanceTests.t.sol @@ -6,13 +6,17 @@ import { IERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; import { FrxUSD } from "src/contracts/ethereum/frxUSD/FrxUSD.sol"; import { IFrxUSD } from "src/contracts/ethereum/frxUSD/IFrxUSD.sol"; import { IProxy } from "src/test/helpers/IProxy.sol"; +import { SigUtils } from "src/test/utils/SigUtils.sol"; +import { EIP3009Module } from "src/contracts/shared/core/modules/EIP3009Module.sol"; import "src/Constants.sol" as Constants; contract FrxUSD_Mainnet_Compliance is FraxTest { IFrxUSD public constant frxusd = IFrxUSD(0xCAcd6fd266aF91b8AeD52aCCc382b4e165586E29); IFrxUSD public implV2; + SigUtils public sigUtils; - address al = address(0xa1); + uint256 alPrivateKey = 0x42; + address al; address bob = address(0xb0b); address carl = address(0xca71); address alice = address(0xa11ce); @@ -23,9 +27,16 @@ contract FrxUSD_Mainnet_Compliance is FraxTest { bytes32[] frxusdStorageLayoutInitial; + // EIP-3009 test parameters + bytes32 eip3009Nonce = bytes32(abi.encode(1)); + uint256 validAfter; + uint256 validBefore; + function setUp() public virtual { vm.createSelectFork(vm.envString("MAINNET_URL")); + al = vm.addr(alPrivateKey); + /// @notice needed to register under coverage report // implV2 = IFrxUSD(deployFrxUsdImplementationEth()); // implV2 = IFrxUSD(address(new FrxUSD(address(Constants.Mainnet.COMPTROLLER_MULTISIG), "Frax USD", "frxUSD"))); @@ -35,6 +46,12 @@ contract FrxUSD_Mainnet_Compliance is FraxTest { deal(address(frxusd), al, 5000e18); deal(address(frxusd), bob, 15e18); deal(address(frxusd), carl, 69e18); + + // Ensure al is an EOA for signature tests + vm.etch(al, hex""); + + validAfter = block.timestamp - 1; + validBefore = block.timestamp + 1 days; } function test_assert_balances_remain_constant() public { @@ -483,6 +500,348 @@ contract FrxUSD_Mainnet_Compliance is FraxTest { frxusd.burnMany(targets, amounts); } + /* + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + <*> EIP-3009 Compliance w/ Freeze & Pause <*> + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + */ + + function test_transferWithAuthorization_when_from_frozen_reverts() public { + _upgradeAndFreeze(al); + + (uint8 v, bytes32 r, bytes32 s) = _signTransferAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + FrxUSD(address(frxusd)).transferWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_transferWithAuthorization_when_to_frozen_reverts() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.freeze(bob); + + (uint8 v, bytes32 r, bytes32 s) = _signTransferAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + FrxUSD(address(frxusd)).transferWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_transferWithAuthorization_when_paused_reverts() public { + test_upgrade_and_pause_successful(); + + (uint8 v, bytes32 r, bytes32 s) = _signTransferAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsPaused()"))); + FrxUSD(address(frxusd)).transferWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_receiveWithAuthorization_when_from_frozen_reverts() public { + _upgradeAndFreeze(al); + + (uint8 v, bytes32 r, bytes32 s) = _signReceiveAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + FrxUSD(address(frxusd)).receiveWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_receiveWithAuthorization_when_to_frozen_reverts() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + frxusd.freeze(bob); + + (uint8 v, bytes32 r, bytes32 s) = _signReceiveAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + FrxUSD(address(frxusd)).receiveWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_receiveWithAuthorization_when_paused_reverts() public { + test_upgrade_and_pause_successful(); + + (uint8 v, bytes32 r, bytes32 s) = _signReceiveAuthorization(al, bob, 1e18); + + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsPaused()"))); + FrxUSD(address(frxusd)).receiveWithAuthorization({ + from: al, + to: bob, + value: 1e18, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce, + v: v, + r: r, + s: s + }); + } + + function test_permit_succeeds_but_transferFrom_reverts_when_frozen() public { + _upgradeAndFreeze(al); + + uint256 deadline = block.timestamp + 1 days; + SigUtils.Permit memory _permit = SigUtils.Permit({ + owner: al, + spender: bob, + value: 1e18, + nonce: FrxUSD(address(frxusd)).nonces(al), + deadline: deadline + }); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(alPrivateKey, sigUtils.getPermitTypedDataHash(_permit)); + + // permit succeeds — approval is not gated by freeze + vm.prank(bob); + frxusd.permit({ owner: al, spender: bob, value: 1e18, deadline: deadline, v: v, r: r, s: s }); + + assertEq({ + left: frxusd.allowance(al, bob), + right: 1e18, + err: "// THEN: permit should set allowance even when frozen" + }); + + // but transferFrom using that allowance reverts + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsFrozen()"))); + frxusd.transferFrom(al, alice, 1e18); + } + + function test_permit_succeeds_but_transferFrom_reverts_when_paused() public { + test_upgrade_and_pause_successful(); + + uint256 deadline = block.timestamp + 1 days; + SigUtils.Permit memory _permit = SigUtils.Permit({ + owner: al, + spender: bob, + value: 1e18, + nonce: FrxUSD(address(frxusd)).nonces(al), + deadline: deadline + }); + (uint8 v, bytes32 r, bytes32 s) = vm.sign(alPrivateKey, sigUtils.getPermitTypedDataHash(_permit)); + + // permit succeeds — approval is not gated by pause + vm.prank(bob); + frxusd.permit({ owner: al, spender: bob, value: 1e18, deadline: deadline, v: v, r: r, s: s }); + + assertEq({ + left: frxusd.allowance(al, bob), + right: 1e18, + err: "// THEN: permit should set allowance even when paused" + }); + + // but transferFrom using that allowance reverts + vm.prank(bob); + vm.expectRevert(bytes4(keccak256("IsPaused()"))); + frxusd.transferFrom(al, alice, 1e18); + } + + /* + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + <*> Freezer Role Delegation Tests <*> + <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> + */ + + function test_addFreezer_successful() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + assertTrue(FrxUSD(address(frxusd)).isFreezer(carl), "// THEN: carl should be a freezer"); + } + + function test_addFreezer_reverts_if_already_freezer() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + vm.prank(frxusd.owner()); + vm.expectRevert(bytes4(keccak256("AlreadyFreezer()"))); + FrxUSD(address(frxusd)).addFreezer(carl); + } + + function test_only_owner_can_addFreezer() public { + _upgradeFrxUSD(); + + vm.prank(badActor); + vm.expectRevert(abi.encodeWithSignature("OwnableUnauthorizedAccount(address)", badActor)); + FrxUSD(address(frxusd)).addFreezer(carl); + } + + function test_removeFreezer_successful() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).removeFreezer(carl); + + assertFalse(FrxUSD(address(frxusd)).isFreezer(carl), "// THEN: carl should no longer be a freezer"); + } + + function test_removeFreezer_reverts_if_not_freezer() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + FrxUSD(address(frxusd)).removeFreezer(carl); + } + + function test_only_owner_can_removeFreezer() public { + _upgradeFrxUSD(); + + vm.prank(badActor); + vm.expectRevert(abi.encodeWithSignature("OwnableUnauthorizedAccount(address)", badActor)); + FrxUSD(address(frxusd)).removeFreezer(carl); + } + + function test_freezer_can_freeze() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + vm.prank(carl); + frxusd.freeze(al); + + assertTrue(frxusd.isFrozen(al), "// THEN: al should be frozen by freezer"); + } + + function test_freezer_can_freezeMany() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + targets.push(al); + targets.push(bob); + + vm.prank(carl); + frxusd.freezeMany(targets); + + assertTrue(frxusd.isFrozen(al), "// THEN: al should be frozen"); + assertTrue(frxusd.isFrozen(bob), "// THEN: bob should be frozen"); + } + + function test_non_freezer_cannot_freeze() public { + _upgradeFrxUSD(); + + vm.prank(badActor); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + frxusd.freeze(al); + } + + function test_non_freezer_cannot_freezeMany() public { + _upgradeFrxUSD(); + + targets.push(al); + + vm.prank(badActor); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + frxusd.freezeMany(targets); + } + + function test_removed_freezer_cannot_freeze() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).removeFreezer(carl); + + vm.prank(carl); + vm.expectRevert(bytes4(keccak256("NotFreezer()"))); + frxusd.freeze(al); + } + + function test_freezer_cannot_thaw() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + vm.prank(carl); + frxusd.freeze(al); + + vm.prank(carl); + vm.expectRevert(abi.encodeWithSignature("OwnableUnauthorizedAccount(address)", carl)); + frxusd.thaw(al); + } + + function test_freezer_cannot_thawMany() public { + _upgradeFrxUSD(); + + vm.prank(frxusd.owner()); + FrxUSD(address(frxusd)).addFreezer(carl); + + targets.push(al); + + vm.prank(carl); + frxusd.freezeMany(targets); + + vm.prank(carl); + vm.expectRevert(abi.encodeWithSignature("OwnableUnauthorizedAccount(address)", carl)); + frxusd.thawMany(targets); + } + /* <*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*><*> <*> Helper functions to move state <*> @@ -498,6 +857,38 @@ contract FrxUSD_Mainnet_Compliance is FraxTest { assertEq({ left: frxusd.isFrozen(toFreeze), right: true, err: "// THEN: users account is not frozen" }); } + function _signTransferAuthorization( + address from, + address to, + uint256 value + ) internal view returns (uint8 v, bytes32 r, bytes32 s) { + SigUtils.Authorization memory authorization = SigUtils.Authorization({ + from: from, + to: to, + value: value, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce + }); + (v, r, s) = vm.sign(alPrivateKey, sigUtils.getTransferWithAuthorizationTypedDataHash(authorization)); + } + + function _signReceiveAuthorization( + address from, + address to, + uint256 value + ) internal view returns (uint8 v, bytes32 r, bytes32 s) { + SigUtils.Authorization memory authorization = SigUtils.Authorization({ + from: from, + to: to, + value: value, + validAfter: validAfter, + validBefore: validBefore, + nonce: eip3009Nonce + }); + (v, r, s) = vm.sign(alPrivateKey, sigUtils.getReceiveWithAuthorizationTypedDataHash(authorization)); + } + function _upgradeFrxUSD() internal { address admin = address( uint160(uint256(vm.load(address(frxusd), bytes32(uint256(keccak256("eip1967.proxy.admin")) - 1)))) @@ -513,6 +904,8 @@ contract FrxUSD_Mainnet_Compliance is FraxTest { ); console.log("THe new implementation is: ", impl_post); assertEq({ left: address(implV2), right: impl_post }); + + sigUtils = new SigUtils(frxusd.DOMAIN_SEPARATOR()); } function test_case() public { From c72590f81d58dce5ba9f6130daf2c1430f3c3bed Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 21 Apr 2026 04:02:01 +0000 Subject: [PATCH 23/27] feat: add legacy OFT constants exports --- scripts/constants/index.ts | 18 +++++++++++------- scripts/constants/legacy-base.ts | 7 +++++++ scripts/constants/legacy-blast.ts | 7 +++++++ scripts/constants/legacy-ethereum.ts | 7 +++++++ scripts/constants/legacy-metis.ts | 7 +++++++ 5 files changed, 39 insertions(+), 7 deletions(-) create mode 100644 scripts/constants/legacy-base.ts create mode 100644 scripts/constants/legacy-blast.ts create mode 100644 scripts/constants/legacy-ethereum.ts create mode 100644 scripts/constants/legacy-metis.ts diff --git a/scripts/constants/index.ts b/scripts/constants/index.ts index a500d51..4a147ff 100644 --- a/scripts/constants/index.ts +++ b/scripts/constants/index.ts @@ -18,7 +18,11 @@ export * as Holesky from "./holesky"; export * as Hyperliquid from "./hyperliquid"; export * as Ink from "./ink"; export * as Katana from "./katana"; -export * as Linea from "./linea" +export * as LegacyBase from "./legacy-base"; +export * as LegacyBlast from "./legacy-blast"; +export * as LegacyEthereum from "./legacy-ethereum"; +export * as LegacyMetis from "./legacy-metis"; +export * as Linea from "./linea"; export * as Mainnet from "./mainnet"; export * as Mode from "./mode"; export * as Moonbeam from "./moonbeam"; @@ -28,9 +32,9 @@ export * as Plumephoenix from "./plumephoenix"; export * as Polygon from "./polygon"; export * as PolygonzkEVM from "./polygon-zkevm"; export * as Scroll from "./scroll"; -export * as Solana from "./solana" -export * as Sonic from "./sonic" -export * as Unichain from "./unichain" -export * as Worldchain from "./worldchain" -export * as XLayer from "./xlayer" -export * as ZkSync from "./zksync" +export * as Solana from "./solana"; +export * as Sonic from "./sonic"; +export * as Unichain from "./unichain"; +export * as Worldchain from "./worldchain"; +export * as XLayer from "./xlayer"; +export * as ZkSync from "./zksync"; diff --git a/scripts/constants/legacy-base.ts b/scripts/constants/legacy-base.ts new file mode 100644 index 0000000..bba0d24 --- /dev/null +++ b/scripts/constants/legacy-base.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-blast.ts b/scripts/constants/legacy-blast.ts new file mode 100644 index 0000000..bba0d24 --- /dev/null +++ b/scripts/constants/legacy-blast.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-ethereum.ts b/scripts/constants/legacy-ethereum.ts new file mode 100644 index 0000000..6cc22f3 --- /dev/null +++ b/scripts/constants/legacy-ethereum.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs / adapters +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-metis.ts b/scripts/constants/legacy-metis.ts new file mode 100644 index 0000000..bba0d24 --- /dev/null +++ b/scripts/constants/legacy-metis.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; From de6078aaf395d44fb2e7c6c182b7a049303a3bc2 Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 21 Apr 2026 04:07:22 +0000 Subject: [PATCH 24/27] feat: add legacy OFT constants exports --- scripts/constants/index.ts | 4 ++++ scripts/constants/legacy-base.ts | 7 +++++++ scripts/constants/legacy-blast.ts | 7 +++++++ scripts/constants/legacy-ethereum.ts | 7 +++++++ scripts/constants/legacy-metis.ts | 7 +++++++ 5 files changed, 32 insertions(+) create mode 100644 scripts/constants/legacy-base.ts create mode 100644 scripts/constants/legacy-blast.ts create mode 100644 scripts/constants/legacy-ethereum.ts create mode 100644 scripts/constants/legacy-metis.ts diff --git a/scripts/constants/index.ts b/scripts/constants/index.ts index cdd0890..7f6cb39 100644 --- a/scripts/constants/index.ts +++ b/scripts/constants/index.ts @@ -18,6 +18,10 @@ export * as Holesky from "./holesky"; export * as Hyperliquid from "./hyperliquid"; export * as Ink from "./ink"; export * as Katana from "./katana"; +export * as LegacyBase from "./legacy-base"; +export * as LegacyBlast from "./legacy-blast"; +export * as LegacyEthereum from "./legacy-ethereum"; +export * as LegacyMetis from "./legacy-metis"; export * as Linea from "./linea"; export * as Mainnet from "./mainnet"; export * as Monad from "./monad"; diff --git a/scripts/constants/legacy-base.ts b/scripts/constants/legacy-base.ts new file mode 100644 index 0000000..bba0d24 --- /dev/null +++ b/scripts/constants/legacy-base.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-blast.ts b/scripts/constants/legacy-blast.ts new file mode 100644 index 0000000..bba0d24 --- /dev/null +++ b/scripts/constants/legacy-blast.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-ethereum.ts b/scripts/constants/legacy-ethereum.ts new file mode 100644 index 0000000..6cc22f3 --- /dev/null +++ b/scripts/constants/legacy-ethereum.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs / adapters +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-metis.ts b/scripts/constants/legacy-metis.ts new file mode 100644 index 0000000..bba0d24 --- /dev/null +++ b/scripts/constants/legacy-metis.ts @@ -0,0 +1,7 @@ +// LayerZero Legacy OFTs +export const FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +export const FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +export const FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +export const SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +export const SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +export const WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; From 1c61acf3f245c7a04653f92ab245a2d68edf28de Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Tue, 21 Apr 2026 04:45:06 +0000 Subject: [PATCH 25/27] build: compile legacy OFT constants to JS --- scripts/constants/index.js | 8 ++++++++ scripts/constants/legacy-base.js | 10 ++++++++++ scripts/constants/legacy-blast.js | 10 ++++++++++ scripts/constants/legacy-ethereum.js | 10 ++++++++++ scripts/constants/legacy-metis.js | 10 ++++++++++ 5 files changed, 48 insertions(+) create mode 100644 scripts/constants/legacy-base.js create mode 100644 scripts/constants/legacy-blast.js create mode 100644 scripts/constants/legacy-ethereum.js create mode 100644 scripts/constants/legacy-metis.js diff --git a/scripts/constants/index.js b/scripts/constants/index.js index 87804bd..bd7418b 100644 --- a/scripts/constants/index.js +++ b/scripts/constants/index.js @@ -71,6 +71,10 @@ exports.ZkSync = exports.Monad = exports.Mainnet = exports.Linea = + exports.LegacyMetis = + exports.LegacyEthereum = + exports.LegacyBlast = + exports.LegacyBase = exports.Katana = exports.Ink = exports.Hyperliquid = @@ -112,6 +116,10 @@ exports.Holesky = __importStar(require("./holesky")); exports.Hyperliquid = __importStar(require("./hyperliquid")); exports.Ink = __importStar(require("./ink")); exports.Katana = __importStar(require("./katana")); +exports.LegacyBase = __importStar(require("./legacy-base")); +exports.LegacyBlast = __importStar(require("./legacy-blast")); +exports.LegacyEthereum = __importStar(require("./legacy-ethereum")); +exports.LegacyMetis = __importStar(require("./legacy-metis")); exports.Linea = __importStar(require("./linea")); exports.Mainnet = __importStar(require("./mainnet")); exports.Monad = __importStar(require("./monad")); diff --git a/scripts/constants/legacy-base.js b/scripts/constants/legacy-base.js new file mode 100644 index 0000000..5b8cd35 --- /dev/null +++ b/scripts/constants/legacy-base.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WFRAXOFT = exports.SFRXUSDOFT = exports.SFRXETHOFT = exports.FRXUSDOFT = exports.FRXETHOFT = exports.FPIOFT = void 0; +// LayerZero Legacy OFTs +exports.FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +exports.FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +exports.FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +exports.SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +exports.SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +exports.WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-blast.js b/scripts/constants/legacy-blast.js new file mode 100644 index 0000000..5b8cd35 --- /dev/null +++ b/scripts/constants/legacy-blast.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WFRAXOFT = exports.SFRXUSDOFT = exports.SFRXETHOFT = exports.FRXUSDOFT = exports.FRXETHOFT = exports.FPIOFT = void 0; +// LayerZero Legacy OFTs +exports.FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +exports.FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +exports.FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +exports.SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +exports.SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +exports.WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-ethereum.js b/scripts/constants/legacy-ethereum.js new file mode 100644 index 0000000..bcfc150 --- /dev/null +++ b/scripts/constants/legacy-ethereum.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WFRAXOFT = exports.SFRXUSDOFT = exports.SFRXETHOFT = exports.FRXUSDOFT = exports.FRXETHOFT = exports.FPIOFT = void 0; +// LayerZero Legacy OFTs / adapters +exports.FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +exports.FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +exports.FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +exports.SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +exports.SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +exports.WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; diff --git a/scripts/constants/legacy-metis.js b/scripts/constants/legacy-metis.js new file mode 100644 index 0000000..5b8cd35 --- /dev/null +++ b/scripts/constants/legacy-metis.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.WFRAXOFT = exports.SFRXUSDOFT = exports.SFRXETHOFT = exports.FRXUSDOFT = exports.FRXETHOFT = exports.FPIOFT = void 0; +// LayerZero Legacy OFTs +exports.FPIOFT = "0x6Eca253b102D41B6B69AC815B9CC6bD47eF1979d"; +exports.FRXETHOFT = "0xF010a7c8877043681D59AD125EbF575633505942"; +exports.FRXUSDOFT = "0x909DBdE1eBE906Af95660033e478D59EFe831fED"; +exports.SFRXETHOFT = "0x1f55a02A049033E3419a8E2975cF3F572F4e6E9A"; +exports.SFRXUSDOFT = "0xe4796cCB6bB5DE2290C417Ac337F2b66CA2E770E"; +exports.WFRAXOFT = "0x23432452B720C80553458496D4D9d7C5003280d0"; From dc5c23f695314db06988656c4578ee35d03fde6e Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Wed, 22 Apr 2026 00:21:05 +0000 Subject: [PATCH 26/27] style: prettier format Constants.sol Fix pnpm lint:check failure on CI by running prettier --write on the generated src/Constants.sol. --- src/Constants.sol | 918 ++++++++++++++++++++++++++++++++++------------ 1 file changed, 687 insertions(+), 231 deletions(-) diff --git a/src/Constants.sol b/src/Constants.sol index f73a49c..abf0fd3 100644 --- a/src/Constants.sol +++ b/src/Constants.sol @@ -53,9 +53,7 @@ abstract contract AddressHelperAptos is TestBase { labelConstants(); } - function labelConstants() public { - - } + function labelConstants() public {} } library Arbitrum { @@ -105,13 +103,20 @@ library Arbitrum { address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FERRY_TO_POLYGON = 0xe57314D4405289FfC91306E4574C28b7394c4822; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = 0x078Dd77De4e0f480D7442495d55707cE071B4B09; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE = + 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE = + 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE = + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE = + 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE = + 0x078Dd77De4e0f480D7442495d55707cE071B4B09; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE = + 0x1B0b9991Df27a4F2847478127d51Fb29883882f5; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE = + 0xf1C16E1c01e62716884ef947063e9C7D44eC287F; address internal constant FRAXLEND_WHITELIST_ADDRESS = 0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079; address internal constant FRAXLEND_HOT_WALLET = 0xdB3388e770F49A604E11f1a2084B39279492a61f; address internal constant FRAXLEND_PAIR_REGISTRY_ADDRESS = 0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d; @@ -257,13 +262,34 @@ abstract contract AddressHelperArbitrum is TestBase { vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_CREWMEMBER"); vm.label(0xe57314D4405289FfC91306E4574C28b7394c4822, "Constants.ARBI_FERRY_TO_POLYGON"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ARBI_FIRST_OFFICER"); - vm.label(0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE"); - vm.label(0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE"); - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE"); - vm.label(0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE"); - vm.label(0x078Dd77De4e0f480D7442495d55707cE071B4B09, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE"); - vm.label(0x1B0b9991Df27a4F2847478127d51Fb29883882f5, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE"); - vm.label(0xf1C16E1c01e62716884ef947063e9C7D44eC287F, "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE"); + vm.label( + 0x5a9BEf8CEa603aAc78a523fb245C1A9264D50706, + "Constants.ARBI_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ARBI_SIDE" + ); + vm.label( + 0x4EE62cA4DC0576b943dc5A8A8b9FF0883C5F2fe1, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ARBI_SIDE" + ); + vm.label( + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ARBI_SIDE" + ); + vm.label( + 0x6c5Ae8dCaD1E101FB108a89954D7dC0B8991445b, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ARBI_SIDE" + ); + vm.label( + 0x078Dd77De4e0f480D7442495d55707cE071B4B09, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ARBI_SIDE" + ); + vm.label( + 0x1B0b9991Df27a4F2847478127d51Fb29883882f5, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ARBI_SIDE" + ); + vm.label( + 0xf1C16E1c01e62716884ef947063e9C7D44eC287F, + "Constants.ARBI_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ARBI_SIDE" + ); vm.label(0xBC5Fcb3725c53b6EA8395A492Dad3D32F09EF079, "Constants.ARBI_FRAXLEND_WHITELIST_ADDRESS"); vm.label(0xdB3388e770F49A604E11f1a2084B39279492a61f, "Constants.ARBI_FRAXLEND_HOT_WALLET"); vm.label(0x0bD2fFBcB0A17De2d5a543ec2D47C772eeaD316d, "Constants.ARBI_FRAXLEND_PAIR_REGISTRY_ADDRESS"); @@ -400,13 +426,20 @@ library Avalanche { address internal constant TRADER_JOE_FRAX_AVAX = 0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89; address internal constant TRADER_JOE_FRAX_GOHM = 0x3E6Be71dE004363379d864006AAC37C9F55F8329; address internal constant TRADER_JOE_FXS_AVAX = 0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = 0xC311b600bc926a3a8aC39945471427DFd9196930; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE = + 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE = + 0xC311b600bc926a3a8aC39945471427DFd9196930; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE = + 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE = + 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE = + 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE = + 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE = + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -461,13 +494,34 @@ abstract contract AddressHelperAvalanche is TestBase { vm.label(0x862905a82382Db9405a40DCAa8Ee9e8F4af52C89, "Constants.AVAX_TRADER_JOE_FRAX_AVAX"); vm.label(0x3E6Be71dE004363379d864006AAC37C9F55F8329, "Constants.AVAX_TRADER_JOE_FRAX_GOHM"); vm.label(0x53942Dcce5087f56cF1D68F4e017Ca3A793F59a2, "Constants.AVAX_TRADER_JOE_FXS_AVAX"); - vm.label(0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE"); - vm.label(0xC311b600bc926a3a8aC39945471427DFd9196930, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE"); - vm.label(0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE"); - vm.label(0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE"); - vm.label(0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE"); - vm.label(0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE"); - vm.label(0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE"); + vm.label( + 0x5dfF474Cea8A1FA929AC9A3cE2550376aF11d2A8, + "Constants.AVAX_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__AVAX_SIDE" + ); + vm.label( + 0xC311b600bc926a3a8aC39945471427DFd9196930, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__AVAX_SIDE" + ); + vm.label( + 0x5E2Ba6a55a5A031d4eCdbAf5691316b7779A6dD4, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__AVAX_SIDE" + ); + vm.label( + 0xb3F6A473b875d74b0E2a86ba9F8a2A935241BaE7, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__AVAX_SIDE" + ); + vm.label( + 0x8f4312DAB71BaAaF64917556333B004db5f3D7DA, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__AVAX_SIDE" + ); + vm.label( + 0xaf45B8fbde0e0aCbeB5Acf2faE28A34701b1eF01, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__AVAX_SIDE" + ); + vm.label( + 0x0304A365C0fbb4b1Ad423887861b9b69a5f0c00E, + "Constants.AVAX_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__AVAX_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.AVAX_CREWMEMBER"); @@ -606,7 +660,8 @@ library BSC { address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE = 0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE = 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE = 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = 0x612015939f70C87E2041cc5daD909101c1A2383F; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE = + 0x612015939f70C87E2041cc5daD909101c1A2383F; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE = 0x5E8422345238F34275888049021821E8E08CAa1f; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -658,13 +713,28 @@ abstract contract AddressHelperBSC is TestBase { vm.label(0x5e1F728C0123f7e8B237F61D0105bf9CBd8867B5, "Constants.BSC_IMPOSSIBLE_FRAX_IF"); vm.label(0x5BE579e5fFF39a958E6269C6D011cd5f21e2cc32, "Constants.BSC_IMPOSSIBLE_FRAX_FXS"); vm.label(0x6022bA7e5A70E1bAA98d47a566F3495A26511b25, "Constants.BSC_PLANET_FINANCE_FRAX_LENDING"); - vm.label(0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, "Constants.BSC_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE"); + vm.label( + 0x10Ef54F944639764d2d5Efa272262f06cfaF09AE, + "Constants.BSC_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__BSC_SIDE" + ); vm.label(0x5CD3d6465cd21b645F15175840f4659228C6195c, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FXS__BSC_SIDE"); vm.label(0x1B01514A2B3CdEf16fD3c680a818A0Ab97Da8a09, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FPI__BSC_SIDE"); - vm.label(0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE"); - vm.label(0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE"); - vm.label(0x612015939f70C87E2041cc5daD909101c1A2383F, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE"); - vm.label(0x5E8422345238F34275888049021821E8E08CAa1f, "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE"); + vm.label( + 0x0248940C22D2586450dd5145E81B7Fc0CA4Dd4a2, + "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__BSC_SIDE" + ); + vm.label( + 0xB7C974530e59017DF7FA06b1EBD9e8a1E9aceC29, + "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__BSC_SIDE" + ); + vm.label( + 0x612015939f70C87E2041cc5daD909101c1A2383F, + "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__BSC_SIDE" + ); + vm.label( + 0x5E8422345238F34275888049021821E8E08CAa1f, + "Constants.BSC_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__BSC_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.BSC_CREWMEMBER"); @@ -758,10 +828,13 @@ library Fantom { address internal constant SPIRITSWAP_FRAX_FXS = 0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381; address internal constant SPIRITSWAP_FRAX_USDC = 0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d; address internal constant VEDAO_FRAX = 0xE04C26444d37fE103B9cc8033c99b09D47056f51; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE = + 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE; address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE = 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE = + 0x12b6a8178C67B2835E280E1Ed709F64446cddb08; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE = + 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -814,10 +887,22 @@ abstract contract AddressHelperFantom is TestBase { vm.label(0x21cE9F4bCe3Ec48f34cE9073a5102bEEd965f381, "Constants.FTM_SPIRITSWAP_FRAX_FXS"); vm.label(0x1478AEC7896e40aE5fB858C77D389F0B3e6CbC5d, "Constants.FTM_SPIRITSWAP_FRAX_USDC"); vm.label(0xE04C26444d37fE103B9cc8033c99b09D47056f51, "Constants.FTM_VEDAO_FRAX"); - vm.label(0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE"); - vm.label(0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE"); - vm.label(0x12b6a8178C67B2835E280E1Ed709F64446cddb08, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE"); - vm.label(0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE"); + vm.label( + 0x088Be716eCA24b143fCC9ed06C6ae9977A469CCE, + "Constants.FTM_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__FTM_SIDE" + ); + vm.label( + 0x9b75031D46CdEe779B36F7F2f1857fd987C6C98c, + "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__FTM_SIDE" + ); + vm.label( + 0x12b6a8178C67B2835E280E1Ed709F64446cddb08, + "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__FTM_SIDE" + ); + vm.label( + 0x71e1FEeAA17b6557c5FaD60101ca12F81d03838C, + "Constants.FTM_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__FTM_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FTM_CREWMEMBER"); @@ -963,12 +1048,18 @@ library FraxtalL2 { address internal constant FXB_20551231 = 0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83; address internal constant FXB_20291231 = 0xF1e2b576aF4C6a7eE966b14C810b772391e92153; address internal constant FXB_20251231 = 0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = 0x00160baF84b3D2014837cc12e838ea399f8b8478; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = 0x24e927daC110Aab7189a4F864d41680e4F7865FB; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = 0xcD3A040f05769d7628582B403063e61B7D212F91; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE = + 0x00160baF84b3D2014837cc12e838ea399f8b8478; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE = + 0x24e927daC110Aab7189a4F864d41680e4F7865FB; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE = + 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE = + 0xcD3A040f05769d7628582B403063e61B7D212F91; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE = + 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE = + 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -1060,7 +1151,8 @@ library FraxtalL2 { address internal constant L1VEFXS_PROXY = 0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F; address internal constant L1VEFXS_TOTAL_SUPPLY_ORACLE = 0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8; address internal constant FXB_AMO = 0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313; - address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = 0x111ddab65Af5fF96b674400246699ED40F550De1; + address internal constant OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1 = + 0x111ddab65Af5fF96b674400246699ED40F550De1; address internal constant VEFXS_YIELD_DISTRIBUTOR_IMPL_V1 = 0x691d1AaFB550c35B24e09bb991AEC9612342eD93; address internal constant VEFXS_YIELD_DISTRIBUTOR_PROXY_V1 = 0x39333a540bbea6262e405E1A6d435Bd2e776561E; address internal constant YIELD_DISTRIBUTOR_PROXY = 0x21359d1697e610e25C8229B2C57907378eD09A2E; @@ -1131,12 +1223,30 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0xc38173D34afaEA88Bc482813B3CD267bc8A1EA83, "Constants.FXTL_FXB_20551231"); vm.label(0xF1e2b576aF4C6a7eE966b14C810b772391e92153, "Constants.FXTL_FXB_20291231"); vm.label(0xacA9A33698cF96413A40A4eB9E87906ff40fC6CA, "Constants.FXTL_FXB_20251231"); - vm.label(0x00160baF84b3D2014837cc12e838ea399f8b8478, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE"); - vm.label(0x24e927daC110Aab7189a4F864d41680e4F7865FB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE"); - vm.label(0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE"); - vm.label(0xcD3A040f05769d7628582B403063e61B7D212F91, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE"); - vm.label(0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE"); - vm.label(0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE"); + vm.label( + 0x00160baF84b3D2014837cc12e838ea399f8b8478, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__FXTL_SIDE" + ); + vm.label( + 0x24e927daC110Aab7189a4F864d41680e4F7865FB, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__FXTL_SIDE" + ); + vm.label( + 0xEcf63fd1A839fF54949eB786693237bEEC59C6e7, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__FXTL_SIDE" + ); + vm.label( + 0xcD3A040f05769d7628582B403063e61B7D212F91, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__FXTL_SIDE" + ); + vm.label( + 0x67c6A8A715fc726ffD0A40588701813d9eC04d9C, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__FXTL_SIDE" + ); + vm.label( + 0x08Be8BaAb62fB0A363f38C82Ee2320A36b72f2DB, + "Constants.FXTL_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__FXTL_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.FXTL_CREWMEMBER"); @@ -1228,7 +1338,10 @@ abstract contract AddressHelperFraxtalL2 is TestBase { vm.label(0xCDD512227340C20B70aDC37C5Bd1E46F69Bb675F, "Constants.FXTL_L1VEFXS_PROXY"); vm.label(0xaBBeFFb0d24EAcFFD3Be194471F0FD8aaaa3e5f8, "Constants.FXTL_L1VEFXS_TOTAL_SUPPLY_ORACLE"); vm.label(0x55271b0d4DaC2664Fa9d44F8cccd89A3e6342313, "Constants.FXTL_FXB_AMO"); - vm.label(0x111ddab65Af5fF96b674400246699ED40F550De1, "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1"); + vm.label( + 0x111ddab65Af5fF96b674400246699ED40F550De1, + "Constants.FXTL_OPTIMISM_MINTABLE_PERMIT_ERC20_FACTORY_IMPL_V1" + ); vm.label(0x691d1AaFB550c35B24e09bb991AEC9612342eD93, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_IMPL_V1"); vm.label(0x39333a540bbea6262e405E1A6d435Bd2e776561E, "Constants.FXTL_VEFXS_YIELD_DISTRIBUTOR_PROXY_V1"); vm.label(0x21359d1697e610e25C8229B2C57907378eD09A2E, "Constants.FXTL_YIELD_DISTRIBUTOR_PROXY"); @@ -1288,7 +1401,10 @@ abstract contract AddressHelperFraxtalTestnetL1 is TestBase { vm.label(0x0301A6b26a37566d3DCebC7fC4c2143B426bBf53, "Constants.FXTL_TN_L1_L1_ERC721_BRIDGE_PROXY"); vm.label(0x0BaafC217162f64930909aD9f2B27125121d6332, "Constants.FXTL_TN_L1_L1_STANDARD_BRIDGE_PROXY"); vm.label(0x715EA64DA13F4d0831ece4Ad3E8c1aa013167F32, "Constants.FXTL_TN_L1_L2_OUTPUT_ORACLE_PROXY"); - vm.label(0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, "Constants.FXTL_TN_L1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY"); + vm.label( + 0x740fAfe2383F736d0Bd1a042E50fE15dDa2726C6, + "Constants.FXTL_TN_L1_OPTIMISM_MINTABLE_ERC20_FACTORY_PROXY" + ); vm.label(0xB9c64BfA498d5b9a8398Ed6f46eb76d90dE5505d, "Constants.FXTL_TN_L1_OPTIMISM_PORTAL_PROXY"); vm.label(0x570Bf63A187776A19a44E6D1e055E3da65C1E3Db, "Constants.FXTL_TN_L1_SYSTEM_CONFIG_PROXY"); } @@ -1684,70 +1800,123 @@ library Mainnet { address internal constant CURVE_20261231_MAINNET_POOL = 0xe035e27A8eD6842b478933820f90093D205F7098; address internal constant CURVE_20261231_ARBITRUM_POOL = 0x946adc524BD312D036776798c46ceDD948DD0A0f; address internal constant CURVE_20261231_ARBITRUM_GAUGE = 0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9; - address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = 0x4b8792aF00eaE944484bF572bc33029B2184a50C; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; - address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; - address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; - address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = 0xA381d58e96eC3818c825E1fb264099448945CF8b; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = 0x18A5ca670dC42D0551f00E11A730074f6787f17F; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = 0xF380200B115Caa22D49e6C115b758d6130377620; - address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; + address internal constant FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE = + 0x85c5f05Ae4CB68190C695a22b292C3bA90696128; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE = + 0x4b8792aF00eaE944484bF572bc33029B2184a50C; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE = + 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE = + 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE = + 0x505603e2440b44C1602b44D0Eb8385399b3F7bab; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE = + 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6; + address internal constant FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE = + 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d; + address internal constant FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE = + 0x6ac96F65156281a9383455D704b58A74ea9C9eC4; + address internal constant FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE = + 0xA381d58e96eC3818c825E1fb264099448945CF8b; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE = + 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE = + 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE = + 0x18A5ca670dC42D0551f00E11A730074f6787f17F; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE = + 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE = + 0xF380200B115Caa22D49e6C115b758d6130377620; + address internal constant FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE = + 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9; address internal constant FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE = 0x3eF1d856EA62A2292B8690855042095a7aC48B4b; address internal constant FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE = 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE = 0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE = 0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE = 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE = 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5; - address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = 0x621D0e62f26314387f338A2509aFA3Ae3414661A; + address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE = + 0x621D0e62f26314387f338A2509aFA3Ae3414661A; address internal constant FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE = 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9; address internal constant FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE = 0x2d2261f970F605C813f160E8BAEd455E9004A842; - address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = 0xfB788F9E20ef426a32A67986654750172A6c1788; + address internal constant FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE = + 0xfB788F9E20ef426a32A67986654750172A6c1788; address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE = 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; - address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = 0x9A576A3d39c589A861B46864C253288bcA428a6c; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = 0x958815f476cD07354c0BC034EE5077B20fD93003; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; - address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = 0x228567c10b7533C88057c10dDeA6349360F122c5; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = 0x86E71075e55F0aaD27D700017E0783458310c98a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = 0xF887C4cFAAfB43d1AA7De204344895591016772c; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE = + 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE; + address internal constant FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE = + 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE = + 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE = + 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE = + 0x9A576A3d39c589A861B46864C253288bcA428a6c; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE = + 0x958815f476cD07354c0BC034EE5077B20fD93003; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE = + 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3; + address internal constant FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE = + 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE = + 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE = + 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE = + 0x228567c10b7533C88057c10dDeA6349360F122c5; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE = + 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE = + 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE = + 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE = + 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE = + 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE = + 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE = + 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE = + 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE = + 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE = + 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE = + 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE = + 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE = + 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE = + 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE = + 0x86E71075e55F0aaD27D700017E0783458310c98a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE = + 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE = + 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE = + 0xF887C4cFAAfB43d1AA7De204344895591016772c; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE = + 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE = + 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE = + 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE = + 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4; address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE = 0x27E97F35D80514D5DD1Caa730e22a292E912a214; address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE = 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; - address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE = + 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE = + 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9; + address internal constant FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE = + 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37; address internal constant FRAXFERRY_CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FRAXFERRY_FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FRAXFERRY_CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -2706,70 +2875,256 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0xe035e27A8eD6842b478933820f90093D205F7098, "Constants.ETH_CURVE_20261231_MAINNET_POOL"); vm.label(0x946adc524BD312D036776798c46ceDD948DD0A0f, "Constants.ETH_CURVE_20261231_ARBITRUM_POOL"); vm.label(0xa2617A26f9f528fa7B0E47fc2e66FcC04C6682E9, "Constants.ETH_CURVE_20261231_ARBITRUM_GAUGE"); - vm.label(0x85c5f05Ae4CB68190C695a22b292C3bA90696128, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE"); - vm.label(0x4b8792aF00eaE944484bF572bc33029B2184a50C, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE"); - vm.label(0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE"); - vm.label(0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE"); - vm.label(0x505603e2440b44C1602b44D0Eb8385399b3F7bab, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE"); - vm.label(0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE"); - vm.label(0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE"); - vm.label(0x6ac96F65156281a9383455D704b58A74ea9C9eC4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE"); - vm.label(0xA381d58e96eC3818c825E1fb264099448945CF8b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE"); - vm.label(0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE"); - vm.label(0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE"); - vm.label(0x18A5ca670dC42D0551f00E11A730074f6787f17F, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE"); - vm.label(0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE"); - vm.label(0xF380200B115Caa22D49e6C115b758d6130377620, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE"); - vm.label(0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE"); - vm.label(0x3eF1d856EA62A2292B8690855042095a7aC48B4b, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE"); - vm.label(0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE"); + vm.label( + 0x85c5f05Ae4CB68190C695a22b292C3bA90696128, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_ARBITRUM__FRAX__ETH_SIDE" + ); + vm.label( + 0x4b8792aF00eaE944484bF572bc33029B2184a50C, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FXS__ETH_SIDE" + ); + vm.label( + 0x5878d03AA50d2c00A921948Ea8Fa5F2d247f6BDB, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPI__ETH_SIDE" + ); + vm.label( + 0xCd4aa7DB9D8a995a651498E94f6693A4D26e6C9E, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FPIS__ETH_SIDE" + ); + vm.label( + 0x505603e2440b44C1602b44D0Eb8385399b3F7bab, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__FRXETH__ETH_SIDE" + ); + vm.label( + 0x8afd5082E0C24dEcEA39A9eFb14e4ACF4373D7D6, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x2453b1FbD17ceA069A31C9D16A27f4F93a85Cc0d, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ARBITRUM__SFRAX__ETH_SIDE" + ); + vm.label( + 0x6ac96F65156281a9383455D704b58A74ea9C9eC4, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AURORA__FRAX__ETH_SIDE" + ); + vm.label( + 0xA381d58e96eC3818c825E1fb264099448945CF8b, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_AVALANCHE__FRAX__ETH_SIDE" + ); + vm.label( + 0x9Ab224996D25bfDCB91d838F7f1902698Ac0a742, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FXS__ETH_SIDE" + ); + vm.label( + 0xbb6b54F8969a4711527fdF6AB852B6D6cdF368d1, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPI__ETH_SIDE" + ); + vm.label( + 0x18A5ca670dC42D0551f00E11A730074f6787f17F, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FPIS__ETH_SIDE" + ); + vm.label( + 0x94ddd112C9ea0fb534e376BE09A50d310F0612b4, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__FRXETH__ETH_SIDE" + ); + vm.label( + 0xF380200B115Caa22D49e6C115b758d6130377620, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x59ae66FB395893E3FD965aDb06A52d06C49dF8A9, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_AVALANCHE__SFRAX__ETH_SIDE" + ); + vm.label( + 0x3eF1d856EA62A2292B8690855042095a7aC48B4b, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BOBA__FRAX__ETH_SIDE" + ); + vm.label( + 0xDAe210BfB0cF8c81EDB4b459e2e0bA14D553e2D9, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_BSC__FRAX__ETH_SIDE" + ); vm.label(0x9B62402Eb9A755677dEbdaE3639CB531c0Af0E5d, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FXS__ETH_SIDE"); vm.label(0xfbD33d2f3330f063C87b523Ba80D5F7f296E5393, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPI__ETH_SIDE"); - vm.label(0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE"); - vm.label(0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE"); - vm.label(0x621D0e62f26314387f338A2509aFA3Ae3414661A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE"); - vm.label(0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE"); - vm.label(0x2d2261f970F605C813f160E8BAEd455E9004A842, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE"); - vm.label(0xfB788F9E20ef426a32A67986654750172A6c1788, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE"); - vm.label(0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE"); - vm.label(0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE"); - vm.label(0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE"); - vm.label(0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE"); - vm.label(0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE"); - vm.label(0x9A576A3d39c589A861B46864C253288bcA428a6c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE"); - vm.label(0x958815f476cD07354c0BC034EE5077B20fD93003, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE"); - vm.label(0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE"); - vm.label(0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE"); - vm.label(0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE"); - vm.label(0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE"); - vm.label(0x228567c10b7533C88057c10dDeA6349360F122c5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE"); - vm.label(0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE"); - vm.label(0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE"); - vm.label(0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE"); - vm.label(0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE"); - vm.label(0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE"); - vm.label(0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE"); - vm.label(0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE"); - vm.label(0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE"); - vm.label(0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE"); - vm.label(0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE"); - vm.label(0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE"); - vm.label(0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE"); - vm.label(0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE"); - vm.label(0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE"); - vm.label(0x86E71075e55F0aaD27D700017E0783458310c98a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE"); - vm.label(0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE"); - vm.label(0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE"); - vm.label(0xF887C4cFAAfB43d1AA7De204344895591016772c, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE"); - vm.label(0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE"); - vm.label(0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE"); - vm.label(0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE"); - vm.label(0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE"); - vm.label(0x27E97F35D80514D5DD1Caa730e22a292E912a214, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE"); - vm.label(0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE"); - vm.label(0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE"); - vm.label(0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE"); - vm.label(0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE"); + vm.label( + 0xf18B122c3935Ff49f62C8f1f77Dc42A6F85A0bb5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FPIS__ETH_SIDE" + ); + vm.label( + 0xce4DbAF3fa72C962Ee1F371694109fc2a80B03f5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__FRXETH__ETH_SIDE" + ); + vm.label( + 0x621D0e62f26314387f338A2509aFA3Ae3414661A, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRXETH__ETH_SIDE" + ); + vm.label( + 0xe3e7F354ac948ceBa925181C81618D7c9b3da8C9, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_BSC__SFRAX__ETH_SIDE" + ); + vm.label( + 0x2d2261f970F605C813f160E8BAEd455E9004A842, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_EVMOS__FRAX__ETH_SIDE" + ); + vm.label( + 0xfB788F9E20ef426a32A67986654750172A6c1788, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_FANTOM__FRAX__ETH_SIDE" + ); + vm.label( + 0x1313d143BE1ac25aCACEFF39Bf31877bccDb9622, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FXS__ETH_SIDE" + ); + vm.label( + 0xaF4305d05e9B08b1D17894ce1ACE8235528f7EdE, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__FRXETH__ETH_SIDE" + ); + vm.label( + 0xB6b0290A39E2F896bBd8fC19cf17FE393e993dE4, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FANTOM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x5e1D94021484642863Ea8E7Cb4F0188e56B18FEE, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FRAX__ETH_SIDE" + ); + vm.label( + 0x4A6d155df9Ec9A1BB3639e6B7B99E46Fb68D42f6, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FXS__ETH_SIDE" + ); + vm.label( + 0x9A576A3d39c589A861B46864C253288bcA428a6c, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPI__ETH_SIDE" + ); + vm.label( + 0x958815f476cD07354c0BC034EE5077B20fD93003, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__FPIS__ETH_SIDE" + ); + vm.label( + 0x5c5f05cF8528FFe925A2264743bFfEdbAB2b0FE3, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x2b4864c2F2A2C275C6C66B90a2ae6BE9fA9cbE47, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_FRAXTAL__SFRAX__ETH_SIDE" + ); + vm.label( + 0xF1E1deA8F1053FD9C5F47f72F1f03977E17aF242, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__ETH_SIDE" + ); + vm.label( + 0x2De1354c98880889643c4cA8B06FA2Fb8Fc1Fd7A, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__ETH_SIDE" + ); + vm.label( + 0x228567c10b7533C88057c10dDeA6349360F122c5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__ETH_SIDE" + ); + vm.label( + 0xbc3A2bF4FA20bE2056DCE5BFB168970BA657F187, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x15ADa72A3B52A88E25DdD2CC2bA1120234e34bb0, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__ETH_SIDE" + ); + vm.label( + 0xFe7ebA20c20C8FF12A337F940Ce7A97c6e2594DE, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__ETH_SIDE" + ); + vm.label( + 0x06Fa869caa1160754C6a0B744Da6454c5EA325d4, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__ETH_SIDE" + ); + vm.label( + 0x6650D5183C4Cd294a81B1F724c365b0c42f8270a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__ETH_SIDE" + ); + vm.label( + 0xC05DE1CB258bAdc152d8EAd3F573CA9A2E812B2a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__ETH_SIDE" + ); + vm.label( + 0x8Bf7Af56bB721BC3d015111508593Fcb301546F0, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__ETH_SIDE" + ); + vm.label( + 0x2F08F4645d2fA1fB12D2db8531c0c2EA0268BdE2, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__ETH_SIDE" + ); + vm.label( + 0x04ba20D2Cc47C63bce1166C2864F0241e4D0a0CC, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x9694dcF5b6CCF6216B05FE64945f62603e2d2367, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__ETH_SIDE" + ); + vm.label( + 0x43959A388603DCb6B02Ca084A55d4c7f3b442c57, + "Constants.ETH_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__ETH_SIDE" + ); + vm.label( + 0xCa026e80F1E9e44da7ce3eD6aC2E9630260B9276, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__ETH_SIDE" + ); + vm.label( + 0x98f5E4b7D9eDF57A6ED41b334bD40B2eAa6B6e26, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__ETH_SIDE" + ); + vm.label( + 0x91Ff54EffF7564BA3884A91d0E293502D8E6fF90, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x86E71075e55F0aaD27D700017E0783458310c98a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__ETH_SIDE" + ); + vm.label( + 0xBa32Df0b78b1A68F7FA304BbD4Ed7a56A74c525a, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__ETH_SIDE" + ); + vm.label( + 0x45D2d8e4aB0F5af1D29305301A1b31D5d41b3349, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__ETH_SIDE" + ); + vm.label( + 0xF887C4cFAAfB43d1AA7De204344895591016772c, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__ETH_SIDE" + ); + vm.label( + 0x3aaB5C43D4e47f71DEea94a7d541E6C07e21B137, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__ETH_SIDE" + ); + vm.label( + 0xb8686Ef9B7ee9e73dE5d1721E4Da580278F8F4d2, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__ETH_SIDE" + ); + vm.label( + 0x602cCfee6B4BA8Eb5e35Cf26e05fDEDE379e578E, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__ETH_SIDE" + ); + vm.label( + 0x32dDf80508cfD8feD8ABe375582FC7cfD20372C4, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRAX__ETH_SIDE" + ); + vm.label( + 0x27E97F35D80514D5DD1Caa730e22a292E912a214, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FXS__ETH_SIDE" + ); + vm.label( + 0x0F6136F9aBB7A0c21FbE076771625b39C544BDf5, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPI__ETH_SIDE" + ); + vm.label( + 0xFBC512849D4dcEeeFAa1bfce08B3dC9daD755482, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FPIS__ETH_SIDE" + ); + vm.label( + 0x9f76b097Cd95627bFbD8052A583127FF6e7b3Fa9, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__FRXETH__ETH_SIDE" + ); + vm.label( + 0x29396AaE6198130A15F6Ff982C44BC4a7353Ef37, + "Constants.ETH_FRAXFERRY_V2__ETHEREUM_ZKSYNC__SFRXETH__ETH_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.ETH_FRAXFERRY_CREWMEMBER"); @@ -2832,7 +3187,10 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_CURVE_POOL_NOT_LP"); vm.label(0xDcEF968d416a41Cdac0ED8702fAC8128A64241A2, "Constants.ETH_FRAX_USDC_PLAIN_POOL"); vm.label(0xB9E1E3A9feFf48998E45Fa90847ed4D467E8BcfD, "Constants.ETH_FRAX_USD_CHAINLINK_ORACLE"); - vm.label(0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS"); + vm.label( + 0x1A4ae41e247ef90EDAaC97DD729a4F03687059DB, + "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_DUAL_ORACLE_ADDRESS" + ); vm.label(0xf43211935C781D5ca1a41d2041F397B8A7366C7A, "Constants.ETH_FRXETH_ETH_CURVE_POOL_LP_ERC20"); vm.label(0xa1F8A6807c402E4A15ef4EBa36528A3FED24E577, "Constants.ETH_FRXETH_ETH_CURVE_POOL_NOT_LP"); vm.label(0xb12c19C838499E3447AFd9e59274B1BE56b1546A, "Constants.ETH_FRXETH_ETH_DUAL_ORACLE_ADDRESS"); @@ -2892,10 +3250,16 @@ abstract contract AddressHelperMainnet is TestBase { vm.label(0x9599033315C29Be9690b716bFE409381426dAD41, "Constants.ETH_VARIABLE_RATE_STABLE_ADDRESS"); vm.label(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599, "Constants.ETH_WBTC_ERC20"); vm.label(0xeA94770583b5d57791dFe9CF1e29EfD6D53d2fdC, "Constants.ETH_WBTC_SFRAX_INVERSE_DUAL_ORACLE"); - vm.label(0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); + vm.label( + 0xb7dA758EE015c3C45B4a54579743Ebf365F7A53b, + "Constants.ETH_WBTC_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK" + ); vm.label(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2, "Constants.ETH_WETH_ERC20"); vm.label(0x92c7b5Ce4CB0e5483F3365C1449f21578eE9f21A, "Constants.ETH_WETH_FRAX_V3_POOL"); - vm.label(0x1cA1350F67575B0beE44EC9DC6725A4032431F33, "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK"); + vm.label( + 0x1cA1350F67575B0beE44EC9DC6725A4032431F33, + "Constants.ETH_WETH_SFRAX_INVERSE_ORACLE_ADAPTER_CHAINLINK" + ); vm.label(0xE0554a476A092703abdB3Ef35c80e0D76d32939F, "Constants.ETH_WETH_USDC_V3_POOL"); vm.label(0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0, "Constants.ETH_WSTETH_ERC20"); vm.label(0xe73375f36A1b17A21d7Aa0fDa092195431e7017a, "Constants.ETH_WSTETH_USD_DUAL_ORACLE_ADDRESS"); @@ -3584,10 +3948,14 @@ library Moonbeam { address internal constant FXS = 0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C; address internal constant FRXETH = 0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99; address internal constant SFRXETH = 0xecf91116348aF1cfFe335e9807f0051332BE128D; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = 0x78348E58582d0D1789da1621B79Fc62012485CAe; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE = + 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE = + 0x1E87990678f640BFfe5A118c331fEc296DDC8d89; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE = + 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE = + 0x78348E58582d0D1789da1621B79Fc62012485CAe; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3618,10 +3986,22 @@ abstract contract AddressHelperMoonbeam is TestBase { vm.label(0x2CC0A9D8047A5011dEfe85328a6f26968C8aaA1C, "Constants.MNBM_FXS"); vm.label(0x82bbd1b6f6De2B7bb63D3e1546e6b1553508BE99, "Constants.MNBM_FRXETH"); vm.label(0xecf91116348aF1cfFe335e9807f0051332BE128D, "Constants.MNBM_SFRXETH"); - vm.label(0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE"); - vm.label(0x1E87990678f640BFfe5A118c331fEc296DDC8d89, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE"); - vm.label(0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE"); - vm.label(0x78348E58582d0D1789da1621B79Fc62012485CAe, "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE"); + vm.label( + 0xd545Fd6080db07eDdcC1F57dC28a53D930837A8d, + "Constants.MNBM_FRAXFERRY_V1__ETHEREUM_MOONBEAM__FRAX__MNBM_SIDE" + ); + vm.label( + 0x1E87990678f640BFfe5A118c331fEc296DDC8d89, + "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FXS__MNBM_SIDE" + ); + vm.label( + 0x7c7Fd7412F5E79f4917163F78d5Ece5E2e923504, + "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__FRXETH__MNBM_SIDE" + ); + vm.label( + 0x78348E58582d0D1789da1621B79Fc62012485CAe, + "Constants.MNBM_FRAXFERRY_V2__ETHEREUM_MOONBEAM__SFRXETH__MNBM_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MNBM_CREWMEMBER"); @@ -3646,8 +4026,10 @@ abstract contract AddressHelperMoonbeam is TestBase { library Moonriver { address internal constant FRAX = 0x1A93B23281CC1CDE4C4741353F3064709A16197d; address internal constant FXS = 0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98; - address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; - address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; + address internal constant FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE = + 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404; + address internal constant FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE = + 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3681,8 +4063,14 @@ abstract contract AddressHelperMoonriver is TestBase { function labelConstants() public { vm.label(0x1A93B23281CC1CDE4C4741353F3064709A16197d, "Constants.MOVR_FRAX"); vm.label(0x6f1D1Ee50846Fcbc3de91723E61cb68CFa6D0E98, "Constants.MOVR_FXS"); - vm.label(0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE"); - vm.label(0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE"); + vm.label( + 0x81dbcc69937DAd14e358B1a16Ba7ea047703c404, + "Constants.MOVR_FRAXFERRY_V1__ETHEREUM_MOONRIVER__FRAX__MOVR_SIDE" + ); + vm.label( + 0x2d3146aD02f64cb21C23b54f3fD5B0ddc927ba20, + "Constants.MOVR_FRAXFERRY_V2__ETHEREUM_MOONRIVER__FXS__MOVR_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.MOVR_CREWMEMBER"); @@ -3729,9 +4117,7 @@ abstract contract AddressHelperMovement is TestBase { labelConstants(); } - function labelConstants() public { - - } + function labelConstants() public {} } library Optimism { @@ -3742,13 +4128,20 @@ library Optimism { address internal constant FRXETH = 0x6806411765Af15Bddd26f8f544A34cC40cb9838B; address internal constant SFRXETH = 0x484c2D6e3cDd945a8B2DF735e079178C1036578c; address internal constant SFRAX = 0x2Dd1B4D4548aCCeA497050619965f91f78b3b532; - address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; - address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; + address internal constant FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE = + 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE = + 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE = + 0x053F082f3bC0C48B8409970c017b4F2a6f673e16; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE = + 0xB84E29042Bfb489439949a79aed8a0e156169Ae5; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE = + 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE = + 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C; + address internal constant FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE = + 0xD1738eB733A636d1b8665f48bC8a24dA889c2562; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -3795,13 +4188,34 @@ abstract contract AddressHelperOptimism is TestBase { vm.label(0x6806411765Af15Bddd26f8f544A34cC40cb9838B, "Constants.OPTI_FRXETH"); vm.label(0x484c2D6e3cDd945a8B2DF735e079178C1036578c, "Constants.OPTI_SFRXETH"); vm.label(0x2Dd1B4D4548aCCeA497050619965f91f78b3b532, "Constants.OPTI_SFRAX"); - vm.label(0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE"); - vm.label(0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE"); - vm.label(0x053F082f3bC0C48B8409970c017b4F2a6f673e16, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE"); - vm.label(0xB84E29042Bfb489439949a79aed8a0e156169Ae5, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE"); - vm.label(0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE"); - vm.label(0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE"); - vm.label(0xD1738eB733A636d1b8665f48bC8a24dA889c2562, "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE"); + vm.label( + 0xb781FCaC4B8eF06891F9baD7dB9C178B1cE67967, + "Constants.OPTI_FRAXFERRY_V1__ETHEREUM_OPTIMISM__FRAX__OPTI_SIDE" + ); + vm.label( + 0xdF6B3b56B1668dA507Db58C64b7153756cfE8e67, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FXS__OPTI_SIDE" + ); + vm.label( + 0x053F082f3bC0C48B8409970c017b4F2a6f673e16, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPI__OPTI_SIDE" + ); + vm.label( + 0xB84E29042Bfb489439949a79aed8a0e156169Ae5, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FPIS__OPTI_SIDE" + ); + vm.label( + 0xA4EFC2d768C9b9b0f97DD91a1555B345f69b39C0, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__FRXETH__OPTI_SIDE" + ); + vm.label( + 0x59b99CF08C01a6ADa0e0D819520719CA41B35c7C, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRXETH__OPTI_SIDE" + ); + vm.label( + 0xD1738eB733A636d1b8665f48bC8a24dA889c2562, + "Constants.OPTI_FRAXFERRY_V2__ETHEREUM_OPTIMISM__SFRAX__OPTI_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.OPTI_CREWMEMBER"); @@ -3879,10 +4293,14 @@ library Polygon { address internal constant DUMMY_TKN = 0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89; address internal constant FERRY_TO_ARBITRUM = 0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; - address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; + address internal constant FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE = + 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE = + 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE = + 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE = + 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63; address internal constant COMBO_ORACLE = 0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3; address internal constant COMBO_ORACLE_UNIV2_UNIV3 = 0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020; address internal constant COMBO_ORACLE_KYBERSWAP_ELASTIC_V2 = 0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F; @@ -3936,10 +4354,22 @@ abstract contract AddressHelperPolygon is TestBase { vm.label(0xC6525aC8fc37814Fd68216F1ea690b3dC2249e89, "Constants.POLY_DUMMY_TKN"); vm.label(0xA621dC655fFBD0dB9cb2564529324E5750f2A4F0, "Constants.POLY_FERRY_TO_ARBITRUM"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_FIRST_OFFICER"); - vm.label(0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE"); - vm.label(0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE"); - vm.label(0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE"); - vm.label(0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE"); + vm.label( + 0x6f7F18C15B97dC9Fac48Ae7F986989F97D25dbc7, + "Constants.POLY_FRAXFERRY_V1__ETHEREUM_POLYGON__FRAX__POLY_SIDE" + ); + vm.label( + 0x2760a93993BaA3BC4d7C209db000d4685bdAD6B1, + "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FRXETH__POLY_SIDE" + ); + vm.label( + 0x6f71Ea0e9679389854010eE48a7D237cB430DBA4, + "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__FXS__POLY_SIDE" + ); + vm.label( + 0x6728b24B4a4C42cabEe14a2BdFDc51271aa3Ae63, + "Constants.POLY_FRAXFERRY_V2__ETHEREUM_POLYGON__SFRXETH__POLY_SIDE" + ); vm.label(0xAfe0C8318B67Ea8461350ABf7Bc82E5ce9Cf11D3, "Constants.POLY_COMBO_ORACLE"); vm.label(0x86Cffe1fE0C09A0815Fe4Fd21956D24Af5ba4020, "Constants.POLY_COMBO_ORACLE_UNIV2_UNIV3"); vm.label(0xfBCB0F967817c924f83e26e04F0FB28ED4d6276F, "Constants.POLY_COMBO_ORACLE_KYBERSWAP_ELASTIC_V2"); @@ -3982,13 +4412,20 @@ library PolygonzkEVM { address internal constant FRXETH = 0xCf7eceE185f19e2E970a301eE37F93536ed66179; address internal constant SFRXETH = 0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04; address internal constant SFRAX = 0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = 0x96720C1E893bB69C14291d8a85475ED9BC484b26; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = 0xA31001fbe938C520C27204b984817d998bAeA885; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = 0x3d1bc21F8991091538FfEf535Fe96A449794461C; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = 0xA711F85672899331900359e5b89848A30BeEBDBe; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; - address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE = + 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE = + 0x96720C1E893bB69C14291d8a85475ED9BC484b26; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE = + 0xA31001fbe938C520C27204b984817d998bAeA885; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE = + 0x3d1bc21F8991091538FfEf535Fe96A449794461C; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE = + 0xA711F85672899331900359e5b89848A30BeEBDBe; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE = + 0x4DB406906835ca0B28bFbef344c7d2C707BC4947; + address internal constant FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE = + 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6; address internal constant CAPTAIN = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant FIRST_OFFICER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; address internal constant CREWMEMBER = 0xBB437059584e30598b3AF0154472E47E6e2a45B9; @@ -4017,13 +4454,34 @@ abstract contract AddressHelperPolygonzkEVM is TestBase { vm.label(0xCf7eceE185f19e2E970a301eE37F93536ed66179, "Constants.POLY_ZKEVM_FRXETH"); vm.label(0x7c2aF1Fb79D0b1c67d4eb802d44C673D0A1D2C04, "Constants.POLY_ZKEVM_SFRXETH"); vm.label(0x2C37fb628b35dfdFD515d41B0cAAe11B542773C3, "Constants.POLY_ZKEVM_SFRAX"); - vm.label(0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE"); - vm.label(0x96720C1E893bB69C14291d8a85475ED9BC484b26, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE"); - vm.label(0xA31001fbe938C520C27204b984817d998bAeA885, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE"); - vm.label(0x3d1bc21F8991091538FfEf535Fe96A449794461C, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE"); - vm.label(0xA711F85672899331900359e5b89848A30BeEBDBe, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE"); - vm.label(0x4DB406906835ca0B28bFbef344c7d2C707BC4947, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE"); - vm.label(0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE"); + vm.label( + 0xEaBd7625056bbD2c260f90D0B08759C69d971a5B, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRAX__POLYZKEVM_SIDE" + ); + vm.label( + 0x96720C1E893bB69C14291d8a85475ED9BC484b26, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FXS__POLYZKEVM_SIDE" + ); + vm.label( + 0xA31001fbe938C520C27204b984817d998bAeA885, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPI__POLYZKEVM_SIDE" + ); + vm.label( + 0x3d1bc21F8991091538FfEf535Fe96A449794461C, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FPIS__POLYZKEVM_SIDE" + ); + vm.label( + 0xA711F85672899331900359e5b89848A30BeEBDBe, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__FRXETH__POLYZKEVM_SIDE" + ); + vm.label( + 0x4DB406906835ca0B28bFbef344c7d2C707BC4947, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRXETH__POLYZKEVM_SIDE" + ); + vm.label( + 0xE30521fe7f3bEB6Ad556887b50739d6C7CA667E6, + "Constants.POLY_ZKEVM_FRAXFERRY_V2__ETHEREUM_POLYGON_ZKEVM__SFRAX__POLYZKEVM_SIDE" + ); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CAPTAIN"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_FIRST_OFFICER"); vm.label(0xBB437059584e30598b3AF0154472E47E6e2a45B9, "Constants.POLY_ZKEVM_CREWMEMBER"); @@ -4088,9 +4546,7 @@ abstract contract AddressHelperSolana is TestBase { labelConstants(); } - function labelConstants() public { - - } + function labelConstants() public {} } library Sonic { From 2377c3eccd2bc9b5cc316bd87496bc5ae709377a Mon Sep 17 00:00:00 2001 From: dhruvinparikh Date: Wed, 22 Apr 2026 03:40:20 +0000 Subject: [PATCH 27/27] chore: make .husky/pre-commit executable --- .husky/pre-commit | 0 1 file changed, 0 insertions(+), 0 deletions(-) mode change 100644 => 100755 .husky/pre-commit diff --git a/.husky/pre-commit b/.husky/pre-commit old mode 100644 new mode 100755