when people pay for membership, they validate their membership on their profile page with a confirmation code that they receive via email. to prevent bad actors from spamming random codes trying to game the system, let's introduce a rate limiting system for these codes.