Changes to remove ugly DoEvents