{
  "description": "Canonical CCIP WETH9/WETH10 destination receivers and Chain 138 bridge contracts. Consumed by token-aggregation (BRIDGE_LIST_JSON_PATH), info.defi-oracle.io SPA fallback, and public-site verification scripts.",
  "updated": "2026-05-23",
  "routes": {
    "weth9": {
      "Ethereum Mainnet (1)": "0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939",
      "BNB Chain (56)": "0x886C6A4ABC064dbf74E7caEc460b7eeC31F1b78C",
      "Polygon (137)": "0xF7736443f02913e7e0773052103296CfE1637448",
      "Avalanche C-Chain (43114)": "0x3f8C409C6072a2B6a4Ff17071927bA70F80c725F",
      "Base (8453)": "0x24293CA562aE1100E60a4640FF49bd656cFf93B4",
      "Arbitrum One (42161)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
      "Optimism (10)": "0x6e94e53F73893b2a6784Df663920D31043A6dE07",
      "Gnosis (100)": "0xc8656F24488cb90c452058da92d1a25BA464eaAE",
      "Cronos (25)": "0x3Cc23d086fCcbAe1e5f3FE2bA4A263E1D27d8Cab",
      "Celo (42220)": "0xAb57BF30F1354CA0590af22D8974c7f24DB2DbD7",
      "Wemix (1111)": "0xD3AD6831aacB5386B8A25BB8D8176a6C8a026f04"
    },
    "weth10": {
      "Ethereum Mainnet (1)": "0x04E1e22B0D41e99f4275bd40A50480219bc9A223",
      "BNB Chain (56)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
      "Polygon (137)": "0x0CA60e6f8589c540200daC9D9Cb27BC2e48eE66A",
      "Avalanche C-Chain (43114)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
      "Base (8453)": "0x937824f2516fa58f25aeAb92E7BFf7D74F463B4c",
      "Arbitrum One (42161)": "0x73376eB92c16977B126dB9112936A20Fa0De3442",
      "Optimism (10)": "0x24293CA562aE1100E60a4640FF49bd656cFf93B4",
      "Gnosis (100)": "0xa846aeAD3071df1b6439d5D813156aCE7C2c1DA1",
      "Cronos (25)": "0x105F8A15b819948a89153505762444Ee9f324684",
      "Celo (42220)": "0xa780ef19A041745d353c9432f2a7f5A241335ffE",
      "Wemix (1111)": "0xa4B9DD039565AeD9641D45b57061f99d9cA6Df08"
    }
  },
  "chain138Bridges": {
    "weth9": "0xcacfd227A040002e49e2e01626363071324f820a",
    "weth10": "0xe0E93247376aa097dB308B92e6Ba36bA015535D0",
    "trustless": "0xFce6f50B312B3D936Ea9693C5C9531CF92a3324c",
    "cwMultiTokenL1": "0x152ed3e9912161b76bdfd368d0c84b7c31c10de7",
    "ccipRouter": "0x42DAb7b888Dd382bD5Adcf9E038dBF1fD03b4817",
    "alltraAdapter": "0x66FEBA2fC9a0B47F26DD4284DAd24F970436B8Dc"
  },
  "mainnetContracts": {
    "ccipRelayRouter": "0xAd9A228CcEB4cbB612cD165FFB72fE090ff10Afb",
    "ccipRelayBridge": "0xF9A32F37099c582D28b4dE7Fca6eaC1e5259f939",
    "ccipWeth9Hub": "0xc9901ce2Ddb6490FAA183645147a87496d8b20B6",
    "ccipWeth10Hub": "0x04E1e22B0D41e99f4275bd40A50480219bc9A223",
    "cwBridgeL2": "0x2bF74583206A49Be07E0E8A94197C12987AbD7B5"
  },
  "tokenMappingApi": {
    "basePath": "/api/v1/token-mapping",
    "pairs": "/api/v1/token-mapping/pairs",
    "resolve": "/api/v1/token-mapping/resolve",
    "note": "Resolve bridged token addresses between chains; requires monorepo config/token-mapping-multichain.json on server."
  },
  "notes": {
    "ethereumMainnetWeth9": "138→1 WETH9 uses relay release at CCIPRelayBridge (0xF9A32F…). CCIPWETH9 hub 0xc9901ce2… is the on-chain CCIP receiver for hub traffic.",
    "deprecatedChain138Weth9": "Do not use 0x971cD9D156f193df8051E48043C476e53ECd4693 or 0x89dd12025bfCD38A168455A44B400e913ED33BE2 on Chain 138.",
    "arbitrum": "Arbitrum hub leg may revert until mainnet hub path is repaired; treat as route-blocked for operators.",
    "configReadyChains": "Gnosis, Cronos, Celo, and Wemix use deployed CCIPWETH9/10 bridge receivers from smom-dbis-138/.env (2026-05-23 alignment). Fund LINK on each remote bridge before live traffic."
  }
}
