# `gno.land/r/moul/x/upgrade/lock/v1` Version 1 of the **retire the predecessor** upgrade pattern (pattern B). Refuses every write until [`v0`](../gen0) has been retired onto it, then folds v0's frozen total into its own. At most one version is writable at any height, so there is a single authoritative answer. See [the pattern](../README.md) and [the exploration](../../README.md). --- Part of **[moul/gno-contracts](https://github.com/moul/gno-contracts)** โ€” moul's versioned gno.land contracts. See the repository for the full catalog, build/test tooling, and usage. **Dependency graph:** ![gno.land/r/moul/x/upgrade/lock/v1 dependency graph](https://raw.githubusercontent.com/moul/gno-contracts/main/_assets/gno.land/r/moul/x/upgrade/lock/v1/deps.png) > ๐Ÿงช **Highly experimental โ€” potentially vibe-coded.** Not audited; may break, change, or be removed at any time. Do not use with anything of value. Full disclaimer: [DISCLAIMER](https://github.com/moul/gno-contracts/blob/main/DISCLAIMER.md).