# Migration to Base via Builder *This document is a brief overview of what is required to migrate Gnars DAO to Base L2, while leveraging Builder's upgrades, funding and network effects.* **Important links:** - [Full spec of the Bali upgrade for Builder](https://hackmd.io/peXISQ2CSQOwRGmvpUpK9A) - [Builder proposal to deploy Bali (upgrade) to L2](https://nouns.build/dao/ethereum/0xdf9b7d26c8fc806b1ae6273684556761ff02d422/vote/87) - [Builder proposal to move Builder DAO to Base L2](https://nouns.build/dao/ethereum/0xdf9b7d26c8fc806b1ae6273684556761ff02d422/vote/90) - [Nouns Builder documentation on Zora](https://docs.zora.co/docs/smart-contracts/nouns-builder/intro) - [Builder protocol rewards explained](https://hackmd.io/qu1JbwXWS4e_rf5FVyxl9g?view) **Bali upgrade introduces:** - **Token Reserve:** Reserve n tokens for claiming when a DAO is created. Used for DAOs that want to offer reserved token claims via minters. - **Merkle Reserve Minter:** Allow reserved token claiming via merkle proofs. Used for DAOs that want to include a preset list of members to claim tokens. - **L2 Migration Deployer:** Helper contract that lets L1 DAOs deploy and seed a DAO on L2. - **Alternate Metadata Renderers:** Allow current DAOs to set a new metadata renderer. Allow new deployments to choose an alternate renderer. - **Protocol Rewards:** Rewards taken as a percent of protocol auctions distributed to bid referrals, DAO founders and BuilderDAO **Proposed migration plan:** 1. Deploy fully onchain metadata renderer to L2 (same as L1) 2. Gnars L1 proposal (1) to pause auctions, fund migration gas costs and associated marketing efforts 3. Gnars L1 proposal (2) to call [L2 Migration Deployer](https://hackmd.io/peXISQ2CSQOwRGmvpUpK9A#L2-Migration-Deployer), deploy a DAO with given parameters on Base (including an [Alternate Metadata Renderer](https://hackmd.io/peXISQ2CSQOwRGmvpUpK9A#Custom-Metadata-Renderers)), and set [Merkle Reserve Minter](https://hackmd.io/peXISQ2CSQOwRGmvpUpK9A#Merkle-Reserve-Minter) to allow L1 holders to claim 4. Gnars L1 proposal (3) to call L2 Migration Deployer and use `depositToTreasury` to transfer value from L1 treasury to newly deployed L2 treasury 5. Gnars L2 proposal (4) to renounce `L2MigrationDeployer.sol`'s ownership once setup is complete and unpause auctions to commence L2 operations > Leverage builder team as much as possible as they're willing to help **Deployment parameters:** - Name: Gnars - Symbol: $GNAR - Website: https://gnars.wtf - Auction duration: 1h 20m - Reserve: 0.01 ETH - Proposal threshold: 0.2% - Quorum threshold: 10% - Founder allocation: 0 - Description: Gnars is an action sports accelerator and community owned brand. Headless so you can shred more. We bring shredders onchain and get them paid. ⌐◨-◨ - Veto power: onchain party comprising founding members - Builder protocol rewards: - Builder reward: 2.5% of final auction value - Referral reward: 2.5% of final auction value - Founder reward: 0% of final auction value ***Please note:** these values set by Builder at protocol level and cannot be changed. Builder reward is a fair amount considering we get ongoing upgrades and support, and Referral reward can be directed to tech pod for maintaining gnars.wtf frontend. ## Footnotes We won't need the 1/10 (Gnars ending in 7) reward going to a multisig. Instead we can use the aidrop feature, where new Gnars can be distributed to shredders from proposals (especially since gas is cheap). Need to allow for the Gnars that are in multisig already, by moving them in advance, so that at migration snapshot, they map across to L2 and can be claimed via the merkle proofs.