updated parallelization