The code misuses Ownable in multiple places:
Constructor calls Ownable(msg.sender):
OpenZeppelin Ownable (standard) has no constructor argument, so this will not compile.
Calls Ownable.owner() in code instead of owner():
This is not the correct way to call the inherited owner() function and will cause errors or unexpected behavior. Use owner() directly.
Impact: Contract will fail to compile with standard OpenZeppelin Ownable (blocking deployment). Misuse also risks incorrect owner checks if changed to compile.
Likelihood: HIGH (compilation fails)
Impact: HIGH (non-deployable as-is)
Remove Ownable(msg.sender) from the constructor and call owner() directly. Example:
Replace Ownable.owner() with owner():
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.