You can cut out 10 opcodes in the creation-time EVM bytecode if you declare a constructor payable. Making the constructor payable eliminates the need for an initial check of msg.value == 0 and saves 13 gas on deployment with no security risks.
https://github.com/Cyfrin/2023-07-beedle/blob/main/src/Lender.sol#L73
https://github.com/Cyfrin/2023-07-beedle/blob/main/src/Staking.sol#L31
https://github.com/Cyfrin/2023-07-beedle/blob/main/src/Beedle.sol#L11
https://github.com/Cyfrin/2023-07-beedle/blob/main/src/Fees.sol#L19
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.