Take a look at upgradeTier function:
The burn function is called with an amount of 2, which means it will attempt to burn 2 tokens of the specified tier from the user's balance. Albeit, it's likely that the user only holds 1 token of their current tier.
This will cause the function to revert due to insufficient balance when trying to burn 2 tokens stopping the user from upgrading their tier.
Check the user's token balance before burning
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.