finished OpenMP implementation section