2nd pass at timeout, much more stable