# Pathway: Chain 138 Only → Canonical Tokens on Other Networks (User Does Not Prefund; Operator Prefunds Destination)

**Prefunding** = Mainnet or an L2 being funded — i.e. someone holds or sends ETH/tokens there so that transfers can complete. If Mainnet or L2 must be funded, that is prefunding (whether the user or the operator does it).

**Question:** Is there a route where you **only use ChainID 138 tokens** and **receive canonical tokens on other networks**, without **you** having to fund Mainnet or L2?

**Answer: Yes — but the destination is still prefunded.** In both pathways below, **you** (the end-user) never fund Mainnet or L2. The **operator** does: they prefund the destination (relayer + LiquidityPool, or Relay Bridge) so you can receive there. So **prefunding is required**; it is done by the operator, not by you. If you deployed the contracts and fund that destination side, you are the operator doing the prefunding.

**Who is the operator?** The party that runs and funds the destination-side infrastructure: for **Trustless**, the relayer and the liquidity providers who fund **LiquidityPoolETH** on Mainnet/L2; for **Relay**, the party that runs the relay service and prefunds the **Relay Bridge** with WETH9 on Mainnet. If you deployed these contracts and you fund the relayer/LP or the Relay Bridge, **you are the operator** (and you are doing the prefunding).

---

## 1. Trustless Bridge (138 → Ethereum Mainnet or L2)

**User experience: Chain 138 only; user does not prefund destination (operator does).**

| Step | Where | Who pays |
|------|--------|----------|
| 1. Deposit | Chain 138 | User: native ETH or WETH into **Lockbox138** |
| 2. Claim | Ethereum (or L2) | **Relayer** (operator): gas + bond on destination |
| 3. Payout | Ethereum (or L2) | **LiquidityPoolETH**: WETH/ETH on destination (operator-funded) |
| 4. Optional swap | Ethereum (or L2) | User can swap to canonical USDC/USDT via DApp “Bridge & Swap” |

- **User** never needs ETH or tokens on mainnet/L2; they only sign on Chain 138.
- **Operator** must fund: relayer (ETH for gas + bonds on destination), LiquidityPool (WETH/ETH on destination).
- **Canonical tokens:** User receives WETH on destination; optionally canonical USDC/USDT via in-app swap.

**References:**  
[Trustless Integration](trustless/INTEGRATION.md), [Bridge User Guide](../user/BRIDGE_USER_GUIDE.md), [Trustless Architecture](trustless/ARCHITECTURE.md).

---

## 2. Custom CCIP Relay (138 → Ethereum Mainnet)

**User experience: Chain 138 only; user does not prefund mainnet (operator does).**

| Step | Where | Who pays |
|------|--------|----------|
| 1. Send | Chain 138 | User: WETH9 via bridge + fee on 138 |
| 2. Relay | Off-chain | **Relay service** (operator): gas on mainnet |
| 3. Delivery | Mainnet | **Relay Bridge** must hold WETH9 on mainnet (operator-funded) |

- **User** only interacts on Chain 138; no mainnet balance required.
- **Operator** must prefund the **Relay Bridge** with WETH9 on mainnet so it can complete transfers.
- **Canonical tokens:** User receives canonical WETH9 on mainnet (`0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2`).

**References:**  
[Relay Architecture](../relay/ARCHITECTURE.md) — “Bridge Funding: The relay bridge MUST be funded with WETH9 tokens.”

---

## 3. Official CCIP (138 → other chains)

**Not a pathway today.**

- CCIP returns **“chain not supported”** when using Chain 138 as source (or as a hop). No repo change can fix this until Chainlink supports 138.
- When/if supported: user would pay fees **on Chain 138** (LINK or native); destination bridges would still need to be configured and funded by the operator.

---

## Summary

| Pathway | Prefunding of Mainnet/L2? | Who prefunds? | Canonical tokens on destination? |
|--------|---------------------------|---------------|----------------------------------|
| **Trustless** (Lockbox138 → Mainnet/L2) | **Yes** | Operator (LP + relayer on destination) | Yes (WETH; optional swap to USDC/USDT) |
| **Relay** (138 → Mainnet) | **Yes** | Operator (Relay Bridge on mainnet) | Yes (WETH9) |
| **CCIP** (138 → other) | N/A | N/A | Not supported for 138 today |

**Bottom line:** The destination (Mainnet/L2) **is** prefunded — by the operator. You (as end-user) use only Chain 138 and never fund the destination yourself; the operator’s prefunding is what allows you to receive canonical tokens there. If you deployed and fund the contracts, you are the operator and you are doing that prefunding.

---

## Estimated costs (pathway)

Rough cost breakdown for the two pathways. Gas is variable; assume ~30 gwei on mainnet and chain-specific gas on 138 for illustration.

### User (Chain 138 only)

| Item | Trustless (138 → Mainnet/L2) | Relay (138 → Mainnet) |
|------|------------------------------|-------------------------|
| **On Chain 138** | Deposit: Lockbox138 gas (~72k) | Send WETH9 via bridge + fee (bridge-dependent) |
| **LP / bridge fee** | 0.05% of bridge amount (deducted from received amount) | Per-bridge fee on 138 (if any) |
| **On destination** | None | None |

### Operator (destination side)

| Item | Trustless (138 → Mainnet/L2) | Relay (138 → Mainnet) |
|------|------------------------------|-------------------------|
| **Relayer / service** | Gas on destination: submitClaim ~380k, finalize ~50–100k, release ~100–150k; bond 110% of deposit (min 1 ETH), returned after finalization | Relay tx gas on mainnet (e.g. up to ~1M gas per message) |
| **Liquidity / bridge** | LiquidityPool: WETH/ETH to cover payouts; min liquidity ratio 110% of pending claims | Relay Bridge: WETH9 balance to cover all transferred amounts |
| **One-time / setup** | Deployment ~5–10 ETH (gas); initial LP funding | Relay Bridge prefund with expected WETH9 volume |

### Example (Trustless, 10 ETH bridge at 30 gwei mainnet)

| Party | Cost |
|-------|------|
| **User (138 only)** | Chain 138 gas (~72k) + 0.05% × 10 ETH = 0.005 ETH deducted from receive → receives 9.995 ETH (equiv.) on destination |
| **Operator** | Relayer: bond 11 ETH (110% of 10 ETH), returned after finalization; gas ~0.02–0.05 ETH per claim+finalize+release; LP must hold ≥ 11 ETH (110% of 10) for this claim |
