single setTimeout rather than per module