because it's a single operation, spawn() would be so much worse