added paralelization scheme