use a `spawn` alternative