1"use strict";(self.webpackChunkyearn_devdocs=self.webpackChunkyearn_devdocs||[]).push([["2438"],{76569:function(e,s,n){n.r(s),n.d(s,{metadata:()=>i,default:()=>h,frontMatter:()=>r,contentTitle:()=>t,toc:()=>d,assets:()=>c});var i=JSON.parse('{"id":"governance/veYFI-comp-summary","title":"Comprehensive veYFI Guide","description":"This page documents the legacy veYFI + dYFI gauge system.","source":"@site/docs/contributing/governance/veYFI-comp-summary.md","sourceDirName":"governance","slug":"/governance/veYFI-comp-summary","permalink":"/contributing/governance/veYFI-comp-summary","draft":false,"unlisted":false,"tags":[],"version":"current","frontMatter":{"rpcCalls":[{"name":"dYFI Redemption","chain":"1","address":"0x7dC3A74F0684fc026f9163C6D5c3C99fda2cf60a","abiName":"dyfiRedemptionABI","methods":["discount","get_latest_price",{"name":"eth_required","args":["1000000000000000000"]}]}]},"sidebar":"mySidebar","previous":{"title":"Specification","permalink":"/contributing/governance/veyfi"},"next":{"title":"veYFI Boost Calculator","permalink":"/contributing/governance/veyfi-calculator"}}'),a=n(74848),l=n(28453);let r={rpcCalls:[{name:"dYFI Redemption",chain:"1",address:"0x7dC3A74F0684fc026f9163C6D5c3C99fda2cf60a",abiName:"dyfiRedemptionABI",methods:["discount","get_latest_price",{name:"eth_required",args:["1000000000000000000"]}]}]},t="Comprehensive veYFI Guide",c={},d=[{value:"Table of Contents",id:"table-of-contents",level:2},{value:"Introduction to veYFI",id:"introduction-to-veyfi",level:2},{value:"Locking YFI for veYFI",id:"locking-yfi-for-veyfi",level:2},{value:"Lock Duration and veYFI Balance",id:"lock-duration-and-veyfi-balance",level:3},{value:"veYFI Decay Over Time",id:"veyfi-decay-over-time",level:3},{value:"Early Exit Penalties",id:"early-exit-penalties",level:3},{value:"Benefits of veYFI",id:"benefits-of-veyfi",level:2},{value:"Governance Participation",id:"governance-participation",level:3},{value:"Yield Boosts on Vault Deposits",id:"yield-boosts-on-vault-deposits",level:3},{value:"Calculating Boost Levels",id:"calculating-boost-levels",level:4},{value:"Forfeited Rewards and Redistribution",id:"forfeited-rewards-and-redistribution",level:4},{value:"Protocol Incentives",id:"protocol-incentives",level:3},{value:"Understanding dYFI",id:"understanding-dyfi",level:2},{value:"dYFI Redemption Mechanism",id:"dyfi-redemption-mechanism",level:3},{value:"Emission of dYFI Rewards",id:"emission-of-dyfi-rewards",level:3},{value:"Discount Calculation Formula",id:"discount-calculation-formula",level:3},{value:"Epochs and Voting",id:"epochs-and-voting",level:2},{value:"Epoch Timeline",id:"epoch-timeline",level:3},{value:"Gauge Emission Voting",id:"gauge-emission-voting",level:3},{value:"Governance Proposals",id:"governance-proposals",level:3},{value:"System Parameters and Governance Adjustments",id:"system-parameters-and-governance-adjustments",level:2},{value:"Adjustable Parameters",id:"adjustable-parameters",level:3},{value:"Liquid Lockers: An Alternative Option",id:"liquid-lockers-an-alternative-option",level:2},{value:"References",id:"references",level:2},{value:"Relevant Governance Proposals",id:"relevant-governance-proposals",level:3},{value:"Snapshot Voting",id:"snapshot-voting",level:3},{value:"Contract Addresses",id:"contract-addresses",level:3},{value:"Audits",id:"audits",level:3}];function o(e){let s={a:"a",admonition:"admonition",annotation:"annotation",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",header:"header",hr:"hr",img:"img",li:"li",math:"math",mfrac:"mfrac",mi:"mi",mn:"mn",mo:"mo",mrow:"mrow",msqrt:"msqrt",msup:"msup",mtext:"mtext",ol:"ol",p:"p",path:"path",pre:"pre",semantics:"semantics",span:"span",strong:"strong",svg:"svg",ul:"ul",...(0,l.R)(),...e.components},{ContractData:i}=s;return i||function(e,s){throw Error("Expected "+(s?"component":"object")+" `"+e+"` to be defined: you likely forgot to import, pass, or provide it.")}("ContractData",!0),(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(s.header,{children:(0,a.jsx)(s.h1,{id:"comprehensive-veyfi-guide",children:"Comprehensive veYFI Guide"})}),"\n",(0,a.jsxs)(s.admonition,{title:"Deprecated",type:"warning",children:[(0,a.jsxs)(s.p,{children:["This page documents the legacy ",(0,a.jsx)(s.strong,{children:"veYFI + dYFI gauge"})," system."]}),(0,a.jsxs)(s.p,{children:["For the current governance staking UX, see ",(0,a.jsx)(s.a,{href:"/contributing/governance/styfi",children:"stYFI"}),".\nIf you have a legacy veYFI lock, see ",(0,a.jsx)(s.a,{href:"/contributing/governance/migrating-from-veyfi",children:"Migrate from veYFI"}),"."]})]}),"\n",(0,a.jsxs)(s.p,{children:["Yearn has implemented a sophisticated governance and rewards system centered around ",(0,a.jsx)(s.strong,{children:"veYFI"})," and ",(0,a.jsx)(s.strong,{children:"dYFI"})," tokens. This system is designed to empower active community members, incentivize long-term participation, and align the interests of YFI holders with the protocol's success. This document provides a comprehensive synthesis of the veYFI and dYFI mechanisms, incorporating detailed specifications and complexities for a thorough understanding."]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"table-of-contents",children:"Table of Contents"}),"\n",(0,a.jsxs)(s.ol,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#introduction-to-veyfi",children:"Introduction to veYFI"})}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.a,{href:"#locking-yfi-for-veyfi",children:"Locking YFI for veYFI"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#lock-duration-and-veyfi-balance",children:"Lock Duration and veYFI Balance"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#veyfi-decay-over-time",children:"veYFI Decay Over Time"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#early-exit-penalties",children:"Early Exit Penalties"})}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.a,{href:"#benefits-of-veyfi",children:"Benefits of veYFI"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#governance-participation",children:"Governance Participation"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#yield-boosts-on-vault-deposits",children:"Yield Boosts on Vault Deposits"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#calculating-boost-levels",children:"Calculating Boost Levels"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#protocol-incentives",children:"Protocol Incentives"})}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.a,{href:"#understanding-dyfi",children:"Understanding dYFI"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#dyfi-redemption-mechanism",children:"dYFI Redemption Mechanism"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#emission-of-dyfi-rewards",children:"Emission of dYFI Rewards"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#discount-calculation-formula",children:"Discount Calculation Formula"})}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.a,{href:"#epochs-and-voting",children:"Epochs and Voting"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#epoch-timeline",children:"Epoch Timeline"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#gauge-emission-voting",children:"Gauge Emission Voting"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#governance-proposals",children:"Governance Proposals"})}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.a,{href:"#system-parameters-and-governance-adjustments",children:"System Parameters and Governance Adjustments"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#adjustable-parameters",children:"Adjustable Parameters"})}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#liquid-lockers-an-alternative-option",children:"Liquid Lockers: An Alternative Option"})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.a,{href:"#references",children:"References"})}),"\n"]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"introduction-to-veyfi",children:"Introduction to veYFI"}),"\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"veYFI"})," (vote-escrowed YFI) is a time-locked version of Yearn's native governance token, ",(0,a.jsx)(s.strong,{children:"YFI"}),". By locking YFI tokens into veYFI, users gain enhanced governance power, yield boosts on their vault deposits, and access to additional protocol incentives. This system al
1igns users' interests with the long-term success of Yearn Finance by encouraging prolonged participation and active governance."]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"locking-yfi-for-veyfi",children:"Locking YFI for veYFI"}),"\n",(0,a.jsx)(s.h3,{id:"lock-duration-and-veyfi-balance",children:"Lock Duration and veYFI Balance"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"Lock Period"}),": Users can lock their YFI tokens for any duration up to ",(0,a.jsx)(s.strong,{children:"4 years"})," (208 weeks). While it's technically possible to lock for longer (up to 10 years), any period beyond 4 years is purely for the convenience of not having to re-lock and does not confer additional veYFI or benefits. If you set the lock time to longer than 4 years, you can always reset it to 4 years so it starts decaying."]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"veYFI Calculation"}),": The amount of veYFI received is proportional to the lock duration:"]}),"\n",(0,a.jsx)(s.span,{className:"katex-display",children:(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",display:"block",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mtext,{children:"veYFI"}),(0,a.jsx)(s.mo,{children:"="}),(0,a.jsx)(s.mtext,{children:"YFI"}),(0,a.jsx)(s.mo,{children:"\xd7"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mo,{fence:"true",children:"("}),(0,a.jsxs)(s.mfrac,{children:[(0,a.jsx)(s.mtext,{children:"Lock\xa0Duration"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mn,{children:"4"}),(0,a.jsx)(s.mtext,{children:"\xa0years"})]})]}),(0,a.jsx)(s.mo,{fence:"true",children:")"})]})]}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"\\text{veYFI} = \\text{YFI} \\times \\left( \\frac{\\text{Lock Duration}}{4 \\text{ years}} \\right)"})]})})}),(0,a.jsxs)(s.span,{className:"katex-html","aria-hidden":"true",children:[(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.6833em"}}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"veYFI"})}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}}),(0,a.jsx)(s.span,{className:"mrel",children:"="}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}})]}),(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.7667em",verticalAlign:"-0.0833em"}}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"YFI"})}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mbin",children:"\xd7"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}})]}),(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"2.4em",verticalAlign:"-0.95em"}}),(0,a.jsxs)(s.span,{className:"minner",children:[(0,a.jsx)(s.span,{className:"mopen delimcenter",style:{top:"0em"},children:(0,a.jsx)(s.span,{className:"delimsizing size3",children:"("})}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mopen nulldelimiter"}),(0,a.jsx)(s.span,{className:"mfrac",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsxs)(s.span,{className:"vlist",style:{height:"1.3714em"},children:[(0,a.jsxs)(s.span,{style:{top:"-2.314em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mord",children:"4"}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"\xa0years"})})]})]}),(0,a.jsxs)(s.span,{style:{top:"-3.23em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"frac-line",style:{borderBottomWidth:"0.04em"}})]}
1),(0,a.jsxs)(s.span,{style:{top:"-3.677em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"mord",children:(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"Lock\xa0Duration"})})})]})]}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200B"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.8804em"},children:(0,a.jsx)(s.span,{})})})]})}),(0,a.jsx)(s.span,{className:"mclose nulldelimiter"})]}),(0,a.jsx)(s.span,{className:"mclose delimcenter",style:{top:"0em"},children:(0,a.jsx)(s.span,{className:"delimsizing size3",children:")"})})]})]})]})]})}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Examples"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"Lock 1 YFI for 4 years \u2192 Receive 1 veYFI."}),"\n",(0,a.jsx)(s.li,{children:"Lock 1 YFI for 2 years \u2192 Receive 0.5 veYFI."}),"\n",(0,a.jsx)(s.li,{children:"Lock 1 YFI for 1 year \u2192 Receive 0.25 veYFI."}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"veyfi-decay-over-time",children:"veYFI Decay Over Time"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Linear Decay"}),": From the moment YFI is locked, the veYFI balance begins to decay linearly to zero by the end of the lock period."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Impact on Benefits"}),": As veYFI balance decreases, so do the associated benefits:","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Voting Power"}),": Reduced influence in governance decisions."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Yield Boosts"}),": Decreased boost levels on vault deposits."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Rewards Rates"}),": Lower share of protocol incentives."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Counteracting Decay"}),": Users can extend their lock duration (re-lock) to maintain or increase their veYFI balance."]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"early-exit-penalties",children:"Early Exit Penalties"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"Penalty Structure"}),": Exiting a lock before its expiry incurs a penalty, which is redistributed to remaining veYFI holders."]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"Penalty Calculation"}),":"]}),"\n",(0,a.jsx)(s.span,{className:"katex-display",children:(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",display:"block",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mtext,{children:"Penalty"}),(0,a.jsx)(s.mo,{children:"="}),(0,a.jsx)(s.mi,{children:"min"}),(0,a.jsx)(s.mo,{children:"\u2061"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mo,{fence:"true",children:"("}),(0,a.jsx)(s.mn,{children:"75"}),(0,a.jsx)(s.mi,{mathvariant:"normal",children:"%"}),(0,a.jsx)(s.mo,{children:"\xd7"}),(0,a.jsx)(s.mtext,{children:"Locked\xa0Amount"}),(0,a.jsx)(s.mo,{separator:"true",children:","}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mo,{fence:"true",children:"("}),(0,a.jsxs)(s.mfrac,{children:[(0,a.jsx)(s.mtext,{children:"Time\xa0Remaining"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mn,{children:"4"}),(0,a.jsx)(s.mtext,{children:"\xa0years"})]})]}),(0,a.jsx)(s.mo,{fence:"true",children:")"})]}),(0,a.jsx)(s.mo,{children:"\xd7"}),(0,a.jsx)(s.mtext,{children:"Locked\xa0Amount"}),(0,a.jsx)(s.mo,{fence:"true",children:")"})]})]}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"\\text{Penalty} = \\min\\left( 75\\% \\times \\text{Locked Amount}, \\left( \\frac{\\text{Time Remaining}}{4 \\text{ years}} \\right) \\times \\text{Locked Amount} \\right)"})]})})}),(0,a.jsxs)(s.span,{className:"katex-html","aria-hidden":"true",children:[(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.8889em",verticalAlign:"-0.1944em"}}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"Penalty"})}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}}),(0,a.jsx)(s.span,{className:"mrel",children:"="}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}})]}),(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"2.4em",verticalAlign:"-0.95em"}}),(0,a.jsx)(s.span,{className:"mop",children:"min"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.1667em"}}),(0,a.jsxs)(s.span,{className:"minner",children:[(0,a.jsx)(s.span,{className:"mopen delimcenter",style:{to
1p:"0em"},children:(0,a.jsx)(s.span,{className:"delimsizing size3",children:"("})}),(0,a.jsx)(s.span,{className:"mord",children:"75%"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mbin",children:"\xd7"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"Locked\xa0Amount"})}),(0,a.jsx)(s.span,{className:"mpunct",children:","}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.1667em"}}),(0,a.jsxs)(s.span,{className:"minner",children:[(0,a.jsx)(s.span,{className:"mopen delimcenter",style:{top:"0em"},children:(0,a.jsx)(s.span,{className:"delimsizing size3",children:"("})}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mopen nulldelimiter"}),(0,a.jsx)(s.span,{className:"mfrac",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsxs)(s.span,{className:"vlist",style:{height:"1.3603em"},children:[(0,a.jsxs)(s.span,{style:{top:"-2.314em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mord",children:"4"}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"\xa0years"})})]})]}),(0,a.jsxs)(s.span,{style:{top:"-3.23em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"frac-line",style:{borderBottomWidth:"0.04em"}})]}),(0,a.jsxs)(s.span,{style:{top:"-3.677em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"mord",children:(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"Time\xa0Remaining"})})})]})]}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200B"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.8804em"},children:(0,a.jsx)(s.span,{})})})]})}),(0,a.jsx)(s.span,{className:"mclose nulldelimiter"})]}),(0,a.jsx)(s.span,{className:"mclose delimcenter",style:{top:"0em"},children:(0,a.jsx)(s.span,{className:"delimsizing size3",children:")"})})]}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mbin",children:"\xd7"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"Locked\xa0Amount"})}),(0,a.jsx)(s.span,{className:"mclose delimcenter",style:{top:"0em"},children:(0,a.jsx)(s.span,{className:"delimsizing size3",children:")"})})]})]})]})]})}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Examples"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"3 years remaining \u2192 Penalty: 75% of locked amount."}),"\n",(0,a.jsx)(s.li,{children:"2 years remaining \u2192 Penalty: 50% of locked amount."}),"\n",(0,a.jsx)(s.li,{children:"1 year remaining \u2192 Penalty: 25% of locked amount."}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.hr,{}
1),"\n",(0,a.jsx)(s.h2,{id:"benefits-of-veyfi",children:"Benefits of veYFI"}),"\n",(0,a.jsx)(s.h3,{id:"governance-participation",children:"Governance Participation"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Voting Rights"}),": veYFI is the sole governance token of Yearn Finance. Holders can vote on:","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Gauge Emission Allocations"}),": Deciding how dYFI rewards are distributed among vault gauges."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Governance Proposals"}),": Submitting and voting on proposals affecting protocol parameters, adding/removing gauges, and other significant changes."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Epochs"}),": Governance operates in 14-day cycles called ",(0,a.jsx)(s.strong,{children:"epochs"}),", synchronized with Curve's veCRV epochs."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Voting Decay"}),": To prevent last-minute voting swings, voting power decays linearly during the last 24 hours of the voting period, reaching zero at epoch's end."]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"yield-boosts-on-vault-deposits",children:"Yield Boosts on Vault Deposits"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Vault Gauges"}),": Specialized contracts where users can stake their Yearn vault tokens to earn dYFI rewards."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Boost Mechanism"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Boost Range"}),": From 1x (base level) to a maximum of 10x."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Determined By"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"User's veYFI Share"}),": Proportion of total veYFI supply held."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"User's Gauge Deposit Share"}),": Proportion of total deposits in a specific gauge."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Maximizing Boost"}),": Achieved when a user's share of veYFI equals or exceeds their share of the gauge deposits."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Example"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"User holds 2% of veYFI supply and has 1% of total gauge deposits \u2192 Max boost achievable."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.h4,{id:"calculating-boost-levels",children:"Calculating Boost Levels"}),"\n",(0,a.jsx)(s.pre,{children:(0,a.jsx)(s.code,{className:"language-python",metastring:'title="Boost Calc"',children:"# determine user share of veYFI\nUserVeYFIShare = VeYFIBalance / VeYFITotalSupply\n\n# Determine boostable balance above 10% of deposit\nBoostableBalance = \n(AmountDepositedInGauge /10) + (TotalDepositedInTheGauge * UserVeYFIShare * 0.9)\n\n# take the less of amount deposited in gauge and boostable balance\nBoostedBalance = min(AmountDeposited, BoostableBalance)\n\n# get the boost by multiplying by 10 and dividing by amount deposited in gauge.\nBoost = 10 * BoostedBalance / AmountDepositedInGauge\n\n"})}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Interpretation"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"Users with higher veYFI holdings relative to their gauge deposits achieve higher boosts, up to 10x."}),"\n",(0,a.jsx)(s.li,{children:"Users without veYFI receive the base boost of 1x (10% of potential rewards)."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.h4,{id:"forfeited-rewards-and-redistribution",children:"Forfeited Rewards and Redistribution"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Unused Boosts"}),": The difference between the maximum possible boost and the user's actual boost results in forfeited dYFI rewards."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Redistribution"}),": Forfeited rewards are proportionally allocated to veYFI holders, incentivizing governance participation."]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"protocol-incentives",children:"Protocol Incentives"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Early Exit Penalties"}),": YFI paid to exit early is distributed among veYFI holders, providing an incentive to maintain locks."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Forfeited dYFI Rewards"}),": Users not achieving max boost forfeit a portion of their dYFI rewards, which are redistributed to veYFI holders."]}),"\n"]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"understanding-dyfi",children:"Understanding dYFI"}),"\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"dYFI"})," is a reward token emitted by vault gauges. It provides a mechanism to redistribute bought-back YFI to active protocol participants while encouraging long-term engagement."]}),"\n",(0,a.jsx)(s.h3,{id:"dyfi-redemption-mechanism",children:"dYFI Redemption Mechanism"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Redemption for YFI"}),": dYFI holders can exchange their tokens for YFI at a discounted rate, paying in ETH."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Burning Mechanism"}),": dYFI is burned upon redemption, ensuring the circulating supply doesn't exceed available YFI for redemption."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"ETH Proceeds"}),": ETH used in redemption is directed to automated YFI buybacks, enhancing the sustainability of the tokenomics program."]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"emission-of-dyfi-rewards",children:"Emission of dYFI Rewards"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"Emission Rate"}),": The amount of dYFI emitted per epoch is calculated using the formula:"]}),"\n",(0,a.jsx)(s.span,{className:"katex-display",children:(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",display:"block",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mtext,{children:"Annual\xa0dYFI\xa0Emission"}),(0,a.jsx)(s.mo,{children:"="}),(0,a.jsx)(s.mi,{children:"c"}),(0,a.jsx)(s.mo,{children:"\xd7"}),(0,a.jsx)(s.msqrt,{children:(0,a.jsx)(s.mtext,{children:"veYFI\xa0Supply"})})]}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"\\text{Annual dYFI Emission} = c \\times \\sqrt{\\text{veYFI Supply}}"})]})})}),(0,a.jsxs)(s.span,{className:"katex-html","aria-hidden":"true",children:[(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.6944em"}}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"Annual\xa0dYFI\xa0Emission"})}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}}),(0,a.jsx)(s.span,{className:"mrel",children:"="}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}})]}),(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.6667em",verticalAlign:"-0.0833em"}}),(0,a.jsx)(s.span,{className:"mord mathnormal",children:"c"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mbin",children:"\xd7"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}})]}),(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"1.24em",verticalAlign:"-0.2561em"}}),(0,a.jsx)(s.span,{className:"mord sqrt",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsxs)(s.span,{className:"vlist",style:{height:"0.9839em"}
1,children:[(0,a.jsxs)(s.span,{className:"svg-align",style:{top:"-3.2em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3.2em"}}),(0,a.jsx)(s.span,{className:"mord",style:{paddingLeft:"1em"},children:(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"veYFI\xa0Supply"})})})]}),(0,a.jsxs)(s.span,{style:{top:"-2.9439em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3.2em"}}),(0,a.jsx)(s.span,{className:"hide-tail",style:{minWidth:"1.02em",height:"1.28em"},children:(0,a.jsx)(s.svg,{xmlns:"http://www.w3.org/2000/svg",width:"400em",height:"1.28em",viewBox:"0 0 400000 1296",preserveAspectRatio:"xMinYMin slice",children:(0,a.jsx)(s.path,{d:"M263,681c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl0 -0\nc4.7,-7.3,11,-11,19,-11\nH40000v40H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM1001 80h400000v40h-400000z"})})})]})]}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200B"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.2561em"},children:(0,a.jsx)(s.span,{})})})]})})]})]})]})}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"c"}),": Configurable scaling factor (default is 12)."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"Distribution"}),": dYFI is allocated to gauges based on veYFI holders' votes during the governance process."]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"discount-calculation-formula",children:"Discount Calculation Formula"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"Discount Rate"}),": The discount at which dYFI can be redeemed for YFI depends on the ratio of veYFI supply to total YFI supply."]}),"\n",(0,a.jsx)(s.span,{className:"katex-display",children:(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",display:"block",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mtext,{children:"Discount"}),(0,a.jsx)(s.mo,{children:"="}),(0,a.jsxs)(s.mfrac,{children:[(0,a.jsx)(s.mi,{children:"c"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mn,{children:"1"}),(0,a.jsx)(s.mo,{children:"+"}),(0,a.jsx)(s.mi,{children:"a"}),(0,a.jsx)(s.mo,{children:"\xd7"}),(0,a.jsxs)(s.msup,{children:[(0,a.jsx)(s.mi,{children:"e"}),(0,a.jsxs)(s.mrow,{children:[(0,a.jsx)(s.mi,{children:"k"}),(0,a.jsx)(s.mo,{stretchy:"false",children:"("}),(0,a.jsx)(s.mi,{children:"s"}),(0,a.jsx)(s.mi,{children:"x"}),(0,a.jsx)(s.mo,{children:"\u2212"}),(0,a.jsx)(s.mn,{children:"1"}),(0,a.jsx)(s.mo,{stretchy:"false",children:")"})]})]})]})]})]}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"\\text{Discount} = \\frac{c}{1 + a \\times e^{k(sx - 1)}}"})]})})}),(0,a.jsxs)(s.span,{className:"katex-html","aria-hidden":"true",children:[(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"0.6833em"}}),(0,a.jsx)(s.span,{className:"mord text",children:(0,a.jsx)(s.span,{className:"mord",children:"Discount"})}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}}),(0,a.jsx)(s.span,{className:"mrel",children:"="}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2778em"}})]}),(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"1.8949em",verticalAlign:"-0.7873em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mopen nulldelimiter"}),(0,a.jsx)(s.span,{className:"mfrac",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsxs)(s.span,{className:"vlist",style:{height:"1.1076em"}
1,children:[(0,a.jsxs)(s.span,{style:{top:"-2.296em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mord",children:"1"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mbin",children:"+"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mord mathnormal",children:"a"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsx)(s.span,{className:"mbin",children:"\xd7"}),(0,a.jsx)(s.span,{className:"mspace",style:{marginRight:"0.2222em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mord mathnormal",children:"e"}),(0,a.jsx)(s.span,{className:"msupsub",children:(0,a.jsx)(s.span,{className:"vlist-t",children:(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.814em"},children:(0,a.jsxs)(s.span,{style:{top:"-2.989em",marginRight:"0.05em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"2.7em"}}),(0,a.jsx)(s.span,{className:"sizing reset-size6 size3 mtight",children:(0,a.jsxs)(s.span,{className:"mord mtight",children:[(0,a.jsx)(s.span,{className:"mord mathnormal mtight",style:{marginRight:"0.03148em"},children:"k"}),(0,a.jsx)(s.span,{className:"mopen mtight",children:"("}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",children:"s"}),(0,a.jsx)(s.span,{className:"mord mathnormal mtight",children:"x"}),(0,a.jsx)(s.span,{className:"mbin mtight",children:"\u2212"}),(0,a.jsx)(s.span,{className:"mord mtight",children:"1"}),(0,a.jsx)(s.span,{className:"mclose mtight",children:")"})]})})]})})})})})]})]})]}),(0,a.jsxs)(s.span,{style:{top:"-3.23em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"frac-line",style:{borderBottomWidth:"0.04em"}})]}),(0,a.jsxs)(s.span,{style:{top:"-3.677em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"mord",children:(0,a.jsx)(s.span,{className:"mord mathnormal",children:"c"})})]})]}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200B"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.7873em"},children:(0,a.jsx)(s.span,{})})})]})}),(0,a.jsx)(s.span,{className:"mclose nulldelimiter"})]})]})]})]})}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Variables"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"c"}),": Constant (1)."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"a"}),": Constant (approx. 10)."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"k"}),": Constant (approx. 4.7)."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"s"}),": Configurable scaling factor (default is 10)."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"x"}),": Ratio of veYFI supply to total YFI supply ",(0,a.jsxs)(s.span,{className:"katex",children:[(0,a.jsx)(s.span,{className:"katex-mathml",children:(0,a.jsx)(s.math,{xmlns:"http://www.w3.org/1998/Math/MathML",children:(0,a.jsxs)(s.semantics,{children:[(0,a.jsx)(s.mrow,{children:(0,a.jsxs)(s.mfrac,{children:[(0,a.jsx)(s.mtext,{children:"veYFI\xa0Supply"}),(0,a.jsx)(s.mtext,{children:"YFI\xa0Supply"})]})}),(0,a.jsx)(s.annotation,{encoding:"application/x-tex",children:"\\frac{\\text{veYFI Supply}}{\\text{YFI Supply}}"})]})})}),(0,a.jsx)(s.span,{className:"katex-html","aria-hidden":"true",children:(0,a.jsxs)(s.span,{className:"base",children:[(0,a.jsx)(s.span,{className:"strut",style:{height:"1.4133em",verticalAlign:"-0.4811em"}}),(0,a.jsxs)(s.span,{className:"mord",children:[(0,a.jsx)(s.span,{className:"mopen nulldelimiter"}),(0,a.jsx)(s.span,{className:"mfrac",children:(0,a.jsxs)(s.span,{className:"vlist-t vlist-t2",children:[(0,a.jsxs)(s.span,{className:"vlist-r",children:[(0,a.jsxs)(s.span,{className:"vlist",style:{height:"0.9322em"}
1,children:[(0,a.jsxs)(s.span,{style:{top:"-2.655em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"sizing reset-size6 size3 mtight",children:(0,a.jsx)(s.span,{className:"mord mtight",children:(0,a.jsx)(s.span,{className:"mord text mtight",children:(0,a.jsx)(s.span,{className:"mord mtight",children:"YFI\xa0Supply"})})})})]}),(0,a.jsxs)(s.span,{style:{top:"-3.23em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"frac-line",style:{borderBottomWidth:"0.04em"}})]}),(0,a.jsxs)(s.span,{style:{top:"-3.4461em"},children:[(0,a.jsx)(s.span,{className:"pstrut",style:{height:"3em"}}),(0,a.jsx)(s.span,{className:"sizing reset-size6 size3 mtight",children:(0,a.jsx)(s.span,{className:"mord mtight",children:(0,a.jsx)(s.span,{className:"mord text mtight",children:(0,a.jsx)(s.span,{className:"mord mtight",children:"veYFI\xa0Supply"})})})})]})]}),(0,a.jsx)(s.span,{className:"vlist-s",children:"\u200B"})]}),(0,a.jsx)(s.span,{className:"vlist-r",children:(0,a.jsx)(s.span,{className:"vlist",style:{height:"0.4811em"},children:(0,a.jsx)(s.span,{})})})]})}),(0,a.jsx)(s.span,{className:"mclose nulldelimiter"})]})]})})]}),"."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.p,{children:(0,a.jsx)(s.img,{alt:"image",src:n(55287).A+"",width:"1064",height:"807"})}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:["\n",(0,a.jsxs)(s.p,{children:[(0,a.jsx)(s.strong,{children:"Implications"}),":"]}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"High veYFI Supply"}),": Lower discount, as more YFI is locked, indicating strong commitment."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Low veYFI Supply"}),": Higher discount, incentivizing users to lock more YFI."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)("br",{}),"\n",(0,a.jsx)(s.admonition,{type:"yearnData",children:(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:["The current redemption discount is: ",(0,a.jsx)(i,{contractName:"dYFI Redemption",methodName:"discount",decimals:18})]}),"\n",(0,a.jsxs)(s.li,{children:["Current Spot Price of YFI/ETH: ",(0,a.jsx)(i,{contractName:"dYFI Redemption",methodName:"get_latest_price",decimals:18})]}),"\n",(0,a.jsxs)(s.li,{children:["ETH required to redeem 1 dYFI: ",(0,a.jsx)(i,{contractName:"dYFI Redemption",methodName:"eth_required",decimals:18})]}),"\n"]})}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"epochs-and-voting",children:"Epochs and Voting"}),"\n",(0,a.jsx)(s.p,{children:"Governance and reward distribution operate on a structured timeline."}),"\n",(0,a.jsx)(s.h3,{id:"epoch-timeline",children:"Epoch Timeline"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Duration"}),": Each epoch lasts ",(0,a.jsx)(s.strong,{children:"14 days"}),"."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Phases"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Week 1"}),": Proposal submission period."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Week 2"}),": Voting period for gauge emissions and governance proposals."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Voting Decay"}),": Voting power decays linearly during the last 24 hours of the voting period to prevent manipulation."]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"gauge-emission-voting",children:"Gauge Emission Voting"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Allocation of dYFI"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Total Emission"}),": Determined by the emission formula."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Reserved Allocations"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"5%"})," to YFI/ETH liquidity gauge."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"5%"})," to dYFI/ETH liquidity gauge."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Remaining 90%"}),": Allocated based on veYFI holders' votes."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Blank Votes"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Option to Conserve Emission"}),': Voters can cast "blank" votes to reduce current epoch\'s emission.']}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Outcome of Blank Votes"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Burned dYFI"}),": Permanently removes dYFI from circulation, extending the program's runway."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Deferred Emission"}),": Carries over dYFI to the next epoch's allocation."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Configurable Split"}),": The proportion of burned vs. deferred dYFI is adjustable through governance."]}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"governance-proposals",children:"Governance Proposals"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Submission"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:["Any address holding at least ",(0,a.jsx)(s.strong,{children:"1 veYFI"})," can submit proposals during the first week of an epoch."]}),"\n",(0,a.jsx)(s.li,{children:"Proposals are posted in the dedicated governance forum section."}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Voting and Approval"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"Simple majority (>50% of votes) required for approval."}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Quorum Requirement"}),": A minimum amount of veYFI must participate in the vote for it to be valid. The default quorum is ",(0,a.jsx)(s.strong,{children:"10 veYFI"})," but is configurable."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Types of Proposals"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"Adding or removing gauges."}),"\n",(0,a.jsx)(s.li,{children:"Adjusting system parameters."}),"\n",(0,a.jsx)(s.li,{children:"Implementing significant protocol changes."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"system-parameters-and-governance-adjustments",children:"System Parameters and Governance Adjustments"}),"\n",(0,a.jsx)(s.p,{children:"Certain aspects of the veYFI and dYFI system can be modified through governance to adapt to evolving needs."}
1),"\n",(0,a.jsx)(s.h3,{id:"adjustable-parameters",children:"Adjustable Parameters"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Quorum"}),": Minimum veYFI required for proposal approval (default: 10 veYFI)."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Blank Vote Burn Percentage"}),": Proportion of dYFI from blank votes that is burned (default: 50%)."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Scaling Factors"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"s (Discount Scaling)"}),": Affects the dYFI discount curve (default: 10)."]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"c (Emission Scaling)"}),": Adjusts the emission rate of dYFI (default: 12)."]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Liquidity Gauges"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"Addresses of the YFI/ETH and dYFI/ETH liquidity gauges receiving reserved emissions."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"liquid-lockers-an-alternative-option",children:"Liquid Lockers: An Alternative Option"}),"\n",(0,a.jsxs)(s.p,{children:["For users who prefer not to manage individual locks and veYFI decay, ",(0,a.jsx)(s.strong,{children:"liquid lockers"})," offer a convenient alternative."]}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"How They Work"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"Third-party services lock YFI on behalf of users and issue a transferable receipt token."}),"\n",(0,a.jsx)(s.li,{children:"These tokens represent a claim on the locked YFI and can be traded or used to earn rewards."}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Available Services"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"1up"}),": ",(0,a.jsx)(s.a,{href:"https://1up.tokyo/stake",children:"1up.tokyo/stake"})]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Cove"}),": ",(0,a.jsx)(s.a,{href:"https://boosties.cove.finance/yfi/stake-yfi",children:"app.cove.finance/yfi/stake-yfi"})]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"StakeDAO"}),": ",(0,a.jsx)(s.a,{href:"https://www.stakedao.org/lockers/yfi",children:"stakedao.org/lockers/yfi"})]}),"\n"]}),"\n"]}),"\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:"Considerations"}),":","\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:"Liquid locker tokens may not always maintain parity with YFI's value."}),"\n",(0,a.jsx)(s.li,{children:"Users should evaluate the risks and benefits of using third-party services."}),"\n"]}),"\n"]}),"\n"]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.h2,{id:"references",children:"References"}),"\n",(0,a.jsx)(s.h3,{id:"relevant-governance-proposals",children:"Relevant Governance Proposals"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://gov.yearn.fi/t/yip-56-buyback-and-build/8929",children:"YIP-56: Buyback and Build"})})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://gov.yearn.fi/t/yip-61-governance-2-0/10460",children:"YIP-61: Governance 2.0"})})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://gov.yearn.fi/t/yip-65-evolving-yfi-tokenomics/11994",children:"YIP-65: Evolving YFI Tokenomics"})})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://gov.yearn.fi/t/yip-73-activate-veyfi-rewards-with-oyfi-gauges/13414",children:"YIP-73: Activate veYFI Rewards"})})}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"snapshot-voting",children:"Snapshot Voting"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsxs)(s.li,{children:[(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://snapshot.org/#/veyfi.eth",children:"veYFI Snapshot Page"})})," (legacy \u2014 for current voting see ",(0,a.jsxs)(s.a,{href:"https://snapshot.org/#/s:styfi.eth",children:["s",":styfi",".eth"]}),")"]}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"contract-addresses",children:"Contract Addresses"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"/developers/addresses/veyfi-contracts",children:"Yearn veYFI Contract Addresses"})})}),"\n"]}),"\n",(0,a.jsx)(s.h3,{id:"audits",children:"Audits"}),"\n",(0,a.jsxs)(s.ul,{children:["\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://github.com/statemindio/public-audits/blob/main/Yearn%20Finance/2022-07-08_Yearn_veYFI(Voting_and_RewardPool).pdf",children:"veYFI StateMind Audit"})})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://github.com/yearn/yearn-security/blob/master/audits/202208_yAcademy_yearn-veyfi/yAcademy_-_yearn_veyfi_review.pdf",children:"veYFI yAcademy Audit"})})}),"\n",(0,a.jsx)(s.li,{children:(0,a.jsx)(s.strong,{children:(0,a.jsx)(s.a,{href:"https://old.chainsecurity.com/wp-content/uploads/2023/03/Yearn-Smart-Contract-Audit-oYfi-ChainSecurity.pdf",children:"dYFI ChainSecurity Audit"})})}),"\n"]}),"\n",(0,a.jsx)(s.hr,{}),"\n",(0,a.jsx)(s.p,{children:(0,a.jsx)(s.em,{children:"This document is intended to provide a detailed understanding of the veYFI and dYFI mechanisms within Yearn Finance. Users are encouraged to participate actively in governance and stay informed about ongoing developments."})})]})}function h(e={}){let{wrapper:s}={...(0,l.R)(),...e.components};return s?(0,a.jsx)(s,{...e,children:(0,a.jsx)(o,{...e})}):o(e)}},55287:function(e,s,n){n.d(s,{A:()=>i});let i=n.p+"assets/images/dyfi-redemption-chart-70db84b627a983b721d0ab452f58038d.png"},28453:function(e,s,n){n.d(s,{R:()=>r,x:()=>t});var i=n(96540);let a={},l=i.createContext(a);function r(e){let s=i.useContext(l);return i.useMemo(function(){return"function"==typeof e?e(s):{...s,...e}},[s,e])}function t(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:r(e.components),i.createElement(l.Provider,{value:s},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.