Standardize ragequit proposals and make it a feature and not a bug

Here it is.

My finished version of the Algo, including a discount for cvxFXS/veFXS stakers.

“USD value of LP position” × Multiplier = “virtual USD Value of Boosted Position”
L M B
“LP Staked + Boost [FraxStats]” × “LP Price [FraxStats]” = “virtual USD Value of entire Pool”
P A N
note [FraxStats] refers to the value indicated by app.frax.finance for the equivalently named statistic of any given gauged LP pool during any given period.

G = “virtual USD Value of Boosted Position” ÷ “virtual USD Value of entire Pool”
B N
G = decimal percentage (virtual) USD Value of position relative to (virtual) boosted value of entire pool
A = LP Price [FraxStats]
D = LP Amount Staked per position
L = USD Value of LP Position
L = A x D
M= (veFXS-stake-weight-boost + time-lock-boost)
M = Multiplier
P = “LP Staked + Boost”[FraxStats]
B = “virtual USD Value of Boosted Position”
B = L × M
P × A = “virtual USD Value of entire Pool”
P x A = N
G = (B ÷ N)
G = (L × M) ÷ (P × A)
R = FXS allocated to pool per epoch [FraxStats]
F = FXS Price per epoch [FraxStats]
F = cumulative avg FXS price of relative epochs (use 3 daily averages [morning/noon/night])
E = F^y × veFXS (user staked)
M = “FXS rewarded to LP Position per Epoch”
M = G × R
V = “USD Value of FXS rewarded to LP Position per Epoch”
V = M × F
V^n = M × F per epoch
^n = sequential numerical identity of epoch, NOT an exponent (used only as epoch identifier)
^y = most recent ^n
T = “Total USD Value of FXS received per (lifetime of) position”
T = (V^n) + (V^n) … + (V^y)
C = Function derived from
value of Collateral Ratio %
If C=0 unlocks are not permitted.
C =
{ CR% ≥ 103% =1
CR% ≤ 103% = 0}

Y = Days Remaining til unlock of LP Position
U = “USD Value of LP Position” – T
U = L – T
U = amount due to users after unlock, [post-fxs-repay, pre-fee] (no discount applied)

D = USD fee discount for cvxFXS and veFXS stakers
D = (((days-since-veFXS(or cvxFXS)-lockup ÷ (365.25 × 4)) × 50)%) × E
D ≠ >(50% × T)
X = Amount Owed minus Discount

X= ((“Total USD Value of all FXS rewarded to LP” + “0.06844627% of (U) per Day of Lock Remaining[2.5% a year]”) minus D) × function of C

X = ((T + ((((Y/1461)×10)%)U)) - D) × C
Z = L – X
Z = Amount received by User post fees + deductions

Loop (Z - X) back through CR calculation to ensure CR% ≥ 103% before finalizing unlock