setTimeout and setInterval is sooooo unreliable. But you already knew this.