Operation YEV (YES Extractable Value) is a mitigation strategy devised and implemented with the oversight and guidance of the community multisig signers and the Blast team.
For background information, please see our incident disclosure.
In Operation YEV, we compose multiple flashloan arbitrage swaps and liquidity rebalances into a single transaction in order to maximize the liquidity we capture above the BLV. All captured liquidity is sent to a community-governed multisig.
The operation can be broken down into a few steps:
In this step, the contract takes a flash loan to repay all associated team wallets to unlock initial $YES supply. It performs the following actions:
Transfer ~86,407 YES across team wallets to the contract.
Takes a flash loan for 1,838 ETH. Repays all team associated credit accounts to receive a total of 1,545,605 YES.
Sell 832,826K YES to bring the activeTick() to exactly floorTick() + 408.
Triggers slide() to reset the checkpoint tick.
There is now 1,133.9 ETH and 799,187 YES in the contract, and an outstanding flash loan to repay.
In this step, the contract arbitrages all external LP pools with the main pool now that it is trading at BLV. It performs the following actions:
(amounts will be updated after we analyze the transaction)
Sell 38,168 YES for 51.4 ETH in the .3% YES/ETH pool on Thruster
Sell 31,541 YES for 42.5 ETH in the YES/ETH pool on Ambient
Sell 312,549 YES for 1,468,399 USDB in the 1% YES/USDB pool on Thruster
Sell 5,870 YES for 27,641 USDB in the 0.3% YES/USDB pool on Thruster
Sell 1,469,041 USDB for 407 ETH in the .3% ETH/USDB pool on Thruster
There is now 1,227 ETH and 723,607 YES in the contract, and an outstanding flash loan to repay.
In this step, the contract then loops the YES in the contract to trigger another shift. This distributes an additional ~380 ETH by increasing the floor by 2% across the entire supply. It then takes another flashloan to pay off the loop and dump the remaining YES for ETH. It performs the following actions:
Loop 144,721 YES 6 times (total exposure of 868,328 YES) to bring the activeTick() to floorTick + 1009
Trigger shift(). This distributes an additional ~380 ETH in the mitigation process by increasing the floor by 2% for all circulating supply.
Flash loan 1,048 ETH to repay debt and redeem 868,328 YES
Sell 667,645 YES for 856.39 ETH to trigger second slide at floorTick + 208
Sell the rets of the YES after slide at 736,481 YES for 914.6 ETH
Pay back both flash loans for a total of 2,886 ETH
There is now 265 ETH in the contract, and no outstanding loans to repay in the flashloan.
In this step, the contract collects all distributed fees and converts any remaining assets to ETH before repaying its flashloan. It then sends any remaining profits to the community multisig. It performs the following actions:
Collect 81,031 YES of protocol fees accrued from the shift
Sell that YES for 100.467 ETH
Total profit is 350.632 ETH. Send the ETH profits to 0xb4b9106fe909E9354A19842a31ffB611D48A92d0
There is now no remaining ETH or YES in the contract, and all flashloans have been repaid. Transaction is finalized.
A snapshot for eligible YES to claim has been taken one block after the transaction was executed at block number 1421059
. You can check if your wallet has been included in the snapshot here: