Control.Concurrent.Timeout
timeout