If there is no valid vote, calling function selectPresident() will revert with array out-of-bounds access.
The code on line 126 which is executed during the call to selectPresident() then _selectPresidentRecursive() assumes that there is always at least one entry on candidateList array.
If there is no vote, then candidateList is empty. Therefore, the code above tries to access an empty list which causes the revert.
The call to selectPresident() reverts.
Testing
Add a code to handle if there is no candidate to prevent the revert.
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.