collectPresent()
checks the current balance of the user, allowing users to mint multiple times.
Nice people can mint multiple times using the following scenario:
Mint.
Transfer the NFT to another address.
Mint again.
Repeat.
This leads to the dilution of the value of the NFT as it permits an unlimited supply.
Manual review.
Keep accounting records in storage.
Relying on balanceOf > 0 in collectPresent() allows the msg.sender to send their present to another address and then collect again.
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.