# v1->v2 changelog

<figure><img src="/files/JGZuV7dt85Igt6GRTAWC" alt=""><figcaption></figcaption></figure>

Announcement Post: <https://union.mirror.xyz/uPnUm4TLNyWoRfNAVCJwxT0TeNPBgNCg04vuDv5sIGk>

If you are looking for the v1 ui to access the arbitrum or ethereum v1 deployments: <https://v1.union.finance>

If you are looking for the v1 docs: <https://v1-docs.union.finance>

## Major Upgrades between v1 and v2:

1. In Version 2, the maximum number of addresses one can underwrite has increased from 25 -> 1000 and be underwritten by from 25 -> 400 from a single account.
2. **Bad debt no longer accrues indefinitely**: If you vouch for a defaulter, the writeoff function becomes publicly callable after a set amount of time in default. This is essential for growing liquidity— on Optimism this will be set to 60 days, meaning if someone borrows and makes no payments, anyone will be able to call the function after 90 days.
3. **Union Lens Contract** : Union is a call-intensive protocol. This view layer contract consolidates view helpers making it a lot easier to build frontends and integrations.
4. **More efficient and predictable gas costs** : v2 uses struct packing and other techniques to dramatically reduce storage read and writes compared to v1 . Vouching now has a constant gas cost, in V1 the gas cost was dependent on number of vouchers(*O(n)*) but in v2 it is constant (*O(1)*).
5. **Changed from block-based timing to seconds**, makes 'due by' dates 1000x more human and integration friendly.


---

# 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/protocol-overview/v1-greater-than-v2-changelog.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.
