# How Bridging Tokens Works

With the deployment of Union’s protocol on Arbitrum, we plan the maintain UNION based token emissions for stakers on both Ethereum & Arbitrum. As UNION is a non-transferrable token and will be required for governance on Layer-1, we’re required to build some additional features which can allow that process to happen in a clear and simple way.

**The Stages of UNION between Ethereum & L2 Rollups**

1. UNION originates on Ethereum
2. UNION is bridged to L2 via Governance and drip()
3. Users staking DAI on L2 can claim their accumulated l2UNION
4. Holders of l2UNION have the ability to migrate arbUNION to Ethereum via Arbitrum’s native crosschain bridge (We should be promoting the migration of arbUNION to L1)
5. Migrated arbUNION remains in this state until the point where a user unwraps their arbUNION converting it into the final form of UNION

**How a user can manage their UNION tokens through L2 → L1**

* While a users wallet is connected to the Union app on Arbitrum with arbUNION in their wallet, they should have an option to bridge their arbUNION to Layer 1 for Governance purposes with Arbitrum’s native bridge either via a link out or directly within the Union UI (Note potentially high bridging fees)
* If a user has migrated arbUNION to Ethereum using the bridge, they should be notified of the ability to unwrap their arbUNION and convert it into regular UNION. This UNION can then be used for voting in Union Improvement Proposals.

**Related Contracts**

* ArbWrapper

`function wrap(uint256 _amount) public returns (bool)`

`function unwrap(uint256 _amount) external returns (bool)`

<https://github.com/unioncredit/union-v1-contracts/blob/master/contracts/token/ArbUnionWrapper.sol>

* ArbUnion

<https://github.com/unioncredit/union-v1-contracts/blob/master/contracts/token/ArbUnion.sol>

**The bridge UI**

<https://bridge.arbitrum.io/>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.union.finance/user-guides/how-bridging-tokens-works.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
