pragma omp parallel