# Explorer tokens and GRU policy **Purpose:** All compliant (c*) tokens listed on [https://explorer.d-bis.org/tokens](https://explorer.d-bis.org/tokens) must be part of the GRU (Global Reserve Unit) — i.e. registered in `UniversalAssetRegistry` as `AssetType.GRU`. ## Policy 1. **Token lists** The canonical Chain 138 token list (`token-lists/lists/dbis-138.tokenlist.json`) and the explorer/MetaMask list (`explorer-monorepo/backend/config/metamask/DUAL_CHAIN_TOKEN_LIST.tokenlist.json`) include only c* tokens that are **registered as GRU** on Chain 138. 2. **When adding a new c* token** - Deploy the token (or confirm address). - Register it as GRU: set the token address in `smom-dbis-138/.env` (e.g. `CEURT_ADDRESS_138`, `CGBPC_ADDRESS_138`; see `ENV_EXAMPLE_CONTENT.md`), then run: ```bash ./scripts/deployment/set-dotenv-c-tokens-and-register-gru.sh ``` - Add the token to the token lists (dbis-138 and DUAL_CHAIN for Chain 138) **after** it is registered as GRU. 3. **All c* registered as GRU** The script `set-dotenv-c-tokens-and-register-gru.sh` sets and registers the following c* (addresses from DeployCompliantFiatTokens / ENV_EXAMPLE_CONTENT): - **cUSDT** — `0x93E66202A11B1772E55407B32B44e5Cd8eda7f22` - **cUSDC** — `0xf22258f57794CC8E06237084b353Ab30fFfa640b` - **cEURC** — `0x8085961F9cF02b4d800A3c6d386D31da4B34266a` - **cEURT** — `0xdf4b71c61E5912712C1Bdd451416B9aC26949d72` - **cGBPC** — `0x003960f16D9d34F2e98d62723B6721Fb92074aD2` - **cGBPT** — `0x350f54e4D23795f86A9c03988c7135357CCaD97c` - **cAUDC** — `0xD51482e567c03899eecE3CAe8a058161FD56069D` - **cJPYC** — `0xEe269e1226a334182aace90056EE4ee5Cc8A6770` - **cCHFC** — `0x873990849DDa5117d7C644f0aF24370797C03885` - **cCADC** — `0x54dBd40cF05e15906A2C21f600937e96787f5679` - **cXAUC** — `0x290E52a8819A4fbD0714E517225429aA2B70EC6b` - **cXAUT** — `0x94e408E26c6FD8F4ee00b54dF19082FDA07dC96E` Token lists (dbis-138, DUAL_CHAIN for 138) include at least cUSDT, cUSDC, cEURC; add others to lists after they are deployed and verified on explorer. 4. **Explorer /tokens page** The explorer loads tokens from the Blockscout API (`/v2/tokens`). Curated lists (e.g. for MetaMask or display) must only include c* that are GRU-registered. When adding new c* to any list that can surface on the explorer, register them as GRU first (see step 2). ## References - [DEPLOYMENT_ORDER_OF_OPERATIONS](../03-deployment/DEPLOYMENT_ORDER_OF_OPERATIONS.md) § Phase 2.4 (Register c* as GRU) - [set-dotenv-c-tokens-and-register-gru.sh](../../scripts/deployment/set-dotenv-c-tokens-and-register-gru.sh) - [RegisterGRUCompliantTokens.s.sol](../../smom-dbis-138/script/deploy/RegisterGRUCompliantTokens.s.sol) - [C_TO_CW_MAPPER_MAPPING.md](C_TO_CW_MAPPER_MAPPING.md) — c* to cW* mapping for mapper on other chains