added spawn functions