added work timeout