Added clearTimeout as it seemed to go a bit wonky after a while if you dont, even though a few of the SO posts on this subject imply you dont need to clear when you overwrite the underlying object. Anyway this fixes the issue.