fixed to run every 20 seconds, and account for bans