complete omp version