
Payouts

Top 25

Top 50
All
Sherlock
CodeHawks
Jul '23
gas
Uncheck Arithmetic where overflow/underflow impossible
gas
Use of magic numbers
gas
Named parameter mappings
gas
Use assembly to check for `address(0)`
gas
Don't use draft versions in production
gas
Large multiples of ten should use scientific notation
gas
Use if + custom errors instead of using require + string
gas
Mixed usage of `int`/`uint` with `int256`/`uint256`
gas
Multiple `address` mappings can be combined into a single mapping of an `address` to a `struct`, where appropriate
gas
All interfaces must be in one folder
gas
Test Coverage Improvements
low
Pragma isn't specified correctly which can lead to nonfunction/damaged contract when deployed on Arbitrum
gas
`++i`/`i++` should be `unchecked{++i}`/`unchecked{i++}` when it is not possible for them to overflow, as is the case when used in `for`- and `while`-loops
gas
The nonReentrant modifier should occur before all other modifiers
gas
Use `assembly` to check for `address(0)`
Jan '23