This document guides the Nebula Hub team on setting up Metaverser tokens across the IMA Bridge between Europa and Nebula Hubs. > Inputs and outputs are in the bottom of this document #### Goals - [ ] Map ERC-20 MTVT Token from Europa to Nebula - [ ] Map ERC-721 MASSETv2 from Europa to Nebula - [ ] Map ERC-1155 MITM from Europa to Nebula - [ ] Prepare Transaction for Review and Signature in Gnosis SAFE #### Notes - Europa Chain Name is elated-tan-skat - Origin Chain will be on Europa - Dest/Target Tokens will be the one Nebula - ERC-20 uses TokenManagerERC20 - ERC-721 uses TokenManagerERC721 - They are **NOT** using the Metadata One, URIs are pre-set - ERC-1155 uses TokenManagerERC1155 ## Tokens #### MTVT(ERC20) **Europa** https://elated-tan-skat.explorer.mainnet.skalenodes.com/token/0x460F554273dC22F0A5c579536c9EC0140e743561 **Nebula** https://green-giddy-denebola.explorer.mainnet.skalenodes.com/address/0x4B074B9Cc63c432fe067642ad8b2d428cdC2351F --------------- #### MASSETv2(ERC721) **Europa** https://elated-tan-skat.explorer.mainnet.skalenodes.com/token/0x614B55f7180e6B3850b677EE15C1cbCf9172946F **Nebula** https://green-giddy-denebola.explorer.mainnet.skalenodes.com/address/0x614B55f7180e6B3850b677EE15C1cbCf9172946F#code --------------- #### MITM(ERC1155) **Europa** https://elated-tan-skat.explorer.mainnet.skalenodes.com/token/0xABb85811DcfEcA72779993bC5469276990827954 **Nebula** https://green-giddy-denebola.explorer.mainnet.skalenodes.com/address/0x91df2c0D79b787f083E844b468702182688fd163#code --- ## Inputs & Outputs ### ERC-20 https://app.warp.dev/block/vwynix8mCosYUZjpTbZ5ax #### Input ```shell npx msig encodeData green-giddy-denebola TokenManagerERC20 addERC20TokenByOwner elated-tan-skat 0x460F554273dC22F0A5c579536c9EC0140e743561 0x4B074B9Cc63c432fe067642ad8b2d428cdC2351F ``` #### Output ```shell 0x9448920200000585eb4b15e945e78a4755b32308a39fe7ceea88db69b880cb81fe3278b7000000000000000000000000d2c0deface00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000140000000000000000000000000d2aaa005000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4eafd15c80000000000000000000000000000000000000000000000000000000000000060000000000000000000000000460f554273dc22f0a5c579536c9ec0140e7435610000000000000000000000004b074b9cc63c432fe067642ad8b2d428cdc2351f000000000000000000000000000000000000000000000000000000000000000f656c617465642d74616e2d736b6174000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ``` ### ERC-721 https://app.warp.dev/block/tdtoTbQ7py4EPMVrVJLwQz #### Input ```shell npx msig encodeData green-giddy-denebola TokenManagerERC721 addERC721TokenByOwner elated-tan-skat 0x614B55f7180e6B3850b677EE15C1cbCf9172946F 0x614B55f7180e6B3850b677EE15C1cbCf9172946F ``` #### Output ```shell 0x9448920200000585eb4b15e945e78a4755b32308a39fe7ceea88db69b880cb81fe3278b7000000000000000000000000d2c0deface00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000140000000000000000000000000d2aaa006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4680ae2fe0000000000000000000000000000000000000000000000000000000000000060000000000000000000000000614b55f7180e6b3850b677ee15c1cbcf9172946f000000000000000000000000614b55f7180e6b3850b677ee15c1cbcf9172946f000000000000000000000000000000000000000000000000000000000000000f656c617465642d74616e2d736b6174000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ``` ### ERC-1155 https://app.warp.dev/block/mScwN78AsCNfbl0twZKISd #### Input ```shell npx msig encodeData green-giddy-denebola TokenManagerERC1155 addERC1155TokenByOwner elated-tan-skat 0xABb85811DcfEcA72779993bC5469276990827954 0x91df2c0D79b787f083E844b468702182688fd163 ``` #### Output ```shell 0x9448920200000585eb4b15e945e78a4755b32308a39fe7ceea88db69b880cb81fe3278b7000000000000000000000000d2c0deface00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000140000000000000000000000000d2aaa009000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a4c5d766640000000000000000000000000000000000000000000000000000000000000060000000000000000000000000abb85811dcfeca72779993bc546927699082795400000000000000000000000091df2c0d79b787f083e844b468702182688fd163000000000000000000000000000000000000000000000000000000000000000f656c617465642d74616e2d736b6174000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ``` ### Adding Tokens 1. Go to your SAFE at https://safe.global/ or your preferred provider 2. Connect your secure operator wallet 3. You will follow steps similar to the [SKALE Docs](https://docs.skale.space/run-a-skale-chain/using-safe/) however it is recommended to **BATCH** this since all three actions can be executed at the same time for cheaper fees and easier coordiantion. 4. Click **New Transaction** -> Click **Transaction Builder** 5. Toggle **on** *Custom Data* 6. For each of the outputs above (3) do the following: 1. Set the TO Address of these transactions to: 1. 0x8629703a9903515818C2FeB45a6f6fA5df8Da404 2. Set **value** to 0 3. Copy data into custom data field 4. Add to batch 7. Once all three are added, move batch into signature phase 8. Run Tunderly simulation and send link to SKALE Team in Discord 9. Sign transaction 10. Confirm completion