updating to add parallelization