There are some Uniswap WETH pools on Optimism have different swapping fee than 3000, these pools can't be found by ISwapRouter and swapping will always fail.
In sellProfits(address _profits), the fee value of ISwapRouter.ExactInputSingleParams is always 3000, if fee of the _profits / WETH Uniswap pool is not 3000, ISwapRouter is unable to find the pool and transaction will fail as pool address is 0.
Tokens can't be swapped for WETH.
Manual Review
fee should be included in the tx's calldata and passed as a parameter to the sellProfits(address _profits) method.
The contest is live. Earn rewards by submitting a finding.
This is your time to appeal against judgements on your submissions.
Appeals are being carefully reviewed by our judges.