# Early Withdrawal Cost Calculation

1 frETH is minted per 1 ETH-YEAR locked. Where for simplicity 1 Year always equals 365 Days.\
\
&#x20;                                                 $$frETH\_m  = amount \* days/365$$\
\
Upon deposit, immediate early withdrawal of a NFT costs 1.20x the frETH minted from that NFT's creation. This amount falls to 1x frETH minted over the first 67% of the lock duration. In the final 33% of the lock duration, it rapidly falls to 0 frETH on/after the maturity date. A 0.25% WETH penalty is assessed on all Freezer NFTs prior to maturity date. On/after maturity, this is 0%.

![Although frETH is minted and paid upfront to depositors, for a given Freezer NFT the early withdrawal costs in frETH start at MORE than the amount minted. ](https://3375053316-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FCuoWrqUivgdEBM9CMKny%2Fuploads%2F67VUjghm3OezicRO52HB%2FfrETH_yield_curve.svg?alt=media\&token=0c20bc65-68ba-4699-9f23-3d679cb75066)

When an NFT is redeemed prior to 67% of its lock time, more frETH is required than was originally minted for the NFT. 50% of this amount above minted is given to FRZ stakers, the rest is burned.\
\
NFTs redeemed in the final 33% of their lock time have all the frETH fee burned (the 0.25% WETH penalty always goes to FRZ stakers).\
\
Example: \
\
Alice locks 90 WETH for 3 Years (1,095 days). She mints 270 frETH for doing this. Her Early Withdrawal Costs in frETH start high and drop to 0, i.e., her NFT becomes more valuable daily.

<table><thead><tr><th width="150">Date</th><th width="150">Progress</th><th width="150">frETH Fee</th><th>WETH Penalty</th></tr></thead><tbody><tr><td>Day 1</td><td> 0%</td><td>324 frETH<br>(270 frETH * 1.20)</td><td>0.225 WETH<br>(90 WETH * 0.25%)</td></tr><tr><td>Day 365</td><td>33%</td><td>297 frETH</td><td>0.225 WETH</td></tr><tr><td>Day 730</td><td>67%</td><td>270 frETH</td><td>0.225 WETH</td></tr><tr><td>Day 912</td><td>85%</td><td>135 frETH</td><td>0.225 WETH</td></tr><tr><td>Day 1095</td><td>100%</td><td>0 frETH</td><td>0.00 WETH</td></tr></tbody></table>

In Code form:

```
// Identifying Cost to Withdraw in frETH

# mint_amount = amount WETH deposited * (days locked / 365)
# time_locked = # days locked
# time_passed = current date - date locked (measured in days)

cost_to_withdraw = function(mint_amount, time_locked, time_passed){ 
 
 progress = time_passed / time_locked 

# On or after maturity date it is 0 frETH fee (and 0 WETH penalty)
# to redeem the NFT.

if(progress >= 1){ 
    return(0) 
    }
     
# Prior to the breakeven date frETH fee reduces 
# from 1.2x frETH minted to 1x frETH minted. 0.25% WETH penalty.

  if(progress < 0.67){ 
    return(
     mint_amount + (0.2 * mint_amount * ( 1 - progress / 0.67))
    ) 

# After the breakeven date (2/3rds of lock time)
# frETH fee rapidly falls from 1x frETH minted to 0 frETH.
# 0.25% WETH penalty applies until maturity date.

  } else {
    return ( 
    mint_amount * ( 
      1 -  ( (progress - 0.67)/0.33 ) 
      )
    )
    }
}
```
