trying to ensure timeouts only trigger when needed