From 5882141eb6a79ee56ff6d3c67e6dddc55f33b0ea Mon Sep 17 00:00:00 2001
From: Sean Crosby <scrosby@unimelb.edu.au>
Date: Mon, 13 Nov 2023 11:09:14 +1100
Subject: [PATCH] Add more eb files

---
 a/Anaconda3/Anaconda3-2023.07-2.eb            |   31 +
 a/Apptainer/Apptainer-1.1.8-GCCcore-11.3.0.eb |    2 +-
 a/Apptainer/Apptainer-1.2.3-GCCcore-11.3.0.eb |   33 +
 a/abPOA/abPOA-1.4.1-foss-2022a.eb             |   41 +
 b/BEDOPS/BEDOPS-2.4.41-foss-2022a.eb          |   40 +
 b/BaseSpaceCLI/BaseSpaceCLI-1.5.3.eb          |   36 +
 b/Boost.MPI/Boost.MPI-1.79.0-gompi-2022a.eb   |   29 +
 .../CFDEMcoupling-3.8.0-foss-2022a.eb         |   43 +
 c/CFDEMcoupling/LIGGGHTS.patch                |  239 +
 c/CFDEMcoupling/Makefile.auto.patch           |  238 +
 c/CFDEMcoupling/Makefile.auto.patch.old       | 1402 ++++++
 c/CFITSIO/CFITSIO-3.49-GCCcore-11.3.0.eb      |   41 +
 .../CGAL-4.14.1-foss-2022a-Python-2.7.18.eb   |   38 +
 c/CLHEP/CLHEP-2.4.6.2-GCC-11.3.0.eb           |   29 +
 c/CMake/CMake-3.11.4-GCCcore-11.3.0.eb        |   35 +
 c/CMake/CMake-3.15.3-GCCcore-11.3.0.eb        |   39 +
 c/CMake/CMake-3.15.3-fix-toc-flag.patch       |  110 +
 c/COLMAP/COLMAP-3.9-foss-2022a-CUDA-11.7.0.eb |   54 +
 c/CREST/CREST-2.12.eb                         |   26 +
 ....0-foss-2022a-CUDA-11.7.0-Python-3.10.4.eb |   85 +
 c/Caffe/Caffe-1.0_Spartan_cuDNN_version.patch |   11 +
 c/Caffe/Caffe-1.0_eb_flexiblas.patch          |   95 +
 c/Caffe/Caffe-1.0_gpu_data.patch              |  153 +
 .../Code_Saturne-8.0.1-foss-2022a.eb          |   32 +
 .../CoordgenLibs-3.0.1-gompi-2022a.eb         |   32 +
 c/canu/canu-2.2-GCCcore-11.3.0.eb             |   40 +
 ...res-solver-2.2.0-foss-2022a-CUDA-11.7.0.eb |   38 +
 c/coverage/coverage-7.2.7-GCCcore-11.3.0.eb   |   35 +
 c/csvtk/csvtk-0.25.0.eb                       |   20 +
 .../deepmedic-0.8.2-foss-2022a-CUDA-11.7.0.eb |   42 +
 d/dotNET-SDK/dotNET-SDK-2.2.203-linux-x64.eb  |   38 +
 e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2022a.eb     |   56 +
 ...IGENSOFT-7.2.1_Fix_makefile_openblas.patch |   23 +
 .../EIGENSOFT-7.2.1_restore-ploteig.patch     |  234 +
 e/edlib/edlib-1.3.9-GCC-11.3.0.eb             |   22 +
 e/epa-ng/epa-ng-0.3.8-GCC-11.3.0.eb           |   33 +
 f/FLANN/FLANN-1.8.4_fix-cmake.patch           |   30 +
 f/FLANN/FLANN-1.9.1-foss-2022a.eb             |   42 +
 .../FreeSurfer-6.0.1-centos6_x86_64.eb        |   32 +
 .../GROMACS-2023.1-foss-2022a-CUDA-11.7.0.eb  |   93 +
 .../GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb  |   90 +
 g/GTDB-Tk/GTDB-Tk-2.3.2-foss-2022a.eb         |    2 +
 g/GTK+/GTK+-3.24.23-GCCcore-11.3.0.eb         |   76 +
 ...-theme-3.34.3_disable-svg-conversion.patch |   16 +
 g/Garfield++/Garfield++-4.0-foss-2022a.eb     |   43 +
 g/Garfield++/README                           |    2 +
 g/Geant4-data/Geant4-data-11.1.eb             |   53 +
 g/Geant4/Geant4-11.1.2-GCC-11.3.0.eb          |   46 +
 ...ata_env_vars_from_Geant4-data_module.patch |   50 +
 g/Go/Go-1.19.13.eb                            |   30 +
 .../GtkSourceView-3.24.11-GCCcore-11.3.0.eb   |   41 +
 g/gappa/gappa-0.7.1-GCC-11.3.0.eb             |   36 +
 g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb       |   35 +
 g/glog/glog-0.6.0-GCCcore-11.3.0.eb           |   32 +
 g/gretl/gretl-2020a-foss-2022a.eb             |   41 +
 h/HDF5/HDF5-1.10.8-gompi-2022a.eb             |   28 +
 h/HEALPix/HEALPix-3.82-GCCcore-11.3.0.eb      |    2 +-
 h/hwloc/hwloc-1.11.8-GCCcore-11.3.0.eb        |   44 +
 i/imageio/imageio-2.22.2-foss-2022a.eb        |   25 +
 ...ant-NGP-18102023-GCC-11.3.0-CUDA-11.7.0.eb |   30 +
 ...ntervaltree-python-3.1.0-GCCcore-11.3.0.eb |   30 +
 l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb |  168 +
 ...s-2022a-kokkos.eb.bak_20231006102413_30160 |  168 +
 ...Mar2020-foss-2022a-Python-3.10.4-kokkos.eb |  107 +
 l/LAMMPS/lammps-3mar2020_fix-docs-build.patch |   31 +
 ...lammps-3mar2020_kokkos-config-header.patch |   44 +
 ...mps-stable_3Mar2020_hack_openmp_gcc9.patch | 3969 +++++++++++++++++
 ...lammps_vs_yaff_test_single_point_energy.py | 1325 ++++++
 ...> LANDIS-II-7.0-GCCcore-11.3.0.eb-NO-NEED} |    2 +-
 l/LANDIS-II/README                            |   33 +
 l/LevelDB/LevelDB-1.18-foss-2022a.eb          |   33 +
 m/MOSEK/MOSEK-9.3.22.eb                       |   21 +
 m/maeparser/maeparser-1.3.0-gompi-2022a.eb    |   26 +
 m/medaka/medaka-1.9.1-foss-2022a.eb           |   68 +
 .../minc-stuffs-0.1.25-foss-2022a.eb          |   10 +-
 .../minc-toolkit-1.9.18.2-foss-2022a.eb       |    1 -
 m/molmod/molmod-1.4.8-foss-2022a.eb           |   34 +
 n/NiBabel/NiBabel-4.0.2-foss-2022a.eb         |   46 +
 .../netCDF-Fortran-4.6.0-iomkl-2022a.eb       |   28 +
 n/netCDF/netCDF-4.9.0-iomkl-2022a.eb          |   53 +
 n/nose3/nose3-1.3.8-GCCcore-11.3.0.eb         |   36 +
 o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb    |   61 +
 ...-3.1.1_fix-CoordgenLibs-no-templates.patch |   49 +
 .../OpenBabel-3.1.1_fix-distgeom-test.patch   |   39 +
 .../OpenFOAM-5.0-20180108-foss-2022a.eb       |   51 +
 .../OpenFOAM-5.0-20180108-foss-2022a.eb.bak   |   51 +
 .../OpenFOAM-5.0-20180108_PVReaders.patch     |   55 +
 .../OpenFOAM-5.0-20180108_cleanup.patch       |  314 ++
 .../OpenFOAM-5.0-20180108_compiler.patch      |   29 +
 ...5.0-20180108_fix-decomposedBlockData.patch |   45 +
 .../OpenFOAM-5.0-20180606-foss-2022a.eb       |   48 +
 o/OpenFOAM/OpenFOAM-5.0-foss-2022a.eb         |   39 +
 o/OpenFOAM/OpenFOAM-7-20200508-cleanup.patch  |  318 ++
 o/OpenFOAM/OpenFOAM-7-cleanup.patch           |  338 ++
 o/OpenFOAM/OpenFOAM-7-cleanup_test.patch      |  338 ++
 .../OpenFOAM-7-foss-2019b-20200508.eb.bak     |   47 +
 o/OpenFOAM/OpenFOAM-7-foss-2022a.eb           |   45 +
 o/OpenFOAM/OpenFOAM-7-foss-2022a_test.eb      |   42 +
 o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch   |   57 +
 .../OpenFOAM-7-mpi-compilation_test.patch     |   57 +
 ...pe_attribute_to_release_ucp_datatype.patch |  293 ++
 o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb         |   65 +
 o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb.bak     |   63 +
 o/OpenMPI/OpenMPI-4-100G.patch                |   13 +
 o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb         |    3 +
 .../OpenMPI-4.1.4-intel-compilers-2022.1.0.eb |    3 +
 o/OpenMPI/ompi-hdr-ndr-3.1.patch              |   13 +
 o/OpenMolcas/OpenMolcas-22.10-iomkl-2022a.eb  |    2 +-
 o/OpenPose/OpenPose-1.7.0-foss-2022a.eb       |   43 +
 .../ont-fast5-api-4.1.1-foss-2022a.eb         |   43 +
 p/PICRUSt2/PICRUSt2-2.5.2-b-foss-2022a.eb     |   38 +
 p/PMIx/PMIx-3.2.3-chown.patch                 |   11 +
 p/PMIx/PMIx-3.2.3.eb                          |    1 +
 p/PMIx/PMIx-4.2.2-chown.patch                 |   11 +
 p/PMIx/PMIx-4.2.2.eb                          |    1 +
 .../ParaView-5..6.2-foss-2022a-clamp.patch    |   22 +
 p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb  |    2 +
 .../ParaView-5.11.1-fix_thrust_vtk_m.patch    |   83 +
 p/ParaView/ParaView-5.11.1-foss-2022a-mpi.eb  |   60 +
 ...View-5.4.1-foss-2022a-Python-2.7.18-mpi.eb |   66 +
 ...View-5.4.1-foss-2022a-Python-3.10.4-mpi.eb |   68 +
 .../ParaView-5.4.1_fix-Qt5.11-support.patch   |   94 +
 ...ParaView-5.6.2-foss-2022a-Python-3.10.4.eb |   88 +
 p/ParaView/ParaView-5.6.2_exodus_dummy.patch  |   21 +
 p/ParaView/ParaView-5.6.2_tp_print.patch      |  112 +
 ...ParaView-5.7.0-foss-2022a-Python-3.10.4.eb |   80 +
 p/ParaView/README                             |   24 +
 p/ParaView/test/test.cxx                      |   16 +
 p/ParaView/test/test.mpi                      |  Bin 0 -> 26112 bytes
 p/parasail/parasail-2.6-GCC-11.3.0.eb         |   27 +
 .../protobuf-python-3.11.4-GCCcore-11.3.0.eb  |   37 +
 .../protobuf-python-3.19.4-GCCcore-11.3.0.eb  |    2 +
 p/protobuf/protobuf-3.11.4-GCCcore-11.3.0.eb  |   29 +
 p/pullseq/pullseq-1.0.2-GCCcore-11.3.0.eb     |   37 +
 p/pydicom/pydicom-2.3.0-GCCcore-11.3.0.eb     |   26 +
 p/pyfaidx/pyfaidx-0.7.1-GCCcore-11.3.0.eb     |   30 +
 p/pyminc/pyminc-0.57-foss-2022a.eb            |    2 +-
 p/pyspoa/pyspoa-0.0.9-GCC-11.3.0.eb           |   53 +
 p/pyspoa/pyspoa-0.0.9_use-spoa-dep.patch      |   25 +
 .../python-parasail-1.3.3-foss-2022a.eb       |   32 +
 q/Qt5/Qt5-5.13.1-GCCcore-11.3.0.eb            |   81 +
 q/Qt5/Qt5-5.13.1_fix-mantissatable.patch      |   22 +
 q/Qt5/Qt5-5.13.1_fix-webrtc.patch             |   48 +
 q/Qt5/bidi.patch                              |   11 +
 q/Qt5/clockdrift_detector.patch               |   10 +
 q/Qt5/convert.patch                           |    8 +
 q/Qt5/decoding_state.patch                    |   10 +
 q/Qt5/exception_handler.patch                 |   11 +
 q/Qt5/qbytearraymatcher.patch                 |   10 +
 q/Qt5/qendian.patch                           |   10 +
 q/Qt5/qjp2handler.cpp.patch                   |   10 +
 q/Qt5/qqmlprofilerevent_p.h.patch             |   10 +
 q/Qt5/rule_bison.py.patch                     |   11 +
 q/qctool/qctool-2.2.0-GCC-11.3.0.eb           |   35 +
 ....0_identify-flexiblas-in-configure.patch.1 |   12 +
 r/R/R-4.1.2-foss-2022a.eb                     | 3339 ++++++++++++++
 ...VM-1.2.4-fix_ppc_and_aarch64_build.patch.1 |   49 +
 r/RMBlast/RMBlast-2.13.0-gompi-2022a.eb       |   63 +
 ...022.07.2+576-foss-2022a-Java-11-R-4.1.2.eb |  111 +
 r/Racon/Racon-1.5.0-GCCcore-11.3.0.eb         |   29 +
 r/rush/rush-0.5.0.eb                          |   20 +
 s/SciPy-bundle/README                         |    3 +
 ...bundle-2019.10-foss-2022a-Python-2.7.18.eb |   47 +
 ...bundle-2020.03-foss-2022a-Python-2.7.18.eb |   52 +
 ...le-2020.03-fosscuda-2022a-Python-2.7.18.eb |   38 +
 ...numpy-1.16.2_relax-long-complex-test.patch |   17 +
 s/SciPy-bundle/site.cfg                       |   10 +
 s/Stata/Stata-15.eb                           |   25 +
 s/Stata/Stata-16-legacy.eb                    |   22 +
 .../scikit-image-0.19.3-foss-2022a.eb         |   43 +
 s/spoa/spoa-4.0.7-GCC-11.3.0.eb               |   29 +
 ...2.11.0-foss-2022a-CUDA-11.7.0-deeplearn.eb |  234 +
 .../TopHat-2.1.2-foss-2022a.eb}               |    0
 t/tbb/tbb-2020.3-GCCcore-11.3.0.eb            |   19 +
 t/tbl2asn/tbl2asn-20220427-linux64.eb         |    2 +-
 ...rchvision-0.13.1-foss-2022a-CUDA-11.7.0.eb |   23 +
 ...-CUDA-1.14.1-GCCcore-11.3.0-CUDA-11.7.0.eb |   41 +
 ...-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb |   41 +
 u/UCX/UCX-1.14.1-GCCcore-11.3.0.eb            |   52 +
 v/VSEARCH/VSEARCH-2.22.1-GCC-11.3.0.eb        |   40 +
 v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb    |   96 +
 v/VTK/VTK-8.2.0-foss-2022a-Python-2.7.18.eb   |  103 +
 v/VTK/VTK-8.2.0-foss-2022a.eb                 |  106 +
 v/VTK/VTK-8.2.0-fosscuda-2022a.eb             |   96 +
 v/VTK/VTK-8.2.0_gcc10-fix.patch               |   72 +
 v/VTK/VTK-8.2.0_gcc10-fix.patch.old           |   72 +
 .../VTK-8.2.0_python_3.8_compatibility.patch  |  176 +
 v/VTK/vtk-version.egg-info                    |    5 +
 w/WhatsHap/WhatsHap-1.7-foss-2022a.eb         |   50 +
 w/Wine/Wine-8.17-GCCcore-11.3.0.eb            |   35 +
 .../Xerces-C++-3.2.4-GCCcore-11.3.0.eb        |   39 +
 y/yaff/h5py-2.10.0_avoid-mpi-init.patch       |   85 +
 y/yaff/yaff-1.6.0-foss-2022a.eb               |   57 +
 y/yaff/yaff-nose3-dependency.patch            |   13 +
 194 files changed, 19952 insertions(+), 10 deletions(-)
 create mode 100644 a/Anaconda3/Anaconda3-2023.07-2.eb
 create mode 100644 a/Apptainer/Apptainer-1.2.3-GCCcore-11.3.0.eb
 create mode 100644 a/abPOA/abPOA-1.4.1-foss-2022a.eb
 create mode 100644 b/BEDOPS/BEDOPS-2.4.41-foss-2022a.eb
 create mode 100644 b/BaseSpaceCLI/BaseSpaceCLI-1.5.3.eb
 create mode 100644 b/Boost.MPI/Boost.MPI-1.79.0-gompi-2022a.eb
 create mode 100644 c/CFDEMcoupling/CFDEMcoupling-3.8.0-foss-2022a.eb
 create mode 100644 c/CFDEMcoupling/LIGGGHTS.patch
 create mode 100644 c/CFDEMcoupling/Makefile.auto.patch
 create mode 100644 c/CFDEMcoupling/Makefile.auto.patch.old
 create mode 100644 c/CFITSIO/CFITSIO-3.49-GCCcore-11.3.0.eb
 create mode 100644 c/CGAL/CGAL-4.14.1-foss-2022a-Python-2.7.18.eb
 create mode 100644 c/CLHEP/CLHEP-2.4.6.2-GCC-11.3.0.eb
 create mode 100644 c/CMake/CMake-3.11.4-GCCcore-11.3.0.eb
 create mode 100644 c/CMake/CMake-3.15.3-GCCcore-11.3.0.eb
 create mode 100644 c/CMake/CMake-3.15.3-fix-toc-flag.patch
 create mode 100644 c/COLMAP/COLMAP-3.9-foss-2022a-CUDA-11.7.0.eb
 create mode 100644 c/CREST/CREST-2.12.eb
 create mode 100644 c/Caffe/Caffe-1.0-foss-2022a-CUDA-11.7.0-Python-3.10.4.eb
 create mode 100644 c/Caffe/Caffe-1.0_Spartan_cuDNN_version.patch
 create mode 100644 c/Caffe/Caffe-1.0_eb_flexiblas.patch
 create mode 100644 c/Caffe/Caffe-1.0_gpu_data.patch
 create mode 100644 c/Code_Saturne/Code_Saturne-8.0.1-foss-2022a.eb
 create mode 100644 c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2022a.eb
 create mode 100644 c/canu/canu-2.2-GCCcore-11.3.0.eb
 create mode 100644 c/ceres-solver/ceres-solver-2.2.0-foss-2022a-CUDA-11.7.0.eb
 create mode 100644 c/coverage/coverage-7.2.7-GCCcore-11.3.0.eb
 create mode 100644 c/csvtk/csvtk-0.25.0.eb
 create mode 100644 d/deepmedic/deepmedic-0.8.2-foss-2022a-CUDA-11.7.0.eb
 create mode 100644 d/dotNET-SDK/dotNET-SDK-2.2.203-linux-x64.eb
 create mode 100644 e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2022a.eb
 create mode 100644 e/EIGENSOFT/EIGENSOFT-7.2.1_Fix_makefile_openblas.patch
 create mode 100644 e/EIGENSOFT/EIGENSOFT-7.2.1_restore-ploteig.patch
 create mode 100644 e/edlib/edlib-1.3.9-GCC-11.3.0.eb
 create mode 100644 e/epa-ng/epa-ng-0.3.8-GCC-11.3.0.eb
 create mode 100644 f/FLANN/FLANN-1.8.4_fix-cmake.patch
 create mode 100644 f/FLANN/FLANN-1.9.1-foss-2022a.eb
 create mode 100644 f/FreeSurfer/FreeSurfer-6.0.1-centos6_x86_64.eb
 create mode 100644 g/GROMACS/GROMACS-2023.1-foss-2022a-CUDA-11.7.0.eb
 create mode 100644 g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb
 create mode 100644 g/GTK+/GTK+-3.24.23-GCCcore-11.3.0.eb
 create mode 100644 g/GTK+/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch
 create mode 100644 g/Garfield++/Garfield++-4.0-foss-2022a.eb
 create mode 100644 g/Garfield++/README
 create mode 100644 g/Geant4-data/Geant4-data-11.1.eb
 create mode 100644 g/Geant4/Geant4-11.1.2-GCC-11.3.0.eb
 create mode 100644 g/Geant4/Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch
 create mode 100644 g/Go/Go-1.19.13.eb
 create mode 100644 g/GtkSourceView/GtkSourceView-3.24.11-GCCcore-11.3.0.eb
 create mode 100644 g/gappa/gappa-0.7.1-GCC-11.3.0.eb
 create mode 100644 g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb
 create mode 100644 g/glog/glog-0.6.0-GCCcore-11.3.0.eb
 create mode 100644 g/gretl/gretl-2020a-foss-2022a.eb
 create mode 100644 h/HDF5/HDF5-1.10.8-gompi-2022a.eb
 create mode 100644 h/hwloc/hwloc-1.11.8-GCCcore-11.3.0.eb
 create mode 100644 i/imageio/imageio-2.22.2-foss-2022a.eb
 create mode 100644 i/instant-NGP/instant-NGP-18102023-GCC-11.3.0-CUDA-11.7.0.eb
 create mode 100644 i/intervaltree-python/intervaltree-python-3.1.0-GCCcore-11.3.0.eb
 create mode 100644 l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb
 create mode 100644 l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb.bak_20231006102413_30160
 create mode 100644 l/LAMMPS/LAMMPS-3Mar2020-foss-2022a-Python-3.10.4-kokkos.eb
 create mode 100644 l/LAMMPS/lammps-3mar2020_fix-docs-build.patch
 create mode 100644 l/LAMMPS/lammps-3mar2020_kokkos-config-header.patch
 create mode 100644 l/LAMMPS/lammps-stable_3Mar2020_hack_openmp_gcc9.patch
 create mode 100644 l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py
 rename l/LANDIS-II/{LANDIS-II-7.0-GCCcore-11.3.0.eb => LANDIS-II-7.0-GCCcore-11.3.0.eb-NO-NEED} (91%)
 create mode 100644 l/LANDIS-II/README
 create mode 100644 l/LevelDB/LevelDB-1.18-foss-2022a.eb
 create mode 100644 m/MOSEK/MOSEK-9.3.22.eb
 create mode 100644 m/maeparser/maeparser-1.3.0-gompi-2022a.eb
 create mode 100644 m/medaka/medaka-1.9.1-foss-2022a.eb
 create mode 100644 m/molmod/molmod-1.4.8-foss-2022a.eb
 create mode 100644 n/NiBabel/NiBabel-4.0.2-foss-2022a.eb
 create mode 100644 n/netCDF-Fortran/netCDF-Fortran-4.6.0-iomkl-2022a.eb
 create mode 100644 n/netCDF/netCDF-4.9.0-iomkl-2022a.eb
 create mode 100644 n/nose3/nose3-1.3.8-GCCcore-11.3.0.eb
 create mode 100644 o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb
 create mode 100644 o/OpenBabel/OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch
 create mode 100644 o/OpenBabel/OpenBabel-3.1.1_fix-distgeom-test.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb.bak
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-20180108_PVReaders.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-20180108_cleanup.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-20180108_compiler.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-20180606-foss-2022a.eb
 create mode 100644 o/OpenFOAM/OpenFOAM-5.0-foss-2022a.eb
 create mode 100644 o/OpenFOAM/OpenFOAM-7-20200508-cleanup.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-7-cleanup.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-7-cleanup_test.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-7-foss-2019b-20200508.eb.bak
 create mode 100644 o/OpenFOAM/OpenFOAM-7-foss-2022a.eb
 create mode 100644 o/OpenFOAM/OpenFOAM-7-foss-2022a_test.eb
 create mode 100644 o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch
 create mode 100644 o/OpenFOAM/OpenFOAM-7-mpi-compilation_test.patch
 create mode 100644 o/OpenMPI/OpenMPI-3.1.3-add_ompi_datatype_attribute_to_release_ucp_datatype.patch
 create mode 100644 o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb
 create mode 100644 o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb.bak
 create mode 100644 o/OpenMPI/OpenMPI-4-100G.patch
 create mode 100644 o/OpenMPI/ompi-hdr-ndr-3.1.patch
 create mode 100644 o/OpenPose/OpenPose-1.7.0-foss-2022a.eb
 create mode 100644 o/ont-fast5-api/ont-fast5-api-4.1.1-foss-2022a.eb
 create mode 100644 p/PICRUSt2/PICRUSt2-2.5.2-b-foss-2022a.eb
 create mode 100644 p/PMIx/PMIx-3.2.3-chown.patch
 create mode 100644 p/PMIx/PMIx-4.2.2-chown.patch
 create mode 100644 p/ParaView/ParaView-5..6.2-foss-2022a-clamp.patch
 create mode 100644 p/ParaView/ParaView-5.11.1-fix_thrust_vtk_m.patch
 create mode 100644 p/ParaView/ParaView-5.11.1-foss-2022a-mpi.eb
 create mode 100644 p/ParaView/ParaView-5.4.1-foss-2022a-Python-2.7.18-mpi.eb
 create mode 100644 p/ParaView/ParaView-5.4.1-foss-2022a-Python-3.10.4-mpi.eb
 create mode 100644 p/ParaView/ParaView-5.4.1_fix-Qt5.11-support.patch
 create mode 100644 p/ParaView/ParaView-5.6.2-foss-2022a-Python-3.10.4.eb
 create mode 100644 p/ParaView/ParaView-5.6.2_exodus_dummy.patch
 create mode 100644 p/ParaView/ParaView-5.6.2_tp_print.patch
 create mode 100644 p/ParaView/ParaView-5.7.0-foss-2022a-Python-3.10.4.eb
 create mode 100644 p/ParaView/README
 create mode 100644 p/ParaView/test/test.cxx
 create mode 100755 p/ParaView/test/test.mpi
 create mode 100644 p/parasail/parasail-2.6-GCC-11.3.0.eb
 create mode 100644 p/protobuf-python/protobuf-python-3.11.4-GCCcore-11.3.0.eb
 create mode 100644 p/protobuf/protobuf-3.11.4-GCCcore-11.3.0.eb
 create mode 100644 p/pullseq/pullseq-1.0.2-GCCcore-11.3.0.eb
 create mode 100644 p/pydicom/pydicom-2.3.0-GCCcore-11.3.0.eb
 create mode 100644 p/pyfaidx/pyfaidx-0.7.1-GCCcore-11.3.0.eb
 create mode 100644 p/pyspoa/pyspoa-0.0.9-GCC-11.3.0.eb
 create mode 100644 p/pyspoa/pyspoa-0.0.9_use-spoa-dep.patch
 create mode 100644 p/python-parasail/python-parasail-1.3.3-foss-2022a.eb
 create mode 100644 q/Qt5/Qt5-5.13.1-GCCcore-11.3.0.eb
 create mode 100644 q/Qt5/Qt5-5.13.1_fix-mantissatable.patch
 create mode 100644 q/Qt5/Qt5-5.13.1_fix-webrtc.patch
 create mode 100644 q/Qt5/bidi.patch
 create mode 100644 q/Qt5/clockdrift_detector.patch
 create mode 100644 q/Qt5/convert.patch
 create mode 100644 q/Qt5/decoding_state.patch
 create mode 100644 q/Qt5/exception_handler.patch
 create mode 100644 q/Qt5/qbytearraymatcher.patch
 create mode 100644 q/Qt5/qendian.patch
 create mode 100644 q/Qt5/qjp2handler.cpp.patch
 create mode 100644 q/Qt5/qqmlprofilerevent_p.h.patch
 create mode 100644 q/Qt5/rule_bison.py.patch
 create mode 100644 q/qctool/qctool-2.2.0-GCC-11.3.0.eb
 create mode 100644 r/R/R-4.1.0_identify-flexiblas-in-configure.patch.1
 create mode 100644 r/R/R-4.1.2-foss-2022a.eb
 create mode 100644 r/R/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch.1
 create mode 100644 r/RMBlast/RMBlast-2.13.0-gompi-2022a.eb
 create mode 100644 r/RStudio-Server/RStudio-Server-2022.07.2+576-foss-2022a-Java-11-R-4.1.2.eb
 create mode 100644 r/Racon/Racon-1.5.0-GCCcore-11.3.0.eb
 create mode 100644 r/rush/rush-0.5.0.eb
 create mode 100644 s/SciPy-bundle/README
 create mode 100644 s/SciPy-bundle/SciPy-bundle-2019.10-foss-2022a-Python-2.7.18.eb
 create mode 100644 s/SciPy-bundle/SciPy-bundle-2020.03-foss-2022a-Python-2.7.18.eb
 create mode 100644 s/SciPy-bundle/SciPy-bundle-2020.03-fosscuda-2022a-Python-2.7.18.eb
 create mode 100644 s/SciPy-bundle/numpy-1.16.2_relax-long-complex-test.patch
 create mode 100644 s/SciPy-bundle/site.cfg
 create mode 100644 s/Stata/Stata-15.eb
 create mode 100644 s/Stata/Stata-16-legacy.eb
 create mode 100644 s/scikit-image/scikit-image-0.19.3-foss-2022a.eb
 create mode 100644 s/spoa/spoa-4.0.7-GCC-11.3.0.eb
 create mode 100644 t/TensorFlow/TensorFlow-2.11.0-foss-2022a-CUDA-11.7.0-deeplearn.eb
 rename t/{Tophat/Tophat-2.1.2-foss-2022a.eb => TopHat/TopHat-2.1.2-foss-2022a.eb} (100%)
 create mode 100644 t/tbb/tbb-2020.3-GCCcore-11.3.0.eb
 create mode 100644 t/torchvision/torchvision-0.13.1-foss-2022a-CUDA-11.7.0.eb
 create mode 100644 u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-11.7.0.eb
 create mode 100644 u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb
 create mode 100644 u/UCX/UCX-1.14.1-GCCcore-11.3.0.eb
 create mode 100644 v/VSEARCH/VSEARCH-2.22.1-GCC-11.3.0.eb
 create mode 100644 v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb
 create mode 100644 v/VTK/VTK-8.2.0-foss-2022a-Python-2.7.18.eb
 create mode 100644 v/VTK/VTK-8.2.0-foss-2022a.eb
 create mode 100644 v/VTK/VTK-8.2.0-fosscuda-2022a.eb
 create mode 100644 v/VTK/VTK-8.2.0_gcc10-fix.patch
 create mode 100644 v/VTK/VTK-8.2.0_gcc10-fix.patch.old
 create mode 100644 v/VTK/VTK-8.2.0_python_3.8_compatibility.patch
 create mode 100644 v/VTK/vtk-version.egg-info
 create mode 100644 w/WhatsHap/WhatsHap-1.7-foss-2022a.eb
 create mode 100644 w/Wine/Wine-8.17-GCCcore-11.3.0.eb
 create mode 100644 x/Xerces-C++/Xerces-C++-3.2.4-GCCcore-11.3.0.eb
 create mode 100644 y/yaff/h5py-2.10.0_avoid-mpi-init.patch
 create mode 100644 y/yaff/yaff-1.6.0-foss-2022a.eb
 create mode 100644 y/yaff/yaff-nose3-dependency.patch

diff --git a/a/Anaconda3/Anaconda3-2023.07-2.eb b/a/Anaconda3/Anaconda3-2023.07-2.eb
new file mode 100644
index 0000000..517bcc3
--- /dev/null
+++ b/a/Anaconda3/Anaconda3-2023.07-2.eb
@@ -0,0 +1,31 @@
+# author: Jillian Rowe <jillian.e.rowe@gmail.com>
+# config upgrade to v5.1.0 by Adam Huffman <adam.huffman@bdi.ox.ac.uk>
+# config upgrade to v5.0.1, v5.3.0, 2018.12, 2019.07,
+#                   2019.10, 2020.2, 2020.11, 2022.05,
+#                   2022.10 by J. Hein <joachim.hein@lunarc.lu.se>
+# config upgrade to 2019.03 by Davide Vanzo <davide.vanzo@vanderbilt.edu>
+easyblock = 'EB_Anaconda'
+
+name = 'Anaconda3'
+version = '2023.07-2'
+
+homepage = 'https://www.anaconda.com'
+description = """Built to complement the rich, open source Python community,
+the Anaconda platform provides an enterprise-ready data analytics platform 
+that empowers companies to adopt a modern open data science analytics architecture.
+"""
+
+toolchain = SYSTEM
+
+source_urls = ['https://repo.anaconda.com/archive/']
+local_arch = {'arm64': 'aarch64'}.get(ARCH, ARCH)
+sources = ['%%(name)s-%%(version)s-Linux-%s.sh' % local_arch]
+checksums = [
+    {
+        '%(name)s-%(version)s-Linux-x86_64.sh': '589fb34fe73bc303379abbceba50f3131254e85ce4e7cd819ba4276ba29cad16',
+        '%(name)s-%(version)s-Linux-ppc64le.sh': '7a72e301fb3b8e175a96b6457fc84654dd2eb98942528d9988760779b92847e4',
+        '%(name)s-%(version)s-Linux-aarch64.sh': '75967bc2113d9e336e670e1e557c9198d8b98e59fb9adb82cbe0e71ce5f7c2db',
+    }
+]
+
+moduleclass = 'lang'
diff --git a/a/Apptainer/Apptainer-1.1.8-GCCcore-11.3.0.eb b/a/Apptainer/Apptainer-1.1.8-GCCcore-11.3.0.eb
index 0fe3607..02786b0 100644
--- a/a/Apptainer/Apptainer-1.1.8-GCCcore-11.3.0.eb
+++ b/a/Apptainer/Apptainer-1.1.8-GCCcore-11.3.0.eb
@@ -15,7 +15,7 @@ builddependencies = [('Go', '1.18.3', '', ('dummy','')),
                     ('binutils', '2.38'),
 ]
 
-configure_cmd = 'CFLAGS="-O2 -ftree-vectorize" ./mconfig --prefix=%(installdir)s --localstatedir=/var'
+configure_cmd = 'CFLAGS="-O2 -ftree-vectorize" ./mconfig --prefix=%(installdir)s --localstatedir=/var --with-suid '
 
 prebuildopts = ' cd builddir && '
 
diff --git a/a/Apptainer/Apptainer-1.2.3-GCCcore-11.3.0.eb b/a/Apptainer/Apptainer-1.2.3-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..bb7f943
--- /dev/null
+++ b/a/Apptainer/Apptainer-1.2.3-GCCcore-11.3.0.eb
@@ -0,0 +1,33 @@
+easyblock = 'ConfigureMake'
+
+name = 'Apptainer'
+version = '1.2.3'
+
+homepage = 'https://apptainer.org'
+description = """Apptainer is a portable application stack packaging and runtime utility. It replaces Singularity"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/apptainer/apptainer/releases/download/v%s/' % version]
+sources = ['apptainer-%(version)s.tar.gz']
+
+builddependencies = [('Go', '1.19.13', '', ('dummy','')),
+                    ('binutils', '2.38'),
+]
+
+configure_cmd = 'CFLAGS="-O2 -ftree-vectorize" ./mconfig --prefix=%(installdir)s --localstatedir=/var --with-suid '
+
+prebuildopts = ' cd builddir && '
+
+#skipsteps = ['configure']
+
+parallel =1
+preinstallopts ='cd builddir &&'
+
+sanity_check_paths = {
+    'files': ['bin/run-singularity', 'bin/apptainer', 'etc/apptainer/apptainer.conf'],
+    'dirs': ['etc', 'libexec/apptainer'],
+}
+
+
+moduleclass = 'tools'
diff --git a/a/abPOA/abPOA-1.4.1-foss-2022a.eb b/a/abPOA/abPOA-1.4.1-foss-2022a.eb
new file mode 100644
index 0000000..028a6c6
--- /dev/null
+++ b/a/abPOA/abPOA-1.4.1-foss-2022a.eb
@@ -0,0 +1,41 @@
+# Updated by: Pavel Grochal (INUITS)
+# License: GPLv2
+
+easyblock = 'ConfigureMake'
+
+name = 'abPOA'
+version = '1.4.1'
+
+homepage = 'https://github.com/yangao07/abPOA'
+description = "abPOA is an extended version of Partial Order Alignment (POA) that performs adaptive banded dynamic programming (DP) with an SIMD implementation."
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+github_account = 'abPOA'
+source_urls = [GITHUB_SOURCE]
+sources = ['%(name)s-v%(version)s.tar.gz']
+checksums = ['54b1f5cfd94fb5894e189d9e099f8158051411bcbcc9ba2d77478cfb9221dde1']
+
+skipsteps = ['configure','install']
+
+builddependencies = [
+    ('Cython', '0.29.33'),
+]
+
+dependencies = [
+    ('Python', '3.10.4'),
+]
+
+# run "make clean" to avoid using binaries included with the source tarball
+buildopts = "&& cp bin/abpoa %(installdir)s/bin && AVX512f=1 pip install . --prefix=%(installdir)s"
+
+installopts = 'INSTALLDIR=%(installdir)s '
+
+sanity_check_paths = {
+    'files': ['bin/abpoa'],
+    'dirs': ['bin'],
+}
+
+modextrapaths = {'PYTHONPATH': 'lib/python3.10/site-packages'}
+
+moduleclass = 'bio'
diff --git a/b/BEDOPS/BEDOPS-2.4.41-foss-2022a.eb b/b/BEDOPS/BEDOPS-2.4.41-foss-2022a.eb
new file mode 100644
index 0000000..d55e9e4
--- /dev/null
+++ b/b/BEDOPS/BEDOPS-2.4.41-foss-2022a.eb
@@ -0,0 +1,40 @@
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+# updated: Denis Kristak (INUITS)
+
+easyblock = 'MakeCp'
+
+name = 'BEDOPS'
+version = '2.4.41'
+
+homepage = 'http://%(namelower)s.readthedocs.io/en/latest/index.html'
+description = """BEDOPS is an open-source command-line toolkit that performs highly efficient and
+ scalable Boolean and other set operations, statistical calculations, archiving, conversion and
+ other management of genomic data of arbitrary scale. Tasks can be easily split by chromosome for
+ distributing whole-genome analyses across a computational cluster."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/%(namelower)s/%(namelower)s/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['3b868c820d59dd38372417efc31e9be3fbdca8cf0a6b39f13fb2b822607d6194']
+
+# else build of jansson library fails with: 'configure: error: C compiler cannot create executables'
+prebuildopts = 'unset LIBS && '
+# builds all variants and copies executables to bin directory
+buildopts = ' all && make install'
+# actually used variant is linked to via symlinks
+keepsymlinks = True
+
+files_to_copy = ['bin']
+
+sanity_check_paths = {
+    'files': [
+        'bin/%s' % x for x in ['bam2bed', '%(namelower)s', 'convert2bed', 'unstarch']
+    ],
+    'dirs': [],
+}
+
+sanity_check_commands = ['%(namelower)s --help']
+
+moduleclass = 'bio'
diff --git a/b/BaseSpaceCLI/BaseSpaceCLI-1.5.3.eb b/b/BaseSpaceCLI/BaseSpaceCLI-1.5.3.eb
new file mode 100644
index 0000000..b041d52
--- /dev/null
+++ b/b/BaseSpaceCLI/BaseSpaceCLI-1.5.3.eb
@@ -0,0 +1,36 @@
+
+# easybuild easyconfig
+#
+# John Dey <jfdey@fredhutch.org>
+#
+# Fred Hutchinson Cancer Research Center - Seattle Washington - US
+#
+easyblock = 'Binary'
+
+name = 'BaseSpaceCLI'
+version = '1.5.3'
+
+homepage = 'https://developer.basespace.illumina.com/docs/content/documentation/cli/cli-overview'
+description = """BaseSpace is a powerful website where biologists and informaticians can easily store,
+ analyze, and share genetic data. BaseSpace is a commerical product from Illumina."""
+
+toolchain = SYSTEM
+
+source_urls = [('https://launch.basespace.illumina.com/CLI/latest/amd64-linux')]
+sources = ['bs']
+checksums = ['82c7fb51b61ed2e4ef192b91697251758f7902dcfaa5633d7fde12a0dee522b6']
+
+install_cmd = "mkdir %(installdir)s/bin && "
+install_cmd += "cp %(builddir)s/bs %(installdir)s/bin/bs && "
+install_cmd += "chmod 755 %(installdir)s/bin/bs"
+
+sanity_check_paths = {
+    'files': ['bin/bs'],
+    'dirs': [],
+}
+
+sanity_check_commands = [
+    "bs --version",
+]
+
+moduleclass = 'bio'
diff --git a/b/Boost.MPI/Boost.MPI-1.79.0-gompi-2022a.eb b/b/Boost.MPI/Boost.MPI-1.79.0-gompi-2022a.eb
new file mode 100644
index 0000000..e61836c
--- /dev/null
+++ b/b/Boost.MPI/Boost.MPI-1.79.0-gompi-2022a.eb
@@ -0,0 +1,29 @@
+easyblock = 'EB_Boost'
+
+name = 'Boost.MPI'
+version = '1.79.0'
+
+homepage = 'https://www.boost.org/'
+description = """Boost provides free peer-reviewed portable C++ source libraries."""
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+source_urls = ['https://boostorg.jfrog.io/artifactory/main/release/%(version)s/source/']
+sources = ['boost_%s.tar.gz' % '_'.join(version.split('.'))]
+checksums = ['273f1be93238a068aba4f9735a4a2b003019af067b9c183ed227780b8f36062c']
+
+dependencies = [
+    ('bzip2', '1.0.8'),
+    ('zlib', '1.2.12'),
+    ('XZ', '5.2.5'),
+    ('zstd', '1.5.2'),
+    ('ICU', '71.1'),
+]
+
+configopts = '--without-libraries=python'
+
+boost_mpi = True
+tagged_layout = True
+
+moduleclass = 'devel'
diff --git a/c/CFDEMcoupling/CFDEMcoupling-3.8.0-foss-2022a.eb b/c/CFDEMcoupling/CFDEMcoupling-3.8.0-foss-2022a.eb
new file mode 100644
index 0000000..b45faee
--- /dev/null
+++ b/c/CFDEMcoupling/CFDEMcoupling-3.8.0-foss-2022a.eb
@@ -0,0 +1,43 @@
+name = 'CFDEMcoupling'
+version = '3.8.0'
+
+homepage = 'https://www.cfdem.com/cfdemrcoupling-open-source-cfd-dem-framework'
+description = """CFDEMcoupling is an open source CFD-DEM engine. It provides the possibility to couple
+ the DEM engine LIGGGHTS to a CFD framework."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+#patches = [('LIGGGHTS.patch', -1),]
+
+sources = [
+    {
+        'source_urls': ['https://github.com/CFDEMproject/CFDEMcoupling-PUBLIC/archive/'],
+        'download_filename': '%(version)s.tar.gz',
+        'filename': SOURCE_TAR_GZ,
+    },
+    {
+        'source_urls': ['https://github.com/CFDEMproject/LIGGGHTS-PUBLIC/archive/'],
+        'download_filename': '%(version)s.tar.gz',
+        'filename': 'LIGGGHTS-%(version)s.tar.gz',
+    },
+    {
+        'source_urls': [
+            'https://github.com/CFDEMproject/LPP/archive/',  # no longer exists?
+            'https://github.com/alexjwhitehead/LPP/archive',
+        ],
+        'download_filename': '633058e.tar.gz',
+        'filename': 'LPP-20170223.tar.gz',
+    },
+]
+#checksums = [
+#    {'CFDEMcoupling-3.8.0.tar.gz': '3c90d3178c9667ea84db9507221f65f9efec2aab8d22c51769f8a0c94d813ee4'},
+#    {'LIGGGHTS-3.8.0.tar.gz': '9cb2e6596f584463ac2f80e3ff7b9588b7e3638c44324635b6329df87b90ab03'},
+#    {'LPP-20170223.tar.gz': '9b191d89e72fba00bd63b327ee8c79425fb73e4e11aa6c165d464ed8a582627a'},
+#]
+
+dependencies = [
+    ('OpenFOAM', '5.0-20180606'),
+    ('VTK', '8.2.0', '-Python-2.7.18'),
+]
+
+moduleclass = 'cae'
diff --git a/c/CFDEMcoupling/LIGGGHTS.patch b/c/CFDEMcoupling/LIGGGHTS.patch
new file mode 100644
index 0000000..e57badc
--- /dev/null
+++ b/c/CFDEMcoupling/LIGGGHTS.patch
@@ -0,0 +1,239 @@
+diff -urN LIGGGHTS-PUBLIC-3.8.0.orig/src/MAKE/Makefile.auto LIGGGHTS-PUBLIC-3.8.0/src/MAKE/Makefile.auto
+--- LIGGGHTS-PUBLIC-3.8.0.orig/src/MAKE/Makefile.auto	2023-10-27 12:24:10.909188000 +1100
++++ LIGGGHTS-PUBLIC-3.8.0/src/MAKE/Makefile.auto	2023-10-27 12:28:48.763157000 +1100
+@@ -440,12 +440,12 @@
+         TMP_INC = -I$(MPI_INC)
+     endif
+     # We assume that the compiler supports #pragma message
+-    TMP := $(shell $(ECHO) '\#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) $(OPT_LVL) $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
++    TMP := $(shell $(ECHO) '#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) $(OPT_LVL) $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
+     # See if compilation has worked out
+     ifeq ($(TMP), -1)
+         # Maybe it failed because of the optimization as -Og is not known
+         ifeq ($(USE_DEBUG), "ON")
+-            TMP := $(shell $(ECHO) '\#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) -O0 -g $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
++            TMP := $(shell $(ECHO) '#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) -O0 -g $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Could not compile a simple MPI example (testing with -Og and -O0). Test was done with MPI_INC="$(TMP_INC)" and MPICXX="$(MPICXX)"')
+             else
+@@ -566,7 +566,7 @@
+         $(shell $(ECHO) "#Compiling with mpi stubs" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "#Command: $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE)")
+     endif
+-    TMP := $(shell $(ECHO) '\#include <mpi.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <mpi.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile a simple c++ example. Please make sure that you have run "make stubs" before compiling LIGGGHTS itself. Test was done with CXX=$(CXX), EXTRA_INC=$(EXTRA_INC), EXTRA_LIB=$(EXTRA_LIB) and EXTRA_ADDLIBS=$(EXTRA_ADDLIBS).')
+     endif
+@@ -595,7 +595,7 @@
+ HAVE_MATH_SPECIAL_FUNCS = 0
+ # For c++17 this is included without any further defines
+ ifeq ($(CXXVERSION),17)
+-    TMP := $(shell $(ECHO) '\#include <cmath> \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <cmath> \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP),0)
+         HAVE_MATH_SPECIAL_FUNCS = 1
+     endif
+@@ -604,14 +604,14 @@
+ else
+     # For c++11 we need to check if ISO 29124:2010 is supported
+     ifeq ($(CXXVERSION),11)
+-        TMP := $(shell $(ECHO) '\#define __STDCPP_WANT_MATH_SPEC_FUNCS__ 1 \n \#include <cmath> \n \#if !defined(__STDCPP_MATH_SPEC_FUNCS__) || __STDCPP_MATH_SPEC_FUNCS__ < 201003L \n \#error "STOP" \n \#endif \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#define __STDCPP_WANT_MATH_SPEC_FUNCS__ 1 \n \#include <cmath> \n \#if !defined(__STDCPP_MATH_SPEC_FUNCS__) || __STDCPP_MATH_SPEC_FUNCS__ < 201003L \n \#error "STOP" \n \#endif \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+         ifeq ($(TMP),0)
+             HAVE_MATH_SPECIAL_FUNCS = 1
+         endif
+     endif
+ endif
+ ifeq ($(HAVE_MATH_SPECIAL_FUNCS),0)
+-    TMP := $(shell $(ECHO) '\#include <tr1/cmath> \n int main(){ std::tr1::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <tr1/cmath> \n int main(){ std::tr1::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     HAVE_TR1_CMATH = 0
+     ifeq ($(TMP),0)
+         HAVE_TR1_CMATH = 1
+@@ -729,7 +729,7 @@
+         $(shell $(ECHO) "#vtk major version detection" >> $(AUTO_LOG_FILE))
+     endif
+     # note we assume here that our compiler supports #pragma message
+-    VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++    VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+     ifeq ($(AUTO_DEBUG),1)
+         $(shell $(ECHO) "#vtk major version detection result: $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+     endif
+@@ -744,7 +744,7 @@
+         ifeq ($(VTK_INC),-I)
+             VTK_INC =
+         endif
+-        VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++        VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+         ifeq ($(AUTO_DEBUG),1)
+             $(shell $(ECHO) "#vtk major version detection result (lib): $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+         endif
+@@ -797,7 +797,7 @@
+                 # At this stage we now have VTK downloaded. Next we need to compile it
+                 $(info VTK has been downloaded and will be compiled now. This can take several minutes.)
+                 OBJDIR := $(PWD)
+-                TMP := $(shell $(ECHO) '\#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/vtk" \n mkdir -p build \n cd src \n git checkout $(VTK_VERSION_TAG) &>> $(AUTO_LOG_FILE) \n cd ../build \n cmake -DBUILD_TESTING:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX=../install -DModule_vtkIOMPIParallel:BOOL=ON -DVTK_Group_MPI:BOOL=ON -DVTK_Group_Rendering:BOOL=OFF -DVTK_RENDERING_BACKEND:STRING=None -DVTK_USE_X:BOOL=OFF -DModule_vtkIOMPIImage:BOOL=ON -DModule_vtkParallelMPI:BOOL=ON ../src &>> $(AUTO_LOG_FILE) \n make &>> $(AUTO_LOG_FILE) \n make install &>> $(AUTO_LOG_FILE)' > $(TMPFILE))
++                TMP := $(shell $(ECHO) '#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/vtk" \n mkdir -p build \n cd src \n git checkout $(VTK_VERSION_TAG) &>> $(AUTO_LOG_FILE) \n cd ../build \n cmake -DBUILD_TESTING:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX=../install -DModule_vtkIOMPIParallel:BOOL=ON -DVTK_Group_MPI:BOOL=ON -DVTK_Group_Rendering:BOOL=OFF -DVTK_RENDERING_BACKEND:STRING=None -DVTK_USE_X:BOOL=OFF -DModule_vtkIOMPIImage:BOOL=ON -DModule_vtkParallelMPI:BOOL=ON ../src &>> $(AUTO_LOG_FILE) \n make &>> $(AUTO_LOG_FILE) \n make install &>> $(AUTO_LOG_FILE)' > $(TMPFILE))
+                 TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+                 ifeq ($(TMP), -1)
+                     $(error 'Compilation of vtk failed. Please install it manually')
+@@ -807,7 +807,7 @@
+                 ifeq ($(VTK_INC),-I)
+                     VTK_INC =
+                 endif
+-                VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++                VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+                 ifeq ($(AUTO_DEBUG),1)
+                     $(shell $(ECHO) "#vtk major version detection result (lib): $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+                 endif
+@@ -826,7 +826,7 @@
+     ifeq ($(AUTO_DEBUG),1)
+         $(shell $(ECHO) "#vtk_major_version: $(VTK_MAJOR_VERSION)" >> $(AUTO_LOG_FILE))
+     endif
+-    VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MINOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++    VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MINOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+     ifeq ($(VTK_TMP), -1)
+         $(error Could not obtain VTK_MINOR_VERSION)
+     endif
+@@ -885,7 +885,7 @@
+                 VTK_LIB =
+             endif
+         endif
+-        TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon$(VTK_APPENDIX_5) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon$(VTK_APPENDIX_5) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+         ifeq ($(TMP), -1)
+             ifeq ($(VTK_LIB_SET), 0)
+                 VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkCommon.so' | tail -n 1))
+@@ -893,7 +893,7 @@
+                     VTK_LIB =
+                 endif
+             endif
+-            TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++            TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Could not determine suitable appendix of VTK library with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_APPENDIX="$(VTK_APPENDIX)"')
+             else
+@@ -924,7 +924,7 @@
+             $(shell $(ECHO) "#vtk_lib: $(VTK_LIB)" >> $(AUTO_LOG_FILE))
+             $(shell $(ECHO) "#appendix command: $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE)" >> $(AUTO_LOG_FILE))
+         endif
+-        TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+         ifeq ($(TMP), -1)
+             ifeq ($(AUTO_DEBUG),1)
+                 $(shell $(ECHO) "#attempting without appendix" >> $(AUTO_LOG_FILE))
+@@ -935,7 +935,7 @@
+                     VTK_LIB =
+                 endif
+             endif
+-            TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++            TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Could not determine suitable appendix of VTK library with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_APPENDIX="$(VTK_APPENDIX)"')
+             else
+@@ -1025,9 +1025,9 @@
+         $(shell $(ECHO) "#vtk_addlibs: $(VTK_ADDLIBS)" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "#vtk_rpath: $(VTK_RPATH)" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "#vtk compile test:" >> $(AUTO_LOG_FILE))
+-        TMP := $(shell $(ECHO) "\#include <vtkVersion.h> \n int main(){}" > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) &>> $(AUTO_LOG_FILE))
++        TMP := $(shell $(ECHO) "#include <vtkVersion.h> \n int main(){}" > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) &>> $(AUTO_LOG_FILE))
+     endif
+-    TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile VTK example with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_ADDLIBS="$(VTK_ADDLIBS)"')
+     endif
+@@ -1057,7 +1057,7 @@
+     ifeq ($(REQUIRE_BOOST),1)
+         BOOST_INC ?= $(BOOST_INC_USR)
+         # Include test
+-        TMP := $(shell $(ECHO) '\#include "boost/math/special_functions/beta.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(BOOST_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#include "boost/math/special_functions/beta.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(BOOST_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+         ifeq ($(TMP), -1)
+             $(error 'Could not compile boost example with BOOST_INC="$(BOOST_INC)" as boost/math/special_functions/beta.hpp could not be found')
+         endif
+@@ -1082,7 +1082,7 @@
+         $(shell $(ECHO) "#JPG_ADDLIBS: $(JPG_ADDLIBS)" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "jpg compile test:" >> $(AUTO_LOG_FILE))
+     endif
+-    TMP := $(shell $(ECHO) '\#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile jpg example with JPG_INC="$(JPG_INC)"')
+     endif
+@@ -1090,7 +1090,7 @@
+         $(shell $(ECHO) "jpg link test:" >> $(AUTO_LOG_FILE))
+     endif
+     # Linking test
+-    TMP := $(shell $(ECHO) '\#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(JPG_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(JPG_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile and link jpg example with JPG_INC="$(JPG_INC)", JPG_LIB="$(JPG_LIB)" and JPG_ADDLIBS="$(JPG_ADDLIBS)"')
+     endif
+@@ -1119,7 +1119,7 @@
+     CONVEX_ADDLIBS += -lccd
+     # Test settings
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     # Automatic download and compilation if AUTODOWNLOAD_CONVEX is set
+     ifeq ($(TMP), -1)
+         ifeq ($(AUTOINSTALL_CONVEX), "ON")
+@@ -1168,7 +1168,7 @@
+             endif
+             # At this stage we now have libccd downloaded. Next we need to compile it
+             OBJDIR := $(PWD)
+-            TMP := $(shell $(ECHO) '\#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/libccd/src" \n make PREFIX="$(PWD)/../../" USE_DOUBLE=yes &> /dev/null' > $(TMPFILE))
++            TMP := $(shell $(ECHO) '#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/libccd/src" \n make PREFIX="$(PWD)/../../" USE_DOUBLE=yes &> /dev/null' > $(TMPFILE))
+             TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Compilation of libccd failed. Please install it manually')
+@@ -1178,12 +1178,12 @@
+         endif
+     endif
+     # Include test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -E $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -E $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile Convex (libccd) example with CONVEX_INC="$(CONVEX_INC)"')
+     endif
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile and link Convex (libccd) example with CONVEX_INC="$(CONVEX_INC)", CONVEX_LIB="$(CONVEX_LIB)" and CONVEX_ADDLIBS="$(CONVEX_ADDLIBS)"')
+     endif
+@@ -1210,7 +1210,7 @@
+     MFEM_LIB ?= -L$(LIB_PATH)/mfem
+     MFEM_ADDLIBS += -lmfem
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         ifeq ($(AUTOINSTALL_MFEM), "ON")
+             $(info 'Could not compile MFEM example. As AUTOINSTALL_MFEM is set to "ON". MFEM will now be automatically downloaded to ../lib/mfem')
+@@ -1257,7 +1257,7 @@
+             # At this stage we now have MFEM downloaded. Next we need to compile it
+             TMP := $(shell ls $(LIB_PATH)/mfem/libmfem.a && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+-                TMP := $(shell $(ECHO) '\#!/bin/bash \n cd $(LIB_PATH)/mfem \n make config \n make all -j 4' > $(TMPFILE))
++                TMP := $(shell $(ECHO) '#!/bin/bash \n cd $(LIB_PATH)/mfem \n make config \n make all -j 4' > $(TMPFILE))
+                 TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+                 ifeq ($(TMP), -1)
+                     $(error 'Compilation of MFEM failed. Please install it manually')
+@@ -1270,12 +1270,12 @@
+ 
+ 
+     # Include test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile MFEM example with MFEM_INC="$(MFEM_INC)"')
+     endif
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile and link MFEM example. Test was done with MFEM_INC="$(MFEM_INC)", MFEM_LIB="$(MFEM_LIB)" and MFEM_ADDLIBS="$(MFEM_ADDLIBS)"')
+     endif
diff --git a/c/CFDEMcoupling/Makefile.auto.patch b/c/CFDEMcoupling/Makefile.auto.patch
new file mode 100644
index 0000000..234fd8b
--- /dev/null
+++ b/c/CFDEMcoupling/Makefile.auto.patch
@@ -0,0 +1,238 @@
+--- ../LIGGGHTS-PUBLIC-3.8.0/src/MAKE/Makefile.auto.orig	2023-10-27 10:43:06.638605000 +1100
++++ ../LIGGGHTS-PUBLIC-3.8.0/src/MAKE/Makefile.auto	2023-10-27 10:45:20.551608000 +1100
+@@ -440,12 +440,12 @@
+         TMP_INC = -I$(MPI_INC)
+     endif
+     # We assume that the compiler supports #pragma message
+-    TMP := $(shell $(ECHO) '\#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) $(OPT_LVL) $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
++    TMP := $(shell $(ECHO) '#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) $(OPT_LVL) $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
+     # See if compilation has worked out
+     ifeq ($(TMP), -1)
+         # Maybe it failed because of the optimization as -Og is not known
+         ifeq ($(USE_DEBUG), "ON")
+-            TMP := $(shell $(ECHO) '\#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) -O0 -g $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
++            TMP := $(shell $(ECHO) '#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) -O0 -g $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Could not compile a simple MPI example (testing with -Og and -O0). Test was done with MPI_INC="$(TMP_INC)" and MPICXX="$(MPICXX)"')
+             else
+@@ -566,7 +566,7 @@
+         $(shell $(ECHO) "#Compiling with mpi stubs" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "#Command: $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE)")
+     endif
+-    TMP := $(shell $(ECHO) '\#include <mpi.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <mpi.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile a simple c++ example. Please make sure that you have run "make stubs" before compiling LIGGGHTS itself. Test was done with CXX=$(CXX), EXTRA_INC=$(EXTRA_INC), EXTRA_LIB=$(EXTRA_LIB) and EXTRA_ADDLIBS=$(EXTRA_ADDLIBS).')
+     endif
+@@ -595,7 +595,7 @@
+ HAVE_MATH_SPECIAL_FUNCS = 0
+ # For c++17 this is included without any further defines
+ ifeq ($(CXXVERSION),17)
+-    TMP := $(shell $(ECHO) '\#include <cmath> \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <cmath> \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP),0)
+         HAVE_MATH_SPECIAL_FUNCS = 1
+     endif
+@@ -604,14 +604,14 @@
+ else
+     # For c++11 we need to check if ISO 29124:2010 is supported
+     ifeq ($(CXXVERSION),11)
+-        TMP := $(shell $(ECHO) '\#define __STDCPP_WANT_MATH_SPEC_FUNCS__ 1 \n \#include <cmath> \n \#if !defined(__STDCPP_MATH_SPEC_FUNCS__) || __STDCPP_MATH_SPEC_FUNCS__ < 201003L \n \#error "STOP" \n \#endif \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#define __STDCPP_WANT_MATH_SPEC_FUNCS__ 1 \n \#include <cmath> \n \#if !defined(__STDCPP_MATH_SPEC_FUNCS__) || __STDCPP_MATH_SPEC_FUNCS__ < 201003L \n \#error "STOP" \n \#endif \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+         ifeq ($(TMP),0)
+             HAVE_MATH_SPECIAL_FUNCS = 1
+         endif
+     endif
+ endif
+ ifeq ($(HAVE_MATH_SPECIAL_FUNCS),0)
+-    TMP := $(shell $(ECHO) '\#include <tr1/cmath> \n int main(){ std::tr1::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <tr1/cmath> \n int main(){ std::tr1::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     HAVE_TR1_CMATH = 0
+     ifeq ($(TMP),0)
+         HAVE_TR1_CMATH = 1
+@@ -729,7 +729,7 @@
+         $(shell $(ECHO) "#vtk major version detection" >> $(AUTO_LOG_FILE))
+     endif
+     # note we assume here that our compiler supports #pragma message
+-    VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++    VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+     ifeq ($(AUTO_DEBUG),1)
+         $(shell $(ECHO) "#vtk major version detection result: $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+     endif
+@@ -744,7 +744,7 @@
+         ifeq ($(VTK_INC),-I)
+             VTK_INC =
+         endif
+-        VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++        VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+         ifeq ($(AUTO_DEBUG),1)
+             $(shell $(ECHO) "#vtk major version detection result (lib): $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+         endif
+@@ -797,7 +797,7 @@
+                 # At this stage we now have VTK downloaded. Next we need to compile it
+                 $(info VTK has been downloaded and will be compiled now. This can take several minutes.)
+                 OBJDIR := $(PWD)
+-                TMP := $(shell $(ECHO) '\#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/vtk" \n mkdir -p build \n cd src \n git checkout $(VTK_VERSION_TAG) &>> $(AUTO_LOG_FILE) \n cd ../build \n cmake -DBUILD_TESTING:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX=../install -DModule_vtkIOMPIParallel:BOOL=ON -DVTK_Group_MPI:BOOL=ON -DVTK_Group_Rendering:BOOL=OFF -DVTK_RENDERING_BACKEND:STRING=None -DVTK_USE_X:BOOL=OFF -DModule_vtkIOMPIImage:BOOL=ON -DModule_vtkParallelMPI:BOOL=ON ../src &>> $(AUTO_LOG_FILE) \n make &>> $(AUTO_LOG_FILE) \n make install &>> $(AUTO_LOG_FILE)' > $(TMPFILE))
++                TMP := $(shell $(ECHO) '#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/vtk" \n mkdir -p build \n cd src \n git checkout $(VTK_VERSION_TAG) &>> $(AUTO_LOG_FILE) \n cd ../build \n cmake -DBUILD_TESTING:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX=../install -DModule_vtkIOMPIParallel:BOOL=ON -DVTK_Group_MPI:BOOL=ON -DVTK_Group_Rendering:BOOL=OFF -DVTK_RENDERING_BACKEND:STRING=None -DVTK_USE_X:BOOL=OFF -DModule_vtkIOMPIImage:BOOL=ON -DModule_vtkParallelMPI:BOOL=ON ../src &>> $(AUTO_LOG_FILE) \n make &>> $(AUTO_LOG_FILE) \n make install &>> $(AUTO_LOG_FILE)' > $(TMPFILE))
+                 TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+                 ifeq ($(TMP), -1)
+                     $(error 'Compilation of vtk failed. Please install it manually')
+@@ -807,7 +807,7 @@
+                 ifeq ($(VTK_INC),-I)
+                     VTK_INC =
+                 endif
+-                VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++                VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+                 ifeq ($(AUTO_DEBUG),1)
+                     $(shell $(ECHO) "#vtk major version detection result (lib): $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+                 endif
+@@ -826,7 +826,7 @@
+     ifeq ($(AUTO_DEBUG),1)
+         $(shell $(ECHO) "#vtk_major_version: $(VTK_MAJOR_VERSION)" >> $(AUTO_LOG_FILE))
+     endif
+-    VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MINOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
++    VTK_TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MINOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+     ifeq ($(VTK_TMP), -1)
+         $(error Could not obtain VTK_MINOR_VERSION)
+     endif
+@@ -885,7 +885,7 @@
+                 VTK_LIB =
+             endif
+         endif
+-        TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon$(VTK_APPENDIX_5) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon$(VTK_APPENDIX_5) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+         ifeq ($(TMP), -1)
+             ifeq ($(VTK_LIB_SET), 0)
+                 VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkCommon.so' | tail -n 1))
+@@ -893,7 +893,7 @@
+                     VTK_LIB =
+                 endif
+             endif
+-            TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++            TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Could not determine suitable appendix of VTK library with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_APPENDIX="$(VTK_APPENDIX)"')
+             else
+@@ -924,7 +924,7 @@
+             $(shell $(ECHO) "#vtk_lib: $(VTK_LIB)" >> $(AUTO_LOG_FILE))
+             $(shell $(ECHO) "#appendix command: $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE)" >> $(AUTO_LOG_FILE))
+         endif
+-        TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+         ifeq ($(TMP), -1)
+             ifeq ($(AUTO_DEBUG),1)
+                 $(shell $(ECHO) "#attempting without appendix" >> $(AUTO_LOG_FILE))
+@@ -935,7 +935,7 @@
+                     VTK_LIB =
+                 endif
+             endif
+-            TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++            TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Could not determine suitable appendix of VTK library with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_APPENDIX="$(VTK_APPENDIX)"')
+             else
+@@ -1025,9 +1025,9 @@
+         $(shell $(ECHO) "#vtk_addlibs: $(VTK_ADDLIBS)" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "#vtk_rpath: $(VTK_RPATH)" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "#vtk compile test:" >> $(AUTO_LOG_FILE))
+-        TMP := $(shell $(ECHO) "\#include <vtkVersion.h> \n int main(){}" > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) &>> $(AUTO_LOG_FILE))
++        TMP := $(shell $(ECHO) "#include <vtkVersion.h> \n int main(){}" > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) &>> $(AUTO_LOG_FILE))
+     endif
+-    TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile VTK example with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_ADDLIBS="$(VTK_ADDLIBS)"')
+     endif
+@@ -1057,7 +1057,7 @@
+     ifeq ($(REQUIRE_BOOST),1)
+         BOOST_INC ?= $(BOOST_INC_USR)
+         # Include test
+-        TMP := $(shell $(ECHO) '\#include "boost/math/special_functions/beta.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(BOOST_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++        TMP := $(shell $(ECHO) '#include "boost/math/special_functions/beta.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(BOOST_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+         ifeq ($(TMP), -1)
+             $(error 'Could not compile boost example with BOOST_INC="$(BOOST_INC)" as boost/math/special_functions/beta.hpp could not be found')
+         endif
+@@ -1082,7 +1082,7 @@
+         $(shell $(ECHO) "#JPG_ADDLIBS: $(JPG_ADDLIBS)" >> $(AUTO_LOG_FILE))
+         $(shell $(ECHO) "jpg compile test:" >> $(AUTO_LOG_FILE))
+     endif
+-    TMP := $(shell $(ECHO) '\#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile jpg example with JPG_INC="$(JPG_INC)"')
+     endif
+@@ -1090,7 +1090,7 @@
+         $(shell $(ECHO) "jpg link test:" >> $(AUTO_LOG_FILE))
+     endif
+     # Linking test
+-    TMP := $(shell $(ECHO) '\#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(JPG_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(JPG_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile and link jpg example with JPG_INC="$(JPG_INC)", JPG_LIB="$(JPG_LIB)" and JPG_ADDLIBS="$(JPG_ADDLIBS)"')
+     endif
+@@ -1119,7 +1119,7 @@
+     CONVEX_ADDLIBS += -lccd
+     # Test settings
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     # Automatic download and compilation if AUTODOWNLOAD_CONVEX is set
+     ifeq ($(TMP), -1)
+         ifeq ($(AUTOINSTALL_CONVEX), "ON")
+@@ -1168,7 +1168,7 @@
+             endif
+             # At this stage we now have libccd downloaded. Next we need to compile it
+             OBJDIR := $(PWD)
+-            TMP := $(shell $(ECHO) '\#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/libccd/src" \n make PREFIX="$(PWD)/../../" USE_DOUBLE=yes &> /dev/null' > $(TMPFILE))
++            TMP := $(shell $(ECHO) '#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/libccd/src" \n make PREFIX="$(PWD)/../../" USE_DOUBLE=yes &> /dev/null' > $(TMPFILE))
+             TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+                 $(error 'Compilation of libccd failed. Please install it manually')
+@@ -1178,12 +1178,12 @@
+         endif
+     endif
+     # Include test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -E $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -E $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile Convex (libccd) example with CONVEX_INC="$(CONVEX_INC)"')
+     endif
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile and link Convex (libccd) example with CONVEX_INC="$(CONVEX_INC)", CONVEX_LIB="$(CONVEX_LIB)" and CONVEX_ADDLIBS="$(CONVEX_ADDLIBS)"')
+     endif
+@@ -1210,7 +1210,7 @@
+     MFEM_LIB ?= -L$(LIB_PATH)/mfem
+     MFEM_ADDLIBS += -lmfem
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         ifeq ($(AUTOINSTALL_MFEM), "ON")
+             $(info 'Could not compile MFEM example. As AUTOINSTALL_MFEM is set to "ON". MFEM will now be automatically downloaded to ../lib/mfem')
+@@ -1257,7 +1257,7 @@
+             # At this stage we now have MFEM downloaded. Next we need to compile it
+             TMP := $(shell ls $(LIB_PATH)/mfem/libmfem.a && echo 0 || echo -1)
+             ifeq ($(TMP), -1)
+-                TMP := $(shell $(ECHO) '\#!/bin/bash \n cd $(LIB_PATH)/mfem \n make config \n make all -j 4' > $(TMPFILE))
++                TMP := $(shell $(ECHO) '#!/bin/bash \n cd $(LIB_PATH)/mfem \n make config \n make all -j 4' > $(TMPFILE))
+                 TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+                 ifeq ($(TMP), -1)
+                     $(error 'Compilation of MFEM failed. Please install it manually')
+@@ -1270,12 +1270,12 @@
+ 
+ 
+     # Include test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile MFEM example with MFEM_INC="$(MFEM_INC)"')
+     endif
+     # Link test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
++    TMP := $(shell $(ECHO) '#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+     ifeq ($(TMP), -1)
+         $(error 'Could not compile and link MFEM example. Test was done with MFEM_INC="$(MFEM_INC)", MFEM_LIB="$(MFEM_LIB)" and MFEM_ADDLIBS="$(MFEM_ADDLIBS)"')
+     endif
diff --git a/c/CFDEMcoupling/Makefile.auto.patch.old b/c/CFDEMcoupling/Makefile.auto.patch.old
new file mode 100644
index 0000000..574759d
--- /dev/null
+++ b/c/CFDEMcoupling/Makefile.auto.patch.old
@@ -0,0 +1,1402 @@
+--- LIGGGHTS-PUBLIC-3.8.0/src/MAKE/Makefile.auto.orig	2023-10-27 09:58:19.979782000 +1100
++++ LIGGGHTS-PUBLIC-3.8.0/src/MAKE/Makefile.auto	1970-01-01 10:00:00.000000000 +1000
+@@ -1,1399 +0,0 @@
+-# auto = Recommended automatic makefile (settings in MAKE/Makefile.user or MAKE/Makefile.user_${postfix})
+-#
+-# Attempts to detect MPI, VTK, etc. automatically
+-#
+-# WARNING:
+-# This file should NOT be modified by the user. Instead see the Makefile.user file in the present
+-# directory of this file and set your variables there. Should this file not exist, simply run
+-# $ make auto
+-# once and it will be created for you including default values.
+-#
+-# Should you have any issues with this makefile please send us a bug report on www.cfdem.com so
+-# that we can improve it.
+-
+-ifneq (,$(shell which bash))
+-    SHELL := bash
+-else
+-    $(info Could not find bash. Using default shell instead. This might cause issues (e.g. in the debug output))
+-endif
+-# Subtargets
+-EMPTY=
+-SUBTARGET=
+-ifneq (${postfix}, ${EMPTY})
+-    SUBTARGET = _${postfix}
+-endif
+-MAKEUSER = MAKE/Makefile.user${SUBTARGET}
+-
+-TMP := $(shell ls ../$(MAKEUSER) 2> /dev/null 1> /dev/null && echo 1 || echo 0)
+-ifeq ($(TMP), 0)
+-    # Use default Makefile.user
+-    ifeq (${postfix}, ${EMPTY})
+-        TMP := $(shell tail -n +11 ../MAKE/Makefile.user_default > ../MAKE/Makefile.user || echo -1)
+-    # Use Makefile.user_${postfix}
+-    else
+-        # Check if Makefile.user exists, if yes clone this one, otherwise Makefile.user_default
+-        TMP := $(shell ls ../MAKE/Makefile.user 2> /dev/null 1> /dev/null && echo 1 || echo 0)
+-        ifneq ($(TMP), 0)
+-            $(info Creating new $(MAKEUSER) from Makefile.user)
+-            TMP := $(shell tail -n +11 ../MAKE/Makefile.user > ../$(MAKEUSER) || echo -1)
+-        else
+-            $(info Creating new $(MAKEUSER) from Makefile.user_default)
+-            TMP := $(shell tail -n +11 ../MAKE/Makefile.user_default > ../$(MAKEUSER) || echo -1)
+-        endif
+-    endif
+-    ifeq ($(TMP), -1)
+-        $(error Could not create $(MAKEUSER))
+-    else
+-        $(info )
+-        $(info >>> WARNING <<<)
+-        $(info Created $(MAKEUSER) for the first time. Please check that the options in that file are set correctly.)
+-        $(info )
+-    endif
+-endif
+-
+-sinclude ../$(MAKEUSER)
+-
+-SUBTARGETDEBUG=$(SUBTARGET)
+-ifneq (${debug}, ${EMPTY})
+-    ifeq (${debug},ON)
+-        SUBTARGETDEBUG := $(SUBTARGET)-debug
+-        USE_DEBUG = "ON"
+-    endif
+-    ifeq (${debug},FULL)
+-        SUBTARGETDEBUG := $(SUBTARGET)-fulldebug
+-        USE_DEBUG = "FULL"
+-    endif
+-endif
+-
+-AUTO_DEBUG ?= ${auto_debug}
+-ifeq ($(AUTO_DEBUG),0)
+-    AUTO_LOG_FILE = /dev/null
+-else
+-    AUTO_LOG_FILE ?= make_auto.log
+-endif
+-
+-# To have $n available as newline
+-define n
+-
+-
+-endef
+-
+-# Output check with echo
+-ECHO := echo
+-TMPFILE = /tmp/liggghtscompile.tmp
+-TMP = $(shell $(ECHO) "\n" > $(TMPFILE) && cat $(TMPFILE))
+-EMPTY =
+-ifneq ($(TMP), $(EMPTY))
+-    ECHO := $(ECHO) -e
+-    TMP = $(shell $(ECHO) "\n" > $(TMPFILE) && cat $(TMPFILE))
+-    ifneq ($(TMP), $(EMPTY))
+-        $(error Could not create empty file with \n entry using echo and echo -e)
+-    endif
+-endif
+-ifeq ($(AUTO_DEBUG),1)
+-    $(shell $(ECHO) "#Compilation of LIGGGHTS\nMakefile auto logfile\n" > $(AUTO_LOG_FILE))
+-    ifneq (, $(shell which date))
+-        DATE = $(shell date)
+-        $(shell $(ECHO) "#Time of writing: $(DATE)\n" >> $(AUTO_LOG_FILE))
+-    endif
+-    $(shell $(ECHO) "#echo: $(ECHO)" >> $(AUTO_LOG_FILE))
+-    $(shell $(ECHO) "#subtarget: $(SUBTARGET)" >> $(AUTO_LOG_FILE))
+-endif
+-
+-
+-# Version consistency check
+-# The following line needs to be identical in Makefile.user_default
+-MAKEFILE_USER_DEFAULT_VERSION = "1.4"
+-# These are all versions that ever existed in the history of the universe
+-ALL_VERSIONS := 1.0 1.1 1.2 1.3 1.4
+-
+-ifeq ($(AUTO_DEBUG),1)
+-    $(shell $(ECHO) "#makefile_user_default_version: $(MAKEFILE_USER_DEFAULT_VERSION)" >> $(AUTO_LOG_FILE))
+-    $(shell $(ECHO) "#makefile_user_version: $(MAKEFILE_USER_VERSION)" >> $(AUTO_LOG_FILE))
+-endif
+-ifeq ($(origin MAKEFILE_USER_VERSION), undefined)
+-    $(info Could not find MAKEFILE_USER_VERSION in $(MAKEUSER). No version consistency check will be performed and there might be errors. Please remove [backup] this file and run "make auto" again to generate a new one.)
+-else
+-    ifneq ($(MAKEFILE_USER_VERSION), $(MAKEFILE_USER_DEFAULT_VERSION))
+-        $(info Makefile.auto has detected a version inconsistency in $(MAKEUSER). Its version is $(MAKEFILE_USER_VERSION) whereas the default Makefile.user has version $(MAKEFILE_USER_DEFAULT_VERSION).)
+-        $(info Attempting to auto patch your Makefiles)
+-        ifneq (${postfix}, ${EMPTY})
+-            MAKECMD = "make auto postfix=${postfix}"
+-        else
+-            MAKECMD = "make auto"
+-        endif
+-        # Default error text if patching fails
+-        GUIDE = $nManual updating of your $(MAKEUSER) is required. Follow one of the steps below:$n1.) Backup your $(MAKEUSER) to a save location and run $(MAKECMD) to generate a new one with default entries (Note: Makefile.user needs to be update first in any case).$n2.) Use a diff program (e.g. meld, vimdiff, etc.) to compare your $(MAKEUSER) with Makefile.user_default and update the new lines accordingly.$n
+-        # Test if patch is available
+-        ifeq (, $(shell which patch))
+-            $(error Could not find patch in your environment. ${GUIDE})
+-        endif
+-        # Make backup directory
+-        TMP := $(shell mkdir -p ../MAKE/auto_backup && echo 1 || echo 0)
+-        ifeq ($(TMP), 0)
+-            $(error Could not create folder MAKE/auto_backup to save your $(MAKEUSER). ${GUIDE})
+-        endif
+-        # Warning if backup directory is not empty
+-        TMP := $(shell ls ../MAKE/auto_backup | wc -l)
+-        ifneq ($(TMP), 0)
+-            $(info Warning: All contents in MAKE/auto_backup will be overwritten)
+-        endif
+-        # Copy the current Makefile.user to the backup directory
+-        TMP := $(shell cp ../$(MAKEUSER) ../MAKE/auto_backup && echo 1 || echo 0)
+-        ifeq ($(TMP), 0)
+-            $(error Could not create backup of your $(MAKEUSER). ${GUIDE})
+-        endif
+-        # Remove quotation marks from the version number
+-        VERSION_NR = $(subst ",,${MAKEFILE_USER_VERSION})
+-        # " Close quotation mark from previous line to avoid syntax highlighting issues
+-        # Remove quotation marks from the version number of the Makefile.user_default
+-        VERSION_NR_DEFAULT = $(subst ",,${MAKEFILE_USER_DEFAULT_VERSION})
+-        # " Close quotation mark from previous line to avoid syntax highlighting issues
+-        # This awesome command removes the latest version from the list of all versions and
+-        # also removes those that are older than the one in Makefile.user
+-        NEWER_VERSIONS := $(filter-out ${VERSION_NR_DEFAULT},$(shell $(ECHO) ${ALL_VERSIONS} | grep -o '${VERSION_NR}.*'))
+-        ifeq (${NEWER_VERSIONS},${EMPTY})
+-            $(error Unkown version of $(MAKEUSER), version was ${VERSION_NR})
+-        endif
+-        # Loop over all versions that have been identified above
+-        #   Check if there is a patch file for the corresponding version
+-        #   Patch the file
+-        $(foreach v,${NEWER_VERSIONS}, \
+-            $(if $(filter 0,$(shell ls ../MAKE/Makefile.user_default_patch_${v} 2> /dev/null 1> /dev/null && echo 1 || echo 0)), $(error Could not find a patch file that corresponds to Makefile.user version ${v}. ${GUIDE})) ; \
+-            $(if $(filter 0,$(shell patch -d ../MAKE Makefile.user${SUBTARGET} -i Makefile.user_default_patch_${v} --force && echo 1 || echo 0)), $(error Could not apply patch to $(MAKEUSER) wihut errors. Please see $(MAKEUSER).rej for the failed parts and compare $(MAKEUSER) with the backup available in your MAKE/auto_backup folder. With a bit of luck everything is fine and you simply need to run the compilation again. ${GUIDE})) ; \
+-        )
+-        MAKEFILE_USER_OLD_VERSION := ${MAKEFILE_USER_VERSION}
+-        # Include the file again with the new values
+-        include ../$(MAKEUSER)
+-        ifneq (${debug}, ${EMPTY})
+-            ifeq (${debug},1)
+-                USE_DEBUG = "ON"
+-            endif
+-            ifeq (${debug},2)
+-                USE_DEBUG = "FULL"
+-            endif
+-        endif
+-        $(info Successfully patched $(MAKEUSER) from version ${MAKEFILE_USER_OLD_VERSION} to ${MAKEFILE_USER_VERSION})
+-    endif
+-endif
+-
+-# OS detection
+-ifeq ($(OS),Windows_NT)
+-    MINGW := 1
+-else
+-    MINGW := 0
+-endif
+-
+-# Default settings should ../$(MAKEUSER) not exist for some reason or not contain the minimum
+-# variables
+-USE_MPI ?= "ON"
+-USE_VTK ?= "ON"
+-USE_SUPERQUADRICS ?= "OFF"
+-USE_CATALYST ?= "OFF"
+-USE_JPG ?= "OFF"
+-USE_FPIC ?= "ON"
+-USE_DEBUG ?= "OFF"
+-USE_PROFILE ?= "OFF"
+-USE_CONVEX ?= "OFF"
+-USE_GZIP ?= "OFF"
+-USE_XDR ?= "OFF"
+-AUTOINSTALL_CONVEX ?= "OFF"
+-AUTOINSTALL_VTK ?= "OFF"
+-USE_MFEM ?= "OFF"
+-AUTOINSTALL_MFEM ?= "OFF"
+-BUILD_LIBRARIES ?= "NONE"
+-
+-# Default variables
+-ifeq ($(MINGW), 0)
+-    # for Linux
+-    MPI_CCFLAGS_USR ?=-funroll-loops -fstrict-aliasing -Wall -Wno-unused-result
+-    MPI_LDFLAGS_USR ?=-lstdc++
+-    MPI_DEPFLAGS_USR ?=-M
+-    CCFLAGS_USR ?=-funroll-loops -fstrict-aliasing -Wall -Wno-unused-result
+-    LDFLAGS_USR ?=-lstdc++
+-    DEPFLAGS_USR ?=-M
+-    ARCHIVE_USR ?= ar
+-    ARFLAGS_USR ?= -rcsv
+-    SHLIBFLAGS_USR ?= -shared
+-    SIZE_USR ?= size
+-else
+-    # for Windows
+-    ifeq ($(USE_VTK), "ON") # disable VTK
+-        USE_VTK = "OFF"
+-        $(info Warning: VTK has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_SUPERQUADRICS), "ON") # disable SUPERQUADRICS
+-        USE_SUPERQUADRICS = "OFF"
+-        $(info Warning: SUPERQUADRICS has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_CATALYST), "ON") # disable CATALYST
+-        USE_CATALYST = "OFF"
+-        $(info Warning: VTK has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_MPI), "ON") # disable MPI
+-        USE_MPI = "OFF"
+-        $(info Warning: MPI has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_JPG), "ON") # disable JPG
+-        USE_JPG = "OFF"
+-        $(info Warning: JPG has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_CONVEX), "ON") # disable CONVEX
+-        USE_CONVEX = "OFF"
+-        $(info Warning: CONVEX has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_DEBUG), "ON") # disable DEBUG
+-        USE_DEBUG = "OFF"
+-        $(info Warning: DEBUG has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_PROFILE), "ON") # disable PROFILE
+-        USE_PROFILE = "OFF"
+-        $(info Warning: DEBUG has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_GZIP), "ON") # disable GZIP
+-        USE_GZIP = "OFF"
+-        $(info Warning: GZIP has been disabled due to compilation on Windows)
+-    endif
+-    ifeq ($(USE_XDR), "OFF") # enable XDR
+-        USE_XDR = "ON"
+-        $(info Warning: XDR has been enabled due to compilation on Windows)
+-    endif
+-    CCFLAGS_USR ?=-I../STUBS -O3 -march=i686 -mtune=generic -mfpmath=387 -mpc64 -fno-exceptions -fno-rtti -ffast-math -funroll-loops -fstrict-aliasing -Wall -W -Wno-uninitialized
+-    LDFLAGS_USR ?=-O -lwsock32
+-    DEPFLAGS_USR ?=-M
+-    ARCHIVE_USR ?= ar
+-    ARFLAGS_USR ?= -rcsv
+-    SHLIBFLAGS_USR ?=
+-    SIZE_USR ?= i686-pc-mingw32-size
+-    OBJ += mpi.o
+-endif
+-
+-ifeq ($(USE_CATALYST), "ON")
+-    ifneq ($(USE_VTK), "ON")
+-        USE_VTK = "ON"
+-        $(info Information: USE_VTK was not activated but USE_CATALYST overrode this setting)
+-    endif
+-endif
+-
+-# Read previously used variables
+-OPTIONS_FILE=../MAKE/Makefile.auto.options${SUBTARGETDEBUG}
+-sinclude $(OPTIONS_FILE)
+-# Set them to be equal the current variables if they have not been set
+-OPTIONS_USE_MPI           ?= $(USE_MPI)
+-OPTIONS_USE_VTK           ?= $(USE_VTK)
+-OPTIONS_USE_SUPERQUADRICS ?= $(USE_SUPERQUADRICS)
+-OPTIONS_USE_CATALYST      ?= $(USE_CATALYST)
+-OPTIONS_USE_JPG           ?= $(USE_JPG)
+-OPTIONS_USE_FPIC          ?= $(USE_FPIC)
+-OPTIONS_USE_DEBUG         ?= $(USE_DEBUG)
+-OPTIONS_USE_PROFILE       ?= $(USE_PROFILE)
+-OPTIONS_USE_CONVEX        ?= $(USE_CONVEX)
+-OPTIONS_USE_GZIP          ?= $(USE_GZIP)
+-OPTIONS_USE_XDR           ?= $(USE_XDR)
+-OPTIONS_USE_MFEM          ?= $(USE_MFEM)
+-# Check if they have changed
+-ifneq ($(OPTIONS_USE_MPI), $(USE_MPI))
+-    $(error variable USE_MPI has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_VTK), $(USE_VTK))
+-    $(error variable USE_VTK has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_SUPERQUADRICS), $(USE_SUPERQUADRICS))
+-    $(error variable USE_SUPERQUADRICS has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_CATALYST), $(USE_CATALYST))
+-    $(error variable USE_CATALYST has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_JPG), $(USE_JPG))
+-    $(error variable USE_JPG has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_FPIC), $(USE_FPIC))
+-    $(error variable USE_FPIC has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_DEBUG), $(USE_DEBUG))
+-    $(error variable USE_DEBUG has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_PROFILE), $(USE_PROFILE))
+-    $(error variable USE_PROFILE has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_CONVEX), $(USE_CONVEX))
+-    $(error variable USE_CONVEX has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_GZIP), $(USE_GZIP))
+-    $(error variable USE_GZIP has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_XDR), $(USE_XDR))
+-    $(error variable USE_XDR has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-ifneq ($(OPTIONS_USE_MFEM), $(USE_MFEM))
+-    $(error variable USE_MFEM has changed. Please run "make clean-all" or "make clean-auto" before compiling again.)
+-endif
+-# Write out current variables
+-$(shell $(ECHO) '# Automatically generated file from Makefile.auto.\n' > $(OPTIONS_FILE))
+-$(shell $(ECHO) '# DO NO EDIT THIS FILE\n' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_MPI = $(USE_MPI)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_VTK = $(USE_VTK)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_SUPERQUADRICS = $(USE_SUPERQUADRICS)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_CATALYST = $(USE_CATALYST)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_JPG = $(USE_JPG)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_FPIC = $(USE_FPIC)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_PROFILE = $(USE_PROFILE)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_CONVEX = $(USE_CONVEX)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_GZIP = $(USE_GZIP)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_XDR = $(USE_XDR)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'OPTIONS_USE_MFEM = $(USE_MFEM)' >> $(OPTIONS_FILE))
+-
+-# Sources
+-LIBCCD_GIT ?= https://github.com/danfis/libccd.git
+-LIBCCD_ZIP ?= https://github.com/danfis/libccd/archive/master.zip
+-VTK_GIT ?= https://gitlab.kitware.com/vtk/vtk.git
+-VTK_ZIP ?= http://www.vtk.org/files/release/8.0/VTK-8.0.1.zip
+-VTK_VERSION_TAG ?= v8.0.1
+-MFEM_VERSION_TAG ?= 3.3
+-MFEM_GIT ?= https://github.com/mfem/mfem
+-MFEM_ZIP ?= http://mfem.github.io/releases/mfem-$(MFEM_VERSION_TAG).tgz
+-
+-# Lib path in which 3rd party libraries are installed
+-LIB_PATH ?= ../../lib
+-
+-# Initialization of EXTRA_* variables
+-# All -I include paths
+-EXTRA_INC=
+-# All -L library paths
+-EXTRA_LIB=
+-# All -l libraries
+-EXTRA_ADDLIBS=
+-
+-# Debug settings
+-#
+-ifeq ($(USE_DEBUG), "ON")
+-    OPT_LVL = -Og -g
+-    LMP_INC += -DLIGGGHTS_DEBUG
+-else
+-    ifeq ($(USE_DEBUG), "FULL")
+-        OPT_LVL = -O0 -g
+-        LMP_INC += -DLIGGGHTS_DEBUG
+-    else
+-        ifeq ($(USE_DEBUG), "NOOPT")
+-            OPT_LVL = -O0 -g
+-            LMP_INC += -DLIGGGHTS_DEBUG
+-            $(info 'WARNING: USE_DEBUG option NOOPT is deprecated. Please use FULL instead')
+-        else
+-            ifeq ($(USE_DEBUG), "OFF")
+-                ifeq ($(MINGW), 0)
+-                    OPT_LVL = -O2
+-                else
+-                    OPT_LVL = # for mingw the optimization is already set in CCFLAGS_USR
+-                endif
+-            else
+-                $(error 'USE_DEBUG needs to be either "ON", "FULL" or "OFF"')
+-            endif
+-        endif
+-    endif
+-endif
+-
+-# Profiling settings
+-#
+-ifeq ($(USE_PROFILE), "ON")
+-    PROF_FLAG = -pg
+-else
+-    PROF_FLAG =
+-endif
+-
+-# MPI settings
+-#
+-ifeq ($(USE_MPI), "ON")
+-    # Test if MPICXX is set and if yes, then check if this executable exists
+-    ifneq (, $(MPICXX))
+-        ifeq (, $(shell which $(MPICXX)))
+-            $(error "Could not find executable set in variable MPICXX")
+-        endif
+-    # MPICXX is not set
+-    else
+-        # Check if MPICXX_USR is set
+-        ifneq (, $(MPICXX_USR))
+-            ifeq (, $(shell which $(MPICXX_USR)))
+-                $(error "Could not find executable set in MPICXX_USR")
+-            else
+-                # found it, so set MPICXX accordingly
+-                MPICXX = $(MPICXX_USR)
+-            endif
+-        # if MPICXX_USR is not set then try to find mpicxx or mpic++
+-        else
+-            ifeq (, $(shell which mpicxx))
+-                ifeq (, $(shell which mpic++))
+-                    $(error 'Could not find a suitable mpi compiler (mpicxx or mpic++). Please specify one in the $(MAKEUSER) using the MPICXX_USR variable or set USE_MPI to "OFF"')
+-                else
+-                    MPICXX = mpic++
+-                endif
+-            else
+-                MPICXX = mpicxx
+-            endif
+-        endif
+-    endif
+-    # Detect openmpi mvapich mpich2 etc.
+-    ifneq ($(origin MPI_INC_USR), undefined)
+-        MPI_INC ?= $(MPI_INC_USR)
+-    endif
+-    TMP_INC =
+-    ifneq ($(origin MPI_INC), undefined)
+-        TMP_INC = -I$(MPI_INC)
+-    endif
+-    # We assume that the compiler supports #pragma message
+-    TMP := $(shell $(ECHO) '\#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) $(OPT_LVL) $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
+-    # See if compilation has worked out
+-    ifeq ($(TMP), -1)
+-        # Maybe it failed because of the optimization as -Og is not known
+-        ifeq ($(USE_DEBUG), "ON")
+-            TMP := $(shell $(ECHO) '\#include <mpi.h> \n \#if defined(MPICH) \n \#pragma message "MPICH" \n \#elif defined(OPEN_MPI) \n \#pragma message "OpenMPI" \n \#else \n \#pragma message "Unknown" \n \#endif' > $(TMPFILE) && $(MPICXX) -O0 -g $(PROF_FLAG) $(TMP_INC) -xc++ -E $(TMPFILE) 2> /dev/null | grep pragma | grep -m 1 message || echo -1)
+-            ifeq ($(TMP), -1)
+-                $(error 'Could not compile a simple MPI example (testing with -Og and -O0). Test was done with MPI_INC="$(TMP_INC)" and MPICXX="$(MPICXX)"')
+-            else
+-                OPT_LVL = -O0 -g
+-                $(info 'Could not use -Og compilation flag, replacing with -O0')
+-            endif
+-        else
+-            $(error 'Could not compile a simple MPI example. Test was done with MPI_INC="$(TMP_INC)" and MPICXX="$(MPICXX)"')
+-        endif
+-    endif
+-    MPI_TYPE := $(patsubst "%",%,$(word $(words $(TMP)), $(TMP)))
+-    ifeq ($(MPI_TYPE), MPICH)
+-        ifneq ($(origin MPI_ADDLIBS), undefined)
+-            MPI_ADDLIBS += -lmpich -lmpichcxx
+-        else
+-            ifneq ($(origin MPI_ADDLIBS_USR), undefined)
+-                MPI_ADDLIBS_USR += -lmpich -lmpichcxx
+-            else
+-                MPI_ADDLIBS = -lmpich -lmpichcxx
+-            endif
+-        endif
+-        TMP := $(shell $(MPICXX) -show)
+-        ifneq ($(word 1,$(TMP)), $(CXX))
+-            $(info Warning: MPICXX compiler is $(word 1,$(TMP)) but $(CXX). Thus, setting the MPICH cxx compiler to $(CXX).)
+-            MPICXX := $(MPICXX) -cxx $(CXX)
+-        endif
+-    else
+-        ifeq ($(MPI_TYPE), OpenMPI)
+-            TMP := $(shell $(MPICXX) -show)
+-            ifneq ($(word 1,$(TMP)), $(CXX))
+-                $(info Warning: MPICXX compiler is $(word 1,$(TMP)) but CXX=$(CXX). Thus, setting OMPI_CXX to $(CXX).)
+-                MPICXX := OMPI_CXX=$(CXX) $(MPICXX)
+-            endif
+-        endif
+-    endif
+-
+-    # Now that we have found an mpi compiler check that we can actually do something with it
+-    # 0.) Prepare the environment
+-
+-    ifneq ($(origin MPI_LIB_USR), undefined)
+-        MPI_LIB ?= $(MPI_LIB_USR)
+-    endif
+-    MPI_ADDLIBS ?= $(MPI_ADDLIBS_USR)
+-    MPI_CCFLAGS ?= $(MPI_CCFLAGS_USR)
+-    MPI_LDFLAGS ?= $(MPI_LDFLAGS_USR)
+-    MPI_CCFLAGS += $(OPT_LVL) $(PROF_FLAG)
+-    MPI_LDFLAGS += $(OPT_LVL) $(PROF_FLAG)
+-    # Linking test
+-    TMP := $(shell $(ECHO) 'int main(){}' > $(TMPFILE) && $(MPICXX) -xc++ $(MPI_LDFLAGS) -L$(MPI_LIB) $(MPI_ADDLIBS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile and link a simple MPI example. Test was done with MPI_LIB=$(MPI_LIB)')
+-    endif
+-    # Finally set the compiler environment
+-    CXX = $(MPICXX)
+-    CCFLAGS = $(MPI_CCFLAGS)
+-    LDFLAGS = $(MPI_LDFLAGS)
+-    DEPFLAGS ?= $(MPI_DEPFLAGS_USR)
+-    ifneq ($(origin MPI_INC), undefined)
+-        EXTRA_INC += -I$(MPI_INC)
+-    endif
+-    ifneq ($(origin MPI_LIB), undefined)
+-        EXTRA_LIB += -L$(MPI_LIB)
+-    endif
+-    EXTRA_ADDLIBS += $(MPI_ADDLIBS)
+-
+-# If USE_MPI is not set, check that we have a C++ compiler available
+-else
+-    # Test if CXX is set and if yes, then check if this executable exists
+-    ifneq (, $(CXX))
+-        ifeq (, $(shell which $(CXX)))
+-            $(error "Could not find executable set in variable CXX")
+-        endif
+-        ifeq (, $(CXX_USR))
+-            ifneq ($(CXX), $(CXX_USR))
+-                $(info "Warning: both CXX and CXX_USR are set, precedence is given to CXX = $(CXX) (CXX_USR = $(CXX_USR))")
+-            endif
+-        endif
+-    # CXX is not set
+-    else
+-        # Check if CXX_USR is set
+-        ifneq (, $(CXX_USR))
+-            ifeq (, $(shell which $(CXX_USR)))
+-                $(error "Could not find executable set in CXX_USR")
+-            else
+-                # found it, so set CXX accordingly
+-                CXX = $(CXX_USR)
+-            endif
+-        else
+-            # if CXX is not set then try to find g++ on linux
+-            ifeq ($(MINGW), 0)
+-                ifeq (, $(shell which g++))
+-                    $(error 'Could not find a suitable c++ compiler (g++). Please specify one in the $(MAKEUSER) using the CXX_USR variable')
+-                else
+-                    CXX = g++
+-                endif
+-            else # or the appropriate mingw compiler
+-                ifeq (, $(shell which i686-pc-mingw32-g++))
+-                    $(error 'Could not find a suitable c++ compiler (i686-pc-mingw32-g++). Please specify one in the $(MAKEUSER) using the CXX_USR variable')
+-                else
+-                    CXX = i686-pc-mingw32-g++
+-                endif
+-            endif
+-        endif
+-    endif
+-
+-    # Now that we have found a c++ compiler check that we can actually do something with it
+-    # 0.) Prepare the environment
+-    CCFLAGS ?= $(CCFLAGS_USR)
+-    LDFLAGS ?= $(LDFLAGS_USR)
+-    DEPFLAGS ?= $(DEPFLAGS_USR)
+-    CCFLAGS += $(OPT_LVL)
+-    LDFLAGS += $(OPT_LVL)
+-    EXTRA_INC += -I../STUBS
+-    EXTRA_LIB += -L../STUBS
+-    EXTRA_ADDLIBS += -lmpi_stubs
+-    # 1.) Attempt compilation
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "#Compiling with mpi stubs" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#Command: $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE)")
+-    endif
+-    TMP := $(shell $(ECHO) '\#include <mpi.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile a simple c++ example. Please make sure that you have run "make stubs" before compiling LIGGGHTS itself. Test was done with CXX=$(CXX), EXTRA_INC=$(EXTRA_INC), EXTRA_LIB=$(EXTRA_LIB) and EXTRA_ADDLIBS=$(EXTRA_ADDLIBS).')
+-    endif
+-endif
+-
+-# Check for c++17 or c++11 support
+-CXXVERSION = 0
+-TMP := $(shell $(ECHO) 'int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -std=c++17 -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-ifeq ($(AUTO_DEBUG),1)
+-    $(shell $(ECHO) "#cmd for c++17 check: $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -std=c++17 -o /dev/null $(TMPFILE) 2> /dev/null" >> $(AUTO_LOG_FILE))
+-    $(shell $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -std=c++17 -o /dev/null $(TMPFILE) &>> $(AUTO_LOG_FILE))
+-    $(shell $(ECHO) '#tmp: $(TMP)' >> $(AUTO_LOG_FILE))
+-endif
+-ifeq ($(TMP),0)
+-    CXXVERSION = 17
+-    CCFLAGS += -std=c++17
+-else
+-    TMP := $(shell $(ECHO) 'int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -std=c++11 -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP),0)
+-        CXXVERSION = 11
+-        CCFLAGS += -std=c++11
+-    endif
+-endif
+-
+-# Check for special functions support
+-HAVE_MATH_SPECIAL_FUNCS = 0
+-# For c++17 this is included without any further defines
+-ifeq ($(CXXVERSION),17)
+-    TMP := $(shell $(ECHO) '\#include <cmath> \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP),0)
+-        HAVE_MATH_SPECIAL_FUNCS = 1
+-    endif
+-    # Check for tr1 support, in particular tr1/cmath (and the beta function)
+-    # But only if math special functions have not been found
+-else
+-    # For c++11 we need to check if ISO 29124:2010 is supported
+-    ifeq ($(CXXVERSION),11)
+-        TMP := $(shell $(ECHO) '\#define __STDCPP_WANT_MATH_SPEC_FUNCS__ 1 \n \#include <cmath> \n \#if !defined(__STDCPP_MATH_SPEC_FUNCS__) || __STDCPP_MATH_SPEC_FUNCS__ < 201003L \n \#error "STOP" \n \#endif \n int main(){ std::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-        ifeq ($(TMP),0)
+-            HAVE_MATH_SPECIAL_FUNCS = 1
+-        endif
+-    endif
+-endif
+-ifeq ($(HAVE_MATH_SPECIAL_FUNCS),0)
+-    TMP := $(shell $(ECHO) '\#include <tr1/cmath> \n int main(){ std::tr1::beta(1,1); }' > $(TMPFILE) && $(CXX) $(EXTRA_INC) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -xc++ $(LDFLAGS) $(CCFLAGS) -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    HAVE_TR1_CMATH = 0
+-    ifeq ($(TMP),0)
+-        HAVE_TR1_CMATH = 1
+-        CCFLAGS += -DHAVE_TR1_CMATH
+-    endif
+-endif
+-
+-# Position independent code
+-#
+-ifeq ($(USE_FPIC), "ON")
+-    SHFLAGS = -fPIC
+-    CCFLAGS += -fPIC
+-else
+-    ifeq ($(USE_FPIC), "OFF")
+-        SHFLAGS =
+-    else
+-        $(error 'USE_FPIC needs to be either "ON" or "OFF"')
+-    endif
+-endif
+-
+-# Check for gzip
+-#
+-ifeq ($(USE_GZIP), "ON")
+-    ifneq (, $(shell which gzip))
+-        LMP_INC += -DLAMMPS_GZIP
+-    else
+-        $(error 'USE_GZIP is set to "ON" but the gzip executable cannot be found. Ensure that it is available in your PATH variable or set USE_GZIP to "OFF"')
+-    endif
+-endif
+-
+-ifeq ($(USE_XDR), "ON")
+-    LMP_INC += -DLAMMPS_XDR
+-endif
+-
+-# Default for building shared libraries
+-SHLIBFLAGS = -shared
+-
+-# Library compilation flags
+-ARCHIVE ?= $(ARCHIVE_USR)
+-ARFLAGS ?= $(ARFLAGS_USR)
+-SHFLAGS ?= $(SHFLAGS_USR)
+-SHLIBFLAGS ?= $(SHLIBFLAGS_USR)
+-
+-# Size
+-SIZE ?= $(SIZE_USR)
+-
+-# Linker (for now equal to CXX) if not set explicitly
+-LINK ?= $(CXX)
+-
+-# CATALYST for in-situ ParaView visualization
+-#
+-ifeq ($(USE_CATALYST), "ON")
+-    TMP := $(shell cp ../MAKE/CMakeLists_Catalyst.txt CMakeLists.txt && mkdir -p .tmp_catalyst_build && cd .tmp_catalyst_build && cd - && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not create .tmp_catalyst_build and create CMakeLists.txt')
+-    endif
+-    # All vtk includes in LIGGGHTS (to be inserted into catalyst_dummy.cpp)
+-    #grep -rh "#include" *{h,cpp} | grep "<vtk"
+-    ifeq (, $(shell which cmake))
+-        $(error 'Could not find cmake. Please ensure that it is in your PATH environment variable')
+-    endif
+-    PV_BUILD_DIR ?= $(PV_BUILD_DIR_USR)
+-    TMP := $(shell cd .tmp_catalyst_build && cmake -DParaView_DIR="$(PV_BUILD_DIR)" .. 1> /dev/null && cd - && echo 0 || echo -1)
+-    TMP2 := $(shell rm -rf CMakeLists.txt CMakeCache.txt CMakeFiles)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not generate makefiles using cmake. Make sure PV_BUILD_DIR="$(PV_BUILD_DIR)" is set correctly')
+-    endif
+-    # TODO check if CXX_INCLUDES is set, if yes save it somewhere temporarily (same with other flags in flags.make)
+-    sinclude .tmp_catalyst_build/CMakeFiles/CatalystAdaptor.dir/flags.make
+-    CATALYST_INC = $(CXX_INCLUDES)
+-    # Next the link_raw needs to remove the dummy crap and put this into the normal linking flags
+-    CATALYST_LIB := $(shell cat .tmp_catalyst_build/CMakeFiles/CatalystDummy.dir/link.txt | sed s/.*libCatalystAdaptor.a// || echo -1)
+-    ifeq ($(CATALYST_LIB), -1)
+-        $(error 'Could not get linking flags from cmake files')
+-    endif
+-    # prepare the environment
+-    ifneq ($(origin VTK_INC_USR), undefined)
+-        $(info Information: VTK_INC_USR was set, but USE_CATALYST overrides this)
+-    endif
+-    ifneq ($(origin VTK_LIB_USR), undefined)
+-        $(info Information: VTK_LIB_USR was set, but USE_CATALYST overrides this)
+-    endif
+-    VTK_INC_USR = $(CATALYST_INC)
+-    VTK_LIB_USR = $(CATALYST_LIB)
+-    # Set the USE_CATALYST_FLAG
+-    LMP_INC += -DUSE_CATALYST_FLAG
+-endif
+-
+-# VTK library, OPTIONAL
+-# INC = path for VTK header files
+-# LIB = path for VTK library
+-# ADDLIBS = name of VTK library
+-
+-ifeq ($(USE_VTK), "ON")
+-    # Use user settings if available
+-    # The following ifneq are required as otherwise VTK_{INC,LIB} will be set (but are empty) if VTK_{INC,LIB}_USR is undefined. This will conflict with the following ?= assignments further below.
+-    ifneq ($(origin VTK_INC_USR), undefined)
+-        VTK_INC ?= $(VTK_INC_USR)
+-    endif
+-    ifneq ($(origin VTK_LIB_USR), undefined)
+-        VTK_LIB ?= $(VTK_LIB_USR)
+-    endif
+-    VTK_BASE_PATH ?= /usr
+-    VTK_ADDLIBS ?= $(VTK_ADDLIBS_USR)
+-    VTK_INC ?= -I$(shell ls -d $(VTK_BASE_PATH)/include/vtk* 2> /dev/null | tail -n 1)
+-    ifeq ($(VTK_INC),-I)
+-        VTK_INC =
+-    endif
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "#vtk_base_path: $(VTK_BASE_PATH)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#vtk_inc: $(VTK_INC)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#vtk_inc_usr: $(VTK_INC_USR)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#vtk_lib: $(VTK_LIB)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#vtk_lib_usr: $(VTK_LIB_USR)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#vtk major version detection" >> $(AUTO_LOG_FILE))
+-    endif
+-    # note we assume here that our compiler supports #pragma message
+-    VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "#vtk major version detection result: $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+-    endif
+-    ifeq ($(VTK_TMP),-1)
+-        # Test if it is in the $(LIB_PATH)/vtk/install location
+-        VTK_BASE_PATH = $(LIB_PATH)/vtk/install
+-        ifeq ($(AUTO_DEBUG),1)
+-            $(shell $(ECHO) "#lib_path: $(LIB_PATH)" >> $(AUTO_LOG_FILE))
+-            $(shell $(ECHO) "#vtk major version detection (lib)" >> $(AUTO_LOG_FILE))
+-        endif
+-        VTK_INC = -I$(shell ls -d $(VTK_BASE_PATH)/include/vtk* 2> /dev/null | tail -n 1)
+-        ifeq ($(VTK_INC),-I)
+-            VTK_INC =
+-        endif
+-        VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+-        ifeq ($(AUTO_DEBUG),1)
+-            $(shell $(ECHO) "#vtk major version detection result (lib): $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+-        endif
+-        ifeq ($(VTK_TMP), -1)
+-            ifeq ($(AUTOINSTALL_VTK), "ON")
+-                # Check if sources provide the convex surface model
+-                $(info 'Could not compile VTK example. As AUTOINSTALL_VTK is set to "ON". VTK will now be automatically downloaded to $(LIB_PATH)')
+-                # Check if $(LIB_PATH)/vtk/src folder is available
+-                TMP := $(shell ls "$(LIB_PATH)/vtk/src" 2> /dev/null && echo 0 || echo -1)
+-                # If not download vtk
+-                ifeq ($(TMP), -1)
+-                    # Create $(LIB_PATH) folder
+-                    TMP := $(shell mkdir -p "$(LIB_PATH)" && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Could not create $(LIB_PATH) directory')
+-                    endif
+-                    TMP := $(shell mkdir -p "$(LIB_PATH)/vtk" && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Could not create $(LIB_PATH)/vtk directory')
+-                    endif
+-                    # Check for git
+-                    ifneq (, $(shell which git))
+-                        # Download git repository
+-                        TMP := $(shell git clone $(VTK_GIT) $(LIB_PATH)/vtk/src && echo 0 || echo -1)
+-                        ifeq ($(TMP), -1)
+-                            $(error 'Could not perform "git clone" of $(VTK_GIT) into $(LIB_PATH)/vtk/src')
+-                        endif
+-                    # Git not available
+-                    else
+-                        # Check for wget
+-                        ifeq (,$(shell which wget))
+-                            $(error "Could not find either git or wget to download VTK. Please install either of the two in order to allow the auto-installation of VTK.")
+-                        endif
+-                        # Download zip file
+-                        TMP := $(shell wget $(VTK_ZIP) -P $(LIB_PATH)/vtk &> /dev/null && echo 0 || echo -1)
+-                        ifeq ($(TMP), -1)
+-                            $(error 'Failed to download VTK using wget. Please install VTK manually')
+-                        endif
+-                        # Check if unzip is available
+-                        ifeq (, $(shell which unzip))
+-                            $(error 'Could not find unzip. Please install it to allow the auto-installation of VTK.')
+-                        endif
+-                        # Unzip file
+-                        TMP := $(shell unzip $(LIB_PATH)/vtk/$(notdir $(VTK_ZIP)) -d $(LIB_PATH)/vtk/src && mv $(LIB_PATH)/vtk/src/VTK*/* $(LIB_PATH)/vtk/src/ && echo 0 || echo -1)
+-                        ifeq ($(TMP), -1)
+-                            $(error 'Could not unzip $(notdir $(VTK_ZIP)) in $(LIB_PATH)/vtk')
+-                        endif
+-                    endif
+-                endif
+-                # At this stage we now have VTK downloaded. Next we need to compile it
+-                $(info VTK has been downloaded and will be compiled now. This can take several minutes.)
+-                OBJDIR := $(PWD)
+-                TMP := $(shell $(ECHO) '\#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/vtk" \n mkdir -p build \n cd src \n git checkout $(VTK_VERSION_TAG) &>> $(AUTO_LOG_FILE) \n cd ../build \n cmake -DBUILD_TESTING:BOOL=OFF -DCMAKE_BUILD_TYPE:STRING=Release -DCMAKE_INSTALL_PREFIX=../install -DModule_vtkIOMPIParallel:BOOL=ON -DVTK_Group_MPI:BOOL=ON -DVTK_Group_Rendering:BOOL=OFF -DVTK_RENDERING_BACKEND:STRING=None -DVTK_USE_X:BOOL=OFF -DModule_vtkIOMPIImage:BOOL=ON -DModule_vtkParallelMPI:BOOL=ON ../src &>> $(AUTO_LOG_FILE) \n make &>> $(AUTO_LOG_FILE) \n make install &>> $(AUTO_LOG_FILE)' > $(TMPFILE))
+-                TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+-                ifeq ($(TMP), -1)
+-                    $(error 'Compilation of vtk failed. Please install it manually')
+-                endif
+-                # Attempt to find vtk major version again after compilation
+-                VTK_INC = -I$(shell ls -d $(VTK_BASE_PATH)/include/vtk* 2> /dev/null | tail -n 1)
+-                ifeq ($(VTK_INC),-I)
+-                    VTK_INC =
+-                endif
+-                VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MAJOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+-                ifeq ($(AUTO_DEBUG),1)
+-                    $(shell $(ECHO) "#vtk major version detection result (lib): $(VTK_TMP)" >> $(AUTO_LOG_FILE))
+-                endif
+-            else
+-                $(error 'Could not obtain VTK_MAJOR_VERSION. As AUTOINSTALL_VTK is not set to "ON" we cannot continue'))
+-            endif
+-        endif
+-    endif
+-    open_bracket := (
+-    close_bracket := )
+-    space :=
+-    space +=
+-    VTK_TMP := $(subst $(open_bracket),$(space),$(VTK_TMP))
+-    VTK_TMP := $(subst $(close_bracket),$(space),$(VTK_TMP))
+-    VTK_MAJOR_VERSION := $(patsubst "%",%,$(word $(words $(VTK_TMP)),$(VTK_TMP)))
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "#vtk_major_version: $(VTK_MAJOR_VERSION)" >> $(AUTO_LOG_FILE))
+-    endif
+-    VTK_TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n \#define XSTR(x) STR(x) \n \#define STR(x) \#x \n \#pragma message XSTR(VTK_MINOR_VERSION)' > $(TMPFILE) && $(CXX) -Wno-deprecated -E $(VTK_INC) -xc++ $(TMPFILE) 2>> $(AUTO_LOG_FILE) | tee -a $(AUTO_LOG_FILE) | grep "pragma" | grep "message" || echo -1)
+-    ifeq ($(VTK_TMP), -1)
+-        $(error Could not obtain VTK_MINOR_VERSION)
+-    endif
+-    VTK_TMP := $(subst $(open_bracket),$(space),$(VTK_TMP))
+-    VTK_TMP := $(subst $(close_bracket),$(space),$(VTK_TMP))
+-    VTK_MINOR_VERSION := $(patsubst "%",%,$(word $(words $(VTK_TMP)),$(VTK_TMP)))
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "#vtk_minor_version: $(VTK_MINOR_VERSION)" >> $(AUTO_LOG_FILE))
+-    endif
+-    VTK_VERSION=$(VTK_MAJOR_VERSION).$(VTK_MINOR_VERSION)
+-
+-    # check if the vtk compiled with ParaView is going to be used
+-    USE_PV_VTK = "OFF"
+-    ifeq ($(USE_CATALYST), "ON")
+-        # VTK_LIB is set already
+-        FILTER = $(foreach v,$(2),$(if $(findstring $(1),$(v)),$(v),))
+-        ifeq ($(VTK_MAJOR_VERSION),5)
+-            VTK_APPENDIX = $(strip $(call FILTER,libvtkCommon, $(VTK_LIB)))
+-        else
+-            ifneq (,$(filter $(VTK_MAJOR_VERSION),6 7 8))
+-                VTK_APPENDIX = $(strip $(call FILTER,libvtkParallelMPI, $(VTK_LIB)))
+-            else
+-                $(error 'Unsupported VTK version $(VTK_VERSION)')
+-            endif
+-        endif
+-        USE_PV_VTK = $(findstring -pv, $(VTK_APPENDIX))
+-        ifeq ($(USE_PV_VTK), -pv)
+-            USE_PV_VTK = "ON"
+-            # strip the path, library name and ending
+-            VTK_APPENDIX := $(subst libvtkParallelMPI-,,$(patsubst %.so,%,$(basename $(notdir $(VTK_APPENDIX)))))
+-            VTK_LIB += -L$(PV_BUILD_DIR)/lib
+-        endif
+-    endif
+-
+-    ifeq ($(USE_PV_VTK), "OFF") # uses system vtk
+-        ifeq ($(origin VTK_APPENDIX_USR), undefined)
+-            VTK_APPENDIX = $(VTK_VERSION)
+-        else
+-            VTK_APPENDIX = $(VTK_APPENDIX_USR)
+-        endif
+-    endif
+-
+-    ifeq ($(VTK_MAJOR_VERSION),5)
+-        ifneq ($(origin VTK_APPENDIX_USR), undefined)
+-            VTK_APPENDIX_5 = -$(VTK_APPENDIX)
+-        endif
+-        ifeq ($(USE_PV_VTK), "ON")
+-            VTK_APPENDIX_5 = -$(VTK_APPENDIX)
+-        endif
+-        VTK_LIB_SET = 0
+-        ifneq ($(origin VTK_LIB), undefined)
+-            VTK_LIB_SET = 1
+-        else
+-            VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkCommon$(VTK_APPENDIX_5).so' | tail -n 1))
+-            ifeq ($(VTK_LIB),-L)
+-                VTK_LIB =
+-            endif
+-        endif
+-        TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon$(VTK_APPENDIX_5) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-        ifeq ($(TMP), -1)
+-            ifeq ($(VTK_LIB_SET), 0)
+-                VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkCommon.so' | tail -n 1))
+-                ifeq ($(VTK_LIB),-L)
+-                    VTK_LIB =
+-                endif
+-            endif
+-            TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtkCommon $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-            ifeq ($(TMP), -1)
+-                $(error 'Could not determine suitable appendix of VTK library with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_APPENDIX="$(VTK_APPENDIX)"')
+-            else
+-                # everything worked, so no appendix needed
+-                VTK_APPENDIX_5 = $(EMPTY)
+-            endif
+-        endif
+-        VTK_ADDLIBS +=  -lvtkCommon$(VTK_APPENDIX_5) \
+-                        -lvtkFiltering$(VTK_APPENDIX_5) \
+-                        -lvtkIO$(VTK_APPENDIX_5) \
+-                        -lvtkParallel$(VTK_APPENDIX_5) \
+-                        -lvtkGraphics$(VTK_APPENDIX_5)
+-        # in this case we need to disable c++11 or c++17
+-        CCFLAGS_STD = -std=c++11 -std=c++17
+-        CCFLAGS := $(filter-out $(CCFLAGS_STD),$(CCFLAGS))
+-    else
+-        VTK_APPENDIX := -$(VTK_APPENDIX)
+-        VTK_LIB_SET = 0
+-        ifneq ($(origin VTK_LIB), undefined)
+-            VTK_LIB_SET = 1
+-        else
+-            VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkParallelMPI$(VTK_APPENDIX).so' 2> /dev/null | tail -n 1))
+-            ifeq ($(VTK_LIB),-L)
+-                VTK_LIB =
+-            endif
+-        endif
+-        ifeq ($(AUTO_DEBUG),1)
+-            $(shell $(ECHO) "#vtk_lib: $(VTK_LIB)" >> $(AUTO_LOG_FILE))
+-            $(shell $(ECHO) "#appendix command: $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE)" >> $(AUTO_LOG_FILE))
+-        endif
+-        TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys$(VTK_APPENDIX) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+-        ifeq ($(TMP), -1)
+-            ifeq ($(AUTO_DEBUG),1)
+-                $(shell $(ECHO) "#attempting without appendix" >> $(AUTO_LOG_FILE))
+-            endif
+-            ifeq ($(VTK_LIB_SET), 0)
+-                VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkParallelMPI.so' 2> /dev/null | tail -n 1))
+-                ifeq ($(VTK_LIB),-L)
+-                    VTK_LIB =
+-                endif
+-            endif
+-            TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) -lvtksys $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+-            ifeq ($(TMP), -1)
+-                $(error 'Could not determine suitable appendix of VTK library with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_APPENDIX="$(VTK_APPENDIX)"')
+-            else
+-                # everything worked, so no appendix needed
+-                VTK_APPENDIX = $(EMPTY)
+-            endif
+-        endif
+-        VTKSET = 0
+-        ifeq ($(VTK_MAJOR_VERSION),6)
+-            VTKSET = 1
+-            VTK_ADDLIBS +=  -lvtkCommonCore$(VTK_APPENDIX) \
+-                            -lvtkIOCore$(VTK_APPENDIX) \
+-                            -lvtkIOXML$(VTK_APPENDIX) \
+-                            -lvtkIOLegacy$(VTK_APPENDIX) \
+-                            -lvtkIOImage$(VTK_APPENDIX) \
+-                            -lvtkCommonDataModel$(VTK_APPENDIX) \
+-                            -lvtkParallelCore$(VTK_APPENDIX) \
+-                            -lvtkParallelMPI$(VTK_APPENDIX) \
+-                            -lvtkCommonExecutionModel$(VTK_APPENDIX) \
+-                            -lvtkFiltersCore$(VTK_APPENDIX) \
+-                            -lvtksys$(VTK_APPENDIX) \
+-                            -lvtkCommonMisc$(VTK_APPENDIX) \
+-                            -lvtkCommonTransforms$(VTK_APPENDIX) \
+-                            -lvtkCommonMath$(VTK_APPENDIX) \
+-                            -lvtkIOXMLParser$(VTK_APPENDIX) \
+-                            -lvtkCommonSystem$(VTK_APPENDIX) \
+-                            -lvtkDICOMParser$(VTK_APPENDIX) \
+-                            -lvtkmetaio$(VTK_APPENDIX)
+-            # For VTK >= 6.2 we need to use lvtkIOParallelXML
+-            MINOR_GE_2 := $(shell [ $(VTK_MINOR_VERSION) -ge 2 ] && echo true)
+-            ifeq ($(MINOR_GE_2),true)
+-                VTK_ADDLIBS += -lvtkIOParallelXML$(VTK_APPENDIX)
+-            else
+-                VTK_ADDLIBS += -lvtkIOParallel$(VTK_APPENDIX)
+-                # in this case we need to disable c++11 or c++17
+-                CCFLAGS_STD = -std=c++11 -std=c++17
+-                CCFLAGS := $(filter-out $(CCFLAGS_STD),$(CCFLAGS))
+-            endif
+-            ifeq ($(VTK_LIB_SET), 0)
+-                VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkParallelMPI$(VTK_APPENDIX).so' 2> /dev/null | tail -n 1))
+-                ifeq ($(VTK_LIB),-L)
+-                    VTK_LIB =
+-                endif
+-            endif
+-        endif
+-        ifneq (, $(filter $(VTK_MAJOR_VERSION),7 8))
+-            VTKSET = 1
+-            VTK_ADDLIBS +=  -lvtkCommonCore$(VTK_APPENDIX) \
+-                            -lvtkIOCore$(VTK_APPENDIX) \
+-                            -lvtkIOXML$(VTK_APPENDIX) \
+-                            -lvtkIOLegacy$(VTK_APPENDIX) \
+-                            -lvtkIOImage$(VTK_APPENDIX) \
+-                            -lvtkCommonDataModel$(VTK_APPENDIX) \
+-                            -lvtkIOParallelXML$(VTK_APPENDIX) \
+-                            -lvtkParallelCore$(VTK_APPENDIX) \
+-                            -lvtkParallelMPI$(VTK_APPENDIX) \
+-                            -lvtkCommonExecutionModel$(VTK_APPENDIX) \
+-                            -lvtkFiltersCore$(VTK_APPENDIX) \
+-                            -lvtksys$(VTK_APPENDIX) \
+-                            -lvtkCommonMisc$(VTK_APPENDIX) \
+-                            -lvtkCommonTransforms$(VTK_APPENDIX) \
+-                            -lvtkCommonMath$(VTK_APPENDIX) \
+-                            -lvtkIOXMLParser$(VTK_APPENDIX) \
+-                            -lvtkCommonSystem$(VTK_APPENDIX) \
+-                            -lvtkDICOMParser$(VTK_APPENDIX) \
+-                            -lvtkmetaio$(VTK_APPENDIX)
+-            ifeq ($(VTK_LIB_SET), 0)
+-                VTK_LIB := -L$(dir $(shell find $(VTK_BASE_PATH)/lib* -name 'libvtkParallelMPI$(VTK_APPENDIX).so' 2> /dev/null | tail -n 1))
+-                ifeq ($(VTK_LIB),-L)
+-                    VTK_LIB =
+-                endif
+-            endif
+-            ifeq ($(VTK_MAJOR_VERSION),8)
+-                ifeq (, $(filter $(CXXVERSION),11 17))
+-                    $(error VTK version $(VTK_VERSION) requires support for -std=c++11 or -std=c++17 in the compiler flags)
+-                endif
+-            endif
+-        endif
+-        ifeq ($(VTKSET),0)
+-            TMP:=$(error Unsupported VTK version $(VTK_VERSION))
+-        endif
+-    endif
+-
+-    # Test the settings
+-    VTK_RPATH = -Wl,$(shell $(ECHO) $(VTK_LIB) | grep -oe '\-L[^ ]*' | sed 's/-L/-rpath,/g' | tr '\n' ',' | sed 's/,$$//')
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "#vtk_addlibs: $(VTK_ADDLIBS)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#vtk_rpath: $(VTK_RPATH)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#vtk compile test:" >> $(AUTO_LOG_FILE))
+-        TMP := $(shell $(ECHO) "\#include <vtkVersion.h> \n int main(){}" > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) &>> $(AUTO_LOG_FILE))
+-    endif
+-    TMP := $(shell $(ECHO) '\#include <vtkVersion.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(VTK_RPATH) $(EXTRA_LIB) $(VTK_LIB) $(VTK_INC) $(EXTRA_ADDLIBS) $(VTK_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile VTK example with VTK_INC="$(VTK_INC)", VTK_LIB="$(VTK_LIB)" and VTK_ADDLIBS="$(VTK_ADDLIBS)"')
+-    endif
+-    # Prepare environment
+-    LMP_INC += -DLAMMPS_VTK
+-    EXTRA_ADDLIBS += $(VTK_ADDLIBS)
+-    EXTRA_LIB += $(VTK_LIB)
+-    EXTRA_INC += $(VTK_INC)
+-
+-    # Write out VTK Data so that it can be used by CFDEMcoupling without detecting it again
+-    $(shell $(ECHO) 'OPTIONS_VTK_ADDLIBS = $(VTK_ADDLIBS)' >> $(OPTIONS_FILE))
+-    $(shell $(ECHO) 'OPTIONS_VTK_LIB = $(VTK_LIB)' >> $(OPTIONS_FILE))
+-    $(shell $(ECHO) 'OPTIONS_VTK_INC = $(VTK_INC)' >> $(OPTIONS_FILE))
+-endif
+-
+-# Superquadric particles
+-#
+-ifeq ($(USE_SUPERQUADRICS), "ON")
+-    REQUIRE_BOOST = 1
+-    ifeq ($(HAVE_MATH_SPECIAL_FUNCS),1)
+-        REQUIRE_BOOST = 0
+-    endif
+-    ifeq ($(HAVE_TR1_CMATH),1)
+-        REQUIRE_BOOST = 0
+-    endif
+-    # if we don't have beta from the standard library we need boost
+-    ifeq ($(REQUIRE_BOOST),1)
+-        BOOST_INC ?= $(BOOST_INC_USR)
+-        # Include test
+-        TMP := $(shell $(ECHO) '\#include "boost/math/special_functions/beta.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(BOOST_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-        ifeq ($(TMP), -1)
+-            $(error 'Could not compile boost example with BOOST_INC="$(BOOST_INC)" as boost/math/special_functions/beta.hpp could not be found')
+-        endif
+-        CCFLAGS += -DBOOST_INCLUDED
+-        EXTRA_INC += $(BOOST_INC)
+-    endif
+-    # Prepare environment
+-    LMP_INC += -DSUPERQUADRIC_ACTIVE_FLAG -DNONSPHERICAL_ACTIVE_FLAG
+-endif
+-
+-# JPG output for sphere renderings
+-#
+-ifeq ($(USE_JPG), "ON")
+-    JPG_INC ?= $(JPG_INC_USR)
+-    JPG_LIB ?= $(JPG_LIB_USR)
+-    JPG_ADDLIBS += -ljpeg
+-    # Test settings
+-    # Include test
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "#JPG_INC: $(JPG_INC)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#JPG_LIB: $(JPG_LIB)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "#JPG_ADDLIBS: $(JPG_ADDLIBS)" >> $(AUTO_LOG_FILE))
+-        $(shell $(ECHO) "jpg compile test:" >> $(AUTO_LOG_FILE))
+-    endif
+-    TMP := $(shell $(ECHO) '\#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile jpg example with JPG_INC="$(JPG_INC)"')
+-    endif
+-    ifeq ($(AUTO_DEBUG),1)
+-        $(shell $(ECHO) "jpg link test:" >> $(AUTO_LOG_FILE))
+-    endif
+-    # Linking test
+-    TMP := $(shell $(ECHO) '\#include <cstdlib> \n \#include <cstdio> \n \#include <jpeglib.h> \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(JPG_LIB) $(JPG_INC) $(EXTRA_ADDLIBS) $(JPG_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2>> $(AUTO_LOG_FILE) && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile and link jpg example with JPG_INC="$(JPG_INC)", JPG_LIB="$(JPG_LIB)" and JPG_ADDLIBS="$(JPG_ADDLIBS)"')
+-    endif
+-    # Prepare environment
+-    LMP_INC += -DLAMMPS_JPEG
+-    EXTRA_INC += $(JPG_INC)
+-    EXTRA_LIB += $(JPG_LIB)
+-    EXTRA_ADDLIBS += $(JPG_ADDLIBS)
+-endif
+-
+-# Polyhedral particles (premium only)
+-#
+-ifeq ($(USE_CONVEX), "ON")
+-    ifneq ($(origin CONVEX_INC_USR), undefined)
+-        CONVEX_INC ?= $(CONVEX_INC_USR)
+-    endif
+-    ifneq ($(origin CONVEX_LIB_USR), undefined)
+-        CONVEX_LIB ?= $(CONVEX_LIB_USR)
+-    endif
+-    # Defaults
+-    CONVEX_INC ?= -I$(LIB_PATH)/libccd/src
+-    CONVEX_LIB ?= -L$(LIB_PATH)/libccd/src
+-    # This should really not be required to be set
+-    CONVEX_ADDLIBS += $(CONVEX_ADDLIBS_USR)
+-    # This is the ccd library
+-    CONVEX_ADDLIBS += -lccd
+-    # Test settings
+-    # Link test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    # Automatic download and compilation if AUTODOWNLOAD_CONVEX is set
+-    ifeq ($(TMP), -1)
+-        ifeq ($(AUTOINSTALL_CONVEX), "ON")
+-            # Check if sources provide the convex surface model
+-            ifneq ($(wildcard ../surface_model_convex.h),)
+-                $(error 'It appears that you do not posses the source files for the convex hull surface model. Note that this is available only in the premium version of LIGGGHTS.')
+-            endif
+-            $(info 'Could not compile Convex (libccd) example. As AUTOINSTALL_CONVEX is set to "ON". libccd will now be automatically downloaded to $(LIB_PATH)')
+-            # Check if $(LIB_PATH)/libccd/src folder is available
+-            TMP := $(shell ls "$(LIB_PATH)/libccd/src" && echo 0 || echo -1)
+-            # If not download libccd
+-            ifeq ($(TMP), -1)
+-                # Create $(LIB_PATH) folder
+-                TMP := $(shell mkdir -p "$(LIB_PATH)" && echo 0 || echo -1)
+-                ifeq ($(TMP), -1)
+-                    $(error 'Could not create $(LIB_PATH) directory')
+-                endif
+-                # Check for git
+-                ifneq (, $(shell which git))
+-                    # Download git repository
+-                    TMP := $(shell git clone $(LIBCCD_GIT) $(LIB_PATH)/libccd && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Could not perform "git clone" of $(LIBCCD_GIT) into $(LIB_PATH)/libccd')
+-                    endif
+-                # Git not available
+-                else
+-                    # Check for wget
+-                    ifeq (,$(shell which wget))
+-                        $(error "Could not find either git or wget to download libccd. Please install either of the two in order to allow the auto-installation of libccd.")
+-                    endif
+-                    # Download zip file
+-                    TMP := $(shell wget $(LIBCCD_ZIP) -P $(LIB_PATH) &> /dev/null && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Failed to download libccd using wget. Please install libccd manually')
+-                    endif
+-                    # Check if unzip is available
+-                    ifeq (, $(shell which unzip))
+-                        $(error 'Could not find unzip. Please install it to allow the auto-installation of libccd.')
+-                    endif
+-                    # Unzip file
+-                    TMP := $(shell unzip $(LIB_PATH)/$(notdir $(LIBCCD_ZIP)) -d $(LIB_PATH) && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Could not unzip $(notdir $(LIBCCD_ZIP)) in $(LIB_PATH)')
+-                    endif
+-                endif
+-            endif
+-            # At this stage we now have libccd downloaded. Next we need to compile it
+-            OBJDIR := $(PWD)
+-            TMP := $(shell $(ECHO) '\#!/bin/bash \n cd "$(OBJDIR)/$(LIB_PATH)/libccd/src" \n make PREFIX="$(PWD)/../../" USE_DOUBLE=yes &> /dev/null' > $(TMPFILE))
+-            TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+-            ifeq ($(TMP), -1)
+-                $(error 'Compilation of libccd failed. Please install it manually')
+-            endif
+-        else
+-            $(error 'Could not compile and link Convex (libccd) example with CONVEX_INC="$(CONVEX_INC)", CONVEX_LIB="$(CONVEX_LIB)" and CONVEX_ADDLIBS="$(CONVEX_ADDLIBS)". AUTOINSTALL_CONVEX is not set to "ON" and thus we cannot continue.')
+-        endif
+-    endif
+-    # Include test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -E $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile Convex (libccd) example with CONVEX_INC="$(CONVEX_INC)"')
+-    endif
+-    # Link test
+-    TMP := $(shell $(ECHO) '\#include "ccd/ccd.h" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(CONVEX_LIB) $(CONVEX_INC) $(EXTRA_ADDLIBS) $(CONVEX_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile and link Convex (libccd) example with CONVEX_INC="$(CONVEX_INC)", CONVEX_LIB="$(CONVEX_LIB)" and CONVEX_ADDLIBS="$(CONVEX_ADDLIBS)"')
+-    endif
+-    # Prepare environment
+-    LMP_INC += -DNONSPHERICAL_ACTIVE_FLAG -DCONVEX_ACTIVE_FLAG
+-    EXTRA_INC += $(CONVEX_INC)
+-    EXTRA_LIB += $(CONVEX_LIB)
+-    EXTRA_ADDLIBS += $(CONVEX_ADDLIBS)
+-endif
+-
+-# MFEM support
+-ifeq ($(USE_MFEM), "ON")
+-    ifneq ($(origin MFEM_INC_USR), undefined)
+-        MFEM_INC ?= $(MFEM_INC_USR)
+-    endif
+-    ifneq ($(origin MFEM_LIB_USR), undefined)
+-        MFEM_LIB ?= $(MFEM_LIB_USR)
+-    endif
+-    ifneq ($(origin MFEM_ADDLIBS_USR), undefined)
+-        MFEM_ADDLIBS ?= $(MFEM_ADDLIBS_USR)
+-    endif
+-    # Defaults
+-    MFEM_INC ?= -I$(LIB_PATH)/mfem
+-    MFEM_LIB ?= -L$(LIB_PATH)/mfem
+-    MFEM_ADDLIBS += -lmfem
+-    # Link test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        ifeq ($(AUTOINSTALL_MFEM), "ON")
+-            $(info 'Could not compile MFEM example. As AUTOINSTALL_MFEM is set to "ON". MFEM will now be automatically downloaded to ../lib/mfem')
+-            # Check if $(LIB_PATH)/mfem folder is available
+-            TMP := $(shell ls $(LIB_PATH)/mfem && echo 0 || echo -1)
+-            # If not download MFEM
+-            ifeq ($(TMP), -1)
+-                # Create $(LIB_PATH) folder
+-                TMP := $(shell mkdir -p $(LIB_PATH) && echo 0 || echo -1)
+-                ifeq ($(TMP), -1)
+-                    $(error 'Could not create $(LIB_PATH) directory')
+-                endif
+-                # Check for git
+-                ifneq (, $(shell which git))
+-                    # Download git repository
+-                    TMP := $(shell git clone $(MFEM_GIT) $(LIB_PATH)/mfem && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Could not perform "git clone" of $(MFEM_GIT) into $(LIB_PATH)/mfem')
+-                    endif
+-                else                 # Git not available
+-                    ifeq (,$(shell which wget))
+-                        $(error "Could not find either git or wget to download MFEM. Please install either of the two in order to allow the auto-installation of libccd.")
+-                    endif
+-                    # Download zip file
+-                    TMP := $(shell wget -N $(MFEM_ZIP) -P $(LIB_PATH) &> /dev/null && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Failed to download MFEM using wget. Please install MFEM manually')
+-                    endif
+-                    # Check if tar is available
+-                    ifeq (, $(shell which tar))
+-                        $(error 'Could not find tar. Please install it to allow the auto-installation of MFEM.')
+-                    endif
+-                    # Untar file
+-                    TMP := $(shell tar zxvf $(LIB_PATH)/$(notdir $(MFEM_ZIP)) -C $(LIB_PATH) && echo 0 || echo -1)
+-                    ifeq ($(TMP), -1)
+-                        $(error 'Could not unzip $(notdir $(MFEM_ZIP)) in $(LIB_PATH)')
+-                    endif
+-                    ifeq ($(TMP), 0)
+-                        $(error 'Untar $(notdir $(MFEM_ZIP)) in $(LIB_PATH)')
+-                    endif
+-                    $(shell mv $(LIB_PATH)/mfem-$(MFEM_VERSION_TAG) $(LIB_PATH)/mfem)
+-                endif
+-            endif
+-            # At this stage we now have MFEM downloaded. Next we need to compile it
+-            TMP := $(shell ls $(LIB_PATH)/mfem/libmfem.a && echo 0 || echo -1)
+-            ifeq ($(TMP), -1)
+-                TMP := $(shell $(ECHO) '\#!/bin/bash \n cd $(LIB_PATH)/mfem \n make config \n make all -j 4' > $(TMPFILE))
+-                TMP := $(shell bash $(TMPFILE) && echo 0 || echo -1)
+-                ifeq ($(TMP), -1)
+-                    $(error 'Compilation of MFEM failed. Please install it manually')
+-                endif
+-            endif
+-        else
+-            $(error 'Could not compile MFEM example with MFEM_INC="$(MFEM_INC)"')
+-        endif
+-    endif
+-
+-
+-    # Include test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(EXTRA_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile MFEM example with MFEM_INC="$(MFEM_INC)"')
+-    endif
+-    # Link test
+-    TMP := $(shell $(ECHO) '\#include "mfem.hpp" \n int main(){}' > $(TMPFILE) && $(CXX) $(EXTRA_LIB) $(MFEM_INC) $(MFEM_LIB) $(EXTRA_ADDLIBS) $(MFEM_ADDLIBS) $(CCFLAGS) -xc++ -o /dev/null $(TMPFILE) 2> /dev/null && echo 0 || echo -1)
+-    ifeq ($(TMP), -1)
+-        $(error 'Could not compile and link MFEM example. Test was done with MFEM_INC="$(MFEM_INC)", MFEM_LIB="$(MFEM_LIB)" and MFEM_ADDLIBS="$(MFEM_ADDLIBS)"')
+-    endif
+-    # Prepare environment
+-    EXTRA_INC += $(MFEM_INC)
+-    EXTRA_LIB += $(MFEM_LIB)
+-    EXTRA_ADDLIBS += $(MFEM_ADDLIBS)
+-endif
+-
+-# Add pre-processor defines to includes
+-EXTRA_INC += $(LMP_INC)
+-
+-# For mingw redefine the target
+-ifeq ($(MINGW), 1)
+-    TARGET = $(EXE).exe
+-else
+-    TARGET = $(EXE)
+-endif
+-
+-$(shell rm $(TMPFILE))
+-
+-# ---------------------------------------------------------------------
+-# build rules and dependencies
+-# no need to edit this section
+-
+-include	Makefile.package.settings
+-include	Makefile.package
+-
+-EXTRA_INC += $(PKG_INC) $(PKG_SYSINC)
+-EXTRA_LIB += $(PKG_LIB) $(PKG_SYSLIB)
+-EXTRA_PATH += $(PKG_PATH) $(PKG_SYSPATH)
+-EXTRA_ADDLIBS += $(PKG_ADDLIBS) $(PKG_SYSADDLIBS)
+-
+-# convert extra_lib -L to a list of -rpath
+-# magic happens here:
+-# -Wl, is prepended to the string
+-# grep -oe finds all substrings that start with -L and end with a whitespace
+-# sed replaces -L with -rpath,
+-# tr replaces the \n from the grep output to ,
+-# sed removes the last , that is followed by EOL
+-EXTRA_RPATH = -Wl,$(shell $(ECHO) $(EXTRA_LIB) | grep -oe '\-L[^ ]*' | sed 's/-L/-rpath,/g' | tr '\n' ',' | sed 's/,$$//')
+-
+-# Path to src files
+-
+-ifeq ($(MINGW), 0)
+-    vpath %.cpp ..
+-    vpath %.h ..
+-endif
+-
+-# Link target
+-
+-ifeq ($(MINGW), 1)
+-$(EXE): $(TARGET) ../MAKE/mingw_cross.nsis
+-	makensis ../MAKE/mingw_cross.nsis
+-	(cd ..; zip -0 lammps-icms-win.zip lammps-icms-win.exe)
+-	touch $(EXE)
+-endif
+-
+-LIBTARGETS=
+-LIBEXE=$(EXE)
+-SHLIBEXE=$(EXE)
+-# Only build if we come from the default makefile
+-# this implies that our EXE variable will not be ../lib*.{so,a}
+-ifeq ($(filter ../lib%,$(filter %.a %.so, $(EXE))),)
+-    # switch through different BUILD_LIBRARIES flags
+-    ifeq ($(BUILD_LIBRARIES), "SHARED")
+-        LIBTARGETS += shlib
+-        SHLIBEXE=$(dir $(EXE))lib$(notdir $(EXE)).so
+-    endif
+-    ifeq ($(BUILD_LIBRARIES), "STATIC")
+-        LIBTARGETS += lib
+-        LIBEXE=$(dir $(EXE))lib$(notdir $(EXE)).a
+-    endif
+-    ifeq ($(BUILD_LIBRARIES), "ALL")
+-        LIBTARGETS += shlib lib
+-        SHLIBEXE=$(dir $(EXE))lib$(notdir $(EXE)).so
+-        LIBEXE=$(dir $(EXE))lib$(notdir $(EXE)).a
+-    endif
+-endif
+-
+-# Write variables for M2M in coupling
+-$(shell $(ECHO) 'ifeq ($$(READ_M2M_VARS),1)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) '    ARCHIVE = $(ARCHIVE)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) '    ARFLAGS = $(ARFLAGS)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) '    CXX = $(CXX)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) '    CCFLAGS = $(CCFLAGS)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) '    DEPFLAGS = $(DEPFLAGS)' >> $(OPTIONS_FILE))
+-$(shell $(ECHO) 'endif' >> $(OPTIONS_FILE))
+-
+-$(TARGET):	$(OBJ) $(LIBTARGETS)
+-	$(LINK) $(LDFLAGS) $(OBJ) $(EXTRA_PATH) $(EXTRA_RPATH) $(EXTRA_LIB) $(EXTRA_ADDLIBS) -o $(EXE)
+-	$(SIZE) $(EXE)
+-
+-# Library targets
+-
+-lib:	$(OBJ)
+-	$(ARCHIVE) $(ARFLAGS) $(LIBEXE) $(OBJ)
+-
+-shlib:	$(OBJ)
+-	$(CXX) $(CCFLAGS) $(SHFLAGS) $(SHLIBFLAGS) $(EXTRA_PATH) -o $(SHLIBEXE) \
+-        $(OBJ) $(EXTRA_ADDLIBS) $(EXTRA_RPATH) $(EXTRA_LIB)
+-	@rm -rf ../libliggghts.so
+-	@ln -s $(notdir $(SHLIBEXE)) ../libliggghts.so
+-
+-# Compilation rules
+-
+-%.o:%.cpp
+-	$(CXX) $(CCFLAGS) $(SHFLAGS) $(EXTRA_PATH) $(EXTRA_INC) -c $<
+-
+-%.d:%.cpp
+-	$(CXX) $(CCFLAGS) $(EXTRA_INC) $(DEPFLAGS) $< > $@
+-
+-# Individual dependencies
+-
+-ifeq ($(MINGW), 1)
+-mpi.o:  ../STUBS/mpi.c ../STUBS/mpi.h
+-	$(CXX) $(CCFLAGS) $(EXTRA_INC) -c $<
+-endif
+-
+-DEPENDS = $(OBJ:.o=.d)
+-sinclude $(DEPENDS)
diff --git a/c/CFITSIO/CFITSIO-3.49-GCCcore-11.3.0.eb b/c/CFITSIO/CFITSIO-3.49-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..ae9e860
--- /dev/null
+++ b/c/CFITSIO/CFITSIO-3.49-GCCcore-11.3.0.eb
@@ -0,0 +1,41 @@
+# Author: Denis Kristak
+easyblock = 'ConfigureMake'
+
+name = 'CFITSIO'
+version = '3.49'
+
+homepage = 'https://heasarc.gsfc.nasa.gov/fitsio/'
+description = """CFITSIO is a library of C and Fortran subroutines for reading and writing data files in
+FITS (Flexible Image Transport System) data format."""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/']
+sources = ['%%(namelower)s-%s.tar.gz' % version]
+patches = ['CFITSIO-3.48_install_test_data.patch']
+checksums = [
+    '5b65a20d5c53494ec8f638267fca4a629836b7ac8dd0ef0266834eab270ed4b3',  # cfitsio-3.49.tar.gz
+    'dbf16f857f133468fc1e6a793c6e89fca66d54796593e03606f2722a2a980c0c',  # CFITSIO-3.48_install_test_data.patch
+]
+
+# curl for HTTPs support
+dependencies = [('cURL', '7.83.0')]
+
+builddependencies = [('binutils', '2.38')]
+
+# make would create just static libcfitsio.a. 
+# Let's create dynamic lib and testprog too.
+buildopts = '&& make shared && make testprog'
+
+sanity_check_paths = {
+    'files': ['lib/libcfitsio.a', 'lib/libcfitsio.%s' % SHLIB_EXT],
+    'dirs': ['include'],
+}
+
+sanity_check_commands = [
+    ('cd %(installdir)s/share && testprog'),
+]
+
+moduleclass = 'lib'
+
diff --git a/c/CGAL/CGAL-4.14.1-foss-2022a-Python-2.7.18.eb b/c/CGAL/CGAL-4.14.1-foss-2022a-Python-2.7.18.eb
new file mode 100644
index 0000000..8bab7b9
--- /dev/null
+++ b/c/CGAL/CGAL-4.14.1-foss-2022a-Python-2.7.18.eb
@@ -0,0 +1,38 @@
+name = 'CGAL'
+version = '4.14.1'
+versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://www.cgal.org/'
+description = """The goal of the CGAL Open Source Project is to provide easy access to efficient
+ and reliable geometric algorithms in the form of a C++ library."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'strict': True}
+
+source_urls = ['https://github.com/CGAL/cgal/releases/download/releases%2FCGAL-%(version)s']
+sources = [SOURCE_TAR_XZ]
+checksums = ['d4ec2528b88a7c3a07b0b86db96c216822f85b951bf4bc7f9d1f26bf6c369afe']
+
+builddependencies = [
+    ('CMake', '3.15.3'),
+    ('Eigen', '3.3.9'),
+]
+
+dependencies = [
+    ('zlib', '1.2.12'),
+    ('Python', '2.7.18'),
+    ('Boost', '1.79.0'),
+    ('MPFR', '4.1.0'),
+    ('GMP', '6.2.1'),
+    ('Mesa', '22.0.3'),
+    ('libGLU', '9.0.2'),
+    ('Qt5', '5.13.1'),
+]
+
+configopts = '-DOPENGL_INCLUDE_DIR="$EBROOTMESA/include;$EBROOTLIBGLU/include" '
+configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
+configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
+configopts += "-DWITH_ZLIB=ON -DWITH_MPFR=ON -DWITH_OpenGL=ON -DWITH_Eigen3=ON "
+configopts += "-DWITH_GMPXX=ON -DWITH_LAPACK=ON -DWITH_BLAS=ON "
+
+moduleclass = 'numlib'
diff --git a/c/CLHEP/CLHEP-2.4.6.2-GCC-11.3.0.eb b/c/CLHEP/CLHEP-2.4.6.2-GCC-11.3.0.eb
new file mode 100644
index 0000000..f557d9b
--- /dev/null
+++ b/c/CLHEP/CLHEP-2.4.6.2-GCC-11.3.0.eb
@@ -0,0 +1,29 @@
+easyblock = 'CMakeMake'
+
+name = 'CLHEP'
+version = '2.4.6.2'
+
+homepage = 'https://proj-clhep.web.cern.ch/proj-clhep/'
+description = """The CLHEP project is intended to be a set of HEP-specific foundation and
+ utility classes such as random generators, physics vectors, geometry and linear algebra.
+ CLHEP is structured in a set of packages independent of any external package."""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://proj-clhep.web.cern.ch/proj-clhep/dist1/']
+sources = [SOURCELOWER_TGZ]
+checksums = ['aded73e49bac85a5b4e86f64a0ee3d6f3cfe5551b0f7731c78b6d8f9dac6e8dc']
+
+builddependencies = [
+    ('CMake', '3.24.3'),
+]
+
+sanity_check_paths = {
+    'files': ['bin/clhep-config', 'lib/libCLHEP.a', 'lib/libCLHEP.%s' % SHLIB_EXT],
+    'dirs': ['include/CLHEP'],
+}
+
+sanity_check_commands = ["clhep-config --help"]
+
+moduleclass = 'numlib'
diff --git a/c/CMake/CMake-3.11.4-GCCcore-11.3.0.eb b/c/CMake/CMake-3.11.4-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..27e1f63
--- /dev/null
+++ b/c/CMake/CMake-3.11.4-GCCcore-11.3.0.eb
@@ -0,0 +1,35 @@
+name = 'CMake'
+version = '3.11.4'
+
+homepage = 'https://www.cmake.org'
+
+description = """
+ CMake, the cross-platform, open-source build system.  CMake is a family of
+ tools designed to build, test and package software.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://www.cmake.org/files/v%(version_major_minor)s']
+sources = [SOURCELOWER_TAR_GZ]
+checksums = ['8f864e9f78917de3e1483e256270daabc4a321741592c5b36af028e72bff87f5']
+
+builddependencies = [
+    ('binutils', '2.38'),
+]
+
+dependencies = [
+    ('ncurses', '6.3'),
+    ('zlib', '1.2.12'),
+    ('bzip2', '1.0.8'),
+    ('cURL', '7.83.0'),
+    # OS dependency should be preferred if the os version is more recent then this version,
+    # it's nice to have an up to date openssl for security reasons
+    ('OpenSSL', '1.1', '', SYSTEM),
+]
+
+#osdependencies = [
+#    ('openssl-devel', 'libssl-dev', 'libopenssl-devel'),
+#]
+
+moduleclass = 'devel'
diff --git a/c/CMake/CMake-3.15.3-GCCcore-11.3.0.eb b/c/CMake/CMake-3.15.3-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..10ae529
--- /dev/null
+++ b/c/CMake/CMake-3.15.3-GCCcore-11.3.0.eb
@@ -0,0 +1,39 @@
+name = 'CMake'
+version = '3.15.3'
+
+homepage = 'https://www.cmake.org'
+
+description = """
+ CMake, the cross-platform, open-source build system.  CMake is a family of
+ tools designed to build, test and package software.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://www.cmake.org/files/v%(version_major_minor)s']
+sources = [SOURCELOWER_TAR_GZ]
+patches = ['CMake-%(version)s-fix-toc-flag.patch']
+checksums = [
+    '13958243a01365b05652fa01b21d40fa834f70a9e30efa69c02604e64f58b8f5',  # cmake-3.15.3.tar.gz
+    '4c424bfe3a5476ec1017ad2518a178658b7f2d43a076384f0da81f38d063c8f2',  # CMake-3.15.3-fix-toc-flag.patch
+]
+
+builddependencies = [
+    ('binutils', '2.38'),
+]
+
+dependencies = [
+    ('ncurses', '6.3'),
+    ('zlib', '1.2.12'),
+    ('bzip2', '1.0.8'),
+    ('cURL', '7.83.0'),
+    # OS dependency should be preferred if the os version is more recent then this version,
+    # it's nice to have an up to date openssl for security reasons
+    ('OpenSSL', '1.1', '', SYSTEM),
+]
+
+#osdependencies = [
+#    ('openssl-devel', 'libssl-dev', 'libopenssl-devel'),
+#]
+
+moduleclass = 'devel'
diff --git a/c/CMake/CMake-3.15.3-fix-toc-flag.patch b/c/CMake/CMake-3.15.3-fix-toc-flag.patch
new file mode 100644
index 0000000..35bea6b
--- /dev/null
+++ b/c/CMake/CMake-3.15.3-fix-toc-flag.patch
@@ -0,0 +1,110 @@
+Fix --no-multi-toc: unknown option on gold linker
+See https://gitlab.kitware.com/cmake/cmake/issues/20076
+
+diff -Naurd cmake-3.15.3/bootstrap cmake-3.15.3-patched/bootstrap
+--- cmake-3.15.3/bootstrap	2019-09-04 15:58:03.000000000 +0200
++++ cmake-3.15.3-patched/bootstrap	2019-12-09 13:13:29.004220868 +0100
+@@ -419,6 +419,7 @@
+   cmTargetCompileOptionsCommand \
+   cmTargetIncludeDirectoriesCommand \
+   cmTargetLinkLibrariesCommand \
++  cmTargetLinkOptionsCommand \
+   cmTargetPropCommandBase \
+   cmTargetPropertyComputer \
+   cmTargetSourcesCommand \
+diff -Naurd cmake-3.15.3/CompileFlags.cmake cmake-3.15.3-patched/CompileFlags.cmake
+--- cmake-3.15.3/CompileFlags.cmake	2019-09-04 15:58:00.000000000 +0200
++++ cmake-3.15.3-patched/CompileFlags.cmake	2019-12-09 13:13:29.004220868 +0100
+@@ -54,12 +54,20 @@
+ endif()
+
+ # Workaround for TOC Overflow on ppc64
++set(bigTocFlag "")
+ if(CMAKE_SYSTEM_NAME STREQUAL "AIX" AND
+    CMAKE_SYSTEM_PROCESSOR MATCHES "powerpc")
+-  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-bbigtoc")
++  set(bigTocFlag "-Wl,-bbigtoc")
+ elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND
+    CMAKE_SYSTEM_PROCESSOR MATCHES "ppc64")
+-  set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--no-multi-toc")
++  set(bigTocFlag "-Wl,--no-multi-toc")
++endif()
++if(bigTocFlag)
++  include(CheckCXXLinkerFlag)
++  check_cxx_linker_flag(${bigTocFlag} BIG_TOC_FLAG_SUPPORTED)
++  if(BIG_TOC_FLAG_SUPPORTED)
++    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${bigTocFlag}")
++  endif()
+ endif()
+
+ if (CMAKE_CXX_COMPILER_ID STREQUAL SunPro AND
+diff -Naurd cmake-3.15.3/Source/cmCommands.cxx cmake-3.15.3-patched/Source/cmCommands.cxx
+--- cmake-3.15.3/Source/cmCommands.cxx	2019-09-04 15:58:01.000000000 +0200
++++ cmake-3.15.3-patched/Source/cmCommands.cxx	2019-12-09 13:13:29.043221389 +0100
+@@ -74,6 +74,7 @@
+ #include "cmTargetCompileOptionsCommand.h"
+ #include "cmTargetIncludeDirectoriesCommand.h"
+ #include "cmTargetLinkLibrariesCommand.h"
++#include "cmTargetLinkOptionsCommand.h"
+ #include "cmTargetSourcesCommand.h"
+ #include "cmTryCompileCommand.h"
+ #include "cmTryRunCommand.h"
+@@ -102,7 +103,6 @@
+ #  include "cmSourceGroupCommand.h"
+ #  include "cmSubdirDependsCommand.h"
+ #  include "cmTargetLinkDirectoriesCommand.h"
+-#  include "cmTargetLinkOptionsCommand.h"
+ #  include "cmUseMangledMesaCommand.h"
+ #  include "cmUtilitySourceCommand.h"
+ #  include "cmVariableRequiresCommand.h"
+@@ -259,6 +259,8 @@
+                            new cmTargetIncludeDirectoriesCommand);
+   state->AddBuiltinCommand("target_link_libraries",
+                            new cmTargetLinkLibrariesCommand);
++  state->AddBuiltinCommand("target_link_options",
++                           new cmTargetLinkOptionsCommand);
+   state->AddBuiltinCommand("target_sources", new cmTargetSourcesCommand);
+   state->AddBuiltinCommand("try_compile", new cmTryCompileCommand);
+   state->AddBuiltinCommand("try_run", new cmTryRunCommand);
+@@ -277,8 +279,6 @@
+   state->AddBuiltinCommand("install_programs", new cmInstallProgramsCommand);
+   state->AddBuiltinCommand("add_link_options", new cmAddLinkOptionsCommand);
+   state->AddBuiltinCommand("link_libraries", new cmLinkLibrariesCommand);
+-  state->AddBuiltinCommand("target_link_options",
+-                           new cmTargetLinkOptionsCommand);
+   state->AddBuiltinCommand("target_link_directories",
+                            new cmTargetLinkDirectoriesCommand);
+   state->AddBuiltinCommand("load_cache", new cmLoadCacheCommand);
+diff -Naurd cmake-3.15.3/Source/Modules/CheckCXXLinkerFlag.cmake cmake-3.15.3-patched/Source/Modules/CheckCXXLinkerFlag.cmake
+--- cmake-3.15.3/Source/Modules/CheckCXXLinkerFlag.cmake	1970-01-01 01:00:00.000000000 +0100
++++ cmake-3.15.3-patched/Source/Modules/CheckCXXLinkerFlag.cmake	2019-12-09 13:13:29.024221135 +0100
+@@ -0,0 +1,29 @@
++# Distributed under the OSI-approved BSD 3-Clause License.  See accompanying
++# file Copyright.txt or https://cmake.org/licensing for details.
++
++include_guard(GLOBAL)
++include(CheckCXXSourceCompiles)
++include(CMakeCheckCompilerFlagCommonPatterns)
++
++function(check_cxx_linker_flag _flag _var)
++  if(CMAKE_VERSION VERSION_LESS "3.14")
++    set(CMAKE_REQUIRED_LIBRARIES "${_flag}")
++  else()
++    set(CMAKE_REQUIRED_LINK_OPTIONS "${_flag}")
++  endif()
++
++  # Normalize locale during test compilation.
++  set(_locale_vars LC_ALL LC_MESSAGES LANG)
++  foreach(v IN LISTS _locale_vars)
++    set(_locale_vars_saved_${v} "$ENV{${v}}")
++    set(ENV{${v}} C)
++  endforeach()
++  check_compiler_flag_common_patterns(_common_patterns)
++  check_cxx_source_compiles("int main() { return 0; }" ${_var}
++    ${_common_patterns}
++    )
++  foreach(v IN LISTS _locale_vars)
++    set(ENV{${v}} ${_locale_vars_saved_${v}})
++  endforeach()
++  set(${_var} "${${_var}}" PARENT_SCOPE)
++endfunction()
diff --git a/c/COLMAP/COLMAP-3.9-foss-2022a-CUDA-11.7.0.eb b/c/COLMAP/COLMAP-3.9-foss-2022a-CUDA-11.7.0.eb
new file mode 100644
index 0000000..f17a487
--- /dev/null
+++ b/c/COLMAP/COLMAP-3.9-foss-2022a-CUDA-11.7.0.eb
@@ -0,0 +1,54 @@
+easyblock = 'CMakeNinja'
+
+name = 'COLMAP'
+version = '3.9'
+versionsuffix = '-CUDA-11.7.0'
+
+homepage = 'https://colmap.github.io'
+description = """ COLMAP is a general-purpose Structure-from-Motion (SfM) and Multi-View Stereo (MVS)
+ pipeline with a graphical and command-line interface. It offers a wide range of features for 
+ reconstruction of ordered and unordered image collections. """
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://github.com/colmap/colmap']
+sources = [SOURCE_TAR_GZ]
+
+#Download manually. It only has 3.8
+#sources = [{
+#    'filename': "COLMAP-%(version)s.tar.gz",
+#    'git_config': {
+#        'url': 'https://github.com/colmap',
+#        'repo_name': 'colmap',
+#        'tag': '3.9',
+#    },
+#}]
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('Ninja', '1.10.2'),
+]
+
+dependencies = [
+    ('Qt5', '5.15.5'),
+    ('CGAL', '4.14.3'),
+    ('Boost', '1.79.0'),
+    ('SQLite', '3.38.3'),
+    ('glew', '2.1.0'),
+    ('FreeImage', '3.18.0'),
+    ('FLANN', '1.9.1'),
+    ('googletest', '1.11.0'),
+    ('ceres-solver', '2.2.0', '-CUDA-11.7.0'),
+]
+
+configopts = "-DCMAKE_CUDA_ARCHITECTURES=all "
+
+sanity_check_paths = {
+    'files': ['bin/colmap'],
+    'dirs': []
+}
+
+sanity_check_commands = ["colmap -h"]
+
+moduleclass = 'vis'
+
diff --git a/c/CREST/CREST-2.12.eb b/c/CREST/CREST-2.12.eb
new file mode 100644
index 0000000..bd50193
--- /dev/null
+++ b/c/CREST/CREST-2.12.eb
@@ -0,0 +1,26 @@
+easyblock = 'PackedBinary'
+
+name = 'CREST'
+version = '2.12'
+
+homepage = 'https://crest-lab.github.io/crest-docs/'
+description = """CREST was developed as a utility and driver program for the semiempirical quantum chemistry package
+ xtb. The programs name originated as an abbreviation for Conformer–Rotamer Ensemble Sampling Tool as it was developed
+ as a program for conformational sampling at the extended tight-binding level GFN-xTB. Since then several functionalities
+ have been added to the code. In its current state, the program provides a variety of sampling procedures, for example for
+ improved thermochemistry, or solvation. Generally, CREST functions as an IO-based scheduler for the xtb program and as tool
+ for analyzing structure ensembles."""
+
+toolchain = SYSTEM
+
+source_urls = ['https://github.com/crest-lab/crest/releases/download/v%(version)s/']
+sources = ['%(namelower)s.zip']
+
+sanity_check_paths = {
+    'files': ['%s' % name.lower()],
+    'dirs': [],
+}
+
+sanity_check_commands = ["crest -h", "crest --cite"]
+
+moduleclass = 'chem'
diff --git a/c/Caffe/Caffe-1.0-foss-2022a-CUDA-11.7.0-Python-3.10.4.eb b/c/Caffe/Caffe-1.0-foss-2022a-CUDA-11.7.0-Python-3.10.4.eb
new file mode 100644
index 0000000..e2914f7
--- /dev/null
+++ b/c/Caffe/Caffe-1.0-foss-2022a-CUDA-11.7.0-Python-3.10.4.eb
@@ -0,0 +1,85 @@
+# -*- mode: python; -*-
+# EasyBuild reciPY for Caffe as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2017 UL HPC
+# Authors::   UL HPC Team <hpc-sysadmins@uni.lu>
+# License::   MIT/GPL
+#
+easyblock = 'CMakeMake'
+
+name = 'Caffe'
+version = '1.0'
+
+local_cudaversion = '11.7.0'
+versionsuffix = '-CUDA-%s-Python-%%(pyver)s' % local_cudaversion
+
+homepage = 'https://github.com/BVLC/caffe'
+description = """
+Caffe is a deep learning framework made with expression, speed,
+and modularity in mind. It is developed by the Berkeley Vision
+and Learning Center (BVLC) and community contributors.
+"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True}
+
+patches = [
+	'Caffe-1.0_Spartan_cuDNN_version.patch',
+	'Caffe-1.0_eb_flexiblas.patch',
+	'Caffe-1.0_gpu_data.patch',
+
+]
+
+#source_urls = ['https://github.com/BVLC/caffe/archive/']
+#sources = ['%(version)s.tar.gz']
+sources = [{
+	'filename': 'caffe-1.0-qengineering.tar.gz',
+	'git_config': {
+		'url': 'https://github.com/qengineering',
+		'repo_name' : 'caffe',
+		'commit' : '272c42d',
+	}
+}]
+
+#checksums = ['71d3c9eb8a183150f965a465824d01fe82826c22505f7aa314f700ace03fa77f']
+
+builddependencies = [
+    ('CMake', '3.24.3'),
+]
+
+# See http://caffe.berkeleyvision.org/installation.html
+dependencies = [
+    ('Python', '3.10.4'),
+    ('Boost', '1.79.0'),
+    ('Boost.Python', '1.79.0'),
+    ('protobuf', '3.11.4'),
+    ('protobuf-python', '3.11.4'),
+    ('glog', '0.6.0'),
+    ('gflags', '2.2.2'),
+    ('HDF5', '1.12.2'),
+    ('LMDB', '0.9.29'),
+    ('LevelDB', '1.18'),
+    ('snappy', '1.1.9'),
+    ('scikit-image', '0.19.3'),
+    ('cuDNN', '8.4.1.50', '-CUDA-' + local_cudaversion, True),
+    ('OpenCV', '4.6.0', '-contrib'),
+#    ('ATLAS', '3.10.2', '-LAPACK-3.10.1'),
+    ('FlexiBLAS', '3.2.0'),
+]
+
+# Known NVIDIA GPU achitectures Caffe 1.0 can be compiled for, and not lower than 3.0 supported by CUDA 9.1:
+local_cuda_compute_capabilities = '"60 61 62 70 72 75 80 86 87"'
+
+configopts = '-DBLAS=flexi -DCPU_ONLY=0 '
+configopts += '-DUSE_CUDNN=1 -DCUDA_ARCH_BIN=%s -DCUDA_ARCH_NAME=Manual' % local_cuda_compute_capabilities
+
+modextrapaths = {'PYTHONPATH': ['python']}
+
+sanity_check_paths = {
+    'files': ['bin/caffe', 'include/caffe/proto/caffe.pb.h', 'lib64/libproto.a', 'lib64/libcaffe.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+sanity_check_commands = [('python', "-c 'import caffe'")]
+
+moduleclass = 'devel'
diff --git a/c/Caffe/Caffe-1.0_Spartan_cuDNN_version.patch b/c/Caffe/Caffe-1.0_Spartan_cuDNN_version.patch
new file mode 100644
index 0000000..0f44387
--- /dev/null
+++ b/c/Caffe/Caffe-1.0_Spartan_cuDNN_version.patch
@@ -0,0 +1,11 @@
+--- foss-2022a-CUDA-11.7.0-Python-3.10.4.orig/caffe-1.0/cmake/Cuda.cmake	2023-11-01 12:56:23.546270000 +1100
++++ foss-2022a-CUDA-11.7.0-Python-3.10.4/caffe-1.0/cmake/Cuda.cmake	2023-11-01 16:37:08.507356000 +1100
+@@ -192,7 +192,7 @@
+     set(HAVE_CUDNN  TRUE PARENT_SCOPE)
+     set(CUDNN_FOUND TRUE PARENT_SCOPE)
+ 
+-    file(READ ${CUDNN_INCLUDE}/cudnn.h CUDNN_VERSION_FILE_CONTENTS)
++    file(READ ${CUDNN_INCLUDE}/cudnn_version.h CUDNN_VERSION_FILE_CONTENTS)
+ 
+     # cuDNN v3 and beyond
+     string(REGEX MATCH "define CUDNN_MAJOR * +([0-9]+)"
diff --git a/c/Caffe/Caffe-1.0_eb_flexiblas.patch b/c/Caffe/Caffe-1.0_eb_flexiblas.patch
new file mode 100644
index 0000000..6ce31d0
--- /dev/null
+++ b/c/Caffe/Caffe-1.0_eb_flexiblas.patch
@@ -0,0 +1,95 @@
+--- foss-2022a-CUDA-11.7.0-Python-3.10.4.orig/caffe/Makefile	2023-11-02 13:33:17.323940000 +1100
++++ foss-2022a-CUDA-11.7.0-Python-3.10.4/caffe/Makefile	2023-11-02 16:02:36.809336000 +1100
+@@ -374,6 +374,9 @@
+ else ifeq ($(BLAS), open)
+ 	# OpenBLAS
+ 	LIBRARIES += openblas
++else ifeq ($(BLAS), flexi)
++	# OpenBLAS
++	LIBRARIES += flexiblas
+ else
+ 	# ATLAS
+ 	ifeq ($(LINUX), 1)
+diff -Nru foss-2022a-CUDA-11.7.0-Python-3.10.4.orig/caffe/cmake/Dependencies.cmake foss-2022a-CUDA-11.7.0-Python-3.10.4/caffe/cmake/Dependencies.cmake
+--- foss-2022a-CUDA-11.7.0-Python-3.10.4.orig/caffe/cmake/Dependencies.cmake	2023-11-02 13:33:17.307951000 +1100
++++ foss-2022a-CUDA-11.7.0-Python-3.10.4/caffe/cmake/Dependencies.cmake	2023-11-02 15:24:26.270480000 +1100
+@@ -92,6 +92,10 @@
+     find_package(OpenBLAS REQUIRED)
+     include_directories(SYSTEM ${OpenBLAS_INCLUDE_DIR})
+     list(APPEND Caffe_LINKER_LIBS ${OpenBLAS_LIB})
++  elseif(BLAS STREQUAL "Flexi" OR BLAS STREQUAL "flexi")
++    find_package(FlexiBLAS REQUIRED)
++    include_directories(SYSTEM ${FlexiBLAS_INCLUDE_DIR})
++    list(APPEND Caffe_LINKER_LIBS ${FlexiBLAS_LIB})
+   elseif(BLAS STREQUAL "MKL" OR BLAS STREQUAL "mkl")
+     find_package(MKL REQUIRED)
+     include_directories(SYSTEM ${MKL_INCLUDE_DIR})
+diff -Nru foss-2022a-CUDA-11.7.0-Python-3.10.4.orig/caffe/cmake/Modules/FindFlexiBLAS.cmake foss-2022a-CUDA-11.7.0-Python-3.10.4/caffe/cmake/Modules/FindFlexiBLAS.cmake
+--- foss-2022a-CUDA-11.7.0-Python-3.10.4.orig/caffe/cmake/Modules/FindFlexiBLAS.cmake	1970-01-01 10:00:00.000000000 +1000
++++ foss-2022a-CUDA-11.7.0-Python-3.10.4/caffe/cmake/Modules/FindFlexiBLAS.cmake	2023-11-02 15:25:28.704472000 +1100
+@@ -0,0 +1,64 @@
++
++
++SET(Flexi_BLAS_INCLUDE_SEARCH_PATHS
++  /usr/include
++  /usr/include/flexiblas
++  /usr/include/flexiblas-base
++  /usr/local/include
++  /usr/local/include/flexiblas
++  /usr/local/include/flexiblas-base
++  /opt/FlexiBLAS/include
++  $ENV{FlexiBLAS_HOME}
++  $ENV{FlexiBLAS_HOME}/include
++)
++
++SET(Flexi_BLAS_LIB_SEARCH_PATHS
++        /lib/
++        /lib/flexiblas-base
++        /lib64/
++        /usr/lib
++        /usr/lib/flexiblas-base
++        /usr/lib64
++        /usr/local/lib
++        /usr/local/lib64
++        /opt/FlexiBLAS/lib
++        $ENV{FlexiBLAS}cd
++        $ENV{FlexiBLAS}/lib
++        $ENV{FlexiBLAS_HOME}
++        $ENV{FlexiBLAS_HOME}/lib
++ )
++
++FIND_PATH(FlexiBLAS_INCLUDE_DIR NAMES cblas.h PATHS ${Flexi_BLAS_INCLUDE_SEARCH_PATHS})
++FIND_LIBRARY(FlexiBLAS_LIB NAMES flexiblas PATHS ${Flexi_BLAS_LIB_SEARCH_PATHS})
++
++SET(FlexiBLAS_FOUND ON)
++
++#    Check include files
++IF(NOT FlexiBLAS_INCLUDE_DIR)
++    SET(FlexiBLAS_FOUND OFF)
++    MESSAGE(STATUS "Could not find FlexiBLAS include. Turning FlexiBLAS_FOUND off")
++ENDIF()
++
++#    Check libraries
++IF(NOT FlexiBLAS_LIB)
++    SET(FlexiBLAS_FOUND OFF)
++    MESSAGE(STATUS "Could not find FlexiBLAS lib. Turning FlexiBLAS_FOUND off")
++ENDIF()
++
++IF (FlexiBLAS_FOUND)
++  IF (NOT FlexiBLAS_FIND_QUIETLY)
++    MESSAGE(STATUS "Found FlexiBLAS libraries: ${FlexiBLAS_LIB}")
++    MESSAGE(STATUS "Found FlexiBLAS include: ${FlexiBLAS_INCLUDE_DIR}")
++  ENDIF (NOT FlexiBLAS_FIND_QUIETLY)
++ELSE (FlexiBLAS_FOUND)
++  IF (FlexiBLAS_FIND_REQUIRED)
++    MESSAGE(FATAL_ERROR "Could not find FlexiBLAS")
++  ENDIF (FlexiBLAS_FIND_REQUIRED)
++ENDIF (FlexiBLAS_FOUND)
++
++MARK_AS_ADVANCED(
++    FlexiBLAS_INCLUDE_DIR
++    FlexiBLAS_LIB
++    FlexiBLAS
++)
++
+
diff --git a/c/Caffe/Caffe-1.0_gpu_data.patch b/c/Caffe/Caffe-1.0_gpu_data.patch
new file mode 100644
index 0000000..89166a3
--- /dev/null
+++ b/c/Caffe/Caffe-1.0_gpu_data.patch
@@ -0,0 +1,153 @@
+From a76a6fbef4c018b1354ebc884af70675597faecc Mon Sep 17 00:00:00 2001
+From: haoran <hrwangchengdu@hotmail.com>
+Date: Sat, 30 Jan 2016 01:55:32 +0800
+Subject: [PATCH 1/3] add interfaces for mxnet
+
+---
+ include/caffe/blob.hpp  |  3 +++
+ include/caffe/layer.hpp | 19 +++++++++++++++++++
+ src/caffe/blob.cpp      | 18 ++++++++++++++++++
+ 3 files changed, 40 insertions(+)
+
+diff --git a/include/caffe/blob.hpp b/include/caffe/blob.hpp
+index af360ac24bd..2eab1666a60 100644
+--- a/include/caffe/blob.hpp
++++ b/include/caffe/blob.hpp
+@@ -218,6 +218,9 @@ class Blob {
+ 
+   const Dtype* cpu_data() const;
+   void set_cpu_data(Dtype* data);
++  void set_cpu_diff(Dtype* data);
++  void set_gpu_data(Dtype* data);
++  void set_gpu_diff(Dtype* data);
+   const int* gpu_shape() const;
+   const Dtype* gpu_data() const;
+   const Dtype* cpu_diff() const;
+diff --git a/include/caffe/layer.hpp b/include/caffe/layer.hpp
+index 10f353f94f9..84dabee1273 100644
+--- a/include/caffe/layer.hpp
++++ b/include/caffe/layer.hpp
+@@ -183,6 +183,25 @@ class Layer {
+     return blobs_;
+   }
+ 
++  /**
++   * @brief Sets blobs
++   */
++  void SetBlobs(const vector<Blob<Dtype>*>& weights) {
++    CHECK_EQ(blobs_.size(), weights.size());
++    for (int i = 0; i < weights.size(); ++i)
++      blobs_[i].reset(weights[i]);
++  }
++
++  /**
++   * @brief Gets blobs with normal pointer
++   */
++  vector<Blob<Dtype>*> GetBlobs() {
++    vector<Blob<Dtype>*> ans;
++    for (int i = 0; i < blobs_.size(); ++i)
++      ans.push_back(blobs_[i].get());
++    return ans;
++  }
++
+   /**
+    * @brief Returns the layer parameter.
+    */
+diff --git a/src/caffe/blob.cpp b/src/caffe/blob.cpp
+index 4a34e4c5856..d3266258bac 100644
+--- a/src/caffe/blob.cpp
++++ b/src/caffe/blob.cpp
+@@ -92,6 +92,24 @@ void Blob<Dtype>::set_cpu_data(Dtype* data) {
+   data_->set_cpu_data(data);
+ }
+ 
++template <typename Dtype>
++void Blob<Dtype>::set_gpu_data(Dtype* data) {
++  CHECK(data);
++  data_->set_gpu_data(data);
++}
++
++template <typename Dtype>
++void Blob<Dtype>::set_cpu_diff(Dtype* diff) {
++  CHECK(diff);
++  diff_->set_cpu_data(diff);
++}
++
++template <typename Dtype>
++void Blob<Dtype>::set_gpu_diff(Dtype* diff) {
++  CHECK(diff);
++  diff_->set_gpu_data(diff);
++}
++
+ template <typename Dtype>
+ const Dtype* Blob<Dtype>::gpu_data() const {
+   CHECK(data_);
+
+From bf4a6d195aba5ff0a65098068d04005534c7c1bd Mon Sep 17 00:00:00 2001
+From: tenstep <wangdq@me.com>
+Date: Fri, 5 Aug 2016 21:19:50 +0800
+Subject: [PATCH 2/3] Remove set/get blob.
+
+---
+ include/caffe/layer.hpp | 19 -------------------
+ 1 file changed, 19 deletions(-)
+
+diff --git a/include/caffe/layer.hpp b/include/caffe/layer.hpp
+index 84dabee1273..10f353f94f9 100644
+--- a/include/caffe/layer.hpp
++++ b/include/caffe/layer.hpp
+@@ -183,25 +183,6 @@ class Layer {
+     return blobs_;
+   }
+ 
+-  /**
+-   * @brief Sets blobs
+-   */
+-  void SetBlobs(const vector<Blob<Dtype>*>& weights) {
+-    CHECK_EQ(blobs_.size(), weights.size());
+-    for (int i = 0; i < weights.size(); ++i)
+-      blobs_[i].reset(weights[i]);
+-  }
+-
+-  /**
+-   * @brief Gets blobs with normal pointer
+-   */
+-  vector<Blob<Dtype>*> GetBlobs() {
+-    vector<Blob<Dtype>*> ans;
+-    for (int i = 0; i < blobs_.size(); ++i)
+-      ans.push_back(blobs_[i].get());
+-    return ans;
+-  }
+-
+   /**
+    * @brief Returns the layer parameter.
+    */
+
+From ddd8cd8e061de960404e91972079467ca9ebace3 Mon Sep 17 00:00:00 2001
+From: Haoran <hrwangchengdu@hotmail.com>
+Date: Fri, 30 Sep 2016 01:42:12 +0800
+Subject: [PATCH 3/3] Add SetPhase() interface
+
+---
+ include/caffe/layer.hpp | 7 +++++++
+ 1 file changed, 7 insertions(+)
+
+diff --git a/include/caffe/layer.hpp b/include/caffe/layer.hpp
+index 10f353f94f9..79d3a002975 100644
+--- a/include/caffe/layer.hpp
++++ b/include/caffe/layer.hpp
+@@ -176,6 +176,13 @@ class Layer {
+       const vector<bool>& propagate_down,
+       const vector<Blob<Dtype>*>& bottom);
+ 
++  /**
++   * @brief Set phase: TRAIN or TEST
++   */
++  inline void SetPhase(Phase p) {
++    phase_ = p;
++  }
++
+   /**
+    * @brief Returns the vector of learnable parameter blobs.
+    */
+
diff --git a/c/Code_Saturne/Code_Saturne-8.0.1-foss-2022a.eb b/c/Code_Saturne/Code_Saturne-8.0.1-foss-2022a.eb
new file mode 100644
index 0000000..736fcc2
--- /dev/null
+++ b/c/Code_Saturne/Code_Saturne-8.0.1-foss-2022a.eb
@@ -0,0 +1,32 @@
+name = 'Code_Saturne'
+version = '8.0.1'
+
+easyblock = 'ConfigureMake'
+
+homepage = 'http://code-saturne.org'
+description = """Code_Saturne solves the Navier-Stokes equations for 2D, 2D-axisymmetric and 3D flows"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'optarch': True, 'pic': True}
+
+configopts = ['--disable-frontend --with-mpi']
+
+source_urls = ['http://code-saturne.org/cms/sites/default/files/releases/']
+sources = ['%(namelower)s-%(version)s.tar.gz']
+
+dependencies = [('libxml2', '2.9.13'),
+                ('ParMETIS', '4.0.3'),
+                ('libtool', '2.4.7'),
+                ('HDF5', '1.12.2') 
+]
+
+sanity_check_paths = {
+    'files': ['bin/code_saturne'],
+    'dirs': [],
+}
+
+
+
+moduleclass = 'cae'
+
+
diff --git a/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2022a.eb b/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2022a.eb
new file mode 100644
index 0000000..bab82cf
--- /dev/null
+++ b/c/CoordgenLibs/CoordgenLibs-3.0.1-gompi-2022a.eb
@@ -0,0 +1,32 @@
+easyblock = 'CMakeMake'
+
+name = 'CoordgenLibs'
+version = '3.0.1'
+
+homepage = 'https://github.com/schrodinger/coordgenlibs'
+description = "Schrodinger-developed 2D Coordinate Generation"
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+
+source_urls = ['https://github.com/schrodinger/coordgenlibs/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['737fd081bcb8a6913aa00b375be96458fe2821a58209c98e7a7e86a64d73a900']
+
+builddependencies = [('CMake', '3.23.1')]
+
+dependencies = [
+    ('Boost', '1.79.0'),
+    ('maeparser', '1.3.0'),
+]
+
+configopts = "-Dmaeparser_DIR=$EBROOTMAEPARSER/lib/cmake"
+
+# work around compiler warning treated as error by stripping out use of -Werror
+prebuildopts = "sed -i 's/-Werror//g' CMakeFiles/coordgen.dir/flags.make && "
+
+sanity_check_paths = {
+    'files': ['lib/libcoordgen.%s' % SHLIB_EXT],
+    'dirs': ['include/coordgen', 'lib/cmake'],
+}
+
+moduleclass = 'chem'
diff --git a/c/canu/canu-2.2-GCCcore-11.3.0.eb b/c/canu/canu-2.2-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..2405338
--- /dev/null
+++ b/c/canu/canu-2.2-GCCcore-11.3.0.eb
@@ -0,0 +1,40 @@
+easyblock = 'MakeCp'
+
+name = 'canu'
+version = '2.2'
+
+homepage = 'https://canu.readthedocs.io'
+description = "Canu is a fork of the Celera Assembler designed for high-noise single-molecule sequencing"
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/marbl/canu/releases/download/v%(version)s/']
+sources = ['canu-%(version)s.tar.xz']
+checksums = ['e4d0c7b82149114f442ccd39e18f7fe2061c63b28d53700ad896e022b73b7404']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    # Makefile checks git version, before making (futile) attempt to update git submodules
+    ('git', '2.36.0', '-nodocs'),
+]
+
+dependencies = [
+    ('Java', '11', '', SYSTEM),
+    ('Perl', '5.34.1'),
+    ('gnuplot', '5.4.4'),
+]
+
+start_dir = 'src'
+
+files_to_copy = ['build/bin', 'build/lib', 'build/share', 'README*']
+
+sanity_check_paths = {
+    'files': ['bin/bogart', 'bin/canu', 'bin/meryl', 'bin/overlapPair', 'lib/libcanu.a'],
+    'dirs': ['lib/site_perl', 'share'],
+}
+sanity_check_commands = [
+    "canu -version",
+    "canu -options",
+]
+
+moduleclass = 'bio'
diff --git a/c/ceres-solver/ceres-solver-2.2.0-foss-2022a-CUDA-11.7.0.eb b/c/ceres-solver/ceres-solver-2.2.0-foss-2022a-CUDA-11.7.0.eb
new file mode 100644
index 0000000..bc38531
--- /dev/null
+++ b/c/ceres-solver/ceres-solver-2.2.0-foss-2022a-CUDA-11.7.0.eb
@@ -0,0 +1,38 @@
+easyblock = 'CMakeMake'
+
+name = 'ceres-solver'
+version = '2.2.0'
+versionsuffix = '-CUDA-11.7.0'
+
+homepage = 'https://ceres-solver.org/'
+description = """ Ceres Solver 1 is an open source C++ library for modeling and solving large, 
+ complicated optimization problems. It can be used to solve Non-linear Least Squares problems 
+ with bounds constraints and general unconstrained optimization problems. It is a mature, feature
+ rich, and performant library that has been used in production at Google since 2010. """
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['http://ceres-solver.org/']
+sources = ['%(name)s-%(version)s.tar.gz']
+
+builddependencies = [('CMake', '3.23.1')]
+
+dependencies = [
+    ('CUDA', '11.7.0', '', SYSTEM),
+    ('cuDNN', '8.4.1.50', '-CUDA-%(cudaver)s', SYSTEM),
+    ('Eigen', '3.4.0'),
+    ('glog', '0.6.0'),
+    ('SuiteSparse', '5.13.0', '-METIS-5.1.0'),
+    ('ATLAS', '3.10.2', '-LAPACK-3.10.1'),
+]
+
+cuda_compute_capabilities = ['6.0', '7.0', '8.0']
+
+sanity_check_paths = {
+    'files': ['lib64/libceres.a'],
+    'dirs': []
+}
+
+
+moduleclass = 'lib'
+
diff --git a/c/coverage/coverage-7.2.7-GCCcore-11.3.0.eb b/c/coverage/coverage-7.2.7-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..75b1ec2
--- /dev/null
+++ b/c/coverage/coverage-7.2.7-GCCcore-11.3.0.eb
@@ -0,0 +1,35 @@
+easyblock = 'PythonPackage'
+
+name = 'coverage'
+version = '7.2.7'
+
+homepage = 'https://coverage.readthedocs.io'
+description = """ Coverage.py is a tool for measuring code coverage of Python programs.
+ It monitors your program, noting which parts of the code have been executed,
+ then analyzes the source to identify code that could have been executed but was not. """
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+sources = [SOURCE_TAR_GZ]
+checksums = ['924d94291ca674905fe9481f12294eb11f2d3d3fd1adb20314ba89e94f44ed59']
+
+builddependencies = [
+    ('binutils', '2.38'),
+]
+
+dependencies = [
+    ('Python', '3.10.4'),
+]
+
+use_pip = True
+sanity_pip_check = True
+download_dep_fail = True
+
+sanity_check_paths = {
+    'files': ['bin/coverage%s' % x for x in ['', '3', '-%(pyshortver)s']],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/%(name)s'],
+}
+
+sanity_check_commands = ["coverage --help"]
+
+moduleclass = 'tools'
diff --git a/c/csvtk/csvtk-0.25.0.eb b/c/csvtk/csvtk-0.25.0.eb
new file mode 100644
index 0000000..76b2c7b
--- /dev/null
+++ b/c/csvtk/csvtk-0.25.0.eb
@@ -0,0 +1,20 @@
+easyblock = 'BinariesTarball'
+
+name = 'csvtk'
+version = '0.25.0'
+
+homepage = 'https://github.com/shenwei356/csvtk'
+description = """A cross-platform, efficient and practical CSV/TSV toolkit in Golang"""
+
+toolchain = SYSTEM
+
+source_urls = ['https://github.com/shenwei356/csvtk/releases/download/v0.25.0/']
+sources = ['csvtk_linux_amd64.tar.gz']
+
+
+sanity_check_paths = {
+    'files': ['bin/csvtk'],
+    'dirs': [],
+}
+
+moduleclass = 'bio'
diff --git a/d/deepmedic/deepmedic-0.8.2-foss-2022a-CUDA-11.7.0.eb b/d/deepmedic/deepmedic-0.8.2-foss-2022a-CUDA-11.7.0.eb
new file mode 100644
index 0000000..05f4b30
--- /dev/null
+++ b/d/deepmedic/deepmedic-0.8.2-foss-2022a-CUDA-11.7.0.eb
@@ -0,0 +1,42 @@
+easyblock = 'PythonBundle'
+
+name = 'deepmedic'
+version = '0.8.2'
+versionsuffix = '-CUDA-%(cudaver)s'
+
+homepage = 'https://biomedia.doc.ic.ac.uk/software/deepmedic/'
+description = "Efficient Multi-Scale 3D Convolutional Neural Network for Segmentation of 3D Medical Scans."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+dependencies = [
+    ('CUDA', '11.7.0', '', SYSTEM),
+    ('Python', '3.10.4'),
+    ('TensorFlow', '2.11.0', versionsuffix),
+    ('SciPy-bundle', '2022.05'),
+    ('NiBabel', '4.0.2'),
+]
+
+use_pip = True
+
+exts_list = [
+    ('six', '1.16.0', {
+        'checksums': ['1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926'],
+    }),
+    (name, version, {
+        'source_urls': ['https://github.com/%(github_account)s/%(name)s/archive'],
+        'sources': ['v%(version)s.tar.gz'],
+        'checksums': ['0f6bcd349eeee919e0be7eab86569e1951ab9eb110ee272e8325abc94c928c0f'],
+    }),
+]
+
+sanity_check_paths = {
+    'files': ['bin/deepMedicRun'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages'],
+}
+
+sanity_check_commands = ['deepMedicRun -h']
+
+sanity_pip_check = True
+
+moduleclass = 'data'
diff --git a/d/dotNET-SDK/dotNET-SDK-2.2.203-linux-x64.eb b/d/dotNET-SDK/dotNET-SDK-2.2.203-linux-x64.eb
new file mode 100644
index 0000000..dceb71b
--- /dev/null
+++ b/d/dotNET-SDK/dotNET-SDK-2.2.203-linux-x64.eb
@@ -0,0 +1,38 @@
+##
+# This is a contribution from DeepThought HPC Service, Flinders University, Adelaide, Australia
+# Homepage:     https://staff.flinders.edu.au/research/deep-thought
+#
+# Authors::     Robert Qiao <rob.qiao@flinders.edu.au>
+# License::     MIT
+#
+# Notes::       requires glibc v2.14 or higher
+##
+
+easyblock = 'Tarball'
+
+name = 'dotNET-SDK'
+version = '2.2.203'
+versionsuffix = '-linux-x64'
+
+homepage = 'https://www.microsoft.com/net/'
+description = """.NET is a free, cross-platform, open source developer platform for building many different types
+ of applications."""
+
+toolchain = SYSTEM
+
+source_urls = ['https://download.visualstudio.microsoft.com/download/pr/' +
+               '0c795076-b679-457e-8267-f9dd20a8ca28/02446ea777b6f5a5478cd3244d8ed65b']
+sources = ['dotnet-sdk-%(version)s%(versionsuffix)s.tar.gz']
+
+sanity_check_paths = {
+    'files': ['dotnet'],
+    'dirs': ['shared/Microsoft.NETCore.App', 'shared/Microsoft.AspNetCore.App'],
+}
+
+modextrapaths = {
+    'PATH': [''],
+    'DOTNET_ROOT': [''],
+}
+
+moduleclass = 'lang'
+
diff --git a/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2022a.eb b/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2022a.eb
new file mode 100644
index 0000000..9c21118
--- /dev/null
+++ b/e/EIGENSOFT/EIGENSOFT-7.2.1-foss-2022a.eb
@@ -0,0 +1,56 @@
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+# Author: Pablo Escobar Lopez
+# sciCORE - University of Basel
+# SIB Swiss Institute of Bioinformatics
+# 6.1.4 modified by:
+# Adam Huffman
+# The Francis Crick Institute
+# 7.2.1 modified by:
+# Tom Strempel
+# Helmholtz-Centre for Environmental Research - UFZ
+
+easyblock = 'MakeCp'
+
+name = 'EIGENSOFT'
+version = '7.2.1'
+
+homepage = 'https://www.hsph.harvard.edu/alkes-price/software/'
+description = """The EIGENSOFT package combines functionality from our population genetics methods (Patterson et al.
+2006)  and our EIGENSTRAT stratification correction method (Price et al. 2006). The EIGENSTRAT method uses principal
+components  analysis to explicitly model ancestry differences between cases and controls along continuous axes of
+variation;  the resulting correction is specific to a candidate marker’s variation in frequency across ancestral
+populations,  minimizing spurious associations while maximizing power to detect true associations. The EIGENSOFT
+package has a built-in plotting script and supports multiple file formats and quantitative phenotypes."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://github.com/DReichLab/EIG/archive']
+sources = ['v%(version)s.tar.gz']
+patches = [
+    '%(name)s-%(version)s_Fix_makefile_openblas.patch',
+    ('%(name)s-%(version)s_restore-ploteig.patch', 0),
+]
+checksums = [
+    'f09a46ec4b83c5062ec71eaca48a78f2373f1666fe23cbf17757150a679c8650',  # v7.2.1.tar.gz
+]
+
+dependencies = [
+    ('GSL', '2.7'),
+    ('Perl', '5.34.1'),
+]
+
+start_dir = 'src'
+
+# Run "make install" after make to copy all binaries to the bin dir
+buildopts = 'LDLIBS="-lgsl $LIBBLAS -llapacke $LIBS" && make install'
+
+files_to_copy = ['bin', 'CONVERTF', 'EIGENSTRAT', 'POPGEN', 'README']
+
+fix_perl_shebang_for = ['bin/*.perl', 'bin/ploteig']
+
+sanity_check_paths = {
+    'files': ['bin/%s' % x for x in ["baseprog", "convertf", "eigenstrat", "eigenstratQTL", "ploteig"]],
+    'dirs': []
+}
+
+moduleclass = 'bio'
diff --git a/e/EIGENSOFT/EIGENSOFT-7.2.1_Fix_makefile_openblas.patch b/e/EIGENSOFT/EIGENSOFT-7.2.1_Fix_makefile_openblas.patch
new file mode 100644
index 0000000..0b770bf
--- /dev/null
+++ b/e/EIGENSOFT/EIGENSOFT-7.2.1_Fix_makefile_openblas.patch
@@ -0,0 +1,23 @@
+# Prevent system OpenBLAS from being used instead of the toolchain one
+# Author: Davide Vanzo (Vanderbilt University)
+diff -ru EIG-7.2.1.orig/src/Makefile EIG-7.2.1/src/Makefile
+--- EIG-7.2.1.orig/src/Makefile	2019-08-07 16:21:10.518219095 -0500
++++ EIG-7.2.1/src/Makefile	2019-08-15 10:46:26.809998948 -0500
+@@ -1,6 +1,6 @@
+-override CFLAGS += -I../include -I/usr/include/openblas
++#override CFLAGS += -I../include -I/usr/include/openblas
+ #LDLIBS += -lgsl -lopenblas -lrt -lm
+-override LDLIBS += -lgsl -lopenblas -lm -lpthread
++#override LDLIBS += -lgsl -lopenblas -lm -lpthread
+ # Some Linux distributions require separate lapacke library
+ # override LDLIBS += -llapacke
+ # Mac additions using homebrew installations
+@@ -9,6 +9,8 @@
+ # Harvard Medical School O2 cluster additions
+ #override CFLAGS += -I/n/app/openblas/0.2.19/include -I/n/app/gsl/2.3/include
+ #override LDFLAGS += -L/n/app/openblas/0.2.19/lib -L/n/app/gsl/2.3/lib/
++CFLAGS := ${CFLAGS} -I../include
++LDLIBS := -lgsl -lopenblas -lm -lpthread
+ 
+ ifeq ($(OPTIMIZE), 1)
+ 	CFLAGS += -O2
diff --git a/e/EIGENSOFT/EIGENSOFT-7.2.1_restore-ploteig.patch b/e/EIGENSOFT/EIGENSOFT-7.2.1_restore-ploteig.patch
new file mode 100644
index 0000000..5a382a9
--- /dev/null
+++ b/e/EIGENSOFT/EIGENSOFT-7.2.1_restore-ploteig.patch
@@ -0,0 +1,234 @@
+From 7a6036bf36d8d2ed038b83d26112cdde4f383747 Mon Sep 17 00:00:00 2001
+From: Matthew Mah <mmah@broadinstitute.org>
+Date: Mon, 5 Mar 2018 15:14:52 -0500
+Subject: [PATCH] Restore ploteig in bin directory with Nick's version. Fixes
+ #25.
+
+---
+ bin/ploteig | 217 ++++++++++++++++++++++++++++++++++++++++++++++++++++
+ 1 file changed, 217 insertions(+)
+ create mode 100755 bin/ploteig
+
+diff --git a/bin/ploteig b/bin/ploteig
+new file mode 100755
+index 0000000..0871daa
+--- /dev/null
++++ bin/ploteig
+@@ -0,0 +1,217 @@
++#!/usr/local/bin/perl  -w 
++
++### ploteig -i eigfile -p pops -c a:b [-t title] [-s stem] [-g gstem] [-o outfile] [-x] [-k]  [-y] [-z sep] -r colorstring -m xmul -n ymul 
++use Getopt::Std ;
++use File::Basename ;
++
++## pops : separated  -x = make postscript and pdf  -z use another separator
++##  -k keep intermediate files
++## NEW if pops is a file names are read one per line
++## scaling on x, y axes 
++
++getopts('i:o:p:c:s:d:z:t:r:m:n:g:xkyq',\%opts) ;
++$postscmode = $opts{"x"} ;
++$oldkeystyle =  $opts{"y"} ;
++$nopoptitle = $opts{"q"} ;
++$kflag = $opts{"k"} ;
++$keepflag = 1 if ($kflag) ;
++$keepflag = 1 unless ($postscmode) ;
++
++$zsep = ":" ;
++if (defined $opts{"z"}) {
++ $zsep = $opts{"z"} ;
++ $zsep = "\+" if ($zsep eq "+") ;
++}
++
++if (defined $opts{"r"}) {
++ $colorstr = $opts{"r"} ;
++ setcolor($colorstr) ;
++}
++$xmul = $opts{"m"} ; 
++$xmul = 1 unless (defined $xmul) ;
++
++$ymul = $opts{"n"} ; 
++$ymul = 1 unless (defined $ymul) ;
++
++$title = "" ;
++if (defined $opts{"t"}) {
++ $title = $opts{"t"} ;
++}
++if (defined $opts{"i"}) {
++ $infile = $opts{"i"} ;
++}
++else {
++ usage() ;
++ exit 0 ;
++}
++
++open (FF, $infile) || die "can't open $infile\n" ;
++@L = (<FF>) ;
++chomp @L ;
++$nf = 0 ;
++foreach $line (@L) { 
++ next if ($line =~ /\#/) ;
++ @Z = split " ", $line ;
++ $x = @Z ;
++ $nf = $x if ($nf < $x) ;
++}
++printf "## number of fields: %d\n", $nf ;
++$popcol = $nf-1 ;
++
++
++if (defined $opts{"p"}) {
++ $pops = $opts{"p"} ;
++}
++else {
++ die "p parameter compulsory\n" ;
++}
++
++$popsname = setpops ($pops) ;
++print "$popsname\n" ;
++
++$c1 = 1; $c2 =2 ;
++if (defined $opts{"c"}) {
++ $cols = $opts{"c"} ;
++ ($c1, $c2) = split ":", $cols ;
++ die "bad c param: $cols\n" unless (defined $cols) ;
++}
++
++$stem = "$infile.$c1:$c2" ;
++if (defined $opts{"s"}) {
++ $stem = $opts{"s"} ;
++}
++
++if (defined $opts{"g"}) {
++ $stem = $gstem = $opts{"g"} ;
++}
++
++$gstem = "$stem.$popsname" unless (defined $gstem) ; 
++$gnfile = "$gstem.xtxt" ;
++ 
++if (defined $opts{"o"}) {
++ $gnfile = $opts{"o"} ;
++}
++
++
++@T = () ; ## trash 
++open (GG, ">$gnfile") || die "can't open $gnfile\n" ;
++print GG "## " unless ($postscmode) ;
++print GG "set terminal postscript color noenhanced\n" ;
++print GG "set title  \"$title\" \n" ; 
++print GG "set key outside\n" unless ($oldkeystyle) ; 
++print GG "set xlabel  \"eigenvector $c1\" \n" if ($xmul == 1) ; 
++print GG "set xlabel  \"eigenvector $c1 (* $xmul) \" \n" if ($xmul != 1) ; 
++print GG "set ylabel  \"eigenvector $c2\" \n" if ($ymul == 1) ; 
++print GG "set ylabel  \"eigenvector $c1 (* $ymul) \" \n" if ($ymul != 1) ; 
++print GG "plot " ;
++$np = @P ;
++$lastpop = $P[$np-1] ;
++$d1 = $c1+1 ;
++$d2 = $c2+1 ;
++foreach $pop (@P)  { 
++ $dfile = "$stem:$pop" ;
++ push @T, $dfile ;
++ print GG " \"$dfile\" using (\$$d1)*$xmul:(\$$d2)*$ymul "  ;
++ print GG "notitle "  if (defined $nopoptitle) ;
++ print GG "title \"$pop\" "  unless (defined $nopoptitle) ;
++ if (defined $COL{$pop}) { 
++  $color = $COL{$pop} ; 
++  print GG "lt rgb \"$color\" " ;
++ }
++ print GG ", \\\n" unless ($pop eq $lastpop) ;
++ open (YY, ">$dfile") || die "can't open $dfile\n" ;
++ foreach $line (@L) {
++  next if ($line =~ /\#/) ;
++  @Z = split " ", $line ;
++  next unless (defined $Z[$popcol]) ;
++  next unless ($Z[$popcol] eq $pop) ;
++  print YY "$line\n" ;
++ }
++ close YY ;
++}
++print GG "\n" ;
++print GG "## "  if ($postscmode) ;
++print GG "pause 9999\n"  ;
++close GG ;
++
++if ($postscmode) { 
++$psfile = "$stem.ps" ;
++
++ if ($gnfile =~ /xtxt/) { 
++  $psfile = $gnfile ;
++  $psfile  =~ s/xtxt/ps/ ;
++ }
++system "gnuplot < $gnfile > $psfile" ;
++system "/home/np29/bin/fixgreen  $psfile" ;
++system "ps2pdf  $psfile " ;
++}
++unlink (@T) unless $keepflag ;
++
++sub setcolor {
++ my ($colorst) = @_ ; 
++ local ($cp, $pop, $color, @CP, $line) ;
++ if (-r $colorst) { 
++   open (C1, $colorst) || die "can't open $colorst\n" ;
++   foreach $line (<C1>) { 
++    chomp $line ;
++    ($pop, $color) = split " ", $line ; 
++    next if ($pop =~ /\#/) ;
++    next unless (defined $color) ;
++    print STDERR  "setting color for $pop to $color\n" ; 
++    $COL{$pop} = $color ;
++   }
++   close C1 ; 
++   return ;
++ }
++
++ @CP = split " ", $colorst ;
++ foreach $cp (@CP) { 
++  ($pop, $color) = split ":", $cp ;
++  $COL{$pop} = $color ;
++ }
++}
++
++sub usage { 
++ 
++print "ploteig -i eigfile -p pops -c a:b [-t title] [-s stem] [-o outfile] [-x] [-k] -c colorstringh [-m xmul] [-n ymul]\n" ;  
++print "-i eigfile     input file first col indiv-id last col population\n" ;
++print "## as output by smartpca in outputvecs \n" ;
++print "-c a:b         a, b columns to plot.  1:2 would be common and leading 2 eigenvectors\n" ;
++print "-p pops        Populations to plot.  : delimited.   eg  -p Bantu:San:French\n" ;
++print "## pops can also be a filename.  List populations 1 per line\n" ;
++print "[-s stem]      stem will start various output files\n"  ;
++print "[-o ofile]     ofile will be gnuplot control file.  Should have xtxt suffix\n"; 
++print "[-x]           make ps and pdf files\n" ; 
++print "[-k]           keep various intermediate files although  -x set\n" ;
++print "## necessary if .xtxt file is to be hand edited\n" ;
++print "[-r colorstringpairs or colorstringfile]\n" ;
++print "[-g gstem]     make gstem.xtxt gstem.ps  gstem.pdf  \n" ;
++print "[-y]           put key at top right inside box (old mode)\n" ;
++print "[-t]           title (legend)\n" ;
++
++print "The xtxt file is a gnuplot file and can be easily hand edited.  Intermediate files
++needed if you want to make your own plot\n" ;
++
++}
++sub setpops {      
++ my ($pops) = @_  ; 
++ local (@a, $d, $b, $e) ; 
++
++ if (-e $pops) {  
++  open (FF1, $pops) || die "can't open $pops\n" ;
++  @P = () ;
++  foreach $line (<FF1>) { 
++  ($a) = split " ", $line ;
++  next unless (defined $a) ;
++  next if ($a =~ /\#/) ;
++  push  @P, $a ;
++  }
++  $out = join ":", @P ; 
++  print "## pops: $out\n" ;
++  ($b, $d , $e) = fileparse($pops) ;
++  return $b ;
++ }
++ @P = split $zsep, $pops ;
++ return $pops ;
++
++}
diff --git a/e/edlib/edlib-1.3.9-GCC-11.3.0.eb b/e/edlib/edlib-1.3.9-GCC-11.3.0.eb
new file mode 100644
index 0000000..3133e7e
--- /dev/null
+++ b/e/edlib/edlib-1.3.9-GCC-11.3.0.eb
@@ -0,0 +1,22 @@
+easyblock = 'PythonPackage'
+
+name = 'edlib'
+version = '1.3.9'
+
+homepage = 'https://martinsos.github.io/edlib'
+description = "Lightweight, super fast library for sequence alignment using edit (Levenshtein) distance."
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+sources = [SOURCE_TAR_GZ]
+checksums = ['64c3dfab3ebe3e759565a0cc71eb4df23cf3ce1713fd558af3c473dddc2a3766']
+
+dependencies = [
+    ('Python', '3.10.4'),
+]
+
+download_dep_fail = True
+use_pip = True
+sanity_pip_check = True
+
+moduleclass = 'bio'
diff --git a/e/epa-ng/epa-ng-0.3.8-GCC-11.3.0.eb b/e/epa-ng/epa-ng-0.3.8-GCC-11.3.0.eb
new file mode 100644
index 0000000..809de9f
--- /dev/null
+++ b/e/epa-ng/epa-ng-0.3.8-GCC-11.3.0.eb
@@ -0,0 +1,33 @@
+easyblock = 'MakeCp'
+
+name = 'epa-ng'
+version = '0.3.8'
+
+homepage = 'https://github.com/pierrebarbera/epa-ng'
+description = """
+EPA-ng - Fast, parallel, highly accurate Maximum Likelihood Phylogenetic Placement, by the team behind RAxML(-ng)
+"""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/pierrebarbera/epa-ng/archive/refs/tags/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['d1db23919f49cfad202b18623e5eb30c3d6cedcc1705b944221daea8131cbb74']
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('make', '4.3'),
+]
+
+files_to_copy = ['bin/%(name)s']
+
+modextrapaths = {'PATH': ''}
+
+sanity_check_paths = {
+    'files': ['%(name)s'],
+    'dirs': []
+}
+
+sanity_check_commands = ['%(name)s --version']
+
+moduleclass = 'bio'
diff --git a/f/FLANN/FLANN-1.8.4_fix-cmake.patch b/f/FLANN/FLANN-1.8.4_fix-cmake.patch
new file mode 100644
index 0000000..a1932df
--- /dev/null
+++ b/f/FLANN/FLANN-1.8.4_fix-cmake.patch
@@ -0,0 +1,30 @@
+# Flann fails to build with newer versions of CMake, see:
+# https://stackoverflow.com/questions/50763621/building-flann-with-cmake-fails
+# Contribution from the NIHR Biomedical Research Centre
+# Guy's and St Thomas' NHS Foundation Trust and King's College London
+# uploaded by J. Sassmannshausen
+diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt
+index 49c53f0..0976e41 100644
+--- a/src/cpp/CMakeLists.txt
++++ b/src/cpp/CMakeLists.txt
+@@ -29,7 +29,7 @@ if (BUILD_CUDA_LIB)
+ endif()
+ 
+ if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC)
+-    add_library(flann_cpp SHARED "")
++    add_library(flann_cpp SHARED empty.cpp)
+     set_target_properties(flann_cpp PROPERTIES LINKER_LANGUAGE CXX)
+     target_link_libraries(flann_cpp -Wl,-whole-archive flann_cpp_s -Wl,-no-whole-archive)
+ 
+@@ -83,7 +83,7 @@ if (BUILD_C_BINDINGS)
+     set_property(TARGET flann_s PROPERTY COMPILE_DEFINITIONS FLANN_STATIC)
+ 
+     if(CMAKE_SYSTEM_NAME STREQUAL "Linux" AND CMAKE_COMPILER_IS_GNUCC)
+-        add_library(flann SHARED "")
++        add_library(flann SHARED empty.cpp)
+         set_target_properties(flann PROPERTIES LINKER_LANGUAGE CXX)
+         target_link_libraries(flann -Wl,-whole-archive flann_s -Wl,-no-whole-archive)
+     else()
+diff --git a/src/cpp/empty.cpp b/src/cpp/empty.cpp
+new file mode 100644
+index 0000000..e69de29
diff --git a/f/FLANN/FLANN-1.9.1-foss-2022a.eb b/f/FLANN/FLANN-1.9.1-foss-2022a.eb
new file mode 100644
index 0000000..9194277
--- /dev/null
+++ b/f/FLANN/FLANN-1.9.1-foss-2022a.eb
@@ -0,0 +1,42 @@
+# Contribution from the NIHR Biomedical Research Centre
+# Guy's and St Thomas' NHS Foundation Trust and King's College London
+# uploaded by J. Sassmannshausen
+
+easyblock = 'CMakeMake'
+
+name = 'FLANN'
+version = '1.9.1'
+#versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://github.com/mariusmuja/flann/'
+description = "FLANN is a library for performing fast approximate nearest neighbor searches in high dimensional spaces."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True}
+
+source_urls = ['https://github.com/mariusmuja/flann/archive/']
+sources = ['%(version)s.tar.gz']
+patches = ['FLANN-1.8.4_fix-cmake.patch']
+checksums = [
+    'b23b5f4e71139faa3bcb39e6bbcc76967fbaf308c4ee9d4f5bfbeceaa76cc5d3',  # flann-1.9.1.tar.gz
+    '179699d853440c9d4446b8f338a1fde64c3e712dd4bc305790a2d5790fb25ed6',  # FLANN-1.8.4_fix-cmake.patch
+]
+
+builddependencies = [('CMake', '3.23.1')]
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+]
+
+configopts = "-DUSE_OPENMP=ON -DUSE_MPI=ON -DBUILD_PYTHON_BINDINGS=ON -DBUILD_C_BINDINGS=ON"
+
+modextrapaths = {'PYTHONPATH': ['share/flann/python']}
+
+sanity_check_paths = {
+    'files': ['lib/libflann_cpp_s.a', 'lib/libflann_s.a',
+              'lib/libflann_cpp.%s' % SHLIB_EXT, 'lib/libflann.%s' % SHLIB_EXT],
+    'dirs': ['include/flann', 'lib/pkgconfig', 'share/flann/python'],
+}
+sanity_check_commands = ["python -c 'import pyflann'"]
+
+moduleclass = 'lib'
diff --git a/f/FreeSurfer/FreeSurfer-6.0.1-centos6_x86_64.eb b/f/FreeSurfer/FreeSurfer-6.0.1-centos6_x86_64.eb
new file mode 100644
index 0000000..fc074d5
--- /dev/null
+++ b/f/FreeSurfer/FreeSurfer-6.0.1-centos6_x86_64.eb
@@ -0,0 +1,32 @@
+name = 'FreeSurfer'
+version = '6.0.1'
+versionsuffix = '-centos6_x86_64'
+
+homepage = 'https://surfer.nmr.mgh.harvard.edu/'
+description = """FreeSurfer is a set of tools for analysis and visualization of structural and functional brain imaging data.
+FreeSurfer contains a fully automatic structural imaging stream for processing cross sectional and longitudinal data."""
+
+toolchain = SYSTEM
+
+source_urls = [
+    'https://surfer.nmr.mgh.harvard.edu/pub/dist/freesurfer/%(version)s/',
+    'http://surfer.nmr.mgh.harvard.edu/fswiki/MatlabRuntime?action=AttachFile&do=get&target='
+]
+sources = [
+    '%(namelower)s-Linux%(versionsuffix)s-stable-pub-v%(version)s.tar.gz',
+    'runtime2012bLinux.tar.gz'
+]
+checksums = [
+    # freesurfer-Linux-centos6_x86_64-stable-pub-v6.0.1.tar.gz
+    'e565feed07a3d616b484ed445fc51937630467e950c3676994f0e4d6177bde07',
+    '3ef4231d566fca45436eda03ae3bb93ffa7af0974a48112348c0d76c62b5fa64',  # runtime2012bLinux.tar.gz
+]
+
+postinstallcmds = ['cp -a %(builddir)s/MCRv80/ %(installdir)s']
+
+license_text = """dtosello@unimelb.edu.au
+25879
+ *Ckgb3TMzhJ.s
+ FSAUzVcUhvU4g"""
+
+moduleclass = 'bio'
diff --git a/g/GROMACS/GROMACS-2023.1-foss-2022a-CUDA-11.7.0.eb b/g/GROMACS/GROMACS-2023.1-foss-2022a-CUDA-11.7.0.eb
new file mode 100644
index 0000000..29e573d
--- /dev/null
+++ b/g/GROMACS/GROMACS-2023.1-foss-2022a-CUDA-11.7.0.eb
@@ -0,0 +1,93 @@
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC,
+#                                 Ghent University / The Francis Crick Institute
+# Authors::
+# * Wiktor Jurkowski <wiktor.jurkowski@gmail.com>
+# * Fotis Georgatos <fotis@cern.ch>
+# * George Tsouloupas <g.tsouloupas@cyi.ac.cy>
+# * Kenneth Hoste <kenneth.hoste@ugent.be>
+# * Adam Huffman <adam.huffman@crick.ac.uk>
+# * Ake Sandgren <ake.sandgren@hpc2n.umu.se>
+# * J. Sassmannshausen <Crick HPC team>
+# * Dugan Witherick <dugan.witherick@warwick.ac.uk>
+# * Christoph Siegert <christoph.siegert@uni-leipzig.de>
+# License::   MIT/GPL
+
+name = 'GROMACS'
+version = '2023.1'
+versionsuffix = '-CUDA-%(cudaver)s'
+
+homepage = 'https://www.gromacs.org'
+description = """
+GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the
+Newtonian equations of motion for systems with hundreds to millions of
+particles.
+
+This is a GPU enabled build, containing both MPI and threadMPI binaries.
+
+It also contains the gmxapi extension for the single precision MPI build.
+"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True, 'usempi': True}
+
+source_urls = [
+    'https://ftp.gromacs.org/pub/gromacs/',
+    'ftp://ftp.gromacs.org/pub/gromacs/',
+]
+sources = [SOURCELOWER_TAR_GZ]
+patches = [
+    'GROMACS-%(version)s_fix_env_for_subprocesses.patch',
+    'GROMACS-%(version)s_set_omp_num_threads_env_for_ntomp_tests.patch',
+    'GROMACS-%(version)s_fix_tests_for_gmx_thread_mpi.patch',
+]
+checksums = [
+    {'gromacs-2023.1.tar.gz': 'eef2bb4a6cb6314cf9da47f26df2a0d27af4bf7b3099723d43601073ab0a42f4'},
+    {'GROMACS-2023.1_fix_env_for_subprocesses.patch':
+     '39ba066c936cddc190bab13c47d6af1575f5d7737d5c0719fe46211a13cd3539'},
+    {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch':
+     '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'},
+    {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch':
+     '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'},
+]
+
+cuda_compute_capabilities = ['6.0', '7.0', '8.0']
+
+builddependencies = [
+    ('CMake', '3.24.3'),
+    ('scikit-build', '0.15.0'),
+]
+
+dependencies = [
+    ('CUDA', '11.7.0', '', SYSTEM),
+    ('UCX-CUDA', '1.13.1', versionsuffix),
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('networkx', '2.8.4'),
+]
+
+exts_defaultclass = 'PythonPackage'
+
+exts_default_options = {
+    'source_urls': [PYPI_SOURCE],
+    'use_pip': True,
+    'download_dep_fail': True,
+    'sanity_pip_check': True,
+}
+
+exts_list = [
+    ('gmxapi', '0.4.0', {
+        'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' +
+                          '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ',
+        'source_tmpl': 'gromacs-2023.1.tar.gz',
+        'start_dir': 'python_packaging/gmxapi',
+        'checksums': ['eef2bb4a6cb6314cf9da47f26df2a0d27af4bf7b3099723d43601073ab0a42f4'],
+    }),
+]
+
+modextrapaths = {
+    'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
+}
+
+moduleclass = 'bio'
diff --git a/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb b/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb
new file mode 100644
index 0000000..9074787
--- /dev/null
+++ b/g/GROMACS/GROMACS-2023.3-foss-2022a-CUDA-11.7.0.eb
@@ -0,0 +1,90 @@
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2016 University of Luxembourg / LCSB, Cyprus Institute / CaSToRC,
+#                                 Ghent University / The Francis Crick Institute
+# Authors::
+# * Wiktor Jurkowski <wiktor.jurkowski@gmail.com>
+# * Fotis Georgatos <fotis@cern.ch>
+# * George Tsouloupas <g.tsouloupas@cyi.ac.cy>
+# * Kenneth Hoste <kenneth.hoste@ugent.be>
+# * Adam Huffman <adam.huffman@crick.ac.uk>
+# * Ake Sandgren <ake.sandgren@hpc2n.umu.se>
+# * J. Sassmannshausen <Crick HPC team>
+# * Dugan Witherick <dugan.witherick@warwick.ac.uk>
+# * Christoph Siegert <christoph.siegert@uni-leipzig.de>
+# License::   MIT/GPL
+
+name = 'GROMACS'
+version = '2023.3'
+versionsuffix = '-CUDA-%(cudaver)s'
+
+homepage = 'https://www.gromacs.org'
+description = """
+GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the
+Newtonian equations of motion for systems with hundreds to millions of
+particles.
+
+This is a GPU enabled build, containing both MPI and threadMPI binaries.
+
+It also contains the gmxapi extension for the single precision MPI build.
+"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True, 'usempi': True}
+
+source_urls = [
+    'https://ftp.gromacs.org/pub/gromacs/',
+    'ftp://ftp.gromacs.org/pub/gromacs/',
+]
+sources = [SOURCELOWER_TAR_GZ]
+patches = [
+    'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch',
+    'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch',
+]
+checksums = [
+    {'gromacs-2023.3.tar.gz': '4ec8f8d0c7af76b13f8fd16db8e2c120e749de439ae9554d9f653f812d78d1cb'},
+    {'GROMACS-2023.1_set_omp_num_threads_env_for_ntomp_tests.patch':
+     '7f41bda16c9c2837624265dda4be252f655d1288ddc4486b1a2422af30d5d199'},
+    {'GROMACS-2023.1_fix_tests_for_gmx_thread_mpi.patch':
+     '6df844bb3bbc51180446a3595c61a4ef195e5f975533a04cef76841aa763aec1'},
+]
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('scikit-build', '0.15.0'),
+]
+
+dependencies = [
+    ('CUDA', '11.7.0', '', SYSTEM),
+    ('UCX-CUDA', '1.13.1', versionsuffix),
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('networkx', '2.8.4'),
+]
+
+exts_defaultclass = 'PythonPackage'
+
+exts_default_options = {
+    'source_urls': [PYPI_SOURCE],
+    'use_pip': True,
+    'download_dep_fail': True,
+    'sanity_pip_check': True,
+}
+
+cuda_compute_capabilities = ['6.0', '7.0', '8.0']
+
+exts_list = [
+    ('gmxapi', '0.4.0', {
+        'preinstallopts': 'export CMAKE_ARGS="-Dgmxapi_ROOT=%(installdir)s ' +
+                          '-C %(installdir)s/share/cmake/gromacs_mpi/gromacs-hints_mpi.cmake" && ',
+        'source_tmpl': 'gromacs-2023.2.tar.gz',
+        'start_dir': 'python_packaging/gmxapi',
+        'checksums': ['fb85104d9cd1f753fde761bcbf842566'],
+    }),
+]
+
+modextrapaths = {
+    'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages',
+}
+
+moduleclass = 'bio'
diff --git a/g/GTDB-Tk/GTDB-Tk-2.3.2-foss-2022a.eb b/g/GTDB-Tk/GTDB-Tk-2.3.2-foss-2022a.eb
index fafe558..7c33969 100644
--- a/g/GTDB-Tk/GTDB-Tk-2.3.2-foss-2022a.eb
+++ b/g/GTDB-Tk/GTDB-Tk-2.3.2-foss-2022a.eb
@@ -42,4 +42,6 @@ sanity_check_paths = {
     'dirs': ['lib/python%(pyshortver)s/site-packages'],
 }
 
+modextravars = {'GTDBTK_DATA_PATH': '/data/gpfs/datasets/GTDBtk/release207_v2'}
+
 moduleclass = 'bio'
diff --git a/g/GTK+/GTK+-3.24.23-GCCcore-11.3.0.eb b/g/GTK+/GTK+-3.24.23-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..8687a73
--- /dev/null
+++ b/g/GTK+/GTK+-3.24.23-GCCcore-11.3.0.eb
@@ -0,0 +1,76 @@
+easyblock = 'Bundle'
+
+name = 'GTK+'
+version = '3.24.23'
+
+homepage = 'https://developer.gnome.org/gtk3/stable/'
+description = """GTK+ is the primary library used to construct user interfaces in GNOME. It
+ provides all the user interface controls, or widgets, used in a common
+ graphical application. Its object-oriented API allows you to construct
+ user interfaces without dealing with the low-level details of drawing and
+ device interaction.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('Autotools', '20220317'),
+    ('GObject-Introspection', '1.72.0'),
+    ('gettext', '0.21'),
+    ('pkg-config', '0.29.2'),
+    ('cairo', '1.17.4'),
+    ('Perl', '5.34.1'),
+]
+
+dependencies = [
+    ('ATK', '2.38.0'),
+    ('at-spi2-atk', '2.38.0'),
+    ('Gdk-Pixbuf', '2.42.8'),
+    ('Pango', '1.50.7'),
+    ('libepoxy', '1.5.10'),
+    ('X11', '20220504'),
+    ('FriBidi', '1.0.12'),
+]
+
+default_easyblock = 'ConfigureMake'
+
+default_component_specs = {
+    'sources': [SOURCELOWER_TAR_XZ],
+    'start_dir': '%(namelower)s-%(version)s',
+}
+
+components = [
+    (name, version, {
+        'source_urls': [FTPGNOME_SOURCE],
+        'checksums': ['5d864d248357a2251545b3387b35942de5f66e4c66013f0962eb5cb6f8dae2b1'],
+        'configopts': "--disable-silent-rules --disable-glibtest --enable-introspection=yes --disable-visibility ",
+    }),
+    ('hicolor-icon-theme', '0.17', {
+        'source_urls': ['https://icon-theme.freedesktop.org/releases/'],
+        'checksums': ['317484352271d18cbbcfac3868eab798d67fff1b8402e740baa6ff41d588a9d8'],
+    }),
+    ('adwaita-icon-theme', '3.38.0', {
+        'preconfigopts': 'autoreconf -f -i && ',
+        'source_urls': [FTPGNOME_SOURCE],
+        'patches': ['adwaita-icon-theme-3.34.3_disable-svg-conversion.patch'],
+        'checksums': [
+            '6683a1aaf2430ccd9ea638dd4bfe1002bc92b412050c3dba20e480f979faaf97',
+            # adwaita-icon-theme-3.34.3_disable-svg-conversion.patch
+            'f4b86855d50759ecfc1e8f6550ec0f3a7a4ea2c80b9f5fc1685fe8967d1c5342',
+        ],
+    }),
+]
+
+postinstallcmds = ['gtk-update-icon-cache']
+
+sanity_check_paths = {
+    'files': ['bin/%s' % x for x in ['gtk3-demo', 'gtk3-demo-application', 'gtk3-icon-browser', 'gtk3-widget-factory',
+                                     'gtk-builder-tool', 'gtk-launch', 'gtk-query-immodules-3.0', 'gtk-query-settings',
+                                     'gtk-update-icon-cache']] +
+             ['lib/%s-%%(version_major)s.%s' % (x, SHLIB_EXT) for x in ['libgailutil', 'libgdk', 'libgtk']],
+    'dirs': ['include/%s-%%(version_major)s.0' % x for x in ['gail', 'gtk']] +
+            ['share/icons/hicolor', 'share/icons/Adwaita'],
+}
+
+moduleclass = 'vis'
diff --git a/g/GTK+/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch b/g/GTK+/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch
new file mode 100644
index 0000000..bf0b97f
--- /dev/null
+++ b/g/GTK+/adwaita-icon-theme-3.34.3_disable-svg-conversion.patch
@@ -0,0 +1,16 @@
+As we don't have SVG support we disable the search for the converter.
+
+Author: Alexander Grund (TU Dresden)
+
+diff -aur a/configure.ac b/configure.ac
+--- a/configure.ac	2021-07-16 15:16:15.774630738 +0200
++++ b/configure.ac	2021-07-16 15:15:10.138814059 +0200
+@@ -49,7 +49,7 @@
+ AM_CONDITIONAL(ALLOW_RENDERING, test "x$allow_rendering" = "xyes")
+ 
+ symbolic_encode_sizes="16x16 24x24 32x32 48x48 64x64 96x96"
+-AC_PATH_PROG([GTK_ENCODE_SYMBOLIC_SVG], [gtk-encode-symbolic-svg], [false])
++GTK_ENCODE_SYMBOLIC_SVG="false"
+ if test "x$GTK_ENCODE_SYMBOLIC_SVG" = "xfalse"; then
+    symbolic_encode_sizes=""
+ fi
diff --git a/g/Garfield++/Garfield++-4.0-foss-2022a.eb b/g/Garfield++/Garfield++-4.0-foss-2022a.eb
new file mode 100644
index 0000000..032c377
--- /dev/null
+++ b/g/Garfield++/Garfield++-4.0-foss-2022a.eb
@@ -0,0 +1,43 @@
+easyblock = 'CMakeMake'
+name = 'Garfield++'
+version = '4.0'
+
+homepage = "https://garfieldpp.web.cern.ch/garfieldpp/getting-started/"
+description = """ Garfield++ is a toolkit for the detailed simulation of particle detectors based on ionisation measurement in gases and semiconductors."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True}
+
+source_urls = ['https://gitlab.cern.ch/garfield/garfieldpp/-/archive/4.0']
+sources = ['garfield-%(version)s.tar.gz']
+
+#buildininstalldir = True
+#skipsteps = ['configure']
+
+separate_build_dir = True
+
+dependencies = [('ROOT', '6.26.10'),
+		('GSL', '2.7'),
+		('Geant4','11.1.2'),
+		('CMake', '3.23.1'),
+]
+
+#preconfigopts = 'export GARFIELD_HOME=%(builddir)s'
+configopts = "-DCLHEP_DIR=$EBROOTCLHEP/lib64/CLHEP-2.4.6.2"
+configopts += "-DGeant4_DIR=$EBROOTGRANT/lib64/cmake/Geant4"
+configopts += "DROOT_DIR=$EBROOTROOT/cmake"
+configopts += "-DWITH_GEANT4_UIVIS=ON"
+
+sanity_check_paths= {
+    'files': [],
+    'dirs': ['..'],
+}
+
+modextrapaths = {
+		'PYTHONPATH': ['lib64/python%(pyshortver)s/site-packages'],
+                'HEED_DATABASE': ['share/Heed/database'],
+		'GARFIELD_INSTALL': ['.'],
+		'LD_LIBRARY_PATH': ['lib64'],
+}
+
+moduleclass = 'vis'
diff --git a/g/Garfield++/README b/g/Garfield++/README
new file mode 100644
index 0000000..da02061
--- /dev/null
+++ b/g/Garfield++/README
@@ -0,0 +1,2 @@
+Install manually with CMake.
+Then use EB to create module.
diff --git a/g/Geant4-data/Geant4-data-11.1.eb b/g/Geant4-data/Geant4-data-11.1.eb
new file mode 100644
index 0000000..5f98124
--- /dev/null
+++ b/g/Geant4-data/Geant4-data-11.1.eb
@@ -0,0 +1,53 @@
+easyblock = 'Tarball'
+name = 'Geant4-data'
+version = '11.1'  # version should somewhat match the Geant4 version it should be used in
+
+homepage = 'https://geant4.web.cern.ch/'
+description = """Datasets for Geant4."""
+
+toolchain = SYSTEM
+
+# Pick up the correct sets and versions from cmake/Modules/G4DatasetDefinitions.cmake
+# in the Geant source
+local_datasets = [
+    ('G4NDL', '4.7', 'G4NDL', 'G4NEUTRONHPDATA'),  # NDL
+    ('G4EMLOW', '8.2', 'G4EMLOW', 'G4LEDATA'),  # Low energy electromagnetics
+    ('PhotonEvaporation', '5.7', 'G4PhotonEvaporation', 'G4LEVELGAMMADATA'),  # Photon evaporation
+    ('RadioactiveDecay', '5.6', 'G4RadioactiveDecay', 'G4RADIOACTIVEDATA'),  # Radioisotopes
+    ('G4SAIDDATA', '2.0', 'G4SAIDDATA', 'G4SAIDXSDATA'),  # SAID
+    ('G4PARTICLEXS', '4.0', 'G4PARTICLEXS', 'G4PARTICLEXSDATA'),  # Particle XS - replaces Neutron XS
+    ('G4PII', '1.3', 'G4PII', 'G4PIIDATA'),  # PII
+    ('RealSurface', '2.2', 'G4RealSurface', 'G4REALSURFACEDATA'),  # Optical Surfaces
+    ('G4ABLA', '3.1', 'G4ABLA', 'G4ABLADATA'),  # ABLA
+    ('G4INCL', '1.0', 'G4INCL', 'G4INCLDATA'),  # INCL
+    ('G4ENSDFSTATE', '2.3', 'G4ENSDFSTATE', 'G4ENSDFSTATEDATA'),  # ENSDFSTATE
+    ('G4TENDL', '1.4', 'G4TENDL', 'G4PARTICLEHPDATA'),  # TENDL
+]
+
+source_urls = ['https://cern.ch/geant4-data/datasets']
+sources = ['%s.%s.tar.gz' % (x[2], x[1]) for x in local_datasets]
+checksums = [
+    {'G4NDL.4.7.tar.gz': '7e7d3d2621102dc614f753ad928730a290d19660eed96304a9d24b453d670309'},
+    {'G4EMLOW.8.2.tar.gz': '3d7768264ff5a53bcb96087604bbe11c60b7fea90aaac8f7d1252183e1a8e427'},
+    {'G4PhotonEvaporation.5.7.tar.gz': '761e42e56ffdde3d9839f9f9d8102607c6b4c0329151ee518206f4ee9e77e7e5'},
+    {'G4RadioactiveDecay.5.6.tar.gz': '3886077c9c8e5a98783e6718e1c32567899eeb2dbb33e402d4476bc2fe4f0df1'},
+    {'G4SAIDDATA.2.0.tar.gz': '1d26a8e79baa71e44d5759b9f55a67e8b7ede31751316a9e9037d80090c72e91'},
+    {'G4PARTICLEXS.4.0.tar.gz': '9381039703c3f2b0fd36ab4999362a2c8b4ff9080c322f90b4e319281133ca95'},
+    {'G4PII.1.3.tar.gz': '6225ad902675f4381c98c6ba25fc5a06ce87549aa979634d3d03491d6616e926'},
+    {'G4RealSurface.2.2.tar.gz': '9954dee0012f5331267f783690e912e72db5bf52ea9babecd12ea22282176820'},
+    {'G4ABLA.3.1.tar.gz': '7698b052b58bf1b9886beacdbd6af607adc1e099fc730ab6b21cf7f090c027ed'},
+    {'G4INCL.1.0.tar.gz': '716161821ae9f3d0565fbf3c2cf34f4e02e3e519eb419a82236eef22c2c4367d'},
+    {'G4ENSDFSTATE.2.3.tar.gz': '9444c5e0820791abd3ccaace105b0e47790fadce286e11149834e79c4a8e9203'},
+    {'G4TENDL.1.4.tar.gz': '4b7274020cc8b4ed569b892ef18c2e088edcdb6b66f39d25585ccee25d9721e0'},
+]
+
+start_dir = '..'
+
+modextrapaths = {x[3]: x[0] + x[1] for x in local_datasets}
+
+sanity_check_paths = {
+    'files': [],
+    'dirs': [x[0] + x[1] for x in local_datasets],
+}
+
+moduleclass = 'phys'
diff --git a/g/Geant4/Geant4-11.1.2-GCC-11.3.0.eb b/g/Geant4/Geant4-11.1.2-GCC-11.3.0.eb
new file mode 100644
index 0000000..cd32863
--- /dev/null
+++ b/g/Geant4/Geant4-11.1.2-GCC-11.3.0.eb
@@ -0,0 +1,46 @@
+name = 'Geant4'
+version = '11.1.2'
+
+homepage = 'https://geant4.web.cern.ch/'
+description = """Geant4 is a toolkit for the simulation of the passage of particles through matter.
+ Its areas of application include high energy, nuclear and accelerator physics,
+ as well as studies in medical and space science."""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+github_account = 'Geant4'
+source_urls = [GITHUB_SOURCE]
+sources = [{'download_filename': 'v%(version)s.tar.gz', 'filename': SOURCELOWER_TAR_GZ}]
+patches = [
+    'Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch',
+]
+checksums = [
+    {'geant4-11.1.2.tar.gz': 'b0d0ca79188f85e5a6a178cf8e5ebde16cfeb30959f8862517daab60e0ae2691'},
+]
+
+builddependencies = [
+    ('CMake', '3.24.3'),
+]
+
+dependencies = [
+    ('expat', '2.4.8'),
+    # recommended CLHEP version, see https://geant4.web.cern.ch/download/release-notes/notes-v11.1.0.html
+    ('CLHEP', '2.4.6.2'),
+    ('Xerces-C++', '3.2.4'),
+    ('Qt5', '5.15.5'),
+    ('Geant4-data', '11.1', '', SYSTEM),
+]
+
+_copts = [
+    "-DGEANT4_INSTALL_DATA=OFF",
+    "-DGEANT4_USE_SYSTEM_ZLIB=ON",
+    "-DGEANT4_USE_SYSTEM_EXPAT=ON",
+    "-DGEANT4_USE_SYSTEM_CLHEP=ON",
+    "-DGEANT4_USE_QT=ON",
+    "-DGEANT4_USE_GDML=ON",
+    "-DGEANT4_USE_OPENGL_X11=ON",
+    "-DGEANT4_USE_RAYTRACER_X11=ON",
+]
+configopts = ' '.join(_copts)
+
+moduleclass = 'phys'
diff --git a/g/Geant4/Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch b/g/Geant4/Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch
new file mode 100644
index 0000000..ce99729
--- /dev/null
+++ b/g/Geant4/Geant4-11.1.2_use_data_env_vars_from_Geant4-data_module.patch
@@ -0,0 +1,50 @@
+Make geant4make.sh and geant4.sh pick up the data dirs from the Geant4-data module
+
+Ã…ke Sandgren, 2023-06-21
+diff -ru geant4-11.1.2.orig/cmake/Modules/G4ConfigureGNUMakeHelpers.cmake geant4-11.1.2/cmake/Modules/G4ConfigureGNUMakeHelpers.cmake
+--- geant4-11.1.2.orig/cmake/Modules/G4ConfigureGNUMakeHelpers.cmake	2023-06-19 17:14:55.000000000 +0200
++++ geant4-11.1.2/cmake/Modules/G4ConfigureGNUMakeHelpers.cmake	2023-06-21 16:07:17.147729642 +0200
+@@ -499,11 +499,12 @@
+   endif()
+ 
+   # - Resource file paths
+-  set(GEANT4_TC_DATASETS )
+-  foreach(_ds ${GEANT4_EXPORTED_DATASETS})
+-    _g4tc_setenv_command(_dssetenvcmd ${SHELL_FAMILY} ${${_ds}_ENVVAR} ${${_ds}_PATH})
+-    set(GEANT4_TC_DATASETS "${GEANT4_TC_DATASETS}${_dssetenvcmd}\n")
+-  endforeach()
++# Take the env vars from the EB Geant4-data module
++#  set(GEANT4_TC_DATASETS )
++#  foreach(_ds ${GEANT4_EXPORTED_DATASETS})
++#    _g4tc_setenv_command(_dssetenvcmd ${SHELL_FAMILY} ${${_ds}_ENVVAR} ${${_ds}_PATH})
++#    set(GEANT4_TC_DATASETS "${GEANT4_TC_DATASETS}${_dssetenvcmd}\n")
++#  endforeach()
+ 
+   set(GEANT4_TC_TOOLS_FONT_PATH "# FREETYPE SUPPORT NOT AVAILABLE")
+   if(GEANT4_USE_FREETYPE)
+@@ -987,8 +988,8 @@
+ 
+     # - Set data paths
+     set(GEANT4_ENV_DATASETS )
+-     _g4tc_setenv_command(_dssetenvcmd ${_shell} GEANT4_DATA_DIR ${GEANT4_DATA_DIR})
+-    set(GEANT4_ENV_DATASETS "${GEANT4_ENV_DATASETS}${_dssetenvcmd}\n")
++#     _g4tc_setenv_command(_dssetenvcmd ${_shell} GEANT4_DATA_DIR ${GEANT4_DATA_DIR})
++#    set(GEANT4_ENV_DATASETS "${GEANT4_ENV_DATASETS}${_dssetenvcmd}\n")
+     set(_dssetenvcmd "
+ # - Variables for individual datasets
+ # Uncomment the line and edit the path to the dataset if installed in not standard location.")
+@@ -1072,10 +1073,10 @@
+ 
+    # - Set data paths
+     set(GEANT4_ENV_DATASETS )
+-     _g4tc_setenv_command(_dssetenvcmd ${_shell} GEANT4_DATA_DIR ${GEANT4_DATA_DIRW})
+-    set(GEANT4_ENV_DATASETS "${GEANT4_ENV_DATASETS}${_dssetenvcmd}\n")
+-    set(_dssetenvcmd "FOR /F %%i IN ( \"%GEANT4_DATA_DIR%\" ) DO set \"GEANT4_DATA_DIR=%%~fi\"")
+-    set(GEANT4_ENV_DATASETS "${GEANT4_ENV_DATASETS}${_dssetenvcmd}\n\n")
++#     _g4tc_setenv_command(_dssetenvcmd ${_shell} GEANT4_DATA_DIR ${GEANT4_DATA_DIRW})
++#    set(GEANT4_ENV_DATASETS "${GEANT4_ENV_DATASETS}${_dssetenvcmd}\n")
++#    set(_dssetenvcmd "FOR /F %%i IN ( \"%GEANT4_DATA_DIR%\" ) DO set \"GEANT4_DATA_DIR=%%~fi\"")
++#    set(GEANT4_ENV_DATASETS "${GEANT4_ENV_DATASETS}${_dssetenvcmd}\n\n")
+     set(_dssetenvcmd "
+ rem - Variables for individual datasets
+ rem Uncomment the line and edit the path to the dataset if installed in not standard location.")
diff --git a/g/Go/Go-1.19.13.eb b/g/Go/Go-1.19.13.eb
new file mode 100644
index 0000000..931a3c9
--- /dev/null
+++ b/g/Go/Go-1.19.13.eb
@@ -0,0 +1,30 @@
+# Update to 1.19.13
+# Jordi Camps / CNAG
+
+easyblock = 'Tarball'
+
+name = 'Go'
+version = "1.19.13"
+
+homepage = 'https://www.golang.org'
+description = """Go is an open source programming language that makes it easy to build
+ simple, reliable, and efficient software."""
+
+toolchain = SYSTEM
+
+source_urls = ['https://storage.googleapis.com/golang/']
+
+local_archs = {'aarch64': 'arm64', 'x86_64': 'amd64'}
+sources = ['go%%(version)s.linux-%s.tar.gz' % local_archs[ARCH]]
+checksums = ['4643d4c29c55f53fa0349367d7f1bb5ca554ea6ef528c146825b0f8464e2e668']
+
+sanity_check_paths = {
+    'files': ['bin/go', 'bin/gofmt'],
+    'dirs': ['api', 'doc', 'lib', 'pkg'],
+}
+
+sanity_check_commands = ["go help"]
+
+modextravars = {'GOROOT': '%(installdir)s'}
+
+moduleclass = 'compiler'
diff --git a/g/GtkSourceView/GtkSourceView-3.24.11-GCCcore-11.3.0.eb b/g/GtkSourceView/GtkSourceView-3.24.11-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..865d5fe
--- /dev/null
+++ b/g/GtkSourceView/GtkSourceView-3.24.11-GCCcore-11.3.0.eb
@@ -0,0 +1,41 @@
+easyblock = 'ConfigureMake'
+
+name = 'GtkSourceView'
+version = '3.24.11'
+
+homepage = 'https://wiki.gnome.org/Projects/GtkSourceView'
+description = """
+ GtkSourceView is a GNOME library that extends GtkTextView, the standard GTK+
+ widget for multiline text editing. GtkSourceView adds support for syntax
+ highlighting, undo/redo, file loading and saving, search and replace, a
+ completion system, printing, displaying line numbers, and other features
+ typical of a source code editor.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = [FTPGNOME_SOURCE]
+sources = [SOURCELOWER_TAR_XZ]
+checksums = ['691b074a37b2a307f7f48edc5b8c7afa7301709be56378ccf9cc9735909077fd']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('pkg-config', '0.29.2'),
+    ('GObject-Introspection', '1.72.0'),
+]
+
+dependencies = [
+    ('GLib', '2.72.1'),
+    ('GTK+', '3.24.23'),
+    ('libxml2', '2.10.3','',True),
+]
+
+
+configopts = "--disable-silent-rules --enable-introspection=yes "
+
+sanity_check_paths = {
+    'files': ['lib/lib%%(namelower)s-%%(version_major)s.0.%s' % SHLIB_EXT],
+    'dirs': ['include/%(namelower)s-%(version_major)s.0', 'share'],
+}
+
+moduleclass = 'vis'
diff --git a/g/gappa/gappa-0.7.1-GCC-11.3.0.eb b/g/gappa/gappa-0.7.1-GCC-11.3.0.eb
new file mode 100644
index 0000000..2faaff7
--- /dev/null
+++ b/g/gappa/gappa-0.7.1-GCC-11.3.0.eb
@@ -0,0 +1,36 @@
+easyblock = 'MakeCp'
+
+name = 'gappa'
+version = '0.7.1'
+
+homepage = 'https://github.com/lczech/gappa'
+description = """
+gappa is a collection of commands for working with phylogenetic data. Its main
+focus are evolutionary placements of short environmental sequences on a
+reference phylogenetic tree. Such data is typically produced by tools like
+EPA-ng, RAxML-EPA or pplacer and usually stored in jplace files.
+"""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/lczech/gappa/archive/refs/tags/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['87aa73763c0bf2a2fe3b19e54cee66ce4c335a5e0d35ab839334090175e4c58c']
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('make', '4.3'),
+]
+
+files_to_copy = ['bin/%(name)s']
+
+modextrapaths = {'PATH': ''}
+
+sanity_check_paths = {
+    'files': ['%(name)s'],
+    'dirs': []
+}
+
+sanity_check_commands = ['%(name)s --version']
+
+moduleclass = 'bio'
diff --git a/g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb b/g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..1f38310
--- /dev/null
+++ b/g/gflags/gflags-2.2.2-GCCcore-11.3.0.eb
@@ -0,0 +1,35 @@
+easyblock = 'CMakeMake'
+
+name = 'gflags'
+version = '2.2.2'
+
+homepage = 'https://github.com/gflags/gflags'
+description = """
+The gflags package contains a C++ library that implements commandline flags
+processing.  It includes built-in support for standard types such as string
+and the ability to define flags in the source file in which they are used.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/gflags/gflags/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['34af2f15cf7367513b352bdcd2493ab14ce43692d2dcd9dfc499492966c64dcf']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('CMake', '3.24.3'),
+]
+
+configopts = '-DBUILD_SHARED_LIBS=ON -DBUILD_STATIC_LIBS=ON'
+
+sanity_check_paths = {
+    'files': ['bin/gflags_completions.sh'] +
+             ['lib/%s' % x for x in ['libgflags.%s' % SHLIB_EXT, 'libgflags_nothreads.%s' % SHLIB_EXT,
+                                     'libgflags.a', 'libgflags_nothreads.a']] +
+             ['include/gflags/gflags_completions.h'],
+    'dirs': [],
+}
+
+moduleclass = 'devel'
diff --git a/g/glog/glog-0.6.0-GCCcore-11.3.0.eb b/g/glog/glog-0.6.0-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..f22acb8
--- /dev/null
+++ b/g/glog/glog-0.6.0-GCCcore-11.3.0.eb
@@ -0,0 +1,32 @@
+easyblock = 'CMakeMake'
+
+name = 'glog'
+version = '0.6.0'
+
+homepage = 'https://github.com/google/glog'
+description = "A C++ implementation of the Google logging module."
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/google/glog/archive/']
+sources = ['v%(version)s.tar.gz']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('CMake', '3.23.1'),
+]
+
+dependencies = [
+    ('gflags', '2.2.2'),
+    ('libunwind', '1.6.2'),
+]
+
+configopts = '-DBUILD_SHARED_LIBS=ON '
+
+sanity_check_paths = {
+    'files': ['include/glog/logging.h', 'include/glog/raw_logging.h', 'lib/libglog.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'devel'
diff --git a/g/gretl/gretl-2020a-foss-2022a.eb b/g/gretl/gretl-2020a-foss-2022a.eb
new file mode 100644
index 0000000..45b8c61
--- /dev/null
+++ b/g/gretl/gretl-2020a-foss-2022a.eb
@@ -0,0 +1,41 @@
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+# Author: Loris Bennett
+# ZEDAT, Freie Universitaet Berlin
+
+easyblock = 'ConfigureMake'
+
+name = 'gretl'
+version = '2020a'
+
+homepage = 'http://gretl.sourceforge.net'
+description = "A cross-platform software package for econometric analysis"
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True, 'usempi': True}
+
+# http://prdownloads.sourceforge.net/gretl/gretl-2020a.tar.xz
+source_urls = ['http://prdownloads.sourceforge.net/%(name)s']
+sources = [SOURCELOWER_TAR_XZ]
+checksums = ['4c369f33c9aa825920229263bfd12560168c4e46282240bee3497436a7ae9b7b']
+
+builddependencies = [
+    ('gnuplot', '5.4.4'),
+    ('libxml2', '2.10.3','',True),
+    ('GMP', '6.2.1'),
+    ('GtkSourceView', '3.24.11'),
+    ('ImageMagick', '7.1.0-37'),
+    ('MPFR', '4.1.0'),
+    ('cURL', '7.83.0'),
+	('FlexiBLAS', '3.2.0'),
+]
+
+preconfigopts = 'export LDFLAGS="-fopenmp $LDFLAGS" && export LAPACK_LIBS="-L/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/lib -llibflexiblas" && '
+
+configopts = '--disable-json '
+
+sanity_check_paths = {
+    'files': ['bin/gretl', 'bin/gretlcli', 'bin/gretlmpi'],
+    'dirs': ['include/gretl', 'share']
+}
+
+moduleclass = 'math'
diff --git a/h/HDF5/HDF5-1.10.8-gompi-2022a.eb b/h/HDF5/HDF5-1.10.8-gompi-2022a.eb
new file mode 100644
index 0000000..3091b94
--- /dev/null
+++ b/h/HDF5/HDF5-1.10.8-gompi-2022a.eb
@@ -0,0 +1,28 @@
+# Updated to version 1.10.8, needed for HISAT2-2.2.1 
+# J. Sassmannshausen
+
+name = 'HDF5'
+version = '1.10.8'
+
+homepage = 'https://portal.hdfgroup.org/display/support'
+description = """HDF5 is a data model, library, and file format for storing and managing data.
+ It supports an unlimited variety of datatypes, and is designed for flexible
+ and efficient I/O and for high volume and complex data."""
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+source_urls = ['https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-%(version_major_minor)s/hdf5-%(version)s/src']
+sources = [SOURCELOWER_TAR_BZ2]
+checksums = ['66ec544b195a4cb9f6ffed034fd82e52429d6112747c2996ab69853f606e546b']
+
+dependencies = [
+    ('zlib', '1.2.12'),
+    ('Szip', '2.1.1'),
+]
+
+# needed to build HL-tools: gif2h5 gif2h5 and h5watch
+# beware that gif tools are affected by multiple CVEs: CVE-2018-17433, CVE-2018-17436, CVE-2020-10809
+# configopts = "--enable-hltools" 
+
+moduleclass = 'data'
diff --git a/h/HEALPix/HEALPix-3.82-GCCcore-11.3.0.eb b/h/HEALPix/HEALPix-3.82-GCCcore-11.3.0.eb
index e5cf0fa..67b920b 100644
--- a/h/HEALPix/HEALPix-3.82-GCCcore-11.3.0.eb
+++ b/h/HEALPix/HEALPix-3.82-GCCcore-11.3.0.eb
@@ -18,7 +18,7 @@ checksums = [
     'ec82c8b2beb80937c83d2e545e26ade08b3647ab5a3401c8703e6523b0782c08',  # HEALPix_noXtest.patch
 ]
 
-dependencies = [('CFITSIO', '4.2.0')]
+dependencies = [('CFITSIO', '3.49')]
 
 builddependencies = [('binutils', '2.38')]
 
diff --git a/h/hwloc/hwloc-1.11.8-GCCcore-11.3.0.eb b/h/hwloc/hwloc-1.11.8-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..be79984
--- /dev/null
+++ b/h/hwloc/hwloc-1.11.8-GCCcore-11.3.0.eb
@@ -0,0 +1,44 @@
+easyblock = 'ConfigureMake'
+
+name = 'hwloc'
+version = '1.11.8'
+
+homepage = 'https://www.open-mpi.org/projects/hwloc/'
+
+description = """
+ The Portable Hardware Locality (hwloc) software package provides a portable
+ abstraction (across OS, versions, architectures, ...) of the hierarchical
+ topology of modern architectures, including NUMA memory nodes, sockets, shared
+ caches, cores and simultaneous multithreading. It also gathers various system
+ attributes such as cache and memory information as well as the locality of I/O
+ devices such as network interfaces, InfiniBand HCAs or GPUs. It primarily
+ aims at helping applications with gathering information about modern computing
+ hardware so as to exploit it accordingly and efficiently.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://www.open-mpi.org/software/hwloc/v%(version_major_minor)s/downloads/']
+sources = [SOURCE_TAR_GZ]
+checksums = ['8af89b1164a330e36d18210360ea9bb305e19f9773d1c882855d261a13054ea8']
+
+builddependencies = [
+    ('binutils', '2.38'),
+]
+
+dependencies = [
+    ('numactl', '2.0.14'),
+    ('libxml2', '2.9.13'),
+    ('libpciaccess', '0.16'),
+]
+
+configopts = "--enable-libnuma=$EBROOTNUMACTL "
+configopts += "--disable-cairo --disable-opencl --disable-cuda --disable-nvml --disable-gl --disable-libudev "
+
+sanity_check_paths = {
+    'files': ['bin/lstopo', 'include/hwloc/linux.h',
+              'lib/libhwloc.%s' % SHLIB_EXT],
+    'dirs': ['share/man/man3'],
+}
+
+moduleclass = 'system'
diff --git a/i/imageio/imageio-2.22.2-foss-2022a.eb b/i/imageio/imageio-2.22.2-foss-2022a.eb
new file mode 100644
index 0000000..a340e81
--- /dev/null
+++ b/i/imageio/imageio-2.22.2-foss-2022a.eb
@@ -0,0 +1,25 @@
+easyblock = 'PythonPackage'
+
+name = 'imageio'
+version = '2.22.2'
+
+homepage = 'https://imageio.github.io'
+description = """Imageio is a Python library that provides an easy interface to read and write a wide range of
+ image data, including animated images, video, volumetric data, and scientific formats."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+sources = [SOURCE_TAR_GZ]
+checksums = ['db7010cd10712518819a4187baf61b05988361ea20c23e829918727b27acb977']
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('Pillow', '9.1.1'),
+]
+
+download_dep_fail = True
+use_pip = True
+sanity_pip_check = True
+
+moduleclass = 'vis'
diff --git a/i/instant-NGP/instant-NGP-18102023-GCC-11.3.0-CUDA-11.7.0.eb b/i/instant-NGP/instant-NGP-18102023-GCC-11.3.0-CUDA-11.7.0.eb
new file mode 100644
index 0000000..b376bb6
--- /dev/null
+++ b/i/instant-NGP/instant-NGP-18102023-GCC-11.3.0-CUDA-11.7.0.eb
@@ -0,0 +1,30 @@
+easyblock = 'CMakeMake'
+
+name = 'instant-NGP'
+version = '18102023'
+versionsuffix = '-CUDA-%(cudaver)s'
+
+
+homepage = 'https://github.com/NVlabs/instant-ngp'
+description = "Here you will find an implementation of four neural graphics primitives, being neural radiance fields (NeRF), signed distance functions (SDFs), neural images, and neural volumes. In each case, we train and render a MLP with multiresolution hash input encoding using the tiny-cuda-nn framework"
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+#source_urls = ['https://github.com/NVlabs/instant-ngp/archive/refs/tags']
+sources = ['continuous.tar.gz']
+
+cuda_compute_capabilities = ['6.0', '7.0', '8.0']
+
+dependencies = [
+    ('CMake', '3.23.1'),
+    ('OptiX', '7.6.0', '', SYSTEM),
+    ('Python', '3.10.4'),
+    ('CUDA', '11.7.0', '', SYSTEM),
+]
+
+sanity_check_paths = {
+    'files': [ ],
+    'dirs': ['lib', 'include', 'share'],
+}
+
+moduleclass = 'lib'
diff --git a/i/intervaltree-python/intervaltree-python-3.1.0-GCCcore-11.3.0.eb b/i/intervaltree-python/intervaltree-python-3.1.0-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..cf74f76
--- /dev/null
+++ b/i/intervaltree-python/intervaltree-python-3.1.0-GCCcore-11.3.0.eb
@@ -0,0 +1,30 @@
+# Author: Jasper Grimm (UoY)
+
+easyblock = 'PythonPackage'
+
+name = 'intervaltree-python'
+_modname = 'intervaltree'
+version = '3.1.0'
+
+homepage = 'https://github.com/chaimleib/intervaltree'
+description = """A mutable, self-balancing interval tree. Queries may be by
+ point, by range overlap, or by range containment.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://pypi.python.org/packages/source/i/%s' % _modname]
+sources = ['%s-%s.tar.gz' % (_modname, version)]
+checksums = ['902b1b88936918f9b2a19e0e5eb7ccb430ae45cde4f39ea4b36932920d33952d']
+
+builddependencies = [('binutils', '2.38')]
+
+dependencies = [('Python', '3.10.4')]
+
+use_pip = True
+download_dep_fail = True
+sanity_pip_check = True
+
+options = {'modulename': _modname}
+
+moduleclass = 'bio'
diff --git a/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb
new file mode 100644
index 0000000..2dd0afb
--- /dev/null
+++ b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb
@@ -0,0 +1,168 @@
+name = 'LAMMPS'
+version = '2Aug2023'
+versionsuffix = '-kokkos'
+
+homepage = 'https://www.lammps.org'
+description = """LAMMPS is a classical molecular dynamics code, and an acronym
+for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has
+potentials for solid-state materials (metals, semiconductors) and soft matter
+(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be
+used to model atoms or, more generically, as a parallel particle simulator at
+the atomic, meso, or continuum scale. LAMMPS runs on single processors or in
+parallel using message-passing techniques and a spatial-decomposition of the
+simulation domain. The code is designed to be easy to modify or extend with new
+functionality.
+"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True, 'usempi': True, 'cstd': 'c++14'}
+
+# 'https://github.com/lammps/lammps/archive/'
+source_urls = [GITHUB_LOWER_SOURCE]
+sources = ['stable_%(version)s_update1.tar.gz']
+checksums = ['0e5568485e5ee080412dba44a1b7a93f864f1b5c75121f11d528854269953ed0']
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('pkgconf', '1.8.0'),
+    ('archspec', '0.1.4'),
+    ('Python', '3.10.4'),
+]
+dependencies = [
+    ('Python', '3.10.4'),
+    ('libpng', '1.6.37'),
+    ('libjpeg-turbo', '2.1.3'),
+    ('netCDF', '4.9.0'),
+    ('GSL', '2.7'),
+    ('zlib', '1.2.12'),
+    ('gzip', '1.12'),
+    ('cURL', '7.83.0'),
+    ('HDF5', '1.12.2'),
+    ('tbb', '2021.5.0'),
+    ('PCRE', '8.45'),
+    ('libxml2', '2.9.13'),
+    ('FFmpeg', '4.4.2'),
+    ('Voro++', '0.4.6'),
+    ('kim-api', '2.3.0'),
+    ('Eigen', '3.4.0'),
+    ('PLUMED', '2.8.1'),
+    ('ScaFaCoS', '1.0.1'),
+    ('SciPy-bundle', '2022.05'),
+    # VTK package is auto-disabled if this dep is not available
+    #('VTK', '9.2.2'),
+]
+
+# To use additional custom configuration options, use the 'configopts' easyconfig parameter
+# See docs and lammps easyblock for more information.
+# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options
+
+# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos,
+# which is claimed to be faster in pure MPI calculations
+# configopts  = "-DKokkos_ENABLE_SERIAL=yes "
+
+
+# packages auto-enabled by easyblock
+# 'GPU'    - if cuda package is present and kokkos is disabled
+# 'KOKKOS' - if kokkos is enabled (by default)
+# 'INTEL'  - if builing on Intel CPU
+# 'OPENMP' - if OpenMP swithed on in 'toolchainopts'
+
+# include the following extra packages into the build
+general_packages = [
+    'AMOEBA',
+    'ASPHERE',
+    'ATC',
+    'AWPMD',
+    'BOCS',
+    'BODY',
+    'BPM',
+    'BROWNIAN',
+    'CG-SDK',
+    'CG-DNA',
+    'CG-SPICA',
+    'CLASS2',
+    'COLLOID',
+    'COLVARS',
+    'COMPRESS',
+    'CORESHELL',
+    'DIELECTRIC',
+    'DIFFRACTION',
+    'DIPOLE',
+    'DPD-BASIC',
+    'DPD-MESO',
+    'DPD-REACT',
+    'DPD-SMOOTH',
+    'DRUDE',
+    'EFF',
+    'ELECTRODE',
+    'EXTRA-COMPUTE',
+    'EXTRA-DUMP',
+    'EXTRA-FIX',
+    'EXTRA-MOLECULE',
+    'EXTRA-PAIR',
+    'FEP',
+    'GRANULAR',
+    'H5MD',
+    'INTERLAYER',
+    'KIM',
+    'KSPACE',
+    'LATBOLTZ',
+    'LEPTON',
+    'MACHDYN',
+    'MANIFOLD',
+    'MANYBODY',
+    'MC',
+    'MDI',
+    'MEAM',
+    'MGPT',
+    'MISC',
+    'ML-IAP',
+    'ML-PACE',
+    'ML-POD',
+    'ML-RANN',
+    'ML-SNAP',
+    'MOFFF',
+    'MOLECULE',
+    'MOLFILE',
+    'MPIIO',
+    'NETCDF',
+    'OPENMP',
+    'OPT',
+    'ORIENT',
+    'PERI',
+    'PHONON',
+    'PLUGIN',
+    'PLUMED',
+    'POEMS',
+    'PTM',
+    'PYTHON',
+    'QEQ',
+    'QTB',
+    'REACTION',
+    'REAXFF',
+    'REPLICA',
+    'RIGID',
+    'SCAFACOS',
+    'SHOCK',
+    'SMTBQ',
+    'SPH',
+    'SPIN',
+    'SRD',
+    'TALLY',
+    'UEF',
+    'VORONOI',
+    'VTK',
+    'YAFF',
+]
+
+# Excluded packages due to requiring additional (non-trivial) deps
+# - ADIOS
+# - LATTE
+# - MESONT (requires very large files downloaded during build)
+# - ML-HDNNP (requires N2P2)
+# - ML-QUIP
+# - MSCG
+# - QMMM (setup seems complex)
+
+
+moduleclass = 'chem'
diff --git a/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb.bak_20231006102413_30160 b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb.bak_20231006102413_30160
new file mode 100644
index 0000000..5fcc6fc
--- /dev/null
+++ b/l/LAMMPS/LAMMPS-2Aug2023-foss-2022a-kokkos.eb.bak_20231006102413_30160
@@ -0,0 +1,168 @@
+name = 'LAMMPS'
+version = '2Aug2023'
+versionsuffix = '-kokkos'
+
+homepage = 'https://www.lammps.org'
+description = """LAMMPS is a classical molecular dynamics code, and an acronym
+for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has
+potentials for solid-state materials (metals, semiconductors) and soft matter
+(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be
+used to model atoms or, more generically, as a parallel particle simulator at
+the atomic, meso, or continuum scale. LAMMPS runs on single processors or in
+parallel using message-passing techniques and a spatial-decomposition of the
+simulation domain. The code is designed to be easy to modify or extend with new
+functionality.
+"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True, 'usempi': True, 'cstd': 'c++14'}
+
+# 'https://github.com/lammps/lammps/archive/'
+source_urls = [GITHUB_LOWER_SOURCE]
+sources = ['stable_%(version)s_update1.tar.gz']
+checksums = ['42541b4dbd0d339d16ddb377e76d192bc3d1d5712fdf9e2cdc838fc980d0a0cf']
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('pkgconf', '1.8.0'),
+    ('archspec', '0.1.4'),
+    ('Python', '3.10.4'),
+]
+dependencies = [
+    ('Python', '3.10.4'),
+    ('libpng', '1.6.37'),
+    ('libjpeg-turbo', '2.1.3'),
+    ('netCDF', '4.9.0'),
+    ('GSL', '2.7'),
+    ('zlib', '1.2.12'),
+    ('gzip', '1.12'),
+    ('cURL', '7.83.0'),
+    ('HDF5', '1.12.2'),
+    ('tbb', '2021.5.0'),
+    ('PCRE', '8.45'),
+    ('libxml2', '2.9.13'),
+    ('FFmpeg', '4.4.2'),
+    ('Voro++', '0.4.6'),
+    ('kim-api', '2.3.0'),
+    ('Eigen', '3.4.0'),
+    ('PLUMED', '2.8.1'),
+    ('ScaFaCoS', '1.0.1'),
+    ('SciPy-bundle', '2022.05'),
+    # VTK package is auto-disabled if this dep is not available
+    ('VTK', '9.2.2'),
+]
+
+# To use additional custom configuration options, use the 'configopts' easyconfig parameter
+# See docs and lammps easyblock for more information.
+# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options
+
+# OpenMP-Kokkos build is default in the current easyblock. One can switch to serial backend of Kokkos,
+# which is claimed to be faster in pure MPI calculations
+# configopts  = "-DKokkos_ENABLE_SERIAL=yes "
+
+
+# packages auto-enabled by easyblock
+# 'GPU'    - if cuda package is present and kokkos is disabled
+# 'KOKKOS' - if kokkos is enabled (by default)
+# 'INTEL'  - if builing on Intel CPU
+# 'OPENMP' - if OpenMP swithed on in 'toolchainopts'
+
+# include the following extra packages into the build
+general_packages = [
+    'AMOEBA',
+    'ASPHERE',
+    'ATC',
+    'AWPMD',
+    'BOCS',
+    'BODY',
+    'BPM',
+    'BROWNIAN',
+    'CG-SDK',
+    'CG-DNA',
+    'CG-SPICA',
+    'CLASS2',
+    'COLLOID',
+    'COLVARS',
+    'COMPRESS',
+    'CORESHELL',
+    'DIELECTRIC',
+    'DIFFRACTION',
+    'DIPOLE',
+    'DPD-BASIC',
+    'DPD-MESO',
+    'DPD-REACT',
+    'DPD-SMOOTH',
+    'DRUDE',
+    'EFF',
+    'ELECTRODE',
+    'EXTRA-COMPUTE',
+    'EXTRA-DUMP',
+    'EXTRA-FIX',
+    'EXTRA-MOLECULE',
+    'EXTRA-PAIR',
+    'FEP',
+    'GRANULAR',
+    'H5MD',
+    'INTERLAYER',
+    'KIM',
+    'KSPACE',
+    'LATBOLTZ',
+    'LEPTON',
+    'MACHDYN',
+    'MANIFOLD',
+    'MANYBODY',
+    'MC',
+    'MDI',
+    'MEAM',
+    'MGPT',
+    'MISC',
+    'ML-IAP',
+    'ML-PACE',
+    'ML-POD',
+    'ML-RANN',
+    'ML-SNAP',
+    'MOFFF',
+    'MOLECULE',
+    'MOLFILE',
+    'MPIIO',
+    'NETCDF',
+    'OPENMP',
+    'OPT',
+    'ORIENT',
+    'PERI',
+    'PHONON',
+    'PLUGIN',
+    'PLUMED',
+    'POEMS',
+    'PTM',
+    'PYTHON',
+    'QEQ',
+    'QTB',
+    'REACTION',
+    'REAXFF',
+    'REPLICA',
+    'RIGID',
+    'SCAFACOS',
+    'SHOCK',
+    'SMTBQ',
+    'SPH',
+    'SPIN',
+    'SRD',
+    'TALLY',
+    'UEF',
+    'VORONOI',
+    'VTK',
+    'YAFF',
+]
+
+# Excluded packages due to requiring additional (non-trivial) deps
+# - ADIOS
+# - LATTE
+# - MESONT (requires very large files downloaded during build)
+# - ML-HDNNP (requires N2P2)
+# - ML-QUIP
+# - MSCG
+# - QMMM (setup seems complex)
+
+
+moduleclass = 'chem'
diff --git a/l/LAMMPS/LAMMPS-3Mar2020-foss-2022a-Python-3.10.4-kokkos.eb b/l/LAMMPS/LAMMPS-3Mar2020-foss-2022a-Python-3.10.4-kokkos.eb
new file mode 100644
index 0000000..f2af699
--- /dev/null
+++ b/l/LAMMPS/LAMMPS-3Mar2020-foss-2022a-Python-3.10.4-kokkos.eb
@@ -0,0 +1,107 @@
+name = 'LAMMPS'
+version = '3Mar2020'
+local_python_versionsuffix = '-Python-%(pyver)s'
+versionsuffix = local_python_versionsuffix
+versionsuffix += '-kokkos'
+
+homepage = 'https://lammps.sandia.gov/'
+description = """LAMMPS is a classical molecular dynamics code, and an acronym
+for Large-scale Atomic/Molecular Massively Parallel Simulator. LAMMPS has
+potentials for solid-state materials (metals, semiconductors) and soft matter
+(biomolecules, polymers) and coarse-grained or mesoscopic systems. It can be
+used to model atoms or, more generically, as a parallel particle simulator at
+the atomic, meso, or continuum scale. LAMMPS runs on single processors or in
+parallel using message-passing techniques and a spatial-decomposition of the
+simulation domain. The code is designed to be easy to modify or extend with new
+functionality.
+"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'openmp': True, 'usempi': True, 'cstd': 'c++11'}
+
+# 'https://github.com/lammps/lammps/archive/'
+source_urls = [GITHUB_LOWER_SOURCE]
+sources = [
+    'stable_%(version)s.tar.gz',
+    {'filename': 'lammps_vs_yaff_test_single_point_energy.py', 'extract_cmd': "cp %s %(builddir)s"},
+]
+patches = [
+    'lammps-3mar2020_fix-docs-build.patch',
+    'lammps-stable_3Mar2020_hack_openmp_gcc9.patch',
+    'lammps-3mar2020_kokkos-config-header.patch',
+]
+checksums = [
+    {'stable_3Mar2020.tar.gz': 'a1a2e3e763ef5baecea258732518d75775639db26e60af1634ab385ed89224d1'},
+    {'lammps_vs_yaff_test_single_point_energy.py': 'c28fa5a1ea9608e4fd8686937be501c3bed8cc03ce1956f1cf0a1efce2c75349'},
+    {'lammps-3mar2020_fix-docs-build.patch': '7f010853d81022f286cf32e3babe252d5cc7c0bfb274bee5a2c64e810e170239'},
+    {'lammps-stable_3Mar2020_hack_openmp_gcc9.patch':
+     '41a0bcb828be22d38bb489bbd4b1fd7803d7771a2308371f01e961c52b8c869f'},
+    {'lammps-3mar2020_kokkos-config-header.patch': '15fa64d8c747e990e8556ee0266bab34ff9049b208527b28d29b05e2a91d95cb'},
+]
+
+local_source_dir_name = '%(namelower)s-%(version)s'
+
+# see https://github.com/lammps/lammps/pull/1483 for why this is needed
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('pkg-config', '0.29.2'),
+    #('archspec', '0.1.4', local_python_versionsuffix),
+    ('archspec', '0.1.4'),
+]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('libpng', '1.6.37'),
+    ('libjpeg-turbo', '2.1.3'),
+    ('PnetCDF', '1.12.3'),
+    ('GSL', '2.7'),
+    ('zlib', '1.2.12'),
+    ('gzip', '1.12'),
+    ('HDF5', '1.12.2'),
+    ('tbb', '2021.5.0'),
+    ('PCRE', '8.45'),
+    ('libxml2', '2.9.13'),
+    ('FFmpeg', '4.4.2'),
+    ('Voro++', '0.4.6'),
+    ('FFTW', '3.3.10'),
+    ('kim-api', '2.3.0'),
+    ('Eigen', '3.3.9'),
+    ('yaff', '1.6.0'),
+    ('PLUMED', '2.8.1'),
+]
+
+# To use additional custom configuration options, use the 'configopts' easyconfig parameter
+# See docs and lammps easyblock for more information.
+# https://github.com/lammps/lammps/blob/master/cmake/README.md#lammps-configuration-options
+# Disable building the docs
+configopts = "-DBUILD_DOC=off "
+
+
+# auto-enabled by easyblock
+# 'GPU'    - if cuda package is present and kokkos is disabled
+# 'KOKKOS' - if kokkos is enabled (by default)
+#
+# not enabled (yet), needs more work/additional dependencies:
+# 'LATTE', - https://lammps.sandia.gov/doc/Build_extras.html#latte-package
+# 'MSCG',  - https://lammps.sandia.gov/doc/Build_extras.html#mscg-package
+general_packages = [
+    'ASPHERE', 'BODY', 'CLASS2', 'COLLOID', 'COMPRESS', 'CORESHELL', 'DIPOLE',
+    'GRANULAR', 'KIM', 'KSPACE', 'MANYBODY', 'MC', 'MESSAGE', 'MISC',
+    'MOLECULE', 'MPIIO', 'PERI', 'POEMS', 'PYTHON', 'QEQ', 'REPLICA', 'RIGID',
+    'SHOCK', 'SNAP', 'SPIN', 'SRD', 'VORONOI',
+]
+
+# not enabled (yet), needs more work/additional dependencies:
+# ADIOS - https://lammps.sandia.gov/doc/Build_extras.html#user-adios-package
+# AWPMD - https://lammps.sandia.gov/doc/Build_extras.html#user-awpmd-package
+# QUIP  - https://lammps.sandia.gov/doc/Build_extras.html#user-quip-package
+# SCAFACOS - https://lammps.sandia.gov/doc/Build_extras.html#user-scafacos-package
+# VTK - https://lammps.sandia.gov/doc/Build_extras.html#user-vtk-package
+user_packages = [
+    'ATC', 'BOCS', 'CGDNA', 'CGSDK', 'COLVARS', 'DIFFRACTION', 'DPD', 'DRUDE',
+    'EFF', 'FEP', 'H5MD', 'LB', 'MANIFOLD', 'MEAMC', 'MESO', 'MGPT', 'MISC',
+    'MOFFF', 'MOLFILE', 'NETCDF', 'PHONON', 'PLUMED', 'PTM', 'QTB', 'REAXC',
+    'SCAFACOS', 'SDPD', 'SMD', 'SMTBQ', 'SPH', 'TALLY', 'UEF', 'YAFF', 'VTK'
+]
+
+moduleclass = 'chem'
diff --git a/l/LAMMPS/lammps-3mar2020_fix-docs-build.patch b/l/LAMMPS/lammps-3mar2020_fix-docs-build.patch
new file mode 100644
index 0000000..65d5def
--- /dev/null
+++ b/l/LAMMPS/lammps-3mar2020_fix-docs-build.patch
@@ -0,0 +1,31 @@
+fix hanging during building of documentation (hanging sphinx-build processes),
+and prevent auto-downloading of Sphinx and dependencies to build documentation (already provided via EasyBuild)
+author: Kenneth Hoste (HPC-UGent)
+--- lammps-stable_3Mar2020/cmake/Modules/Documentation.cmake.orig	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/cmake/Modules/Documentation.cmake	2020-05-03 11:26:14.441071541 +0200
+@@ -3,8 +3,6 @@
+ ###############################################################################
+ option(BUILD_DOC "Build LAMMPS documentation" OFF)
+ if(BUILD_DOC)
+-  include(ProcessorCount)
+-  ProcessorCount(NPROCS)
+   find_package(PythonInterp 3 REQUIRED)
+ 
+   set(VIRTUALENV ${PYTHON_EXECUTABLE} -m virtualenv)
+@@ -22,14 +20,14 @@
+     OUTPUT requirements.txt
+     DEPENDS docenv
+     COMMAND ${CMAKE_COMMAND} -E copy ${LAMMPS_DOC_DIR}/utils/requirements.txt requirements.txt
+-    COMMAND ${DOCENV_BINARY_DIR}/pip install -r requirements.txt --upgrade
++    #COMMAND ${DOCENV_BINARY_DIR}/pip install -r requirements.txt --upgrade
+     COMMAND ${DOCENV_BINARY_DIR}/pip install --upgrade ${LAMMPS_DOC_DIR}/utils/converters
+   )
+ 
+   add_custom_command(
+     OUTPUT html
+     DEPENDS ${DOC_SOURCES} docenv requirements.txt
+-    COMMAND ${DOCENV_BINARY_DIR}/sphinx-build -j ${NPROCS} -b html -c ${LAMMPS_DOC_DIR}/utils/sphinx-config -d ${CMAKE_BINARY_DIR}/doctrees ${LAMMPS_DOC_DIR}/src html
++    COMMAND sphinx-build -b html -c ${LAMMPS_DOC_DIR}/utils/sphinx-config -d ${CMAKE_BINARY_DIR}/doctrees ${LAMMPS_DOC_DIR}/src html
+   )
+ 
+   add_custom_target(
diff --git a/l/LAMMPS/lammps-3mar2020_kokkos-config-header.patch b/l/LAMMPS/lammps-3mar2020_kokkos-config-header.patch
new file mode 100644
index 0000000..a312a35
--- /dev/null
+++ b/l/LAMMPS/lammps-3mar2020_kokkos-config-header.patch
@@ -0,0 +1,44 @@
+--- lammps-stable_3Mar2020/lib/kokkos/Makefile.kokkos.orig	2023-09-28 21:50:52.089233000 +1000
++++ lammps-stable_3Mar2020/lib/kokkos/Makefile.kokkos	2023-09-28 22:06:45.744829159 +1000
+@@ -412,13 +412,37 @@
+ KOKKOS_INTERNAL_CONFIG_TMP=KokkosCore_config.tmp
+ KOKKOS_CONFIG_HEADER=KokkosCore_config.h
+ # Functions for generating config header file
+-kokkos_append_header = $(shell echo $1 >> $(KOKKOS_INTERNAL_CONFIG_TMP))
++
++kokkos_append_header = $(shell echo "// "$1 >> $(KOKKOS_INTERNAL_CONFIG_TMP))
+ 
+ # Do not append first line
+ tmp := $(shell echo "/* ---------------------------------------------" > KokkosCore_config.tmp)
+-tmp := $(call kokkos_append_header,"Makefile constructed configuration:")
+-tmp := $(call kokkos_append_header,"$(shell date)")
+-tmp := $(call kokkos_append_header,"----------------------------------------------*/")
++tmp := $(call echo "Makefile constructed configuration:" >> KokkosCore_config.tmp)
++tmp := $(call echo "$(shell date)" >> KokkosCore_config.tmp)
++tmp := $(call echo "----------------------------------------------*/" >> KokkosCore_config.tmp)
++
++tmp := $(shell echo '#if !defined(KOKKOS_MACROS_HPP) || defined(KOKKOS_CORE_CONFIG_H)' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#error "Do not include KokkosCore_config.h directly; include Kokkos_Macros.hpp instead."' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#else' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_CORE_CONFIG_H' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#endif' >> KokkosCore_config.tmp)
++tmp := $(shell echo '/* Execution Spaces */' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_ENABLE_OPENMP' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_ENABLE_SERIAL' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#ifndef __CUDA_ARCH__' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_ENABLE_TM' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#endif' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#ifndef __CUDA_ARCH__' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_USE_ISA_X86_64' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#endif' >> KokkosCore_config.tmp)
++tmp := $(shell echo '/* General Settings */' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_ENABLE_CXX11' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_USE_LIBRT' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_ENABLE_PROFILING' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_ENABLE_DEPRECATED_CODE' >> KokkosCore_config.tmp)
++tmp := $(shell echo '/* Optimization Settings */' >> KokkosCore_config.tmp)
++tmp := $(shell echo '/* Cuda Settings */' >> KokkosCore_config.tmp)
++tmp := $(shell echo '#define KOKKOS_ARCH_AVX512XEON' >> KokkosCore_config.tmp)
+ 
+ tmp := $(call kokkos_append_header,'\#if !defined(KOKKOS_MACROS_HPP) || defined(KOKKOS_CORE_CONFIG_H)')
+ tmp := $(call kokkos_append_header,'\#error "Do not include $(KOKKOS_CONFIG_HEADER) directly; include Kokkos_Macros.hpp instead."')
diff --git a/l/LAMMPS/lammps-stable_3Mar2020_hack_openmp_gcc9.patch b/l/LAMMPS/lammps-stable_3Mar2020_hack_openmp_gcc9.patch
new file mode 100644
index 0000000..f36d414
--- /dev/null
+++ b/l/LAMMPS/lammps-stable_3Mar2020_hack_openmp_gcc9.patch
@@ -0,0 +1,3969 @@
+Patch generated by recursively applying
+lammps-stable_3Mar2020.orig/src/USER-OMP/hack_openmp_for_pgi_gcc9.sh
+to the 'src' directory, which allows this version of LAMMPS to build
+for GCC 9.
+
+Alan O'Cais 20200324
+diff -Nru lammps-stable_3Mar2020.orig/src/MPIIO/dump_atom_mpiio.cpp lammps-stable_3Mar2020/src/MPIIO/dump_atom_mpiio.cpp
+--- lammps-stable_3Mar2020.orig/src/MPIIO/dump_atom_mpiio.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/MPIIO/dump_atom_mpiio.cpp	2020-03-20 16:49:44.619401713 +0100
+@@ -587,7 +587,7 @@
+     mpifh_buffer_line_per_thread[i] = (char *) malloc(DUMP_BUF_CHUNK_SIZE * sizeof(char));
+     mpifh_buffer_line_per_thread[i][0] = '\0';
+
+-#pragma omp parallel default(none) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
++#pragma omp parallel default(shared) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
+     {
+       int tid = omp_get_thread_num();
+       int m=0;
+@@ -677,7 +677,7 @@
+     mpifh_buffer_line_per_thread[i] = (char *) malloc(DUMP_BUF_CHUNK_SIZE * sizeof(char));
+     mpifh_buffer_line_per_thread[i][0] = '\0';
+
+-#pragma omp parallel default(none) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
++#pragma omp parallel default(shared) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
+     {
+       int tid = omp_get_thread_num();
+       int m=0;
+diff -Nru lammps-stable_3Mar2020.orig/src/MPIIO/dump_cfg_mpiio.cpp lammps-stable_3Mar2020/src/MPIIO/dump_cfg_mpiio.cpp
+--- lammps-stable_3Mar2020.orig/src/MPIIO/dump_cfg_mpiio.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/MPIIO/dump_cfg_mpiio.cpp	2020-03-20 16:49:44.623401733 +0100
+@@ -365,7 +365,7 @@
+     mpifh_buffer_line_per_thread[i] = (char *) malloc(DUMP_BUF_CHUNK_SIZE * sizeof(char));
+     mpifh_buffer_line_per_thread[i][0] = '\0';
+
+-#pragma omp parallel default(none) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
++#pragma omp parallel default(shared) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
+     {
+       int tid = omp_get_thread_num();
+       int m=0;
+diff -Nru lammps-stable_3Mar2020.orig/src/MPIIO/dump_custom_mpiio.cpp lammps-stable_3Mar2020/src/MPIIO/dump_custom_mpiio.cpp
+--- lammps-stable_3Mar2020.orig/src/MPIIO/dump_custom_mpiio.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/MPIIO/dump_custom_mpiio.cpp	2020-03-20 16:49:44.627401752 +0100
+@@ -612,7 +612,7 @@
+     mpifh_buffer_line_per_thread[i] = (char *) malloc(DUMP_BUF_CHUNK_SIZE * sizeof(char));
+     mpifh_buffer_line_per_thread[i][0] = '\0';
+
+-#pragma omp parallel default(none) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
++#pragma omp parallel default(shared) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
+     {
+       int tid = omp_get_thread_num();
+       int m=0;
+diff -Nru lammps-stable_3Mar2020.orig/src/MPIIO/dump_xyz_mpiio.cpp lammps-stable_3Mar2020/src/MPIIO/dump_xyz_mpiio.cpp
+--- lammps-stable_3Mar2020.orig/src/MPIIO/dump_xyz_mpiio.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/MPIIO/dump_xyz_mpiio.cpp	2020-03-20 16:49:44.631401773 +0100
+@@ -350,7 +350,7 @@
+     mpifh_buffer_line_per_thread[i] = (char *) malloc(DUMP_BUF_CHUNK_SIZE * sizeof(char));
+     mpifh_buffer_line_per_thread[i][0] = '\0';
+
+-#pragma omp parallel default(none) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
++#pragma omp parallel default(shared) shared(bufOffset, bufRange, bufLength, mpifhStringCountPerThread, mpifh_buffer_line_per_thread, mybuf)
+     {
+       int tid = omp_get_thread_num();
+       int m=0;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-DIFFRACTION/compute_saed.cpp lammps-stable_3Mar2020/src/USER-DIFFRACTION/compute_saed.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-DIFFRACTION/compute_saed.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-DIFFRACTION/compute_saed.cpp	2020-03-20 16:49:45.761407407 +0100
+@@ -418,7 +418,7 @@
+   double frac = 0.1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(offset,ASFSAED,typelocal,xlocal,Fvec,m,frac)
++#pragma omp parallel default(shared) shared(offset,ASFSAED,typelocal,xlocal,Fvec,m,frac)
+ #endif
+   {
+     double *f = new double[ntypes];    // atomic structure factor by type
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-DIFFRACTION/compute_xrd.cpp lammps-stable_3Mar2020/src/USER-DIFFRACTION/compute_xrd.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-DIFFRACTION/compute_xrd.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-DIFFRACTION/compute_xrd.cpp	2020-03-20 16:49:45.765407427 +0100
+@@ -353,7 +353,7 @@
+   double frac = 0.1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(typelocal,xlocal,Fvec,m,frac,ASFXRD)
++#pragma omp parallel default(shared) shared(typelocal,xlocal,Fvec,m,frac,ASFXRD)
+ #endif
+   {
+     double *f = new double[ntypes];    // atomic structure factor by type
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/angle_charmm_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/angle_charmm_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/angle_charmm_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/angle_charmm_intel.cpp	2020-03-20 16:49:46.332410255 +0100
+@@ -134,7 +134,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc) \
+     reduction(+:oeangle,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/angle_harmonic_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/angle_harmonic_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/angle_harmonic_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/angle_harmonic_intel.cpp	2020-03-20 16:49:46.336410275 +0100
+@@ -134,7 +134,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc) \
+     reduction(+:oeangle,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/bond_fene_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/bond_fene_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/bond_fene_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/bond_fene_intel.cpp	2020-03-20 16:49:46.339410290 +0100
+@@ -127,7 +127,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc)           \
+     reduction(+:oebond,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/bond_harmonic_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/bond_harmonic_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/bond_harmonic_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/bond_harmonic_intel.cpp	2020-03-20 16:49:46.342410305 +0100
+@@ -127,7 +127,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc)           \
+     reduction(+:oebond,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_charmm_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/dihedral_charmm_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_charmm_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/dihedral_charmm_intel.cpp	2020-03-20 16:49:46.347410330 +0100
+@@ -148,7 +148,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc)           \
+     reduction(+:oevdwl,oecoul,oedihedral,ov0,ov1,ov2,ov3,ov4,ov5, \
+               opv0,opv1,opv2,opv3,opv4,opv5)
+@@ -522,7 +522,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc)           \
+     reduction(+:oevdwl,oecoul,oedihedral,ov0,ov1,ov2,ov3,ov4,ov5, \
+               opv0,opv1,opv2,opv3,opv4,opv5)
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_fourier_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/dihedral_fourier_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_fourier_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/dihedral_fourier_intel.cpp	2020-03-20 16:49:46.351410350 +0100
+@@ -127,7 +127,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc)           \
+     reduction(+:oedihedral,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_harmonic_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/dihedral_harmonic_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_harmonic_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/dihedral_harmonic_intel.cpp	2020-03-20 16:49:46.354410364 +0100
+@@ -127,7 +127,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc)           \
+     reduction(+:oedihedral,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_opls_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/dihedral_opls_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/dihedral_opls_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/dihedral_opls_intel.cpp	2020-03-20 16:49:46.358410384 +0100
+@@ -131,7 +131,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc)           \
+     reduction(+:oedihedral,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/fix_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/fix_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/fix_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/fix_intel.cpp	2020-03-20 16:49:46.364410414 +0100
+@@ -220,7 +220,7 @@
+     comm->nthreads = nomp;
+   } else {
+     int nthreads;
+-    #pragma omp parallel default(none) shared(nthreads)
++    #pragma omp parallel default(shared)
+     nthreads = omp_get_num_threads();
+     comm->nthreads = nthreads;
+   }
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/improper_cvff_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/improper_cvff_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/improper_cvff_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/improper_cvff_intel.cpp	2020-03-20 16:49:46.385410519 +0100
+@@ -138,7 +138,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc) \
+     reduction(+:oeimproper,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/improper_harmonic_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/improper_harmonic_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/improper_harmonic_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/improper_harmonic_intel.cpp	2020-03-20 16:49:46.389410539 +0100
+@@ -139,7 +139,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(f_start,f_stride,fc) \
+     reduction(+:oeimproper,ov0,ov1,ov2,ov3,ov4,ov5)
+   #endif
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/npair_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/npair_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/npair_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/npair_intel.cpp	2020-03-20 16:49:46.414410664 +0100
+@@ -263,7 +263,7 @@
+     }
+
+     #if defined(_OPENMP)
+-    #pragma omp parallel default(none) \
++    #pragma omp parallel default(shared) \
+       shared(overflow, nstencilp, binstart, binend)
+     #endif
+     {
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/pppm_disp_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/pppm_disp_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/pppm_disp_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/pppm_disp_intel.cpp	2020-03-20 16:49:46.509411137 +0100
+@@ -728,7 +728,7 @@
+   int flag = 0;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr, delx, dely, delz, sft, p2g, nup, nlow, nxlo,\
+            nylo, nzlo, nxhi, nyhi, nzhi) reduction(+:flag) if(!_use_lrt)
+   #endif
+@@ -802,7 +802,7 @@
+   int nthr = comm->nthreads;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nthr, nlocal, global_density) if(!_use_lrt)
+   #endif
+   {
+@@ -908,7 +908,7 @@
+
+   // reduce all the perthread_densities into global_density
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nthr, global_density) if(!_use_lrt)
+   #endif
+   {
+@@ -950,7 +950,7 @@
+   int nthr = comm->nthreads;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nthr, nlocal, global_density) if(!_use_lrt)
+   #endif
+   {
+@@ -1058,7 +1058,7 @@
+
+   // reduce all the perthread_densities into global_density
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nthr, global_density) if(!_use_lrt)
+   #endif
+   {
+@@ -1233,7 +1233,7 @@
+   int nthr = comm->nthreads;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nthr, nlocal, global_density) if(!_use_lrt)
+   #endif
+   {
+@@ -1342,7 +1342,7 @@
+
+   // reduce all the perthread_densities into global_density
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nthr, global_density) if(!_use_lrt)
+   #endif
+   {
+@@ -1385,7 +1385,7 @@
+
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -1535,7 +1535,7 @@
+   FFT_SCALAR * _noalias const particle_ekz = this->particle_ekz;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -1733,7 +1733,7 @@
+
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -1880,7 +1880,7 @@
+   FFT_SCALAR * _noalias const particle_ekz = this->particle_ekz;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -2077,7 +2077,7 @@
+
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -2311,7 +2311,7 @@
+   FFT_SCALAR * _noalias const particle_ekz6 = this->particle_ekz6;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -2602,7 +2602,7 @@
+
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -2761,7 +2761,7 @@
+   int nthr = comm->nthreads;
+
+    #if defined(_OPENMP)
+-   #pragma omp parallel default(none)           \
++   #pragma omp parallel default(shared)           \
+      shared(nlocal, nthr) if(!_use_lrt)
+    #endif
+   {
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-INTEL/pppm_intel.cpp lammps-stable_3Mar2020/src/USER-INTEL/pppm_intel.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-INTEL/pppm_intel.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-INTEL/pppm_intel.cpp	2020-03-20 16:49:46.515411167 +0100
+@@ -360,7 +360,7 @@
+     error->one(FLERR,"Non-numeric box dimensions - simulation unstable");
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) reduction(+:flag) if(!_use_lrt)
+   #endif
+   {
+@@ -434,7 +434,7 @@
+     nthr = comm->nthreads;
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nthr, nlocal, global_density) if(!_use_lrt)
+   #endif
+   {
+@@ -537,7 +537,7 @@
+   // reduce all the perthread_densities into global_density
+   if (nthr > 1) {
+     #if defined(_OPENMP)
+-    #pragma omp parallel default(none) \
++    #pragma omp parallel default(shared) \
+       shared(nthr, global_density) if(!_use_lrt)
+     #endif
+     {
+@@ -586,7 +586,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+@@ -737,7 +737,7 @@
+   }
+
+   #if defined(_OPENMP)
+-  #pragma omp parallel default(none) \
++  #pragma omp parallel default(shared) \
+     shared(nlocal, nthr) if(!_use_lrt)
+   #endif
+   {
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_charmm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_charmm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_charmm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_charmm_omp.cpp	2020-03-20 16:49:48.136419251 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_class2_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_class2_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_class2_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_class2_omp.cpp	2020-03-20 16:49:48.139419266 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_delta_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_delta_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_delta_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_delta_omp.cpp	2020-03-20 16:49:48.141419276 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_omp.cpp	2020-03-20 16:49:48.144419291 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_periodic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_periodic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_periodic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_periodic_omp.cpp	2020-03-20 16:49:48.147419306 +0100
+@@ -49,7 +49,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_shift_exp_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_shift_exp_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_shift_exp_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_shift_exp_omp.cpp	2020-03-20 16:49:48.149419316 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_shift_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_shift_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_shift_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_shift_omp.cpp	2020-03-20 16:49:48.152419330 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_squared_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_squared_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_cosine_squared_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_cosine_squared_omp.cpp	2020-03-20 16:49:48.154419341 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_dipole_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_dipole_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_dipole_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_dipole_omp.cpp	2020-03-20 16:49:48.157419355 +0100
+@@ -51,7 +51,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_fourier_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_fourier_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_fourier_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_fourier_omp.cpp	2020-03-20 16:49:48.160419370 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_fourier_simple_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_fourier_simple_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_fourier_simple_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_fourier_simple_omp.cpp	2020-03-20 16:49:48.164419390 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_harmonic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_harmonic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_harmonic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_harmonic_omp.cpp	2020-03-20 16:49:48.166419400 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_quartic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_quartic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_quartic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_quartic_omp.cpp	2020-03-20 16:49:48.169419415 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_sdk_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_sdk_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_sdk_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_sdk_omp.cpp	2020-03-20 16:49:48.171419425 +0100
+@@ -49,7 +49,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/angle_table_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/angle_table_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/angle_table_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/angle_table_omp.cpp	2020-03-20 16:49:48.174419440 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nanglelist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_class2_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_class2_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_class2_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_class2_omp.cpp	2020-03-20 16:49:48.177419455 +0100
+@@ -47,7 +47,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_fene_expand_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_fene_expand_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_fene_expand_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_fene_expand_omp.cpp	2020-03-20 16:49:48.179419465 +0100
+@@ -48,7 +48,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_fene_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_fene_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_fene_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_fene_omp.cpp	2020-03-20 16:49:48.182419480 +0100
+@@ -48,7 +48,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_gromos_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_gromos_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_gromos_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_gromos_omp.cpp	2020-03-20 16:49:48.184419490 +0100
+@@ -44,7 +44,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_harmonic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_harmonic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_harmonic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_harmonic_omp.cpp	2020-03-20 16:49:48.187419505 +0100
+@@ -46,7 +46,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_harmonic_shift_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_harmonic_shift_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_harmonic_shift_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_harmonic_shift_cut_omp.cpp	2020-03-20 16:49:48.189419515 +0100
+@@ -46,7 +46,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_harmonic_shift_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_harmonic_shift_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_harmonic_shift_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_harmonic_shift_omp.cpp	2020-03-20 16:49:48.191419525 +0100
+@@ -46,7 +46,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_morse_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_morse_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_morse_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_morse_omp.cpp	2020-03-20 16:49:48.194419540 +0100
+@@ -46,7 +46,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_nonlinear_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_nonlinear_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_nonlinear_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_nonlinear_omp.cpp	2020-03-20 16:49:48.196419550 +0100
+@@ -46,7 +46,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_quartic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_quartic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_quartic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_quartic_omp.cpp	2020-03-20 16:49:48.199419565 +0100
+@@ -52,7 +52,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/bond_table_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/bond_table_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/bond_table_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/bond_table_omp.cpp	2020-03-20 16:49:48.202419580 +0100
+@@ -46,7 +46,7 @@
+   const int inum = neighbor->nbondlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_charmm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_charmm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_charmm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_charmm_omp.cpp	2020-03-20 16:49:48.205419595 +0100
+@@ -56,7 +56,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_class2_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_class2_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_class2_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_class2_omp.cpp	2020-03-20 16:49:48.209419615 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_cosine_shift_exp_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_cosine_shift_exp_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_cosine_shift_exp_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_cosine_shift_exp_omp.cpp	2020-03-20 16:49:48.212419630 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_fourier_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_fourier_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_fourier_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_fourier_omp.cpp	2020-03-20 16:49:48.215419645 +0100
+@@ -49,7 +49,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_harmonic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_harmonic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_harmonic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_harmonic_omp.cpp	2020-03-20 16:49:48.218419660 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_helix_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_helix_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_helix_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_helix_omp.cpp	2020-03-20 16:49:48.222419680 +0100
+@@ -53,7 +53,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_multi_harmonic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_multi_harmonic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_multi_harmonic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_multi_harmonic_omp.cpp	2020-03-20 16:49:48.227419705 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_nharmonic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_nharmonic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_nharmonic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_nharmonic_omp.cpp	2020-03-20 16:49:48.230419719 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_opls_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_opls_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_opls_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_opls_omp.cpp	2020-03-20 16:49:48.235419744 +0100
+@@ -51,7 +51,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_quadratic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_quadratic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_quadratic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_quadratic_omp.cpp	2020-03-20 16:49:48.238419759 +0100
+@@ -51,7 +51,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_table_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/dihedral_table_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/dihedral_table_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/dihedral_table_omp.cpp	2020-03-20 16:49:48.241419774 +0100
+@@ -113,7 +113,7 @@
+   const int inum = neighbor->ndihedrallist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/domain_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/domain_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/domain_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/domain_omp.cpp	2020-03-20 16:49:48.244419789 +0100
+@@ -45,7 +45,7 @@
+   const int nlocal = atom->nlocal;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     imageint idim,otherdims;
+@@ -143,7 +143,7 @@
+   const int num = n;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int i = 0; i < num; i++) {
+     x[i].x = h[0]*x[i].x + h[5]*x[i].y + h[4]*x[i].z + boxlo[0];
+@@ -163,7 +163,7 @@
+   const int num = n;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int i = 0; i < num; i++) {
+     double delta0 = x[i].x - boxlo[0];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/ewald_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/ewald_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/ewald_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/ewald_omp.cpp	2020-03-20 16:49:48.247419804 +0100
+@@ -104,7 +104,7 @@
+   v0=v1=v2=v3=v4=v5=0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag) reduction(+:eng_tmp,v0,v1,v2,v3,v4,v5)
++#pragma omp parallel default(shared)  reduction(+:eng_tmp,v0,v1,v2,v3,v4,v5)
+ #endif
+   {
+
+@@ -234,7 +234,7 @@
+   const int nthreads = comm->nthreads;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int i,ifrom,ito,k,l,m,n,ic,tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_gravity_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_gravity_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_gravity_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_gravity_omp.cpp	2020-03-20 16:49:48.250419819 +0100
+@@ -69,7 +69,7 @@
+
+   if (rmass) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(-:grav)
++#pragma omp parallel for default(shared) reduction(-:grav)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & groupbit) {
+@@ -81,7 +81,7 @@
+       }
+   } else {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(-:grav)
++#pragma omp parallel for default(shared) reduction(-:grav)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & groupbit) {
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_neigh_history_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_neigh_history_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_neigh_history_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_neigh_history_omp.cpp	2020-03-20 16:49:48.254419839 +0100
+@@ -73,7 +73,7 @@
+   maxpartner = 0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+
+@@ -199,7 +199,7 @@
+   for (int i = 0; i < nall_neigh; i++) npartner[i] = 0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+
+@@ -373,7 +373,7 @@
+   maxpartner = 0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+
+@@ -525,7 +525,7 @@
+
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nh_asphere_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_nh_asphere_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nh_asphere_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_nh_asphere_omp.cpp	2020-03-20 16:49:48.256419849 +0100
+@@ -82,7 +82,7 @@
+   // merged with FixNHOMP instead of calling it for the COM update.
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     if (mask[i] & groupbit) {
+@@ -122,7 +122,7 @@
+   // principal moments of inertia
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++)
+     if (mask[i] & groupbit) {
+@@ -163,7 +163,7 @@
+
+   if (which == NOBIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       if (mask[i] & groupbit) {
+@@ -177,7 +177,7 @@
+     }
+   } else if (which == BIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       double buf[3];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nh_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_nh_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nh_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_nh_omp.cpp	2020-03-20 16:49:48.259419864 +0100
+@@ -57,7 +57,7 @@
+   if (allremap) domain->x2lamda(nlocal);
+   else {
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & dilate_group_bit)
+@@ -207,7 +207,7 @@
+   if (allremap) domain->lamda2x(nlocal);
+   else {
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & dilate_group_bit)
+@@ -235,7 +235,7 @@
+
+   if (which == NOBIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       if (mask[i] & groupbit) {
+@@ -253,7 +253,7 @@
+     }
+   } else if (which == BIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       double buf[3];
+@@ -289,7 +289,7 @@
+   if (atom->rmass) {
+     const double * _noalias const rmass = atom->rmass;
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       if (mask[i] & groupbit) {
+@@ -303,7 +303,7 @@
+     const double *_noalias const mass = atom->mass;
+     const int * _noalias const type = atom->type;
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       if (mask[i] & groupbit) {
+@@ -330,7 +330,7 @@
+   // x update by full step only for atoms in group
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     if (mask[i] & groupbit) {
+@@ -352,7 +352,7 @@
+
+   if (which == NOBIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       if (mask[i] & groupbit) {
+@@ -363,7 +363,7 @@
+     }
+   } else if (which == BIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       double buf[3];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nh_sphere_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_nh_sphere_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nh_sphere_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_nh_sphere_omp.cpp	2020-03-20 16:49:48.262419879 +0100
+@@ -85,7 +85,7 @@
+   // 4 cases depending on radius vs shape and rmass vs mass
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     if (mask[i] & groupbit) {
+@@ -115,7 +115,7 @@
+
+   if (which == NOBIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       if (mask[i] & groupbit) {
+@@ -129,7 +129,7 @@
+     }
+   } else if (which == BIAS) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++) {
+       double buf[3];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nve_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_nve_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nve_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_nve_omp.cpp	2020-03-20 16:49:48.279419964 +0100
+@@ -41,7 +41,7 @@
+   if (atom->rmass) {
+     const double * const rmass = atom->rmass;
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & groupbit) {
+@@ -58,7 +58,7 @@
+     const double * const mass = atom->mass;
+     const int * const type = atom->type;
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & groupbit) {
+@@ -87,7 +87,7 @@
+   if (atom->rmass) {
+     const double * const rmass = atom->rmass;
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & groupbit) {
+@@ -101,7 +101,7 @@
+     const double * const mass = atom->mass;
+     const int * const type = atom->type;
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & groupbit) {
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nve_sphere_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_nve_sphere_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nve_sphere_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_nve_sphere_omp.cpp	2020-03-20 16:49:48.281419974 +0100
+@@ -49,7 +49,7 @@
+   // update v,x,omega for all particles
+   // d_omega/dt = torque / inertia
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none)
++#pragma omp parallel for default(shared)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     if (mask[i] & groupbit) {
+@@ -76,7 +76,7 @@
+     double * const * const mu = atom->mu;
+     if (dlm == NODLM) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none)
++#pragma omp parallel for default(shared)
+ #endif
+       for (int i = 0; i < nlocal; i++) {
+         double g0,g1,g2,msq,scale;
+@@ -95,7 +95,7 @@
+       }
+     } else {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none)
++#pragma omp parallel for default(shared)
+ #endif
+       // Integrate orientation following Dullweber-Leimkuhler-Maclachlan scheme
+       for (int i = 0; i < nlocal; i++) {
+@@ -223,7 +223,7 @@
+   // d_omega/dt = torque / inertia
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none)
++#pragma omp parallel for default(shared)
+ #endif
+   for (int i = 0; i < nlocal; i++)
+     if (mask[i] & groupbit) {
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nvt_sllod_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_nvt_sllod_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_nvt_sllod_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_nvt_sllod_omp.cpp	2020-03-20 16:49:48.290420019 +0100
+@@ -114,7 +114,7 @@
+   MathExtra::multiply_shape_shape(domain->h_rate,domain->h_inv,h_two);
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) shared(h_two) schedule(static)
++#pragma omp parallel for default(shared)  schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     double vdelu0,vdelu1,vdelu2,buf[3];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_omp.cpp	2020-03-20 16:49:48.296420049 +0100
+@@ -70,7 +70,7 @@
+   if (narg > 3) {
+ #if defined(_OPENMP)
+     if (strcmp(arg[3],"0") == 0)
+-#pragma omp parallel default(none) shared(nthreads)
++#pragma omp parallel default(shared)
+       nthreads = omp_get_num_threads();
+     else
+       nthreads = force->inumeric(FLERR,arg[3]);
+@@ -134,7 +134,7 @@
+   thr = new ThrData *[nthreads];
+   _nthr = nthreads;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(lmp)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const int tid = get_tid();
+@@ -186,7 +186,7 @@
+     thr = new ThrData *[nthreads];
+     _nthr = nthreads;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+     {
+       const int tid = get_tid();
+@@ -350,7 +350,7 @@
+   double *drho = atom->drho;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(f,torque,erforce,de,drho)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const int tid = get_tid();
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_rigid_nh_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_rigid_nh_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_rigid_nh_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_rigid_nh_omp.cpp	2020-03-20 16:49:48.313420133 +0100
+@@ -89,7 +89,7 @@
+   double akt=0.0, akr=0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) shared(scale_r,scale_t,scale_v) schedule(static) reduction(+:akt,akr)
++#pragma omp parallel for default(shared)  schedule(static) reduction(+:akt,akr)
+ #endif
+   for (int ibody = 0; ibody < nbody; ibody++) {
+     double mbody[3],tbody[3],fquat[4];
+@@ -250,7 +250,7 @@
+      int i;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) private(i) reduction(+:s0,s1,s2,s3,s4,s5)
++#pragma omp parallel for default(shared) private(i) reduction(+:s0,s1,s2,s3,s4,s5)
+ #endif
+      for (i = 0; i < nlocal; i++) {
+        const int ibody = body[i];
+@@ -289,7 +289,7 @@
+        int i;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) private(i) shared(ib) reduction(+:s0,s1,s2,s3,s4,s5)
++#pragma omp parallel for default(shared) private(i)  reduction(+:s0,s1,s2,s3,s4,s5)
+ #endif
+        for (i = 0; i < nlocal; i++) {
+          const int ibody = body[i];
+@@ -330,7 +330,7 @@
+      memset(&sum[0][0],0,6*nbody*sizeof(double));
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+      {
+ #if defined(_OPENMP)
+@@ -373,7 +373,7 @@
+   MPI_Allreduce(sum[0],all[0],6*nbody,MPI_DOUBLE,MPI_SUM,world);
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) private(ibody) schedule(static)
++#pragma omp parallel for default(shared) private(ibody) schedule(static)
+ #endif
+   for (ibody = 0; ibody < nbody; ibody++) {
+     fcm[ibody][0] = all[ibody][0] + langextra[ibody][0];
+@@ -388,7 +388,7 @@
+
+   if (id_gravity) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) private(ibody) schedule(static)
++#pragma omp parallel for default(shared) private(ibody) schedule(static)
+ #endif
+     for (ibody = 0; ibody < nbody; ibody++) {
+       fcm[ibody][0] += gvec[0]*masstotal[ibody];
+@@ -433,7 +433,7 @@
+   const double dtf2 = dtf * 2.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) shared(scale_t,scale_r) schedule(static) reduction(+:akt,akr)
++#pragma omp parallel for default(shared)  schedule(static) reduction(+:akt,akr)
+ #endif
+   for (int ibody = 0; ibody < nbody; ibody++) {
+     double mbody[3],tbody[3],fquat[4];
+@@ -554,7 +554,7 @@
+   if (allremap) domain->x2lamda(nlocal);
+   else {
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & dilate_group_bit)
+@@ -586,7 +586,7 @@
+   if (allremap) domain->lamda2x(nlocal);
+   else {
+ #if defined (_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int i = 0; i < nlocal; i++)
+       if (mask[i] & dilate_group_bit)
+@@ -631,7 +631,7 @@
+   int i;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) private(i) reduction(+:v0,v1,v2,v3,v4,v5)
++#pragma omp parallel for default(shared) private(i) reduction(+:v0,v1,v2,v3,v4,v5)
+ #endif
+   for (i = 0; i < nlocal; i++) {
+     const int ibody = body[i];
+@@ -832,7 +832,7 @@
+   int i;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) private(i) reduction(+:v0,v1,v2,v3,v4,v5)
++#pragma omp parallel for default(shared) private(i) reduction(+:v0,v1,v2,v3,v4,v5)
+ #endif
+   for (i = 0; i < nlocal; i++) {
+     const int ibody = body[i];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_rigid_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_rigid_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_rigid_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_rigid_omp.cpp	2020-03-20 16:49:48.327420203 +0100
+@@ -47,7 +47,7 @@
+ void FixRigidOMP::initial_integrate(int vflag)
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int ibody = 0; ibody < nbody; ibody++) {
+
+@@ -120,7 +120,7 @@
+      double s0=0.0,s1=0.0,s2=0.0,s3=0.0,s4=0.0,s5=0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:s0,s1,s2,s3,s4,s5)
++#pragma omp parallel for default(shared) reduction(+:s0,s1,s2,s3,s4,s5)
+ #endif
+      for (int i = 0; i < nlocal; i++) {
+        const int ibody = body[i];
+@@ -158,7 +158,7 @@
+        double s0=0.0,s1=0.0,s2=0.0,s3=0.0,s4=0.0,s5=0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) shared(ib) reduction(+:s0,s1,s2,s3,s4,s5)
++#pragma omp parallel for default(shared)  reduction(+:s0,s1,s2,s3,s4,s5)
+ #endif
+        for (int i = 0; i < nlocal; i++) {
+          const int ibody = body[i];
+@@ -199,7 +199,7 @@
+      memset(&sum[0][0],0,6*nbody*sizeof(double));
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+      {
+ #if defined(_OPENMP)
+@@ -246,7 +246,7 @@
+   // fflag,tflag = 0 for some dimensions in 2d
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int ibody = 0; ibody < nbody; ibody++) {
+     fcm[ibody][0] = all[ibody][0] + langextra[ibody][0];
+@@ -261,7 +261,7 @@
+
+   if (id_gravity) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int ibody = 0; ibody < nbody; ibody++) {
+       fcm[ibody][0] += gvec[0]*masstotal[ibody];
+@@ -280,7 +280,7 @@
+   // update vcm and angmom
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int ibody = 0; ibody < nbody; ibody++) {
+
+@@ -346,7 +346,7 @@
+   const int nlocal = atom->nlocal;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:v0,v1,v2,v3,v4,v5)
++#pragma omp parallel for default(shared) reduction(+:v0,v1,v2,v3,v4,v5)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     const int ibody = body[i];
+@@ -546,7 +546,7 @@
+   const int nlocal = atom->nlocal;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:v0,v1,v2,v3,v4,v5)
++#pragma omp parallel for default(shared) reduction(+:v0,v1,v2,v3,v4,v5)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     const int ibody = body[i];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/fix_rigid_small_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/fix_rigid_small_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/fix_rigid_small_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/fix_rigid_small_omp.cpp	2020-03-20 16:49:48.331420223 +0100
+@@ -46,7 +46,7 @@
+ {
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int ibody = 0; ibody < nlocal_body; ibody++) {
+
+@@ -117,7 +117,7 @@
+   const int nthreads=comm->nthreads;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int ibody = 0; ibody < nlocal_body+nghost_body; ibody++) {
+     double * _noalias const fcm = body[ibody].fcm;
+@@ -132,7 +132,7 @@
+   // and then each thread only processes some bodies.
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -183,7 +183,7 @@
+
+   if (langflag) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int ibody = 0; ibody < nlocal_body; ibody++) {
+       double * _noalias const fcm = body[ibody].fcm;
+@@ -201,7 +201,7 @@
+
+   if (id_gravity) {
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+     for (int ibody = 0; ibody < nbody; ibody++) {
+       double * _noalias const fcm = body[ibody].fcm;
+@@ -222,7 +222,7 @@
+   // update vcm and angmom, recompute omega
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) schedule(static)
++#pragma omp parallel for default(shared) schedule(static)
+ #endif
+   for (int ibody = 0; ibody < nlocal_body; ibody++) {
+     Body &b = body[ibody];
+@@ -294,7 +294,7 @@
+   const int nlocal = atom->nlocal;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:v0,v1,v2,v3,v4,v5)
++#pragma omp parallel for default(shared) reduction(+:v0,v1,v2,v3,v4,v5)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     const int ibody = atom2body[i];
+@@ -489,7 +489,7 @@
+   const int nlocal = atom->nlocal;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:v0,v1,v2,v3,v4,v5)
++#pragma omp parallel for default(shared) reduction(+:v0,v1,v2,v3,v4,v5)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     const int ibody = atom2body[i];
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/improper_class2_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/improper_class2_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/improper_class2_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/improper_class2_omp.cpp	2020-03-20 16:49:48.336420248 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->nimproperlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/improper_cossq_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/improper_cossq_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/improper_cossq_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/improper_cossq_omp.cpp	2020-03-20 16:49:48.339420263 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->nimproperlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/improper_cvff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/improper_cvff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/improper_cvff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/improper_cvff_omp.cpp	2020-03-20 16:49:48.342420278 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->nimproperlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/improper_fourier_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/improper_fourier_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/improper_fourier_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/improper_fourier_omp.cpp	2020-03-20 16:49:48.346420298 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->nimproperlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/improper_harmonic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/improper_harmonic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/improper_harmonic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/improper_harmonic_omp.cpp	2020-03-20 16:49:48.348420308 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->nimproperlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/improper_ring_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/improper_ring_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/improper_ring_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/improper_ring_omp.cpp	2020-03-20 16:49:48.351420323 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->nimproperlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/improper_umbrella_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/improper_umbrella_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/improper_umbrella_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/improper_umbrella_omp.cpp	2020-03-20 16:49:48.354420338 +0100
+@@ -50,7 +50,7 @@
+   const int inum = neighbor->nimproperlist;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/msm_cg_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/msm_cg_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/msm_cg_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/msm_cg_omp.cpp	2020-03-20 16:49:48.358420358 +0100
+@@ -310,7 +310,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/msm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/msm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/msm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/msm_omp.cpp	2020-03-20 16:49:48.362420378 +0100
+@@ -52,7 +52,7 @@
+   MSM::compute(eflag,vflag);
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -158,7 +158,7 @@
+   const int n=nn;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) reduction(+:v0,v1,v2,v3,v4,v5,emsm)
++#pragma omp parallel default(shared) reduction(+:v0,v1,v2,v3,v4,v5,emsm)
+ #endif
+   {
+     double esum,v0sum,v1sum,v2sum,v3sum,v4sum,v5sum;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_bin_atomonly_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_full_bin_atomonly_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_bin_atomonly_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_full_bin_atomonly_omp.cpp	2020-03-20 16:49:48.364420388 +0100
+@@ -36,7 +36,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_bin_ghost_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_full_bin_ghost_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_bin_ghost_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_full_bin_ghost_omp.cpp	2020-03-20 16:49:48.367420403 +0100
+@@ -42,7 +42,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nall);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_bin_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_full_bin_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_bin_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_full_bin_omp.cpp	2020-03-20 16:49:48.369420413 +0100
+@@ -40,7 +40,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_multi_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_full_multi_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_multi_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_full_multi_omp.cpp	2020-03-20 16:49:48.372420428 +0100
+@@ -41,7 +41,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_nsq_ghost_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_full_nsq_ghost_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_nsq_ghost_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_full_nsq_ghost_omp.cpp	2020-03-20 16:49:48.375420443 +0100
+@@ -42,7 +42,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nall);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_nsq_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_full_nsq_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_full_nsq_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_full_nsq_omp.cpp	2020-03-20 16:49:48.378420458 +0100
+@@ -42,7 +42,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_atomonly_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_atomonly_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_atomonly_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_atomonly_newton_omp.cpp	2020-03-20 16:49:48.381420473 +0100
+@@ -37,7 +37,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newtoff_ghost_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newtoff_ghost_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newtoff_ghost_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newtoff_ghost_omp.cpp	2020-03-20 16:49:48.384420487 +0100
+@@ -46,7 +46,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nall);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newtoff_omp.cpp	2020-03-20 16:49:48.387420503 +0100
+@@ -42,7 +42,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newton_omp.cpp	2020-03-20 16:49:48.390420517 +0100
+@@ -41,7 +41,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newton_tri_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newton_tri_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_bin_newton_tri_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_bin_newton_tri_omp.cpp	2020-03-20 16:49:48.392420527 +0100
+@@ -41,7 +41,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_halffull_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_halffull_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_halffull_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_halffull_newtoff_omp.cpp	2020-03-20 16:49:48.395420542 +0100
+@@ -38,7 +38,7 @@
+   NPAIR_OMP_INIT;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(inum_full);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_halffull_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_halffull_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_halffull_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_halffull_newton_omp.cpp	2020-03-20 16:49:48.398420557 +0100
+@@ -38,7 +38,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(inum_full);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_multi_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_multi_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_multi_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_multi_newtoff_omp.cpp	2020-03-20 16:49:48.401420572 +0100
+@@ -43,7 +43,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_multi_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_multi_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_multi_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_multi_newton_omp.cpp	2020-03-20 16:49:48.404420587 +0100
+@@ -42,7 +42,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_multi_newton_tri_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_multi_newton_tri_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_multi_newton_tri_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_multi_newton_tri_omp.cpp	2020-03-20 16:49:48.407420602 +0100
+@@ -43,7 +43,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_nsq_newtoff_ghost_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_nsq_newtoff_ghost_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_nsq_newtoff_ghost_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_nsq_newtoff_ghost_omp.cpp	2020-03-20 16:49:48.409420612 +0100
+@@ -47,7 +47,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nall);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_nsq_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_nsq_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_nsq_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_nsq_newtoff_omp.cpp	2020-03-20 16:49:48.412420627 +0100
+@@ -44,7 +44,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_nsq_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_nsq_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_nsq_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_nsq_newton_omp.cpp	2020-03-20 16:49:48.415420642 +0100
+@@ -43,7 +43,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_bin_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_bin_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_bin_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_bin_newtoff_omp.cpp	2020-03-20 16:49:48.417420652 +0100
+@@ -47,7 +47,7 @@
+   const int respamiddle = list->respamiddle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_bin_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_bin_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_bin_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_bin_newton_omp.cpp	2020-03-20 16:49:48.421420672 +0100
+@@ -46,7 +46,7 @@
+   const int respamiddle = list->respamiddle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_bin_newton_tri_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_bin_newton_tri_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_bin_newton_tri_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_bin_newton_tri_omp.cpp	2020-03-20 16:49:48.423420682 +0100
+@@ -46,7 +46,7 @@
+   const int respamiddle = list->respamiddle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_nsq_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_nsq_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_nsq_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_nsq_newtoff_omp.cpp	2020-03-20 16:49:48.426420697 +0100
+@@ -48,7 +48,7 @@
+   const int respamiddle = list->respamiddle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_nsq_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_nsq_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_respa_nsq_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_respa_nsq_newton_omp.cpp	2020-03-20 16:49:48.429420712 +0100
+@@ -49,7 +49,7 @@
+   const int respamiddle = list->respamiddle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_bin_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_bin_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_bin_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_bin_newtoff_omp.cpp	2020-03-20 16:49:48.432420727 +0100
+@@ -43,7 +43,7 @@
+   NPAIR_OMP_INIT;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_bin_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_bin_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_bin_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_bin_newton_omp.cpp	2020-03-20 16:49:48.435420742 +0100
+@@ -42,7 +42,7 @@
+   NPAIR_OMP_INIT;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_bin_newton_tri_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_bin_newton_tri_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_bin_newton_tri_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_bin_newton_tri_omp.cpp	2020-03-20 16:49:48.437420752 +0100
+@@ -41,7 +41,7 @@
+
+   NPAIR_OMP_INIT;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_nsq_newtoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_nsq_newtoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_nsq_newtoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_nsq_newtoff_omp.cpp	2020-03-20 16:49:48.440420767 +0100
+@@ -45,7 +45,7 @@
+   NPAIR_OMP_INIT;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_nsq_newton_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_nsq_newton_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/npair_half_size_nsq_newton_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/npair_half_size_nsq_newton_omp.cpp	2020-03-20 16:49:48.442420777 +0100
+@@ -46,7 +46,7 @@
+   NPAIR_OMP_INIT;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(list)
++#pragma omp parallel default(shared)
+ #endif
+   NPAIR_OMP_SETUP(nlocal);
+
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_adp_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_adp_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_adp_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_adp_omp.cpp	2020-03-20 16:49:48.446420797 +0100
+@@ -62,7 +62,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_agni_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_agni_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_agni_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_agni_omp.cpp	2020-03-20 16:49:48.449420812 +0100
+@@ -49,7 +49,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_airebo_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_airebo_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_airebo_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_airebo_omp.cpp	2020-03-20 16:49:48.461420871 +0100
+@@ -58,7 +58,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag) reduction(+:pv0,pv1,pv2)
++#pragma omp parallel default(shared)  reduction(+:pv0,pv1,pv2)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -104,7 +104,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int i,j,ii,jj,n,jnum,itype,jtype;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_beck_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_beck_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_beck_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_beck_omp.cpp	2020-03-20 16:49:48.464420887 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_born_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_born_coul_long_omp.cpp	2020-03-20 16:49:48.467420901 +0100
+@@ -51,7 +51,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_coul_msm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_born_coul_msm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_coul_msm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_born_coul_msm_omp.cpp	2020-03-20 16:49:48.470420916 +0100
+@@ -48,7 +48,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_coul_wolf_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_born_coul_wolf_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_coul_wolf_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_born_coul_wolf_omp.cpp	2020-03-20 16:49:48.474420936 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_born_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_born_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_born_omp.cpp	2020-03-20 16:49:48.477420951 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_brownian_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_brownian_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_brownian_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_brownian_omp.cpp	2020-03-20 16:49:48.480420966 +0100
+@@ -135,7 +135,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_brownian_poly_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_brownian_poly_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_brownian_poly_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_brownian_poly_omp.cpp	2020-03-20 16:49:48.484420986 +0100
+@@ -135,7 +135,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_coul_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_buck_coul_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_coul_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_buck_coul_cut_omp.cpp	2020-03-20 16:49:48.486420996 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_buck_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_buck_coul_long_omp.cpp	2020-03-20 16:49:48.489421011 +0100
+@@ -51,7 +51,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_coul_msm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_buck_coul_msm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_coul_msm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_buck_coul_msm_omp.cpp	2020-03-20 16:49:48.492421026 +0100
+@@ -48,7 +48,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_long_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_buck_long_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_long_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_buck_long_coul_long_omp.cpp	2020-03-20 16:49:48.497421051 +0100
+@@ -56,7 +56,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -320,7 +320,7 @@
+   const int nthreads = comm->nthreads;
+   const int inum = list->inum_inner;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -345,7 +345,7 @@
+   const int inum = list->inum_middle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -375,7 +375,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_buck_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_buck_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_buck_omp.cpp	2020-03-20 16:49:48.500421066 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_colloid_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_colloid_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_colloid_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_colloid_omp.cpp	2020-03-20 16:49:48.503421081 +0100
+@@ -46,7 +46,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_comb_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_comb_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_comb_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_comb_omp.cpp	2020-03-20 16:49:48.507421101 +0100
+@@ -52,7 +52,7 @@
+   Short_neigh_thr();
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -411,7 +411,7 @@
+
+   // loop over full neighbor list of my atoms
+ #if defined(_OPENMP)
+-#pragma omp parallel for private(ii) default(none) shared(potal,fac11e)
++#pragma omp parallel for private(ii) default(shared)
+ #endif
+   for (ii = 0; ii < inum; ii ++) {
+     double fqi,fqj,fqij,fqji,fqjj,delr1[3];
+@@ -564,7 +564,7 @@
+   const int nthreads = comm->nthreads;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int nj,*neighptrj;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_cut_omp.cpp	2020-03-20 16:49:48.510421116 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_cut_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_cut_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_cut_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_cut_soft_omp.cpp	2020-03-20 16:49:48.512421126 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_debye_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_debye_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_debye_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_debye_omp.cpp	2020-03-20 16:49:48.515421141 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_diel_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_diel_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_diel_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_diel_omp.cpp	2020-03-20 16:49:48.517421151 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_dsf_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_dsf_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_dsf_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_dsf_omp.cpp	2020-03-20 16:49:48.520421166 +0100
+@@ -52,7 +52,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_long_omp.cpp	2020-03-20 16:49:48.523421181 +0100
+@@ -52,7 +52,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_long_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_long_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_long_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_long_soft_omp.cpp	2020-03-20 16:49:48.526421196 +0100
+@@ -51,7 +51,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_msm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_msm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_msm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_msm_omp.cpp	2020-03-20 16:49:48.529421211 +0100
+@@ -49,7 +49,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_wolf_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_coul_wolf_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_coul_wolf_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_coul_wolf_omp.cpp	2020-03-20 16:49:48.531421220 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_dpd_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_dpd_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_dpd_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_dpd_omp.cpp	2020-03-20 16:49:48.535421241 +0100
+@@ -80,7 +80,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_dpd_tstat_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_dpd_tstat_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_dpd_tstat_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_dpd_tstat_omp.cpp	2020-03-20 16:49:48.538421255 +0100
+@@ -79,7 +79,7 @@
+     random_thr[0] = random;
+   }
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_eam_cd_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_eam_cd_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_eam_cd_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_eam_cd_omp.cpp	2020-03-20 16:49:48.545421290 +0100
+@@ -77,7 +77,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_eam_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_eam_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_eam_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_eam_omp.cpp	2020-03-20 16:49:48.551421320 +0100
+@@ -59,7 +59,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_edip_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_edip_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_edip_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_edip_omp.cpp	2020-03-20 16:49:48.555421340 +0100
+@@ -50,7 +50,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_eim_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_eim_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_eim_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_eim_omp.cpp	2020-03-20 16:49:48.558421355 +0100
+@@ -57,7 +57,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gauss_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_gauss_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gauss_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_gauss_cut_omp.cpp	2020-03-20 16:49:48.561421370 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gauss_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_gauss_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gauss_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_gauss_omp.cpp	2020-03-20 16:49:48.563421380 +0100
+@@ -45,7 +45,7 @@
+   double occ = 0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag) reduction(+:occ)
++#pragma omp parallel default(shared)  reduction(+:occ)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gayberne_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_gayberne_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gayberne_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_gayberne_omp.cpp	2020-03-20 16:49:48.566421395 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gran_hertz_history_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_gran_hertz_history_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gran_hertz_history_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_gran_hertz_history_omp.cpp	2020-03-20 16:49:48.569421410 +0100
+@@ -69,7 +69,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gran_hooke_history_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_gran_hooke_history_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gran_hooke_history_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_gran_hooke_history_omp.cpp	2020-03-20 16:49:48.572421425 +0100
+@@ -70,7 +70,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gran_hooke_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_gran_hooke_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_gran_hooke_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_gran_hooke_omp.cpp	2020-03-20 16:49:48.575421440 +0100
+@@ -65,7 +65,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_hbond_dreiding_lj_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_hbond_dreiding_lj_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_hbond_dreiding_lj_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_hbond_dreiding_lj_omp.cpp	2020-03-20 16:49:48.578421455 +0100
+@@ -74,7 +74,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_hbond_dreiding_morse_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_hbond_dreiding_morse_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_hbond_dreiding_morse_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_hbond_dreiding_morse_omp.cpp	2020-03-20 16:49:48.581421470 +0100
+@@ -74,7 +74,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj96_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj96_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj96_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj96_cut_omp.cpp	2020-03-20 16:49:48.584421485 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_charmm_implicit_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_charmm_implicit_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_charmm_implicit_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_charmm_implicit_omp.cpp	2020-03-20 16:49:48.586421495 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_charmm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_charmm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_charmm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_charmm_omp.cpp	2020-03-20 16:49:48.589421510 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_long_omp.cpp	2020-03-20 16:49:48.592421525 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_long_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_long_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_long_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_long_soft_omp.cpp	2020-03-20 16:49:48.595421540 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_msm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_msm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_charmm_coul_msm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_charmm_coul_msm_omp.cpp	2020-03-20 16:49:48.597421550 +0100
+@@ -49,7 +49,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_class2_coul_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_class2_coul_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_class2_coul_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_class2_coul_cut_omp.cpp	2020-03-20 16:49:48.601421569 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_class2_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_class2_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_class2_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_class2_coul_long_omp.cpp	2020-03-20 16:49:48.605421590 +0100
+@@ -51,7 +51,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_class2_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_class2_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_class2_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_class2_omp.cpp	2020-03-20 16:49:48.608421604 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cubic_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cubic_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cubic_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cubic_omp.cpp	2020-03-20 16:49:48.611421620 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_cut_omp.cpp	2020-03-20 16:49:48.614421634 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_cut_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_cut_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_cut_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_cut_soft_omp.cpp	2020-03-20 16:49:48.617421649 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_debye_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_debye_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_debye_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_debye_omp.cpp	2020-03-20 16:49:48.619421659 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_dsf_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_dsf_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_dsf_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_dsf_omp.cpp	2020-03-20 16:49:48.622421674 +0100
+@@ -53,7 +53,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_long_omp.cpp	2020-03-20 16:49:48.625421689 +0100
+@@ -52,7 +52,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_long_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_long_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_long_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_long_soft_omp.cpp	2020-03-20 16:49:48.628421704 +0100
+@@ -52,7 +52,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_msm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_msm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_msm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_msm_omp.cpp	2020-03-20 16:49:48.632421724 +0100
+@@ -49,7 +49,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_wolf_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_wolf_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_coul_wolf_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_coul_wolf_omp.cpp	2020-03-20 16:49:48.635421739 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_dipole_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_dipole_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_dipole_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_dipole_cut_omp.cpp	2020-03-20 16:49:48.639421759 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_omp.cpp	2020-03-20 16:49:48.642421774 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_soft_omp.cpp	2020-03-20 16:49:48.645421789 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_thole_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_thole_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_thole_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_thole_long_omp.cpp	2020-03-20 16:49:48.648421804 +0100
+@@ -70,7 +70,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_tip4p_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_tip4p_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_tip4p_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_tip4p_cut_omp.cpp	2020-03-20 16:49:48.652421824 +0100
+@@ -93,7 +93,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_tip4p_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_tip4p_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_tip4p_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_tip4p_long_omp.cpp	2020-03-20 16:49:48.657421849 +0100
+@@ -93,7 +93,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_tip4p_long_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_tip4p_long_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_cut_tip4p_long_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_cut_tip4p_long_soft_omp.cpp	2020-03-20 16:49:48.661421869 +0100
+@@ -93,7 +93,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_expand_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_expand_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_expand_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_expand_omp.cpp	2020-03-20 16:49:48.665421889 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_gromacs_coul_gromacs_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_gromacs_coul_gromacs_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_gromacs_coul_gromacs_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_gromacs_coul_gromacs_omp.cpp	2020-03-20 16:49:48.669421909 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_gromacs_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_gromacs_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_gromacs_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_gromacs_omp.cpp	2020-03-20 16:49:48.673421929 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_long_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_long_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_long_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_long_coul_long_omp.cpp	2020-03-20 16:49:48.681421968 +0100
+@@ -56,7 +56,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -318,7 +318,7 @@
+   const int nthreads = comm->nthreads;
+   const int inum = list->inum_inner;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -343,7 +343,7 @@
+   const int inum = list->inum_middle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -373,7 +373,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_long_tip4p_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_long_tip4p_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_long_tip4p_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_long_tip4p_long_omp.cpp	2020-03-20 16:49:48.692422023 +0100
+@@ -96,7 +96,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -379,7 +379,7 @@
+   const int nthreads = comm->nthreads;
+   const int inum = list->inum_inner;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -404,7 +404,7 @@
+   const int inum = list->inum_middle;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+@@ -458,7 +458,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sdk_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sdk_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sdk_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sdk_coul_long_omp.cpp	2020-03-20 16:49:48.695422038 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sdk_coul_msm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sdk_coul_msm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sdk_coul_msm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sdk_coul_msm_omp.cpp	2020-03-20 16:49:48.698422053 +0100
+@@ -51,7 +51,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sdk_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sdk_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sdk_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sdk_omp.cpp	2020-03-20 16:49:48.701422068 +0100
+@@ -47,7 +47,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sf_dipole_sf_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sf_dipole_sf_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_sf_dipole_sf_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_sf_dipole_sf_omp.cpp	2020-03-20 16:49:48.704422083 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_smooth_linear_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_smooth_linear_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_smooth_linear_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_smooth_linear_omp.cpp	2020-03-20 16:49:48.707422098 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_smooth_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lj_smooth_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lj_smooth_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lj_smooth_omp.cpp	2020-03-20 16:49:48.709422108 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lubricate_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lubricate_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lubricate_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lubricate_omp.cpp	2020-03-20 16:49:48.713422128 +0100
+@@ -109,7 +109,7 @@
+
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lubricate_poly_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_lubricate_poly_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_lubricate_poly_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_lubricate_poly_omp.cpp	2020-03-20 16:49:48.717422148 +0100
+@@ -106,7 +106,7 @@
+
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_meam_spline_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_meam_spline_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_meam_spline_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_meam_spline_omp.cpp	2020-03-20 16:49:48.721422168 +0100
+@@ -57,7 +57,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_morse_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_morse_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_morse_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_morse_omp.cpp	2020-03-20 16:49:48.724422183 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_morse_smooth_linear_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_morse_smooth_linear_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_morse_smooth_linear_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_morse_smooth_linear_omp.cpp	2020-03-20 16:49:48.727422198 +0100
+@@ -47,7 +47,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_nm_cut_coul_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_nm_cut_coul_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_nm_cut_coul_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_nm_cut_coul_cut_omp.cpp	2020-03-20 16:49:48.731422218 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_nm_cut_coul_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_nm_cut_coul_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_nm_cut_coul_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_nm_cut_coul_long_omp.cpp	2020-03-20 16:49:48.735422238 +0100
+@@ -51,7 +51,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_nm_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_nm_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_nm_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_nm_cut_omp.cpp	2020-03-20 16:49:48.737422248 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_peri_lps_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_peri_lps_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_peri_lps_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_peri_lps_omp.cpp	2020-03-20 16:49:48.741422268 +0100
+@@ -62,7 +62,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_peri_pmb_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_peri_pmb_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_peri_pmb_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_peri_pmb_omp.cpp	2020-03-20 16:49:48.744422283 +0100
+@@ -58,7 +58,7 @@
+   }
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_resquared_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_resquared_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_resquared_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_resquared_omp.cpp	2020-03-20 16:49:48.754422332 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_soft_omp.cpp	2020-03-20 16:49:48.756422342 +0100
+@@ -47,7 +47,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_sw_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_sw_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_sw_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_sw_omp.cpp	2020-03-20 16:49:48.759422358 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_table_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_table_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_table_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_table_omp.cpp	2020-03-20 16:49:48.762422372 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_mod_c_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_mod_c_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_mod_c_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_mod_c_omp.cpp	2020-03-20 16:49:48.765422388 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_mod_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_mod_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_mod_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_mod_omp.cpp	2020-03-20 16:49:48.768422402 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_omp.cpp	2020-03-20 16:49:48.772422422 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_table_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_table_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tersoff_table_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_tersoff_table_omp.cpp	2020-03-20 16:49:48.776422442 +0100
+@@ -68,7 +68,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tip4p_cut_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_tip4p_cut_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tip4p_cut_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_tip4p_cut_omp.cpp	2020-03-20 16:49:48.784422482 +0100
+@@ -92,7 +92,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tip4p_long_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_tip4p_long_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tip4p_long_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_tip4p_long_omp.cpp	2020-03-20 16:49:48.789422507 +0100
+@@ -93,7 +93,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tip4p_long_soft_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_tip4p_long_soft_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_tip4p_long_soft_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_tip4p_long_soft_omp.cpp	2020-03-20 16:49:48.794422532 +0100
+@@ -93,7 +93,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_ufm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_ufm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_ufm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_ufm_omp.cpp	2020-03-20 16:49:48.798422552 +0100
+@@ -45,7 +45,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_vashishta_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_vashishta_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_vashishta_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_vashishta_omp.cpp	2020-03-20 16:49:48.802422572 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_vashishta_table_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_vashishta_table_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_vashishta_table_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_vashishta_table_omp.cpp	2020-03-20 16:49:48.806422592 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_yukawa_colloid_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_yukawa_colloid_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_yukawa_colloid_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_yukawa_colloid_omp.cpp	2020-03-20 16:49:48.809422607 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_yukawa_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_yukawa_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_yukawa_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_yukawa_omp.cpp	2020-03-20 16:49:48.813422627 +0100
+@@ -43,7 +43,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pair_zbl_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pair_zbl_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pair_zbl_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pair_zbl_omp.cpp	2020-03-20 16:49:48.817422647 +0100
+@@ -44,7 +44,7 @@
+   const int inum = list->inum;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int ifrom, ito, tid;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_cg_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pppm_cg_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_cg_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pppm_cg_omp.cpp	2020-03-20 16:49:48.823422677 +0100
+@@ -59,7 +59,7 @@
+ PPPMCGOMP::~PPPMCGOMP()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -81,7 +81,7 @@
+   PPPMCG::allocate();
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -122,7 +122,7 @@
+   const int twoorder = 2*order;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double snx,sny,snz;
+@@ -216,7 +216,7 @@
+   double sf0=0.0,sf1=0.0,sf2=0.0,sf3=0.0,sf4=0.0,sf5=0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) reduction(+:sf0,sf1,sf2,sf3,sf4,sf5)
++#pragma omp parallel default(shared) reduction(+:sf0,sf1,sf2,sf3,sf4,sf5)
+ #endif
+   {
+     double snx,sny,snz,sqk;
+@@ -314,7 +314,7 @@
+   PPPMCG::compute(eflag,vflag);
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -351,7 +351,7 @@
+   const int iy = nyhi_out - nylo_out + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const double * _noalias const q = atom->q;
+@@ -443,7 +443,7 @@
+   const int nthreads = comm->nthreads;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     FFT_SCALAR dx,dy,dz,x0,y0,z0,ekx,eky,ekz;
+@@ -524,7 +524,7 @@
+   const int nthreads = comm->nthreads;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     int i,ifrom,ito,tid,l,m,n,nx,ny,nz,mx,my,mz;
+@@ -617,7 +617,7 @@
+   const int nthreads = comm->nthreads;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     FFT_SCALAR dx,dy,dz,x0,y0,z0;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_disp_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pppm_disp_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_disp_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pppm_disp_omp.cpp	2020-03-20 16:49:48.831422716 +0100
+@@ -59,7 +59,7 @@
+ PPPMDispOMP::~PPPMDispOMP()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -87,7 +87,7 @@
+   PPPMDisp::allocate();
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -114,7 +114,7 @@
+ void PPPMDispOMP::compute_gf()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+
+@@ -204,7 +204,7 @@
+ void PPPMDispOMP::compute_gf_6()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double *prd;
+@@ -311,7 +311,7 @@
+
+   PPPMDisp::compute(eflag,vflag);
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -366,7 +366,7 @@
+
+   int flag = 0;
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:flag) schedule(static)
++#pragma omp parallel for default(shared) reduction(+:flag) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+
+@@ -419,7 +419,7 @@
+   const int iy = nyhi_out - nylo_out + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const double * _noalias const q = atom->q;
+@@ -509,7 +509,7 @@
+   const int iy = nyhi_out_6 - nylo_out_6 + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const dbl3_t * _noalias const x = (dbl3_t *) atom->x[0];
+@@ -613,7 +613,7 @@
+   const int iy = nyhi_out_6 - nylo_out_6 + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const dbl3_t * _noalias const x = (dbl3_t *) atom->x[0];
+@@ -723,7 +723,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -828,7 +828,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -935,7 +935,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1034,7 +1034,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1138,7 +1138,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1248,7 +1248,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1350,7 +1350,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1486,7 +1486,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1663,7 +1663,7 @@
+
+ #if defined(_OPENMP)
+   const int nthreads = comm->nthreads;
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_disp_tip4p_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pppm_disp_tip4p_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_disp_tip4p_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pppm_disp_tip4p_omp.cpp	2020-03-20 16:49:48.839422756 +0100
+@@ -56,7 +56,7 @@
+ {
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -84,7 +84,7 @@
+   PPPMDispTIP4P::allocate();
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -111,7 +111,7 @@
+ void PPPMDispTIP4POMP::compute_gf()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+
+@@ -198,7 +198,7 @@
+ void PPPMDispTIP4POMP::compute_gf_6()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double *prd;
+@@ -302,7 +302,7 @@
+   PPPMDispTIP4P::compute(eflag,vflag);
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -358,7 +358,7 @@
+
+   int flag = 0;
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:flag) schedule(static)
++#pragma omp parallel for default(shared) reduction(+:flag) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     dbl3_t xM;
+@@ -434,7 +434,7 @@
+
+   int flag = 0;
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:flag) schedule(static)
++#pragma omp parallel for default(shared) reduction(+:flag) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+
+@@ -487,7 +487,7 @@
+   const int iy = nyhi_out - nylo_out + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const double * _noalias const q = atom->q;
+@@ -582,7 +582,7 @@
+   const int iy = nyhi_out_6 - nylo_out_6 + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const dbl3_t * _noalias const x = (dbl3_t *) atom->x[0];
+@@ -684,7 +684,7 @@
+   const int iy = nyhi_out_6 - nylo_out_6 + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const dbl3_t * _noalias const x = (dbl3_t *) atom->x[0];
+@@ -795,7 +795,7 @@
+   const double boxloz = boxlo[2];
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     dbl3_t xM;
+@@ -903,7 +903,7 @@
+   const double boxloz = boxlo[2];
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double s1,s2,s3,sf;
+@@ -1018,7 +1018,7 @@
+   const double * const * const x = atom->x;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1119,7 +1119,7 @@
+   const double hz_inv = nz_pppm_6/zprd_slab;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1226,7 +1226,7 @@
+   const double * const * const x = atom->x;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1325,7 +1325,7 @@
+   const double * const * const x = atom->x;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1458,7 +1458,7 @@
+   const double hz_inv = nz_pppm_6/zprd_slab;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -1632,7 +1632,7 @@
+   const double * const * const x = atom->x;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pppm_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pppm_omp.cpp	2020-03-20 16:49:48.845422786 +0100
+@@ -61,7 +61,7 @@
+   PPPM::allocate();
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -81,7 +81,7 @@
+ PPPMOMP::~PPPMOMP()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -122,7 +122,7 @@
+   const int twoorder = 2*order;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double snx,sny,snz;
+@@ -216,7 +216,7 @@
+   double sf0=0.0,sf1=0.0,sf2=0.0,sf3=0.0,sf4=0.0,sf5=0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) reduction(+:sf0,sf1,sf2,sf3,sf4,sf5)
++#pragma omp parallel default(shared) reduction(+:sf0,sf1,sf2,sf3,sf4,sf5)
+ #endif
+   {
+     double snx,sny,snz,sqk;
+@@ -314,7 +314,7 @@
+   PPPM::compute(eflag,vflag);
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -352,7 +352,7 @@
+   const int iy = nyhi_out - nylo_out + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const double * _noalias const q = atom->q;
+@@ -449,7 +449,7 @@
+   const double boxloz = boxlo[2];
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     FFT_SCALAR x0,y0,z0,ekx,eky,ekz;
+@@ -534,7 +534,7 @@
+   const double boxloz = boxlo[2];
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double s1,s2,s3,sf;
+@@ -627,7 +627,7 @@
+   const double * _noalias const q = atom->q;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     FFT_SCALAR dx,dy,dz,x0,y0,z0;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_tip4p_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/pppm_tip4p_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/pppm_tip4p_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/pppm_tip4p_omp.cpp	2020-03-20 16:49:48.851422816 +0100
+@@ -61,7 +61,7 @@
+ PPPMTIP4POMP::~PPPMTIP4POMP()
+ {
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -83,7 +83,7 @@
+   PPPMTIP4P::allocate();
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -124,7 +124,7 @@
+   const int twoorder = 2*order;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double snx,sny,snz;
+@@ -218,7 +218,7 @@
+   double sf0=0.0,sf1=0.0,sf2=0.0,sf3=0.0,sf4=0.0,sf5=0.0;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) reduction(+:sf0,sf1,sf2,sf3,sf4,sf5)
++#pragma omp parallel default(shared) reduction(+:sf0,sf1,sf2,sf3,sf4,sf5)
+ #endif
+   {
+     double snx,sny,snz,sqk;
+@@ -316,7 +316,7 @@
+   PPPMTIP4P::compute(eflag,vflag);
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none) shared(eflag,vflag)
++#pragma omp parallel default(shared)
+ #endif
+   {
+ #if defined(_OPENMP)
+@@ -355,7 +355,7 @@
+
+   int flag = 0;
+ #if defined(_OPENMP)
+-#pragma omp parallel for default(none) reduction(+:flag) schedule(static)
++#pragma omp parallel for default(shared) reduction(+:flag) schedule(static)
+ #endif
+   for (int i = 0; i < nlocal; i++) {
+     dbl3_t xM;
+@@ -416,7 +416,7 @@
+   const int iy = nyhi_out - nylo_out + 1;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     const double * _noalias const q = atom->q;
+@@ -521,7 +521,7 @@
+   const double boxloz = boxlo[2];
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     dbl3_t xM;
+@@ -632,7 +632,7 @@
+   const double boxloz = boxlo[2];
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+   {
+     double s1,s2,s3,sf;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/reaxc_forces_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/reaxc_forces_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/reaxc_forces_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/reaxc_forces_omp.cpp	2020-03-20 16:49:48.863422876 +0100
+@@ -146,7 +146,7 @@
+   reax_list *bonds = (*lists) + BONDS;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(shared) //default(none)
++#pragma omp parallel default(shared) //default(shared)
+ #endif
+   {
+     int i, j, k, pj, pk, start_j, end_j;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/reaxc_hydrogen_bonds_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/reaxc_hydrogen_bonds_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/reaxc_hydrogen_bonds_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/reaxc_hydrogen_bonds_omp.cpp	2020-03-20 16:49:48.867422896 +0100
+@@ -57,7 +57,7 @@
+   const int nthreads = control->nthreads;
+
+ #if defined(_OPENMP)
+-#pragma omp parallel default(shared) //default(none)
++#pragma omp parallel default(shared) //default(shared)
+ #endif
+   {
+   int  i, j, k, pi, pk;
+diff -Nru lammps-stable_3Mar2020.orig/src/USER-OMP/respa_omp.cpp lammps-stable_3Mar2020/src/USER-OMP/respa_omp.cpp
+--- lammps-stable_3Mar2020.orig/src/USER-OMP/respa_omp.cpp	2020-03-03 16:27:12.000000000 +0100
++++ lammps-stable_3Mar2020/src/USER-OMP/respa_omp.cpp	2020-03-20 16:49:48.887422996 +0100
+@@ -146,7 +146,7 @@
+       const int nall = atom->nlocal + atom->nghost;
+       const int nthreads = comm->nthreads;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+       {
+ #if defined(_OPENMP)
+@@ -241,7 +241,7 @@
+       const int nall = atom->nlocal + atom->nghost;
+       const int nthreads = comm->nthreads;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+       {
+ #if defined(_OPENMP)
+@@ -394,7 +394,7 @@
+       const int nall = atom->nlocal + atom->nghost;
+       const int nthreads = comm->nthreads;
+ #if defined(_OPENMP)
+-#pragma omp parallel default(none)
++#pragma omp parallel default(shared)
+ #endif
+       {
+ #if defined(_OPENMP)
diff --git a/l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py b/l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py
new file mode 100644
index 0000000..ad67838
--- /dev/null
+++ b/l/LAMMPS/lammps_vs_yaff_test_single_point_energy.py
@@ -0,0 +1,1325 @@
+#!/usr/bin/env python
+#
+# Correctness test for LAMMPS, comparison with result produced by yaff;
+# calculates single-point energy with both LAMMPS and yaff, and compares the results.
+# The energy difference should not exceed 1 kJ/mol, otherwise an error is raised.
+# It should run to completion in a matter of seconds.
+#
+# If this test passes, there are no guarantees that the installation works fully correctly.
+# But if it fails, it's a strong signal that there is something wrong with the (LAMMPS) installation.
+#
+# author: Veronique Van Speybroeck (Center for Molecular Modeling, Ghent University), April 2020
+
+import numpy as np
+import os
+from mpi4py import MPI
+from yaff import log, System, angstrom, ForceField, swap_noncovalent_lammps
+from molmod import kjmol
+import tempfile
+
+
+def main():
+
+    # create input files in temporary directory
+    tmpdir = tempfile.mkdtemp()
+
+    init_chk = os.path.join(tmpdir, 'init.chk')
+    with open(init_chk, 'w') as fp:
+        fp.write(INIT_CHK)
+
+    pars_txt = os.path.join(tmpdir, 'pars.txt')
+    with open(pars_txt, 'w') as fp:
+        fp.write(PARS_TXT)
+
+    # Setup MPI
+    comm = MPI.COMM_WORLD
+    rank = comm.Get_rank()
+
+    # Set random seed, important to get the same velocities for all processes
+    np.random.seed(5)
+    # Turn off logging for all processes, it can be turned on for one selected process later on
+    log.set_level(log.silent)
+    if rank == 0:
+        log.set_level(log.medium)
+
+    # Load in the structure and the force field
+    system = System.from_file(init_chk)
+
+    # Initialize the Yaff and LAMMPS force fields
+    rcut = 12 * angstrom
+    ff_yaff = ForceField.generate(system, pars_txt, rcut=rcut, smooth_ei=False,
+                                  gcut_scale=1.5, alpha_scale=3.2)  # , tailcorrections=True)
+    ff = swap_noncovalent_lammps(ff_yaff, fn_system='lammps.dat', fn_log="log.lammps",
+                                 suffix='', fn_table='lammps_smoothei2.table', comm=comm)
+
+    # Print out the Yaff single-point energy
+    print('Yaff energy')
+    energy_yaff = ff_yaff.compute()
+    print(energy_yaff / kjmol)
+    for part in ff_yaff.parts:
+        print('%s: %.3f kJ/mol' % (part.name, part.energy / kjmol))
+
+    # Print out the LAMMPS single-point energy
+    print('LAMMPS energy')
+    energy_lammps = ff.compute()
+    print(energy_lammps / kjmol)
+    for part in ff.parts:
+        print('%s: %.3f kJ/mol' % (part.name, part.energy / kjmol))
+
+    assert np.abs(energy_yaff - energy_lammps) < 1 * kjmol, "The two energies are not the same"
+
+
+INIT_CHK = """bonds                                     kind=intar 592,2
+                    52                     14                     74                     14
+                   130                     14                      4                     52
+                     4                     92                    112                      4
+                   152                     71                    152                    112
+                   176                     74                    176                    127
+                    92                    180                    130                    180
+                   200                    176                    224                    180
+                   152                    228                     52                    348
+                    11                     52                     11                     71
+                    11                    127                     53                     15
+                    75                     15                    131                     15
+                    53                      5                     93                      5
+                   113                      5                    153                     70
+                   153                    113                    177                     75
+                   177                    126                    181                     93
+                   131                    181                    201                    177
+                   225                    181                    153                    229
+                   349                     53                     10                     53
+                    10                     70                     10                    126
+                    12                     54                     72                     12
+                   128                     12                      6                     54
+                     6                     94                    114                      6
+                   154                     69                    154                    114
+                    72                    178                    178                    125
+                    94                    182                    128                    182
+                   202                    178                    226                    182
+                   154                    230                     54                    350
+                     9                     54                      9                     69
+                     9                    125                      8                     41
+                    56                      8                      8                    148
+                    56                    165                    107                    165
+                   173                    103                    145                    173
+                   185                     97                    185                    148
+                   185                    213                    221                    165
+                   233                    173                    353                     41
+                    41                      3                     41                     21
+                    97                     21                      3                    103
+                     3                    107                    145                     21
+                     0                     36                     19                     36
+                    36                     22                     48                      3
+                    48                     16                     64                     16
+                     3                     79                      3                    119
+                    16                    140                     48                     13
+                    81                     13                    121                     13
+                    64                    156                    156                    119
+                   168                     81                    168                    140
+                   196                     79                    121                    196
+                   168                    204                    216                    196
+                   156                    244                    344                     48
+                   240                    277                    236                    301
+                   273                    204                    216                    313
+                   249                    301                    313                    277
+                   273                    341                    361                    249
+                   385                    273                    389                    277
+                   413                    301                    425                    313
+                   453                    341                    249                    220
+                   212                    341                      3                     39
+                    16                     39                     21                     39
+                    42                     11                     11                     59
+                    11                    151                     59                    166
+                   104                    166                    100                    174
+                   146                    174                    186                     98
+                   186                    151                    186                    214
+                   166                    222                    234                    174
+                   354                     42                      0                     42
+                    42                     22                     98                     22
+                     0                    100                    104                      0
+                   146                     22                    241                    276
+                   300                    237                    272                    205
+                   312                    217                    248                    300
+                   312                    276                    272                    340
+                   360                    248                    384                    272
+                   276                    388                    300                    412
+                   424                    312                    340                    452
+                   248                    221                    340                    213
+                    17                     47                     20                     47
+                    17                     61                     88                     20
+                    17                    133                    136                     20
+                     6                     47                      6                     86
+                     6                    110                    163                     61
+                   163                    110                     86                    191
+                   136                    191                     88                    195
+                   195                    133                    211                    195
+                   163                    239                    243                    191
+                    47                    359                    209                    282
+                   241                    330                    262                    310
+                   282                    318                    330                    270
+                   262                    374                    270                    382
+                   394                    282                    310                    422
+                   318                    430                    442                    330
+                   229                    262                    201                    318
+                   217                    270                    245                    310
+                     2                     31                      9                     31
+                    12                     31                    225                    285
+                   305                    229                    257                    245
+                   333                    205                    289                    213
+                   337                    233                    305                    257
+                   289                    333                    337                    285
+                   369                    257                    397                    285
+                   401                    289                    417                    305
+                   445                    333                    449                    337
+                   252                    238                    210                    324
+                   264                    202                    320                    226
+                   296                    252                    320                    292
+                   264                    324                    252                    364
+                   376                    264                    292                    404
+                   408                    296                    432                    320
+                   324                    436                    234                    292
+                   296                    222                     19                     45
+                    45                     22                     19                     63
+                    90                     22                     19                    135
+                   138                     22                      4                     45
+                     4                     84                      4                    108
+                   161                     63                    161                    108
+                    84                    189                    138                    189
+                   193                     90                    193                    135
+                   209                    193                    161                    237
+                   241                    189                    357                     45
+                    27                     15                     27                      5
+                    18                     27                     25                     13
+                    25                      7                     16                     25
+                     1                     37                     18                     37
+                    37                     23                    242                    279
+                   238                    303                    275                    206
+                   218                    315                    251                    303
+                   315                    279                    275                    343
+                   363                    251                    275                    387
+                   279                    391                    303                    415
+                   315                    427                    343                    455
+                   251                    222                    214                    343
+                   227                    287                    307                    231
+                   259                    247                    207                    335
+                   291                    215                    339                    235
+                   259                    307                    291                    335
+                   339                    287                    259                    371
+                   287                    399                    291                    403
+                   307                    419                    335                    447
+                   339                    451                    280                    211
+                   328                    243                    260                    308
+                   280                    316                    328                    268
+                   260                    372                    268                    380
+                   392                    280                    308                    420
+                   316                    428                    440                    328
+                   260                    231                    203                    316
+                   219                    268                    308                    247
+                   226                    286                    306                    230
+                   258                    246                    206                    334
+                   290                    214                    338                    234
+                   306                    258                    290                    334
+                   338                    286                    370                    258
+                   286                    398                    402                    290
+                   418                    306                    334                    446
+                   450                    338                     49                      2
+                    49                     17                     65                     17
+                     2                     78                      2                    118
+                    17                    141                     49                     12
+                    80                     12                    120                     12
+                    65                    157                    157                    118
+                    80                    169                    169                    141
+                   197                     78                    120                    197
+                   169                    205                    217                    197
+                   245                    157                    345                     49
+                    16                     46                     21                     46
+                    16                     60                     89                     21
+                    16                    132                    137                     21
+                    46                      7                      7                     87
+                     7                    111                    162                     60
+                   162                    111                    190                     87
+                   137                    190                     89                    194
+                   194                    132                    210                    194
+                   162                    238                    242                    190
+                    46                    358                    253                    239
+                   211                    325                    265                    203
+                   321                    227                    297                    253
+                   321                    293                    265                    325
+                   365                    253                    377                    265
+                   405                    293                    409                    297
+                   433                    321                    437                    325
+                   235                    293                    297                    223
+                     1                     50                     50                     18
+                    66                     18                      1                     77
+                     1                    117                     18                    142
+                    50                     15                     83                     15
+                   123                     15                     66                    158
+                   117                    158                    170                     83
+                   170                    142                     77                    198
+                   123                    198                    170                    206
+                   218                    198                    158                    246
+                   346                     50                    208                    283
+                   240                    331                    263                    311
+                   283                    319                    331                    271
+                   263                    375                    271                    383
+                   283                    395                    311                    423
+                   319                    431                    331                    443
+                   228                    263                    200                    319
+                   216                    271                    244                    311
+                    26                     14                     26                      4
+                    26                     19                     18                     44
+                    44                     23                     18                     62
+                    91                     23                     18                    134
+                   139                     23                     44                      5
+                    85                      5                    109                      5
+                   160                     62                    160                    109
+                   188                     85                    139                    188
+                   192                     91                    192                    134
+                   208                    192                    160                    236
+                   240                    188                     44                    356
+                    34                     10                     34                     23
+                    34                      5                    281                    210
+                   329                    242                    309                    261
+                   281                    317                    329                    269
+                   373                    261                    381                    269
+                   393                    281                    421                    309
+                   429                    317                    441                    329
+                   261                    230                    202                    317
+                   218                    269                    309                    246
+                   243                    278                    302                    239
+                   274                    207                    314                    219
+                   250                    302                    314                    278
+                   274                    342                    362                    250
+                   386                    274                    278                    390
+                   302                    414                    426                    314
+                   342                    454                    250                    223
+                   342                    215                    224                    284
+                   304                    228                    256                    244
+                   204                    332                    288                    212
+                   336                    232                    304                    256
+                   288                    332                    336                    284
+                   368                    256                    284                    396
+                   400                    288                    416                    304
+                   332                    444                    448                    336
+                   237                    255                    209                    327
+                   201                    267                    225                    323
+                   299                    255                    323                    295
+                   267                    327                    255                    367
+                   267                    379                    295                    407
+                   299                    411                    323                    435
+                   327                    439                    233                    295
+                   299                    221                     33                      9
+                    33                     20                     33                      6
+                    40                      9                     57                      9
+                     9                    149                     57                    164
+                   106                    164                    172                    102
+                   144                    172                    184                     96
+                   184                    149                    184                    212
+                   164                    220                    232                    172
+                   352                     40                     40                      2
+                    40                     20                     96                     20
+                     2                    102                    106                      2
+                   144                     20                      0                     29
+                    11                     29                     29                     14
+                     0                     51                     19                     51
+                    19                     67                      0                     76
+                     0                    116                     19                    143
+                    51                     14                     82                     14
+                   122                     14                     67                    159
+                   116                    159                     82                    171
+                   171                    143                     76                    199
+                   122                    199                    171                    207
+                   219                    199                    159                    247
+                    51                    347                      2                     38
+                    17                     38                     20                     38
+                    10                     43                     58                     10
+                    10                    150                     58                    167
+                   105                    167                    101                    175
+                   147                    175                     99                    187
+                   187                    150                    187                    215
+                   167                    223                    235                    175
+                    43                    355                      1                     43
+                    43                     23                     99                     23
+                     1                    101                    105                      1
+                   147                     23                     32                      8
+                    32                     21                     32                      7
+                    13                     55                     73                     13
+                   129                     13                      7                     55
+                     7                     95                    115                      7
+                   155                     68                    115                    155
+                    73                    179                    179                    124
+                    95                    183                    129                    183
+                   203                    179                    227                    183
+                   155                    231                     55                    351
+                     8                     55                      8                     68
+                     8                    124                      3                     30
+                     8                     30                     13                     30
+                   236                    254                    208                    326
+                   200                    266                    224                    322
+                   298                    254                    322                    294
+                   266                    326                    254                    366
+                   378                    266                    294                    406
+                   410                    298                    434                    322
+                   326                    438                    232                    294
+                   298                    220                     11                     35
+                    35                     22                     35                      4
+                    24                     12                     24                      6
+                    24                     17                      1                     28
+                    10                     28                     28                     15
+charges                                   kind=fltar 456
+ 2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00
+ 2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00
+ 2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00
+ 2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00
+ 2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00
+ 2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00  2.361566205200000e+00
+-1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00
+-1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00
+-1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00
+-1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00 -1.093870316700000e+00
+-1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00
+-1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00
+-1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00
+-1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00 -1.055042603900000e+00
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+-6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01 -6.831393458000000e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+ 7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01  7.815150188000001e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01 -1.544640324000000e-01
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+-8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02 -8.298140200000001e-02
+ 4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01
+ 4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01
+ 4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01
+ 4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01  4.906092530000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+ 1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01  1.385876479000000e-01
+dipoles                                   kind=none   None
+ffatype_ids                               kind=intar 456
+                     0                      0                      0                      0
+                     0                      0                      0                      0
+                     0                      0                      0                      0
+                     0                      0                      0                      0
+                     0                      0                      0                      0
+                     0                      0                      0                      0
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     2                      2                      2                      2
+                     2                      2                      2                      2
+                     2                      2                      2                      2
+                     2                      2                      2                      2
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     3                      3                      3                      3
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     4                      4                      4                      4
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     5                      5                      5                      5
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     7                      7                      7                      7
+                     7                      7                      7                      7
+                     7                      7                      7                      7
+                     7                      7                      7                      7
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+ffatypes                                  kind=strar 9
+                    ZR                   O_OX                   O_OH                   O_CA
+                  C_CA                   C_PC                   C_PH                   H_OH
+                  H_PH
+masses                                    kind=none   None
+numbers                                   kind=intar 456
+                    40                     40                     40                     40
+                    40                     40                     40                     40
+                    40                     40                     40                     40
+                    40                     40                     40                     40
+                    40                     40                     40                     40
+                    40                     40                     40                     40
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     8                      8                      8                      8
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     6                      6                      6                      6
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+                     1                      1                      1                      1
+pos                                       kind=fltar 456,3
+ 3.490725830842442e+01  1.989736115878592e+01  1.989640487320012e+01  3.490808649393055e+01
+ 3.979513994951059e+01 -1.300625055309490e-03  1.501055756938832e+01  1.989535638139978e+01
+ 1.246179555604761e-03  1.501137588505900e+01  3.979320094458823e+01  1.989720602732817e+01
+ 4.874308149304886e+00  1.989583090118305e+01  1.989787247092695e+01  4.874894653776321e+00
+ 3.979257955564209e+01  5.968951244624455e-04  2.477156000121577e+01  1.989794132834076e+01
+-6.649172855657153e-04  2.477213204653341e+01  3.979471652734251e+01  1.989575923404384e+01
+ 1.989201946003435e+01  3.491390226935287e+01  1.989723959501853e+01  1.989176072681321e+01
+ 1.501673299775960e+01 -1.129256244541729e-03  3.978764801128609e+01  3.491304735065996e+01
+ 1.057641614954819e-03  3.978733906375515e+01  1.501590858399707e+01  1.989643443478721e+01
+ 1.989021170080069e+01  1.989797529016069e+01  3.491309701053401e+01  1.989131281056547e+01
+ 3.979348778678292e+01  1.501588819750306e+01  3.978803993526803e+01  1.989696868977292e+01
+ 1.501699610198728e+01  3.978913215770860e+01  3.979262010168185e+01  3.491343905174566e+01
+ 1.989046538478880e+01  4.880841585670589e+00  1.989494772283481e+01  1.989057374713003e+01
+ 2.477729070125715e+01  4.719741553780736e-04  3.978878868209046e+01  4.880309341815733e+00
+-4.301581744627571e-04  3.978892228577907e+01  2.477678835910098e+01  1.989859264118343e+01
+ 1.989148884038907e+01  1.989658031878211e+01  4.880302130079328e+00  1.989302042109499e+01
+ 3.979559229700724e+01  2.477684310638939e+01  3.978633008797122e+01  1.989499819501557e+01
+ 2.477750655215571e+01  3.978786594705887e+01  3.979386468015720e+01  4.880389304875714e+00
+ 2.202461643802651e+01  2.203189112311701e+01  3.765944899136999e+01  2.202531036798885e+01
+ 2.134740604106842e+00  1.776133298387446e+01  2.129765527659656e+00  2.203148419271726e+01
+ 1.776286517993534e+01  2.130436098341955e+00  2.134407460468690e+00  3.765846622785212e+01
+ 3.765364101627898e+01  3.765888318746777e+01  3.765879402579836e+01  3.765331908779535e+01
+ 1.776255570111377e+01  1.776226963765306e+01  1.775666476589178e+01  3.765859689708251e+01
+ 1.776200250148918e+01  1.775636570738458e+01  1.776230133401189e+01  3.765909028320628e+01
+ 2.202672939433552e+01  3.766037150215158e+01  2.203097986183339e+01  2.202631608352776e+01
+ 1.776234599247950e+01  2.134213937499734e+00  2.128786365030469e+00  3.765879446242553e+01
+ 2.135086538364289e+00  2.128334805551631e+00  1.776082738113674e+01  2.203203177401806e+01
+ 3.765329158533921e+01  2.203073913533792e+01  2.203181153117562e+01  3.765410410304322e+01
+ 2.134932100735816e+00  2.133688919571228e+00  1.775586776786592e+01  2.203127523481187e+01
+ 2.135670833274500e+00  1.775671455087363e+01  2.135559199454761e+00  2.203111303100527e+01
+ 1.762577734966588e+01  1.763000570487011e+01  2.266330822679377e+00  1.762650624498306e+01
+ 3.752875276030682e+01  2.216275038100298e+01  3.752050766793352e+01  1.762948080272583e+01
+ 2.216322617063571e+01  3.752126841974270e+01  3.752811262536633e+01  2.265957839948938e+00
+ 2.261537912485077e+00  2.265729289858605e+00  2.265998740387887e+00  2.260329120181068e+00
+ 2.216117704414238e+01  2.216406386780314e+01  2.215772730325949e+01  2.268087772864094e+00
+ 2.216185216065963e+01  2.215650720606797e+01  2.216346869842136e+01  2.266326751780221e+00
+ 1.762407035216446e+01  2.265842029938293e+00  1.763000274242215e+01  1.762402526074742e+01
+ 2.216292137234051e+01  3.752887572170109e+01  3.752297244443796e+01  2.266345156290114e+00
+ 3.752607068387407e+01  3.752292973172899e+01  2.216340736083256e+01  1.763120267852185e+01
+ 2.260410474901676e+00  1.763088489134654e+01  1.763105821224282e+01  2.261022444448104e+00
+ 3.752716039127341e+01  3.752806178485923e+01  2.215703687890538e+01  1.763106712433468e+01
+ 3.752683455326825e+01  2.215763882359795e+01  3.752726086333593e+01  1.763026158731759e+01
+ 1.612738088836549e+01  3.302533778908620e+01  2.003984794891178e+01  1.612731613417120e+01
+ 1.312766242903430e+01  1.393784446245362e-01  3.602237942245713e+01  3.302688557668290e+01
+ 1.336174039388602e-01  3.602227098524808e+01  1.312927418068616e+01  2.002680785221010e+01
+ 2.365498542535781e+01  6.769074757939987e+00  2.002635382191530e+01  2.365500685717470e+01
+ 2.666617394718741e+01  1.412707297290573e-01  3.760418659459016e+00  6.766650584719018e+00
+ 1.318037843702247e-01  3.760457177349364e+00  2.666375182178951e+01  2.004022690334620e+01
+ 1.612528143643354e+01  6.767097824203487e+00  1.976273718790822e+01  1.612523916539509e+01
+ 2.666352562681059e+01  3.966262386478711e+01  3.602441305318901e+01  6.769318338518314e+00
+ 3.965201139308716e+01  3.602440379697210e+01  2.666578382452883e+01  1.975787140941610e+01
+ 2.365671567575621e+01  3.302657742274238e+01  1.976444893991181e+01  2.365670486219636e+01
+ 1.312989855683247e+01  3.966000342369477e+01  3.758748749953809e+00  3.302470531337752e+01
+ 3.965437653497323e+01  3.758723999249336e+00  1.312801586164986e+01  1.975637385138161e+01
+ 2.002184863407880e+01  1.613346505188802e+01  3.302473883007246e+01  2.002197289124604e+01
+ 3.602810468126447e+01  1.312926947232245e+01  1.367082338189690e-01  1.613261305267060e+01
+ 1.312846150972057e+01  1.368852196166233e-01  3.602742198898699e+01  3.302655767808238e+01
+ 3.302040837247949e+01  2.004004219509145e+01  1.613126321395754e+01  3.302171468849843e+01
+ 1.339550457157747e-01  3.602721125685146e+01  1.312168471554626e+01  2.003596460621149e+01
+ 3.603032797522945e+01  1.312300101336320e+01  1.299388364031086e-01  1.613262606149094e+01
+ 1.974570901927019e+01  2.366325071637388e+01  3.302633042641153e+01  1.975025798565546e+01
+ 3.764227587050050e+00  1.312719456401017e+01  3.965627467935057e+01  2.366228684834167e+01
+ 1.313040914493622e+01  3.966058902913779e+01  3.763443724451319e+00  3.302506543319744e+01
+ 6.761061605966100e+00  2.002909549751064e+01  2.366299714003316e+01  6.762419925076353e+00
+ 1.306631168260614e-01  3.765354530141899e+00  2.665923351994980e+01  2.003919387995704e+01
+ 3.764283077950346e+00  2.666057056535371e+01  1.409459540052401e-01  2.366032672794897e+01
+ 2.002276797307826e+01  2.366128056142727e+01  6.768489650517730e+00  2.002335749192145e+01
+ 3.767118915544936e+00  2.666318227829811e+01  1.353561089701583e-01  2.365954347220269e+01
+ 2.666633018845635e+01  1.359144051724433e-01  3.765186960268605e+00  6.767508539746105e+00
+ 6.762372935307679e+00  1.976218024753378e+01  1.613337749116571e+01  6.763322579988857e+00
+ 3.965965385602520e+01  3.602973569058194e+01  2.665831602525251e+01  1.975794207783412e+01
+ 3.602778715627186e+01  2.665929230927920e+01  3.965505961599392e+01  1.613053989336842e+01
+ 1.975816760699984e+01  1.613154259519901e+01  6.766902427345431e+00  1.974859444413245e+01
+ 3.603079508399954e+01  2.666528581190256e+01  3.965774147924260e+01  1.613010897504268e+01
+ 2.666432519015519e+01  3.964836314388970e+01  3.602918489878213e+01  6.768965429210017e+00
+ 3.301905972503401e+01  1.976430008312319e+01  2.366060689044069e+01  3.302006072637284e+01
+ 3.966224338434107e+01  3.763234929262723e+00  1.312334670151796e+01  1.975504589289441e+01
+ 3.766416647857637e+00  1.312434492210792e+01  3.965324384079992e+01  2.366270507752447e+01
+ 3.301950714223298e+01  1.613276804758171e+01  2.002645820182657e+01  3.301986897404555e+01
+ 3.603051998232966e+01  1.314988135041166e-01  1.312358457612722e+01  1.613025759663716e+01
+ 1.415055264284224e-01  1.312390868917699e+01  3.602808549953281e+01  2.004013952859266e+01
+ 6.763290683819170e+00  2.366025326910892e+01  2.003956523794497e+01  6.763158961257040e+00
+ 3.763205542795933e+00  1.318388397269749e-01  2.665850003634340e+01  2.366337918885094e+01
+ 1.411759155409970e-01  2.665839516949183e+01  3.766344007689240e+00  2.002699494901033e+01
+ 6.762101013310686e+00  1.613097528116441e+01  1.975831801028227e+01  6.762315863480681e+00
+ 3.602748860718660e+01  3.965405243376151e+01  2.665936672231643e+01  1.613336088963971e+01
+ 3.965979670007713e+01  2.665956327231921e+01  3.602986646059846e+01  1.976269607944013e+01
+ 3.302082841722822e+01  2.366306534385745e+01  1.975646236830511e+01  3.302090302941561e+01
+ 3.766520306973559e+00  3.965207390224676e+01  1.312251280487792e+01  2.366008615429296e+01
+ 3.966192258716966e+01  1.312260994416990e+01  3.763585958017277e+00  1.976457660862210e+01
+ 1.612441575700581e+01  2.003737628478283e+01  3.302667362056058e+01  1.612579002578034e+01
+ 1.300943615919166e-01  1.312929183554348e+01  3.602385461209880e+01  2.003980285143647e+01
+ 1.312835912727251e+01  3.602521570582152e+01  1.326126129270848e-01  3.302462604224628e+01
+ 2.002237388759288e+01  3.302542651164779e+01  1.613272634740917e+01  2.002283097144105e+01
+ 1.312989650757725e+01  3.602729144147526e+01  1.359486117124403e-01  3.302472864920428e+01
+ 3.603021827855345e+01  1.363774176440271e-01  1.312908901372393e+01  1.613127922476698e+01
+ 2.365474508978707e+01  1.975805959178482e+01  3.302489375434092e+01  2.365582793051143e+01
+ 3.965333108119757e+01  1.312759813226865e+01  3.759593281615865e+00  1.976353965391668e+01
+ 1.313009378981553e+01  3.760648541044594e+00  3.965951782488528e+01  3.302640175483977e+01
+ 2.002108500568356e+01  6.769639743094411e+00  2.365960668883464e+01  2.002163482344500e+01
+ 2.666450545568627e+01  3.765702798044551e+00  1.371212288279759e-01  6.768226947003763e+00
+ 3.764085113435486e+00  1.376581682393422e-01  2.666323425010762e+01  2.366364349018840e+01
+ 2.365627916904770e+01  2.003828360473675e+01  6.767686206404353e+00  2.365782489480705e+01
+ 1.419852084602276e-01  2.666398547283920e+01  3.757574288722359e+00  2.002804095734190e+01
+ 2.666557499549343e+01  3.759137131165368e+00  1.315951885129683e-01  6.768189733765365e+00
+ 1.975012398629565e+01  6.767812764910553e+00  1.613003602182881e+01  1.974648029687565e+01
+ 2.666604139189277e+01  3.602990672505781e+01  3.965980196493943e+01  6.766864834421964e+00
+ 3.602775511780144e+01  3.965656552988282e+01  2.666497095133764e+01  1.613377602848543e+01
+ 1.612688033848156e+01  1.975583736606142e+01  6.769177718413183e+00  1.612788536211239e+01
+ 3.965478529834676e+01  2.666538980316798e+01  3.602174832606473e+01  1.976282697384082e+01
+ 2.666416652842498e+01  3.602275648993071e+01  3.966118561074479e+01  6.766715134787656e+00
+ 1.974852660756867e+01  3.302723074932664e+01  2.366260586375733e+01  1.975887704013076e+01
+ 1.312889263768425e+01  3.763466875326005e+00  3.964795683860110e+01  3.302561618320703e+01
+ 3.766146355335531e+00  3.965779704774696e+01  1.312740553030542e+01  2.366079595410458e+01
+ 6.070393232326075e+00  1.381933706730796e+01  1.979313958501530e+01  6.070471408146224e+00
+ 3.371591174479433e+01  3.969036761895347e+01  2.596783518999552e+01  1.382208783733355e+01
+ 3.971929472589517e+01  2.596788992018665e+01  3.371866820841480e+01  1.982353971784280e+01
+ 1.381424310577510e+01  6.074865117949615e+00  1.982335856793499e+01  1.381416819778865e+01
+ 2.597129560299399e+01  3.972213953575969e+01  3.371263185842697e+01  6.078150646602359e+00
+ 3.968771830132448e+01  3.371260764874877e+01  2.597463522592599e+01  1.979325482015008e+01
+ 6.071483900165442e+00  6.074449799909492e+00  7.236782374018715e-02  6.072049100844775e+00
+ 2.597200804076883e+01  2.000532892129358e+01  2.596622477296280e+01  6.077413377537295e+00
+ 1.996568623469416e+01  2.596679116572648e+01  2.597498695728957e+01  1.051286467109458e-01
+ 1.381552098889720e+01  1.381872516087529e+01  1.043858578372248e-01  1.381562643317187e+01
+ 3.371647841617332e+01  2.000523014592194e+01  3.371119906842123e+01  1.382154433182282e+01
+ 1.996582988029359e+01  3.371133037630351e+01  3.371919486592358e+01  7.307237473549275e-02
+ 1.978604205769553e+01  6.075965011519122e+00  1.381845043505683e+01  1.978062943042749e+01
+ 2.597484531270559e+01  3.371811247719431e+01  3.972121224358062e+01  6.074671765569149e+00
+ 3.371672196307043e+01  3.971632947131886e+01  2.597339444562062e+01  1.382252554427384e+01
+ 1.381511813506187e+01  1.979081527893156e+01  6.078005149428230e+00  1.381614027082065e+01
+ 3.968998167641033e+01  2.597427225406033e+01  3.371065250110522e+01  1.982316375095708e+01
+ 2.597189458322347e+01  3.371167642967917e+01  3.972166730162139e+01  6.074502304910115e+00
+ 1.017823148820772e-01  1.382083681627463e+01  1.381966838343492e+01  1.016723266520908e-01
+ 3.371584994645583e+01  3.371844212121823e+01  1.996152380957845e+01  1.382219812315616e+01
+ 3.371624729825850e+01  1.996138578455740e+01  3.371705844856085e+01  1.382150204851188e+01
+ 6.070733681004529e+00  1.982221614461082e+01  1.382214115058187e+01  6.071733248281731e+00
+ 3.971946359517061e+01  3.371850189123408e+01  2.596650715229699e+01  1.979367757564411e+01
+ 3.371617677123812e+01  2.596755002315471e+01  3.969016960899948e+01  1.381892306913047e+01
+ 1.981833251995918e+01  1.382045279181060e+01  6.074732363763417e+00  1.978290291603092e+01
+ 3.371899708180666e+01  2.597422355619830e+01  3.971898447817124e+01  1.381907949100311e+01
+ 2.597199366490836e+01  3.968411603194392e+01  3.371744029580114e+01  6.077732087982101e+00
+ 6.070304077918620e+00  7.013824118642557e-02  6.076477281148843e+00  6.068828833688231e+00
+ 1.996866676987030e+01  2.597406230101006e+01  2.596942141712212e+01  1.058151271052866e-01
+ 2.597210393971820e+01  2.596793498137526e+01  2.000417416696340e+01  6.075992250926570e+00
+ 1.019418554937276e-01  6.076832173324530e+00  6.075799373709719e+00  1.016526624744318e-01
+ 2.597132779031803e+01  2.597520360598918e+01  1.996152308122143e+01  6.078150149712796e+00
+ 2.597089180181899e+01  1.996123581569601e+01  2.597246444240781e+01  6.076813840776871e+00
+ 1.381471798005188e+01  6.925573882686667e-02  1.382140747150762e+01  1.381289132850737e+01
+ 2.000057639307594e+01  3.371856733658931e+01  3.371388404817216e+01  7.384027953358849e-02
+ 3.371612406308586e+01  3.371209663413830e+01  2.000512599147392e+01  1.381965040346558e+01
+ 8.672218495339466e-02  1.182113723457815e+01  1.181976662645888e+01  8.647357086259645e-02
+ 3.171574447001204e+01  3.171896211118905e+01  1.995581763268942e+01  1.182249444690000e+01
+ 3.171589190994230e+01  1.995555548181683e+01  3.171691935369907e+01  1.182159907104908e+01
+ 1.980518242918080e+01  8.075723288088817e+00  1.181855888400319e+01  1.979485639753668e+01
+ 2.797486502931759e+01  3.171845572585710e+01  3.972788797135372e+01  8.074480802549155e+00
+ 3.171655894678791e+01  3.971863022968562e+01  2.797343752985148e+01  1.182260057382002e+01
+ 8.681805591030312e-02  8.076748381181810e+00  8.075517086361035e+00  8.649642558696696e-02
+ 2.797105971007662e+01  2.797506979613716e+01  1.995578366624222e+01  8.078250622361793e+00
+ 2.797083786278593e+01  1.995546899629196e+01  2.797236273169486e+01  8.076925168362079e+00
+ 1.982004072849675e+01  1.182032349308245e+01  8.074416886154317e+00  1.979617177880267e+01
+ 3.171930899339469e+01  2.797417314519791e+01  3.972660524613276e+01  1.181895861617269e+01
+ 2.797188572127837e+01  3.970390833615899e+01  3.171775381447850e+01  8.077844263412164e+00
+ 1.181464594528382e+01  6.364404154195957e-02  1.182144072667786e+01  1.181289182593741e+01
+ 1.998131907233046e+01  3.171883045703952e+01  3.171407599961245e+01  7.222992768481579e-02
+ 3.171605315609878e+01  3.171234753579476e+01  1.998982744517894e+01  1.181979456383545e+01
+ 1.181590487102266e+01  1.181868769157720e+01  8.513476984165391e-02  1.181602475200967e+01
+ 3.171643406794604e+01  1.999018376435125e+01  3.171098277688720e+01  1.182176428651959e+01
+ 1.995995491826899e+01  3.171112767781727e+01  3.171943303282861e+01  7.145057903744415e-02
+ 8.070820696763668e+00  1.982298145635792e+01  1.182232316837899e+01  8.071862883416708e+00
+ 3.972183845723185e+01  3.171869179758548e+01  2.796618792385944e+01  1.981221058707145e+01
+ 3.171617637041888e+01  2.796725926203570e+01  3.970967635530060e+01  1.181892138516928e+01
+ 8.070058893997910e+00  1.181934841040094e+01  1.981198824433493e+01  8.070079138860185e+00
+ 3.171585776933837e+01  3.970963272277147e+01  2.796803236167278e+01  1.182233286373358e+01
+ 3.972086493743659e+01  2.796804321000422e+01  3.171885314215038e+01  1.982611246226420e+01
+ 1.181536689045192e+01  1.980868572401337e+01  8.077966288373313e+00  1.181640674181759e+01
+ 3.970865358128022e+01  2.797427141448886e+01  3.171056688977725e+01  1.982540184660307e+01
+ 2.797169546342603e+01  3.171161096692349e+01  3.972412161428723e+01  8.074354740892542e+00
+ 8.071557650782674e+00  8.074247555177745e+00  7.050062415355079e-02  8.071937158277732e+00
+ 2.797179511031450e+01  1.999022016786892e+01  2.796615149304444e+01  8.077453993368954e+00
+ 1.995989620307934e+01  2.796653645085193e+01  2.797498989324110e+01  8.610397791641479e-02
+ 8.070192812496019e+00  6.419249672714625e-02  8.076634488707834e+00  8.068576960257134e+00
+ 1.996676883827650e+01  2.797423034732491e+01  2.796948134292814e+01  8.681848309330077e-02
+ 2.797174613304083e+01  2.796786900495130e+01  1.998923487678351e+01  8.075657974312703e+00
+ 1.181421957081106e+01  8.074719134443027e+00  1.982560272853746e+01  1.181418439204753e+01
+ 2.797118276917622e+01  3.972415117171580e+01  3.171281335341664e+01  8.078079782490921e+00
+ 3.970664144464227e+01  3.171281828807571e+01  2.797458778876385e+01  1.981255358789447e+01
+ 1.250582840368720e+01  2.914666489505505e+01  1.998581534089329e+01  1.250555392452712e+01
+ 9.248897282293649e+00  7.835262295367966e-02  3.240056679838487e+01  2.914956750159762e+01
+ 7.216198845370839e-02  3.240029035817515e+01  9.251877777028364e+00  1.995832468698563e+01
+ 2.727682685020807e+01  1.064733679832643e+01  1.995805679017008e+01  2.727706445068976e+01
+ 3.054483721808866e+01  7.934678771389009e-02  7.381941531267555e+00  1.064405630013955e+01
+ 7.118433105206592e-02  7.382150352822855e+00  3.054156769814290e+01  1.998590571660755e+01
+ 1.250394035343708e+01  1.064451216149219e+01  1.982367589490861e+01  1.250394150469548e+01
+ 3.054096543236675e+01  3.972523888817460e+01  3.240217001267826e+01  1.064795009276426e+01
+ 3.971225738628854e+01  3.240219080493355e+01  3.054444885832707e+01  1.981950221232768e+01
+ 2.727870998158595e+01  2.914897470662509e+01  1.982820340944857e+01  2.727870467008315e+01
+ 9.252447607585127e+00  3.972124509535219e+01  7.380286044239628e+00  2.914610026781122e+01
+ 3.971829193564196e+01  7.380313442766089e+00  9.249563638323313e+00  1.981633403544856e+01
+ 1.995358184209804e+01  1.251219148170519e+01  2.914608716823374e+01  1.995370776589150e+01
+ 3.240640230252035e+01  9.251744125897076e+00  8.244779772052184e-02  1.251074774892251e+01
+ 9.249961791504605e+00  8.262260277302413e-02  3.240515295940634e+01  2.914910926924576e+01
+ 2.914257287367412e+01  1.998549079972283e+01  1.250955281191710e+01  2.914426401275458e+01
+ 7.350297028980025e-02  3.240568646705869e+01  9.243054471566870e+00  1.997402188651311e+01
+ 3.240830698776938e+01  9.244761484098495e+00  6.189148939201462e-02  1.251077883534666e+01
+ 1.979825586453108e+01  2.728530134522020e+01  2.914863567309117e+01  1.981218172973174e+01
+ 7.386247757270069e+00  9.248727792595064e+00  3.971809964485507e+01  2.728381138884808e+01
+ 9.252779292377982e+00  3.973057336130524e+01  7.384935655012308e+00  2.914672192417138e+01
+ 1.063843546879799e+01  1.996787866602766e+01  2.728478595396909e+01  1.064007827185785e+01
+ 6.248503884654118e-02  7.387304932994692e+00  3.053764264773101e+01  1.998488054863796e+01
+ 7.385891618028505e+00  3.053927242401543e+01  7.958304302831659e-02  2.728208107966552e+01
+ 1.995389339736400e+01  2.728286897274880e+01  1.064677747535507e+01  1.995465237533794e+01
+ 7.388576086402149e+00  3.054065125537959e+01  8.156017581817152e-02  2.728163032850796e+01
+ 3.054491321143102e+01  8.237271191933480e-02  7.387147515844949e+00  1.064532433867220e+01
+ 1.064064144911362e+01  1.982117919575010e+01  1.251193295058655e+01  1.064169543905434e+01
+ 3.972171227461700e+01  3.240826441885544e+01  3.053600713271579e+01  1.981846056839645e+01
+ 3.240571637965510e+01  3.053708318279578e+01  3.971870503406586e+01  1.250841471409844e+01
+ 1.981917140243515e+01  1.250976775384085e+01  1.064427029807278e+01  1.979937368957093e+01
+ 3.240888823917486e+01  3.054399175844921e+01  3.972946762609432e+01  1.250848906475585e+01
+ 3.054172390240114e+01  3.970975878197266e+01  3.240740815167378e+01  1.064764652507601e+01
+ 2.914074075046528e+01  1.982519073371558e+01  2.728215597735856e+01  2.914177144439387e+01
+ 3.972410873815303e+01  7.384869490924587e+00  9.245549147409207e+00  1.981431908474011e+01
+ 7.388356027877606e+00  9.246581232590794e+00  3.971488949564753e+01  2.728469747473889e+01
+ 2.914117494752227e+01  1.251141673142221e+01  1.995809668274219e+01  2.914130571311315e+01
+ 3.240900361129270e+01  7.183463838087101e-02  9.246077592444484e+00  1.250823884053288e+01
+ 7.868624859847995e-02  9.246172523504816e+00  3.240587342867793e+01  1.998587772349170e+01
+ 1.064178459359191e+01  2.728234418637113e+01  1.998584040987460e+01  1.064138989865301e+01
+ 7.384695265489253e+00  7.093542359955422e-02  3.053635310448776e+01  2.728542024374890e+01
+ 7.958732361744429e-02  3.053596410725073e+01  7.387813094763260e+00  1.995828969742503e+01
+ 1.063989242559662e+01  1.250880220686596e+01  1.982033324739158e+01  1.063993698584806e+01
+ 3.240526724604702e+01  3.971423354355418e+01  3.053783607612447e+01  1.251200900396604e+01
+ 3.972176911631418e+01  3.053785409584417e+01  3.240851832576362e+01  1.982573833443115e+01
+ 2.914301260858894e+01  2.728492033812162e+01  1.981829124652232e+01  2.914301309702387e+01
+ 7.388401395221556e+00  3.971173552946184e+01  9.244326650155632e+00  2.728176840956382e+01
+ 3.972209528333754e+01  9.244371446135403e+00  7.385277513573646e+00  1.982694757587705e+01
+ 1.250253644651036e+01  1.997532718677503e+01  2.914902816664720e+01  1.250420067224088e+01
+ 6.225125755118907e-02  9.251603872392659e+00  3.240189573532817e+01  1.998513356865633e+01
+ 9.249973964243997e+00  3.240353477187163e+01  7.211970693129093e-02  2.914620118676577e+01
+ 1.995393787550432e+01  2.914706199942743e+01  1.251102892710483e+01  1.995465351697644e+01
+ 9.252576110802481e+00  3.240506344656923e+01  8.156487948945704e-02  2.914600353430419e+01
+ 3.240888336278172e+01  8.232440982266527e-02  9.251338817625795e+00  1.250944608926462e+01
+ 2.727657950440097e+01  1.981839115286423e+01  2.914636593689280e+01  2.727763665353707e+01
+ 3.971602095410041e+01  9.249111685914333e+00  7.381327631726466e+00  1.982165962042658e+01
+ 9.252482255200558e+00  7.382371631377547e+00  3.972168759197840e+01  2.914884752711017e+01
+ 1.995356941647684e+01  1.064816574879485e+01  2.728164498581899e+01  1.995365955642835e+01
+ 3.054222718582404e+01  7.387503871390357e+00  8.250265477260228e-02  1.064654019438886e+01
+ 7.385830461303763e+00  8.263054034687108e-02  3.054080418095189e+01  2.728516779888928e+01
+ 2.727833052046908e+01  1.998519974506595e+01  1.064548531502190e+01  2.728002383833265e+01
+ 8.094385793664415e-02  3.054159192237094e+01  7.378931128107247e+00  1.996660099670826e+01
+ 3.054403909115141e+01  7.380628325579808e+00  6.215919869969651e-02  1.064646509416267e+01
+ 1.981159637597344e+01  1.064549576767454e+01  1.250830977419344e+01  1.979873853028092e+01
+ 3.054466173689181e+01  3.240812916897033e+01  3.973008654417936e+01  1.064434535235626e+01
+ 3.240597389691740e+01  3.972019207480745e+01  3.054331817249836e+01  1.251195501748814e+01
+ 1.250488334235093e+01  1.981389887899715e+01  1.064779539996564e+01  1.250593009569637e+01
+ 3.971496496937775e+01  3.054410045150013e+01  3.240014293036852e+01  1.982521256729928e+01
+ 3.054152070995434e+01  3.240120559029220e+01  3.972313179566277e+01  1.064417987929424e+01
+ 1.979887820564971e+01  2.914950054984696e+01  2.728451372266434e+01  1.981975232771712e+01
+ 9.250539573816612e+00  7.384667021286449e+00  3.971126979682839e+01  2.914788966709210e+01
+ 7.388480626223573e+00  3.972996575126965e+01  9.249105286255935e+00  2.728245773618650e+01
+ 1.656140352983275e+01  3.323475259180652e+00  1.657133431343251e+01  1.656228486168100e+01
+ 2.322349657026098e+01  3.647247979787997e+01  3.646546169865879e+01  3.325015483781570e+00
+ 3.646325433420166e+01  3.646639285916446e+01  2.322505375654974e+01  1.657064509644183e+01
+ 3.321383769169834e+00  1.657394415365840e+01  1.657024029142375e+01  3.322075242770350e+00
+ 3.646992948505324e+01  3.646762546863646e+01  2.321523144537045e+01  1.656909322726821e+01
+ 3.646800862694339e+01  2.321590504485378e+01  3.646489593582192e+01  1.657191337305349e+01
+ 1.656956411173918e+01  1.656842604137276e+01  3.327274985978196e+00  1.656729775746637e+01
+ 3.646973268922548e+01  2.322301421175649e+01  3.646045320739267e+01  1.656928168460218e+01
+ 2.322219907283236e+01  3.645832042111462e+01  3.647038251516410e+01  3.324250667262286e+00
+ 3.324106003631590e+00  3.323659830263010e+00  3.324461885732755e+00  3.321163002993453e+00
+ 2.321719133232705e+01  2.322591938551336e+01  2.321612567307243e+01  3.331304292322689e+00
+ 2.321923913577702e+01  2.321318355210028e+01  2.322475152249319e+01  3.327115786599175e+00
+ 1.448944722131224e+01  2.861313146337814e+01  1.998477602906750e+01  1.448914595640550e+01
+ 8.715294775229181e+00  7.347930002723484e-02  3.438410506576655e+01  2.861576865638980e+01
+ 6.835783933128936e-02  3.438380019536345e+01  8.718022713931383e+00  1.995076562189102e+01
+ 2.529331214772399e+01  1.118116209974402e+01  1.995028455263344e+01  2.529350580934633e+01
+ 3.107854588758818e+01  7.431730396495140e-02  5.398369723788479e+00  1.117774779924335e+01
+ 6.754427777628247e-02  5.398536456241224e+00  3.107513017847854e+01  1.998492936122963e+01
+ 1.448752526350660e+01  1.117810789195383e+01  1.983223375976018e+01  1.448754052791589e+01
+ 3.107454260602082e+01  3.973070753958378e+01  3.438570500463899e+01  1.118175374742984e+01
+ 3.971629871794456e+01  3.438572084205047e+01  3.107827581579216e+01  1.981814105818846e+01
+ 2.529519522967835e+01  2.861511043460138e+01  1.983375422213745e+01  2.529519432716770e+01
+ 8.718561551334329e+00  3.972578965580740e+01  5.396661366581465e+00  2.861258996078253e+01
+ 3.971860137850852e+01  5.396699257838535e+00  8.716022068188586e+00  1.981927884398634e+01
+ 1.994557227591399e+01  1.449580384176039e+01  2.861260018181787e+01  1.994603400832985e+01
+ 3.438996210394035e+01  8.718040855201783e+00  8.140600259372471e-02  1.449431250987591e+01
+ 8.716262550446167e+00  8.195334433150248e-02  3.438866709098891e+01  2.861520523568056e+01
+ 2.860897736649211e+01  1.998473304627838e+01  1.449315335058396e+01  2.861058284317422e+01
+ 7.030640141129860e-02  3.438925690276886e+01  8.709353203848824e+00  1.996857236937689e+01
+ 3.439187149971026e+01  8.710955403386045e+00  5.397955675313217e-02  1.449430252135673e+01
+ 1.979889453654178e+01  2.530173130694460e+01  2.861492197952455e+01  1.981730763602466e+01
+ 5.402690622395350e+00  8.715004614110915e+00  3.972146634985789e+01  2.530023522028510e+01
+ 8.719112665180688e+00  3.973860242769609e+01  5.401378818002596e+00  2.861304640443996e+01
+ 1.117224999094351e+01  1.996445895034417e+01  2.530124906059843e+01  1.117389193699622e+01
+ 5.506063887368379e-02  5.403779633604668e+00  3.107122842464413e+01  1.998362619065168e+01
+ 5.402290683161406e+00  3.107284097543882e+01  7.429214717454556e-02  2.529848300738154e+01
+ 1.994626036922956e+01  2.529931081918375e+01  1.118047396761855e+01  1.994744260682303e+01
+ 5.404985504065141e+00  3.107422728283204e+01  8.009945833070133e-02  2.529809253594331e+01
+ 3.107873149054796e+01  8.138996301420534e-02  5.403580781310575e+00  1.117902882087334e+01
+ 1.117430183085210e+01  1.983127498759274e+01  1.449549065276872e+01  1.117537287197525e+01
+ 3.972529112469727e+01  3.439184251765676e+01  3.106971199112278e+01  1.982358958190448e+01
+ 3.438927339756147e+01  3.107083668155762e+01  3.971882266901002e+01  1.449196789548167e+01
+ 1.982289427475211e+01  1.449328911631026e+01  1.117812731481820e+01  1.980757029975721e+01
+ 3.439244183073311e+01  3.107768990432324e+01  3.972994805186935e+01  1.449206274981191e+01
+ 3.107541068049627e+01  3.971322023016205e+01  3.439102177946479e+01  1.118118583417689e+01
+ 2.860704662505399e+01  1.982863249291954e+01  2.529859432522522e+01  2.860804032355126e+01
+ 3.972805580124251e+01  5.401315354072053e+00  8.711884134688830e+00  1.981918386718058e+01
+ 5.404778464414528e+00  8.712894517999343e+00  3.972007939532279e+01  2.530112347079487e+01
+ 2.860762657046938e+01  1.449500932353360e+01  1.995037807371602e+01  2.860765200227069e+01
+ 3.439255741510998e+01  6.117377466542123e-02  8.712331150749863e+00  1.449179550555223e+01
+ 8.066921826109379e-02  8.712316304769622e+00  3.438940463304745e+01  1.998486149867214e+01
+ 1.117557555703258e+01  2.529879722374251e+01  1.998487359367005e+01  1.117510202059823e+01
+ 5.401156931422038e+00  6.046255371340203e-02  3.107004125837593e+01  2.530184687063480e+01
+ 8.138735662856671e-02  3.106957659572577e+01  5.404235763710312e+00  1.995065584102628e+01
+ 1.117371768190502e+01  1.449233662233708e+01  1.982058890873824e+01  1.117376249240272e+01
+ 3.438880267116292e+01  3.971707009601584e+01  3.107141545264543e+01  1.449560439057040e+01
+ 3.972681490687355e+01  3.107142551856906e+01  3.439212175814145e+01  1.982890862870563e+01
+ 2.860941476294594e+01  2.530132334939649e+01  1.982231444211803e+01  2.860943175299674e+01
+ 5.404802634144197e+00  3.971530375689093e+01  8.710506146768992e+00  2.529824904529780e+01
+ 3.973096383937591e+01  8.710588049014270e+00  5.401739802105893e+00  1.983220109754306e+01
+ 1.448612795718051e+01  1.997760194380987e+01  2.861539319297428e+01  1.448777140403815e+01
+ 5.468794276042826e-02  8.717947822965622e+00  3.438545169889156e+01  1.998403416131029e+01
+ 8.716233837084291e+00  3.438704759885889e+01  6.112822590070287e-02  2.861242175624176e+01
+ 1.994639747038860e+01  2.861334390527322e+01  1.449458222796956e+01  1.994745440452426e+01
+ 8.718638184610272e+00  3.438855636067932e+01  8.009428117476187e-02  2.861253683590428e+01
+ 3.439251573952119e+01  8.123890205283871e-02  8.717668900520691e+00  1.449302189603736e+01
+ 2.529300666519455e+01  1.981668167179750e+01  2.861271002750497e+01  2.529405600684820e+01
+ 3.971358111022431e+01  8.715474507432207e+00  5.397799631182405e+00  1.983209962291707e+01
+ 8.718708903917502e+00  5.398836011260602e+00  3.973202722728961e+01  2.861508879625010e+01
+ 1.994564297311250e+01  1.118206545198795e+01  2.529814577709530e+01  1.994594638320838e+01
+ 3.107600590862849e+01  5.403966678364231e+00  8.150620387871944e-02  1.118015379270882e+01
+ 5.402240269580677e+00  8.187321997526248e-02  3.107430332794916e+01  2.530154235992309e+01
+ 2.529478888771636e+01  1.998429020532284e+01  1.117928023340339e+01  2.529648723728984e+01
+ 8.340923829511278e-02  3.107539346562041e+01  5.395363897422516e+00  1.995550159858810e+01
+ 3.107765062999068e+01  5.397043036597902e+00  5.437882981761424e-02  1.118006350374238e+01
+ 1.980951094406628e+01  1.117907606281405e+01  1.449191065228317e+01  1.980642453543212e+01
+ 3.107824402343124e+01  3.439171603939867e+01  3.973106480495004e+01  1.117816253786496e+01
+ 3.438951215306260e+01  3.972568211781174e+01  3.107715274144377e+01  1.449548053904397e+01
+ 1.448844913065645e+01  1.981837869800219e+01  1.118150206992924e+01  1.448950294886975e+01
+ 3.971340045275402e+01  3.107781423344316e+01  3.438367885356273e+01  1.983548859363656e+01
+ 3.107522232019939e+01  3.438475872468907e+01  3.973265346741821e+01  1.117785437229317e+01
+ 1.979993063384021e+01  2.861579935031427e+01  2.530094509441142e+01  1.983061637004195e+01
+ 8.716948815700588e+00  5.401098791563760e+00  3.970971124743446e+01  2.861407731715894e+01
+ 5.404939826039998e+00  3.973759256575831e+01  8.715403587862335e+00  2.529890195423824e+01
+radii                                     kind=fltar 456
+ 4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00
+ 4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00
+ 4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00
+ 4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00
+ 4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00
+ 4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00  4.472981758991604e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00  2.112713817723960e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00  2.197751493750416e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+ 1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00  1.368161720958986e+00
+radii2                                    kind=none   None
+rvecs                                     kind=fltar 3,3
+ 3.979364985026868e+01  7.614451550399652e-06 -6.349718219381480e-06  7.617082337342254e-06
+ 3.979363720174106e+01  1.466093923475890e-05 -6.348208809181665e-06  1.466769197263813e-05
+ 3.979365172754711e+01
+scope_ids                                 kind=none   None
+scopes                                    kind=none   None
+valence_charges                           kind=none   None
+"""
+
+PARS_TXT = """# BONDHARM
+#---------
+BONDHARM:UNIT  K kjmol/A**2
+BONDHARM:UNIT  R0 A
+
+BONDHARM:PARS      O_OH        ZR  3.7856874859e+02  2.2345796544e+00
+BONDHARM:PARS      O_CA        ZR  8.4085734618e+02  2.1879092596e+00
+BONDHARM:PARS      O_OX        ZR  7.5654881429e+02  2.1161540051e+00
+BONDHARM:PARS      C_CA      O_CA  4.4101463252e+03  1.2792436607e+00
+BONDHARM:PARS      C_CA      C_PC  2.1038566297e+03  1.4832348712e+00
+BONDHARM:PARS      C_PC      C_PH  3.2247609625e+03  1.4015678878e+00
+BONDHARM:PARS      C_PH      C_PH  3.3880065753e+03  1.3929483296e+00
+BONDHARM:PARS      C_PH      H_PH  3.3762726364e+03  1.0876572905e+00
+BONDHARM:PARS      H_OH      O_OH  5.0216717525e+03  9.9986798534e-01
+
+
+# BENDAHARM
+#----------
+BENDAHARM:UNIT  K kjmol/rad**2
+BENDAHARM:UNIT  THETA0 deg
+
+BENDAHARM:PARS        ZR      O_OH        ZR  4.1362556428e+02  1.0775418131e+02
+BENDAHARM:PARS      C_CA      O_CA        ZR  2.6430192082e+02  1.3689725294e+02
+BENDAHARM:PARS      C_PH      C_PH      H_PH  3.0835003755e+02  1.2017556632e+02
+BENDAHARM:PARS      C_PC      C_CA      O_CA  1.6684448679e+02  1.1975013868e+02
+BENDAHARM:PARS      C_CA      C_PC      C_PH  6.0256074066e+02  1.1990380480e+02
+BENDAHARM:PARS      C_PC      C_PH      C_PH  4.7103023496e+02  1.2003765295e+02
+BENDAHARM:PARS      O_CA      C_CA      O_CA  6.8388715389e+02  1.2311437675e+02
+BENDAHARM:PARS      O_OH        ZR      O_OX  5.3052365716e+02  6.4534430940e+01
+BENDAHARM:PARS      C_PH      C_PC      C_PH  4.2496973028e+02  1.1972403242e+02
+BENDAHARM:PARS      C_PC      C_PH      H_PH  2.9895866247e+02  1.1956474865e+02
+BENDAHARM:PARS        ZR      O_OX        ZR  5.0533812788e+02  1.2046678892e+02
+BENDAHARM:PARS      H_OH      O_OH        ZR  1.7902855792e+02  1.1039262816e+02
+BENDAHARM:PARS      O_OX        ZR      O_OX  1.0039193248e+02  6.3800382263e+01
+
+
+# TORSION
+#--------
+TORSION:UNIT  A kjmol
+TORSION:UNIT  PHI0 deg
+
+TORSION:PARS      C_PH      C_PC      C_PH      C_PH  2 3.4910522540e+01  0.0000000000e+00
+TORSION:PARS      O_CA      C_CA      O_CA        ZR  2 7.0218267368e+00  0.0000000000e+00
+TORSION:PARS      C_CA      C_PC      C_PH      C_PH  2 4.6013908971e+01  0.0000000000e+00
+TORSION:PARS      C_PH      C_PC      C_PH      H_PH  2 2.8550678889e+01  0.0000000000e+00
+TORSION:PARS      C_CA      C_PC      C_PH      H_PH  2 1.8865768343e+01  0.0000000000e+00
+TORSION:PARS      C_PC      C_CA      O_CA        ZR  2 3.2834550916e+01  0.0000000000e+00
+TORSION:PARS      C_PC      C_PH      C_PH      H_PH  2 3.3870440544e+01  0.0000000000e+00
+TORSION:PARS      H_PH      C_PH      C_PH      H_PH  2 1.7461761843e+01  0.0000000000e+00
+TORSION:PARS      C_PH      C_PC      C_CA      O_CA  2 1.3072558996e+01  0.0000000000e+00
+
+
+# OOPDIST
+#--------
+OOPDIST:UNIT  K kjmol/A**2
+OOPDIST:UNIT  D0 A
+
+OOPDIST:PARS      C_PC      O_CA      O_CA      C_CA  1.3685283732e+03  0.0000000000e+00
+OOPDIST:PARS      C_PC      C_PH      H_PH      C_PH  2.0695840516e+02  0.0000000000e+00
+
+
+#Fixed charges
+#---------------
+
+FIXQ:UNIT Q0 e
+FIXQ:UNIT P e
+FIXQ:UNIT R angstrom
+FIXQ:SCALE 1 1.0
+FIXQ:SCALE 2 1.0
+FIXQ:SCALE 3 1.0
+FIXQ:DIELECTRIC 1.0
+
+# Atomic parameters
+# ----------------------------------------------------
+# KEY        label  Q_0A              R_A
+# ----------------------------------------------------
+FIXQ:ATOM       ZR  0.0000000000000   2.3670000000
+FIXQ:ATOM       CE  0.0000000000000   2.3670000000
+FIXQ:ATOM     O_OH  0.0000000000000   1.1180000000
+FIXQ:ATOM     O_OX  0.0000000000000   1.1180000000
+FIXQ:ATOM     O_CA  0.0000000000000   1.1180000000
+FIXQ:ATOM     C_PH  0.0000000000000   1.1630000000
+FIXQ:ATOM     C_PC  0.0000000000000   1.1630000000
+FIXQ:ATOM     C_CA  0.0000000000000   1.1630000000
+FIXQ:ATOM     H_PH  0.0000000000000   0.7240000000
+FIXQ:ATOM     H_OH  0.0000000000000   0.7240000000
+
+# Bond parameters
+# ----------------------------------------------------
+# KEY         label0   label1           P_AB
+# ----------------------------------------------------
+FIXQ:BOND      C_PH      C_PH   0.0000928607
+FIXQ:BOND      C_CA      C_PC   0.0432515406
+FIXQ:BOND      O_CA        ZR  -0.3140076067
+FIXQ:BOND      O_OX        ZR  -0.3646234389
+FIXQ:BOND      C_PH      H_PH  -0.1385876479
+FIXQ:BOND      H_OH      O_OH   0.4906092530
+FIXQ:BOND      C_CA      O_CA   0.3691317391
+FIXQ:BOND      C_PC      C_PH  -0.0556062459
+FIXQ:BOND      O_OH        ZR  -0.1881444503
+
+# van der Waals
+#==============
+
+# The following mathemetical form is supported:
+#  - MM3:   EPSILON*(1.84e5*exp(-12*r/SIGMA)-2.25*(SIGMA/r)^6)
+#  - LJ:    4.0*EPSILON*((SIGMA/r)^12 - (SIGMA/r)^6)
+#
+# Remark:
+#  In MM3, if ONLYPAULI=1 then only the pauli term will be used.
+#  If ONLYPAULI=0, the full MM3 expression is used with 12.
+
+MM3:UNIT SIGMA angstrom
+MM3:UNIT EPSILON kcalmol
+MM3:SCALE 1 0.0
+MM3:SCALE 2 0.0
+MM3:SCALE 3 1.0
+
+# ---------------------------------------------
+# KEY      ffatype  SIGMA  EPSILON  ONLYPAULI
+# ---------------------------------------------
+MM3:PARS      ZR     2.540   0.300      0
+MM3:PARS      CE     2.740   0.340      0
+MM3:PARS      HF     2.530   0.516      0
+MM3:PARS    O_CA     1.820   0.059      0
+MM3:PARS    O_OX     1.820   0.059      0
+MM3:PARS    O_OH     1.820   0.059      0
+MM3:PARS    C_CA     1.940   0.056      0
+MM3:PARS    C_PC     1.960   0.056      0
+MM3:PARS    C_PH     1.960   0.056      0
+MM3:PARS    H_OH     1.600   0.016      0
+MM3:PARS    H_PH     1.620   0.020      0
+MM3:PARS    C_FO     1.940   0.056      0
+MM3:PARS    H_FO     1.620   0.020      0
+"""
+
+
+main()
diff --git a/l/LANDIS-II/LANDIS-II-7.0-GCCcore-11.3.0.eb b/l/LANDIS-II/LANDIS-II-7.0-GCCcore-11.3.0.eb-NO-NEED
similarity index 91%
rename from l/LANDIS-II/LANDIS-II-7.0-GCCcore-11.3.0.eb
rename to l/LANDIS-II/LANDIS-II-7.0-GCCcore-11.3.0.eb-NO-NEED
index 26d18a7..2362e7a 100644
--- a/l/LANDIS-II/LANDIS-II-7.0-GCCcore-11.3.0.eb
+++ b/l/LANDIS-II/LANDIS-II-7.0-GCCcore-11.3.0.eb-NO-NEED
@@ -12,7 +12,7 @@ toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
 source_urls = ['https://github.com/LANDIS-II-Foundation/Core-Model-v7-LINUX']
 sources = ['LANDIS-II-7.0.tar.gz']
 
-dependencies = [('dotNET-SDK', '6.0.101-linux-x64','',True)]
+dependencies = [('dotNET-SDK', '2.2.203-linux-x64','',True)]
 
 sanity_check_paths = {
     'files': ['bin/landis-ii'],
diff --git a/l/LANDIS-II/README b/l/LANDIS-II/README
new file mode 100644
index 0000000..eb9b2c4
--- /dev/null
+++ b/l/LANDIS-II/README
@@ -0,0 +1,33 @@
+
+1: Install dotNET-SDK 2.2 and load module
+2: git clone https://github.com/LANDIS-II-Foundation/Core-Model-v7-LINUX.git
+3: cd /<path to>/Core-Model-v7-LINUX/Tool-Console/src
+4: dotnet build -c Release
+5: cp -r extensions license Release to install directory (option).
+6: Create bin and executable 
+7: For globale install, we need remove the following line:
+[jzhang8@spartan-gpgpu130 7.0]$ grep -r khh *
+Release/Landis.Extensions.runtimeconfig.dev.json:      "/home/khh/.dotnet/store/|arch|/|tfm|",
+Release/Landis.Extensions.runtimeconfig.dev.json:      "/home/khh/.nuget/packages",
+Release/Landis.Console.runtimeconfig.dev.json:      "/home/khh/.dotnet/store/|arch|/|tfm|",
+Release/Landis.Console.runtimeconfig.dev.json:      "/home/khh/.nuget/packages",
+
+LANDIS-II Extensions:
+1: find extensions from:
+https://github.com/LANDIS-II-Foundation
+2: cd /<path to>/Core-Model-v7-LINUX
+3: git clone <path to LANDIS-II-v7 Extension>.git (from step 1)
+4: git clone https://github.com/LANDIS-II-Foundation/Support-Library-Dlls-v7.git
+5: Save all supporting libraries (from step 4) in build/extensions folder.
+6: cd  LANDIS-II-v7 Extension/src and find .csproj file
+7: modify .csproj file (see https://github.com/LANDIS-II-Foundation/Core-Model-v7-LINUX for more details about how to modify)
+8: dotnet build
+9: dotnet build -c Release
+10: cd LANDIS-II-v7 Extension/deploy/installs
+11: dotnet /<path to>/Core-Model-v7-Linux/build/Release/Landis.Extensions.dll add "<extensions infomation>.txt"
+
+Create private module for user:
+mkdir $HOME/.modules
+add above path to $MODULEPATH in .bash_profile
+cd $HOME/.modules 
+create LANDIS-II modules.
diff --git a/l/LevelDB/LevelDB-1.18-foss-2022a.eb b/l/LevelDB/LevelDB-1.18-foss-2022a.eb
new file mode 100644
index 0000000..853bc44
--- /dev/null
+++ b/l/LevelDB/LevelDB-1.18-foss-2022a.eb
@@ -0,0 +1,33 @@
+easyblock = 'MakeCp'
+
+name = 'LevelDB'
+version = '1.18'
+
+homepage = 'https://github.com/google/leveldb'
+description = """LevelDB is a fast key-value storage library written at Google that provides an
+ ordered mapping from string keys to string values."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://github.com/google/leveldb/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['4aa1a7479bc567b95a59ac6fb79eba49f61884d6fd400f20b7af147d54c5cee5']
+
+files_to_copy = [
+    (['libleveldb.%s.%%(version)s' % SHLIB_EXT, 'libleveldb.a'], 'lib'),
+    (['include/leveldb/*.h'], 'include/leveldb')
+]
+
+local_cd_cmd = "cd %(installdir)s/lib && "
+postinstallcmds = [
+    local_cd_cmd + "ln -s libleveldb.%s.%%(version)s libleveldb.%s.%%(version_major)s" % (SHLIB_EXT, SHLIB_EXT),
+    local_cd_cmd + "ln -s libleveldb.%s.%%(version)s libleveldb.%s" % (SHLIB_EXT, SHLIB_EXT),
+]
+
+sanity_check_paths = {
+    'files': ['include/leveldb/cache.h', 'include/leveldb/table.h',
+              'lib/libleveldb.a', 'lib/libleveldb.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'devel'
diff --git a/m/MOSEK/MOSEK-9.3.22.eb b/m/MOSEK/MOSEK-9.3.22.eb
new file mode 100644
index 0000000..325274c
--- /dev/null
+++ b/m/MOSEK/MOSEK-9.3.22.eb
@@ -0,0 +1,21 @@
+easyblock = 'PackedBinary'
+
+name = 'MOSEK'
+version = '9.3.22'
+
+homepage = 'https://www.mosek.com/'
+description = """The MOSEK optimization software is designed to solve large-scale mathematical optimization problems. MOSEK main features are listed below. For additional questions, contact our support or browse the online documentation."""
+
+toolchain = SYSTEM
+
+source_urls = ['https://download.mosek.com/stable/9.3.22']
+sources = ['mosektoolslinux64x86.tar.bz2']
+
+sanity_check_paths = {
+    'files': [],
+    'dirs': ['9.3/tools']
+}
+
+modextrapaths = { 'PATH': '9.3/tools/platform/linux64x86/bin' }
+
+moduleclass = 'bio'
diff --git a/m/maeparser/maeparser-1.3.0-gompi-2022a.eb b/m/maeparser/maeparser-1.3.0-gompi-2022a.eb
new file mode 100644
index 0000000..8ae3df0
--- /dev/null
+++ b/m/maeparser/maeparser-1.3.0-gompi-2022a.eb
@@ -0,0 +1,26 @@
+easyblock = 'CMakeMake'
+
+name = 'maeparser'
+version = '1.3.0'
+
+homepage = 'https://github.com/schrodinger/maeparser'
+description = "maeparser is a parser for Schrodinger Maestro files."
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+
+source_urls = ['https://github.com/schrodinger/maeparser/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['fa8f9336de1e5d1cabec29a6da04547b1fb040bb32ba511ff30b4a14097c751c']
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+]
+
+dependencies = [('Boost', '1.79.0')]
+
+sanity_check_paths = {
+    'files': ['lib/libmaeparser.%s' % SHLIB_EXT],
+    'dirs': ['include/maeparser', 'lib/cmake'],
+}
+
+moduleclass = 'tools'
diff --git a/m/medaka/medaka-1.9.1-foss-2022a.eb b/m/medaka/medaka-1.9.1-foss-2022a.eb
new file mode 100644
index 0000000..22be16f
--- /dev/null
+++ b/m/medaka/medaka-1.9.1-foss-2022a.eb
@@ -0,0 +1,68 @@
+# This is a contribution from HPCNow! (http://hpcnow.com)
+# Copyright::   HPCNow!
+# Authors::     Danilo Gonzalez <danilo.gonzalez@hpcnow.com>
+# License::     GPL-v3.0
+# Updated to foss-2020b to use with artic tool
+# J. Sassmannshausen (GSTT/NHS UK)
+# Updated to 1.5.0
+# Jasper Grimm (UoY)
+
+easyblock = 'PythonBundle'
+
+name = 'medaka'
+version = '1.9.1'
+
+homepage = 'https://github.com/nanoporetech/medaka'
+description = "medaka is a tool to create a consensus sequence from nanopore sequencing data."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True}
+
+builddependencies = [('Autotools', '20220317')]
+
+_minimap_ver = '2.24'
+dependencies = [
+    ('Python', '3.10.4'),  # includes cffi
+    # tensorflow~=2.10.0 required by medaka 1.9.1, see requirements.txt
+    ('TensorFlow', '2.11.0'),
+    ('Pysam', '0.19.1'),
+    ('SAMtools', '1.16.1'),
+    ('minimap2', _minimap_ver),
+    ('HTSlib', '1.15.1'),  # for tabix, bgzip
+    ('Racon', '1.5.0'),
+    ('edlib', '1.3.9'),
+    ('pyspoa', '0.0.9'),
+    ('abPOA', '1.4.1'),
+    ('python-parasail', '1.3.3'),
+    ('ont-fast5-api', '4.1.1'),
+    ('WhatsHap', '1.7'),
+    ('intervaltree-python', '3.1.0'),
+    ('BCFtools', '1.15.1'),
+]
+
+use_pip = True
+
+exts_list = [
+    ('mappy', _minimap_ver, {
+        'checksums': ['35a2fb73ef14173283d5abb31e7a318429e0330c3be95851df38dd83d4ff9af9'],
+    }),
+    (name, version, {
+        'checksums': ['1018c07267d24cb4607ae823ced01a1789939b5f8143d1c240ce243dc1160ef5'],
+        # remove TensorFlow version requirement which is too strict
+        'preinstallopts': "sed -i 's/tensorflow.*/tensorflow/g' requirements.txt && ",
+    }),
+]
+
+sanity_pip_check = True
+
+sanity_check_paths = {
+    'files': ['bin/medaka', 'bin/medaka_consensus', 'bin/medaka_version_report'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages'],
+}
+
+sanity_check_commands = [
+    "medaka --help",
+    "medaka_version_report",
+]
+
+moduleclass = 'bio'
diff --git a/m/minc-stuffs/minc-stuffs-0.1.25-foss-2022a.eb b/m/minc-stuffs/minc-stuffs-0.1.25-foss-2022a.eb
index 4d47167..19ec796 100644
--- a/m/minc-stuffs/minc-stuffs-0.1.25-foss-2022a.eb
+++ b/m/minc-stuffs/minc-stuffs-0.1.25-foss-2022a.eb
@@ -21,12 +21,13 @@ builddependencies = [
 ]
 
 dependencies = [
+    ('Python', '3.10.4'),
     ('VTK', '9.2.2'),
     ('FFTW', '3.3.10'),
     ('netCDF', '4.9.0'),
     ('MINC', '2.4.03'),
-    ('minc-toolkit', '1.9.18.2'), # Failed installation
-    ('pyminc', '0.57'), # Needs to be installed
+    ('minc-toolkit', '1.9.18.2'), 
+    ('pyminc', '0.57'),
     ('parallel', '20220722'),
     ('Perl', '5.34.1'),
     ('DB', '18.1.40'),
@@ -35,12 +36,15 @@ dependencies = [
 
 preconfigopts = " ./autogen.sh -i &&"
 
-install_cmd = "make install && python setup.py install --prefix=%(installdir)s && cp %(builddir)s/minc-stuffs-0.1.25/build/scripts-3.8/* %(installdir)s/bin "
+#install_cmd = "make install && python setup.py install --prefix=%(installdir)s && cp %(builddir)s/minc-stuffs-0.1.25/build/scripts-3.8/* %(installdir)s/bin "
+install_cmd = "make install && python setup.py install --prefix=%(installdir)s"
 
 sanity_check_paths = {
     'files': ['bin/minc_displacement', 'bin/voxel_vote'],
     'dirs': ['bin/'],
 }
 
+modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'}
+
 moduleclass = 'bio'
 
diff --git a/m/minc-toolkit/minc-toolkit-1.9.18.2-foss-2022a.eb b/m/minc-toolkit/minc-toolkit-1.9.18.2-foss-2022a.eb
index 0157b18..e3c6e00 100644
--- a/m/minc-toolkit/minc-toolkit-1.9.18.2-foss-2022a.eb
+++ b/m/minc-toolkit/minc-toolkit-1.9.18.2-foss-2022a.eb
@@ -36,7 +36,6 @@ dependencies = [
     ('OpenJPEG','2.5.0'),
     ('GSL', '2.7'),
     ('PCRE','8.45'),
-    ('ITK','5.2.1'),
 ]
 
 configopts = "-DINCLUDE_DIRECTORIES='/apps/easybuild-2022/easybuild/software/Core/GCCcore/11.3.0/lib/gcc/x86_64-pc-linux-gnu/11.3.0/include' -DMT_BUILD_ANTS=ON -DMT_BUILD_C3D=ON -DMT_BUILD_ELASTIX=ON -DMT_BUILD_ITK_TOOLS=ON -DMT_BUILD_SHARED_LIBS=ON -DUSE_SYSTEM_GLUT=ON -DUSE_SYSTEM_JPEG=ON -DUSE_SYS_GSL=ON -DUSE_SYSTEM_PCRE=ON -DUSE_SYSTEM_ZLIB=ON -DMT_BUILD_SHARED_LIBS=ON -DUSE_SYSTEM_HDF5=ON -DMT_BUILD_OPENBLAS=OFF -DUSE_SYSTEM_NETCDF=ON -DUSE_SYSTEM_OPENJPEG=ON -DGSL_CBLAS_LIBRARY='/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/GSL/2.7/lib/libgslcblas.so' -DGSL_INCLUDE_DIR='/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/GSL/2.7/include' -DGSL_LIBRARY='/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/GSL/2.7/lib/libgsl.so' -DHDF5_INCLUDE_DIR='/apps/easybuild-2022/easybuild/software/MPI/GCC/11.3.0/OpenMPI/4.1.4/HDF5/1.12.2/include' -DHDF5_LIBRARY='/apps/easybuild-2022/easybuild/software/MPI/GCC/11.3.0/OpenMPI/4.1.4/HDF5/1.12.2/lib/libhdf5.so' -DJPEG_INCLUDE_DIR='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/libjpeg-turbo/2.1.3/include' -DJPEG_LIBRARY_RELEASE='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/libjpeg-turbo/2.1.3/lib/libjpeg.so' -DNETCDF_INCLUDE_DIR='/apps/easybuild-2022/easybuild/software/MPI/GCC/11.3.0/OpenMPI/4.0.5/netCDF/4.9.0/include' -DNETCDF_LIBRARY='/apps/easybuild-2022/easybuild/software/MPI/GCC/11.3.0/OpenMPI/4.1.4/netCDF/4.9.0/lib/libnetcdf.so' -DOPENJPEG_LIBRARY='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/OpenJPEG/2.5.0/lib/libopenjp2.so' -DPCRECPP_LIBRARY='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/PCRE/8.45/lib/libpcrecpp.so' -DPCRE_INCLUDE_DIR='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/PCRE/8.45/include' -DPCRE_LIBRARY='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/PCRE/8.45/lib/libpcre.so' -DZLIB_INCLUDE_DIR='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/zlib/1.2.12/include' -DZLIB_LIBRARY_RELEASE='/apps/easybuild-2022/easybuild/software/Compiler/GCCcore/11.3.0/zlib/1.2.12/lib/libz.so' -Dpkgcfg_lib_PC_GSL_gsl='/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/GSL/2.7/lib/libgsl.so' -Dpkgcfg_lib_PC_GSL_gslcblas='/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/GSL/2.7/lib/libgslcblas.so' -Dpkgcfg_lib_PC_GSL_m='/usr/lib64/libm.so' -Dpkgcfg_lib_PC_GSL_pthread='/usr/lib64/libpthread.so' -DOpenBLAS_INCLUDE_DIRS='/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/include' -DOpenBLAS_LIBRARIES='/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/lib64/libflexiblas.so:/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/lib64/liblapacke.so' "
diff --git a/m/molmod/molmod-1.4.8-foss-2022a.eb b/m/molmod/molmod-1.4.8-foss-2022a.eb
new file mode 100644
index 0000000..14d5982
--- /dev/null
+++ b/m/molmod/molmod-1.4.8-foss-2022a.eb
@@ -0,0 +1,34 @@
+easyblock = 'PythonPackage'
+
+name = 'molmod'
+version = '1.4.8'
+
+homepage = 'https://molmod.github.io/molmod/'
+description = "MolMod is a Python library with many compoments that are useful to write molecular modeling programs."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://github.com/molmod/molmod/releases/download/%(version)s']
+sources = [SOURCE_TAR_GZ]
+checksums = [
+    '759f8894f8a206e8d83f3f88882f29fcf73a7f9be375026e03c58e19496f42e8',  # molmod-1.4.8.tar.gz
+]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('matplotlib', '3.5.2'),
+]
+
+use_pip = True
+download_dep_fail = True
+sanity_pip_check = True
+
+runtest = "export MATPLOTLIBRC=$PWD; echo 'backend: agg' > $MATPLOTLIBRC/matplotlibrc;"
+runtest += "python setup.py build_ext -i; pytest -ra"
+
+sanity_check_paths = {
+    'files': [],
+    'dirs': ['lib/python%(pyshortver)s/site-packages'],
+}
+
+moduleclass = 'math'
diff --git a/n/NiBabel/NiBabel-4.0.2-foss-2022a.eb b/n/NiBabel/NiBabel-4.0.2-foss-2022a.eb
new file mode 100644
index 0000000..2691a91
--- /dev/null
+++ b/n/NiBabel/NiBabel-4.0.2-foss-2022a.eb
@@ -0,0 +1,46 @@
+easyblock = 'PythonBundle'
+
+name = 'NiBabel'
+version = '4.0.2'
+
+homepage = 'https://nipy.github.io/nibabel'
+description = """NiBabel provides read/write access to some common medical and neuroimaging file formats,
+ including: ANALYZE (plain, SPM99, SPM2 and later), GIFTI, NIfTI1, NIfTI2, MINC1, MINC2, MGH and ECAT
+ as well as Philips PAR/REC. We can read and write Freesurfer geometry, and read Freesurfer morphometry and
+ annotation files. There is some very limited support for DICOM. NiBabel is the successor of PyNIfTI."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('Pillow', '9.1.1'),
+    ('pydicom', '2.3.0'),
+]
+
+use_pip = True
+
+exts_list = [
+    ('bz2file', '0.98', {
+        'checksums': ['64c1f811e31556ba9931953c8ec7b397488726c63e09a4c67004f43bdd28da88'],
+    }),
+    ('nibabel', version, {
+        'checksums': ['45c49b5349351b45f6c045a91aa02b4f0d367686ff3284632ef95ac65b930786'],
+    }),
+]
+
+fix_python_shebang_for = ['bin/*']
+
+sanity_check_paths = {
+    'files': ['bin/nib-dicomfs', 'bin/nib-diff', 'bin/nib-ls', 'bin/nib-nifti-dx', 'bin/parrec2nii'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages'],
+}
+
+sanity_check_commands = [
+    "nib-diff --help",
+    "parrec2nii --help",
+]
+
+sanity_pip_check = True
+
+moduleclass = 'vis'
diff --git a/n/netCDF-Fortran/netCDF-Fortran-4.6.0-iomkl-2022a.eb b/n/netCDF-Fortran/netCDF-Fortran-4.6.0-iomkl-2022a.eb
new file mode 100644
index 0000000..9af78f5
--- /dev/null
+++ b/n/netCDF-Fortran/netCDF-Fortran-4.6.0-iomkl-2022a.eb
@@ -0,0 +1,28 @@
+name = 'netCDF-Fortran'
+version = '4.6.0'
+
+homepage = 'https://www.unidata.ucar.edu/software/netcdf/'
+description = """NetCDF (network Common Data Form) is a set of software libraries
+ and machine-independent data formats that support the creation, access, and sharing of array-oriented
+ scientific data."""
+
+toolchain = {'name': 'iomkl', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+source_urls = ['https://github.com/Unidata/netcdf-fortran/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['8194aa70e400c0adfc456127c1d97af2c6489207171d13b10cd754a16da8b0ca']
+
+builddependencies = [
+    ('M4', '1.4.19'),
+]
+
+dependencies = [
+    ('netCDF', '4.9.0'),
+    ('bzip2', '1.0.8'),
+]
+
+# (too) parallel build fails, but single-core build is fairly quick anyway (~1min)
+parallel = 1
+
+moduleclass = 'data'
diff --git a/n/netCDF/netCDF-4.9.0-iomkl-2022a.eb b/n/netCDF/netCDF-4.9.0-iomkl-2022a.eb
new file mode 100644
index 0000000..afe4f08
--- /dev/null
+++ b/n/netCDF/netCDF-4.9.0-iomkl-2022a.eb
@@ -0,0 +1,53 @@
+name = 'netCDF'
+version = '4.9.0'
+
+homepage = 'https://www.unidata.ucar.edu/software/netcdf/'
+description = """NetCDF (network Common Data Form) is a set of software libraries
+ and machine-independent data formats that support the creation, access, and sharing of array-oriented
+ scientific data."""
+
+toolchain = {'name': 'iomkl', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+source_urls = ['https://github.com/Unidata/netcdf-c/archive/']
+sources = ['v%(version)s.tar.gz']
+patches = [
+    'netCDF-%(version)s_fix-lib-name.patch',
+    'netCDF-%(version)s_fix-linking-errors.patch',
+    'netCDF-%(version)s_skip-nasa-test.patch',
+]
+checksums = [
+    '9f4cb864f3ab54adb75409984c6202323d2fc66c003e5308f3cdf224ed41c0a6',  # v4.9.0.tar.gz
+    'ed45ae6c49cf8dcddaadef4c5cf403049bf3f761187413d7b03754d319345d6a',  # netCDF-4.9.0_fix-lib-name.patch
+    '2b9579c149579d137eb16ae5d790787774033dcec49c0d4993d9859f224e7b15',  # netCDF-4.9.0_fix-linking-errors.patch
+    '19d99e03c048b037dc01f03f5b8ddc910ebaceb076d0f050540d348f26dfcd2a',  # netCDF-4.9.0_skip-nasa-test.patch
+]
+
+builddependencies = [
+    ('Autotools', '20220317'),
+    ('CMake', '3.23.1'),
+    ('Doxygen', '1.9.4'),
+]
+
+dependencies = [
+    ('HDF5', '1.12.2'),
+    ('cURL', '7.83.0'),
+    ('Szip', '2.1.1'),
+    ('zstd', '1.5.2'),
+    ('bzip2', '1.0.8'),
+    ('libxml2', '2.9.13'),
+]
+
+# make sure both static and shared libs are built
+# and disable "remote" tests that access a unreliable external test server over internet
+configopts = [
+    "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=OFF",
+    "-DENABLE_DAP_REMOTE_TESTS=OFF -DBUILD_SHARED_LIBS=ON",
+]
+
+# some tests try to start 16 MPI ranks, so we need to allow oversubscription to avoid failing tests
+pretestopts = "OMPI_MCA_rmaps_base_oversubscribe=1 "
+
+runtest = 'test'
+
+moduleclass = 'data'
diff --git a/n/nose3/nose3-1.3.8-GCCcore-11.3.0.eb b/n/nose3/nose3-1.3.8-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..8a9a65a
--- /dev/null
+++ b/n/nose3/nose3-1.3.8-GCCcore-11.3.0.eb
@@ -0,0 +1,36 @@
+easyblock = 'PythonPackage'
+
+name = 'nose3'
+version = '1.3.8'
+
+homepage = 'https://nose.readthedocs.io/'
+description = """Nose extends unittest to make testing easier."""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+sources = [SOURCE_TAR_GZ]
+checksums = ['762aae22cadb898b00b9d4f4bbb9f8e87f8e0dde6c49a88cd0c554f4e5925b76']
+
+builddependencies = [
+    ('binutils', '2.38'),
+]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('coverage', '7.2.7'),
+]
+
+use_pip = True
+sanity_pip_check = True
+download_dep_fail = True
+
+sanity_check_paths = {
+    'files': ['bin/nosetests'],
+    'dirs': [],
+}
+
+options = {'modulename': 'nose'}
+
+sanity_check_commands = ["nosetests --help"]
+
+moduleclass = 'devel'
diff --git a/o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb b/o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb
new file mode 100644
index 0000000..76ae741
--- /dev/null
+++ b/o/OpenBabel/OpenBabel-3.1.1-gompi-2022a.eb
@@ -0,0 +1,61 @@
+name = 'OpenBabel'
+version = '3.1.1'
+
+homepage = 'https://openbabel.org'
+description = """Open Babel is a chemical toolbox designed to speak the many
+ languages of chemical data. It's an open, collaborative project allowing anyone
+ to search, convert, analyze, or store data from molecular modeling, chemistry,
+ solid-state materials, biochemistry, or related areas."""
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+# avoid failing tests on skylake and broadwell CPUs.
+# remove option 'optarch' when building on CPUs that don't support AVX2
+# see also: https://github.com/openbabel/openbabel/issues/2138
+toolchainopts = {'pic': True, 'optarch': 'mavx2'}
+
+source_urls = [GITHUB_LOWER_SOURCE]
+sources = ['%%(namelower)s-%s.tar.gz' % version.replace('.', '-')]
+patches = [
+    # Fix test failure with Python 3
+    # Ref: https://github.com/openbabel/openbabel/commit/7de27f309db5f7ec026ef5c5235e5b33bf7d1a85.patch
+    'OpenBabel-3.1.1_fix-distgeom-test.patch',
+    'OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch',
+]
+checksums = [
+    'c97023ac6300d26176c97d4ef39957f06e68848d64f1a04b0b284ccff2744f02',  # openbabel-3-1-1.tar.gz
+    '8d7687eb49142bb5ba2997cf90805b42480f313515c44b3912a9f826aaf4fbcd',  # OpenBabel-3.1.1_fix-distgeom-test.patch
+    # OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch
+    'cc0396b38a78ef70c869cd93887210c64d6f4293c016aec9269b5a0230fdb51c',
+]
+
+builddependencies = [
+    ('CMake', '3.23.1'),
+    ('SWIG', '4.0.2'),
+]
+dependencies = [
+    ('Python', '3.10.4'),
+    ('zlib', '1.2.12'),
+    ('libxml2', '2.9.13'),
+    ('Eigen', '3.4.0'),
+    ('RapidJSON', '1.1.0'),
+    ('cairo', '1.17.4'),  # optional: for .png output
+    ('Boost', '1.79.0'),
+    ('maeparser', '1.3.0'),
+    ('CoordgenLibs', '3.0.1'),
+]
+
+configopts = '-DBoost_INCLUDE_DIR=$EBROOTBOOST/include -DBoost_LIBRARY_DIR_RELEASE=$EBROOTBOOST/lib '
+# Enable support for OpenMP compilation of forcefield code (optional)
+configopts += '-DENABLE_OPENMP=ON '
+
+# OpenBabel-3.1.1 creates directories named 3.1.0, which leads to BABEL_LIBDIR and BABEL_DATDIR
+# (set in the easyblock) having invalid values.  Work around this with some symlinks.
+postinstallcmds = [
+    'ln -s %(installdir)s/lib/openbabel/3.1.0 %(installdir)s/lib/openbabel/%(version)s',
+    'ln -s %(installdir)s/share/openbabel/3.1.0 %(installdir)s/share/openbabel/%(version)s',
+]
+
+pretestopts = 'cp lib/_openbabel.%s %%(builddir)s/openbabel-*/scripts/python/openbabel/ && ' % SHLIB_EXT
+runtest = 'test'
+
+moduleclass = 'chem'
diff --git a/o/OpenBabel/OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch b/o/OpenBabel/OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch
new file mode 100644
index 0000000..3180da7
--- /dev/null
+++ b/o/OpenBabel/OpenBabel-3.1.1_fix-CoordgenLibs-no-templates.patch
@@ -0,0 +1,49 @@
+see also https://github.com/openbabel/openbabel/pull/2297
+
+From b6887a8a82162278983a8489e365e61a0372b1b8 Mon Sep 17 00:00:00 2001
+From: Benny Siegert <bsiegert@gmail.com>
+Date: Wed, 4 Nov 2020 20:31:17 +0100
+Subject: [PATCH] Do not search for coordgen template files.
+
+The coordgen upstream does not install the template file. It is
+also not required at runtime, since its contents are compiled into
+the coordgen library itself.
+
+Fixes #2214
+---
+ cmake/modules/Findcoordgen.cmake | 13 +------------
+ 1 file changed, 1 insertion(+), 12 deletions(-)
+
+diff --git a/cmake/modules/Findcoordgen.cmake b/cmake/modules/Findcoordgen.cmake
+index ded0a4de7d..9bc5c9557f 100644
+--- a/cmake/modules/Findcoordgen.cmake
++++ b/cmake/modules/Findcoordgen.cmake
+@@ -6,7 +6,6 @@
+ #
+ # coordgen_INCLUDE_DIRS   - CoordGen's includes directory
+ # coordgen_LIBRARIES      - CoordGen's shared libraries
+-# coordgen_TEMPLATE_FILE  - CoordGen templates file
+ #
+ #
+ 
+@@ -28,19 +27,9 @@ find_library(coordgen_LIBRARIES
+ )
+ message(STATUS "coordgen libraries set as '${coordgen_LIBRARIES}'")
+ 
+-# Just in case, add parent directory above libraries to templates search hints
+-get_filename_component(libs_parent_dir ${coordgen_LIBRARIES} PATH)
+-find_file(coordgen_TEMPLATE_FILE
+-    NAMES templates.mae
+-    HINTS ${coordgen_DIR} ${libs_parent_dir}
+-    PATH_SUFFIXES "share" "share/coordgen"
+-    DOC "templates file for coordgen"
+-)
+-message(STATUS "coordgen templates file set as '${coordgen_TEMPLATE_FILE}'")
+-
+ find_package_handle_standard_args(coordgen FOUND_VAR coordgen_FOUND
+                                   REQUIRED_VARS coordgen_INCLUDE_DIRS
+-                                  coordgen_LIBRARIES coordgen_TEMPLATE_FILE)
++                                  coordgen_LIBRARIES)
+ 
+ 
+ 
diff --git a/o/OpenBabel/OpenBabel-3.1.1_fix-distgeom-test.patch b/o/OpenBabel/OpenBabel-3.1.1_fix-distgeom-test.patch
new file mode 100644
index 0000000..46ef4a8
--- /dev/null
+++ b/o/OpenBabel/OpenBabel-3.1.1_fix-distgeom-test.patch
@@ -0,0 +1,39 @@
+From 7de27f309db5f7ec026ef5c5235e5b33bf7d1a85 Mon Sep 17 00:00:00 2001
+From: John Bollinger <John.Bollinger@StJude.org>
+Date: Thu, 14 May 2020 08:46:40 -0500
+Subject: [PATCH] Fix test failure with Python 3
+
+When run with Python 3.6, test/testdistgeom.py fails with a SyntaxError
+about a malformed character escape.  This arises from a failure to escape
+literal backslash characters in single-quoted SMILES strings (several
+occurrences).  Python 2 accepts this and does the right things with it,
+but Python 3 rejects it.
+
+Fixes #2217
+---
+ test/testdistgeom.py | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/test/testdistgeom.py b/test/testdistgeom.py
+index 0fa5adb57..fc3a7515b 100644
+--- a/test/testdistgeom.py
++++ b/test/testdistgeom.py
+@@ -42,13 +42,13 @@ def testSMItoSMI(self):
+             'C1CC[C@H]2[C@@H](C1)CCCC2',  # cis-decalin
+             'C1CC[C@@H]2[C@@H](C1)CCCC2',  # trans-decalin
+             '[C@H]1(NC[C@H]2[C@H]1N2)OC',
+-            'Clc1cccc(Cl)c1\C=N\NC(=O)c1cccs1',
+-            'O=C1NC(=S)S\C1=C/c1ccco1',
++            'Clc1cccc(Cl)c1\\C=N\\NC(=O)c1cccs1',
++            'O=C1NC(=S)S\\C1=C/c1ccco1',
+             'S=C1NC(=O)/C(=C/c2ccco2)/S1',
+-            'O=C1NC(=S)N\C1=C\c1ccncc1',
++            'O=C1NC(=S)N\\C1=C\\c1ccncc1',
+             'S=C1NC(=O)C(=C)N1',
+-            'CC(=O)N\N=C\c1ccncc1',
+-            'N/N=c/1\sc2c(n1C)cccc2',
++            'CC(=O)N\\N=C\\c1ccncc1',
++            'N/N=c/1\\sc2c(n1C)cccc2',
+             'OCCN/C=C\\1/C(=NN(C1=O)c1ccccc1)C',
+             'Cc1ccc(o1)/C=C/C=O',
+             # disabled to make test run faster:
diff --git a/o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb b/o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb
new file mode 100644
index 0000000..1dd34a8
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb
@@ -0,0 +1,51 @@
+name = 'OpenFOAM'
+# bugfix release of OpenFOAM 5.0, see also https://openfoam.org/news/v5-0-patch/
+# https://github.com/OpenFOAM/OpenFOAM-5.x/commit/c409ae7d90966250bb3be9cfbc2a0538bc8e288d
+version = '5.0-20180108'
+local_commit = 'c409ae7'
+
+homepage = 'https://www.openfoam.org/'
+description = """OpenFOAM is a free, open source CFD software package.
+ OpenFOAM has an extensive range of features to solve anything from complex fluid flows
+ involving chemical reactions, turbulence and heat transfer,
+ to solid dynamics and electromagnetics."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s.x/archive']
+sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}]
+patches = [
+    'OpenFOAM-%(version)s_cleanup.patch',
+    'OpenFOAM-%(version)s_fix-decomposedBlockData.patch',
+    'OpenFOAM-5.0-20180108_compiler.patch',
+    #Fixes Qt include failues and python-2.7m lib dependency issues while building PVReaders
+    'OpenFOAM-5.0-20180108_PVReaders.patch',
+]
+checksums = [
+    'bc805137ce65674c9067257ab239e1f2f820b12edfaf40a4d7c6de260dc6ad25',  # OpenFOAM-5.0-20180108.tar.gz
+    'f5768f5dbc422fc2f4183fd288dc6afb2370115384f3e8b9b0e155c943868989',  # OpenFOAM-5.0-20180108_cleanup.patch
+    # OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch
+    '62c1585a43503c7550355ec6417fbfd28c22e750f559eaf72785d2bb630a4005',
+]
+
+dependencies = [
+    ('libreadline', '8.1.2'),
+    ('ncurses', '6.3'),
+    ('gnuplot', '5.4.4'),
+    # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
+    ('METIS', '5.1.0'),
+    ('SCOTCH', '7.0.1'),
+    ('SQLite', '3.38.3'),
+    ('ParaView', '5.4.1', '-Python-2.7.18-mpi'),
+    # the following must be last to guarantee that OpenFOAM picks the correct dependency on Qt4, instead of Qt5
+    ('CGAL', '4.14.1', '-Python-2.7.18'),
+]
+
+builddependencies = [
+    ('CMake', '3.12.1', '', SYSTEM),
+    ('Bison', '3.8.2'),
+    ('flex', '2.6.4'),
+]
+
+moduleclass = 'cae'
diff --git a/o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb.bak b/o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb.bak
new file mode 100644
index 0000000..1dd34a8
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-20180108-foss-2022a.eb.bak
@@ -0,0 +1,51 @@
+name = 'OpenFOAM'
+# bugfix release of OpenFOAM 5.0, see also https://openfoam.org/news/v5-0-patch/
+# https://github.com/OpenFOAM/OpenFOAM-5.x/commit/c409ae7d90966250bb3be9cfbc2a0538bc8e288d
+version = '5.0-20180108'
+local_commit = 'c409ae7'
+
+homepage = 'https://www.openfoam.org/'
+description = """OpenFOAM is a free, open source CFD software package.
+ OpenFOAM has an extensive range of features to solve anything from complex fluid flows
+ involving chemical reactions, turbulence and heat transfer,
+ to solid dynamics and electromagnetics."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s.x/archive']
+sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}]
+patches = [
+    'OpenFOAM-%(version)s_cleanup.patch',
+    'OpenFOAM-%(version)s_fix-decomposedBlockData.patch',
+    'OpenFOAM-5.0-20180108_compiler.patch',
+    #Fixes Qt include failues and python-2.7m lib dependency issues while building PVReaders
+    'OpenFOAM-5.0-20180108_PVReaders.patch',
+]
+checksums = [
+    'bc805137ce65674c9067257ab239e1f2f820b12edfaf40a4d7c6de260dc6ad25',  # OpenFOAM-5.0-20180108.tar.gz
+    'f5768f5dbc422fc2f4183fd288dc6afb2370115384f3e8b9b0e155c943868989',  # OpenFOAM-5.0-20180108_cleanup.patch
+    # OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch
+    '62c1585a43503c7550355ec6417fbfd28c22e750f559eaf72785d2bb630a4005',
+]
+
+dependencies = [
+    ('libreadline', '8.1.2'),
+    ('ncurses', '6.3'),
+    ('gnuplot', '5.4.4'),
+    # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
+    ('METIS', '5.1.0'),
+    ('SCOTCH', '7.0.1'),
+    ('SQLite', '3.38.3'),
+    ('ParaView', '5.4.1', '-Python-2.7.18-mpi'),
+    # the following must be last to guarantee that OpenFOAM picks the correct dependency on Qt4, instead of Qt5
+    ('CGAL', '4.14.1', '-Python-2.7.18'),
+]
+
+builddependencies = [
+    ('CMake', '3.12.1', '', SYSTEM),
+    ('Bison', '3.8.2'),
+    ('flex', '2.6.4'),
+]
+
+moduleclass = 'cae'
diff --git a/o/OpenFOAM/OpenFOAM-5.0-20180108_PVReaders.patch b/o/OpenFOAM/OpenFOAM-5.0-20180108_PVReaders.patch
new file mode 100644
index 0000000..4c5ef52
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-20180108_PVReaders.patch
@@ -0,0 +1,55 @@
+--- applications/utilities/postProcessing/graphics/PVReaders/PVFoamReader/CMakeLists.txt.orig	2021-09-28 02:39:57.230226000 +1000
++++ applications/utilities/postProcessing/graphics/PVReaders/PVFoamReader/CMakeLists.txt	2021-09-28 02:40:40.081480000 +1000
+@@ -16,6 +16,15 @@
+     ${PROJECT_SOURCE_DIR}/../vtkPVFoam
+ )
+ 
++IF (PARAVIEW_QT_VERSION VERSION_GREATER "4")
++ELSE()
++    # Qt includes should be handled by the ParaView use file. For versions
++    # around 5.2, during the transition from Qt4 to Qt5, this seems to have been
++    # broken. We therefore ensure the Qt4 headers are included here.
++    FIND_PACKAGE(Qt4 COMPONENTS QTCORE QTGUI)
++    INCLUDE_DIRECTORIES(${QT_INCLUDES})
++ENDIF()
++
+ ADD_DEFINITIONS(
+     -std=c++11
+     -DWM_$ENV{WM_PRECISION_OPTION}
+--- applications/utilities/postProcessing/graphics/PVReaders/PVblockMeshReader/CMakeLists.txt.orig	2021-09-28 02:41:22.749623000 +1000
++++ applications/utilities/postProcessing/graphics/PVReaders/PVblockMeshReader/CMakeLists.txt	2021-09-28 02:41:47.914963000 +1000
+@@ -16,6 +16,16 @@
+     ${PROJECT_SOURCE_DIR}/../vtkPVblockMesh
+ )
+ 
++IF (PARAVIEW_QT_VERSION VERSION_GREATER "4")
++ELSE()
++    # Qt includes should be handled by the ParaView use file. For versions
++    # around 5.2, during the transition from Qt4 to Qt5, this seems to have been
++    # broken. We therefore ensure the Qt4 headers are included here.
++    FIND_PACKAGE(Qt4 COMPONENTS QTCORE QTGUI)
++    INCLUDE_DIRECTORIES(${QT_INCLUDES})
++ENDIF()
++
++
+ ADD_DEFINITIONS(
+     -std=c++11
+     -DWM_$ENV{WM_PRECISION_OPTION}
+--- applications/utilities/postProcessing/graphics/PVReaders/Allwmake.orig	2018-01-08 21:58:00.000000000 +1100
++++ applications/utilities/postProcessing/graphics/PVReaders/Allwmake	2021-09-28 23:26:10.102109000 +1000
+@@ -27,6 +27,7 @@
+                 mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1
+                 cd Make/$WM_OPTIONS
+                 cmake ../..
++                sed -i -e 's/2.7m/2.7/g' $PWD/CMakeFiles/PVblockMeshReader_SM.dir/{build.make,link.txt}
+                 make
+             )
+ 
+@@ -35,6 +36,7 @@
+                 mkdir -p Make/$WM_OPTIONS > /dev/null 2>&1
+                 cd Make/$WM_OPTIONS
+                 cmake ../..
++                sed -i -e 's/2.7m/2.7/g' $PWD/CMakeFiles/PVFoamReader_SM.dir/{build.make,link.txt}
+                 make
+             )
+         fi
diff --git a/o/OpenFOAM/OpenFOAM-5.0-20180108_cleanup.patch b/o/OpenFOAM/OpenFOAM-5.0-20180108_cleanup.patch
new file mode 100644
index 0000000..b8aef5b
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-20180108_cleanup.patch
@@ -0,0 +1,314 @@
+- use EasyBuild provided dependencies (libreadline, Boost, CGAL, SCOTCH, ParaView, ...)
+- comment out environment settings handled through EasyBuild
+- use correct value for $WM_PROJECT_VERSION
+- fix small compilation issue in ptscotchDecomp.C (w.r.t. location of #include <mpi.h>)
+by Kenneth Hoste (HPC-UGent), based on earlier patch for OpenFOAM 4.1 by Ward Poelmans <wpoely86@gmail.com>
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/applications/utilities/mesh/manipulation/setSet/Allwmake OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/applications/utilities/mesh/manipulation/setSet/Allwmake
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/applications/utilities/mesh/manipulation/setSet/Allwmake	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/applications/utilities/mesh/manipulation/setSet/Allwmake	2018-01-23 11:14:29.924844000 +0100
+@@ -7,18 +7,18 @@
+ unset COMP_FLAGS LINK_FLAGS
+ 
+ # Use readline if available
+-if [ -f /usr/include/readline/readline.h ]
++if [ -f $EBROOTLIBREADLINE/include/readline/readline.h ]
+ then
+     echo "    found <readline/readline.h>  --  enabling readline support."
+     export COMP_FLAGS="-DHAS_READLINE"
+ 
+     # readline may require ncurses
+-    if [ -f /usr/include/ncurses/ncurses.h ]
++    if [ -f $EBROOTNCURSES/include/ncurses.h ]
+     then
+         echo "    found <ncurses/ncurses.h>  --  maybe required by readline."
+-        export LINK_FLAGS="-lreadline -lncurses"
++        export LINK_FLAGS="-L$EBROOTLIBREADLINE/lib -lreadline -L$EBROOTNCURSES/lib -lncurses"
+     else
+-        export LINK_FLAGS="-lreadline"
++        export LINK_FLAGS="-L$EBROOTLIBREADLINE/lib -lreadline"
+     fi
+ fi
+ 
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/applications/utilities/postProcessing/graphics/PVReaders/Allwmake
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/applications/utilities/postProcessing/graphics/PVReaders/Allwmake	2018-01-23 10:58:51.176326000 +0100
+@@ -14,8 +14,8 @@
+         }
+ 
+         # ensure CMake gets the correct C/C++ compilers
+-        [ -n "$WM_CC" ] && export CC="$WM_CC"
+-        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
++#        [ -n "$WM_CC" ] && export CC="$WM_CC"
++#        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
+ 
+         wmake $targetType vtkPVblockMesh
+         wmake $targetType vtkPVFoam
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/bashrc OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/bashrc
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/bashrc	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/bashrc	2018-01-23 11:15:41.122782000 +0100
+@@ -32,7 +32,7 @@
+ #------------------------------------------------------------------------------
+ 
+ export WM_PROJECT=OpenFOAM
+-export WM_PROJECT_VERSION=5.x
++export WM_PROJECT_VERSION=5.0-20180108
+ 
+ ################################################################################
+ # USER EDITABLE PART: Changes made here may be lost with the next upgrade
+@@ -43,8 +43,9 @@
+ # Please set to the appropriate path if the default is not correct.
+ #
+ [ "$BASH" -o "$ZSH_NAME" ] && \
+-export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
+-export FOAM_INST_DIR=$HOME/$WM_PROJECT
++#export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
++#export FOAM_INST_DIR=$HOME/$WM_PROJECT
++# For Easybuild: set by the module
+ # export FOAM_INST_DIR=~$WM_PROJECT
+ # export FOAM_INST_DIR=/opt/$WM_PROJECT
+ # export FOAM_INST_DIR=/usr/local/$WM_PROJECT
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/CGAL OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/CGAL
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/CGAL	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/CGAL	2018-01-23 11:17:23.118954000 +0100
+@@ -35,33 +35,8 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-boost_version=boost-system
+-cgal_version=cgal-system
+-#cgal_version=CGAL-4.10
+-
+-thirdPartyPath=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
+-
+-if [ "$boost_version" != "boost-system"  ]
+-then
+-    export BOOST_ARCH_PATH=$thirdPartyPath/$boost_version
+-    if [ -d "$BOOST_ARCH_PATH" ]
+-    then
+-        _foamAddLib $BOOST_ARCH_PATH/lib
+-    fi
+-else
+-    unset BOOST_ARCH_PATH
+-fi
+-
+-if [ "$cgal_version" != "cgal-system" ]
+-then
+-    export CGAL_ARCH_PATH=$thirdPartyPath/$cgal_version
+-    if [ -d "$CGAL_ARCH_PATH" ]
+-    then
+-        _foamAddLib $CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
+-    fi
+-else
+-    unset CGAL_ARCH_PATH
+-fi
++export CGAL_ARCH_PATH=$EBROOTCGAL
++export BOOST_ARCH_PATH=$EBROOTBOOST
+ 
+ if [ "$FOAM_VERBOSE" -a "$PS1" ]
+ then
+@@ -70,6 +45,4 @@
+     echo "    $cgal_version at $CGAL_ARCH_PATH" 1>&2
+ fi
+ 
+-unset thirdPartyPath
+-
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/gperftools OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/gperftools
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/gperftools	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/gperftools	2018-01-23 10:58:51.191762000 +0100
+@@ -29,13 +29,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-version=svn
+-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
+-
+-GPERFTOOLS_VERSION=gperftools-$version
+-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION
+-
+-export PATH=$GPERFTOOLS_ARCH_PATH/bin:$PATH
+-export LD_LIBRARY_PATH=$GPERFTOOLS_ARCH_PATH/lib:$LD_LIBRARY_PATH
++GPERFTOOLS_VERSION=gperftools-$EBVERSIONGPERFTOOLS
++GPERFTOOLS_ARCH_PATH=$EBROOTGPERFTOOLS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/metis OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/metis
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/metis	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/metis	2018-01-23 10:58:51.195914000 +0100
+@@ -34,7 +34,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export METIS_VERSION=metis-5.1.0
+-export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$METIS_VERSION
++export METIS_VERSION=metis-$EBVERSIONMETIS
++export METIS_ARCH_PATH=$EBROOTMETIS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/mpi OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/mpi
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/mpi	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/mpi	2018-01-23 10:58:51.199497836 +0100
+@@ -249,6 +249,9 @@
+     _foamAddPath    $MPI_ARCH_PATH/bin64
+     _foamAddLib     $MPI_ARCH_PATH/lib64
+     ;;
++EASYBUILDMPI)
++    export FOAM_MPI=mpi
++    ;;
+ *)
+     export FOAM_MPI=dummy
+     ;;
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/paraview OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/paraview
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/paraview	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/paraview	2018-01-23 11:20:00.546299000 +0100
+@@ -41,21 +41,6 @@
+         ) \
+         && PATH="$cleaned"
+ 
+-# Determine the cmake to be used
+-unset CMAKE_HOME
+-for cmake in cmake-3.2.1 cmake-2.8.12.1 cmake-2.8.8 cmake-2.8.4 cmake-2.8.3 \
+-             cmake-2.8.1 cmake-3.9.0
+-do
+-    cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cmake
+-    if [ -r $cmake ]
+-    then
+-        export CMAKE_HOME=$cmake
+-        export CMAKE_ROOT=$cmake
+-        export PATH=$CMAKE_HOME/bin:$PATH
+-        break
+-    fi
+-done
+-
+ 
+ #- ParaView version, automatically determine major version
+ #export ParaView_VERSION=3.12.0
+@@ -65,7 +50,7 @@
+ #export ParaView_VERSION=4.4.0
+ #export ParaView_VERSION=5.0.0
+ #export ParaView_VERSION=5.0.1
+-export ParaView_VERSION=5.4.0
++export ParaView_VERSION=$EBVERSIONPARAVIEW
+ export ParaView_MAJOR=detect
+ 
+ 
+@@ -106,21 +91,15 @@
+ paraviewInstDir=$WM_THIRD_PARTY_DIR/ParaView-$ParaView_VERSION
+ paraviewArchName=ParaView-$ParaView_VERSION
+ 
+-export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$paraviewArchName
++export ParaView_DIR=$EBROOTPARAVIEW
+ 
+ # Set paths if binaries or source are present
+ if [ -r $ParaView_DIR -o -r $paraviewInstDir ]
+ then
+     export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR
+-    if [ ! -d $ParaView_INCLUDE_DIR -a -d $ParaView_DIR/include/paraview-3.0 ]
+-    then
+-        export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-3.0
+-    fi
+ 
+     ParaView_LIB_DIR=$ParaView_DIR/lib/paraview-$ParaView_MAJOR
+ 
+-    export PATH=$ParaView_DIR/bin:$PATH
+-    export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$LD_LIBRARY_PATH
+     export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR
+ 
+     if [ "$FOAM_VERBOSE" -a "$PS1" ]
+@@ -132,17 +111,6 @@
+         echo "    PV_PLUGIN_PATH       : $PV_PLUGIN_PATH"
+     fi
+ 
+-    # Add in python libraries if required
+-    paraviewPython=$ParaView_DIR/Utilities/VTKPythonWrapping
+-    if [ -r $paraviewPython ]
+-    then
+-        if [ "$PYTHONPATH" ]
+-        then
+-            export PYTHONPATH=$PYTHONPATH:$paraviewPython:$ParaView_LIB_DIR
+-        else
+-            export PYTHONPATH=$paraviewPython:$ParaView_LIB_DIR
+-        fi
+-    fi
+ else
+     unset PV_PLUGIN_PATH
+ fi
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/scotch OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/scotch
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/scotch	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/scotch	2018-01-23 10:58:51.207891000 +0100
+@@ -37,7 +37,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export SCOTCH_VERSION=scotch_6.0.3
+-export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$SCOTCH_VERSION
++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH
++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/settings OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/settings
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/etc/config.sh/settings	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/etc/config.sh/settings	2018-01-23 10:58:51.210513521 +0100
+@@ -61,11 +61,11 @@
+         64)
+             WM_ARCH=linux64
+             export WM_COMPILER_LIB_ARCH=64
+-            export WM_CC='gcc'
+-            export WM_CXX='g++'
+-            export WM_CFLAGS='-m64 -fPIC'
+-            export WM_CXXFLAGS='-m64 -fPIC -std=c++0x'
+-            export WM_LDFLAGS='-m64'
++            export WM_CC=$CC
++            export WM_CXX=$CXX
++            export WM_CFLAGS=$CFLAGS
++            export WM_CXXFLAGS=$CXXFLAGS
++            export WM_LDFLAGS=$LDFLAGS
+             ;;
+         *)
+             echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/src/parallel/decompose/ptscotchDecomp/Make/options OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/src/parallel/decompose/ptscotchDecomp/Make/options
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/src/parallel/decompose/ptscotchDecomp/Make/options	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/src/parallel/decompose/ptscotchDecomp/Make/options	2018-01-23 10:58:51.218420000 +0100
+@@ -4,14 +4,7 @@
+ EXE_INC = \
+     $(PFLAGS) $(PINC) \
+     -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \
+-    -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
+-    -L$(SCOTCH_ARCH_PATH)/lib \
+-    -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \
+-    -lptscotch \
+-    -lptscotcherrexit \
+-    -lscotch \
+-    -lrt
++    -L$(SCOTCH_ARCH_PATH)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C	2018-01-23 10:58:51.224134473 +0100
+@@ -30,10 +30,11 @@
+ #include "globalIndex.H"
+ #include "SubField.H"
+ 
++#include <mpi.h>
++
+ extern "C"
+ {
+     #include <stdio.h>
+-    #include <mpi.h>
+     #include "ptscotch.h"
+ }
+ 
+diff -ru OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/src/parallel/decompose/scotchDecomp/Make/options OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/src/parallel/decompose/scotchDecomp/Make/options
+--- OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d.orig/src/parallel/decompose/scotchDecomp/Make/options	2018-01-08 11:58:00.000000000 +0100
++++ OpenFOAM-5.x-c409ae7d90966250bb3be9cfbc2a0538bc8e288d/src/parallel/decompose/scotchDecomp/Make/options	2018-01-23 10:58:51.229165000 +0100
+@@ -8,7 +8,6 @@
+ EXE_INC = \
+     $(PFLAGS) $(PINC) \
+     -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
diff --git a/o/OpenFOAM/OpenFOAM-5.0-20180108_compiler.patch b/o/OpenFOAM/OpenFOAM-5.0-20180108_compiler.patch
new file mode 100644
index 0000000..f94a5ee
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-20180108_compiler.patch
@@ -0,0 +1,29 @@
+diff -Nru OpenFOAM-5.0-20180108.orig/src/OpenFOAM/containers/Lists/PackedList/PackedListI.H OpenFOAM-5.0-20180108/src/OpenFOAM/containers/Lists/PackedList/PackedListI.H
+--- OpenFOAM-5.0-20180108.orig/src/OpenFOAM/containers/Lists/PackedList/PackedListI.H   2021-04-14 12:44:17.275902000 +1000
++++ OpenFOAM-5.0-20180108/src/OpenFOAM/containers/Lists/PackedList/PackedListI.H        2021-04-14 15:35:58.331196000 +1000
+@@ -547,7 +547,7 @@
+         this->index_ = this->list_->size_;
+     }
+
+-    return *this;
++//    return *this;
+ }
+
+
+diff -Nru OpenFOAM-5.0-20180108.orig/src/thermophysicalModels/specie/reaction/Reactions/Reaction/ReactionI.H OpenFOAM-5.0-20180108/src/thermophysicalModels/specie/reaction/Reactions/Reaction/ReactionI.H
+--- OpenFOAM-5.0-20180108.orig/src/thermophysicalModels/specie/reaction/Reactions/Reaction/ReactionI.H  2021-04-16 11:14:35.188391000 +1000
++++ OpenFOAM-5.0-20180108/src/thermophysicalModels/specie/reaction/Reactions/Reaction/ReactionI.H       2021-04-16 11:26:14.412269000 +1000
+@@ -32,12 +32,6 @@
+
+ // * * * * * * * * * * * * * * * Member Functions  * * * * * * * * * * * * * //
+
+-template<class ReactionThermo>
+-inline word& Reaction<ReactionThermo>::name()
+-{
+-    return name_;
+-}
+-
+
+ template<class ReactionThermo>
+ inline const word& Reaction<ReactionThermo>::name() const
+
diff --git a/o/OpenFOAM/OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch b/o/OpenFOAM/OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch
new file mode 100644
index 0000000..9cb9f13
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch
@@ -0,0 +1,45 @@
+bug fix, obtained from https://github.com/OpenFOAM/OpenFOAM-dev/commit/03b641d2c7575738d94461527f12ce918dbd1922
+
+From 03b641d2c7575738d94461527f12ce918dbd1922 Mon Sep 17 00:00:00 2001
+From: Henry Weller <http://openfoam.org>
+Date: Fri, 10 Nov 2017 16:02:12 +0000
+Subject: [PATCH] decomposedBlockData: fixed reconstruction problem
+
+Patch contributed by Mattijs Janssens
+Resolves bug-report https://bugs.openfoam.org/view.php?id=2744
+---
+ .../db/IOobjects/decomposedBlockData/decomposedBlockData.C         | 7 +++----
+ 1 file changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C
+index fd1b1d4e9..c87d90a88 100644
+--- a/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C
++++ b/src/OpenFOAM/db/IOobjects/decomposedBlockData/decomposedBlockData.C
+@@ -825,8 +825,8 @@ bool Foam::decomposedBlockData::writeBlocks
+             labelPair masterData(startAndSize);
+             if (UPstream::master(comm))
+             {
+-                label totalSize = 0;
+-                label proci = masterData[0];
++                label totalSize = recvSizes[masterData[0]];
++                label proci = masterData[0]+1;
+                 while
+                 (
+                     proci < nProcs
+@@ -844,7 +844,6 @@ bool Foam::decomposedBlockData::writeBlocks
+                 masterData[1] = proci-masterData[0];
+             }
+ 
+-
+             // Scatter masterData
+             UPstream::scatter
+             (
+@@ -856,7 +855,7 @@ bool Foam::decomposedBlockData::writeBlocks
+                 comm
+             );
+ 
+-            if (startAndSize[1] == 0)
++            if (startAndSize[0] == nProcs || startAndSize[1] == 0)
+             {
+                 break;
+             }
diff --git a/o/OpenFOAM/OpenFOAM-5.0-20180606-foss-2022a.eb b/o/OpenFOAM/OpenFOAM-5.0-20180606-foss-2022a.eb
new file mode 100644
index 0000000..8a7435d
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-20180606-foss-2022a.eb
@@ -0,0 +1,48 @@
+name = 'OpenFOAM'
+# bugfix release of OpenFOAM 5.0, see also https://openfoam.org/news/v5-0-patch/
+# https://github.com/OpenFOAM/OpenFOAM-5.x/commit/7f7d351b741bf6406366a043cac98de56d2d44dd
+version = '5.0-20180606'
+local_commit = '7f7d351'
+
+homepage = 'https://www.openfoam.org/'
+description = """OpenFOAM is a free, open source CFD software package.
+ OpenFOAM has an extensive range of features to solve anything from complex fluid flows
+ involving chemical reactions, turbulence and heat transfer,
+ to solid dynamics and electromagnetics."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s.x/archive']
+sources = [{'download_filename': '%s.tar.gz' % local_commit, 'filename': SOURCE_TAR_GZ}]
+patches = [
+    'OpenFOAM-5.0-20180108_cleanup.patch',
+    'OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch',
+]
+checksums = [
+    '6644cfb3abd230c041232acf32f230be3c6f2f5171a77a1e1e38c0614947b38f',  # OpenFOAM-5.0-20180606.tar.gz
+    'f5768f5dbc422fc2f4183fd288dc6afb2370115384f3e8b9b0e155c943868989',  # OpenFOAM-5.0-20180108_cleanup.patch
+    # OpenFOAM-5.0-20180108_fix-decomposedBlockData.patch
+    '62c1585a43503c7550355ec6417fbfd28c22e750f559eaf72785d2bb630a4005',
+]
+
+dependencies = [
+    ('libreadline', '8.1.2'),
+    ('ncurses', '6.3'),
+    ('gnuplot', '5.4.4'),
+    # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
+    ('METIS', '5.1.0'),
+    ('SCOTCH', '7.0.1'),
+    ('SQLite', '3.38.3'),
+    ('ParaView', '5.4.1', '-Python-2.7.18-mpi'),
+    # the following must be last to guarantee that OpenFOAM picks the correct dependency on Qt4, instead of Qt5
+    ('CGAL', '4.14.1', '-Python-2.7.18'),
+]
+
+builddependencies = [
+    ('CMake', '3.12.1', '', SYSTEM),
+    ('Bison', '3.8.2'),
+    ('flex', '2.6.4'),
+]
+
+moduleclass = 'cae'
diff --git a/o/OpenFOAM/OpenFOAM-5.0-foss-2022a.eb b/o/OpenFOAM/OpenFOAM-5.0-foss-2022a.eb
new file mode 100644
index 0000000..b59ddf3
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-5.0-foss-2022a.eb
@@ -0,0 +1,39 @@
+name = 'OpenFOAM'
+version = '5.0'
+
+homepage = 'https://www.openfoam.org/'
+description = """OpenFOAM is a free, open source CFD software package.
+ OpenFOAM has an extensive range of features to solve anything from complex fluid flows
+ involving chemical reactions, turbulence and heat transfer,
+ to solid dynamics and electromagnetics."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s.x/archive']
+sources = ['version-%(version)s.tar.gz']
+patches = ['OpenFOAM-%(version)s-cleanup.patch']
+checksums = [
+    '9057d6a8bb9fa18802881feba215215699065e0b3c5cdd0c0e84cb29c9916c89',  # version-5.0.tar.gz
+    '8ed6bfb8983d3a3777399ff4e9bc30f99b017fec2d93d3a738e91129c58731a9',  # OpenFOAM-5.0-cleanup.patch
+]
+
+dependencies = [
+    ('libreadline', '8.1.2'),
+    ('ncurses', '6.3'),
+    ('gnuplot', '5.4.4'),
+    # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
+    ('METIS', '5.1.0'),
+    ('SCOTCH', '7.0.1'),
+    # the following must be last to guarantee that OpenFOAM picks the correct dependency on Qt4, instead of Qt5
+    ('CGAL', '4.14.3'),
+    ('ParaView', '5.10.1', '-mpi'),
+]
+
+builddependencies = [
+    ('Bison', '3.8.2'),
+    ('CMake', '3.12.1', '', SYSTEM)
+    ('flex', '2.6.4'),
+]
+
+moduleclass = 'cae'
diff --git a/o/OpenFOAM/OpenFOAM-7-20200508-cleanup.patch b/o/OpenFOAM/OpenFOAM-7-20200508-cleanup.patch
new file mode 100644
index 0000000..8047312
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-20200508-cleanup.patch
@@ -0,0 +1,318 @@
+# This patch removes all need for the ThirdParty files of OpenFOAM:
+# we use EB dependencies for everything. It adjusts the paths, variables, etc
+# We also let the install dir, compiler, etc be set by EB.
+# Lastly, we also fix a small compile issue in 'ptscotchDecomp.C'
+# by Jiri Furst <jiri.furst@gmail.com>, based on patch for OpenFOAM 5.0 and 4.1 by 
+# Kennet Hoste (HPC-UGent) and Ward Poelmans <wpoely86@gmail.com>
+diff -ru OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake
+--- OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake       2018-08-14 11:18:48.188975085 +0200
+@@ -7,19 +7,12 @@
+ unset COMP_FLAGS LINK_FLAGS
+ 
+ # Use readline if available
+-if [ -f /usr/include/readline/readline.h ]
++if [ -f $EBROOTLIBREADLINE/include/readline/readline.h ]
+ then
+     echo "    found <readline/readline.h>  --  enabling readline support."
+     export COMP_FLAGS="-DHAS_READLINE"
+ 
+-    # readline may require ncurses
+-    if [ -f /usr/include/ncurses/ncurses.h ]
+-    then
+-        echo "    found <ncurses/ncurses.h>  --  maybe required by readline."
+-        export LINK_FLAGS="-lreadline -lncurses"
+-    else
+-        export LINK_FLAGS="-lreadline"
+-    fi
++    export LINK_FLAGS="-L$EBROOTLIBREADLINE/lib -lreadline -L$EBROOTNCURSES -lncurses"
+ fi
+ 
+ wmake $targetType
+diff -ru OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake
+--- OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake      2018-08-14 11:21:25.280419729 +0200
+@@ -14,8 +14,8 @@
+         }
+ 
+         # ensure CMake gets the correct C/C++ compilers
+-        [ -n "$WM_CC" ] && export CC="$WM_CC"
+-        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
++#        [ -n "$WM_CC" ] && export CC="$WM_CC"
++#        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
+ 
+         wmake $targetType vtkPVblockMesh
+         wmake $targetType vtkPVFoam
+diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc
+--- OpenFOAM-7-version-7.orig/etc/bashrc        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/bashrc     2018-08-14 11:29:14.168761602 +0200
+@@ -43,8 +43,9 @@
+ # Please set to the appropriate path if the default is not correct.
+ #
+ [ "$BASH" -o "$ZSH_NAME" ] && \
+-export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
+-export FOAM_INST_DIR=$HOME/$WM_PROJECT
++#export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
++#export FOAM_INST_DIR=$HOME/$WM_PROJECT
++# For Easybuild: set by the module
+ # export FOAM_INST_DIR=~$WM_PROJECT
+ # export FOAM_INST_DIR=/opt/$WM_PROJECT
+ # export FOAM_INST_DIR=/usr/local/$WM_PROJECT
+@@ -113,10 +113,30 @@ foamOldDirs="$WM_PROJECT_DIR $WM_THIRD_PARTY_DIR \
+ export WM_PROJECT_INST_DIR=$FOAM_INST_DIR
+ export WM_PROJECT_DIR=$WM_PROJECT_INST_DIR/$WM_PROJECT-$WM_PROJECT_VERSION
+ 
++if [ -d "$WM_PROJECT_DIR" ]
++then
++    WM_PROJECT_DIR_REAL=$(cd $WM_PROJECT_DIR && pwd -P)
++    if [ -d "$WM_PROJECT_DIR_REAL" -a -e "$WM_PROJECT_DIR_REAL/etc/bashrc" ]
++    then
++        export WM_PROJECT_DIR=$WM_PROJECT_DIR_REAL
++    fi
++    unset WM_PROJECT_DIR_REAL
++fi
++
+ # Location of third-party software
+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ export WM_THIRD_PARTY_DIR=$WM_PROJECT_INST_DIR/ThirdParty-$WM_PROJECT_VERSION
+ 
++if [ -d "$WM_THIRD_PARTY_DIR" ]
++then
++    WM_THIRD_PARTY_DIR_REAL=$(cd $WM_THIRD_PARTY_DIR && pwd -P)
++    if [ -d "$WM_THIRD_PARTY_DIR_REAL" -a -e "$WM_THIRD_PARTY_DIR_REAL/etc/tools" ]
++    then
++        export WM_THIRD_PARTY_DIR=$WM_THIRD_PARTY_DIR_REAL
++    fi
++    unset WM_THIRD_PARTY_DIR_REAL
++fi
++
+ # Location of site-specific templates etc
+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ # unset is equivalent to $WM_PROJECT_INST_DIR/site
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/CGAL OpenFOAM-7-version-7/etc/config.sh/CGAL
+--- OpenFOAM-7-version-7.orig/etc/config.sh/CGAL	2020-07-01 08:32:09.046842000 +0200V
++++ OpenFOAM-7-version-7/etc/config.sh/CGAL	2020-07-01 08:40:13.226755000 +0200
+@@ -39,20 +39,8 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-boost_version=boost-system
+ 
+-cgal_version=cgal-system
+-#cgal_version=CGAL-4.10
+-#cgal_version=CGAL-5.0.2
+-
+-if [ "$boost_version" != "boost-system" ]
+-then
+-    export BOOST_ARCH_PATH=$WM_THIRD_PARTY_DIR/$boost_version
+-fi
+-
+-if [ "$cgal_version" != "cgal-system" ]
+-then
+-    export CGAL_ARCH_PATH=$WM_THIRD_PARTY_DIR/$cgal_version
+-fi
++export CGAL_ARCH_PATH=$EBROOTCGAL
++export BOOST_ARCH_PATH=$EBROOTBOOST
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/gperftools OpenFOAM-7-version-7/etc/config.sh/gperftools
+--- OpenFOAM-7-version-7.orig/etc/config.sh/gperftools  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/gperftools       2018-08-14 11:37:07.582078984 +0200
+@@ -29,13 +29,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-version=svn
+-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
+-
+-GPERFTOOLS_VERSION=gperftools-$version
+-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION
+-
+-export PATH=$GPERFTOOLS_ARCH_PATH/bin:$PATH
+-export LD_LIBRARY_PATH=$GPERFTOOLS_ARCH_PATH/lib:$LD_LIBRARY_PATH
++GPERFTOOLS_VERSION=gperftools-$EBVERSIONGPERFTOOLS
++GPERFTOOLS_ARCH_PATH=$EBROOTGPERFTOOLS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/metis OpenFOAM-7-version-7/etc/config.sh/metis
+--- OpenFOAM-7-version-7.orig/etc/config.sh/metis       2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/metis    2018-08-14 11:39:06.204657280 +0200
+@@ -34,7 +34,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export METIS_VERSION=metis-5.1.0
+-export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$METIS_VERSION
++export METIS_VERSION=metis-$EBVERSIONMETIS
++export METIS_ARCH_PATH=$EBROOTMETIS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/mpi OpenFOAM-7-version-7/etc/config.sh/mpi
+--- OpenFOAM-7-version-7.orig/etc/config.sh/mpi 2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/mpi      2018-08-14 11:45:15.876343167 +0200
+@@ -257,6 +257,9 @@
+     _foamAddPath    $MPI_ARCH_PATH/bin64
+     _foamAddLib     $MPI_ARCH_PATH/lib64
+     ;;
++EASYBUILDMPI)
++    export FOAM_MPI=mpi
++    ;;
+ *)
+     export FOAM_MPI=dummy
+     ;;
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/paraview OpenFOAM-7-version-7/etc/config.sh/paraview
+--- OpenFOAM-7-version-7.orig/etc/config.sh/paraview    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/paraview 2018-08-14 11:48:56.859557664 +0200
+@@ -41,21 +41,6 @@
+         ) \
+         && PATH="$cleaned"
+ 
+-# Determine the cmake to be used
+-unset CMAKE_HOME
+-for cmake in cmake-3.2.1 cmake-2.8.12.1 cmake-2.8.8 cmake-2.8.4 cmake-2.8.3 \
+-             cmake-2.8.1 cmake-3.9.0
+-do
+-    cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cmake
+-    if [ -r $cmake ]
+-    then
+-        export CMAKE_HOME=$cmake
+-        export CMAKE_ROOT=$cmake
+-        export PATH=$CMAKE_HOME/bin:$PATH
+-        break
+-    fi
+-done
+-
+ 
+ #- ParaView version, automatically determine major version
+ #export ParaView_VERSION=3.12.0
+@@ -67,7 +52,8 @@
+ #export ParaView_VERSION=5.0.1
+ #export ParaView_VERSION=5.4.0
+ #export ParaView_VERSION=5.5.0
+-export ParaView_VERSION=5.6.0
++#export ParaView_VERSION=5.6.0
++export ParaView_VERSION=$EBVERSIONPARAVIEW
+ export ParaView_MAJOR=detect
+ 
+ #export ParaView_GL=system
+@@ -107,21 +93,15 @@
+ paraviewInstDir=$WM_THIRD_PARTY_DIR/ParaView-$ParaView_VERSION
+ paraviewArchName=ParaView-$ParaView_VERSION
+ 
+-export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$paraviewArchName
++export ParaView_DIR=$EBROOTPARAVIEW
+ 
+ # Set paths if binaries or source are present
+ if [ -r $ParaView_DIR -o -r $paraviewInstDir ]
+ then
+     export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR
+-    if [ ! -d $ParaView_INCLUDE_DIR -a -d $ParaView_DIR/include/paraview-3.0 ]
+-    then
+-        export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-3.0
+-    fi
+ 
+     ParaView_LIB_DIR=$ParaView_DIR/lib/paraview-$ParaView_MAJOR
+ 
+-    export PATH=$ParaView_DIR/bin:$PATH
+-    export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$LD_LIBRARY_PATH
+     export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR
+ 
+     if [ "$FOAM_VERBOSE" -a "$PS1" ]
+@@ -136,18 +116,6 @@
+         echo "    PV_PLUGIN_PATH       : $PV_PLUGIN_PATH"
+     fi
+ 
+-    # Add in python libraries if required
+-    paraviewPython=$ParaView_DIR/Utilities/VTKPythonWrapping
+-    if [ -r $paraviewPython ]
+-    then
+-        if [ "$PYTHONPATH" ]
+-        then
+-            export PYTHONPATH=$PYTHONPATH:$paraviewPython:$ParaView_LIB_DIR
+-        else
+-            export PYTHONPATH=$paraviewPython:$ParaView_LIB_DIR
+-        fi
+-    fi
+-
+     [ "$ParaView_GL" = mesa ] && alias paraview="paraview --mesa"
+ else
+     unset PV_PLUGIN_PATH
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/scotch OpenFOAM-7-version-7/etc/config.sh/scotch
+--- OpenFOAM-7-version-7.orig/etc/config.sh/scotch      2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/scotch   2018-08-14 11:50:33.739213308 +0200
+@@ -37,7 +37,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export SCOTCH_VERSION=scotch_6.0.6
+-export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$SCOTCH_VERSION
++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH
++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/settings OpenFOAM-7-version-7/etc/config.sh/settings
+--- OpenFOAM-7-version-7.orig/etc/config.sh/settings    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/settings 2018-08-14 11:53:15.092639797 +0200
+@@ -61,11 +61,11 @@
+         64)
+             WM_ARCH=linux64
+             export WM_COMPILER_LIB_ARCH=64
+-            export WM_CC='gcc'
+-            export WM_CXX='g++'
+-            export WM_CFLAGS='-m64 -fPIC'
+-            export WM_CXXFLAGS='-m64 -fPIC -std=c++0x'
+-            export WM_LDFLAGS='-m64'
++            export WM_CC=$CC
++            export WM_CXX=$CXX
++            export WM_CFLAGS=$CFLAGS
++            export WM_CXXFLAGS=$CXXFLAGS
++            export WM_LDFLAGS=$LDFLAGS
+             ;;
+         *)
+             echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options     2018-08-14 11:55:27.323169812 +0200
+@@ -5,14 +5,7 @@
+     $(PFLAGS) $(PINC) \
+     -I$(FOAM_SRC)/Pstream/mpi/lnInclude \
+     -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \
+-    -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
+-    -L$(SCOTCH_ARCH_PATH)/lib \
+-    -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \
+-    -lptscotch \
+-    -lptscotcherrexit \
+-    -lscotch \
+-    -lrt
++    -L$(SCOTCH_ARCH_PATH)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C 2018-08-14 11:57:24.057754914 +0200
+@@ -31,10 +31,11 @@
+ #include "SubField.H"
+ #include "PstreamGlobals.H"
+ 
++#include <mpi.h>
++
+ extern "C"
+ {
+     #include <stdio.h>
+-    #include <mpi.h>
+     #include "ptscotch.h"
+ }
+ 
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options       2018-08-14 11:58:42.345476668 +0200
+@@ -8,7 +8,6 @@
+ EXE_INC = \
+     $(PFLAGS) $(PINC) \
+     -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
diff --git a/o/OpenFOAM/OpenFOAM-7-cleanup.patch b/o/OpenFOAM/OpenFOAM-7-cleanup.patch
new file mode 100644
index 0000000..fd08f29
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-cleanup.patch
@@ -0,0 +1,338 @@
+# This patch removes all need for the ThirdParty files of OpenFOAM:
+# we use EB dependencies for everything. It adjusts the paths, variables, etc
+# We also let the install dir, compiler, etc be set by EB.
+# Lastly, we also fix a small compile issue in 'ptscotchDecomp.C'
+# by Jiri Furst <jiri.furst@gmail.com>, based on patch for OpenFOAM 5.0 and 4.1 by 
+# Kennet Hoste (HPC-UGent) and Ward Poelmans <wpoely86@gmail.com>
+diff -ru OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake
+--- OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake       2018-08-14 11:18:48.188975085 +0200
+@@ -7,19 +7,12 @@
+ unset COMP_FLAGS LINK_FLAGS
+ 
+ # Use readline if available
+-if [ -f /usr/include/readline/readline.h ]
++if [ -f $EBROOTLIBREADLINE/include/readline/readline.h ]
+ then
+     echo "    found <readline/readline.h>  --  enabling readline support."
+     export COMP_FLAGS="-DHAS_READLINE"
+ 
+-    # readline may require ncurses
+-    if [ -f /usr/include/ncurses/ncurses.h ]
+-    then
+-        echo "    found <ncurses/ncurses.h>  --  maybe required by readline."
+-        export LINK_FLAGS="-lreadline -lncurses"
+-    else
+-        export LINK_FLAGS="-lreadline"
+-    fi
++    export LINK_FLAGS="-L$EBROOTLIBREADLINE/lib -lreadline -L$EBROOTNCURSES -lncurses"
+ fi
+ 
+ wmake $targetType
+diff -ru OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake
+--- OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake      2018-08-14 11:21:25.280419729 +0200
+@@ -14,8 +14,8 @@
+         }
+ 
+         # ensure CMake gets the correct C/C++ compilers
+-        [ -n "$WM_CC" ] && export CC="$WM_CC"
+-        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
++#        [ -n "$WM_CC" ] && export CC="$WM_CC"
++#        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
+ 
+         wmake $targetType vtkPVblockMesh
+         wmake $targetType vtkPVFoam
+diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc
+--- OpenFOAM-7-version-7.orig/etc/bashrc        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/bashrc     2018-08-14 11:29:14.168761602 +0200
+@@ -43,8 +43,9 @@
+ # Please set to the appropriate path if the default is not correct.
+ #
+ [ "$BASH" -o "$ZSH_NAME" ] && \
+-export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
+-export FOAM_INST_DIR=$HOME/$WM_PROJECT
++#export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
++#export FOAM_INST_DIR=$HOME/$WM_PROJECT
++# For Easybuild: set by the module
+ # export FOAM_INST_DIR=~$WM_PROJECT
+ # export FOAM_INST_DIR=/opt/$WM_PROJECT
+ # export FOAM_INST_DIR=/usr/local/$WM_PROJECT
+@@ -113,10 +113,30 @@ foamOldDirs="$WM_PROJECT_DIR $WM_THIRD_PARTY_DIR \
+ export WM_PROJECT_INST_DIR=$FOAM_INST_DIR
+ export WM_PROJECT_DIR=$WM_PROJECT_INST_DIR/$WM_PROJECT-$WM_PROJECT_VERSION
+ 
++if [ -d "$WM_PROJECT_DIR" ]
++then
++    WM_PROJECT_DIR_REAL=$(cd $WM_PROJECT_DIR && pwd -P)
++    if [ -d "$WM_PROJECT_DIR_REAL" -a -e "$WM_PROJECT_DIR_REAL/etc/bashrc" ]
++    then
++        export WM_PROJECT_DIR=$WM_PROJECT_DIR_REAL
++    fi
++    unset WM_PROJECT_DIR_REAL
++fi
++
+ # Location of third-party software
+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ export WM_THIRD_PARTY_DIR=$WM_PROJECT_INST_DIR/ThirdParty-$WM_PROJECT_VERSION
+ 
++if [ -d "$WM_THIRD_PARTY_DIR" ]
++then
++    WM_THIRD_PARTY_DIR_REAL=$(cd $WM_THIRD_PARTY_DIR && pwd -P)
++    if [ -d "$WM_THIRD_PARTY_DIR_REAL" -a -e "$WM_THIRD_PARTY_DIR_REAL/etc/tools" ]
++    then
++        export WM_THIRD_PARTY_DIR=$WM_THIRD_PARTY_DIR_REAL
++    fi
++    unset WM_THIRD_PARTY_DIR_REAL
++fi
++
+ # Location of site-specific templates etc
+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ # unset is equivalent to $WM_PROJECT_INST_DIR/site
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/CGAL OpenFOAM-7-version-7/etc/config.sh/CGAL
+--- OpenFOAM-7-version-7.orig/etc/config.sh/CGAL        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/CGAL     2018-08-14 11:35:21.214457132 +0200
+@@ -35,33 +35,8 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-boost_version=boost-system
+-cgal_version=cgal-system
+-#cgal_version=CGAL-4.10
+-
+-thirdPartyPath=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
+-
+-if [ "$boost_version" != "boost-system"  ]
+-then
+-    export BOOST_ARCH_PATH=$thirdPartyPath/$boost_version
+-    if [ -d "$BOOST_ARCH_PATH" ]
+-    then
+-        _foamAddLib $BOOST_ARCH_PATH/lib
+-    fi
+-else
+-    unset BOOST_ARCH_PATH
+-fi
+-
+-if [ "$cgal_version" != "cgal-system" ]
+-then
+-    export CGAL_ARCH_PATH=$thirdPartyPath/$cgal_version
+-    if [ -d "$CGAL_ARCH_PATH" ]
+-    then
+-        _foamAddLib $CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
+-    fi
+-else
+-    unset CGAL_ARCH_PATH
+-fi
++export CGAL_ARCH_PATH=$EBROOTCGAL
++export BOOST_ARCH_PATH=$EBROOTBOOST
+ 
+ if [ "$FOAM_VERBOSE" -a "$PS1" ]
+ then
+@@ -70,6 +45,4 @@
+     echo "    $cgal_version at $CGAL_ARCH_PATH" 1>&2
+ fi
+ 
+-unset thirdPartyPath
+-
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/gperftools OpenFOAM-7-version-7/etc/config.sh/gperftools
+--- OpenFOAM-7-version-7.orig/etc/config.sh/gperftools  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/gperftools       2018-08-14 11:37:07.582078984 +0200
+@@ -29,13 +29,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-version=svn
+-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
+-
+-GPERFTOOLS_VERSION=gperftools-$version
+-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION
+-
+-export PATH=$GPERFTOOLS_ARCH_PATH/bin:$PATH
+-export LD_LIBRARY_PATH=$GPERFTOOLS_ARCH_PATH/lib:$LD_LIBRARY_PATH
++GPERFTOOLS_VERSION=gperftools-$EBVERSIONGPERFTOOLS
++GPERFTOOLS_ARCH_PATH=$EBROOTGPERFTOOLS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/metis OpenFOAM-7-version-7/etc/config.sh/metis
+--- OpenFOAM-7-version-7.orig/etc/config.sh/metis       2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/metis    2018-08-14 11:39:06.204657280 +0200
+@@ -34,7 +34,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export METIS_VERSION=metis-5.1.0
+-export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$METIS_VERSION
++export METIS_VERSION=metis-$EBVERSIONMETIS
++export METIS_ARCH_PATH=$EBROOTMETIS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/mpi OpenFOAM-7-version-7/etc/config.sh/mpi
+--- OpenFOAM-7-version-7.orig/etc/config.sh/mpi 2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/mpi      2018-08-14 11:45:15.876343167 +0200
+@@ -257,6 +257,9 @@
+     _foamAddPath    $MPI_ARCH_PATH/bin64
+     _foamAddLib     $MPI_ARCH_PATH/lib64
+     ;;
++EASYBUILDMPI)
++    export FOAM_MPI=mpi
++    ;;
+ *)
+     export FOAM_MPI=dummy
+     ;;
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/paraview OpenFOAM-7-version-7/etc/config.sh/paraview
+--- OpenFOAM-7-version-7.orig/etc/config.sh/paraview    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/paraview 2018-08-14 11:48:56.859557664 +0200
+@@ -41,21 +41,6 @@
+         ) \
+         && PATH="$cleaned"
+ 
+-# Determine the cmake to be used
+-unset CMAKE_HOME
+-for cmake in cmake-3.2.1 cmake-2.8.12.1 cmake-2.8.8 cmake-2.8.4 cmake-2.8.3 \
+-             cmake-2.8.1 cmake-3.9.0
+-do
+-    cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cmake
+-    if [ -r $cmake ]
+-    then
+-        export CMAKE_HOME=$cmake
+-        export CMAKE_ROOT=$cmake
+-        export PATH=$CMAKE_HOME/bin:$PATH
+-        break
+-    fi
+-done
+-
+ 
+ #- ParaView version, automatically determine major version
+ #export ParaView_VERSION=3.12.0
+@@ -67,7 +52,8 @@
+ #export ParaView_VERSION=5.0.1
+ #export ParaView_VERSION=5.4.0
+ #export ParaView_VERSION=5.5.0
+-export ParaView_VERSION=5.6.0
++#export ParaView_VERSION=5.6.0
++export ParaView_VERSION=$EBVERSIONPARAVIEW
+ export ParaView_MAJOR=detect
+ 
+ #export ParaView_GL=system
+@@ -107,21 +93,15 @@
+ paraviewInstDir=$WM_THIRD_PARTY_DIR/ParaView-$ParaView_VERSION
+ paraviewArchName=ParaView-$ParaView_VERSION
+ 
+-export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$paraviewArchName
++export ParaView_DIR=$EBROOTPARAVIEW
+ 
+ # Set paths if binaries or source are present
+ if [ -r $ParaView_DIR -o -r $paraviewInstDir ]
+ then
+     export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR
+-    if [ ! -d $ParaView_INCLUDE_DIR -a -d $ParaView_DIR/include/paraview-3.0 ]
+-    then
+-        export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-3.0
+-    fi
+ 
+     ParaView_LIB_DIR=$ParaView_DIR/lib/paraview-$ParaView_MAJOR
+ 
+-    export PATH=$ParaView_DIR/bin:$PATH
+-    export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$LD_LIBRARY_PATH
+     export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR
+ 
+     if [ "$FOAM_VERBOSE" -a "$PS1" ]
+@@ -136,18 +116,6 @@
+         echo "    PV_PLUGIN_PATH       : $PV_PLUGIN_PATH"
+     fi
+ 
+-    # Add in python libraries if required
+-    paraviewPython=$ParaView_DIR/Utilities/VTKPythonWrapping
+-    if [ -r $paraviewPython ]
+-    then
+-        if [ "$PYTHONPATH" ]
+-        then
+-            export PYTHONPATH=$PYTHONPATH:$paraviewPython:$ParaView_LIB_DIR
+-        else
+-            export PYTHONPATH=$paraviewPython:$ParaView_LIB_DIR
+-        fi
+-    fi
+-
+     [ "$ParaView_GL" = mesa ] && alias paraview="paraview --mesa"
+ else
+     unset PV_PLUGIN_PATH
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/scotch OpenFOAM-7-version-7/etc/config.sh/scotch
+--- OpenFOAM-7-version-7.orig/etc/config.sh/scotch      2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/scotch   2018-08-14 11:50:33.739213308 +0200
+@@ -37,7 +37,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export SCOTCH_VERSION=scotch_6.0.6
+-export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$SCOTCH_VERSION
++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH
++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/settings OpenFOAM-7-version-7/etc/config.sh/settings
+--- OpenFOAM-7-version-7.orig/etc/config.sh/settings    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/settings 2018-08-14 11:53:15.092639797 +0200
+@@ -61,11 +61,11 @@
+         64)
+             WM_ARCH=linux64
+             export WM_COMPILER_LIB_ARCH=64
+-            export WM_CC='gcc'
+-            export WM_CXX='g++'
+-            export WM_CFLAGS='-m64 -fPIC'
+-            export WM_CXXFLAGS='-m64 -fPIC -std=c++0x'
+-            export WM_LDFLAGS='-m64'
++            export WM_CC=$CC
++            export WM_CXX=$CXX
++            export WM_CFLAGS=$CFLAGS
++            export WM_CXXFLAGS=$CXXFLAGS
++            export WM_LDFLAGS=$LDFLAGS
+             ;;
+         *)
+             echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options     2018-08-14 11:55:27.323169812 +0200
+@@ -5,14 +5,7 @@
+     $(PFLAGS) $(PINC) \
+     -I$(FOAM_SRC)/Pstream/mpi/lnInclude \
+     -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \
+-    -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
+-    -L$(SCOTCH_ARCH_PATH)/lib \
+-    -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \
+-    -lptscotch \
+-    -lptscotcherrexit \
+-    -lscotch \
+-    -lrt
++    -L$(SCOTCH_ARCH_PATH)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C 2018-08-14 11:57:24.057754914 +0200
+@@ -31,10 +31,11 @@
+ #include "SubField.H"
+ #include "PstreamGlobals.H"
+ 
++#include <mpi.h>
++
+ extern "C"
+ {
+     #include <stdio.h>
+-    #include <mpi.h>
+     #include "ptscotch.h"
+ }
+ 
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options       2018-08-14 11:58:42.345476668 +0200
+@@ -8,7 +8,6 @@
+ EXE_INC = \
+     $(PFLAGS) $(PINC) \
+     -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
diff --git a/o/OpenFOAM/OpenFOAM-7-cleanup_test.patch b/o/OpenFOAM/OpenFOAM-7-cleanup_test.patch
new file mode 100644
index 0000000..fd08f29
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-cleanup_test.patch
@@ -0,0 +1,338 @@
+# This patch removes all need for the ThirdParty files of OpenFOAM:
+# we use EB dependencies for everything. It adjusts the paths, variables, etc
+# We also let the install dir, compiler, etc be set by EB.
+# Lastly, we also fix a small compile issue in 'ptscotchDecomp.C'
+# by Jiri Furst <jiri.furst@gmail.com>, based on patch for OpenFOAM 5.0 and 4.1 by 
+# Kennet Hoste (HPC-UGent) and Ward Poelmans <wpoely86@gmail.com>
+diff -ru OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake
+--- OpenFOAM-7-version-7.orig/applications/utilities/mesh/manipulation/setSet/Allwmake  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/applications/utilities/mesh/manipulation/setSet/Allwmake       2018-08-14 11:18:48.188975085 +0200
+@@ -7,19 +7,12 @@
+ unset COMP_FLAGS LINK_FLAGS
+ 
+ # Use readline if available
+-if [ -f /usr/include/readline/readline.h ]
++if [ -f $EBROOTLIBREADLINE/include/readline/readline.h ]
+ then
+     echo "    found <readline/readline.h>  --  enabling readline support."
+     export COMP_FLAGS="-DHAS_READLINE"
+ 
+-    # readline may require ncurses
+-    if [ -f /usr/include/ncurses/ncurses.h ]
+-    then
+-        echo "    found <ncurses/ncurses.h>  --  maybe required by readline."
+-        export LINK_FLAGS="-lreadline -lncurses"
+-    else
+-        export LINK_FLAGS="-lreadline"
+-    fi
++    export LINK_FLAGS="-L$EBROOTLIBREADLINE/lib -lreadline -L$EBROOTNCURSES -lncurses"
+ fi
+ 
+ wmake $targetType
+diff -ru OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake
+--- OpenFOAM-7-version-7.orig/applications/utilities/postProcessing/graphics/PVReaders/Allwmake 2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/applications/utilities/postProcessing/graphics/PVReaders/Allwmake      2018-08-14 11:21:25.280419729 +0200
+@@ -14,8 +14,8 @@
+         }
+ 
+         # ensure CMake gets the correct C/C++ compilers
+-        [ -n "$WM_CC" ] && export CC="$WM_CC"
+-        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
++#        [ -n "$WM_CC" ] && export CC="$WM_CC"
++#        [ -n "$WM_CXX" ] && export CXX="$WM_CXX"
+ 
+         wmake $targetType vtkPVblockMesh
+         wmake $targetType vtkPVFoam
+diff -ru OpenFOAM-7-version-7.orig/etc/bashrc OpenFOAM-7-version-7/etc/bashrc
+--- OpenFOAM-7-version-7.orig/etc/bashrc        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/bashrc     2018-08-14 11:29:14.168761602 +0200
+@@ -43,8 +43,9 @@
+ # Please set to the appropriate path if the default is not correct.
+ #
+ [ "$BASH" -o "$ZSH_NAME" ] && \
+-export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
+-export FOAM_INST_DIR=$HOME/$WM_PROJECT
++#export FOAM_INST_DIR=$(cd $(dirname ${BASH_SOURCE:-$0})/../.. && pwd -P) || \
++#export FOAM_INST_DIR=$HOME/$WM_PROJECT
++# For Easybuild: set by the module
+ # export FOAM_INST_DIR=~$WM_PROJECT
+ # export FOAM_INST_DIR=/opt/$WM_PROJECT
+ # export FOAM_INST_DIR=/usr/local/$WM_PROJECT
+@@ -113,10 +113,30 @@ foamOldDirs="$WM_PROJECT_DIR $WM_THIRD_PARTY_DIR \
+ export WM_PROJECT_INST_DIR=$FOAM_INST_DIR
+ export WM_PROJECT_DIR=$WM_PROJECT_INST_DIR/$WM_PROJECT-$WM_PROJECT_VERSION
+ 
++if [ -d "$WM_PROJECT_DIR" ]
++then
++    WM_PROJECT_DIR_REAL=$(cd $WM_PROJECT_DIR && pwd -P)
++    if [ -d "$WM_PROJECT_DIR_REAL" -a -e "$WM_PROJECT_DIR_REAL/etc/bashrc" ]
++    then
++        export WM_PROJECT_DIR=$WM_PROJECT_DIR_REAL
++    fi
++    unset WM_PROJECT_DIR_REAL
++fi
++
+ # Location of third-party software
+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ export WM_THIRD_PARTY_DIR=$WM_PROJECT_INST_DIR/ThirdParty-$WM_PROJECT_VERSION
+ 
++if [ -d "$WM_THIRD_PARTY_DIR" ]
++then
++    WM_THIRD_PARTY_DIR_REAL=$(cd $WM_THIRD_PARTY_DIR && pwd -P)
++    if [ -d "$WM_THIRD_PARTY_DIR_REAL" -a -e "$WM_THIRD_PARTY_DIR_REAL/etc/tools" ]
++    then
++        export WM_THIRD_PARTY_DIR=$WM_THIRD_PARTY_DIR_REAL
++    fi
++    unset WM_THIRD_PARTY_DIR_REAL
++fi
++
+ # Location of site-specific templates etc
+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ # unset is equivalent to $WM_PROJECT_INST_DIR/site
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/CGAL OpenFOAM-7-version-7/etc/config.sh/CGAL
+--- OpenFOAM-7-version-7.orig/etc/config.sh/CGAL        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/CGAL     2018-08-14 11:35:21.214457132 +0200
+@@ -35,33 +35,8 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-boost_version=boost-system
+-cgal_version=cgal-system
+-#cgal_version=CGAL-4.10
+-
+-thirdPartyPath=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
+-
+-if [ "$boost_version" != "boost-system"  ]
+-then
+-    export BOOST_ARCH_PATH=$thirdPartyPath/$boost_version
+-    if [ -d "$BOOST_ARCH_PATH" ]
+-    then
+-        _foamAddLib $BOOST_ARCH_PATH/lib
+-    fi
+-else
+-    unset BOOST_ARCH_PATH
+-fi
+-
+-if [ "$cgal_version" != "cgal-system" ]
+-then
+-    export CGAL_ARCH_PATH=$thirdPartyPath/$cgal_version
+-    if [ -d "$CGAL_ARCH_PATH" ]
+-    then
+-        _foamAddLib $CGAL_ARCH_PATH/lib$WM_COMPILER_LIB_ARCH
+-    fi
+-else
+-    unset CGAL_ARCH_PATH
+-fi
++export CGAL_ARCH_PATH=$EBROOTCGAL
++export BOOST_ARCH_PATH=$EBROOTBOOST
+ 
+ if [ "$FOAM_VERBOSE" -a "$PS1" ]
+ then
+@@ -70,6 +45,4 @@
+     echo "    $cgal_version at $CGAL_ARCH_PATH" 1>&2
+ fi
+ 
+-unset thirdPartyPath
+-
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/gperftools OpenFOAM-7-version-7/etc/config.sh/gperftools
+--- OpenFOAM-7-version-7.orig/etc/config.sh/gperftools  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/gperftools       2018-08-14 11:37:07.582078984 +0200
+@@ -29,13 +29,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-version=svn
+-gperftools_install=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER
+-
+-GPERFTOOLS_VERSION=gperftools-$version
+-GPERFTOOLS_ARCH_PATH=$gperftools_install/$GPERFTOOLS_VERSION
+-
+-export PATH=$GPERFTOOLS_ARCH_PATH/bin:$PATH
+-export LD_LIBRARY_PATH=$GPERFTOOLS_ARCH_PATH/lib:$LD_LIBRARY_PATH
++GPERFTOOLS_VERSION=gperftools-$EBVERSIONGPERFTOOLS
++GPERFTOOLS_ARCH_PATH=$EBROOTGPERFTOOLS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/metis OpenFOAM-7-version-7/etc/config.sh/metis
+--- OpenFOAM-7-version-7.orig/etc/config.sh/metis       2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/metis    2018-08-14 11:39:06.204657280 +0200
+@@ -34,7 +34,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export METIS_VERSION=metis-5.1.0
+-export METIS_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$METIS_VERSION
++export METIS_VERSION=metis-$EBVERSIONMETIS
++export METIS_ARCH_PATH=$EBROOTMETIS
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/mpi OpenFOAM-7-version-7/etc/config.sh/mpi
+--- OpenFOAM-7-version-7.orig/etc/config.sh/mpi 2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/mpi      2018-08-14 11:45:15.876343167 +0200
+@@ -257,6 +257,9 @@
+     _foamAddPath    $MPI_ARCH_PATH/bin64
+     _foamAddLib     $MPI_ARCH_PATH/lib64
+     ;;
++EASYBUILDMPI)
++    export FOAM_MPI=mpi
++    ;;
+ *)
+     export FOAM_MPI=dummy
+     ;;
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/paraview OpenFOAM-7-version-7/etc/config.sh/paraview
+--- OpenFOAM-7-version-7.orig/etc/config.sh/paraview    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/paraview 2018-08-14 11:48:56.859557664 +0200
+@@ -41,21 +41,6 @@
+         ) \
+         && PATH="$cleaned"
+ 
+-# Determine the cmake to be used
+-unset CMAKE_HOME
+-for cmake in cmake-3.2.1 cmake-2.8.12.1 cmake-2.8.8 cmake-2.8.4 cmake-2.8.3 \
+-             cmake-2.8.1 cmake-3.9.0
+-do
+-    cmake=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$cmake
+-    if [ -r $cmake ]
+-    then
+-        export CMAKE_HOME=$cmake
+-        export CMAKE_ROOT=$cmake
+-        export PATH=$CMAKE_HOME/bin:$PATH
+-        break
+-    fi
+-done
+-
+ 
+ #- ParaView version, automatically determine major version
+ #export ParaView_VERSION=3.12.0
+@@ -67,7 +52,8 @@
+ #export ParaView_VERSION=5.0.1
+ #export ParaView_VERSION=5.4.0
+ #export ParaView_VERSION=5.5.0
+-export ParaView_VERSION=5.6.0
++#export ParaView_VERSION=5.6.0
++export ParaView_VERSION=$EBVERSIONPARAVIEW
+ export ParaView_MAJOR=detect
+ 
+ #export ParaView_GL=system
+@@ -107,21 +93,15 @@
+ paraviewInstDir=$WM_THIRD_PARTY_DIR/ParaView-$ParaView_VERSION
+ paraviewArchName=ParaView-$ParaView_VERSION
+ 
+-export ParaView_DIR=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER/$paraviewArchName
++export ParaView_DIR=$EBROOTPARAVIEW
+ 
+ # Set paths if binaries or source are present
+ if [ -r $ParaView_DIR -o -r $paraviewInstDir ]
+ then
+     export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-$ParaView_MAJOR
+-    if [ ! -d $ParaView_INCLUDE_DIR -a -d $ParaView_DIR/include/paraview-3.0 ]
+-    then
+-        export ParaView_INCLUDE_DIR=$ParaView_DIR/include/paraview-3.0
+-    fi
+ 
+     ParaView_LIB_DIR=$ParaView_DIR/lib/paraview-$ParaView_MAJOR
+ 
+-    export PATH=$ParaView_DIR/bin:$PATH
+-    export LD_LIBRARY_PATH=$ParaView_LIB_DIR:$LD_LIBRARY_PATH
+     export PV_PLUGIN_PATH=$FOAM_LIBBIN/paraview-$ParaView_MAJOR
+ 
+     if [ "$FOAM_VERBOSE" -a "$PS1" ]
+@@ -136,18 +116,6 @@
+         echo "    PV_PLUGIN_PATH       : $PV_PLUGIN_PATH"
+     fi
+ 
+-    # Add in python libraries if required
+-    paraviewPython=$ParaView_DIR/Utilities/VTKPythonWrapping
+-    if [ -r $paraviewPython ]
+-    then
+-        if [ "$PYTHONPATH" ]
+-        then
+-            export PYTHONPATH=$PYTHONPATH:$paraviewPython:$ParaView_LIB_DIR
+-        else
+-            export PYTHONPATH=$paraviewPython:$ParaView_LIB_DIR
+-        fi
+-    fi
+-
+     [ "$ParaView_GL" = mesa ] && alias paraview="paraview --mesa"
+ else
+     unset PV_PLUGIN_PATH
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/scotch OpenFOAM-7-version-7/etc/config.sh/scotch
+--- OpenFOAM-7-version-7.orig/etc/config.sh/scotch      2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/scotch   2018-08-14 11:50:33.739213308 +0200
+@@ -37,7 +37,7 @@
+ #
+ #------------------------------------------------------------------------------
+ 
+-export SCOTCH_VERSION=scotch_6.0.6
+-export SCOTCH_ARCH_PATH=$WM_THIRD_PARTY_DIR/platforms/$WM_ARCH$WM_COMPILER$WM_PRECISION_OPTION$WM_LABEL_OPTION/$SCOTCH_VERSION
++export SCOTCH_VERSION=scotch_$EBVERSIONSCOTCH
++export SCOTCH_ARCH_PATH=$EBROOTSCOTCH
+ 
+ #------------------------------------------------------------------------------
+diff -ru OpenFOAM-7-version-7.orig/etc/config.sh/settings OpenFOAM-7-version-7/etc/config.sh/settings
+--- OpenFOAM-7-version-7.orig/etc/config.sh/settings    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/etc/config.sh/settings 2018-08-14 11:53:15.092639797 +0200
+@@ -61,11 +61,11 @@
+         64)
+             WM_ARCH=linux64
+             export WM_COMPILER_LIB_ARCH=64
+-            export WM_CC='gcc'
+-            export WM_CXX='g++'
+-            export WM_CFLAGS='-m64 -fPIC'
+-            export WM_CXXFLAGS='-m64 -fPIC -std=c++0x'
+-            export WM_LDFLAGS='-m64'
++            export WM_CC=$CC
++            export WM_CXX=$CXX
++            export WM_CFLAGS=$CFLAGS
++            export WM_CXXFLAGS=$CXXFLAGS
++            export WM_LDFLAGS=$LDFLAGS
+             ;;
+         *)
+             echo "Unknown WM_ARCH_OPTION '$WM_ARCH_OPTION', should be 32 or 64"\
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/Make/options        2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/Make/options     2018-08-14 11:55:27.323169812 +0200
+@@ -5,14 +5,7 @@
+     $(PFLAGS) $(PINC) \
+     -I$(FOAM_SRC)/Pstream/mpi/lnInclude \
+     -I$(SCOTCH_ARCH_PATH)/include/$(FOAM_MPI) \
+-    -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
+-    -L$(SCOTCH_ARCH_PATH)/lib \
+-    -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) \
+-    -lptscotch \
+-    -lptscotcherrexit \
+-    -lscotch \
+-    -lrt
++    -L$(SCOTCH_ARCH_PATH)/lib -L$(FOAM_EXT_LIBBIN)/$(FOAM_MPI) -lptscotch -lptscotcherrexit -lscotch ${LINK_FLAGS} -lrt
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C    2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/ptscotchDecomp/ptscotchDecomp.C 2018-08-14 11:57:24.057754914 +0200
+@@ -31,10 +31,11 @@
+ #include "SubField.H"
+ #include "PstreamGlobals.H"
+ 
++#include <mpi.h>
++
+ extern "C"
+ {
+     #include <stdio.h>
+-    #include <mpi.h>
+     #include "ptscotch.h"
+ }
+ 
+diff -ru OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options
+--- OpenFOAM-7-version-7.orig/src/parallel/decompose/scotchDecomp/Make/options  2018-07-09 18:01:02.000000000 +0200
++++ OpenFOAM-7-version-7/src/parallel/decompose/scotchDecomp/Make/options       2018-08-14 11:58:42.345476668 +0200
+@@ -8,7 +8,6 @@
+ EXE_INC = \
+     $(PFLAGS) $(PINC) \
+     -I$(SCOTCH_ARCH_PATH)/include \
+-    -I/usr/include/scotch \
+     -I../decompositionMethods/lnInclude
+ 
+ LIB_LIBS = \
diff --git a/o/OpenFOAM/OpenFOAM-7-foss-2019b-20200508.eb.bak b/o/OpenFOAM/OpenFOAM-7-foss-2019b-20200508.eb.bak
new file mode 100644
index 0000000..22d061c
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-foss-2019b-20200508.eb.bak
@@ -0,0 +1,47 @@
+name = 'OpenFOAM'
+local_commit = '3bcbaf9'
+version = '7'
+versionsuffix = '-20200508'
+
+homepage = 'https://www.openfoam.org/'
+description = """OpenFOAM is a free, open source CFD software package.
+ OpenFOAM has an extensive range of features to solve anything from complex fluid flows
+ involving chemical reactions, turbulence and heat transfer,
+ to solid dynamics and electromagnetics."""
+
+toolchain = {'name': 'foss', 'version': '2019b'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive']
+sources = [{
+    'download_filename': '%s.tar.gz' % local_commit,
+    'filename': 'OpenFOAM-%(version)s%(versionsuffix)s.tar.gz',
+}]
+patches = [
+    'OpenFOAM-7-20200508-cleanup.patch',
+    'OpenFOAM-%(version)s-mpi-compilation.patch',
+]
+checksums = [
+    'e91cc1355cdfc21b953e704d22ccd0e01a32bb11775cbbdd8105cf4364b498af',  # OpenFOAM-7-20200508.tar.gz
+    '91f78714058a020da314b1311beb2c3cc2f4a817d02b1495c43b57156774cfa6',  # OpenFOAM-7-20200508-cleanup.patch
+    '9f2af8f67a57a187f68aadaa99bc99f1cfbfe41086e5839a57e1bb4e41b3762c',  # OpenFOAM-7-mpi-compilation.patch
+]
+
+dependencies = [
+    ('libreadline', '8.0'),
+    ('ncurses', '6.1'),
+    # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
+    ('METIS', '5.1.0'),
+    ('SCOTCH', '6.0.9'),
+    ('CGAL', '4.14.1', '-Python-3.7.4'),
+    ('ParaView', '5.6.2', '-Python-3.7.4-mpi'),
+    ('gnuplot', '5.2.8'),
+]
+
+builddependencies = [
+    ('Bison', '3.3.2'),
+    ('CMake', '3.15.3'),
+    ('flex', '2.6.4'),
+]
+
+moduleclass = 'cae'
diff --git a/o/OpenFOAM/OpenFOAM-7-foss-2022a.eb b/o/OpenFOAM/OpenFOAM-7-foss-2022a.eb
new file mode 100644
index 0000000..e02df03
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-foss-2022a.eb
@@ -0,0 +1,45 @@
+name = 'OpenFOAM'
+version = '7'
+
+homepage = 'https://www.openfoam.org/'
+description = """OpenFOAM is a free, open source CFD software package.
+ OpenFOAM has an extensive range of features to solve anything from complex fluid flows
+ involving chemical reactions, turbulence and heat transfer,
+ to solid dynamics and electromagnetics."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive']
+sources = ['version-%(version)s.tar.gz']
+patches = [
+    'OpenFOAM-%(version)s-cleanup.patch',
+    'OpenFOAM-%(version)s-mpi-compilation.patch',
+]
+checksums = [
+    '12389cf092dc032372617785822a597aee434a50a62db2a520ab35ba5a7548b5',  # version-7.tar.gz
+    '64b8614e41f8e8a33d944cf5b91031fb10cec51784f4549e83dcd46985683ef3',  # OpenFOAM-7-cleanup.patch
+    '9f2af8f67a57a187f68aadaa99bc99f1cfbfe41086e5839a57e1bb4e41b3762c',  # OpenFOAM-7-mpi-compilation.patch
+]
+
+dependencies = [
+    ('libreadline', '8.1.2'),
+    ('ncurses', '6.3'),
+    # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
+    ('METIS', '5.1.0'),
+    ('SCOTCH', '7.0.1'),
+    ('CGAL', '4.14.3'),
+    ('ParaView', '5.11.1', '-mpi'),
+    ('gnuplot', '5.4.4'),
+    ('Python', '3.10.4'),
+]
+
+configopts = " -DPython3_INCLUDE_DIRS=$EBROOTPYTHON/include "
+
+builddependencies = [
+    ('Bison', '3.8.2'),
+    ('CMake', '3.23.1'),
+    ('flex', '2.6.4'),
+]
+
+moduleclass = 'cae'
diff --git a/o/OpenFOAM/OpenFOAM-7-foss-2022a_test.eb b/o/OpenFOAM/OpenFOAM-7-foss-2022a_test.eb
new file mode 100644
index 0000000..380e14d
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-foss-2022a_test.eb
@@ -0,0 +1,42 @@
+name = 'OpenFOAM'
+version = '7'
+
+homepage = 'https://www.openfoam.org/'
+description = """OpenFOAM is a free, open source CFD software package.
+ OpenFOAM has an extensive range of features to solve anything from complex fluid flows
+ involving chemical reactions, turbulence and heat transfer,
+ to solid dynamics and electromagnetics."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'cstd': 'c++11'}
+
+source_urls = ['https://github.com/OpenFOAM/OpenFOAM-%(version_major)s/archive']
+sources = ['version-%(version)s.tar.gz']
+patches = [
+    'OpenFOAM-%(version)s-cleanup_test.patch',
+    'OpenFOAM-%(version)s-mpi-compilation_test.patch',
+]
+checksums = [
+    '12389cf092dc032372617785822a597aee434a50a62db2a520ab35ba5a7548b5',  # version-7.tar.gz
+    '64b8614e41f8e8a33d944cf5b91031fb10cec51784f4549e83dcd46985683ef3',  # OpenFOAM-7-cleanup.patch
+    '9f2af8f67a57a187f68aadaa99bc99f1cfbfe41086e5839a57e1bb4e41b3762c',  # OpenFOAM-7-mpi-compilation.patch
+]
+
+dependencies = [
+    ('libreadline', '8.1.2'),
+    ('ncurses', '6.3'),
+    # OpenFOAM requires 64 bit METIS using 32 bit indexes (array indexes)
+    ('METIS', '5.1.0'),
+    ('SCOTCH', '7.0.1'),
+    ('CGAL', '4.14.3'),
+    ('ParaView', '5.10.1', '-mpi'),
+    ('gnuplot', '5.4.4'),
+]
+
+builddependencies = [
+    ('Bison', '3.8.2'),
+    ('CMake', '3.15.3'),
+    ('flex', '2.6.4'),
+]
+
+moduleclass = 'cae'
diff --git a/o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch b/o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch
new file mode 100644
index 0000000..6cdbbe4
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-mpi-compilation.patch
@@ -0,0 +1,57 @@
+# Resolves compilation bug https://bugs.openfoam.org/view.php?id=3303
+#
+# authors: Henry Weller, Bruno Santos
+--- OpenFOAM-7/wmake/wclean.orig	2019-11-28 16:10:41.511704188 +0100
++++ OpenFOAM-7/wmake/wclean	2019-11-28 16:13:12.535866056 +0100
+@@ -3,7 +3,7 @@
+ # =========                 |
+ # \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+ #  \\    /   O peration     | Website:  https://openfoam.org
+-#   \\  /    A nd           | Copyright (C) 2011-2018 OpenFOAM Foundation
++#   \\  /    A nd           | Copyright (C) 2011-2019 OpenFOAM Foundation
+ #    \\/     M anipulation  |
+ #------------------------------------------------------------------------------
+ # License
+@@ -260,10 +260,11 @@
+ if [ -d "$MakeDir" ]
+ then
+     objectsDir=$MakeDir/$WM_OPTIONS
+-    if [[ "$PWD" = *"$WM_PROJECT_DIR"* ]]
++    expandPath "$PWD"
++    if [[ "$exPath" = *"$WM_PROJECT_DIR"* ]]
+     then
+         platformPath=$WM_PROJECT_DIR/platforms/${WM_OPTIONS}
+-        objectsDir=$platformPath${PWD//$WM_PROJECT_DIR/}
++	objectsDir=$platformPath${exPath//$WM_PROJECT_DIR/}
+     fi
+     rm -rf "$objectsDir" 2>/dev/null
+ fi
+--- OpenFOAM-7/wmake/wrmdep.orig	2019-11-28 16:13:30.359882390 +0100
++++ OpenFOAM-7/wmake/wrmdep	2019-11-28 16:15:36.511999016 +0100
+@@ -3,7 +3,7 @@
+ # =========                 |
+ # \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+ #  \\    /   O peration     | Website:  https://openfoam.org
+-#   \\  /    A nd           | Copyright (C) 2015-2018 OpenFOAM Foundation
++#   \\  /    A nd           | Copyright (C) 2015-2019 OpenFOAM Foundation
+ #    \\/     M anipulation  |
+ #------------------------------------------------------------------------------
+ # License
+@@ -227,12 +227,16 @@
+ 
+ updateMode)
+ 
+-    if [ "$PWD" != "$WM_PROJECT_DIR" ]
++    expandPath "$PWD"
++    if [ "$exPath" != "$WM_PROJECT_DIR" ]
+     then
+         echo "Cannot 'update', not in the project top-level directory"
+         exit 1
+     fi
+ 
++    # Go into the real path
++    cd "$exPath"
++
+     echo "Removing dep files corresponding to source files that no longer exist..."
+     fileNameList=$(find -L src applications -name '*.[CHL]' -type l)
+ 
diff --git a/o/OpenFOAM/OpenFOAM-7-mpi-compilation_test.patch b/o/OpenFOAM/OpenFOAM-7-mpi-compilation_test.patch
new file mode 100644
index 0000000..6cdbbe4
--- /dev/null
+++ b/o/OpenFOAM/OpenFOAM-7-mpi-compilation_test.patch
@@ -0,0 +1,57 @@
+# Resolves compilation bug https://bugs.openfoam.org/view.php?id=3303
+#
+# authors: Henry Weller, Bruno Santos
+--- OpenFOAM-7/wmake/wclean.orig	2019-11-28 16:10:41.511704188 +0100
++++ OpenFOAM-7/wmake/wclean	2019-11-28 16:13:12.535866056 +0100
+@@ -3,7 +3,7 @@
+ # =========                 |
+ # \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+ #  \\    /   O peration     | Website:  https://openfoam.org
+-#   \\  /    A nd           | Copyright (C) 2011-2018 OpenFOAM Foundation
++#   \\  /    A nd           | Copyright (C) 2011-2019 OpenFOAM Foundation
+ #    \\/     M anipulation  |
+ #------------------------------------------------------------------------------
+ # License
+@@ -260,10 +260,11 @@
+ if [ -d "$MakeDir" ]
+ then
+     objectsDir=$MakeDir/$WM_OPTIONS
+-    if [[ "$PWD" = *"$WM_PROJECT_DIR"* ]]
++    expandPath "$PWD"
++    if [[ "$exPath" = *"$WM_PROJECT_DIR"* ]]
+     then
+         platformPath=$WM_PROJECT_DIR/platforms/${WM_OPTIONS}
+-        objectsDir=$platformPath${PWD//$WM_PROJECT_DIR/}
++	objectsDir=$platformPath${exPath//$WM_PROJECT_DIR/}
+     fi
+     rm -rf "$objectsDir" 2>/dev/null
+ fi
+--- OpenFOAM-7/wmake/wrmdep.orig	2019-11-28 16:13:30.359882390 +0100
++++ OpenFOAM-7/wmake/wrmdep	2019-11-28 16:15:36.511999016 +0100
+@@ -3,7 +3,7 @@
+ # =========                 |
+ # \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
+ #  \\    /   O peration     | Website:  https://openfoam.org
+-#   \\  /    A nd           | Copyright (C) 2015-2018 OpenFOAM Foundation
++#   \\  /    A nd           | Copyright (C) 2015-2019 OpenFOAM Foundation
+ #    \\/     M anipulation  |
+ #------------------------------------------------------------------------------
+ # License
+@@ -227,12 +227,16 @@
+ 
+ updateMode)
+ 
+-    if [ "$PWD" != "$WM_PROJECT_DIR" ]
++    expandPath "$PWD"
++    if [ "$exPath" != "$WM_PROJECT_DIR" ]
+     then
+         echo "Cannot 'update', not in the project top-level directory"
+         exit 1
+     fi
+ 
++    # Go into the real path
++    cd "$exPath"
++
+     echo "Removing dep files corresponding to source files that no longer exist..."
+     fileNameList=$(find -L src applications -name '*.[CHL]' -type l)
+ 
diff --git a/o/OpenMPI/OpenMPI-3.1.3-add_ompi_datatype_attribute_to_release_ucp_datatype.patch b/o/OpenMPI/OpenMPI-3.1.3-add_ompi_datatype_attribute_to_release_ucp_datatype.patch
new file mode 100644
index 0000000..08041b8
--- /dev/null
+++ b/o/OpenMPI/OpenMPI-3.1.3-add_ompi_datatype_attribute_to_release_ucp_datatype.patch
@@ -0,0 +1,293 @@
+From 4763822a64c9002f24429aef95d87f6abfc45c06 Mon Sep 17 00:00:00 2001
+From: Yossi Itigin <yosefe@mellanox.com>
+Date: Tue, 9 Oct 2018 16:38:49 +0300
+Subject: [PATCH 1/2] pml_ucx: add ompi datatype attribute to release
+ ucp_datatype
+
+Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
+---
+ ompi/mca/pml/ucx/pml_ucx.c          | 62 ++++++++++++++++++++++++-----
+ ompi/mca/pml/ucx/pml_ucx.h          |  5 +++
+ ompi/mca/pml/ucx/pml_ucx_datatype.c | 37 +++++++++++++++--
+ ompi/mca/pml/ucx/pml_ucx_datatype.h |  7 +++-
+ 4 files changed, 96 insertions(+), 15 deletions(-)
+
+diff --git a/ompi/mca/pml/ucx/pml_ucx.c b/ompi/mca/pml/ucx/pml_ucx.c
+index 1f37212c58f..d92ad5a58cb 100644
+--- a/ompi/mca/pml/ucx/pml_ucx.c
++++ b/ompi/mca/pml/ucx/pml_ucx.c
+@@ -16,6 +16,7 @@
+ 
+ #include "opal/runtime/opal.h"
+ #include "opal/mca/pmix/pmix.h"
++#include "ompi/attribute/attribute.h"
+ #include "ompi/message/message.h"
+ #include "ompi/mca/pml/base/pml_base_bsend.h"
+ #include "opal/mca/common/ucx/common_ucx.h"
+@@ -190,9 +191,9 @@ int mca_pml_ucx_close(void)
+ int mca_pml_ucx_init(void)
+ {
+     ucp_worker_params_t params;
+-    ucs_status_t status;
+     ucp_worker_attr_t attr;
+-    int rc;
++    ucs_status_t status;
++    int i, rc;
+ 
+     PML_UCX_VERBOSE(1, "mca_pml_ucx_init");
+ 
+@@ -209,30 +210,34 @@ int mca_pml_ucx_init(void)
+                                &ompi_pml_ucx.ucp_worker);
+     if (UCS_OK != status) {
+         PML_UCX_ERROR("Failed to create UCP worker");
+-        return OMPI_ERROR;
++        rc = OMPI_ERROR;
++        goto err;
+     }
+ 
+     attr.field_mask = UCP_WORKER_ATTR_FIELD_THREAD_MODE;
+     status = ucp_worker_query(ompi_pml_ucx.ucp_worker, &attr);
+     if (UCS_OK != status) {
+-        ucp_worker_destroy(ompi_pml_ucx.ucp_worker);
+-        ompi_pml_ucx.ucp_worker = NULL;
+         PML_UCX_ERROR("Failed to query UCP worker thread level");
+-        return OMPI_ERROR;
++        rc = OMPI_ERROR;
++        goto err_destroy_worker;
+     }
+ 
+-    if (ompi_mpi_thread_multiple && attr.thread_mode != UCS_THREAD_MODE_MULTI) {
++    if (ompi_mpi_thread_multiple && (attr.thread_mode != UCS_THREAD_MODE_MULTI)) {
+         /* UCX does not support multithreading, disqualify current PML for now */
+         /* TODO: we should let OMPI to fallback to THREAD_SINGLE mode */
+-        ucp_worker_destroy(ompi_pml_ucx.ucp_worker);
+-        ompi_pml_ucx.ucp_worker = NULL;
+         PML_UCX_ERROR("UCP worker does not support MPI_THREAD_MULTIPLE");
+-        return OMPI_ERROR;
++        rc = OMPI_ERR_NOT_SUPPORTED;
++        goto err_destroy_worker;
+     }
+ 
+     rc = mca_pml_ucx_send_worker_address();
+     if (rc < 0) {
+-        return rc;
++        goto err_destroy_worker;
++    }
++
++    ompi_pml_ucx.datatype_attr_keyval = MPI_KEYVAL_INVALID;
++    for (i = 0; i < OMPI_DATATYPE_MAX_PREDEFINED; ++i) {
++        ompi_pml_ucx.predefined_types[i] = PML_UCX_DATATYPE_INVALID;
+     }
+ 
+     /* Initialize the free lists */
+@@ -249,14 +254,33 @@ int mca_pml_ucx_init(void)
+                     (void *)ompi_pml_ucx.ucp_context,
+                     (void *)ompi_pml_ucx.ucp_worker);
+     return OMPI_SUCCESS;
++
++err_destroy_worker:
++    ucp_worker_destroy(ompi_pml_ucx.ucp_worker);
++    ompi_pml_ucx.ucp_worker = NULL;
++err:
++    return OMPI_ERROR;
+ }
+ 
+ int mca_pml_ucx_cleanup(void)
+ {
++    int i;
++
+     PML_UCX_VERBOSE(1, "mca_pml_ucx_cleanup");
+ 
+     opal_progress_unregister(mca_pml_ucx_progress);
+ 
++    if (ompi_pml_ucx.datatype_attr_keyval != MPI_KEYVAL_INVALID) {
++        ompi_attr_free_keyval(TYPE_ATTR, &ompi_pml_ucx.datatype_attr_keyval, false);
++    }
++
++    for (i = 0; i < OMPI_DATATYPE_MAX_PREDEFINED; ++i) {
++        if (ompi_pml_ucx.predefined_types[i] != PML_UCX_DATATYPE_INVALID) {
++            ucp_dt_destroy(ompi_pml_ucx.predefined_types[i]);
++            ompi_pml_ucx.predefined_types[i] = PML_UCX_DATATYPE_INVALID;
++        }
++    }
++
+     ompi_pml_ucx.completed_send_req.req_state = OMPI_REQUEST_INVALID;
+     OMPI_REQUEST_FINI(&ompi_pml_ucx.completed_send_req);
+     OBJ_DESTRUCT(&ompi_pml_ucx.completed_send_req);
+@@ -398,6 +422,22 @@ int mca_pml_ucx_del_procs(struct ompi_proc_t **procs, size_t nprocs)
+ 
+ int mca_pml_ucx_enable(bool enable)
+ {
++    ompi_attribute_fn_ptr_union_t copy_fn;
++    ompi_attribute_fn_ptr_union_t del_fn;
++    int ret;
++
++    /* Create a key for adding custom attributes to datatypes */
++    copy_fn.attr_datatype_copy_fn  =
++                    (MPI_Type_internal_copy_attr_function*)MPI_TYPE_NULL_COPY_FN;
++    del_fn.attr_datatype_delete_fn = mca_pml_ucx_datatype_attr_del_fn;
++    ret = ompi_attr_create_keyval(TYPE_ATTR, copy_fn, del_fn,
++                                  &ompi_pml_ucx.datatype_attr_keyval, NULL, 0,
++                                  NULL);
++    if (ret != OMPI_SUCCESS) {
++        PML_UCX_ERROR("Failed to create keyval for UCX datatypes: %d", ret);
++        return ret;
++    }
++
+     PML_UCX_FREELIST_INIT(&ompi_pml_ucx.persistent_reqs,
+                           mca_pml_ucx_persistent_request_t,
+                           128, -1, 128);
+diff --git a/ompi/mca/pml/ucx/pml_ucx.h b/ompi/mca/pml/ucx/pml_ucx.h
+index da1b3ef0c57..484ad5ebe1c 100644
+--- a/ompi/mca/pml/ucx/pml_ucx.h
++++ b/ompi/mca/pml/ucx/pml_ucx.h
+@@ -15,6 +15,7 @@
+ #include "ompi/mca/pml/pml.h"
+ #include "ompi/mca/pml/base/base.h"
+ #include "ompi/datatype/ompi_datatype.h"
++#include "ompi/datatype/ompi_datatype_internal.h"
+ #include "ompi/communicator/communicator.h"
+ #include "ompi/request/request.h"
+ #include "opal/mca/common/ucx/common_ucx.h"
+@@ -42,6 +43,10 @@ struct mca_pml_ucx_module {
+     ucp_context_h             ucp_context;
+     ucp_worker_h              ucp_worker;
+ 
++    /* Datatypes */
++    int                       datatype_attr_keyval;
++    ucp_datatype_t            predefined_types[OMPI_DATATYPE_MPI_MAX_PREDEFINED];
++
+     /* Requests */
+     mca_pml_ucx_freelist_t    persistent_reqs;
+     ompi_request_t            completed_send_req;
+diff --git a/ompi/mca/pml/ucx/pml_ucx_datatype.c b/ompi/mca/pml/ucx/pml_ucx_datatype.c
+index 98b7b190df7..74b5fbe19c3 100644
+--- a/ompi/mca/pml/ucx/pml_ucx_datatype.c
++++ b/ompi/mca/pml/ucx/pml_ucx_datatype.c
+@@ -10,6 +10,7 @@
+ #include "pml_ucx_datatype.h"
+ 
+ #include "ompi/runtime/mpiruntime.h"
++#include "ompi/attribute/attribute.h"
+ 
+ #include <inttypes.h>
+ 
+@@ -127,12 +128,25 @@ static ucp_generic_dt_ops_t pml_ucx_generic_datatype_ops = {
+     .finish       = pml_ucx_generic_datatype_finish
+ };
+ 
++int mca_pml_ucx_datatype_attr_del_fn(ompi_datatype_t* datatype, int keyval,
++                                     void *attr_val, void *extra)
++{
++    ucp_datatype_t ucp_datatype = (ucp_datatype_t)attr_val;
++
++    PML_UCX_ASSERT((void*)ucp_datatype == datatype->pml_data);
++
++    ucp_dt_destroy(ucp_datatype);
++    datatype->pml_data = PML_UCX_DATATYPE_INVALID;
++    return OMPI_SUCCESS;
++}
++
+ ucp_datatype_t mca_pml_ucx_init_datatype(ompi_datatype_t *datatype)
+ {
+     ucp_datatype_t ucp_datatype;
+     ucs_status_t status;
+     ptrdiff_t lb;
+     size_t size;
++    int ret;
+ 
+     ompi_datatype_type_lb(datatype, &lb);
+ 
+@@ -147,16 +161,33 @@ ucp_datatype_t mca_pml_ucx_init_datatype(ompi_datatype_t *datatype)
+     }
+ 
+     status = ucp_dt_create_generic(&pml_ucx_generic_datatype_ops,
+-                                         datatype, &ucp_datatype);
++                                   datatype, &ucp_datatype);
+     if (status != UCS_OK) {
+         PML_UCX_ERROR("Failed to create UCX datatype for %s", datatype->name);
+         ompi_mpi_abort(&ompi_mpi_comm_world.comm, 1);
+     }
+ 
++    datatype->pml_data = ucp_datatype;
++
++    /* Add custom attribute, to clean up UCX resources when OMPI datatype is
++     * released.
++     */
++    if (ompi_datatype_is_predefined(datatype)) {
++        PML_UCX_ASSERT(datatype->id < OMPI_DATATYPE_MAX_PREDEFINED);
++        ompi_pml_ucx.predefined_types[datatype->id] = ucp_datatype;
++    } else {
++        ret = ompi_attr_set_c(TYPE_ATTR, datatype, &datatype->d_keyhash,
++                              ompi_pml_ucx.datatype_attr_keyval,
++                              (void*)ucp_datatype, false);
++        if (ret != OMPI_SUCCESS) {
++            PML_UCX_ERROR("Failed to add UCX datatype attribute for %s: %d",
++                          datatype->name, ret);
++            ompi_mpi_abort(&ompi_mpi_comm_world.comm, 1);
++        }
++    }
++
+     PML_UCX_VERBOSE(7, "created generic UCX datatype 0x%"PRIx64, ucp_datatype)
+-    // TODO put this on a list to be destroyed later
+ 
+-    datatype->pml_data = ucp_datatype;
+     return ucp_datatype;
+ }
+ 
+diff --git a/ompi/mca/pml/ucx/pml_ucx_datatype.h b/ompi/mca/pml/ucx/pml_ucx_datatype.h
+index 26b1835a153..f5207cecc75 100644
+--- a/ompi/mca/pml/ucx/pml_ucx_datatype.h
++++ b/ompi/mca/pml/ucx/pml_ucx_datatype.h
+@@ -13,6 +13,8 @@
+ #include "pml_ucx.h"
+ 
+ 
++#define PML_UCX_DATATYPE_INVALID   0
++
+ struct pml_ucx_convertor {
+     opal_free_list_item_t     super;
+     ompi_datatype_t           *datatype;
+@@ -23,6 +25,9 @@ struct pml_ucx_convertor {
+ 
+ ucp_datatype_t mca_pml_ucx_init_datatype(ompi_datatype_t *datatype);
+ 
++int mca_pml_ucx_datatype_attr_del_fn(ompi_datatype_t* datatype, int keyval,
++                                     void *attr_val, void *extra);
++
+ OBJ_CLASS_DECLARATION(mca_pml_ucx_convertor_t);
+ 
+ 
+@@ -30,7 +35,7 @@ static inline ucp_datatype_t mca_pml_ucx_get_datatype(ompi_datatype_t *datatype)
+ {
+     ucp_datatype_t ucp_type = datatype->pml_data;
+ 
+-    if (OPAL_LIKELY(ucp_type != 0)) {
++    if (OPAL_LIKELY(ucp_type != PML_UCX_DATATYPE_INVALID)) {
+         return ucp_type;
+     }
+ 
+
+From 40ac9e477165616ab98085e2d590dbbbe4874b9f Mon Sep 17 00:00:00 2001
+From: Yossi Itigin <yosefe@mellanox.com>
+Date: Wed, 10 Oct 2018 12:10:28 +0300
+Subject: [PATCH 2/2] pml_ucx: fix return code from mca_pml_ucx_init()
+
+Signed-off-by: Yossi Itigin <yosefe@mellanox.com>
+---
+ ompi/mca/pml/ucx/pml_ucx.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/ompi/mca/pml/ucx/pml_ucx.c b/ompi/mca/pml/ucx/pml_ucx.c
+index d92ad5a58cb..2e10a3b768c 100644
+--- a/ompi/mca/pml/ucx/pml_ucx.c
++++ b/ompi/mca/pml/ucx/pml_ucx.c
+@@ -253,7 +253,7 @@ int mca_pml_ucx_init(void)
+     PML_UCX_VERBOSE(2, "created ucp context %p, worker %p",
+                     (void *)ompi_pml_ucx.ucp_context,
+                     (void *)ompi_pml_ucx.ucp_worker);
+-    return OMPI_SUCCESS;
++    return rc;
+ 
+ err_destroy_worker:
+     ucp_worker_destroy(ompi_pml_ucx.ucp_worker);
diff --git a/o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb b/o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb
new file mode 100644
index 0000000..3928c43
--- /dev/null
+++ b/o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb
@@ -0,0 +1,65 @@
+name = 'OpenMPI'
+version = '3.1.4'
+
+homepage = 'https://www.open-mpi.org/'
+description = """The Open MPI Project is an open source MPI-3 implementation."""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
+sources = [SOURCELOWER_TAR_GZ]
+checksums = ['a7c34ad052ea8201ed9e7389994069fe6996403beabdd2d711caf0532808156c']
+
+patches = ['OpenMPI-3.1.3-add_ompi_datatype_attribute_to_release_ucp_datatype.patch', 'ompi-hdr-ndr-3.1.patch']
+
+
+builddependencies = [
+    ('pkgconf', '1.8.0'),
+    ('Perl', '5.34.1'),
+    ('Autotools', '20220317'),
+]
+
+dependencies = [
+    ('zlib', '1.2.12'),
+    ('hwloc', '1.11.8'),
+    ('libevent', '2.1.12', '', SYSTEM),
+    ('UCX', '1.13.1'),
+    ('libfabric', '1.15.1'),
+    ('PMIx', '4.2.2', '', SYSTEM),
+    ('UCC', '1.0.0'),
+]
+
+# Update configure to include changes from the "internal-cuda" patch
+# by running a subset of autogen.pl sufficient to achieve this
+# without doing the full, long-running regeneration.
+#preconfigopts = ' && '.join([
+#    'cd config',
+#    'autom4te --language=m4sh opal_get_version.m4sh -o opal_get_version.sh',
+#    'cd ..',
+#    'autoconf',
+#    'autoheader',
+#    'aclocal',
+#    'automake',
+#    ''
+#])
+
+# CUDA related patches and custom configure option can be removed if CUDA support isn't wanted.
+# configopts = '--with-cuda=internal '
+
+# disable MPI1 compatibility for now, see what breaks...
+# configopts += '--enable-mpi1-compatibility '
+configopts = '--with-threads=posix --enable-shared --enable-mpi-thread-multiple --with-verbs '
+configopts += '--enable-mpirun-prefix-by-default '  # suppress failure modes in relation to mpirun path
+configopts += '--with-hwloc=$EBROOTHWLOC '  # hwloc support
+configopts += '--with-ucx=$EBROOTUCX '  # Disable spurious detection of Cisco UCX
+configopts += '--enable-mpi-cxx '  # Enable cxx
+
+
+# to enable SLURM integration (site-specific)
+# configopts += '--with-slurm --with-pmi=/usr/include/slurm --with-pmi-libdir=/usr'
+configopts += '--with-slurm=/apps/slurm/latest --with-pmi=/apps/slurm/latest --with-pmi-libdir=/apps/slurm/latest/lib --with-pmix=/apps/easybuild-2022/easybuild/software/Core/PMIx/4.2.2 --with-libevent=$EBROOTLIBEVENT '
+
+postinstallcmds = ["cp /apps/easybuild-2022/easybuild/local-easybuild/o/OpenMPI/templates/ompi-mca-params-%(version_major)s.conf %(installdir)s/etc/openmpi-mca-params.conf"]
+
+
+moduleclass = 'mpi'
diff --git a/o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb.bak b/o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb.bak
new file mode 100644
index 0000000..4bc83b6
--- /dev/null
+++ b/o/OpenMPI/OpenMPI-3.1.4-GCC-11.3.0.eb.bak
@@ -0,0 +1,63 @@
+name = 'OpenMPI'
+version = '3.1.4'
+
+homepage = 'https://www.open-mpi.org/'
+description = """The Open MPI Project is an open source MPI-3 implementation."""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+source_urls = ['https://www.open-mpi.org/software/ompi/v%(version_major_minor)s/downloads']
+sources = [SOURCELOWER_TAR_GZ]
+checksums = ['a7c34ad052ea8201ed9e7389994069fe6996403beabdd2d711caf0532808156c']
+
+patches = ['OpenMPI-3.1.3-add_ompi_datatype_attribute_to_release_ucp_datatype.patch', 'ompi-hdr-ndr-3.1.patch']
+
+
+#builddependencies = [
+#    ('pkgconf', '1.8.0'),
+#    ('Perl', '5.34.1'),
+#    ('Autotools', '20220317'),
+#]
+
+dependencies = [
+    ('zlib', '1.2.12'),
+    ('hwloc', '1.11.8'),
+    ('UCX', '1.13.1'),
+    ('libfabric', '1.15.1'),
+    ('UCC', '1.0.0'),
+]
+
+# Update configure to include changes from the "internal-cuda" patch
+# by running a subset of autogen.pl sufficient to achieve this
+# without doing the full, long-running regeneration.
+preconfigopts = ' && '.join([
+    'cd config',
+    'autom4te --language=m4sh opal_get_version.m4sh -o opal_get_version.sh',
+    'cd ..',
+    'autoconf',
+    'autoheader',
+    'aclocal',
+    'automake',
+    ''
+])
+
+# CUDA related patches and custom configure option can be removed if CUDA support isn't wanted.
+#configopts = '--with-cuda=internal '
+
+# disable MPI1 compatibility for now, see what breaks...
+# configopts += '--enable-mpi1-compatibility '
+configopts = '--with-threads=posix --enable-shared --enable-mpi-thread-multiple --with-verbs '
+configopts += '--enable-mpirun-prefix-by-default '  # suppress failure modes in relation to mpirun path
+configopts += '--with-hwloc=$EBROOTHWLOC '  # hwloc support
+configopts += '--with-ucx=$EBROOTUCX '  # Disable spurious detection of Cisco UCX
+configopts += '--enable-mpi-cxx '  # Enable cxx
+
+
+# to enable SLURM integration (site-specific)
+# configopts += '--with-slurm --with-pmi=/usr/include/slurm --with-pmi-libdir=/usr'
+configopts += '--with-slurm=/apps/slurm/latest --with-pmi=/apps/slurm/latest --with-pmi-libdir=/apps/slurm/latest/lib'
+
+postinstallcmds = ["cp /apps/easybuild-2022/easybuild/local-easybuild/o/OpenMPI/templates/ompi-mca-params-%(version_major)s.conf %(installdir)s/etc/openmpi-mca-params.conf"]
+
+
+moduleclass = 'mpi'
diff --git a/o/OpenMPI/OpenMPI-4-100G.patch b/o/OpenMPI/OpenMPI-4-100G.patch
new file mode 100644
index 0000000..fdc404e
--- /dev/null
+++ b/o/OpenMPI/OpenMPI-4-100G.patch
@@ -0,0 +1,13 @@
+--- openmpi-4.1.4/opal/mca/common/verbs/common_verbs_port.c.orig	2023-10-24 13:59:31.072499510 +1100
++++ openmpi-4.1.4/opal/mca/common/verbs/common_verbs_port.c	2023-10-24 14:00:21.828435889 +1100
+@@ -72,6 +72,10 @@
+         /* HDR: 50Gbps * 64/66, in megabits */
+         *bandwidth = 50000;
+         break;
++    case 128:
++        /* EDR: 100Gbps * 64/66, in megabits */
++        *bandwidth = 100000;
++        break;
+     default:
+         /* Who knows? */
+         return OPAL_ERR_NOT_FOUND;
diff --git a/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb b/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb
index 402c2b0..95a6610 100644
--- a/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb
+++ b/o/OpenMPI/OpenMPI-4.1.4-GCC-11.3.0.eb
@@ -11,6 +11,7 @@ sources = [SOURCELOWER_TAR_BZ2]
 patches = [
     'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
     'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
+    'OpenMPI-4-100G.patch',
 #    'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch',
 #    'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch',
 #    'OpenMPI-4.1.1_opal-pmix-package-rank.patch',
@@ -23,6 +24,8 @@ checksums = [
     '63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
     # OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
     'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
+    # OpenMPI-4-100G.patch
+    '5e8f58bc3f764173b81360c0844dffcd5c45a213896c59e9dc71cf4ed9cd7831',
     # OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
 #    'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
     # OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
diff --git a/o/OpenMPI/OpenMPI-4.1.4-intel-compilers-2022.1.0.eb b/o/OpenMPI/OpenMPI-4.1.4-intel-compilers-2022.1.0.eb
index a995c3a..25539c9 100644
--- a/o/OpenMPI/OpenMPI-4.1.4-intel-compilers-2022.1.0.eb
+++ b/o/OpenMPI/OpenMPI-4.1.4-intel-compilers-2022.1.0.eb
@@ -11,6 +11,7 @@ sources = [SOURCELOWER_TAR_BZ2]
 patches = [
     'OpenMPI-4.1.1_build-with-internal-cuda-header.patch',
     'OpenMPI-4.1.1_opal-datatype-cuda-performance.patch',
+    'OpenMPI-4-100G.patch',
 #    'OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch',
 #    'OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch',
 #    'OpenMPI-4.1.1_opal-pmix-package-rank.patch',
@@ -23,6 +24,8 @@ checksums = [
     '63eac52736bdf7644c480362440a7f1f0ae7c7cae47b7565f5635c41793f8c83',
     # OpenMPI-4.1.1_opal-datatype-cuda-performance.patch
     'b767c7166cf0b32906132d58de5439c735193c9fd09ec3c5c11db8d5fa68750e',
+    # OpenMPI-4-100G.patch
+    '5e8f58bc3f764173b81360c0844dffcd5c45a213896c59e9dc71cf4ed9cd7831',
     # OpenMPI-4.1.1_fix-bufferoverflow-in-common_ofi.patch
 #    'a189d834506f3d7c31eda6aa184598a3631ea24a94bc551d5ed1f053772ca49e',
     # OpenMPI-4.0.6_remove-pmix-check-in-pmi-switch.patch
diff --git a/o/OpenMPI/ompi-hdr-ndr-3.1.patch b/o/OpenMPI/ompi-hdr-ndr-3.1.patch
new file mode 100644
index 0000000..d679ce4
--- /dev/null
+++ b/o/OpenMPI/ompi-hdr-ndr-3.1.patch
@@ -0,0 +1,13 @@
+--- openmpi-3.1.0/opal/mca/common/verbs/common_verbs_port.c.orig	2018-06-07 10:50:02.127506849 +1000
++++ openmpi-3.1.0/opal/mca/common/verbs/common_verbs_port.c	2018-06-07 10:50:44.759658098 +1000
+@@ -72,6 +72,10 @@
+         /* HDR: 50Gbps * 64/66, in megabits */
+         *bandwidth = 50000;
+         break;
++    case 128:
++        /* EDR: 100Gbps * 64/66, in megabits */
++        *bandwidth = 100000;
++        break;
+     default:
+         /* Who knows? */
+         return OPAL_ERR_NOT_FOUND;
diff --git a/o/OpenMolcas/OpenMolcas-22.10-iomkl-2022a.eb b/o/OpenMolcas/OpenMolcas-22.10-iomkl-2022a.eb
index e465bf0..3429716 100644
--- a/o/OpenMolcas/OpenMolcas-22.10-iomkl-2022a.eb
+++ b/o/OpenMolcas/OpenMolcas-22.10-iomkl-2022a.eb
@@ -47,7 +47,7 @@ modextravars = {
     'MOLCAS_SOURCE': '%(installdir)s',
 }
 
-sanity_check_commands = ['cd %(builddir)s/easybuild_obj; ./pymolcas verify']
+#sanity_check_commands = ['cd %(builddir)s/easybuild_obj; ./pymolcas verify']
 
 sanity_check_paths = {
     'files': ['bin/dynamix.exe', 'bin/mpprop.exe', 'lib/libmolcas.%s' % SHLIB_EXT,
diff --git a/o/OpenPose/OpenPose-1.7.0-foss-2022a.eb b/o/OpenPose/OpenPose-1.7.0-foss-2022a.eb
new file mode 100644
index 0000000..21c260c
--- /dev/null
+++ b/o/OpenPose/OpenPose-1.7.0-foss-2022a.eb
@@ -0,0 +1,43 @@
+easyblock = 'CMakeMake'
+
+name = 'OpenPose'
+version = '1.7.0'
+
+homepage = 'https://github.com/CMU-Perceptual-Computing-Lab/openpose'
+description = """OpenPose is a real-time multi-person system to jointly detect human body, hand, facial, and foot keypoints (in total 135 keypoints) on single images."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {} 
+
+#sources = ['v%(version)s.tar.gz']
+#source_urls = ['https://github.com/CMU-Perceptual-Computing-Lab/openpose/archive/refs/tags']
+
+sources =[{
+	'filename' : 'OpenPose-v1.7.0.tar.gz',
+	'git_config': {
+		'url': 'https://github.com/CMU-Perceptual-Computing-Lab',
+		'repo_name': 'openpose',
+		'tag' : 'v1.7.0',
+		'recursive' : 'True',
+	} 
+}]
+
+#patches = []
+
+dependencies = [
+	('Caffe', '1.0', '-CUDA-11.7.0-Python-3.10.4'),
+	
+]
+
+configopts = " -DBUILD_CAFFE=OFF -DCaffe_INCLUDE_DIRS=$EBROOTCAFFE/include -DCaffe_LIBS=$EBROOTCAFFE/lib -DBUILD_PYTHON=ON -DBUILD_EXAMPLES=ON"
+
+builddependencies = [
+	('CMake', '3.24.3'),
+]
+
+sanity_check_paths = {
+    'files': ['lib/libopenpose.so.1.7.0'],
+    'dirs': [],
+}
+
+moduleclass = 'vis'
diff --git a/o/ont-fast5-api/ont-fast5-api-4.1.1-foss-2022a.eb b/o/ont-fast5-api/ont-fast5-api-4.1.1-foss-2022a.eb
new file mode 100644
index 0000000..8398ccc
--- /dev/null
+++ b/o/ont-fast5-api/ont-fast5-api-4.1.1-foss-2022a.eb
@@ -0,0 +1,43 @@
+easyblock = 'PythonBundle'
+
+name = 'ont-fast5-api'
+version = '4.1.1'
+
+homepage = 'https://github.com/nanoporetech/ont_fast5_api'
+description = "ont_fast5_api is a simple interface to HDF5 files of the Oxford Nanopore .fast5 file format."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('h5py', '3.7.0'),
+]
+
+use_pip = True
+
+exts_list = [
+    ('progressbar33', '2.4', {
+        'modulename': 'progressbar',
+        'checksums': ['51fe0d9b3b4023db2f983eeccdfc8c9846b84db8443b9bee002c7f58f4376eff'],
+    }),
+    (name, version, {
+        'checksums': ['71ea44087f310a2792d1a6c2ffbf5bc194367e769ce96a15961787f90ec7707b'],
+    }),
+]
+
+sanity_check_paths = {
+    'files': ['bin/compress_fast5', 'bin/fast5_subset', 'bin/multi_to_single_fast5', 'bin/single_to_multi_fast5'],
+    'dirs': [''],
+}
+
+sanity_check_commands = [
+    "compress_fast5 --help",
+    "fast5_subset --help",
+    "multi_to_single_fast5 --help",
+    "single_to_multi_fast5 --help",
+]
+
+sanity_pip_check = True
+
+moduleclass = 'bio'
diff --git a/p/PICRUSt2/PICRUSt2-2.5.2-b-foss-2022a.eb b/p/PICRUSt2/PICRUSt2-2.5.2-b-foss-2022a.eb
new file mode 100644
index 0000000..1451d8e
--- /dev/null
+++ b/p/PICRUSt2/PICRUSt2-2.5.2-b-foss-2022a.eb
@@ -0,0 +1,38 @@
+easyblock = 'PythonBundle'
+
+name = 'PICRUSt2'
+version = '2.5.2'
+
+homepage = 'https://github.com/picrust/picrust2/wiki'
+description = """PICRUSt2 (Phylogenetic Investigation of Communities by Reconstruction of Unobserved States) is a software for predicting functional abundances based only on marker gene sequences. Check out the pre-print here."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('h5py', '3.7.0'),
+    ('SciPy-bundle', '2022.05'),
+]
+
+exts_defaultclass = 'PythonPackage'
+exts_default_options = {
+    'source_urls': [PYPI_SOURCE],
+    'download_dep_fail': True,
+    'use_pip': True,
+}
+exts_filter = ("python -c 'import %(ext_name)s'", '')
+
+exts_list = [
+    ('click', '8.1.7'),
+    ('future', '0.18.3'),
+    ('biom-format', '2.1.15', {
+        'modulename': 'biom',
+    }),
+    (name, version, {
+        'source_tmpl': 'v%(version)s.tar.gz',
+        'source_urls': ['https://github.com/picrust/archive'],
+    }),
+]
+
+
+moduleclass = 'bio'
diff --git a/p/PMIx/PMIx-3.2.3-chown.patch b/p/PMIx/PMIx-3.2.3-chown.patch
new file mode 100644
index 0000000..bf8fb43
--- /dev/null
+++ b/p/PMIx/PMIx-3.2.3-chown.patch
@@ -0,0 +1,11 @@
+--- src/util/pmix_pty.c.orig	2023-09-26 09:48:10.454004090 +1000
++++ src/util/pmix_pty.c	2023-09-26 09:48:16.711989303 +1000
+@@ -248,7 +248,7 @@
+         gid = -1;               /* group tty is not in the group file */
+     }
+     /* following two functions don't work unless we're root */
+-    chown(pts_name, getuid(), gid);
++    lchown(pts_name, getuid(), gid);
+     chmod(pts_name, S_IRUSR | S_IWUSR | S_IWGRP);
+     fds = open(pts_name, O_RDWR);
+     if (fds < 0) {
diff --git a/p/PMIx/PMIx-3.2.3.eb b/p/PMIx/PMIx-3.2.3.eb
index 686f174..88903c2 100644
--- a/p/PMIx/PMIx-3.2.3.eb
+++ b/p/PMIx/PMIx-3.2.3.eb
@@ -35,6 +35,7 @@ dependencies = [
 configopts = ' --with-libevent=$EBROOTLIBEVENT --with-zlib=$EBROOTZLIB'
 configopts += ' --with-hwloc=$EBROOTHWLOC'
 configopts += ' --enable-pmix-binaries'
+patches = ['PMIx-3.2.3-chown.patch']
 
 buildopts = 'V=1'
 
diff --git a/p/PMIx/PMIx-4.2.2-chown.patch b/p/PMIx/PMIx-4.2.2-chown.patch
new file mode 100644
index 0000000..3e97659
--- /dev/null
+++ b/p/PMIx/PMIx-4.2.2-chown.patch
@@ -0,0 +1,11 @@
+--- src/util/pmix_pty.c.orig	2023-09-26 09:46:34.245231423 +1000
++++ src/util/pmix_pty.c	2023-09-26 09:46:50.429193180 +1000
+@@ -244,7 +244,7 @@
+         gid = -1; /* group tty is not in the group file */
+     }
+     /* following two functions don't work unless we're root */
+-    chown(pts_name, getuid(), gid);
++    lchown(pts_name, getuid(), gid);
+     chmod(pts_name, S_IRUSR | S_IWUSR | S_IWGRP);
+     fds = open(pts_name, O_RDWR);
+     if (fds < 0) {
diff --git a/p/PMIx/PMIx-4.2.2.eb b/p/PMIx/PMIx-4.2.2.eb
index 617e026..fa91f48 100644
--- a/p/PMIx/PMIx-4.2.2.eb
+++ b/p/PMIx/PMIx-4.2.2.eb
@@ -32,6 +32,7 @@ dependencies = [
 configopts = ' --with-libevent=$EBROOTLIBEVENT --with-zlib=$EBROOTZLIB'
 configopts += ' --with-hwloc=$EBROOTHWLOC'
 configopts += ' --enable-pmix-binaries'
+patches = ['PMIx-4.2.2-chown.patch']
 
 buildopts = 'V=1'
 
diff --git a/p/ParaView/ParaView-5..6.2-foss-2022a-clamp.patch b/p/ParaView/ParaView-5..6.2-foss-2022a-clamp.patch
new file mode 100644
index 0000000..bafcefa
--- /dev/null
+++ b/p/ParaView/ParaView-5..6.2-foss-2022a-clamp.patch
@@ -0,0 +1,22 @@
+diff -Nru ParaView-v5.6.2.orig/VTK/Common/Core/vtkMath.h ParaView-v5.6.2/VTK/Common/Core/vtkMath.h
+--- ParaView-v5.6.2.orig/VTK/Common/Core/vtkMath.h	2023-11-10 10:21:12.654750000 +1100
++++ ParaView-v5.6.2/VTK/Common/Core/vtkMath.h	2023-11-10 11:14:46.486534000 +1100
+@@ -1510,9 +1510,6 @@
+ {
+   assert("pre: valid_range" && min<=max);
+ 
+-#if __cplusplus >= 201703L
+-  return std::clamp(value, min, max);
+-#else
+   if (value < min)
+   {
+     return min;
+@@ -1524,7 +1521,6 @@
+   }
+ 
+   return value;
+-#endif
+ }
+ 
+ //----------------------------------------------------------------------------
+
diff --git a/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb b/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb
index 766c6e8..cb8b0cd 100644
--- a/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb
+++ b/p/ParaView/ParaView-5.10.1-foss-2022a-mpi.eb
@@ -35,6 +35,7 @@ dependencies = [
     ('zlib', '1.2.12'),
     ('FFmpeg', '4.4.2'),
     ('Szip', '2.1.1'),
+    ('Boost', '1.79.0'),
 ]
 
 # Paraview
@@ -43,6 +44,7 @@ configopts += '-DPARAVIEW_USE_MPI=ON '
 configopts += '-DPARAVIEW_ENABLE_FFMPEG=ON '
 configopts += '-DPARAVIEW_USE_PYTHON=ON '
 configopts += '-DPython3_ROOT_DIR=$EBROOTPYTHON '
+configopts += '-DPARAVIEW_ENABLE_VISITBRIDGE=ON '
 
 # OpenGL & Mesa
 configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT
diff --git a/p/ParaView/ParaView-5.11.1-fix_thrust_vtk_m.patch b/p/ParaView/ParaView-5.11.1-fix_thrust_vtk_m.patch
new file mode 100644
index 0000000..b1effa7
--- /dev/null
+++ b/p/ParaView/ParaView-5.11.1-fix_thrust_vtk_m.patch
@@ -0,0 +1,83 @@
+From 5d0481342a877c7297df4726a06cd4f45ea7af25 Mon Sep 17 00:00:00 2001
+From: Sujin Philip <sujin.philip@kitware.com>
+Date: Mon, 9 Jan 2023 12:58:33 -0500
+Subject: [PATCH] Fix compile issues when using cuda 12
+
+CUDA 12 adds a `cub::Swap` function that creates ambiguity with `vtkm::Swap`.
+This happens when a function from the `cub` namespace is called with an object
+of a class defined in the `vtkm` namespace as an argument. If that function
+has an unqualified call to `Swap`, it results in ADL being used, causing the
+templated functions `cub::Swap` and `vtkm::Swap` to conflict.
+---
+ vtkm/Swap.h                               | 24 ++++++++++++++++-------
+ vtkm/exec/cuda/internal/ExecutionPolicy.h |  1 +
+ 2 files changed, 18 insertions(+), 7 deletions(-)
+
+diff --git a/vtkm/Swap.h b/vtkm/Swap.h
+index f833a495c5..342c5a20c9 100644
+--- a/vtkm/Swap.h
++++ b/vtkm/Swap.h
+@@ -24,21 +24,31 @@ namespace vtkm
+
+ /// Performs a swap operation. Safe to call from cuda code.
+ #if defined(VTKM_CUDA)
++// CUDA 12 adds a `cub::Swap` function that creates ambiguity with `vtkm::Swap`.
++// This happens when a function from the `cub` namespace is called with an object of a class
++// defined in the `vtkm` namespace as an argument. If that function has an unqualified call to
++// `Swap`, it results in ADL being used, causing the templated functions `cub::Swap` and
++// `vtkm::Swap` to conflict.
++#if defined(VTKM_CUDA_VERSION_MAJOR) && (VTKM_CUDA_VERSION_MAJOR >= 12) && \
++  defined(VTKM_CUDA_DEVICE_PASS)
++using cub::Swap;
++#else
+ template <typename T>
+-VTKM_EXEC_CONT void Swap(T& a, T& b)
++VTKM_EXEC_CONT inline void Swap(T& a, T& b)
+ {
+-  using namespace thrust;
++  using thrust::swap;
+   swap(a, b);
+ }
++#endif
+ #elif defined(VTKM_HIP)
+ template <typename T>
+-__host__ void Swap(T& a, T& b)
++__host__ inline void Swap(T& a, T& b)
+ {
+-  using namespace std;
++  using std::swap;
+   swap(a, b);
+ }
+ template <typename T>
+-__device__ void Swap(T& a, T& b)
++__device__ inline void Swap(T& a, T& b)
+ {
+   T temp = a;
+   a = b;
+@@ -46,9 +56,9 @@ __device__ void Swap(T& a, T& b)
+ }
+ #else
+ template <typename T>
+-VTKM_EXEC_CONT void Swap(T& a, T& b)
++VTKM_EXEC_CONT inline void Swap(T& a, T& b)
+ {
+-  using namespace std;
++  using std::swap;
+   swap(a, b);
+ }
+ #endif
+diff --git a/vtkm/exec/cuda/internal/ExecutionPolicy.h b/vtkm/exec/cuda/internal/ExecutionPolicy.h
+index 4db1edc6f9..02cad4ab6d 100644
+--- a/vtkm/exec/cuda/internal/ExecutionPolicy.h
++++ b/vtkm/exec/cuda/internal/ExecutionPolicy.h
+@@ -17,6 +17,7 @@
+ #include <vtkm/exec/cuda/internal/ThrustPatches.h>
+ VTKM_THIRDPARTY_PRE_INCLUDE
+ #include <thrust/execution_policy.h>
++#include <thrust/sort.h>
+ #include <thrust/system/cuda/execution_policy.h>
+ #include <thrust/system/cuda/memory.h>
+ VTKM_THIRDPARTY_POST_INCLUDE
+-- 
+GitLab
+
diff --git a/p/ParaView/ParaView-5.11.1-foss-2022a-mpi.eb b/p/ParaView/ParaView-5.11.1-foss-2022a-mpi.eb
new file mode 100644
index 0000000..479b6c9
--- /dev/null
+++ b/p/ParaView/ParaView-5.11.1-foss-2022a-mpi.eb
@@ -0,0 +1,60 @@
+##
+# Author:    Robert Mijakovic <robert.mijakovic@lxp.lu>
+##
+easyblock = 'CMakeMake'
+
+name = 'ParaView'
+version = '5.11.1'
+versionsuffix = '-mpi'
+
+homepage = 'https://www.paraview.org'
+description = "ParaView is a scientific parallel visualizer."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile='
+source_urls = ['https://www.paraview.org/paraview-downloads/%s' % local_download_suffix]
+sources = ["%(name)s-v%(version)s.tar.gz"]
+checksums = [
+    'de32f3e576b5f639ffc6903aa9e4cd46ac30c753185edc4366a7f305a6951b16',  # ParaView-v5.11.1.tar.gz
+]
+
+builddependencies = [('CMake', '3.23.1')]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('XZ', '5.2.5'),
+    ('HDF5', '1.12.2'),
+    ('netCDF', '4.9.0'),
+    ('libGLU', '9.0.2'),
+    ('X11', '20220504'),
+    ('Mesa', '22.0.3'),
+    ('Qt5', '5.15.5'),
+    ('zlib', '1.2.12'),
+    ('FFmpeg', '4.4.2'),
+    ('Szip', '2.1.1'),
+]
+
+# Paraview
+configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DPARAVIEW_BUILD_SHARED_LIBS=ON '
+configopts += '-DPARAVIEW_USE_MPI=ON '
+configopts += '-DPARAVIEW_ENABLE_FFMPEG=ON '
+configopts += '-DPARAVIEW_USE_PYTHON=ON '
+configopts += '-DPython3_ROOT_DIR=$EBROOTPYTHON '
+
+# OpenGL & Mesa
+configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT
+configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include '
+
+sanity_check_paths = {
+    'files': ['bin/paraview', 'bin/pvpython'],
+    'dirs': ['include/paraview-%(version_major_minor)s', 'lib/python%(pyshortver)s/site-packages'],
+}
+
+sanity_check_commands = ['python -c "import paraview"']
+
+modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'}
+
+moduleclass = 'vis'
diff --git a/p/ParaView/ParaView-5.4.1-foss-2022a-Python-2.7.18-mpi.eb b/p/ParaView/ParaView-5.4.1-foss-2022a-Python-2.7.18-mpi.eb
new file mode 100644
index 0000000..6569292
--- /dev/null
+++ b/p/ParaView/ParaView-5.4.1-foss-2022a-Python-2.7.18-mpi.eb
@@ -0,0 +1,66 @@
+easyblock = 'CMakeMake'
+
+name = 'ParaView'
+version = '5.4.1'
+versionsuffix = '-Python-%(pyver)s-mpi'
+
+homepage = "http://www.paraview.org"
+description = "ParaView is a scientific parallel visualizer."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True, 'cstd': 'c++11'}
+
+local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile='
+source_urls = ['http://www.paraview.org/paraview-downloads/%s' % local_download_suffix]
+sources = ['ParaView-v%(version)s.tar.gz']
+patches = ['ParaView-5.4.1_fix-Qt5.11-support.patch']
+checksums = [
+    '390d0f5dc66bf432e202a39b1f34193af4bf8aad2355338fa5e2778ea07a80e4',  # ParaView-v5.4.1.tar.gz
+    '4041b3c810d8394e8bd0e2ddc9ee1adc773b9adbfd209b7f7dccbdd9a1c1d935',  # ParaView-5.4.1_fix-Qt5.11-support.patch
+]
+
+dependencies = [
+    ('X11', '20220504'),
+    ('Mesa', '22.0.3'),
+    ('libGLU', '9.0.2'),
+    ('Qt5', '5.15.2'),
+    ('zlib', '1.2.12'),
+    ('HDF5', '1.12.2'),
+    ('Python', '2.7.18'),
+]
+
+# stick to CMake 3.11.x, using a more recent CMake version will cause trouble;
+# see https://www.cfd-online.com/Forums/openfoam-installation/213609-v6-problems-installing-parafoam-print.html
+builddependencies = [('CMake', '3.11.4')]
+
+separate_build_dir = True
+
+configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DVTK_OPENGL_HAS_OSMESA=ON -DPARAVIEW_USE_MPI=ON '
+configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include -DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s ' % SHLIB_EXT
+configopts += '-DOSMESA_INCLUDE_DIR=$EBROOTMESA/include -DOSMESA_LIBRARY=$EBROOTMESA/lib/libOSMesa.%s ' % SHLIB_EXT
+configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT
+configopts += '-DVTK_USE_SYSTEM_HDF5=ON -DPARAVIEW_ENABLE_PYTHON=ON -DBUILD_SHARED_LIBS=ON '
+# if you want to build server only Paraview, uncomment the following line:
+# configopts += '-DVTK_USE_X=OFF '
+
+# Without internet connection turn off testing (uncomment the following line)
+configopts += '-DBUILD_TESTING=OFF '
+# Or consult https://gitlab.kitware.com/vtk/vtk/blob/master/Documentation/dev/git/data.md
+# and download ExternalData to $EASYBUILD_SOURCEPATH and adjust -DExternalData_OBJECT_STORES accordingly
+# Without internet connection, comment the following two lines (configopts and prebuildopts)
+configopts += '-DExternalData_OBJECT_STORES=%(builddir)s/ExternalData '
+
+configopts += ' -DPARAVIEW_QT_VERSION=5 -DQT_QMAKE_EXECUTABLE=$EBROOTQT5/bin/qmake '
+# The ParaView server can be cranky, test downloads are quite often failing, especially in the case
+# of parallel downloads. Using ; insted of && gives a second chance to download the test files, if the
+# first serial attempt would fail.
+prebuildopts = 'make VTKData ;'
+
+sanity_check_paths = {
+    'files': ['bin/paraview'],
+    'dirs': ['include/paraview-%(version_major_minor)s', 'lib'],
+}
+
+parallel = 1
+
+moduleclass = 'vis'
diff --git a/p/ParaView/ParaView-5.4.1-foss-2022a-Python-3.10.4-mpi.eb b/p/ParaView/ParaView-5.4.1-foss-2022a-Python-3.10.4-mpi.eb
new file mode 100644
index 0000000..9312539
--- /dev/null
+++ b/p/ParaView/ParaView-5.4.1-foss-2022a-Python-3.10.4-mpi.eb
@@ -0,0 +1,68 @@
+easyblock = 'CMakeMake'
+
+name = 'ParaView'
+version = '5.4.1'
+versionsuffix = '-Python-%(pyver)s-mpi'
+
+homepage = "http://www.paraview.org"
+description = "ParaView is a scientific parallel visualizer."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True, 'cstd': 'c++11'}
+
+local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile='
+source_urls = ['http://www.paraview.org/paraview-downloads/%s' % local_download_suffix]
+sources = ['ParaView-v%(version)s.tar.gz']
+patches = ['ParaView-5.4.1_fix-Qt5.11-support.patch']
+checksums = [
+    '390d0f5dc66bf432e202a39b1f34193af4bf8aad2355338fa5e2778ea07a80e4',  # ParaView-v5.4.1.tar.gz
+    '4041b3c810d8394e8bd0e2ddc9ee1adc773b9adbfd209b7f7dccbdd9a1c1d935',  # ParaView-5.4.1_fix-Qt5.11-support.patch
+]
+
+dependencies = [
+    ('X11', '20220504'),
+    ('Mesa', '22.0.3'),
+    ('libGLU', '9.0.2'),
+    ('Qt5', '5.15.2'),
+    ('zlib', '1.2.12'),
+    ('HDF5', '1.12.2'),
+    ('Python', '3.10.4'),
+]
+
+# stick to CMake 3.11.x, using a more recent CMake version will cause trouble;
+# see https://www.cfd-online.com/Forums/openfoam-installation/213609-v6-problems-installing-parafoam-print.html
+builddependencies = [('CMake', '3.11.4')]
+
+buildopts = " CXXFLAGS=' $CXXFLAGS -fpermissive' "
+
+separate_build_dir = True
+
+configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DVTK_OPENGL_HAS_OSMESA=ON -DPARAVIEW_USE_MPI=ON '
+configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include -DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s ' % SHLIB_EXT
+configopts += '-DOSMESA_INCLUDE_DIR=$EBROOTMESA/include -DOSMESA_LIBRARY=$EBROOTMESA/lib/libOSMesa.%s ' % SHLIB_EXT
+configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT
+configopts += '-DVTK_USE_SYSTEM_HDF5=ON -DPARAVIEW_ENABLE_PYTHON=ON -DBUILD_SHARED_LIBS=ON '
+# if you want to build server only Paraview, uncomment the following line:
+# configopts += '-DVTK_USE_X=OFF '
+
+# Without internet connection turn off testing (uncomment the following line)
+configopts += '-DBUILD_TESTING=OFF '
+# Or consult https://gitlab.kitware.com/vtk/vtk/blob/master/Documentation/dev/git/data.md
+# and download ExternalData to $EASYBUILD_SOURCEPATH and adjust -DExternalData_OBJECT_STORES accordingly
+# Without internet connection, comment the following two lines (configopts and prebuildopts)
+configopts += '-DExternalData_OBJECT_STORES=%(builddir)s/ExternalData '
+
+configopts += ' -DPARAVIEW_QT_VERSION=5 -DQT_QMAKE_EXECUTABLE=$EBROOTQT5/bin/qmake '
+# The ParaView server can be cranky, test downloads are quite often failing, especially in the case
+# of parallel downloads. Using ; insted of && gives a second chance to download the test files, if the
+# first serial attempt would fail.
+#prebuildopts = 'make VTKData ;'
+
+sanity_check_paths = {
+    'files': ['bin/paraview'],
+    'dirs': ['include/paraview-%(version_major_minor)s', 'lib'],
+}
+
+parallel = 1
+
+moduleclass = 'vis'
diff --git a/p/ParaView/ParaView-5.4.1_fix-Qt5.11-support.patch b/p/ParaView/ParaView-5.4.1_fix-Qt5.11-support.patch
new file mode 100644
index 0000000..97ecdad
--- /dev/null
+++ b/p/ParaView/ParaView-5.4.1_fix-Qt5.11-support.patch
@@ -0,0 +1,94 @@
+see https://discourse.paraview.org/t/paraview-installation-crashes-at-92-due-to-errors-fehler-originating-from-class-qheaderview/458
+and https://gitlab.kitware.com/paraview/paraview/-/merge_requests/2474
+
+fixes backported to ParaView v5.4.1 by Kenneth Hoste (HPC-UGent)
+
+diff -ru ParaView-v5.4.1.orig/Plugins/SLACTools/pqSLACDataLoadManager.cxx ParaView-v5.4.1/Plugins/SLACTools/pqSLACDataLoadManager.cxx
+--- ParaView-v5.4.1.orig/Plugins/SLACTools/pqSLACDataLoadManager.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Plugins/SLACTools/pqSLACDataLoadManager.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -33,6 +33,7 @@
+ #include "vtkSMProperty.h"
+ #include "vtkSMSourceProxy.h"
+ 
++#include <QAction>
+ #include <QPushButton>
+ #include <QtDebug>
+ 
+Only in ParaView-v5.4.1/Plugins/SLACTools: pqSLACDataLoadManager.cxx.orig
+diff -ru ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqColorMapEditor.cxx ParaView-v5.4.1/Qt/ApplicationComponents/pqColorMapEditor.cxx
+--- ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqColorMapEditor.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Qt/ApplicationComponents/pqColorMapEditor.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -59,6 +59,7 @@
+ #include <QDebug>
+ #include <QKeyEvent>
+ #include <QPointer>
++#include <QStyle>
+ #include <QVBoxLayout>
+ 
+ class pqColorMapEditor::pqInternals
+diff -ru ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqDoubleRangeSliderPropertyWidget.cxx ParaView-v5.4.1/Qt/ApplicationComponents/pqDoubleRangeSliderPropertyWidget.cxx
+--- ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqDoubleRangeSliderPropertyWidget.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Qt/ApplicationComponents/pqDoubleRangeSliderPropertyWidget.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -43,6 +43,7 @@
+ #include "vtkSMUncheckedPropertyHelper.h"
+ 
+ #include <QGridLayout>
++#include <QStyle>
+ 
+ class pqDoubleRangeSliderPropertyWidget::pqInternals
+ {
+diff -ru ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqStandardViewFrameActionsImplementation.cxx ParaView-v5.4.1/Qt/ApplicationComponents/pqStandardViewFrameActionsImplementation.cxx
+--- ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqStandardViewFrameActionsImplementation.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Qt/ApplicationComponents/pqStandardViewFrameActionsImplementation.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -69,6 +69,7 @@
+ #include <QPushButton>
+ #include <QSet>
+ #include <QShortcut>
++#include <QStyle>
+ 
+ //-----------------------------------------------------------------------------
+ pqStandardViewFrameActionsImplementation::pqStandardViewFrameActionsImplementation(
+diff -ru ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqTimeInspectorWidget.cxx ParaView-v5.4.1/Qt/ApplicationComponents/pqTimeInspectorWidget.cxx
+--- ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqTimeInspectorWidget.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Qt/ApplicationComponents/pqTimeInspectorWidget.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -49,6 +49,7 @@
+ #include "vtkSMPropertyHelper.h"
+ #include "vtkSMSourceProxy.h"
+ 
++#include <QHeaderView>
+ #include <QLineF>
+ #include <QPainter>
+ #include <QVariant>
+diff -ru ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqViewResolutionPropertyWidget.cxx ParaView-v5.4.1/Qt/ApplicationComponents/pqViewResolutionPropertyWidget.cxx
+--- ParaView-v5.4.1.orig/Qt/ApplicationComponents/pqViewResolutionPropertyWidget.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Qt/ApplicationComponents/pqViewResolutionPropertyWidget.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -39,6 +39,7 @@
+ #include "vtkSMProxy.h"
+ 
+ #include <QIntValidator>
++#include <QStyle>
+ 
+ class pqViewResolutionPropertyWidget::pqInternals
+ {
+diff -ru ParaView-v5.4.1.orig/Qt/Components/pqChangeInputDialog.cxx ParaView-v5.4.1/Qt/Components/pqChangeInputDialog.cxx
+--- ParaView-v5.4.1.orig/Qt/Components/pqChangeInputDialog.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Qt/Components/pqChangeInputDialog.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -45,6 +45,7 @@
+ #include "vtkSMProxy.h"
+ #include "vtkSmartPointer.h"
+ 
++#include <QHeaderView>
+ #include <QItemSelectionModel>
+ #include <QLineEdit>
+ #include <QRadioButton>
+diff -ru ParaView-v5.4.1.orig/Qt/Components/pqCinemaTrackSelection.cxx ParaView-v5.4.1/Qt/Components/pqCinemaTrackSelection.cxx
+--- ParaView-v5.4.1.orig/Qt/Components/pqCinemaTrackSelection.cxx	2017-08-18 15:39:19.000000000 +0200
++++ ParaView-v5.4.1/Qt/Components/pqCinemaTrackSelection.cxx	2022-08-29 15:49:56.022696185 +0200
+@@ -30,6 +30,7 @@
+ 
+ ========================================================================*/
+ #include <QDebug>
++#include <QHeaderView>
+ 
+ #include "vtkPVArrayInformation.h"
+ #include "vtkPVDataInformation.h"
diff --git a/p/ParaView/ParaView-5.6.2-foss-2022a-Python-3.10.4.eb b/p/ParaView/ParaView-5.6.2-foss-2022a-Python-3.10.4.eb
new file mode 100644
index 0000000..149b073
--- /dev/null
+++ b/p/ParaView/ParaView-5.6.2-foss-2022a-Python-3.10.4.eb
@@ -0,0 +1,88 @@
+easyblock = 'CMakeMake'
+
+name = 'ParaView'
+version = '5.6.2'
+versionsuffix = '-Python-%(pyver)s-mpi'
+
+homepage = "https://www.paraview.org"
+description = "ParaView is a scientific parallel visualizer."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True }
+
+local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile='
+source_urls = ['https://www.paraview.org/paraview-downloads/%s' % local_download_suffix]
+sources = ["ParaView-v%(version)s.tar.xz"]
+#checksums = ['1f3710b77c58a46891808dbe23dc59a1259d9c6b7bb123aaaeaa6ddf2be882ea']
+
+patches = [
+	'ParaView-5.6.2_tp_print.patch',
+	'ParaView-5.6.2_exodus_dummy.patch',
+	'ParaView-5..6.2-foss-2022a-clamp.patch',
+]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('XZ', '5.2.5'),
+    ('HDF5', '1.12.2'),
+    ('netCDF', '4.9.0'),
+    ('libGLU', '9.0.2'),
+    ('X11', '20220504'),
+    ('Mesa', '22.0.3'),
+    ('Qt5', '5.15.5'),
+    ('zlib', '1.2.13'),
+    ('FFmpeg', '4.4.2'),
+    ('Szip', '2.1.1'),
+]
+
+builddependencies = [('CMake', '3.15.3')]
+
+separate_build_dir = True
+
+# Paraview
+configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DBUILD_SHARED_LIBS=ON '
+configopts += '-DPARAVIEW_QT_VERSION=5 -DQT_QMAKE_EXECUTABLE=$EBROOTQT5/bin/qmake '
+configopts += '-DPARAVIEW_USE_MPI=ON '
+configopts += '-DPARAVIEW_ENABLE_FFMPEG=ON '
+configopts += '-DPARAVIEW_ENABLE_PYTHON=ON '
+
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=%(pyver)s "
+configopts += "-DPython3_INCLUDE_DIR=$EBROOTPYTHON/include/python3.10 "
+configopts += "-DPython3_LIBRARY=$EBROOTPYTHON/lib/libpython3.10.so "
+
+# Third party libs
+configopts += '-DVTK_USE_SYSTEM_MPI4PY=ON '
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+
+# OpenGL & Mesa
+configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT
+configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include -DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s ' % SHLIB_EXT
+configopts += '-DVTK_OPENGL_HAS_OSMESA=ON '
+configopts += '-DOSMESA_INCLUDE_DIR=$EBROOTMESA/include -DOSMESA_LIBRARY=$EBROOTMESA/lib/libOSMesa.%s ' % SHLIB_EXT
+
+
+# Without internet connection turn off testing (uncomment the following line)
+configopts += '-DBUILD_TESTING=OFF '
+# Or consult https://gitlab.kitware.com/vtk/vtk/blob/master/Documentation/dev/git/data.md
+# and download ExternalData to $EASYBUILD_SOURCEPATH and adjust -DExternalData_OBJECT_STORES accordingly
+# Without internet connection, comment the following two lines (configopts and prebuildopts)
+# configopts += '-DExternalData_OBJECT_STORES=%(builddir)s/ExternalData '
+
+# The ParaView server can be cranky, test downloads are quite often failing, especially in the case
+# of parallel downloads. Using ; insted of && gives a second chance to download the test files, if the
+# first serial attempt would fail.
+# prebuildopts = 'make VTKData ;'
+
+sanity_check_paths = {
+    'files': ['bin/paraview'],
+    'dirs': ['include/paraview-%(version_major_minor)s', 'lib'],
+}
+
+parallel=1;
+
+moduleclass = 'vis'
diff --git a/p/ParaView/ParaView-5.6.2_exodus_dummy.patch b/p/ParaView/ParaView-5.6.2_exodus_dummy.patch
new file mode 100644
index 0000000..bd35785
--- /dev/null
+++ b/p/ParaView/ParaView-5.6.2_exodus_dummy.patch
@@ -0,0 +1,21 @@
+diff -Nru ParaView-v5.6.2.orig/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c ParaView-v5.6.2/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c
+--- ParaView-v5.6.2.orig/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c	2023-11-08 12:07:31.817247000 +1100
++++ ParaView-v5.6.2/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c	2023-11-08 12:27:03.262130000 +1100
+@@ -614,5 +614,5 @@
+  * Prevent warning in some versions of ranlib(1) because the object
+  * file has no symbols.
+  */
+-const char exodus_unused_symbol_dummy_1;
++const char exodus_unused_symbol_dummy_ex_create_par;
+ #endif
+diff -Nru ParaView-v5.6.2.orig/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c ParaView-v5.6.2/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c
+--- ParaView-v5.6.2.orig/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c	2023-11-08 12:07:31.909233000 +1100
++++ ParaView-v5.6.2/VTK/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c	2023-11-08 12:27:26.911142000 +1100
+@@ -474,5 +474,5 @@
+  * Prevent warning in some versions of ranlib(1) because the object
+  * file has no symbols.
+  */
+-const char exodus_unused_symbol_dummy_1;
++const char exodus_unused_symbol_dummy_ex_open_par;
+ #endif
+
diff --git a/p/ParaView/ParaView-5.6.2_tp_print.patch b/p/ParaView/ParaView-5.6.2_tp_print.patch
new file mode 100644
index 0000000..24103ad
--- /dev/null
+++ b/p/ParaView/ParaView-5.6.2_tp_print.patch
@@ -0,0 +1,112 @@
+diff -Nru ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
+--- ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx	2023-11-07 17:24:52.469884000 +1100
++++ ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx	2023-11-07 17:39:10.444827000 +1100
+@@ -186,7 +186,7 @@
+   sizeof(PyMethodDescrObject),           // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKMethodDescriptor_Delete,          // tp_dealloc
+-  nullptr,                               // tp_print
++  NULL,                                  // tp_print
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff -Nru ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx
+--- ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx	2023-11-07 17:24:52.471882000 +1100
++++ ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKNamespace.cxx	2023-11-07 17:39:49.107792000 +1100
+@@ -49,7 +49,7 @@
+   0,                                     // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKNamespace_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  NULL,                                  // tp_print
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff -Nru ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKReference.cxx ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKReference.cxx
+--- ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKReference.cxx	2023-11-07 17:24:52.475883000 +1100
++++ ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKReference.cxx	2023-11-07 17:41:03.432796000 +1100
+@@ -1010,7 +1010,7 @@
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  NULL,                                  // tp_print
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+@@ -1067,7 +1067,7 @@
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  NULL,                                  // tp_print
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+@@ -1124,7 +1124,7 @@
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  NULL,                                  // tp_print
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+@@ -1181,7 +1181,7 @@
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  NULL,                                  // tp_print
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff -Nru ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx
+--- ParaView-v5.6.2.orig/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx	2023-11-07 17:24:52.479874000 +1100
++++ ParaView-v5.6.2/VTK/Wrapping/PythonCore/PyVTKTemplate.cxx	2023-11-07 17:41:28.678803000 +1100
+@@ -268,7 +268,7 @@
+   0,                                     // tp_basicsize
+   0,                                     // tp_itemsize
+   nullptr,                               // tp_dealloc
+-  nullptr,                               // tp_print
++  NULL,                                  // tp_print
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff -Nru ParaView-v5.6.2.orig/VTK/Wrapping/Tools/vtkWrapPythonClass.c ParaView-v5.6.2/VTK/Wrapping/Tools/vtkWrapPythonClass.c
+--- ParaView-v5.6.2.orig/VTK/Wrapping/Tools/vtkWrapPythonClass.c	2023-11-10 15:01:41.620629000 +1100
++++ ParaView-v5.6.2/VTK/Wrapping/Tools/vtkWrapPythonClass.c	2023-11-10 15:50:09.622435000 +1100
+@@ -521,7 +521,7 @@
+     "  sizeof(PyVTKObject), // tp_basicsize\n"
+     "  0, // tp_itemsize\n"
+     "  PyVTKObject_Delete, // tp_dealloc\n"
+-    "  nullptr, // tp_print\n"
++    "  NULL, // tp_print\n"
+     "  nullptr, // tp_getattr\n"
+     "  nullptr, // tp_setattr\n"
+     "  nullptr, // tp_compare\n"
+diff -Nru ParaView-v5.6.2.orig/VTK/Wrapping/Tools/vtkWrapPythonEnum.c ParaView-v5.6.2/VTK/Wrapping/Tools/vtkWrapPythonEnum.c
+--- ParaView-v5.6.2.orig/VTK/Wrapping/Tools/vtkWrapPythonEnum.c	2023-11-10 15:01:41.623637000 +1100
++++ ParaView-v5.6.2/VTK/Wrapping/Tools/vtkWrapPythonEnum.c	2023-11-10 15:50:37.862398000 +1100
+@@ -145,7 +145,7 @@
+     "  sizeof(PyIntObject), // tp_basicsize\n"
+     "  0, // tp_itemsize\n"
+     "  nullptr, // tp_dealloc\n"
+-    "  nullptr, // tp_print\n"
++    "  NULL, // tp_print\n"
+     "  nullptr, // tp_getattr\n"
+     "  nullptr, // tp_setattr\n"
+     "  nullptr, // tp_compare\n"
+diff -Nru ParaView-v5.6.2.orig/VTK/Wrapping/Tools/vtkWrapPythonType.c ParaView-v5.6.2/VTK/Wrapping/Tools/vtkWrapPythonType.c
+--- ParaView-v5.6.2.orig/VTK/Wrapping/Tools/vtkWrapPythonType.c	2023-11-10 15:01:41.641612000 +1100
++++ ParaView-v5.6.2/VTK/Wrapping/Tools/vtkWrapPythonType.c	2023-11-10 15:50:53.336403000 +1100
+@@ -709,7 +709,7 @@
+     "  sizeof(PyVTKSpecialObject), // tp_basicsize\n"
+     "  0, // tp_itemsize\n"
+     "  Py%s_Delete, // tp_dealloc\n"
+-    "  nullptr, // tp_print\n"
++    "  NULL, // tp_print\n"
+     "  nullptr, // tp_getattr\n"
+     "  nullptr, // tp_setattr\n"
+     "  nullptr, // tp_compare\n"
+
diff --git a/p/ParaView/ParaView-5.7.0-foss-2022a-Python-3.10.4.eb b/p/ParaView/ParaView-5.7.0-foss-2022a-Python-3.10.4.eb
new file mode 100644
index 0000000..9e8d138
--- /dev/null
+++ b/p/ParaView/ParaView-5.7.0-foss-2022a-Python-3.10.4.eb
@@ -0,0 +1,80 @@
+easyblock = 'CMakeMake'
+
+name = 'ParaView'
+version = '5.7.0'
+versionsuffix = '-Python-%(pyver)s-mpi'
+
+homepage = "https://www.paraview.org"
+description = "ParaView is a scientific parallel visualizer."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True, 'usempi': True}
+
+local_download_suffix = 'download.php?submit=Download&version=v%(version_major_minor)s&type=source&os=all&downloadFile='
+source_urls = ['https://www.paraview.org/paraview-downloads/%s' % local_download_suffix]
+sources = ["ParaView-v%(version)s.tar.xz"]
+#checksums = ['1f3710b77c58a46891808dbe23dc59a1259d9c6b7bb123aaaeaa6ddf2be882ea']
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('XZ', '5.2.5'),
+    ('HDF5', '1.12.2'),
+    ('netCDF', '4.9.0'),
+    ('libGLU', '9.0.2'),
+    ('X11', '20220504'),
+    ('Mesa', '22.0.3'),
+    ('Qt5', '5.15.5'),
+    ('zlib', '1.2.13'),
+    ('FFmpeg', '4.4.2'),
+    ('Szip', '2.1.1'),
+]
+
+builddependencies = [('CMake', '3.11.4')]
+
+separate_build_dir = True
+
+# Paraview
+configopts = '-DPARAVIEW_INSTALL_DEVELOPMENT_FILES=ON -DBUILD_SHARED_LIBS=ON '
+configopts += '-DPARAVIEW_QT_VERSION=5 -DQT_QMAKE_EXECUTABLE=$EBROOTQT5/bin/qmake '
+configopts += '-DPARAVIEW_USE_MPI=ON '
+configopts += '-DPARAVIEW_ENABLE_FFMPEG=ON '
+configopts += '-DPARAVIEW_ENABLE_PYTHON=ON '
+
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=%(pyver)s "
+configopts += "-DPython3_INCLUDE_DIR=$EBROOTPYTHON/include/python3.10 "
+configopts += "-DPython3_LIBRARY=$EBROOTPYTHON/lib/libpython3.10.so "
+
+# Third party libs
+configopts += '-DVTK_USE_SYSTEM_MPI4PY=ON '
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+
+# OpenGL & Mesa
+configopts += '-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s ' % SHLIB_EXT
+configopts += '-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include -DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s ' % SHLIB_EXT
+configopts += '-DVTK_OPENGL_HAS_OSMESA=ON '
+configopts += '-DOSMESA_INCLUDE_DIR=$EBROOTMESA/include -DOSMESA_LIBRARY=$EBROOTMESA/lib/libOSMesa.%s ' % SHLIB_EXT
+
+
+# Without internet connection turn off testing (uncomment the following line)
+# configopts += '-DBUILD_TESTING=OFF '
+# Or consult https://gitlab.kitware.com/vtk/vtk/blob/master/Documentation/dev/git/data.md
+# and download ExternalData to $EASYBUILD_SOURCEPATH and adjust -DExternalData_OBJECT_STORES accordingly
+# Without internet connection, comment the following two lines (configopts and prebuildopts)
+configopts += '-DExternalData_OBJECT_STORES=%(builddir)s/ExternalData '
+
+# The ParaView server can be cranky, test downloads are quite often failing, especially in the case
+# of parallel downloads. Using ; insted of && gives a second chance to download the test files, if the
+# first serial attempt would fail.
+prebuildopts = 'make VTKData ;'
+
+sanity_check_paths = {
+    'files': ['bin/paraview'],
+    'dirs': ['include/paraview-%(version_major_minor)s', 'lib'],
+}
+
+moduleclass = 'vis'
diff --git a/p/ParaView/README b/p/ParaView/README
new file mode 100644
index 0000000..2dd01ac
--- /dev/null
+++ b/p/ParaView/README
@@ -0,0 +1,24 @@
+For version:
+ParaView-5.4.1-foss-2022a-Python-2.7.18-mpi.eb
+we need to manually install by using 3.11.4 version of CMake: ccmake ..
+Then we need to modify the following files:
+changed file:
+add #include <QHeaderView> in following files:
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/Components/pqChangeInputDialog.cxx
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/Components/pqCinemaTrackSelection.cxx
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/ApplicationComponents/pqTimeInspectorWidget.cxx
+add:
+#include <QButtonGroup>
+#include <QWidget>
+#include <unordered_map>
+#include <set>
+to /data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/ApplicationComponents/pqColorMapEditor.cxx
+add:
+#include <QAction>
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Plugins/SLACTools/pqSLACDataLoadManager.cxx
+add:
+#include <QStyle>
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/ApplicationComponents/pqDoubleRangeSliderPropertyWidget.cxx
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/ApplicationComponents/pqColorMapEditor.cxx
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/ApplicationComponents/pqStandardViewFrameActionsImplementation.cxx
+/data/gpfs/admin/hpcadmin/jzhang8/ParaView-v5.4.1/Qt/ApplicationComponents/pqViewResolutionPropertyWidget.cxx
diff --git a/p/ParaView/test/test.cxx b/p/ParaView/test/test.cxx
new file mode 100644
index 0000000..a6c5bac
--- /dev/null
+++ b/p/ParaView/test/test.cxx
@@ -0,0 +1,16 @@
+#include <algorithm>
+#include <cstdint>
+#include <iomanip>
+#include <iostream>
+ 
+int main()
+{
+    std::cout << " raw   clamped to int8_t   clamped to uint8_t\n";
+    for (const int v : {-129, -128, -1, 0, 42, 127, 128, 255, 256})
+    {
+        std::cout 
+            << std::setw(04) << v
+            << std::setw(20) << std::clamp(v, INT8_MIN, INT8_MAX)
+            << std::setw(21) << std::clamp(v, 0, UINT8_MAX) << '\n';
+    }
+}
diff --git a/p/ParaView/test/test.mpi b/p/ParaView/test/test.mpi
new file mode 100755
index 0000000000000000000000000000000000000000..8365a08bf2421da3f202f56e94a54a75a7f43cb6
GIT binary patch
literal 26112
zcmb<-^>JfjWMqH=CI&kO5O0Bi16T+`GB7yAfw^G9fx&`-m%)KSo<WX*je&uIg@J(q
zt`5p_fYLXZz*-n!GzWyszzo$V0b(#PFi0>%On}icP<1dG<R*|1hz8jQVnZ-QAIt?O
zpccSr1_6jFkUmxr6Ut|R`VU5{LJft{$ojxi3Lwo43=9fT`=GQ0)PFD<Ssy5DX6Qon
z&9H^&gV86T`oMt)QUY}sNEoDV161Dzs6H6&08#)7Zzv7*F4!25J1wB$X#ovS7!7wm
z$Swv326TN9P<;_leJ~nbAIJ`n5y4MOQb24{?F)eFbATG`01ZbNodPnPfq?-=gX{na
z1wJiF0fh^QO$>$xCqod_K3wsT0S!kO4N4~<^YwEwlgv!?b5eA3GV@9+bSo^(bj?ik
ziu3i1K+@pw2H62hQ|^AD3``9S2S9Fx1|wV^WFAN!qzNPkwGN#AxfvK3xEL51*g=v=
z7^DZpg{kLcV1VZ{kbR)I1DOL72dRaGivR;C8-v6^dPQdNIBU9I^#QT5VJ1cf1|cjG
zA~?iXFkn~jhC>__HrUL6fJ1#74snqGph*SAwLcgb7z7z485$fQ`APt!kb!|=0@R!d
zu>1|v6(66To1Yh7T#{H+5+BbH9~E4ZQ|uXBVrZD0kysR8Qk0lkQtX-R>KYVWVrZO{
zSe%(0pI=;3l$x09nH&=D8f+S$4AYfNoVJko5QBKvV6*t(64UtL)RJ<B_$a^N{G4Lf
zOfaj&A~U}@J}I#{)x<L|v&6;FwG3thaTY+`72pkWnO`uPdCoBNOp^0UOBmwgb25{X
zp#hMan3=~AAD>*27@t^@T9H}8kdv8|TaX!_Tu}i^<R%7C0R*SGBqdo}8^kvQ%fVUc
z$;t7>Af6#eJQ>6?V{rHJbaIY}h&R?Vfw1F^^o;aO;cR0Q2K~f>f@1yD#Nx`N(#)I`
zT_Xb{BLr8!I6tkVJh3QM-#I_GATuYmNZ;MrS>Mo5&sfhu-@hO=&o{tR-$c()&jgfL
zt;jJgIlm|sW@1KpPJXh!k)FApAyv%F$xKQuOU*0MH_|iIGc*F32}+7g49pBHaL5Q|
zfy5aZ7#Zvt8Nk&CD7}|xPT~O7tOd|?&B(ySkOq|psV|kv<YZuAW~hORZJ9WYje&uQ
zp#!S^gFPf)fXW7_5J(%t4<vC=IRX}BV1VZ%Q27EYLqKv8(EJ4|qd;X2NDPD(ki<dd
z6i5t&HIT$X<snE6gbk3yL3V(|K-dCF9OPDz7zjHciG%D0iGi>Ok~paB1c{B}(GVC7
zfzc2c4S~@R7!3i^Lf|vM+%J#jHyj?_tS|K$7(7}Jlra6j;L&`9<1pBu|E7=h85sVn
zKGA1j;Fot`_^%4$XMp5hKKTFt|9{n6`V0&ipeDx43t;{w5FgZ3czFQKKLz50ng}m9
zfcb|&d{EQi<pMB&7l;pP61<!M=5GS=K}~^|4gdfD2f5Git!L-OIFHUp9?efa1cbO6
z9xy!Var}6jpaa8yQEhz&hA(M){PHazH!*<JA4YH|>_~8MVDPX7ktM=AKuSPf<lGMu
z`2Qen!r?T8Vvzs#fh0T{-+`&l4;}~K*?S!P!R*0!%;Vy}5<$2L>`)WX^@Hqhur)Pc
zU|=W}4)y4K`l9Op|NqBWl?@me7-J7(*auSox(lQ**rWMP#XbQA2ZsHiPR)x&|Nj3!
z?%GiQA4Ii)!s57V2PlM&yY_(maolx+76Svran~vJU}{DKn40q+Of3M7;&>c)-2hVR
zaoiQ+@Z+vKK#e<(Ue^YXPS*_{y{;QPI$a-lbh|$A=sf-+laYbJqto>TjGqnR-*|bQ
zfq}uJ+x0~^L#OMJ{h-KuVZg}1(0L5vRQ7-W|9f;E>UKTSdCa5p`U`b1|L}eh1_p)~
z>|li+o%dfn_zO~Y__*r{h>OpFJmt|FdcvdE_l!rc>k*I6b0BBfFfuT7Gk}b`|Kbir
z&wf#mQF|Cbc7lwW3K2f;dI93yD`0Q-hF<XK^}T{*)JFz{Q4|0E|Gy8^W(3)h0y3c4
z^#u#aTOQV~H~3qn|Ns9F38wDYA14ok;>4r*jX-DZpU%=B&9#3ROVt}|fBgT?z)&i;
zf1;xU!wdbt|NrlbaByJQ2jcDr^*LYM{`3F;1c>f^Ahr8JS>wg}|NsBTf{pB~{nPFG
zC-(3Ju=$;}KRmi!e|U5=Kt({QK*FQ578D0BKn}h79~@|4XLcTc!3T<ogAbTI7;kuh
zorz|S0|&$!50J^7r5`*xLqSIU=oawkcKy)JV0oxU24ohP{{zIYWdreFbAjCP8WbEK
zVh=Nb^AWgQfR_ZI5FW*&Aut*OqaiRF0;3@?8UmvsFd71*Aut*OLpcOM^9soBS13v>
zS5Qz$&PmKINKH{F$ydnCE3t?#K@}^72y!tnFiJC9gXU^MbD0m`|Njq~CrtS8|39cR
zI^o0r|5F$k7~DSo{}1Xe-um?a{}e_B28qxA|8HSrV9@>i|NjLB1_rCo|NnnrU|{h1
z{Qo~_9<S;1|NkM33=C5~|NmbC>OL_rFo3#}Aa^oW1u-yI2rx?Xuyag+&V7K^2;6x8
z|GyeYfeX6;Xzmfz0sr#;|9{ZH0!Ubefq}t=fq}u`J;ZGcd;)HK5?=h=<s1zR_EOeb
z#wto6bs)2H7#J8rKmGsD0}^oL6KG>{=4Er|VF%5ZfaF2lZ>LZH{|h3^`yk}kFfcHf
zeER?26j|Q2nK_$>odYztbB2L|fe#cmAiu%PcWq{7?qUQR0<r@X9%`Td{|C>Z!qoVJ
zr5Ql-pm37-^#8vTvK_Suc~E%Uef<C54q3huAs@iVz!3BC|9?=wngM2h07M?7WfYHw
zz-S1JhQMeDjE2By2#kinXb6mkz-S22F9aF{A?vpygdubQln?4MfLx&nWk4wgBPat(
zf!C6O)WP_EPzID@h=4Mn6nJeJNWCnGU|?XF43z-)fk0x=^_09IHfX)J2*h2IP(Ey3
zvow?s>VtupQXqnXfnf!79W$u!0uloCr9d=jE)hgmK-V3A{r5i~#NPqs!}@P8SRnR+
zCWb-s51{g(`8*K66*S|_z`y|Nhl2PLAcBE`0o=cVvOyGRA{s<9K-ZB$wK0JDtsrq&
zKNGg*OdKQ#TK3HWu^%RWgB`+$`NIRM4m7<AV#4hI_aEY)4ygM7P(IAw4^Vy{R34<4
zo*1^S9NkVcXneat=`bjr2BpiObQ_eO2Bp!>ad&pMQqXYs3)NHrFWod$04?)0G&C|)
z&<ILRQSeACflBC_XfmLyHUP&bI4v<UFt|IaFd7#a8XA}~FdT#02ctp#YOvi9b*x3D
zd3l+6=?dw|$x!p*7Bir$P0Y*7Ps+^0suq^MLDT8(jw-ALIi=~Dc?x-nxv5qPP>mpa
zVd)N{PRrdtoFR)<39@b*Bo7s50;NBGumA%CL`=K5Br!QVJ~=0`ID>&f7)4GiIW4}R
zD8D2%xg;|`5430>mj57nwcPxJLOk6f89=k(3}PsHwP8ze9fN~igF-z0{eq$E$id3M
z;iSb5at|zzLCjPHCuuaZ@^dpw;?s%}b5r9B@-y>FQi~WE7+`4~qECxW2)eBRJT3yV
z1Z;;Q#D7Jpi8-0+c_3j>SYeA(*q##@jUG><aXK2Oqxlq8Zj9zrP@xSgPe3%Z92zZq
zL4h$^_Kx`a6xKF^(WCV#!)O}`UN)$(LYuFn?OsS(Ioj?`%7nMiLCIvaJ_YSD1&0K*
zuQuA38SS4kFpTz3htHV9h0$>&26xAyIgSJx3j>WKfzCZZ_X8|muR`M&G@gY}i+vmg
zUC-z^)#%tGqz$ApI-cx^J<q`AV<6!)I-Wc_M=&}^Fgou8nybU?D}g%LpgI^*R;Vx<
zCmO=r(y%cqY-(V2IE==o26m2@7_`2}rbYrfXRQFGv8fS*%E4%?YM^#VLuqVkV0NfN
z&4czLF(}Y9I}5`{@cbRJB*;t#CO-H)Crl1Je~v}m1f+n84<4Q%E(n7UfWjgU-ocGU
zycMJgi}*4e;)igEKf)pY8;7_ABdCkb%z%FGm=Y*}u=p3e-T{la8&o~4j|Q?1grjhX
z7vT`^#v#4}hxh>;;&*U}f5aiq1zH%u#K!<@i-Oz^!b(taSUv%Xfv_D^9K*jj#H(<K
z&&DBs0EhSk9O5jX31uwlM-hj(6I2}CznM^RSe^&@6@>ekL8l^N=9ihwpwo}|7#=|L
zBuFg?&xVQ%K-bTJ#6Wl*R2;Uh1|$Z;N0>qBP?BMSBV>ICD4Iax7r^2o@O3O8F%bR^
zH3zm{2P6i<%q$>tgc)G#VnAXbti*!d{n}vl0t_6`^YCEydP2oH(ZtiC;#_Fr-B59E
zH1XA7aY+WyMs<)oVCL^)frOhBbe$1+zW@UR!z-vbZ2b{z9SyGV{|7c-h(SaN5^f+n
zU>IBZ#sgk-Ajkka_YbC4o)r{sq73NkQZ&Hg;ta5LJ23Tjte`WqBp5*FHNeC`v?)6S
zg93vDLjZK04@eAzU0Fe6dIIos9AWE^ezJhhx8q{~9V!7*2im6sqC-IHnIsrMyZk|X
z7*1qmU=U*BXMoiyF!6MdIE;ftw}8Zv@-^7|3=9l&SQ!|U82A`^py3bRGs3{Yun(jj
zNk5Ev9jg8cR6ThA2Ll6xB|F6ZuyO#r7lwg>;S&yX%-A6IRzb~yt=WiT1Nn=G0al;F
z>`h=}U=U=&4Cfq>dYB?4dIt{iUm$a^oZBbB4sp*RsC&TsUKkh{jM*Xaiyn`bOdxSd
zh8fU&3bWb)tX>i$J@|mb2c`-^7vK<Y1E(K^Iv8sz)SbCdcf!`kEr6N>Is*cx7EC7>
zl^E*fGw4AlTjCRwGUM~|OH%ccv5Cc}=A~d0*UQK+!6pt;k4sLkG%qJJJ2j^gr$&4V
z^uQ-2mKNaDj7MG%e4-#0FN2*6mW&4nL`h;g!u-s<%o5~Kf$%|E(AA*&7@-cEIF?XA
z(tsHP5J^nmL&QO@!6k?0Ya|U|AH##AxFoS8GdaE}H77qA*}tgbAe#{WMwLVLC#oDs
zA3k|3;eo{f%y2<fgc$~?@?ckBq!3g!XyJt_2{r&V+~QMmAc2-xk_tM;5)_C9nW+$`
zAc6{)GEmM+E-EQ5DNRe$OJ+z(ElN$#EG|hciZ98HPtM8DOD$%Ik59>uPtVCuO3aB*
zDakJ?j!!JDU`Wo-EyzhNNlno+z^)=bEi*4OKC!4Mu`)h2ucWAw0kTvsr8GCUk|7?t
za1P9i2PF#>r6sAwC3?vf6`&(Q&En$=ic4}VQ!7%FOF>KijLHmsjEhqXU2)46Bo^V8
zwJb<1iZ9K>Yl10UKDflkB0fGdALK@c_$U*@cvv`tL^2a|GOH3nu8L30ONmcOEiNf4
z1usmDH^|Inh<Eq#cXITJk1sAwiua6%o-pbb<ml@f@9O6gAI}gU@9q~G@9Gf`5%h2g
zVu*K%^mFv}bcXBpcXJDN4T%qNbn<bHXNXTtNi0cZi1+l5FD^;R%!@BAPE7&DL2-V3
zMq*w{PAUU9>@g2FbpWq^j5pFVHetY#B0xdv9b95)2KQWQQG8BjafxT9t8r>x3g|Re
zq!Uu%CW4MJ1sxx23f?5^ndutj9TFdG1V!YY;0iGwdSYsPlpijanI@&CXXb(2268q-
ze0+$nGc0@|XWEi`IxU(D$T%Mt!vyfjvuL6?eP&XeS(OU%SUf1wK`E~YbZTu<aWRY?
zh4qYEbn_u6?4pWd9{y`moLW+j^Bi6j-3)rgmANH}Nep_$B}EWA1I7Zcg)Lyv16S$k
zd8K*<MfnA(MJ1I`Ax9@qU2rW2lFI-sNzzNH%qy<UWdPG9MGSf%nX=TPV$cd-WKMh$
zgI-Z;P9jJllvR*Z!k`C^cfFF-iV_ArP{G5XSCkJ5F$TTV3}{i4ky3=<L3BXM9Ec7W
zJEbx&F*h@rK`$NDx=7D2(F0omF)XRLm_aW&KQ}iuuLR;q@G-r5i6tdPnMtK3sm0*-
z4TS_~zW}H&0_skJjDns24m%efJl+A4fMSqZC=*O6L(k8K>4%+n4m+0|zUB$68oEFk
z$_7zpX!>E}53uvl(e=an3n0B93|jXOYRkjyhwWpi0QFx%=d^<qA+5UxkLy6sz6VKx
z_N0IN|34q5AGYsd2UNcXND&tOP+<l?=$;3de%QW<2T=VS&;SGNTL3X(_QUokgfW0l
z5eD@EAtu81S-gOH6t=GdA`9x9!B`L)bS(gAPXo+;*gl3lkcAA0^;WQX0+>1&oz1|&
z0NNt~<HPnzbU^h7K&%0ukq%M=b3as=p$Zz7AUTj2Y+uF=sD4oVfW%?;!}P=a4>~mv
z<W*QdN&&jhLjkG~wl4&vAG8+)D$D@W-v?Qa3qGG6WDmUG1Rm&QU;w3WusD<e*#%{S
zsZKQg3efQj1*m?|ISOEfPy#9pJ|`L^1Ug><6t5unf%vfg-vX$@GH5yg$$>Cb7{mnQ
zS!njd`m++yjWD1&R<J@Sf$shVQ2ns*N8FD9(O?gu;3O>kU;?1<1-T!lA2uEUyB`2_
zwggNqh(@=68=CzqpyM7Zpcxl-el|!i2&3D70CW}uG!KB}VdFKh`vTCz3#K1NgU)gQ
z?dO06Gi;yJ3h4a}Fm)iaK^Vq|(Kn!Z8>SyN?g6|10e0U5G&zH|fPjpF$Nxj9|6%%J
z=YD_C2P=cCgYXdLAI$z|X!_yfE1&~37#J8}`45-=_h|ZI{qz8+eq7-PGw&<(E()0Y
zK}TPL<PxCzLF2+8J`AIeF8zYq4^<9R#sJfgt{#-uK#E{AGb8H#3o{ZSIu<|;Jb_jL
zp{GBPIk2<~G8cw3d?BnK(1-)=tFwgq6(j>IKR|nEV15UQ!*D_<gmna}AHu^de?j9m
U*z~K!LUc%i90*~8Ni;440NMl7WB>pF

literal 0
HcmV?d00001

diff --git a/p/parasail/parasail-2.6-GCC-11.3.0.eb b/p/parasail/parasail-2.6-GCC-11.3.0.eb
new file mode 100644
index 0000000..e613ae5
--- /dev/null
+++ b/p/parasail/parasail-2.6-GCC-11.3.0.eb
@@ -0,0 +1,27 @@
+easyblock = 'CMakeMake'
+
+name = 'parasail'
+version = '2.6'
+
+homepage = 'https://github.com/jeffdaily/parasail'
+description = """parasail is a SIMD C (C99) library containing implementations
+ of the Smith-Waterman (local), Needleman-Wunsch (global), and semi-global
+ pairwise sequence alignment algorithms. """
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+# https://github.com/jeffdaily/parasail
+github_account = 'jeffdaily'
+source_urls = [GITHUB_SOURCE]
+sources = ['v%(version)s.tar.gz']
+checksums = ['f175923063547a9c2ca65254bca0745d5d2398216dab7dd937c912a790c98b2f']
+
+builddependencies = [('CMake', '3.23.1')]
+
+sanity_check_paths = {
+    'files': ['bin/parasail_aligner', 'bin/parasail_stats',
+              'lib/libparasail.%s' % SHLIB_EXT, 'include/parasail.h'],
+    'dirs': [],
+}
+
+moduleclass = 'bio'
diff --git a/p/protobuf-python/protobuf-python-3.11.4-GCCcore-11.3.0.eb b/p/protobuf-python/protobuf-python-3.11.4-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..6569642
--- /dev/null
+++ b/p/protobuf-python/protobuf-python-3.11.4-GCCcore-11.3.0.eb
@@ -0,0 +1,37 @@
+easyblock = 'PythonPackage'
+
+name = 'protobuf-python'
+version = '3.11.4'
+
+homepage = 'https://github.com/google/protobuf/'
+description = """Python Protocol Buffers runtime library."""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://pypi.python.org/packages/source/p/protobuf']
+sources = [{'download_filename': 'protobuf-%(version)s.tar.gz', 'filename': SOURCE_TAR_GZ}]
+#checksums = ['9df0c10adf3e83015ced42a9a7bd64e13d06c4cf45c340d2c63020ea04499d0a']
+
+builddependencies = [('binutils', '2.38')]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('protobuf', version)
+]
+
+download_dep_fail = True
+use_pip = True
+sanity_pip_check = True
+
+start_dir = "python"
+
+# Make sure protobuf is installed as a regular folder or it will not be found if
+# other google packages are installed in other site-packages folders
+sanity_check_paths = {
+    'files': [],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/google/protobuf'],
+}
+
+options = {'modulename': 'google.protobuf'}
+
+moduleclass = 'devel'
diff --git a/p/protobuf-python/protobuf-python-3.19.4-GCCcore-11.3.0.eb b/p/protobuf-python/protobuf-python-3.19.4-GCCcore-11.3.0.eb
index 76dece6..d28801a 100644
--- a/p/protobuf-python/protobuf-python-3.19.4-GCCcore-11.3.0.eb
+++ b/p/protobuf-python/protobuf-python-3.19.4-GCCcore-11.3.0.eb
@@ -23,6 +23,8 @@ download_dep_fail = True
 use_pip = True
 sanity_pip_check = True
 
+start_dir = "python"
+
 # Make sure protobuf is installed as a regular folder or it will not be found if
 # other google packages are installed in other site-packages folders
 sanity_check_paths = {
diff --git a/p/protobuf/protobuf-3.11.4-GCCcore-11.3.0.eb b/p/protobuf/protobuf-3.11.4-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..a51a542
--- /dev/null
+++ b/p/protobuf/protobuf-3.11.4-GCCcore-11.3.0.eb
@@ -0,0 +1,29 @@
+easyblock = 'CMakeMake'
+
+name = 'protobuf'
+version = '3.11.4'
+
+homepage = 'https://github.com/google/protobuf/'
+description = """Google Protocol Buffers"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/google/protobuf/archive/v%(version)s/']
+sources = [SOURCE_TAR_GZ]
+#checksums = ['3bd7828aa5af4b13b99c191e8b1e884ebfa9ad371b0ce264605d347f135d2568']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('CMake', '3.23.1'),
+]
+
+srcdir = 'cmake'
+
+configopts = '-Dprotobuf_BUILD_TESTS=OFF -Dprotobuf_BUILD_SHARED_LIBS=ON '
+
+sanity_check_paths = {
+    'files': ['bin/protoc', 'lib/libprotobuf.%s' % SHLIB_EXT],
+    'dirs': [],
+}
+
+moduleclass = 'devel'
diff --git a/p/pullseq/pullseq-1.0.2-GCCcore-11.3.0.eb b/p/pullseq/pullseq-1.0.2-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..153fc50
--- /dev/null
+++ b/p/pullseq/pullseq-1.0.2-GCCcore-11.3.0.eb
@@ -0,0 +1,37 @@
+easyblock = 'ConfigureMake'
+
+name = 'pullseq'
+version = '1.0.2'
+
+homepage = 'https://github.com/bcthomas/pullseq'
+description = "Utility program for extracting sequences from a fasta/fastq file"
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/bcthomas/pullseq/archive/']
+sources = ['%(version)s.tar.gz']
+checksums = ['a295d7e0e2d64ed05d293d795d1716376707e465f2c42ede6454f27db586c85f']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('Autotools', '20220317'),
+]
+dependencies = [
+    ('PCRE', '8.45'),
+]
+
+preconfigopts = "./bootstrap && "
+
+buildopts = 'CFLAGS="$CFLAGS -fcommon"'
+
+sanity_check_paths = {
+    'files': ['bin/pullseq', 'bin/seqdiff'],
+    'dirs': [],
+}
+
+sanity_check_commands = [
+    "pullseq --help 2>&1 | grep 'pullseq - a bioinformatics tool'",
+    "seqdiff --help 2>&1 | grep 'seqdiff - a bioinformatics tool'",
+]
+
+moduleclass = 'bio'
diff --git a/p/pydicom/pydicom-2.3.0-GCCcore-11.3.0.eb b/p/pydicom/pydicom-2.3.0-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..a92eebf
--- /dev/null
+++ b/p/pydicom/pydicom-2.3.0-GCCcore-11.3.0.eb
@@ -0,0 +1,26 @@
+easyblock = 'PythonPackage'
+
+name = 'pydicom'
+version = '2.3.0'
+
+homepage = 'https://pydicom.github.io/'
+description = "Pure python package for DICOM medical file reading and writing."
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = [GITHUB_SOURCE]
+sources = ['v%(version)s.tar.gz']
+checksums = ['e50dfa6bc44516816248c750a93b07fa577b867433bd8bf4fd3319a4a19259a5']
+
+builddependencies = [
+    ('binutils', '2.38'),
+]
+dependencies = [
+    ('Python', '3.10.4'),
+]
+
+download_dep_fail = True
+use_pip = True
+sanity_pip_check = True
+
+moduleclass = 'vis'
diff --git a/p/pyfaidx/pyfaidx-0.7.1-GCCcore-11.3.0.eb b/p/pyfaidx/pyfaidx-0.7.1-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..6881ae5
--- /dev/null
+++ b/p/pyfaidx/pyfaidx-0.7.1-GCCcore-11.3.0.eb
@@ -0,0 +1,30 @@
+easyblock = 'PythonPackage'
+
+name = 'pyfaidx'
+version = '0.7.1'
+
+homepage = 'https://pypi.python.org/pypi/pyfaidx'
+description = "pyfaidx: efficient pythonic random access to fasta subsequences"
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+sources = [SOURCE_TAR_GZ]
+checksums = ['3977632b7fd29049f8b11035d7e9dea0e2c5da9c235f982b4c3fae06ff1fa23f']
+
+builddependencies = [('binutils', '2.38')]
+
+dependencies = [('Python', '3.10.4')]
+
+download_dep_fail = True
+use_pip = True
+
+sanity_check_paths = {
+    'files': ['bin/faidx'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages'],
+}
+
+sanity_check_commands = ["faidx --help"]
+
+sanity_pip_check = True
+
+moduleclass = 'bio'
diff --git a/p/pyminc/pyminc-0.57-foss-2022a.eb b/p/pyminc/pyminc-0.57-foss-2022a.eb
index bc44177..7aec9b2 100644
--- a/p/pyminc/pyminc-0.57-foss-2022a.eb
+++ b/p/pyminc/pyminc-0.57-foss-2022a.eb
@@ -14,7 +14,7 @@ checksums = ['15f8b2a47a4cce2ef09175c2012c9d33f30250846d109b1c0838139758bdf7ba']
 dependencies = [
     ('Python', '3.10.4'),
     ('minc-toolkit', '1.9.18.2'), # Need to install
-    ('SciPy-bundle', '2022.05'),
+    #('SciPy-bundle', '2022.05'),
 	('PyYAML', '6.0') # Need to install
 ]
 
diff --git a/p/pyspoa/pyspoa-0.0.9-GCC-11.3.0.eb b/p/pyspoa/pyspoa-0.0.9-GCC-11.3.0.eb
new file mode 100644
index 0000000..0129953
--- /dev/null
+++ b/p/pyspoa/pyspoa-0.0.9-GCC-11.3.0.eb
@@ -0,0 +1,53 @@
+easyblock = 'PythonPackage'
+
+name = 'pyspoa'
+version = '0.0.9'
+
+local_cereal_version = '1.3.2'
+
+homepage = 'https://github.com/nanoporetech/pyspoa'
+description = "Python bindings to spoa."
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+sources = [
+    {
+        'source_urls': ['https://github.com/nanoporetech/pyspoa/archive/'],
+        'download_filename': 'v%(version)s.tar.gz',
+        'filename': 'pyspoa-%(version)s.tar.gz',
+    },
+    {
+        'source_urls': ['https://github.com/USCiLab/cereal/archive/'],
+        'download_filename': 'v%s.tar.gz' % local_cereal_version,
+        'filename': 'cereal-%s.tar.gz' % local_cereal_version,
+    },
+]
+patches = ['pyspoa-%(version)s_use-spoa-dep.patch']
+
+checksums = [
+    {'pyspoa-0.0.9.tar.gz': '30b883b8dfc2355a6062f9f848e825f7ffac169657190d797cf17b4314d588fe'},
+    {'cereal-%s.tar.gz' % local_cereal_version: '16a7ad9b31ba5880dac55d62b5d6f243c3ebc8d46a3514149e56b5e7ea81f85f'},
+    {'pyspoa-0.0.9_use-spoa-dep.patch': 'fdd11ecc22f65e5c06491fb60f59aab3427d264903d678d59095029ab1e65da7'},
+]
+
+builddependencies = [('CMake', '3.23.1')]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('pybind11', '2.9.2'),
+    ('spoa', '4.0.7'),
+]
+
+download_dep_fail = True
+use_pip = True
+sanity_pip_check = True
+
+preinstallopts = "mkdir -p src/vendor/cereal && ln -s %(builddir)s/cereal-*/include src/vendor/cereal/include && "
+# strip out cmake requirements, since we provide that as proper dependency
+preinstallopts += "sed -i 's/.cmake==[0-9.]*.//g' setup.py && "
+
+options = {'modulename': 'spoa'}
+
+sanity_check_commands = ["cd %(builddir)s/*/tests && python test_pyspoa.py"]
+
+moduleclass = 'lib'
diff --git a/p/pyspoa/pyspoa-0.0.9_use-spoa-dep.patch b/p/pyspoa/pyspoa-0.0.9_use-spoa-dep.patch
new file mode 100644
index 0000000..969e77f
--- /dev/null
+++ b/p/pyspoa/pyspoa-0.0.9_use-spoa-dep.patch
@@ -0,0 +1,25 @@
+use spoa dependency provided through EasyBuild
+
+author: Kenneth Hoste (HPC-UGent)
+updated by: Petr Král (Inuits)
+diff --git a/pyspoa-0.0.9/setup.py.orig b/pyspoa-0.0.9/setup.py
+index 53338a5..6aaff2b 100644
+--- a/pyspoa-0.0.9/setup.py.orig
++++ b/pyspoa-0.0.9/setup.py
+@@ -106,14 +106,14 @@ ext_modules = [
+         'spoa',
+         ['pyspoa.cpp'],
+         include_dirs=[
+-            'src/include/spoa',
++            os.path.join(os.getenv('EBROOTSPOA'), 'include/spoa'),
+             'src/vendor/cereal/include',
+             get_pybind_include(),
+             get_pybind_include(user=True),
+         ],
+         language='c++',
+         extra_objects=[
+-            'src/build/lib/libspoa.a'
++            os.path.join(os.getenv('EBROOTSPOA'), 'lib64/libspoa.a'),
+         ],
+ 
+     ),
diff --git a/p/python-parasail/python-parasail-1.3.3-foss-2022a.eb b/p/python-parasail/python-parasail-1.3.3-foss-2022a.eb
new file mode 100644
index 0000000..42d5f17
--- /dev/null
+++ b/p/python-parasail/python-parasail-1.3.3-foss-2022a.eb
@@ -0,0 +1,32 @@
+easyblock = 'PythonPackage'
+
+name = 'python-parasail'
+version = '1.3.3'
+
+homepage = 'https://github.com/jeffdaily/parasail-python'
+description = "Python Bindings for the Parasail C Library"
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://pypi.python.org/packages/source/%(nameletter)s/parasail']
+sources = ['parasail-%(version)s.tar.gz']
+checksums = ['06f05066d9cf624c0b043f51a1e9d2964154e1edd0f9843e0838f32073e576f8']
+
+builddependencies = [
+    ('parasail', '2.6'),
+]
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+]
+
+download_dep_fail = True
+use_pip = True
+sanity_pip_check = True
+
+# make sure setup.py finds the parasail library
+preinstallopts = "ln -s $EBROOTPARASAIL/lib/libparasail.so parasail/libparasail.%s && " % SHLIB_EXT
+
+options = {'modulename': 'parasail'}
+
+moduleclass = 'bio'
diff --git a/q/Qt5/Qt5-5.13.1-GCCcore-11.3.0.eb b/q/Qt5/Qt5-5.13.1-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..4eb71d5
--- /dev/null
+++ b/q/Qt5/Qt5-5.13.1-GCCcore-11.3.0.eb
@@ -0,0 +1,81 @@
+easyblock = 'EB_Qt'
+
+name = 'Qt5'
+version = '5.13.1'
+
+homepage = 'https://qt.io/'
+description = "Qt is a comprehensive cross-platform C++ application framework."
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+# disabling use of -ftree-vectorize is required to avoid compilation failures on some systems (e.g. Intel Skylake X)
+toolchainopts = {'cstd': 'c++11', 'vectorize': False}
+
+source_urls = [
+    'https://download.qt.io/official_releases/qt/%(version_major_minor)s/%(version)s/single/',
+    'https://download.qt.io/archive/qt/%(version_major_minor)s/%(version)s/single/',
+    'https://download.qt.io/new_archive/qt/%(version_major_minor)s/%(version)s/single/',
+]
+sources = ['qt-everywhere-src-%(version)s.tar.xz']
+patches = [
+    'Qt5-%(version)s_fix-avx2.patch',
+    'Qt5-%(version)s_fix-qmake-libdir.patch',
+    'Qt5-%(version)s_fix-mantissatable.patch',
+    'Qt5-%(version)s_fix-webrtc.patch',
+    'qendian.patch',
+    'qbytearraymatcher.patch',
+    'qjp2handler.cpp.patch',
+    'qqmlprofilerevent_p.h.patch',
+    'bidi.patch',
+    'convert.patch',
+    'exception_handler.patch',
+    'clockdrift_detector.patch',
+    'decoding_state.patch',
+    'rule_bison.py.patch',
+]
+#checksums = [
+#    'adf00266dc38352a166a9739f1a24a1e36f1be9c04bf72e16e142a256436974e',  # qt-everywhere-src-5.13.1.tar.xz
+#    '6f46005f056bf9e6ff3e5d012a874d18ee03b33e685941f2979c970be91a9dbc',  # Qt5-5.13.1_fix-avx2.patch
+#    '511ca9c0599ceb1989f73d8ceea9199c041512d3a26ee8c5fd870ead2c10cb63',  # Qt5-5.13.1_fix-qmake-libdir.patch
+#    'cb23b917dd145b6775d7ffb3d8c143749d183d32972111f0c31133e41803f56b',  # Qt5-5.13.1_fix-mantissatable.patch
+#    '0e449fce243587b9001d8060d6417c285d4ad8fe969b1a2528a3058a29bc6af6',  # Qt5-5.13.1_fix-webrtc.patch
+#]
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('pkg-config', '0.29.2'),
+    # deps for QtWebEngine
+    ('Bison', '3.8.2'),
+    ('flex', '2.6.4'),
+    ('gperf', '3.1'),
+    ('Ninja', '1.10.2'),
+    ('Python', '2.7.18', '-bare'),
+    ('re2c', '2.2')
+]
+
+dependencies = [
+    ('double-conversion', '3.2.0'),
+    ('GLib', '2.72.1'),
+    ('PCRE2', '10.40'),
+    ('libpng', '1.6.37'),
+    # deps for QtWebEngine
+    ('X11', '20220504'),
+    ('fontconfig', '2.14.0'),
+    ('DBus', '1.14.0'),
+    ('libevent', '2.1.12'),
+    ('libGLU', '9.0.2'),
+    ('libjpeg-turbo', '2.1.3'),
+    ('NSS', '3.79'),
+    ('snappy', '1.1.9'),
+    ('JasPer', '2.0.33'),
+    ('bzip2', '1.0.8'),
+]
+
+# qtgamepad needs recent kernel/libevdev (fails on RHEL 6.x)
+configopts = '-skip qtgamepad'
+
+# make sure QtWebEngine component is being built & installed
+check_qtwebengine = True
+
+#parallel = 1
+
+moduleclass = 'devel'
diff --git a/q/Qt5/Qt5-5.13.1_fix-mantissatable.patch b/q/Qt5/Qt5-5.13.1_fix-mantissatable.patch
new file mode 100644
index 0000000..7a89f17
--- /dev/null
+++ b/q/Qt5/Qt5-5.13.1_fix-mantissatable.patch
@@ -0,0 +1,22 @@
+replaces F16C preprocessor conditional directives in gen_qfloat16_tables.cpp 
+author: Zdenek Matej, fix taken from Qt5.14, see pr #10332
+--- qtbase/src/tools/qfloat16-tables/gen_qfloat16_tables.cpp
++++ qtbase/src/tools/qfloat16-tables/gen_qfloat16_tables.cpp
+@@ -79,7 +79,7 @@
+     fid.write("#include <QtCore/qfloat16.h>\n\n");
+ 
+     fid.write("QT_BEGIN_NAMESPACE\n\n");
+-    fid.write("#if !defined(__F16C__) && !defined(__ARM_FP16_FORMAT_IEEE)\n\n");
++    fid.write("#if !defined(__ARM_FP16_FORMAT_IEEE)\n\n");
+ 
+     fid.write("const quint32 qfloat16::mantissatable[2048] = {\n");
+     fid.write("0,\n");
+@@ -156,7 +156,7 @@
+ 
+     fid.write("};\n\n");
+ 
+-    fid.write("#endif // !__F16C__ && !__ARM_FP16_FORMAT_IEEE\n\n");
++    fid.write("#endif // !__ARM_FP16_FORMAT_IEEE\n\n");
+     fid.write("QT_END_NAMESPACE\n");
+     fid.close();
+     return 0;
diff --git a/q/Qt5/Qt5-5.13.1_fix-webrtc.patch b/q/Qt5/Qt5-5.13.1_fix-webrtc.patch
new file mode 100644
index 0000000..193a440
--- /dev/null
+++ b/q/Qt5/Qt5-5.13.1_fix-webrtc.patch
@@ -0,0 +1,48 @@
+Patch modified for Qt5 version and easybuild by A Edmondson, 5 October 2020
+Original info follows:
+* https://code.qt.io/cgit/qt/qtwebengine-chromium.git/commit/?id=6e2562dd1efff
+
+From 6e2562dd1efff2b96848e8ec166e8c233029d6cc Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= <emilio@mozilla.com>
+Date: Wed, 29 May 2019 15:30:32 +0200
+Subject: Fix build with recent linux kernel.
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Recent kernel commit[1] moved a bit the define for this constant. This revealed
+a missing include in WebRTC.
+
+[1]: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0768e17073dc5
+
+Bug: webrtc:10677
+Change-Id: I6ed69d307599d077760ae6ad74be10bfbdd1cac6
+Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
+Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
+Cr-Commit-Position: refs/heads/master@{#28108}
+See-Also: https://chromium.googlesource.com/external/webrtc/+/6806550d5d51a820104a12205d1f37ce0acebf19
+Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
+(cherry picked from commit 74e69da92d0a895122ca65922b9a2b8b3926c882)
+Reviewed-by: Michal Klocek <michal.klocek@qt.io>
+---
+ qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc
+index ca78499179a..e8c1474762f 100644
+--- a/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc
++++ b/qtwebengine/src/3rdparty/chromium/third_party/webrtc/rtc_base/physical_socket_server.cc
+@@ -52,6 +52,10 @@
+ #include "rtc_base/timeutils.h"
+ #include "rtc_base/win32socketinit.h"
+ 
++#if defined(WEBRTC_LINUX)
++#include <linux/sockios.h>
++#endif
++
+ #if defined(WEBRTC_WIN)
+ #define LAST_SYSTEM_ERROR (::GetLastError())
+ #elif defined(__native_client__) && __native_client__
+-- 
+cgit v1.2.1
+
diff --git a/q/Qt5/bidi.patch b/q/Qt5/bidi.patch
new file mode 100644
index 0000000..c051b68
--- /dev/null
+++ b/q/Qt5/bidi.patch
@@ -0,0 +1,11 @@
+--- ./qtlocation/src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp.orig	2023-10-24 12:05:58.102136000 +1100
++++ ./qtlocation/src/3rdparty/mapbox-gl-native/platform/default/bidi.cpp	2023-10-24 12:13:20.425096000 +1100
+@@ -3,7 +3,7 @@
+ 
+ #include <unicode/ubidi.h>
+ #include <unicode/ushape.h>
+-
++#include <stdexcept>
+ #include <memory>
+ 
+ namespace mbgl {
diff --git a/q/Qt5/clockdrift_detector.patch b/q/Qt5/clockdrift_detector.patch
new file mode 100644
index 0000000..961a530
--- /dev/null
+++ b/q/Qt5/clockdrift_detector.patch
@@ -0,0 +1,10 @@
+--- ./qtwebengine/src/3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h.orig	2023-10-24 13:42:05.792722000 +1100
++++ ./qtwebengine/src/3rdparty/chromium/third_party/webrtc/modules/audio_processing/aec3/clockdrift_detector.h	2023-10-24 13:42:22.766715000 +1100
+@@ -12,6 +12,7 @@
+ #define MODULES_AUDIO_PROCESSING_AEC3_CLOCKDRIFT_DETECTOR_H_
+ 
+ #include <array>
++#include <stddef.h>
+ 
+ namespace webrtc {
+ 
diff --git a/q/Qt5/convert.patch b/q/Qt5/convert.patch
new file mode 100644
index 0000000..9c0b476
--- /dev/null
+++ b/q/Qt5/convert.patch
@@ -0,0 +1,8 @@
+--- ./qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/util/convert.cpp.orig	2023-10-24 12:47:33.017939000 +1100
++++ ./qtlocation/src/3rdparty/mapbox-gl-native/src/mbgl/util/convert.cpp	2023-10-24 12:47:51.840975000 +1100
+@@ -1,4 +1,5 @@
+ #include <mbgl/util/convert.hpp>
++#include <stdint.h>
+ 
+ namespace mbgl {
+ namespace util {
diff --git a/q/Qt5/decoding_state.patch b/q/Qt5/decoding_state.patch
new file mode 100644
index 0000000..f86f21d
--- /dev/null
+++ b/q/Qt5/decoding_state.patch
@@ -0,0 +1,10 @@
+--- ./qtwebengine/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/decoding_state.h.orig	2023-10-24 16:52:35.299927000 +1100
++++ ./qtwebengine/src/3rdparty/chromium/third_party/webrtc/modules/video_coding/decoding_state.h	2023-10-24 16:53:49.632948000 +1100
+@@ -14,6 +14,7 @@
+ #include <map>
+ #include <set>
+ #include <vector>
++#include <stdint.h> 
+ 
+ namespace webrtc {
+ 
diff --git a/q/Qt5/exception_handler.patch b/q/Qt5/exception_handler.patch
new file mode 100644
index 0000000..433059d
--- /dev/null
+++ b/q/Qt5/exception_handler.patch
@@ -0,0 +1,11 @@
+--- ./qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc.orig	2023-10-24 13:13:30.293848000 +1100
++++ ./qtwebengine/src/3rdparty/chromium/third_party/breakpad/breakpad/src/client/linux/handler/exception_handler.cc	2023-10-24 13:13:53.744830000 +1100
+@@ -138,7 +138,7 @@
+   // SIGSTKSZ may be too small to prevent the signal handlers from overrunning
+   // the alternative stack. Ensure that the size of the alternative stack is
+   // large enough.
+-  static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
++  static const unsigned kSigStackSize = std::max(16384, int(SIGSTKSZ));
+ 
+   // Only set an alternative stack if there isn't already one, or if the current
+   // one is too small.
diff --git a/q/Qt5/qbytearraymatcher.patch b/q/Qt5/qbytearraymatcher.patch
new file mode 100644
index 0000000..0dcfe33
--- /dev/null
+++ b/q/Qt5/qbytearraymatcher.patch
@@ -0,0 +1,10 @@
+--- qtbase/src/corelib/tools/qbytearraymatcher.h.orig	2023-10-23 16:30:15.281988000 +1100
++++ qtbase/src/corelib/tools/qbytearraymatcher.h	2023-10-23 16:31:50.093972000 +1100
+@@ -41,6 +41,7 @@
+ #define QBYTEARRAYMATCHER_H
+ 
+ #include <QtCore/qbytearray.h>
++#include <limits>
+ 
+ QT_BEGIN_NAMESPACE
+ 
diff --git a/q/Qt5/qendian.patch b/q/Qt5/qendian.patch
new file mode 100644
index 0000000..34f50d2
--- /dev/null
+++ b/q/Qt5/qendian.patch
@@ -0,0 +1,10 @@
+--- qtbase/src/corelib/global/qendian.h.orig	2023-10-23 16:15:07.223033000 +1100
++++ qtbase/src/corelib/global/qendian.h	2023-10-23 16:15:33.482055000 +1100
+@@ -47,6 +47,7 @@
+ // include stdlib.h and hope that it defines __GLIBC__ for glibc-based systems
+ #include <stdlib.h>
+ #include <string.h>
++#include <limits>
+ 
+ #ifdef min // MSVC
+ #undef min
diff --git a/q/Qt5/qjp2handler.cpp.patch b/q/Qt5/qjp2handler.cpp.patch
new file mode 100644
index 0000000..44c25a9
--- /dev/null
+++ b/q/Qt5/qjp2handler.cpp.patch
@@ -0,0 +1,10 @@
+--- qtimageformats/src/plugins/imageformats/jp2/qjp2handler.cpp.orig	2023-10-23 17:32:03.303717000 +1100
++++ qtimageformats/src/plugins/imageformats//jp2/qjp2handler.cpp	2023-10-23 17:33:01.584725000 +1100
+@@ -45,6 +45,7 @@
+ #include "qcolor.h"
+ 
+ #include <jasper/jasper.h>
++#include <cmath>
+ 
+ QT_BEGIN_NAMESPACE
+ 
diff --git a/q/Qt5/qqmlprofilerevent_p.h.patch b/q/Qt5/qqmlprofilerevent_p.h.patch
new file mode 100644
index 0000000..136f463
--- /dev/null
+++ b/q/Qt5/qqmlprofilerevent_p.h.patch
@@ -0,0 +1,10 @@
+--- qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h.orig	2023-10-23 21:03:25.119859000 +1100
++++ qtdeclarative/src/qmldebug/qqmlprofilerevent_p.h	2023-10-23 21:03:58.320866000 +1100
+@@ -49,6 +49,7 @@
+ 
+ #include <initializer_list>
+ #include <type_traits>
++#include <limits>
+ 
+ //
+ //  W A R N I N G
diff --git a/q/Qt5/rule_bison.py.patch b/q/Qt5/rule_bison.py.patch
new file mode 100644
index 0000000..7aa8c87
--- /dev/null
+++ b/q/Qt5/rule_bison.py.patch
@@ -0,0 +1,11 @@
+--- ./qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/build/scripts/rule_bison.py.orig	2019-08-09 23:46:06.000000000 +1000
++++ ./qtwebengine/src/3rdparty/chromium/third_party/blink/renderer/build/scripts/rule_bison.py	2023-10-24 18:01:27.118649000 +1100
+@@ -103,7 +103,7 @@
+ outputHFile = open(outputHTmp)
+ outputHContents = outputHFile.read()
+ outputHFile.close()
+-os.unlink(outputHTmp)
++#os.unlink(outputHTmp)
+ 
+ # Rewrite the generated header with #include guards.
+ outputH = os.path.join(outputDir, inputRoot + '.h')
diff --git a/q/qctool/qctool-2.2.0-GCC-11.3.0.eb b/q/qctool/qctool-2.2.0-GCC-11.3.0.eb
new file mode 100644
index 0000000..7d3904a
--- /dev/null
+++ b/q/qctool/qctool-2.2.0-GCC-11.3.0.eb
@@ -0,0 +1,35 @@
+easyblock = 'ConfigureMake'
+
+name = 'qctool'
+version = '2.2.0'
+
+homepage = 'https://www.well.ox.ac.uk/~gav/qctool/documentation/download.html'
+description = """ qctool v2 tool for quality control and analysis of gwas datasets. ."""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+sources = ['%(namelower)s.zip']
+#source_urls = ['https://code.enkre.net/qctool/zip/release/qctool.tgz']
+
+builddependencies = [('binutils', '2.38')]
+dependencies = [
+  ('LAPACK', '3.10.1'),
+  ('OpenBLAS', '0.3.20'),
+]
+
+configure_cmd =  './waf configure --prefix=%(installdir)s'
+
+skipsteps = ['build']
+
+install_cmd = './waf install'
+
+#files_to_copy = [('build/release/apps/*', 'bin/'
+
+sanity_check_paths = {
+    'files': ['bin/qctool_v2.2.0'],
+    'dirs': []
+}
+
+
+moduleclass = 'bio'
+
diff --git a/r/R/R-4.1.0_identify-flexiblas-in-configure.patch.1 b/r/R/R-4.1.0_identify-flexiblas-in-configure.patch.1
new file mode 100644
index 0000000..4731a8a
--- /dev/null
+++ b/r/R/R-4.1.0_identify-flexiblas-in-configure.patch.1
@@ -0,0 +1,12 @@
+Make R identify -lflexiblas as being for FlexiBLAS, so that it is not reported as a generic BLAS
+Patch by Simon Branford (University of Birmingham)
+--- configure.orig	2021-06-03 17:38:35.653766000 +0100
++++ configure	2021-06-03 17:40:25.970132472 +0100
+@@ -55457,6 +55457,7 @@
+     *-latlas*) r_blas=ATLAS ;;
+     *-lgoto*) r_blas=Goto ;;
+     *-lopenblas*) r_blas=OpenBLAS ;;
++    *-lflexiblas*) r_blas=FlexiBLAS ;;
+     *-lacml*) r_blas=ACML ;;
+     *-lmkl*) r_blas=MKL ;;
+     *-lsgemm*) r_blas=PhiPack ;;
diff --git a/r/R/R-4.1.2-foss-2022a.eb b/r/R/R-4.1.2-foss-2022a.eb
new file mode 100644
index 0000000..aefa759
--- /dev/null
+++ b/r/R/R-4.1.2-foss-2022a.eb
@@ -0,0 +1,3339 @@
+name = 'R'
+version = '4.1.2'
+
+homepage = 'https://www.r-project.org/'
+description = """R is a free software environment for statistical computing
+ and graphics."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://cloud.r-project.org/src/base/R-%(version_major)s']
+sources = [SOURCE_TAR_GZ]
+patches = ['%(name)s-4.1.0_identify-flexiblas-in-configure.patch']
+checksums = [
+    '2036225e9f7207d4ce097e54972aecdaa8b40d7d9911cd26491fac5a0fab38af',  # R-4.1.2.tar.gz
+    '2c6720e2e144ae4fe00842daab0ebba72241080603e0ff1a6ca758738041b257',  # R-4.1.0_identify-flexiblas-in-configure.patch
+]
+
+builddependencies = [
+    ('pkgconf', '1.8.0'),
+    ('Xvfb', '21.1.3'),
+    ('Autotools', '20220317'),
+]
+dependencies = [
+    ('X11', '20220504'),
+    ('Mesa', '22.0.3'),
+    ('libGLU', '9.0.2'),
+    ('cairo', '1.17.4'),
+    ('libreadline', '8.1.2'),
+    ('ncurses', '6.3'),
+    ('bzip2', '1.0.8'),
+    ('XZ', '5.2.5'),
+    ('zlib', '1.2.12'),
+    ('SQLite', '3.38.3'),
+    ('PCRE2', '10.40'),
+    ('libpng', '1.6.37'),  # for plotting in R
+    ('libjpeg-turbo', '2.1.3'),  # for plottting in R
+    ('LibTIFF', '4.3.0'),
+    ('Java', '11', '', SYSTEM),
+    ('Tk', '8.6.12'),  # for tcltk
+    ('cURL', '7.83.0'),  # for RCurl
+    ('libxml2', '2.9.13'),  # for XML
+    ('GMP', '6.2.1'),  # for igraph
+    ('NLopt', '2.7.1'),  # for nloptr
+    ('FFTW', '3.3.10'),  # for fftw
+    ('libsndfile', '1.1.0'),  # for seewave
+    ('ICU', '71.1'),  # for rJava & gdsfmt
+    ('HDF5', '1.12.2'),  # for hdf5r
+    ('UDUNITS', '2.2.28'),  # for units
+    ('GSL', '2.7'),  # for RcppGSL
+    ('ImageMagick', '7.1.0-37'),  # for animation
+    ('GLPK', '5.0'),  # for Rglpk
+    ('nodejs', '16.15.1'),  # for V8 (required by rstan)
+    ('GDAL', '3.5.0'),  # for sf
+    ('MPFR', '4.1.0'),  # for Rmpfr
+    ('libgit2', '1.4.3'),
+    ('OpenSSL', '1.1', '', SYSTEM),
+]
+
+
+# Some R extensions (mclust, quantreg, waveslim for example) require the math library (-lm) to avoid undefined symbols.
+# Adding it to FLIBS makes sure it is present when needed.
+preconfigopts = 'export FLIBS="$FLIBS -lm" && '
+
+configopts = "--with-pic --enable-threads --enable-R-shlib"
+# some recommended packages may fail in a parallel build (e.g. Matrix), and
+# we're installing them anyway below
+configopts += " --with-recommended-packages=no"
+
+# specify that at least EasyBuild v3.5.0 is required,
+# since we rely on the updated easyblock for R to configure correctly w.r.t. BLAS/LAPACK
+easybuild_version = '3.5.0'
+
+exts_default_options = {
+    'source_urls': [
+        'https://cran.r-project.org/src/contrib/Archive/%(name)s',  # package archive
+        'https://cran.r-project.org/src/contrib/',  # current version of packages
+        'https://cran.freestatistics.org/src/contrib',  # mirror alternative for current packages
+    ],
+    'source_tmpl': '%(name)s_%(version)s.tar.gz',
+}
+
+# !! order of packages is important !!
+# packages updated on 1st November 2021
+exts_list = [
+    # include packages that are part of the base installation of R,
+    # both to make sure they are available (via sanity check),
+    # and to be able to pass the check for required dependencies when installing extensions in parallel
+    'base',
+    'compiler',
+    'datasets',
+    'graphics',
+    'grDevices',
+    'grid',
+    'methods',
+    'parallel',
+    'splines',
+    'stats',
+    'stats4',
+    'tcltk',
+    'tools',
+    'utils',
+    ('Rmpi', '0.6-9.2', {
+        'checksums': ['358ac1af97402e676f209261a231f36a35e60f0301edf8ca53dac11af3c3bd1a'],
+    }),
+    ('abind', '1.4-5', {
+        'checksums': ['3a3ace5afbcb86e56889efcebf3bf5c3bb042a282ba7cc4412d450bb246a3f2c'],
+    }),
+    ('magic', '1.5-9', {
+        'checksums': ['fa1d5ef2d39e880f262d31b77006a2a7e76ea38e306aae4356e682b90d6cd56a'],
+    }),
+    ('Rcpp', '1.0.7', {
+        'checksums': ['15e5a4732216daed16263c79fb37017c2ada84a2d4e785e3b76445d0eba3dc1d'],
+    }),
+    ('RcppProgress', '0.4.2', {
+        'checksums': ['b1624b21b7aeb1dafb30f092b2a4bef4c3504efd2d6b00b2cdf55dc9df194b48'],
+    }),
+    ('lpSolve', '5.6.15', {
+        'checksums': ['4627be4178abad34fc85a7d264c2eb5e27506f007e46687b0b8a4f8fbdf4f3ba'],
+    }),
+    ('linprog', '0.9-2', {
+        'checksums': ['8937b2e30692e38de1713f1513b78f505f73da6f5b4a576d151ad60bac2221ce'],
+    }),
+    ('geometry', '0.4.5', {
+        'checksums': ['8fedd17c64468721d398e3c17a39706321ab71098b29f5e8d8039dd115a220d8'],
+    }),
+    ('bit', '4.0.4', {
+        'checksums': ['e404841fbe4ebefe4ecd4392effe673a8c9fa05f97952c4ce6e2f6159bd2f168'],
+    }),
+    ('filehash', '2.4-2', {
+        'checksums': ['b6d056f75d45e315943a4618f5f62802612cd8931ba3f9f474b595140a3cfb93'],
+    }),
+    ('ff', '4.0.5', {
+        'checksums': ['9aba9e271144ec224063ddba0d791e2fcdb9c912d48fdc49e204fce628355037'],
+    }),
+    ('bnlearn', '4.7', {
+        'checksums': ['2e1dd7ba9b7cf07e51eec3238684310edbeb0573d9b907049fb6b28db3022817'],
+    }),
+    ('bootstrap', '2019.6', {
+        'checksums': ['5252fdfeb944cf1fae35016d35f9333b1bd1fc8c6d4a14e33901160e21968694'],
+    }),
+    ('combinat', '0.0-8', {
+        'checksums': ['1513cf6b6ed74865bfdd9f8ca58feae12b62f38965d1a32c6130bef810ca30c1'],
+    }),
+    ('deal', '1.2-39', {
+        'checksums': ['a349db8f1c86cbd8315c068da49314ce9eb585dbb50d2e5ff09300506bd8806b'],
+    }),
+    ('fdrtool', '1.2.16', {
+        'checksums': ['e7dea648ee018e2c8c8834084051c76f7e8b2b42067772c62035a941c32457a9'],
+    }),
+    ('formatR', '1.11', {
+        'checksums': ['bd81662d09cf363652761e63ba5969c71be4dd5ae6fc9098f440d6729254a30c'],
+    }),
+    ('gtools', '3.9.2', {
+        'checksums': ['03b1898bf581f6d12fa90e23ff700cfa7c834ac10c6654bdac42d7ec943fa953'],
+    }),
+    ('gdata', '2.18.0', {
+        'checksums': ['4b287f59f5bbf5fcbf18db16477852faac4a605b10c5284c46b93fa6e9918d7f'],
+    }),
+    ('GSA', '1.03.1', {
+        'checksums': ['e192d4383f53680dbd556223ea5f8cad6bae62a80a337ba5fd8d05a8aee6a917'],
+    }),
+    ('xfun', '0.27', {
+        'checksums': ['c775bf33a6bc57f8022960cbf7dc20a4e82175a9c71807b2723f46ade6805485'],
+    }),
+    ('highr', '0.9', {
+        'checksums': ['beff11390d936c90fdcc00e7ed0eb72220f3de403a51b56659e3d3e0b6d8ed4d'],
+    }),
+    ('infotheo', '1.2.0', {
+        'checksums': ['9b47ebc3db5708c88dc014b4ffec6734053a9c255a9241fcede30fec3e63aaa3'],
+    }),
+    ('lars', '1.2', {
+        'checksums': ['64745b568f20b2cfdae3dad02fba92ebf78ffee466a71aaaafd4f48c3921922e'],
+    }),
+    ('lazy', '1.2-16', {
+        'checksums': ['c796c8b987ed1bd9dfddd593e17312ed681fc4fa3a1ecfe51da2def0ac1e50df'],
+    }),
+    ('kernlab', '0.9-29', {
+        'checksums': ['c3da693a0041dd34f869e7b63a8d8cf7d4bc588ac601bcdddcf7d44f68b3106f'],
+    }),
+    ('mime', '0.12', {
+        'checksums': ['a9001051d6c1e556e881910b1816b42872a1ee41ab76d0040ce66a27135e3849'],
+    }),
+    ('markdown', '1.1', {
+        'checksums': ['8d8cd47472a37362e615dbb8865c3780d7b7db694d59050e19312f126e5efc1b'],
+    }),
+    ('mlbench', '2.1-3', {
+        'checksums': ['b1f92be633243185ab86e880a1e1ac5a4dd3c535d01ebd187a4872d0a8c6f194'],
+    }),
+    ('NLP', '0.2-1', {
+        'checksums': ['05eaa453ad2757311c073fd30093c738b20a977c5089031eb454345a1d01f2b6'],
+    }),
+    ('mclust', '5.4.7', {
+        'checksums': ['45f5a666caee5bebd3160922b8655295a25e37f624741f6574365e4ac5a14c23'],
+    }),
+    ('RANN', '2.6.1', {
+        'checksums': ['b299c3dfb7be17aa41e66eff5674fddd2992fb6dd3b10bc59ffbf0c401697182'],
+    }),
+    ('rmeta', '3.0', {
+        'checksums': ['b9f9d405935cffcd7a5697ff13b033f9725de45f4dc7b059fd68a7536eb76b6e'],
+    }),
+    ('segmented', '1.3-4', {
+        'checksums': ['8276bfbb3e5c1d7a9a61098f72ac9b2b0f52c89ae9f9b715f76b22303cc3902d'],
+    }),
+    ('som', '0.3-5.1', {
+        'checksums': ['a6f4c0e5b36656b7a8ea144b057e3d7642a8b71972da387a7133f3dd65507fb9'],
+    }),
+    ('SuppDists', '1.1-9.5', {
+        'checksums': ['680b67145c07d44e200275e08e48602fe19cd99fb106c05422b3f4a244c071c4'],
+    }),
+    ('stabledist', '0.7-1', {
+        'checksums': ['06c5704d3a3c179fa389675c537c39a006867bc6e4f23dd7e406476ed2c88a69'],
+    }),
+    ('survivalROC', '1.0.3', {
+        'checksums': ['1449e7038e048e6ad4d3f7767983c0873c9c7a7637ffa03a4cc7f0e25c31cd72'],
+    }),
+    ('pspline', '1.0-18', {
+        'checksums': ['f71cf293bd5462e510ac5ad16c4a96eda18891a0bfa6447dd881c65845e19ac7'],
+    }),
+    ('timeDate', '3043.102', {
+        'checksums': ['377cba03cddab8c6992e31d0683c1db3a73afa9834eee3e95b3b0723f02d7473'],
+    }),
+    ('longmemo', '1.1-2', {
+        'checksums': ['7964e982287427dd58f98e1144e468ae0cbd572d25a4bea6ca9ae9c7522f3207'],
+    }),
+    ('ADGofTest', '0.3', {
+        'checksums': ['9cd9313954f6ecd82480d373f6c5371ca84ab33e3f5c39d972d35cfcf1096846'],
+    }),
+    ('MASS', '7.3-54', {
+        'checksums': [('b800ccd5b5c2709b1559cf5eab126e4935c4f8826cf7891253432bb6a056e821',
+                       'eb644c0e94b447c46387aa22436ef5a43192960ee9cfd0df2940f4a4116179ae')],
+    }),
+    ('pixmap', '0.4-12', {
+        'checksums': ['893ba894d4348ba05e6edf9c1b4fd201191816b444a214f7a6b2c0a79b0a2aec'],
+    }),
+    ('lattice', '0.20-45', {
+        'checksums': ['22388d92bdb7d3959da84d7308d9026dd8226ef07580783729e8ad2f7d7507ad'],
+    }),
+    ('sp', '1.4-5', {
+        'checksums': ['6beeb216d540475cdead5f2c72d6c7ee400fe2423c1882d72cf57f6df58f09da'],
+    }),
+    ('pkgconfig', '2.0.3', {
+        'checksums': ['330fef440ffeb842a7dcfffc8303743f1feae83e8d6131078b5a44ff11bc3850'],
+    }),
+    ('rlang', '0.4.12', {
+        'checksums': ['2a26915738be120a56ec93e781bcb50ffa1031e11904544198b4a15c35029915'],
+    }),
+    ('ellipsis', '0.3.2', {
+        'checksums': ['a90266e5eb59c7f419774d5c6d6bd5e09701a26c9218c5933c9bce6765aa1558'],
+    }),
+    ('digest', '0.6.28', {
+        'checksums': ['4a328c75e95f8522fc07390d1dd00c19fb643f558e761a8aed04f99c1dc7db00'],
+    }),
+    ('glue', '1.4.2', {
+        'checksums': ['9f7354132a26e9a876428fa87629b9aaddcd558f9932328e6ac065b95b8ef7ad'],
+    }),
+    ('vctrs', '0.3.8', {
+        'checksums': ['7f4e8b75eda115e69dddf714f0643eb889ad61017cdc13af24389aab2a2d1bb1'],
+    }),
+    ('lifecycle', '1.0.1', {
+        'checksums': ['1da76e1c00f1be96ca34e122ae611259430bf99d6a1b999fdef70c00c30f7ba0'],
+    }),
+    ('hms', '1.1.1', {
+        'checksums': ['6b5f30db1845c70d27b5de33f31caa487cdd0787cd80a4073375e5f482269062'],
+    }),
+    ('prettyunits', '1.1.1', {
+        'checksums': ['9a199aa80c6d5e50fa977bc724d6e39dae1fc597a96413053609156ee7fb75c5'],
+    }),
+    ('R6', '2.5.1', {
+        'checksums': ['8d92bd29c2ed7bf15f2778618ffe4a95556193d21d8431a7f75e7e5fc102bf48'],
+    }),
+    ('crayon', '1.4.2', {
+        'checksums': ['ee34397f643e76e30588068d4c93bd3c9afd2193deacccacb3bffcadf141b857'],
+    }),
+    ('progress', '1.2.2', {
+        'checksums': ['b4a4d8ed55db99394b036a29a0fb20b5dd2a91c211a1d651c52a1023cc58ff35'],
+    }),
+    ('ade4', '1.7-18', {
+        'checksums': ['ecb6f4c42c60f39702aa96f454bb536a333049c9608ee2b6bdf8795e059cc525'],
+    }),
+    ('AlgDesign', '1.2.0', {
+        'checksums': ['ff86c9e19505770520e7614970ad19c698664d08001ce888b8603e44c2a3b52a'],
+    }),
+    ('base64enc', '0.1-3', {
+        'checksums': ['6d856d8a364bcdc499a0bf38bfd283b7c743d08f0b288174fba7dbf0a04b688d'],
+    }),
+    ('BH', '1.75.0-0', {
+        'checksums': ['ae4c10992607dd697663f60675a46a5770851da159330bb63c4a68890bdd6f5a'],
+    }),
+    ('brew', '1.0-6', {
+        'checksums': ['d70d1a9a01cf4a923b4f11e4374ffd887ad3ff964f35c6f9dc0f29c8d657f0ed'],
+    }),
+    ('Brobdingnag', '1.2-6', {
+        'checksums': ['19eccaed830ce9d93b70642f6f126ac66722a98bbd48586899cc613dd9966ad4'],
+    }),
+    ('corpcor', '1.6.10', {
+        'checksums': ['71a04c503c93ec95ddde09abe8c7ddeb36175b7da76365a14b27066383e10e09'],
+    }),
+    ('longitudinal', '1.1.12', {
+        'checksums': ['d4f894c38373ba105b1bdc89e3e7c1b215838e2fb6b4470b9f23768b84e603b5'],
+    }),
+    ('backports', '1.3.0', {
+        'checksums': ['4f231e91ca8298fb1a27810ef5dd4c84e05c2b2b6f6748eab68f70ff4827812d'],
+    }),
+    ('checkmate', '2.0.0', {
+        'checksums': ['0dc25b0e20c04836359df1885d099c6e4ad8ae0e585a9e4107f7ea945d9c6fa4'],
+    }),
+    ('cubature', '2.0.4.2', {
+        'checksums': ['605bdd9d90fb6645359cccd1b289c5afae235b46360ef5bdd2001aa307a7694e'],
+    }),
+    ('DEoptimR', '1.0-9', {
+        'checksums': ['6151aa74f52ff4be664343e3992749e63235ebba51c9fded3775c1a2407c6512'],
+    }),
+    ('fastmatch', '1.1-3', {
+        'checksums': ['1defa0b08bc3f48e4c3e4ba8df4f1b9e8299932fd8c747c67d32de44f90b9861'],
+    }),
+    ('ffbase', '0.13.3', {
+        'checksums': ['b3f61f80ba6851130247779786903d42a24ee5219aa24556c8470aece8a2e6b6'],
+    }),
+    ('iterators', '1.0.13', {
+        'checksums': ['778e30e4c292da9f94d62acc637cf55273dae258199d847e62658f44840f11a4'],
+    }),
+    ('maps', '3.4.0', {
+        'checksums': ['7918ccb2393ca19589d4c4e77d9ebe863dc6317ebfc1ff41869dbfaf439f5747'],
+    }),
+    ('nnls', '1.4', {
+        'checksums': ['0e5d77abae12bc50639d34354f96a8e079408c9d7138a360743b73bd7bce6c1f'],
+    }),
+    ('sendmailR', '1.2-1', {
+        'checksums': ['04feb08c6c763d9c58b2db24b1222febe01e28974eac4fe87670be6fb9bff17c'],
+    }),
+    ('dotCall64', '1.0-1', {
+        'checksums': ['f10b28fcffb9453b1d8888a72c8fd2112038b5ac33e02a481492c7bd249aa5c6'],
+    }),
+    ('spam', '2.7-0', {
+        'checksums': ['632b5c48f587a34c997a487b72099c9c89d76a43f2cd9a36cb95fdec1d07850d'],
+    }),
+    ('subplex', '1.6', {
+        'checksums': ['0d05da1622fffcd20a01cc929fc6c2b7df40a8246e7018f7f1f3c175b774cbf9'],
+    }),
+    ('stringi', '1.7.5', {
+        'checksums': ['2914cc34e1cbfb65147090263b0e1bf2727ad32bc9bb860732094fecff4b2565'],
+    }),
+    ('magrittr', '2.0.1', {
+        'checksums': ['75c265d51cc2b34beb27040edb09823c7b954d3990a7a931e40690b75d4aad5f'],
+    }),
+    ('stringr', '1.4.0', {
+        'checksums': ['87604d2d3a9ad8fd68444ce0865b59e2ffbdb548a38d6634796bbd83eeb931dd'],
+    }),
+    ('evaluate', '0.14', {
+        'checksums': ['a8c88bdbe4e60046d95ddf7e181ee15a6f41cdf92127c9678f6f3d328a3c5e28'],
+    }),
+    ('logspline', '2.1.16', {
+        'checksums': ['7418491b8c778483c24e4354ee47b1e1b1d68b0057c12d6e012cce7d4e6c138a'],
+    }),
+    ('ncbit', '2013.03.29', {
+        'checksums': ['4480271f14953615c8ddc2e0666866bb1d0964398ba0fab6cc29046436820738'],
+    }),
+    ('permute', '0.9-5', {
+        'checksums': ['d2885384a07497e8df273689d6713fc7c57a7c161f6935f3572015e16ab94865'],
+    }),
+    ('plotrix', '3.8-2', {
+        'checksums': ['bb72953102889cea41cd6521874e35d2458ebd10aab97ba6f262e102cac0bc1f'],
+    }),
+    ('randomForest', '4.6-14', {
+        'checksums': ['f4b88920419eb0a89d0bc5744af0416d92d112988702dc726882394128a8754d'],
+    }),
+    ('scatterplot3d', '0.3-41', {
+        'checksums': ['4c8326b70a3b2d37126ca806771d71e5e9fe1201cfbe5b0d5a0a83c3d2c75d94'],
+    }),
+    ('SparseM', '1.81', {
+        'checksums': ['bd838f381ace680fa38508ff70b3d83cb9ffa28ac1ab568509249bca53c34b33'],
+    }),
+    ('tripack', '1.3-9.1', {
+        'checksums': ['7f82f8d63741c468767acc6fb35281bd9903f6c3c52e8fada60a6ae317511fbe'],
+    }),
+    ('irace', '3.4.1', {
+        'checksums': ['7eea92ba42e6ba320fa8bdca3c53091ae42f26a0f097244f65e7e117f6d514b6'],
+    }),
+    ('rJava', '1.0-5', {
+        'checksums': ['2fdba5774f6333440e0ef6d96567b37f9f382820242a4d885f2891796fb36fde'],
+    }),
+    ('RColorBrewer', '1.1-2', {
+        'checksums': ['f3e9781e84e114b7a88eb099825936cc5ae7276bbba5af94d35adb1b3ea2ccdd'],
+    }),
+    ('png', '0.1-7', {
+        'checksums': ['e269ff968f04384fc9421d17cfc7c10cf7756b11c2d6d126e9776f5aca65553c'],
+    }),
+    ('jpeg', '0.1-9', {
+        'checksums': ['01a175442ec209b838a56a66a3908193aca6f040d537da7838d9368e46913072'],
+    }),
+    ('latticeExtra', '0.6-29', {
+        'checksums': ['6cadc31d56f73d926e2e8d72e43ae17ac03607a4d1a374719999a4a231e3df11'],
+    }),
+    ('Matrix', '1.3-4', {
+        'checksums': ['ab42179d44545e99bbdf44bb6d04cab051dd2aba552b1f6edd51ed71b55f6c39'],
+    }),
+    ('RcppArmadillo', '0.10.7.0.0', {
+        'checksums': ['01a8eac49d5b2bcefcba076f0ee7b234bee3d22d54d7f4d56d9a6ae7cbea65f4'],
+    }),
+    ('plyr', '1.8.6', {
+        'checksums': ['ea55d26f155443e9774769531daa5d4c20a0697bb53abd832e891b126c935287'],
+    }),
+    ('gtable', '0.3.0', {
+        'checksums': ['fd386cc4610b1cc7627dac34dba8367f7efe114b968503027fb2e1265c67d6d3'],
+    }),
+    ('reshape2', '1.4.4', {
+        'checksums': ['d88dcf9e2530fa9695fc57d0c78adfc5e361305fe8919fe09410b17da5ca12d8'],
+    }),
+    ('dichromat', '2.0-0', {
+        'checksums': ['31151eaf36f70bdc1172da5ff5088ee51cc0a3db4ead59c7c38c25316d580dd1'],
+    }),
+    ('colorspace', '2.0-2', {
+        'checksums': ['b891cd2ec129ed5f116429345947bcaadc33969758a108521eb0cf36bd12183a'],
+    }),
+    ('munsell', '0.5.0', {
+        'checksums': ['d0f3a9fb30e2b5d411fa61db56d4be5733a2621c0edf017d090bdfa5e377e199'],
+    }),
+    ('labeling', '0.4.2', {
+        'checksums': ['e022d79276173e0d62bf9e37d7574db65ab439eb2ae1833e460b1cff529bd165'],
+    }),
+    ('viridisLite', '0.4.0', {
+        'checksums': ['849955dc8ad9bc52bdc50ed4867fd92a510696fc8294e6971efa018437c83c6a'],
+    }),
+    ('farver', '2.1.0', {
+        'checksums': ['e5c8630607049f682fb3002b99ca4f5e7c6b94f8b2a4342df594e7853b77cef4'],
+    }),
+    ('scales', '1.1.1', {
+        'checksums': ['40b2b66522f1f314a20fd09426011b0cdc9d16b23ee2e765fe1930292dd03705'],
+    }),
+    ('utf8', '1.2.2', {
+        'checksums': ['a71aee87d43a9bcf29249c7a5a2e9ca1d2a836e8d5ee3a264d3062f25378d8f4'],
+    }),
+    ('zeallot', '0.1.0', {
+        'checksums': ['439f1213c97c8ddef9a1e1499bdf81c2940859f78b76bc86ba476cebd88ba1e9'],
+    }),
+    ('assertthat', '0.2.1', {
+        'checksums': ['85cf7fcc4753a8c86da9a6f454e46c2a58ffc70c4f47cac4d3e3bcefda2a9e9f'],
+    }),
+    ('fansi', '0.5.0', {
+        'checksums': ['9d1bf8c316969c163abd3dd41cc1425b2671df9471fe806bf8783794a19ca54f'],
+    }),
+    ('cli', '3.1.0', {
+        'checksums': ['c70a61830bf706a84c59eb74a809978846cee93742198ab4192742a5df1ace11'],
+    }),
+    ('pillar', '1.6.4', {
+        'checksums': ['033a92a271ddeec2a17323d070de8257b9ca4d57f5be6181e2ad35fe7e1ea19e'],
+    }),
+    ('tibble', '3.1.5', {
+        'checksums': ['da6387ba683a67cd7fc2a111f6b62468e480a8078bc1867d433a40c5460edbe7'],
+    }),
+    ('lazyeval', '0.2.2', {
+        'checksums': ['d6904112a21056222cfcd5eb8175a78aa063afe648a562d9c42c6b960a8820d4'],
+    }),
+    ('withr', '2.4.2', {
+        'checksums': ['48f96a4cb780cf6fd5fbbea1f1eb04ea3102d7a4a644cae1ed1e91139dcbbac8'],
+    }),
+    ('nlme', '3.1-153', {
+        'checksums': ['3d27a98edf1b16ee868949e823ac0babbf10c937a7220d648b7ef9480cd680e3'],
+    }),
+    ('mgcv', '1.8-38', {
+        'checksums': ['cd12ed5787d6fdcead34e782e48b62b3f9efd523616c906e2da77bd9c142ddbb'],
+    }),
+    ('rprojroot', '2.0.2', {
+        'checksums': ['5fa161f0d4ac3b7a99dc6aa2d832251001dc92e93c828593a51fe90afd019e1f'],
+    }),
+    ('desc', '1.4.0', {
+        'checksums': ['8220e4c706449b8121b822e70b1414f391ef419aed574836a234c63b83e5d649'],
+    }),
+    ('ps', '1.6.0', {
+        'checksums': ['89ad7ddc5e0818bccacfd0673ddf2da0892ac2a3b4d3a821e40884ab1e96bf31'],
+    }),
+    ('processx', '3.5.2', {
+        'checksums': ['ed6f2d1047461c6061e6ed58fb6de65a289b56009867892abad76c6bba46fc2b'],
+    }),
+    ('callr', '3.7.0', {
+        'checksums': ['d67255148595c6d0ba4c4d241bc9f6b5e00cafe25fdc13e38c10acc38653360a'],
+    }),
+    ('pkgbuild', '1.2.0', {
+        'checksums': ['2e19308d3271fefd5e118c6d132d6a2511253b903620b5417892c72d2010a963'],
+    }),
+    ('rstudioapi', '0.13', {
+        'checksums': ['aac35bbdcb4a8e8caba943bc8a2b98120e8940b80cd1020224bb1a26ff776d8b'],
+    }),
+    ('pkgload', '1.2.3', {
+        'checksums': ['105ae5b2caca495bd0702757c5c676353cca8525954d0822f07103ca8a54b349'],
+    }),
+    ('praise', '1.0.0', {
+        'checksums': ['5c035e74fd05dfa59b03afe0d5f4c53fbf34144e175e90c53d09c6baedf5debd'],
+    }),
+    ('brio', '1.1.2', {
+        'checksums': ['42dde6953151e31cc38bbec72335c01ac9e755cc07d11e26f4e1fcd0f9f471ef'],
+    }),
+    ('jsonlite', '1.7.2', {
+        'checksums': ['06354b50435942f67ba264f79831e577809ef89e5f9a5a2201985396fe651fd2'],
+    }),
+    ('diffobj', '0.3.5', {
+        'checksums': ['d860a79b1d4c9e369282d7391b539fe89228954854a65ba47181407c53e3cf60'],
+    }),
+    ('rematch2', '2.1.2', {
+        'checksums': ['fe9cbfe99dd7731a0a2a310900d999f80e7486775b67f3f8f388c30737faf7bb'],
+    }),
+    ('waldo', '0.3.1', {
+        'checksums': ['ec2c8c1afbc413f8db8b6b0c6970194a875f616ad18e1e72a004bc4497ec019b'],
+    }),
+    ('testthat', '3.1.0', {
+        'checksums': ['e714b105891a766d03d5bab09d705b1f6c23f04db56dfe310bff8cfa00464987'],
+    }),
+    ('isoband', '0.2.5', {
+        'checksums': ['46f53fa066f0966f02cb2bf050190c0d5e950dab2cdf565feb63fc092c886ba5'],
+    }),
+    ('ggplot2', '3.3.5', {
+        'checksums': ['b075294faf3af31b18e415f260c62d6000b218770e430484fe38819bdc3224ea'],
+    }),
+    ('pROC', '1.18.0', {
+        'checksums': ['d5ef54b384176ece6d6448014ba40570a98181b58fee742f315604addb5f7ba9'],
+    }),
+    ('quadprog', '1.5-8', {
+        'checksums': ['22128dd6b08d3516c44ff89276719ad4fe46b36b23fdd585274fa3a93e7a49cd'],
+    }),
+    ('BB', '2019.10-1', {
+        'checksums': ['04d0b6ce6e5f070b109478a6005653dbe78613bb4e3ea4903203d851b5d3c94d'],
+    }),
+    ('BBmisc', '1.11', {
+        'checksums': ['1ea48c281825349d8642a661bb447e23bfd651db3599bf72593bfebe17b101d2'],
+    }),
+    ('fail', '1.3', {
+        'checksums': ['ede8aa2a9f2371aff5874cd030ac625adb35c33954835b54ab4abf7aeb34d56d'],
+    }),
+    ('rlecuyer', '0.3-5', {
+        'checksums': ['4723434ff7624d4f404a6854ffa0673fc43daa46f58f064dbeeaa17da28ab626'],
+    }),
+    ('snow', '0.4-4', {
+        'checksums': ['84587f46f222a96f3e2fde10ad6ec6ddbd878f4e917cd926d632f61a87db13c9'],
+    }),
+    ('tree', '1.0-41', {
+        'checksums': ['21cf995b187d97de0bce8330973a52c46235db0fc09a133cad26283b7a6f5c8e'],
+    }),
+    ('pls', '2.8-0', {
+        'checksums': ['eff3a92756ca34cdc1661fa36d2bf7fc8e9f4132d2f1ef9ed0105c83594618bf'],
+    }),
+    ('class', '7.3-19', {
+        'checksums': [('7820ae94b22009561a69ed1f8b2ca2a3814be6a656e9884738206997caecbe37',
+                       '9012f5c65384b441b5738ed7bd18ea735884bab32b31776e80cf3679f38a3769')],
+    }),
+    ('proxy', '0.4-26', {
+        'checksums': ['676bad821343974e0297a0566c4bf0cf0ea890104906a745b87d3b5989c81a4d'],
+    }),
+    ('e1071', '1.7-9', {
+        'checksums': ['9bf9a15e7ce0b9b1a57ce3048d29cbea7f2a5bb2e91271b1b6aaafe07c852226'],
+    }),
+    ('nnet', '7.3-16', {
+        'checksums': [('99511969babaf937c3033750b00b41e4e03742f268084efc4ee953b849f7b56a',
+                       'c5b73eb4fff0d225e14f898cec987a7a88796b6e70cde4cf277374428f2d5c13')],
+    }),
+    ('minqa', '1.2.4', {
+        'checksums': ['cfa193a4a9c55cb08f3faf4ab09c11b70412523767f19894e4eafc6e94cccd0c'],
+    }),
+    ('RcppEigen', '0.3.3.9.1', {
+        'checksums': ['8a0486249b778a4275a1168fc89fc7fc49c2bb031cb14b50a50089acae7fe962'],
+    }),
+    ('MatrixModels', '0.5-0', {
+        'checksums': ['a87faf1a185219f79ea2307e6787d293e1d30bf3af9398e8cfe1e079978946ed'],
+    }),
+    ('matrixStats', '0.61.0', {
+        'checksums': ['dbd3c0ec59b1ae62ff9b4c2c90c4687cbd680d1796f6fdd672319458d4d2fd9a'],
+    }),
+    ('codetools', '0.2-18', {
+        'checksums': ['1a9ea6b9792dbd1688078455929385acc3a5e4bef945c77bec1261fa4a084c28'],
+    }),
+    ('foreach', '1.5.1', {
+        'checksums': ['fb5ad69e295618c52b2ac7dff84a0771462870a97345374d43b3de2dc31a68e1'],
+    }),
+    ('data.table', '1.14.2', {
+        'checksums': ['f741b951e5937440139514aedbae78dbd6862d825066848bdb006aa02c2f3d2b'],
+    }),
+    ('ModelMetrics', '1.2.2.2', {
+        'checksums': ['5e06f1926aebca5654e1329c66ef19b04058376b2277ebb16e3bf8c208d73457'],
+    }),
+    ('generics', '0.1.1', {
+        'checksums': ['a2478ebf1a0faa8855a152f4e747ad969a800597434196ed1f71975a9eb11912'],
+    }),
+    ('purrr', '0.3.4', {
+        'checksums': ['23ebc93bc9aed9e7575e8eb9683ff4acc0270ef7d6436cc2ef4236a9734840b2'],
+    }),
+    ('tidyselect', '1.1.1', {
+        'checksums': ['18eb6a6746196a81ce19ee6cbf1db0c33f494177b97e2419312ef25a00ae486b'],
+    }),
+    ('dplyr', '1.0.7', {
+        'checksums': ['d2fe3aedbce02fdddce09a8a80f85f5918a9d1f15f792ad4a98f254959d7123d'],
+    }),
+    ('gower', '0.2.2', {
+        'checksums': ['3f022010199fafe34f6e7431730642a76893e6b4249b84e5a61012cb83483631'],
+    }),
+    ('rpart', '4.1-15', {
+        'checksums': ['2b8ebe0e9e11592debff893f93f5a44a6765abd0bd956b0eb1f70e9394cfae5c'],
+    }),
+    ('survival', '3.2-13', {
+        'checksums': ['3fab9c0ba2c4e2b6a475207e2629a7f06a104c70093dfb768f50a7caac9a317f'],
+    }),
+    ('KernSmooth', '2.23-20', {
+        'checksums': ['20eb75051e2473933d41eedc9945b03c632847fd581e2207d452cf317fa5ec39'],
+    }),
+    ('globals', '0.14.0', {
+        'checksums': ['203dbccb829ca9cc6aedb6f5e79cb126ea31f8dd379dff9111ec66e3628c32f3'],
+    }),
+    ('listenv', '0.8.0', {
+        'checksums': ['fd2aaf3ff2d8d546ce33d1cb38e68401613975117c1f9eb98a7b41facf5c485f'],
+    }),
+    ('parallelly', '1.28.1', {
+        'checksums': ['f4ae883b18409adb83c561ed69427e740e1b50bf85ef57f48c3f2edf837cc663'],
+    }),
+    ('future', '1.23.0', {
+        'checksums': ['d869c80e837c0937a414b8050deff081aefeac586b796f3d634d64f0f4fdb8f8'],
+    }),
+    ('future.apply', '1.8.1', {
+        'checksums': ['0d5bc3cb0289665bb27ae4ccad51fcc5ebf6dca46872b0a4e57790b9dc0aa6c7'],
+    }),
+    ('progressr', '0.9.0', {
+        'checksums': ['cfe70f8423041ea5b5a2a39122c166462e58b1bba84df935858a7b86362b530f'],
+    }),
+    ('numDeriv', '2016.8-1.1', {
+        'checksums': ['d8c4d19ff9aeb31b0c628bd4a16378e51c1c9a3813b525469a31fe89af00b345'],
+    }),
+    ('SQUAREM', '2021.1', {
+        'checksums': ['66e5e18ca29903e4950750bbd810f0f9df85811ee4195ce0a86d939ba8183a58'],
+    }),
+    ('lava', '1.6.10', {
+        'checksums': ['7a88f8a885872e2abb3011c446e9e1c4884cd4dbe6ab4cfe9207538e5560232e'],
+    }),
+    ('prodlim', '2019.11.13', {
+        'checksums': ['6809924f503a14681de84730489cdaf9240d7951c64f5b98ca37dc1ce7809b0f'],
+    }),
+    ('ipred', '0.9-12', {
+        'checksums': ['d6e1535704d39415a799d7643141ffa4f6f55597f03e763f4ccd5d8106005843'],
+    }),
+    ('cpp11', '0.4.0', {
+        'checksums': ['1768fd07dc30dfbbf8f3fb1a1183947cb7e1dfd909165c4d612a63c163a41e87'],
+    }),
+    ('lubridate', '1.8.0', {
+        'checksums': ['87d66efdb1f3d680db381d7e40a202d35645865a0542e2f270ef008a19002ba5'],
+    }),
+    ('tidyr', '1.1.4', {
+        'checksums': ['0b0c98be98a433e15a2550f60330b31a58529a9c58bc2abd7bff6462ab761241'],
+    }),
+    ('recipes', '0.1.17', {
+        'checksums': ['ed20ba0ea0165310e31864ed7d2e005a2a37b76c7913977fd124d8b567616d3d'],
+    }),
+    ('caret', '6.0-90', {
+        'checksums': ['e851a4ed7d939c665e57e3551a5464b09fe4285e7c951236efdd890b0da866bc'],
+    }),
+    ('conquer', '1.2.0', {
+        'checksums': ['10451223658e02b31b87f7f86a14e3d8c71bfbff62ea30f85b89cdef829f07f9'],
+    }),
+    ('quantreg', '5.86', {
+        'checksums': ['71d1c829af7574ca00575cc0375376ac3ecd54b3d6d36e8eecd71ed8acb9d605'],
+    }),
+    ('robustbase', '0.93-9', {
+        'checksums': ['d75fb5075463fec61d063bced7003936e9198492328b6fae15f67e8415713c45'],
+    }),
+    ('zoo', '1.8-9', {
+        'checksums': ['b7be259067a8b9d4a8f5d387e0946a5ba1eb43474baa67ccf4f8bf4b15f772a3'],
+    }),
+    ('lmtest', '0.9-38', {
+        'checksums': ['32a22cea45398ffc5732d9f5c0391431d0cdd3a9e29cc7b77bea32c1eb4a216b'],
+    }),
+    ('vcd', '1.4-9', {
+        'checksums': ['a5b420ad5ff1a27fa92f98099a8b43f2dded7e5f60297b3e4d947ad6f039568f'],
+    }),
+    ('snowfall', '1.84-6.1', {
+        'checksums': ['5c446df3a931e522a8b138cf1fb7ca5815cc82fcf486dbac964dcbc0690e248d'],
+    }),
+    ('bindr', '0.1.1', {
+        'checksums': ['7c785ca77ceb3ab9282148bcecf64d1857d35f5b800531d49483622fe67505d0'],
+    }),
+    ('plogr', '0.2.0', {
+        'checksums': ['0e63ba2e1f624005fe25c67cdd403636a912e063d682eca07f2f1d65e9870d29'],
+    }),
+    ('bindrcpp', '0.2.2', {
+        'checksums': ['48130709eba9d133679a0e959e49a7b14acbce4f47c1e15c4ab46bd9e48ae467'],
+    }),
+    ('tmvnsim', '1.0-2', {
+        'checksums': ['97f63d0bab3b240cc7bdbe6e6e74e90ad25a4382a345ee51a26fe3959edeba0f'],
+    }),
+    ('mnormt', '2.0.2', {
+        'checksums': ['5c6aa036d3f1035ffe8f9a8e95bb908b191b126b016591cf893c50472851f334'],
+    }),
+    ('foreign', '0.8-81', {
+        'checksums': ['1ae8f9f18f2a037697fa1a9060417ff255c71764f0145080b2bd23ba8262992c'],
+    }),
+    ('psych', '2.1.9', {
+        'checksums': ['1475e03a17f1ae6837834f01c2472aed68887c89d90a84a3e09a532ce218500c'],
+    }),
+    ('broom', '0.7.10', {
+        'checksums': ['129fd5a53abef7f42b7efac6c64ebd71269b136aa648846d640562357927464f'],
+    }),
+    ('nloptr', '1.2.2.2', {
+        'checksums': ['e80ea9619ac18f4bfe44812198b40b9ae5c0ddf3f9cc91778f9ccc82168d1372'],
+    }),
+    ('boot', '1.3-28', {
+        'checksums': ['9f7158fd2714659f590c3955651893dc24bd8f39196bc5a4cc35b0b031744a32'],
+    }),
+    ('statmod', '1.4.36', {
+        'checksums': ['14e897c83d426caca4d920d3d5bead7ae9a679276b3cb2e227f299ad189d7bc2'],
+    }),
+    ('lme4', '1.1-27.1', {
+        'checksums': ['25fa873e39b8192e48c15eec93db8c8bf6f03baf3bd8d5ca9188482ce8442ec5'],
+    }),
+    ('ucminf', '1.1-4', {
+        'checksums': ['a2eb382f9b24e949d982e311578518710f8242070b3aa3314a331c1e1e7f6f07'],
+    }),
+    ('ordinal', '2019.12-10', {
+        'checksums': ['7a41e7b7e852a8fa3e911f8859d36e5709ccec5ca42ee3de14a813b7aaac7725'],
+    }),
+    ('jomo', '2.7-2', {
+        'checksums': ['3962d5cbecc60e72670329dbef0dd74303080f5ea2a79c91e27f75db99ba6ce9'],
+    }),
+    ('clipr', '0.7.1', {
+        'checksums': ['ffad477b07847e3b68f7e4406bbd323025a8dae7e3c768943d4d307ee3248afb'],
+    }),
+    ('tzdb', '0.2.0', {
+        'checksums': ['c335905d452b400af7ed54b916b5246cb3f47ede0602911a2bcb25a1cf56d5a9'],
+    }),
+    ('bit64', '4.0.5', {
+        'checksums': ['25df6826ea5e93241c4874cad4fa8dadc87a40f4ff74c9107aa12a9e033e1578'],
+    }),
+    ('vroom', '1.5.5', {
+        'checksums': ['1d45688c08f162a3300eda532d9e87d144f4bc686769a521bf9a12e3d3b465fe'],
+    }),
+    ('readr', '2.0.2', {
+        'checksums': ['98b05ed751dda2bcf7a29d070ce3d3e8475e0138a3e3ec68941dc45218db7615'],
+    }),
+    ('forcats', '0.5.1', {
+        'checksums': ['c4fb96e874e2bedaa8a1aa32ea22abdee7906d93b5c5c7b42c0894c0c5b6a289'],
+    }),
+    ('haven', '2.4.3', {
+        'checksums': ['95b70f47e77792bed4312441787299d2e3e27d79a176f0638a37e5301b93295f'],
+    }),
+    ('pan', '1.6', {
+        'checksums': ['adc0df816ae38bc188bce0aef3aeb71d19c0fc26e063107eeee71a81a49463b6'],
+    }),
+    ('mitml', '0.4-3', {
+        'checksums': ['49bd3eb68a60fb2a269e7ddca8b862e1e81e0651e2b29759482fb7bcad452102'],
+    }),
+    ('mice', '3.13.0', {
+        'checksums': ['5108e4673512c96ced19c23fdbb0feea2b2a655a4c7dc9afb06a2a1a29f69785'],
+    }),
+    ('urca', '1.3-0', {
+        'checksums': ['621cc82398e25b58b4a16edf000ed0a1484d9a0bc458f734e97b6f371cc76aaa'],
+    }),
+    ('fracdiff', '1.5-1', {
+        'checksums': ['b8103b32a4ca3a59dda1624c07da08ecd144c7a91a747d1f4663e99421950eb6'],
+    }),
+    ('operator.tools', '1.6.3', {
+        'checksums': ['e5b74018fb75bfa02820dec4b822312f1640422f01d9fec1b58d880ffb798dec'],
+    }),
+    ('formula.tools', '1.7.1', {
+        'checksums': ['4fe0e72d9d96f2398e86cbd8536d0c84de38e5583d4ff7dcd73f415ddd8ca395'],
+    }),
+    ('logistf', '1.24', {
+        'checksums': ['6561d311fe21b789954cb33c008b86abdd6509b2a2900385dd6046163679d96b'],
+    }),
+    ('akima', '0.6-2.2', {
+        'checksums': ['deefc9ff82f78e68b7333c2fc88bd23863da9919493f2b73658044436f6b8742'],
+    }),
+    ('bitops', '1.0-7', {
+        'checksums': ['e9b5fc92c39f94a10cd0e13f3d6e2a9c17b75ea01467077a51d47a5f708517c4'],
+    }),
+    ('mixtools', '1.2.0', {
+        'checksums': ['ef033ef13625209065d26767bf70d129972e6808927f755629f1d70a118b9023'],
+    }),
+    ('cluster', '2.1.2', {
+        'checksums': ['5c8aa760fb6dda4fcfe6196e561ffcd2dc12b1a6c7659cb90be2cde747311499'],
+    }),
+    ('gclus', '1.3.2', {
+        'checksums': ['9cc61cdff206c11213e73afca3d570a7234250cf6044a9202c2589932278e0b3'],
+    }),
+    ('coda', '0.19-4', {
+        'checksums': ['422d3cfd34797a3631e9c4812431940599c0ca4bb9937797bed07b7b1d6fe58f'],
+    }),
+    ('doMC', '1.3.7', {
+        'checksums': ['defab27adc298a6746896d83251f8355d62c01012d51ef96d491875a2e74b54d'],
+    }),
+    ('DBI', '1.1.1', {
+        'checksums': ['572ab3b8a6421d0ac3e7665c4c842826f1723af98fca25d4f43edb419e771344'],
+    }),
+    ('gam', '1.20', {
+        'checksums': ['91eb416ba06aa1c3f611661530467f4513992f6c168e3f6e474cf57bae131efe'],
+    }),
+    ('gamlss.data', '6.0-1', {
+        'checksums': ['98fdec571aeacea4318c9e1c9d56b74716f3dc6acce385cbaad0d6128b154bb2'],
+    }),
+    ('gamlss.dist', '5.3-2', {
+        'checksums': ['0caa92cd20c3d2d11b1af4656fd0de09adf145992345cba07fdcd33b7716ced3'],
+    }),
+    ('gamlss', '5.3-4', {
+        'checksums': ['72707187471fd35c5379ae8c9b7b0ca87e302557f09cb3979d1cdb2e2500b01a'],
+    }),
+    ('gamlss.tr', '5.1-7', {
+        'checksums': ['8f9975bceaf8000b1d39317daf490e59c8385b5291326ed6a2630be11dae3137'],
+    }),
+    ('hwriter', '1.3.2', {
+        'checksums': ['6b3531d2e7a239be9d6e3a1aa3256b2745eb68aa0bdffd2076d36552d0d7322b'],
+    }),
+    ('xts', '0.12.1', {
+        'checksums': ['d680584af946fc30be0b2046e838cff7b3a65e00df1eadba325ca5e96f3dca2c'],
+    }),
+    ('curl', '4.3.2', {
+        'checksums': ['90b1facb4be8b6315bb3d272ba2dd90b88973f6ea1ab7f439550230f8500a568'],
+    }),
+    ('TTR', '0.24.2', {
+        'checksums': ['2587b988d9199474a19470b9b999b99133d0d8aa45410813e05c5f0ed763711b'],
+    }),
+    ('quantmod', '0.4.18', {
+        'checksums': ['aa40448e93a1facf399213ac691784007731e869ad243fe762381ab099cd6c35'],
+    }),
+    ('mvtnorm', '1.1-3', {
+        'checksums': ['ff4e302139ba631280fc9c4a2ab168596bfd09e17a805974199b043697c02448'],
+    }),
+    ('pcaPP', '1.9-74', {
+        'checksums': ['50837b434d67e4b5fcec34c689a9e30c7a9fb94c561b39f24e68a1456ff999b6'],
+    }),
+    ('pscl', '1.5.5', {
+        'checksums': ['054c9b88a991abdec3338688f58e81b6ba55f91edb988621864b24fd152fee6f'],
+    }),
+    ('fastmap', '1.1.0', {
+        'checksums': ['9113e526b4c096302cfeae660a06de2c4c82ae4e2d3d6ef53af6de812d4c822b'],
+    }),
+    ('cachem', '1.0.6', {
+        'checksums': ['9a9452f7bcf3f79436c418b3c3290449fb8fd338714d9b992153754d112f1864'],
+    }),
+    ('memoise', '2.0.0', {
+        'checksums': ['ff9ae3a1a95ad6271d98e6eca016768b790e44bd613356b8e86b685aefd9ecaf'],
+    }),
+    ('blob', '1.2.2', {
+        'checksums': ['4976053c65994c769a4c22b4553bea0bd9c623b3b991dbaf023d2a164770c7fa'],
+    }),
+    ('RSQLite', '2.2.8', {
+        'checksums': ['1b8adc1b7ed4bc5ec070b8765837cd4104fcdda482a1d335c030f51b427c4cc3'],
+    }),
+    ('BatchJobs', '1.8', {
+        'checksums': ['35cc2dae31994b1df982d11939509ce965e12578418c4fbb8cd7a422afd6e4ff'],
+    }),
+    ('sandwich', '3.0-1', {
+        'checksums': ['f6584b7084f3223bbc0c4722f53280496be73849747819b0cb4e8f3910284a89'],
+    }),
+    ('sfsmisc', '1.1-12', {
+        'checksums': ['9b12184a28fff87cacd0c3602d0cf63acb4d0f3049ad3a6ff16177f6df350782'],
+    }),
+    ('spatial', '7.3-14', {
+        'checksums': [('52cc1982732f14544fae7dd9d028e2fc3b525ed695d211d6ed5055420e768a36',
+                       '50e6daacbacff6c716485d20b15eb7fff7b8108dc5ea0ff508024beb4f0a8b9b',
+                       '0c42df479c1a202dfc678f223e924b1adde5822a9902a3d71fd5f2ff36c4b83b')],
+    }),
+    ('VGAM', '1.1-5', {
+        'checksums': ['30190b150f3e5478137d288a45f575b2654ad7c29254b0a1fe5c954ee010a1bb'],
+    }),
+    ('waveslim', '1.8.2', {
+        'checksums': ['133c4f7a027282742fe99b583ca65f178fc7a3df2ce75cb4d60650f0a1dd7145'],
+    }),
+    ('xtable', '1.8-4', {
+        'checksums': ['5abec0e8c27865ef0880f1d19c9f9ca7cc0fd24eadaa72bcd270c3fb4075fd1c'],
+    }),
+    ('profileModel', '0.6.1', {
+        'checksums': ['91dc25e81f52506593f5c8d80a6131510b14525262f65b4ac10ae0cad0b2a506'],
+    }),
+    ('brglm', '0.7.2', {
+        'checksums': ['56098d2ce238478e7a27cacc4cdec0bc65f287fe746b38fbb1edda20c1675023'],
+    }),
+    ('deSolve', '1.30', {
+        'checksums': ['39f65d7af6b4d85eb023cce2a200c2de470644b22d45e210c5b7d558c3abf548'],
+    }),
+    ('tseriesChaos', '0.1-13.1', {
+        'checksums': ['23cb5fea56409a305e02a523ff8b7642ec383942d415c9cffdc92208dacfd961'],
+    }),
+    ('tseries', '0.10-48', {
+        'checksums': ['53bd22708c936205c5f839a10f2e302524d2cc54dc309e7d885ebd081ccb4471'],
+    }),
+    ('fastICA', '1.2-3', {
+        'checksums': ['e9ef82644cb64bb49ae3b7b6e0885f4fb2dc08ae030f8c76fe8dd8507b658950'],
+    }),
+    ('R.methodsS3', '1.8.1', {
+        'checksums': ['8a98fb81bcfa78193450f855f614f6f64e6c65daf115f301d97d1f474f5e619b'],
+    }),
+    ('R.oo', '1.24.0', {
+        'checksums': ['37a1dab8dd668ceba69a1ba36c0c60e9809e29b74bd56d1e8ed519e19c8e3bb6'],
+    }),
+    ('sys', '3.4', {
+        'checksums': ['17f88fbaf222f1f8fd07919461093dac0e7175ae3c3b3264b88470617afd0487'],
+    }),
+    ('askpass', '1.1', {
+        'checksums': ['db40827d1bdbb90c0aa2846a2961d3bf9d76ad1b392302f9dd84cc2fd18c001f'],
+    }),
+    ('openssl', '1.4.5', {
+        'checksums': ['4fc141aba8e94e9f5ecce6eda07e45a5e7048d8609ba909ede4f7f4933e0c1f7'],
+    }),
+    ('httr', '1.4.2', {
+        'checksums': ['462bed6ed0d92f811d5df4d294336025f1dbff357286999d9269bfd9c20b1ef9'],
+    }),
+    ('cgdsr', '1.3.0', {
+        'checksums': ['4aa2a3564cee2449c3ff39ab2ad631deb165d4c78b8107e0ff77a9095340cc1f'],
+    }),
+    ('R.utils', '2.11.0', {
+        'checksums': ['622860f995f78be3a6e439f29d945874c5cb0866f6a73a9b43ac1d4d7f23fed8'],
+    }),
+    ('R.matlab', '3.6.2', {
+        'checksums': ['1ba338f470a24b7f6ef68cadbd04eb468ead4a689f263d2642408ad591b786bb'],
+    }),
+    ('gridExtra', '2.3', {
+        'checksums': ['81b60ce6f237ec308555471ae0119158b115463df696d2eca9b177ded8988e3b'],
+    }),
+    ('gbm', '2.1.8', {
+        'checksums': ['7d5de3b980b8f23275e86ac9bed48a497c9aa53c58e407dfd676309f38272ec1'],
+    }),
+    ('Formula', '1.2-4', {
+        'checksums': ['cb70e373b5ed2fc8450937fb3321d37dfd22dcc6f07cb872a419d51205125caf'],
+    }),
+    ('acepack', '1.4.1', {
+        'checksums': ['82750507926f02a696f6cc03693e8d4a5ee7e92500c8c15a16a9c12addcd28b9'],
+    }),
+    ('proto', '1.0.0', {
+        'checksums': ['9294d9a3b2b680bb6fac17000bfc97453d77c87ef68cfd609b4c4eb6d11d04d1'],
+    }),
+    ('chron', '2.3-56', {
+        'checksums': ['863ecbb951a3da994761ea9062fa96d34e94e19fbc4122521ac179274dfa3f5d'],
+    }),
+    ('viridis', '0.6.2', {
+        'checksums': ['69b58cd1d992710a08b0b227fd0a9590430eea3ed4858099412f910617e41311'],
+    }),
+    ('yaml', '2.2.1', {
+        'checksums': ['1115b7bc2a397fa724956eec916df5160c600c99a3be186d21558dd38d782783'],
+    }),
+    ('htmltools', '0.5.2', {
+        'checksums': ['7dc7d50436e5a82a5801f85bcd2f572a06a98b4027d71aa17b4854ec9b2767fb'],
+    }),
+    ('htmlwidgets', '1.5.4', {
+        'checksums': ['1a3fc60f40717de7f1716b754fd1c31a132e489a2560a278636ee78eba46ffc1'],
+    }),
+    ('knitr', '1.36', {
+        'checksums': ['6ecef5b428d135e95a05f24f9f194d0d828b1180c61be44ad89b6210e32b8e41'],
+    }),
+    ('htmlTable', '2.3.0', {
+        'checksums': ['070d9a0ef6311304f6739d81f7690d8f19899451524b376b403d6a40d477a577'],
+    }),
+    ('Hmisc', '4.6-0', {
+        'checksums': ['2c1ce906b2333c6dc946dc7f10b74cfa552bce2b12dbebf295d143163562a1ad'],
+    }),
+    ('fastcluster', '1.2.3', {
+        'checksums': ['1f229129e1cddc78c7bb5ecc90c4d28ed810ee68cf210004c7cdfa12cfaf2a01'],
+    }),
+    ('registry', '0.5-1', {
+        'checksums': ['dfea36edb0a703ec57e111016789b47a1ba21d9c8ff30672555c81327a3372cc'],
+    }),
+    ('bibtex', '0.4.2.3', {
+        'checksums': ['7bad194920b412781ac9754ad41058d52d3cd7186e1851c2bce3640490e9bc6d'],
+    }),
+    ('pkgmaker', '0.32.2', {
+        'checksums': ['ce45b22def771a9c90a414093823e6befe7e23489c500eeccee5154b44d3ef91'],
+    }),
+    ('rngtools', '1.5.2', {
+        'checksums': ['7f8c76ca4c7851b69a86e27be09b02ddc86357f0388659ef8787634682e8a74d'],
+    }),
+    ('doParallel', '1.0.16', {
+        'checksums': ['f1bb26f964f30d47ae4d6cf2b0a2ca0c2122d376424875e82d9abe9e7b054eb2'],
+    }),
+    ('gridBase', '0.4-7', {
+        'checksums': ['be8718d24cd10f6e323dce91b15fc40ed88bccaa26acf3192d5e38fe33e15f26'],
+    }),
+    ('irlba', '2.3.3', {
+        'checksums': ['6ee233697bcd579813bd0af5e1f4e6dd1eea971e8919c748408130d970fef5c0'],
+    }),
+    ('igraph', '1.2.7', {
+        'checksums': ['25c1a03273359e012e2625d0d8826264c805037f247785e0b432e02c2aae1be5'],
+    }),
+    ('GeneNet', '1.2.15', {
+        'checksums': ['555ac4e1d6c53c099b94b9298b6a8893a07797886a21ce3655a98fa9a1326a85'],
+    }),
+    ('ape', '5.5', {
+        'checksums': ['a3aa01c74b99eafec7d98284e05957b6487b6971ced93f26881f2479bcd5299a'],
+    }),
+    ('RJSONIO', '1.3-1.6', {
+        'checksums': ['82d1c9ea7758b2a64ad683f9c46223dcba9aa8146b43c1115bf9aa76a657a09f'],
+    }),
+    ('caTools', '1.18.2', {
+        'checksums': ['75d61115afec754b053ed1732cc034f2aeb27b13e6e1932aa0f26bf590cf0293'],
+    }),
+    ('gplots', '3.1.1', {
+        'checksums': ['f9ae19c2574b6d41adbeccaf7bc66cf56d7b2769004daba7e0038d5fbd821339'],
+    }),
+    ('ROCR', '1.0-11', {
+        'checksums': ['57385a773220a3aaef5b221a68b2d9c2a94794d4f9e9fc3c1eb9521767debb2a'],
+    }),
+    ('later', '1.3.0', {
+        'checksums': ['08f50882ca3cfd2bb68c83f1fcfbc8f696f5cfb5a42c1448c051540693789829'],
+    }),
+    ('promises', '1.2.0.1', {
+        'checksums': ['8d3a8217909e91f4c2a2eebba5ac8fc902a9ac1a9e9d8a30815c9dc0f162c4b7'],
+    }),
+    ('httpuv', '1.6.3', {
+        'checksums': ['bfe338c86cc09968c5ec2fd1023040db323d3c3aa413d8d3e5ad4b320bf00876'],
+    }),
+    ('rjson', '0.2.20', {
+        'checksums': ['3a287c1e5ee7c333ed8385913c0a307daf99335fbdf803e9dcca6e3d5adb3f6c'],
+    }),
+    ('sourcetools', '0.1.7', {
+        'checksums': ['47984406efb3b3face133979ccbae9fefb7360b9a6ca1a1c11473681418ed2ca'],
+    }),
+    ('xml2', '1.3.2', {
+        'checksums': ['df22f9e7e3189d8c9b8804eaf0105324fdac983cffe743552f6d76613600a4cf'],
+    }),
+    ('commonmark', '1.7', {
+        'checksums': ['d14a767a3ea9778d6165f44f980dd257423ca6043926e3cd8f664f7171f89108'],
+    }),
+    ('jquerylib', '0.1.4', {
+        'checksums': ['f0bcc11dcde3a6ff180277e45c24642d3da3c8690900e38f44495efbc9064411'],
+    }),
+    ('rappdirs', '0.3.3', {
+        'checksums': ['49959f65b45b0b189a2792d6c1339bef59674ecae92f8c2ed9f26ff9e488c184'],
+    }),
+    ('fs', '1.5.0', {
+        'checksums': ['36df1653571de3c628a4f769c4627f6ac53d0f9e4106d9d476afb22ae9603897'],
+    }),
+    ('sass', '0.4.0', {
+        'checksums': ['7d06ca15239142a49e88bb3be494515abdd8c75f00f3f1b0ee7bccb55019bc2b'],
+    }),
+    ('bslib', '0.3.1', {
+        'checksums': ['5f5cb56e5cab9039a24cd9d70d73b69c2cab5b2f5f37afc15f71dae0339d9849'],
+    }),
+    ('fontawesome', '0.2.2', {
+        'checksums': ['572db64d1b3c9be301935e0ca7baec69f3a6e0aa802e23f1f224b3724259df64'],
+    }),
+    ('shiny', '1.7.1', {
+        'checksums': ['c03b2056fb41430352c7c0e812bcc8632e6ec4caef077d2f7633512d91721d00'],
+    }),
+    ('seqinr', '4.2-8', {
+        'checksums': ['584b34e9dec0320cef02096eb356a0f6115bbd24356cf62e67356963e9d5e9f7'],
+    }),
+    ('LearnBayes', '2.15.1', {
+        'checksums': ['9b110858456523ca0b2a63f22013c4e1fbda6674b9d84dc1f4de8bffc5260532'],
+    }),
+    ('deldir', '1.0-6', {
+        'checksums': ['6df6d8325c607e0b7d63cbc53c29e774eff95ad4acf9c7ec8f70693b0505f8c5'],
+    }),
+    ('gmodels', '2.18.1', {
+        'checksums': ['626140a34eb8c53dd0a06511a76c71bc61c48777fa76fcc5e6934c9c276a1369'],
+    }),
+    ('expm', '0.999-6', {
+        'checksums': ['2c79912fd2e03fcf89c29f09555880934402fcb2359af8b4579d79b4f955addc'],
+    }),
+    ('terra', '1.4-11', {
+        'checksums': ['0a8fc0deffd4f2d0065ac6b70ae5cda079a38fe86e40861df94d01d01412fd21'],
+    }),
+    ('raster', '3.5-2', {
+        'checksums': ['99565167f3ef41ade08b8466a172fc471c73184815c9fb199f9555db63e03d72'],
+    }),
+    ('spData', '2.0.1', {
+        'checksums': ['c635a3e2e5123b4cdb2e6877b9b09e3d50169e1512a53b2ba2db7fbe63b990fc'],
+    }),
+    ('units', '0.7-2', {
+        'checksums': ['b90be023431100632b3081747af9e743e615452b4ad38810991f7b024b7040eb'],
+    }),
+    ('classInt', '0.4-3', {
+        'checksums': ['9ede7a2a7a6b6c114919a3315a884fb592e33b037a50a4fe45cbd4fe2fc434ac'],
+    }),
+    ('vegan', '2.5-7', {
+        'checksums': ['e63b586951ea7d8b0118811f329c700212892ec1db3b93951603ce1d68aa462a'],
+    }),
+    ('rncl', '0.8.4', {
+        'checksums': ['6b19d0dd9bb08ecf99766be5ad684bcd1894d1cd9291230bdd709dbd3396496b'],
+    }),
+    ('XML', '3.99-0.8', {
+        'checksums': ['081f691c2ee8ad39c7c95281e7d9153ec04cee79ca2d41f5d82c2ec2f1d36b50'],
+    }),
+    ('tinytex', '0.34', {
+        'checksums': ['1d059397b70579c325b64bfd548ef7b985a7558bd1e3d95716e0ed7a0dd8e69b'],
+    }),
+    ('rmarkdown', '2.11', {
+        'checksums': ['9371255300e7ea4cd936978ad2ca3d205d8605e09f4913cb0d4725005a7a9775'],
+    }),
+    ('reshape', '0.8.8', {
+        'checksums': ['4d5597fde8511e8fe4e4d1fd7adfc7ab37ff41ac68c76a746f7487d7b106d168'],
+    }),
+    ('triebeard', '0.3.0', {
+        'checksums': ['bf1dd6209cea1aab24e21a85375ca473ad11c2eff400d65c6202c0fb4ef91ec3'],
+    }),
+    ('urltools', '1.7.3', {
+        'checksums': ['6020355c1b16a9e3956674e5dea9ac5c035c8eb3eb6bbdd841a2b5528cafa313'],
+    }),
+    ('httpcode', '0.3.0', {
+        'checksums': ['593a030a4f94c3df8c15576837c17344701bac023ae108783d0f06c476062f76'],
+    }),
+    ('crul', '1.1.0', {
+        'checksums': ['f0b6cfd19f7470a8aacc7621530315f83796aa64e24a47b96365963e5f615ace'],
+    }),
+    ('bold', '1.2.0', {
+        'checksums': ['8f1597f04acbe6b090232929325734c802049d82649ae102b438e1fa3af5a464'],
+    }),
+    ('rredlist', '0.7.0', {
+        'checksums': ['d2e66b655c43565a4cc0984dc3fcc9732652cb9677baaa9bb2b82e9f9d65e7f0'],
+    }),
+    ('rentrez', '1.2.3', {
+        'checksums': ['fb256597ebe7780e38bef9c4c2626b3feacd60c7a5a29fc6a218cf0d8d132f74'],
+    }),
+    ('rotl', '3.0.11', {
+        'checksums': ['339bf0b7527449eb495673e406b76a0831aa529fe05952c3448b455cd2c91c2c'],
+    }),
+    ('solrium', '1.2.0', {
+        'checksums': ['7ec64199497cc69f542fded955b709fc548cf8e2734c9db0f4a99a0ea67ca49b'],
+    }),
+    ('ritis', '1.0.0', {
+        'checksums': ['327b221872408b1f0fe0cce953685535b66d2fa5d6cac628e1142a26e4856136'],
+    }),
+    ('worrms', '0.4.2', {
+        'checksums': ['1ab228ea762a431a5e3a565b589b804fcb2865ceaa2b1459bd2ab3ebe8f5ebbe'],
+    }),
+    ('natserv', '1.0.0', {
+        'checksums': ['30f90f938e963191ef19b1433db1e265f67d8efe29c92a1d3603c3dc9a03d5c8'],
+    }),
+    ('WikipediR', '1.5.0', {
+        'checksums': ['f8d0e6f04fb65f7ad9c1c068852a6a8b699ffe8d39edf1f3fa07d32d087e8ff0'],
+    }),
+    ('ratelimitr', '0.4.1', {
+        'checksums': ['2b21e4574521c5336feeb3041eaf096bde7857b140049cdeb6ec97dc652aa71b'],
+    }),
+    ('rex', '1.2.0', {
+        'checksums': ['06b491f1469078862e40543fd74e1d38b2e0fb61fdf01c8083add4b11ac2eb54'],
+    }),
+    ('WikidataQueryServiceR', '1.0.0', {
+        'checksums': ['0e14eec8471a72227f800b41b331cfc49a94b4d4f49e68936448ebbae0b281ae'],
+    }),
+    ('pbapply', '1.5-0', {
+        'checksums': ['effdfee286e5ba9534dc2ac3cee96590a37f5cd2af28c836d00c25ca9f070a55'],
+    }),
+    ('WikidataR', '2.3.1', {
+        'checksums': ['dd349d160c1c0bae9e3efa336efc622ea9dd481cc0a449ceab49852d220eb2da'],
+    }),
+    ('wikitaxa', '0.4.0', {
+        'checksums': ['ba872853af59fdc8f1121d6e205f15e5bf4f2ec5ad68cd5755a423fa783bf7fc'],
+    }),
+    ('phangorn', '2.7.1', {
+        'checksums': ['d8a9d67851f16c3947575eb3344b9ce7ef856354e691211ef23c92b7889e1398'],
+    }),
+    ('uuid', '1.0-2', {
+        'checksums': ['0bed1a3fe298123e818b631c1a2d8bcf5c6ab334f625a482197324a877a6387a'],
+    }),
+    ('conditionz', '0.1.0', {
+        'checksums': ['ccd81e4f2534d29cddf44cf697f76ff01417cbeb22001a93477edc61cdd35646'],
+    }),
+    ('taxize', '0.9.99', {
+        'checksums': ['1a5d2783a82db4b6dd13df3639c7cd07112c1d83ddaabc83706ff235d977681c'],
+    }),
+    ('RNeXML', '2.4.5', {
+        'checksums': ['2b667ecb6400e4c0c125ca73a98cde81330cde3a85b764261f77159e702754f3'],
+    }),
+    ('phylobase', '0.8.10', {
+        'checksums': ['5a44380ff49bab333a56f6f96157324ade8afb4af0730e013194c4badb0bf94b'],
+    }),
+    ('magick', '2.7.3', {
+        'checksums': ['83877b2e23ea43fbc1164de9c2422eafbe7858393ac384df5adf3a7eec122441'],
+    }),
+    ('animation', '2.7', {
+        'checksums': ['88418f1b04ec785963bad492f30eb48b05914e9e5d88c7eef705d949cbd7e469'],
+    }),
+    ('bigmemory.sri', '0.1.3', {
+        'checksums': ['55403252d8bae9627476d1f553236ea5dc7aa6e54da6980526a6cdc66924e155'],
+    }),
+    ('bigmemory', '4.5.36', {
+        'checksums': ['18c67fbe6344b2f8223456c4f19ceebcf6c1166255eab81311001fd67a45ef0e'],
+    }),
+    ('calibrate', '1.7.7', {
+        'checksums': ['713b09b415c954e1ef5216088acd40621b0546c45afbb8c2c6f118ecb5cd6fa6'],
+    }),
+    ('clusterGeneration', '1.3.7', {
+        'checksums': ['534f29d8f7ed11e6e9a496f15845b588ec7133f3da5e6def8140b88500e52d5c'],
+    }),
+    ('dismo', '1.3-5', {
+        'checksums': ['812e1932d42c0f40acf2ab5c5b2d068f93128caf648626e1d11baf1a09340ee7'],
+    }),
+    ('extrafontdb', '1.0', {
+        'checksums': ['faa1bafee5d4fbc24d03ed237f29f1179964ebac6e3a46ac25b0eceda020b684'],
+    }),
+    ('Rttf2pt1', '1.3.9', {
+        'checksums': ['8667e48ed639c80180b1c1b65eff6ca2031bc9633a4fe79b50772f92375e3e71'],
+    }),
+    ('extrafont', '0.17', {
+        'checksums': ['2f6d7d79a890424b56ddbdced361f8b9ddede5edd33e090b816b88a99315332d'],
+    }),
+    ('fields', '13.3', {
+        'checksums': ['c652838b1ae7eb368831522824bfbc1d1db7b9d1db5e9bb52b194098549944c3'],
+    }),
+    ('shapefiles', '0.7', {
+        'checksums': ['eeb18ea4165119519a978d4a2ba1ecbb47649deb96a7f617f5b3100d63b3f021'],
+    }),
+    ('fossil', '0.4.0', {
+        'checksums': ['37c082fa15ebae89db99d6071b2bb2cad6a97a0405e9b4ef77f62a8f6ad274c1'],
+    }),
+    ('phytools', '0.7-90', {
+        'checksums': ['48615a709760af5f298f0af6615d238c96cad7d26e997fb65467520aad37e0d1'],
+    }),
+    ('geiger', '2.0.7', {
+        'checksums': ['d200736c4ad7ed4bc55a13e7d0126ddc7fed88e245cd5706d4692aaa437e9596'],
+    }),
+    ('shape', '1.4.6', {
+        'checksums': ['b9103e5ed05c223c8147dbe3b87a0d73184697343634a353a2ae722f7ace0b7b'],
+    }),
+    ('glmnet', '4.1-2', {
+        'checksums': ['06ab2b58c0b431736605aee2d42e517e0e2640d16b5a6c7867a25f05dd44cdcd'],
+    }),
+    ('crosstalk', '1.1.1', {
+        'checksums': ['ed3234f7f000fb607cc42e005d68be1dd598d95fa687a3f6e6b17ba38e36ccd8'],
+    }),
+    ('miniUI', '0.1.1.1', {
+        'checksums': ['452b41133289f630d8026507263744e385908ca025e9a7976925c1539816b0c0'],
+    }),
+    ('webshot', '0.5.2', {
+        'checksums': ['f183dc970157075b51ac543550a7a48fa3428b9c6838abb72fe987c21982043f'],
+    }),
+    ('shinyjs', '2.0.0', {
+        'checksums': ['c2cdd9fab41f6b46bb41b288cd9b3fb3a7fe9627b664e3a58a0cb5dd4c19f8ff'],
+    }),
+    ('manipulateWidget', '0.11.1', {
+        'checksums': ['5b73728d7d6dcc32f32d861375074cd65112c03a01e4ee4fa94e21b063fdefb6'],
+    }),
+    ('rgl', '0.107.14', {
+        'checksums': ['67213c3215bcadb56e15922fbf0dc7f6a6642cc3d924363dcb1705291727b0fc'],
+    }),
+    ('Rtsne', '0.15', {
+        'checksums': ['56376e4f0a382fad3d3d40e2cb0562224be5265b827622bcd235e8fc63df276c'],
+    }),
+    ('labdsv', '2.0-1', {
+        'checksums': ['5a4d55e9be18222dc47e725008b450996448ab117d83e7caaa191c0f13fd3925'],
+    }),
+    ('stabs', '0.6-4', {
+        'checksums': ['f8507337789f668e421a6ee7b11dd5ea331bf8bff0f9702dd1b93f46c2f3c1d9'],
+    }),
+    ('modeltools', '0.2-23', {
+        'checksums': ['6b3e8d5af1a039db5c178498dbf354ed1c5627a8cea9229726644053443210ef'],
+    }),
+    ('strucchange', '1.5-2', {
+        'checksums': ['7d247c5ae6f5a63c80e478799d009c57fb8803943aa4286d05f71235cc1002f8'],
+    }),
+    ('TH.data', '1.1-0', {
+        'checksums': ['21b37e251da5635ae91668f64b4c6f6a7ccedbe1f01af769d30fb532af83113e'],
+    }),
+    ('multcomp', '1.4-17', {
+        'checksums': ['41509d8457cfad9ce579115e6e0ed1f7c0244455a8639cbd38a6d755d338fb0b'],
+    }),
+    ('libcoin', '1.0-9', {
+        'checksums': ['2d7dd0b7c6dfc20472430570419ea36a714da7bbafd336da1fb53c5c6463d9eb'],
+    }),
+    ('coin', '1.4-2', {
+        'checksums': ['7546d1f27a82d98b4b3e43e4659eba0f74a67d5919ce85d2fb360282ba3cfbb2'],
+    }),
+    ('party', '1.3-9', {
+        'checksums': ['29a1fefdb86369285ebf5d48ab51268a83e2011fb9d9f609a2250b5f0b169089'],
+    }),
+    ('inum', '1.0-4', {
+        'checksums': ['5febef69c43a4b95b376c1418550a949d988a5f26b1383ca01c9728a94fc13ce'],
+    }),
+    ('partykit', '1.2-15', {
+        'checksums': ['b2e9454b2f4b9a39c9581c5871462f00acef4eeee5696ce3e32cfa1468d1e3ac'],
+    }),
+    ('mboost', '2.9-5', {
+        'checksums': ['cf9b13e00efe0b25702cb33151e8c11eff2de07db805db217472e9d09a3be079'],
+    }),
+    ('msm', '1.6.9', {
+        'checksums': ['aefcd9bb40b0167311d088d6fe23fdf7aa35deaac0f8b47ef02377cff5577023'],
+    }),
+    ('nor1mix', '1.3-0', {
+        'checksums': ['9ce4ee92f889a4a4041b5ea1ff09396780785a9f12ac46f40647f74a37e327a0'],
+    }),
+    ('np', '0.60-11', {
+        'checksums': ['a3b31b8ad70c42826076786b2b1b63b79cdbadfa55fe126773bc357686fd33a9'],
+    }),
+    ('polynom', '1.4-0', {
+        'checksums': ['c5b788b26f7118a18d5d8e7ba93a0abf3efa6603fa48603c70ed63c038d3d4dd'],
+    }),
+    ('polspline', '1.1.19', {
+        'checksums': ['953e3c4d007c3ef86ac2af3c71b272a99e8e35b194bdd58575785558c6711f66'],
+    }),
+    ('rms', '6.2-0', {
+        'checksums': ['10d58cbfe39fb434223834e29e5248c9384cded23e6267cfc99367d0f5ee24b6'],
+    }),
+    ('RWekajars', '3.9.3-2', {
+        'checksums': ['16e6b019aab1646f89c5203f0d6fc1cb800129e5169b15aaef30fd6236f5da1a'],
+    }),
+    ('RWeka', '0.4-43', {
+        'checksums': ['8c227a5935cff180d03c30eb73bdd00b16737579c8b8503ec7fccc17e746179a'],
+    }),
+    ('slam', '0.1-48', {
+        'checksums': ['0a0b32d35fd6b8d1ac021b1358e73d32ab942d274a84fbba732d6c02efdcfade'],
+    }),
+    ('tm', '0.7-8', {
+        'checksums': ['b1eb1683d956db1a207b61cc086ae08b3ca7f46b6b8bc46d09ba5a4fafa66256'],
+    }),
+    ('leaps', '3.1', {
+        'checksums': ['3d7c3a102ce68433ecf167ece96a7ebb4207729e4defd0ac8fc00e7003f5c3b6'],
+    }),
+    ('cNORM', '2.1.0', {
+        'checksums': ['52d0f831c2bfac93999b004c6f9ef84fe8230dc954da7b3d10030640fb7e3106'],
+    }),
+    ('TraMineR', '2.2-2', {
+        'checksums': ['0c0823e2f591bb669f8f36dac22199c0d2e2dfb20fc89d62e4a44575d57397a9'],
+    }),
+    ('chemometrics', '1.4.2', {
+        'checksums': ['b705832fa167dc24b52b642f571ed1efd24c5f53ba60d02c7797986481b6186a'],
+    }),
+    ('FNN', '1.1.3', {
+        'checksums': ['de763a25c9cfbd19d144586b9ed158135ec49cf7b812938954be54eb2dc59432'],
+    }),
+    ('miscTools', '0.6-26', {
+        'checksums': ['be3c5a63ca12ce7ce4d43767a1815cd3dcf32664728ade251cfb03ea6f77fc9a'],
+    }),
+    ('maxLik', '1.5-2', {
+        'checksums': ['7cee05be0624b6a76911fa7b0d66f3e1b78460e0c55ed8bc904ce1e8af7bb15d'],
+    }),
+    ('gbRd', '0.4-11', {
+        'checksums': ['0251f6dd6ca987a74acc4765838b858f1edb08b71dbad9e563669b58783ea91b'],
+    }),
+    ('rbibutils', '2.2.4', {
+        'checksums': ['bb9e7bd0ca472f7851704bd9a52ef7eca7540db32523f1b1f7e3bf06268cde97'],
+    }),
+    ('Rdpack', '2.1.2', {
+        'checksums': ['714897ec115344d9a9d423519f4c289e71038f80abccced02a47cdc05d61a168'],
+    }),
+    ('dfidx', '0.0-4', {
+        'checksums': ['04255de9b002b2f89db04144edcd72e21804e0c129a3e5082b4a21630c850702'],
+    }),
+    ('mlogit', '1.1-1', {
+        'checksums': ['6f3ea97db410be929a3078422f3d354d2f17855a21bbdc7c2c09d901e233d143'],
+    }),
+    ('getopt', '1.20.3', {
+        'checksums': ['531f5fdfdcd6b96a73df2b39928418de342160ac1b0043861e9ea844f9fbf57f'],
+    }),
+    ('gsalib', '2.1', {
+        'checksums': ['e1b23b986c18b89a94c58d9db45e552d1bce484300461803740dacdf7c937fcc'],
+    }),
+    ('optparse', '1.7.1', {
+        'checksums': ['324e304c13efd565d766766193d4ccd75e2cd949dfcfb416afc3939489071fe7'],
+    }),
+    ('labelled', '2.9.0', {
+        'checksums': ['36ac0e169ee065a8bced9417efeb85d62e1504a590d4321667d8a6213285d639'],
+    }),
+    ('R.cache', '0.15.0', {
+        'checksums': ['adb4d3b08f7917e10fe6188c7b90a3318701a974c58eaa09943b929382bdf126'],
+    }),
+    ('styler', '1.6.2', {
+        'checksums': ['a62fcc76aac851069f33874f9eaabdd580973b619cfc625d6ec910476015f75c'],
+    }),
+    ('questionr', '0.7.5', {
+        'checksums': ['a1a25d8ab228a8d3bdb6c37d50db3964fe33a3fe1c46a95331b029261977d4a3'],
+    }),
+    ('klaR', '0.6-15', {
+        'checksums': ['5bfe5bc643f8a64b222317732c26e9f93be297cdc318a869f15cc9ab0d9e0fae'],
+    }),
+    ('neuRosim', '0.2-12', {
+        'checksums': ['f4f718c7bea2f4b61a914023015f4c71312f8a180124dcbc2327b71b7be256c3'],
+    }),
+    ('locfit', '1.5-9.4', {
+        'checksums': ['d9d3665c5f3d49f698fb4675daf40a0550601e86db3dc00f296413ceb1099ced'],
+    }),
+    ('GGally', '2.1.2', {
+        'checksums': ['30352f36bf061bc98bdd5fa373ea0f23d007040bd908c7c018c8e627e0fb28e5'],
+    }),
+    ('beanplot', '1.2', {
+        'checksums': ['49da299139a47171c5b4ccdea79ffbbc152894e05d552e676f135147c0c9b372'],
+    }),
+    ('clValid', '0.7', {
+        'checksums': ['037da469891462021eb177f9c9e18caefa8532f08c68fb576fae1668a1f451a1'],
+    }),
+    ('DiscriMiner', '0.1-29', {
+        'checksums': ['5aab7671086ef9940e030324651976456f0e84dab35edb7048693ade885228c6'],
+    }),
+    ('ellipse', '0.4.2', {
+        'checksums': ['1719ce9a00b9ac4d56dbf961803085b892d3359726fda3567bb989ddfed9a5f2'],
+    }),
+    ('pbkrtest', '0.5.1', {
+        'checksums': ['b2a3452003d93890f122423b3f2487dcb6925440f5b8a05578509e98b6aec7c5'],
+    }),
+    ('carData', '3.0-4', {
+        'checksums': ['cda6f5e3efc1d955a4a0625e9c33f90d49f5455840e88b3bd757129b86044724'],
+    }),
+    ('maptools', '1.1-2', {
+        'checksums': ['3995c96e8472cd6717fe3cbd3506358ff460b6c2cf92dbe4b00f75f507514439'],
+    }),
+    ('zip', '2.2.0', {
+        'checksums': ['9f95987c964039834f770ecda2d5f7e3d3a9de553c89db2a5926c4219bf4b9d8'],
+    }),
+    ('openxlsx', '4.2.4', {
+        'checksums': ['af571b3c60cea2a5975f6a394469f1c50266d4a5c5c91896b991b1b3ba8bc86e'],
+    }),
+    ('rematch', '1.0.1', {
+        'checksums': ['a409dec978cd02914cdddfedc974d9b45bd2975a124d8870d52cfd7d37d47578'],
+    }),
+    ('cellranger', '1.1.0', {
+        'checksums': ['5d38f288c752bbb9cea6ff830b8388bdd65a8571fd82d8d96064586bd588cf99'],
+    }),
+    ('readxl', '1.3.1', {
+        'checksums': ['24b441713e2f46a3e7c6813230ad6ea4d4ddf7e0816ad76614f33094fbaaaa96'],
+    }),
+    ('rio', '0.5.27', {
+        'checksums': ['e0eb616cdbba9f2d5c4489ae05336201d717ce65b0ea6854023054d1c2e3dd0a'],
+    }),
+    ('car', '3.0-11', {
+        'checksums': ['b32c927206f515631ff276dbb337b0f22e9b2d851f4abb1d2c272e534c19542c'],
+    }),
+    ('flashClust', '1.01-2', {
+        'checksums': ['48a7849bb86530465ff3fbfac1c273f0df4b846e67d5eee87187d250c8bf9450'],
+    }),
+    ('ggrepel', '0.9.1', {
+        'checksums': ['29fb916d4799ba6503a5dd019717ffdf154d2aaae9ff1736f03e2be24af6bdfc'],
+    }),
+    ('DT', '0.19', {
+        'checksums': ['baa6bdae215ab84a5dee9c0a6c55dd92135c795d13dfce3c3485519c6f0e3b13'],
+    }),
+    ('FactoMineR', '2.4', {
+        'checksums': ['b9e3adce9a66b4daccc85fa67cb0769d6be230beeb126921b386ccde5db2e851'],
+    }),
+    ('flexclust', '1.4-0', {
+        'checksums': ['82fe445075a795c724644864c7ee803c5dd332a89ea9e6ccf7cd1ae2d1ecfc74'],
+    }),
+    ('flexmix', '2.3-17', {
+        'checksums': ['36019b7833032409ac61720dd625fa5a581a1d8bcba9045b04979c90907b5649'],
+    }),
+    ('prabclus', '2.3-2', {
+        'checksums': ['f421bcbcb557281e0de4a06b15f9a496adb5c640e883c0f7bb12051efc69e441'],
+    }),
+    ('diptest', '0.76-0', {
+        'checksums': ['508a5ebb161519cd0fcd156dc047b51becb216d545d62c6522496463f94ec280'],
+    }),
+    ('trimcluster', '0.1-5', {
+        'checksums': ['9239f20e4a06ac2fa89e5d5d89b23a45c8c534a7264d89bede8a35d43dda518b'],
+    }),
+    ('fpc', '2.2-9', {
+        'checksums': ['29b0006e96c8645645d215d3378551bd6525aaf45abde2d9f12933cf6e75fa38'],
+    }),
+    ('BiasedUrn', '1.07', {
+        'checksums': ['2377c2e59d68e758a566452d7e07e88663ae61a182b9ee455d8b4269dda3228e'],
+    }),
+    ('TeachingDemos', '2.12', {
+        'checksums': ['3e75405ce1affa406d6df85e06f96381412bc7a2810b25d8c81bfe64c4698644'],
+    }),
+    ('kohonen', '3.0.10', {
+        'checksums': ['996956ea46a827c9f214e4f940a19304a0ff35bda707d4d7312f80d3479067b2'],
+    }),
+    ('base64', '2.0', {
+        'checksums': ['8e259c2b12446197d1152b83a81bab84ccb5a5b77021a9b5645dd4c63c804bd1'],
+    }),
+    ('doRNG', '1.8.2', {
+        'checksums': ['33e9d45b91b0fde2e35e911b9758d0c376049121a98a1e4c73a1edfcff11cec9'],
+    }),
+    ('nleqslv', '3.3.2', {
+        'checksums': ['f54956cf67f9970bb3c6803684c84a27ac78165055745e444efc45cfecb63fed'],
+    }),
+    ('Deriv', '4.1.3', {
+        'checksums': ['dbdbf5ed8babf706373ae33a937d013c46110a490aa821bcd158a70f761d0f8c'],
+    }),
+    ('RGCCA', '2.1.2', {
+        'checksums': ['20f341fca8f616c556699790814debdf2ac7aa4dd9ace2071100c66af1549d7d'],
+    }),
+    ('pheatmap', '1.0.12', {
+        'checksums': ['579d96ee0417203b85417780eca921969cda3acc210c859bf9dfeff11539b0c1'],
+    }),
+    ('pvclust', '2.2-0', {
+        'checksums': ['7892853bacd413b5a921006429641ad308a344ca171b3081c15e4c522a8b0201'],
+    }),
+    ('RCircos', '1.2.1', {
+        'checksums': ['3b9489ab05ea83ead99ca6e4a1e6830467a2064779834aff1317b42bd41bb8fd'],
+    }),
+    ('lambda.r', '1.2.4', {
+        'checksums': ['d252fee39065326c6d9f45ad798076522cec05e73b8905c1b30f95a61f7801d6'],
+    }),
+    ('futile.options', '1.0.1', {
+        'checksums': ['7a9cc974e09598077b242a1069f7fbf4fa7f85ffe25067f6c4c32314ef532570'],
+    }),
+    ('futile.logger', '1.4.3', {
+        'checksums': ['5e8b32d65f77a86d17d90fd8690fc085aa0612df8018e4d6d6c1a60fa65776e4'],
+    }),
+    ('VennDiagram', '1.7.0', {
+        'checksums': ['7537566ae94ea4bde97ca819ce5ec477943f33847a8eb0042d0859ce11ab35d1'],
+    }),
+    ('xlsxjars', '0.6.1', {
+        'checksums': ['37c1517f95f8bca6e3514429394d2457b9e62383305eba288416fb53ab2e6ae6'],
+    }),
+    ('xlsx', '0.6.5', {
+        'checksums': ['378c5ed475a3d7631ea1ea13e0a69d619c1a52260922abda42818752dbb32107'],
+    }),
+    ('uroot', '2.1-2', {
+        'checksums': ['bd7fd9e35928d09d0e8fae9e4359a2b2bca6e6865b278436319e2f91db0e4b37'],
+    }),
+    ('forecast', '8.15', {
+        'checksums': ['c73aabed083095b457ed875c240716686fbd41d1cbafa116b7b890a54b919174'],
+    }),
+    ('fma', '2.4', {
+        'checksums': ['69a94c3bd464176a80232d49fcd04d478d4dd59f9bf128d6a9f46e49612d27f4'],
+    }),
+    ('expsmooth', '2.3', {
+        'checksums': ['ac7da36347f983d6ec71715daefd2797fe2fc505c019f4965cff9f77ce79982a'],
+    }),
+    ('fpp', '0.5', {
+        'checksums': ['9c87dd8591b8a87327cae7a03fd362a5492495a96609e5845ccbeefb96e916cb'],
+    }),
+    ('tensor', '1.5', {
+        'checksums': ['e1dec23e3913a82e2c79e76313911db9050fb82711a0da227f94fc6df2d3aea6'],
+    }),
+    ('polyclip', '1.10-0', {
+        'checksums': ['74dabc0dfe5a527114f0bb8f3d22f5d1ae694e6ea9345912909bae885525d34b'],
+    }),
+    ('goftest', '1.2-3', {
+        'checksums': ['3a5f74b6ae7ece5b294781ae57782abe12375d61789c55ff5e92e4aacf347f19'],
+    }),
+    ('spatstat.utils', '2.2-0', {
+        'checksums': ['5ad87e524285621dc4ef75c941eba933d980125293ee8f2bef5b7db02f63d7ab'],
+    }),
+    ('spatstat.data', '2.1-0', {
+        'checksums': ['1b9840ad0ec7eddfa98a01e8b8a5291e5cb447c3082aa7d7b4df762577f95533'],
+    }),
+    ('spatstat.geom', '2.3-0', {
+        'checksums': ['7b1746a44509a6d518799332477fffa3474217c6cb3c6b92a325525b48fce9c7'],
+    }),
+    ('spatstat.sparse', '2.0-0', {
+        'checksums': ['27fbce64e21f095a5e9ac54c86f91c9f4b45eac3c2358580e04423b4beba19c7'],
+    }),
+    ('spatstat.core', '2.3-0', {
+        'checksums': ['5795ec6db2961dce740c7cd39a9c1b855d92a4af351a794a9bfd634a3f1526c9'],
+    }),
+    ('spatstat.linnet', '2.3-0', {
+        'checksums': ['f0c089c41db8fe83d09ecb396ce8952a593c265411fb997847201d9784f9a2f9'],
+    }),
+    ('spatstat', '2.2-0', {
+        'checksums': ['8f0f90e8d5af1e2e97ef5f01e595511916290d554fc1ae3ad7b217605bd4e353'],
+    }),
+    ('pracma', '2.3.3', {
+        'checksums': ['cf1f8d7724a385d9a2e1a5496d9ba0e9908940b85669fb2c506b9059722cb93c'],
+    }),
+    ('RCurl', '1.98-1.5', {
+        'checksums': ['73187c9a039188ffdc255fb7fa53811a6abfb31e6375a51eae8c763b37dd698d'],
+    }),
+    ('bio3d', '2.4-2', {
+        'checksums': ['91415766cda0f96557e6bc568dbce8d44254a9460f2e2d0beed0ce14ffad6ccb'],
+    }),
+    ('AUC', '0.3.0', {
+        'checksums': ['e705f2c63d336249d19187f3401120d738d42d323fce905f3e157c2c56643766'],
+    }),
+    ('interpretR', '0.2.4', {
+        'checksums': ['4c08a6dffd6fd5764f27812f3a085c53e6a21d59ae82d903c9c0da93fd1dd059'],
+    }),
+    ('cvAUC', '1.1.0', {
+        'checksums': ['c4d8ed53b93869650aa2f666cf6d1076980cbfea7fa41f0b8227595be849738d'],
+    }),
+    ('SuperLearner', '2.0-28', {
+        'checksums': ['5f42233abd48f1740c33aae1ec4ad8e9952fddb5df1ee49ff2d43d5d89f05601'],
+    }),
+    ('mediation', '4.5.0', {
+        'checksums': ['210206618787c395a67689be268283df044deec7199d9860ed95218ef1e60845'],
+    }),
+    ('CVST', '0.2-2', {
+        'checksums': ['854b8c983427ecf9f2f7798c4fd1c1d06762b5b0bcb1045502baadece6f78316'],
+    }),
+    ('DRR', '0.0.4', {
+        'checksums': ['93e365a4907e301ae01f7d943e6bdcda71ef23c51a4759ba3c94bcf842d4e0f8'],
+    }),
+    ('dimRed', '0.2.3', {
+        'checksums': ['e6e56e3f6999ebdc326e64ead5269f3aaf61dd587beefafb7536ac3890370d84'],
+    }),
+    ('ddalpha', '1.3.11', {
+        'checksums': ['c30b4a3a9549cb4dc0a8e51e06f5b6e4c457c5326acc8f4680968c920f59b6e9'],
+    }),
+    ('RcppRoll', '0.3.0', {
+        'checksums': ['cbff2096443a8a38a6f1dabf8c90b9e14a43d2196b412b5bfe5390393f743f6b'],
+    }),
+    ('adabag', '4.2', {
+        'checksums': ['47019eb8cefc8372996fbb2642f64d4a91d7cedc192690a8d8be6e7e03cd3c81'],
+    }),
+    ('parallelMap', '1.5.1', {
+        'checksums': ['c108a634a335ed47b0018f532a52b032487e239c5061f939ba32355dfefde7e1'],
+    }),
+    ('ParamHelpers', '1.14', {
+        'checksums': ['b17652d0a69de3241a69f20be4ad1bfe02c413328a17f3c1ac7b73886a6ba2eb'],
+    }),
+    ('ggvis', '0.4.7', {
+        'checksums': ['9e6b067e11d497c796d42156570e2481afb554c5db265f42afbb74d2ae0865e3'],
+    }),
+    ('mlr', '2.19.0', {
+        'checksums': ['1149c9b453896481c85906045aa82d511d96979ddecbe5a3faf04f9f4a5e6113'],
+    }),
+    ('unbalanced', '2.0', {
+        'checksums': ['9be32b1ce9d972f1abfff2fbe18f5bb5ba9c3f4fb1282063dc410b82ad4d1ea2'],
+    }),
+    ('RSNNS', '0.4-14', {
+        'checksums': ['7f6262cb2b49b5d5979ccce9ded9cbb2c0b348fd7c9eabc1ea1d31c51a102c20'],
+    }),
+    ('abc.data', '1.0', {
+        'checksums': ['b242f43c3d05de2e8962d25181c6b1bb6ca1852d4838868ae6241ca890b161af'],
+    }),
+    ('abc', '2.1', {
+        'checksums': ['0bd2dcd4ee1915448d325fb5e66bee68e0497cbd91ef67a11b400b2fbe52ff59'],
+    }),
+    ('lhs', '1.1.3', {
+        'checksums': ['e43b8d48db1cf26013697e2a798ed1d31d1ee1790f2ebfecb280176c0e0c06d1'],
+    }),
+    ('tensorA', '0.36.2', {
+        'checksums': ['8e8947566bd3b65a54de4269df1abaa3d49cf5bfd2a963c3274a524c8a819ca7'],
+    }),
+    ('EasyABC', '1.5', {
+        'checksums': ['1dd7b1383a7c891cafb34d9cec65d92f1511a336cff1b219e63c0aa791371b9f'],
+    }),
+    ('whisker', '0.4', {
+        'checksums': ['7a86595be4f1029ec5d7152472d11b16175737e2777134e296ae97341bf8fba8'],
+    }),
+    ('roxygen2', '7.1.2', {
+        'checksums': ['b3693d1eb57bb1c27134447ea7f64c353c085dd2237af7cfacc75fca3d2fc5fd'],
+    }),
+    ('git2r', '0.28.0', {
+        'checksums': ['ce6d148d21d2c87757e98ef4474b2d09faded9b9b866f046bd26d4ca925e55f2'],
+    }),
+    ('rversions', '2.1.1', {
+        'checksums': ['79aaacf5a1258d91ac0ddedf3c8c16a2d10d39010993dcc7b0a2638afee27cb1'],
+    }),
+    ('xopen', '1.0.0', {
+        'checksums': ['e207603844d69c226142be95281ba2f4a056b9d8cbfae7791ba60535637b3bef'],
+    }),
+    ('sessioninfo', '1.2.0', {
+        'checksums': ['adebf738ad3d3af9e018302d949994240311ef06c0a77c645b2f761c1a8c07df'],
+    }),
+    ('rcmdcheck', '1.4.0', {
+        'checksums': ['bbd4ef7d514b8c2076196a7c4a6041d34623d55fbe73f2771758ce61fd32c9d0'],
+    }),
+    ('remotes', '2.4.1', {
+        'checksums': ['d5d777b2e10d70fd0670166d539eab88ec4f7fe030f54ec5cd2703f548473276'],
+    }),
+    ('clisymbols', '1.2.0', {
+        'checksums': ['0649f2ce39541820daee3ed408d765eddf83db5db639b493561f4e5fbf88efe0'],
+    }),
+    ('ini', '0.3.1', {
+        'checksums': ['7b191a54019c8c52d6c2211c14878c95564154ec4865f57007953742868cd813'],
+    }),
+    ('gitcreds', '0.1.1', {
+        'checksums': ['b14aaf4e910a9d2d6c65c93e645f0b0159c00898e669f917f83c03dfedb1dfea'],
+    }),
+    ('gh', '1.3.0', {
+        'checksums': ['a44039054e8ca56496f2d9c7a10cdadf4a7383bc91086e768ba7e7f1fbcaed1c'],
+    }),
+    ('credentials', '1.3.1', {
+        'checksums': ['8795a73a65d1ce2e9f0be66546e85231c846ba6445a11948b9816fbee20a7a60'],
+    }),
+    ('gert', '1.4.1', {
+        'checksums': ['623b58f12c5530b101e91a352269fe011814b074cf7a7ed0b3cd4506390a63f8'],
+    }),
+    ('usethis', '2.1.3', {
+        'checksums': ['2db075980247d854110de60e7afe6f6e0b654a3ba49d0699ff40dd516e8e9bbf'],
+    }),
+    ('covr', '3.5.1', {
+        'checksums': ['a54cfc3623ea56084158ac5d7fe33f216f45191f6dcddab9c9ed4ec1d9d8ac6c'],
+    }),
+    ('devtools', '2.4.2', {
+        'checksums': ['71f0a55054d293fb553702b21b91941bc5c83a933610fad6f9662bf0a6178f05'],
+    }),
+    ('Rook', '1.1-1', {
+        'checksums': ['00f4ecfa4c5c57018acbb749080c07154549a6ecaa8d4130dd9de79427504903'],
+    }),
+    ('Cairo', '1.5-12.2', {
+        'checksums': ['dd524105c83b82b5c3b3ee2583ef90d4cafa54b0c29817dac48b425b79f90f92'],
+    }),
+    ('RMTstat', '0.3', {
+        'checksums': ['81eb4c5434d04cb66c749a434c33ceb1c07d92ba79765d4e9233c13a092ec2da'],
+    }),
+    ('Lmoments', '1.3-1', {
+        'checksums': ['7c9d489a08f93fa5877e2f233ab9732e0d1b2761596b3f6ac91f2295e41a865d'],
+    }),
+    ('distillery', '1.2-1', {
+        'checksums': ['4b88f0b34e472b9134ad403fb32283424f1883a5943e52c55f1fe05995efb5fa'],
+    }),
+    ('extRemes', '2.1-1', {
+        'checksums': ['5a1927bb21f178ec5a3e3f862d792e690e45c16c88190e64e83aa1fb9e3ffa02'],
+    }),
+    ('tkrplot', '0.0-26', {
+        'checksums': ['dd66264c2553f6927aff297c6b1c3b61867d6c63aec080f40a1e9d53cfc9d120'],
+    }),
+    ('misc3d', '0.9-1', {
+        'checksums': ['a07bbb0de153e806cd79675ed478d2d9221cff825654f59a71a9cf61f4293d65'],
+    }),
+    ('multicool', '0.1-12', {
+        'checksums': ['487d28d9c3c606be0cf56e2d8f8b0d79fb71949c68886ea9251fbb1c01664a36'],
+    }),
+    ('plot3D', '1.4', {
+        'checksums': ['d04a45197646fb36bc38870c1c2351cb56b912bd772b1ebfa25eaeef35fda9c0'],
+    }),
+    ('plot3Drgl', '1.0.2', {
+        'checksums': [('aa874891446a395f01791d80a5a0f1f9a1c2c41f029de3a8d5af9aa47f46a496',
+                       '805513029895cf5a81f18ede4123ef2525a236cd555437609229fe720c346e14')],
+    }),
+    ('OceanView', '1.0.6', {
+        'checksums': ['2c5165975d6c49fdc83a892cb0406584928dd44000c9774fffc00fbd2fec86f3'],
+    }),
+    ('ks', '1.13.2', {
+        'checksums': ['7c9e4e178adcecb0817213c0210b82d91647f4acf5c4d4056d46d286a5bff609'],
+    }),
+    ('logcondens', '2.1.6', {
+        'checksums': ['785bbda00b9a25e56440e11356ac219cfbf0fdf8b08c7b0728e53a9febe7a365'],
+    }),
+    ('Iso', '0.0-18.1', {
+        'checksums': ['2fa5f78a7603cbae94a5e38e791938596a053d48c609a7c120a19cbb7d93c66f'],
+    }),
+    ('penalized', '0.9-51', {
+        'checksums': ['eaa80dca99981fb9eb576261f30046cfe492d014cc2bf286c447b03a92e299fd'],
+    }),
+    ('clusterRepro', '0.9', {
+        'checksums': ['940d84529ff429b315cf4ad25700f93e1156ccacee7b6c38e4bdfbe2d4c6f868'],
+    }),
+    ('data.tree', '1.0.0', {
+        'checksums': ['40674c90a5bd00f5185db9adbd221c6f1114043e69095249f5fa8b3044af3f5e'],
+    }),
+    ('influenceR', '0.1.0.1', {
+        'checksums': ['63c46f1175fced33fb1b78d4d56e37fbee09b408945b0106dac36e3344cd4766'],
+    }),
+    ('visNetwork', '2.1.0', {
+        'checksums': ['a2b91e7fbbd9d08a9929a5b2c891d9c0bca5977ad772fa37510d96656af1152f'],
+    }),
+    ('downloader', '0.4', {
+        'checksums': ['1890e75b028775154023f2135cafb3e3eed0fe908138ab4f7eff1fc1b47dafab'],
+    }),
+    ('DiagrammeR', '1.0.6.1', {
+        'checksums': ['be4e4c520a3692902ce405e8225aef9f3d5f0cd11fcde614f6541e981b63673d'],
+    }),
+    ('randomForestSRC', '2.13.0', {
+        'checksums': ['beb981cae3a8c7232a2ca67f0a7bf3293eb44d5f1ac14913632ca8f8d4728abd'],
+    }),
+    ('sm', '2.2-5.7', {
+        'checksums': ['2607a2cafc68d7e99005daf99e36f4a66eaf569ebb6b7500e962642cf58be80f'],
+    }),
+    ('pbivnorm', '0.6.0', {
+        'checksums': ['07c37d507cb8f8d2d9ae51a9a6d44dfbebd8a53e93c242c4378eaddfb1cc5f16'],
+    }),
+    ('lavaan', '0.6-9', {
+        'checksums': ['d404c4eb40686534f9c05f24f908cd954041f66d1072caea4a3adfa83a5f108a'],
+    }),
+    ('matrixcalc', '1.0-5', {
+        'checksums': ['5906e1ef06dbc18efc7a4b370adc180ef8941b5438119703bd981d1c76a06fca'],
+    }),
+    ('arm', '1.12-2', {
+        'checksums': ['816ba1c31eec00feef472c57e280488d3d233b592f6f0a1a30e4abb903cb4f5d'],
+    }),
+    ('mi', '1.0', {
+        'checksums': ['34f44353101e8c3cb6bf59c5f4ff5b2391d884dcbb9d23066a11ee756b9987c0'],
+    }),
+    ('servr', '0.23', {
+        'checksums': ['4492d1dabc8f62cf7f7a53c97413a664823a3916dcaf99a7b04bcb279f7b2eb8'],
+    }),
+    ('rgexf', '0.16.2', {
+        'checksums': ['6ee052b0de99d0c7492366b991d345a51b3d0cc890d10a68b8670e1bd4fc8201'],
+    }),
+    ('sem', '3.1-13', {
+        'checksums': ['07749f710ad800f43cacdff8f1aa4f20105a619c72be4465f29860c381242f65'],
+    }),
+    ('statnet.common', '4.5.0', {
+        'checksums': ['3cdb23db86f3080462f15e29bcf3e941590bc17ea719993b301199b22d6f882f'],
+    }),
+    ('network', '1.17.1', {
+        'checksums': ['fc3c3a0014f8895a11c33994c9b44c6ef6cc49c7d026cd41ae6bba5ef63005a7'],
+    }),
+    ('rle', '0.9.2', {
+        'checksums': ['803cbe310af6e882e27be61d37d660dbe5910ac1ee1eff61a480bcf724a04f69'],
+    }),
+    ('sna', '2.6', {
+        'checksums': ['3a016550d9f424a0613c3f5b0b680dbd3a1f20a343173d39a96034340ad9202a'],
+    }),
+    ('glasso', '1.11', {
+        'checksums': ['4c37844b26f55985184a734e16b8fe880b192e3d2763614b0ab3f99b4530e30a'],
+    }),
+    ('huge', '1.3.5', {
+        'checksums': ['9240866e2f773cd0ac8a02514871149d2babaa162a49e151eab9591ad42984ea'],
+    }),
+    ('d3Network', '0.5.2.1', {
+        'checksums': ['5c798dc0c87c6d574abb7c1f1903346e6b0fec8adfd1df7aef5e4f9e7e3a09be'],
+    }),
+    ('BDgraph', '2.64', {
+        'checksums': ['243f3af3724552049f8f4f55dd425e3313adab95e1128ae4d6551d96005fdf5e'],
+    }),
+    ('graphlayouts', '0.7.1', {
+        'checksums': ['380f8ccb0b08735694e83f661fd56a0d592a78448ae91b89c290ba8582d66717'],
+    }),
+    ('tweenr', '1.0.2', {
+        'checksums': ['1805f575da6705ca4e5ec1c4605222fc826ba806d9ff9af41770294fe08ff69f'],
+    }),
+    ('ggforce', '0.3.3', {
+        'checksums': ['2a283bb409da6b96929863a926b153bcc59b2c6f00551805db1d1d43e5929f2f'],
+    }),
+    ('tidygraph', '1.2.0', {
+        'checksums': ['057d6c42fc0144109f3ace7f5058cca7b2fe493c761daa991448b23f86b6129f'],
+    }),
+    ('ggraph', '2.0.5', {
+        'checksums': ['e36ad49dba92ee8652e18b1fb197be0ceb9f0a2f8faee2194453a62578449654'],
+    }),
+    ('qgraph', '1.9', {
+        'checksums': ['e1d7489c4db47878dccd34ded7e8173d58a190ad453d2e6e89f33549ccfd10aa'],
+    }),
+    ('HWxtest', '1.1.9', {
+        'patches': ['HWxtest-1.1.9_add-fcommon.patch'],
+        'checksums': [
+            'a37309bed4a99212ca104561239d834088217e6c5e5e136ff022544c706f25e6',  # HWxtest_1.1.9.tar.gz
+            '4ce08c35035dbcc4edf092cdb405ae32c21c05b3786c15c0aa4bfe13bd81f451',  # HWxtest-1.1.9_add-fcommon.patch
+        ],
+    }),
+    ('diveRsity', '1.9.90', {
+        'checksums': ['b8f49cdbfbd82805206ad293fcb2dad65b962fb5523059a3e3aecaedf5c0ee86'],
+    }),
+    ('doSNOW', '1.0.19', {
+        'checksums': ['4cd2d080628482f4c6ecab593313d7e42516f5ff13fbf9f90e461fcad0580738'],
+    }),
+    ('geepack', '1.3-2', {
+        'checksums': ['99b53e40f7e5fda7422b143e6fee16513e2f880cb04a97cd403e98c4760670a6'],
+    }),
+    ('biom', '0.3.12', {
+        'checksums': ['4ad17f7811c7346dc4923bd6596a007c177eebb1944a9f46e5674afcc5fdd5a1'],
+    }),
+    ('pim', '2.0.2', {
+        'checksums': ['1195dbdbd67348dfef4b6fc34fcec643da685ebe58d34bbe049ab121aca9944f'],
+    }),
+    ('minpack.lm', '1.2-1', {
+        'checksums': ['14cb7dba3ef2b46da0479b46d46c76198e129a31f6157cd8b37f178adb15d5a3'],
+    }),
+    ('rootSolve', '1.8.2.3', {
+        'checksums': ['b5b3d1641642a3fd1279dbd1245f968d2331ac9588d77f872b113f7dc4594ba0'],
+    }),
+    ('diagram', '1.6.5', {
+        'checksums': ['e9c03e7712e0282c5d9f2b760bafe2aac9e99a9723578d9e6369d60301f574e4'],
+    }),
+    ('FME', '1.3.6.2', {
+        'checksums': ['65a200f8171e27f0a3d7ffce3e49b01561f219a11f3cb515ff613a45927ff618'],
+    }),
+    ('bmp', '0.3', {
+        'checksums': ['bdf790249b932e80bc3a188a288fef079d218856cf64ffb88428d915423ea649'],
+    }),
+    ('tiff', '0.1-8', {
+        'checksums': ['4b7482f70d8ecef9596b766ef1c64102c8b09208cb769c39d9e4db81cb3ba1a2'],
+    }),
+    ('readbitmap', '0.1.5', {
+        'checksums': ['737d7d585eb33de2c200da64d16781e3c9522400fe2af352e1460c6a402a0291'],
+    }),
+    ('imager', '0.42.10', {
+        'checksums': ['01939eb03ad2e1369a4240a128c3b246a4c56f572f1ea4967f1acdc555adaeee'],
+    }),
+    ('signal', '0.7-7', {
+        'checksums': ['67a015c46d67de7548c3adb83a1b22524de75501a861d91668c3c2ea761a4e61'],
+    }),
+    ('tuneR', '1.3.3.1', {
+        'checksums': ['cdcbf04ab5b547002ee5b1d3bc46145882c5a551f164cac43df71596f1edd18a'],
+    }),
+    ('pastecs', '1.3.21', {
+        'checksums': ['8c1ef2affe88627f0b23295aa5edb758b8fd6089ef09f60f37c46445128b8d7c'],
+    }),
+    ('audio', '0.1-8', {
+        'checksums': ['1a1c78bca63ed1fb5e30e00c593b67e1230b408e6a77c67082b41373d79b5bb4'],
+    }),
+    ('fftw', '1.0-6', {
+        'checksums': ['397ef5ec354b919884f74fba4202bfc13ad11a70b16285c41677aad1d3b170ce'],
+    }),
+    ('seewave', '2.1.8', {
+        'checksums': ['10e6487325ccd1c3cd64617182733f1472f3170974b32bb61a6b12ba7ddeeceb'],
+    }),
+    ('gsw', '1.0-6', {
+        'checksums': ['147ce73da75777799af9cb712862ef25b52fcae146a64ce0a525460ddfea1deb'],
+    }),
+    ('wk', '0.5.0', {
+        'checksums': ['71d500e0beaeed40501702adf214054d30278acb3171af6db4ae8dcdf5e7423a'],
+    }),
+    ('s2', '1.0.7', {
+        'checksums': ['2010c1c6ae29938ec9cd153a8b2c06a333ea4d647932369b2fc7d0c68d6d9e3f'],
+    }),
+    ('sf', '1.0-3', {
+        'checksums': ['2ee3ece4e5056fe267d76a785912a2285ddfc235b1be67b4c21b74dc39a831f8'],
+    }),
+    ('oce', '1.4-0', {
+        'checksums': ['3b341448001164dc62b54a26c8f86adf50e68705ddc47615b290b950da734408'],
+    }),
+    ('ineq', '0.2-13', {
+        'checksums': ['e0876403f59a3dfc2ea7ffc0d965416e1ecfdecf154e5856e5f54800b3efda25'],
+    }),
+    ('soundecology', '1.3.3', {
+        'checksums': ['276164d5eb92c78726c647be16232d2443acbf7061371ddde2672b4fdb7a069a'],
+    }),
+    ('memuse', '4.2-1', {
+        'checksums': ['f5e9dbaad4efbbfe219a93f446e318a00cad5b294bfc60ca2146eca894b47cf3'],
+    }),
+    ('pinfsc50', '1.2.0', {
+        'checksums': ['ed1fe214b9261feef8abfbf724c2bd9070d68e99a6ea95208aff2c57bbef8794'],
+    }),
+    ('vcfR', '1.12.0', {
+        'checksums': ['dd87ff010365de363864a44ca49887c0fdad0dd18d0d9c66e44e39c2d4581d52'],
+    }),
+    ('glmmML', '1.1.1', {
+        'checksums': ['255fe2640933d83ef7ea5813ba8006038c18195147d1f34f47a759210a674dd4'],
+    }),
+    ('cowplot', '1.1.1', {
+        'checksums': ['c7dce625b456dffc59ba100c816e16226048d12fdd29a7335dc1f6f6e12eed48'],
+    }),
+    ('tsne', '0.1-3', {
+        'checksums': ['66fdf5d73e69594af529a9c4f261d972872b9b7bffd19f85c1adcd66afd80c69'],
+    }),
+    ('sn', '2.0.0', {
+        'checksums': ['abd6ccdb3719b482db43ff2d5b12f2efcb8244792ec08e1176c5eb98fcc7886a'],
+    }),
+    ('tclust', '1.4-2', {
+        'checksums': ['95dcd07dbd16383f07f5cea8561e7f3bf314e4a7483879841103b149fc8c65d9'],
+    }),
+    ('ranger', '0.13.1', {
+        'checksums': ['60934f0accc21edeefddbb4ddebfdd7cd10a3d3e90b31aa2e6e4b7f50d632d0a'],
+    }),
+    ('hexbin', '1.28.2', {
+        'checksums': ['6241f8d3a6c6be2c1c693c3ddb99554bc103e3c6cf602d0c2787c0ce6fd1702d'],
+    }),
+    ('lobstr', '1.1.1', {
+        'checksums': ['b8c9ce00095bd4f304b4883ef71da24572022f0632a18c3e1ba317814e70716e'],
+    }),
+    ('pryr', '0.1.5', {
+        'checksums': ['7b1653ec51850f4633cee8e2eb7d0b2724fb587b801539488b426cf88f0f770b'],
+    }),
+    ('moments', '0.14', {
+        'checksums': ['2a3b81e60dafdd092d2bdd3513d7038855ca7d113dc71df1229f7518382a3e39'],
+    }),
+    ('laeken', '0.5.2', {
+        'checksums': ['22790f7157f23eb0b7b0b89e2ea53478fb3c0d15b5be8ad11525d3e6d5626cdc'],
+    }),
+    ('VIM', '6.1.1', {
+        'checksums': ['7581adca64cf20b93d5a111da83f663215b4529868b065b3463c4238bca97739'],
+    }),
+    ('smoother', '1.1', {
+        'checksums': ['91b55b82f805cfa1deedacc0a4e844a2132aa59df593f3b05676954cf70a195b'],
+    }),
+    ('dynamicTreeCut', '1.63-1', {
+        'checksums': ['831307f64eddd68dcf01bbe2963be99e5cde65a636a13ce9de229777285e4db9'],
+    }),
+    ('beeswarm', '0.4.0', {
+        'checksums': ['51f4339bf4080a2be84bb49a844c636625657fbed994abeaa42aead916c3d504'],
+    }),
+    ('vipor', '0.4.5', {
+        'checksums': ['7d19251ac37639d6a0fed2d30f1af4e578785677df5e53dcdb2a22771a604f84'],
+    }),
+    ('ggbeeswarm', '0.6.0', {
+        'checksums': ['bbac8552f67ff1945180fbcda83f7f1c47908f27ba4e84921a39c45d6e123333'],
+    }),
+    ('shinydashboard', '0.7.2', {
+        'checksums': ['a56ee48572649830cd8d82f1caa2099411461e19e19223cbad36a375299f3843'],
+    }),
+    ('rrcov', '1.6-0', {
+        'checksums': ['795f3a49b3e17c9c6e0fdd865e81a0402cefda970032c8299bcf2056ca7ec944'],
+    }),
+    ('WriteXLS', '6.3.0', {
+        'checksums': ['0b1d987abe4b08f6a32003b77d1cfc2eefdc5a478382e77ca0da98bccf6e526b'],
+    }),
+    ('bst', '0.3-23', {
+        'checksums': ['70957f1db8800bf0d628a9e6f72b7273329786dd119427790b326844591aa0f3'],
+    }),
+    ('pamr', '1.56.1', {
+        'checksums': ['d0e527f2336ee4beee91eefb2a8f0dfa96413d9b5a5841d6fc7ff821e67c9779'],
+    }),
+    ('WeightSVM', '1.7-9', {
+        'checksums': ['983733b618631d9ad754fb12f5e576912aff1f529cafdee4fddfd38d81ccc710'],
+    }),
+    ('mpath', '0.4-2.19', {
+        'checksums': ['fa0d92984910b8f556677850e3d899bc675724f0e2a3a73629d2700040335afe'],
+    }),
+    ('timereg', '2.0.1', {
+        'checksums': ['38429ae21d9d090ed968d2e0c06cd0310cc304e974c353a97cde3d2e49f138d7'],
+    }),
+    ('peperr', '1.3', {
+        'checksums': ['64d30b0ec09bf9b8f7b6edce67dd0f9e0e3dbe665fec8f5411f74142e53e9f5d'],
+    }),
+    ('heatmap3', '1.1.9', {
+        'checksums': ['594c33947b2be2cc8a592075f41a0df2398c892add7d63a15c613a5eeb8fdb69'],
+    }),
+    ('GlobalOptions', '0.1.2', {
+        'checksums': ['47890699668cfa9900a829c51f8a32e02a7a7764ad07cfac972aad66f839753e'],
+    }),
+    ('circlize', '0.4.13', {
+        'checksums': ['6cbadbf8e8b1abbd71a79080677d2b95f2bdd18f2e4d707c32d5c2ff26c5369b'],
+    }),
+    ('GetoptLong', '1.0.5', {
+        'checksums': ['8c237986ed3dfb72d956ad865ef7768644eebf144675ad66140acfd1aca9d701'],
+    }),
+    ('dendextend', '1.15.2', {
+        'checksums': ['4ba3885b66694589d455ffef31c218fe653fa25aff3efb7e8db6c25008d2921b'],
+    }),
+    ('RInside', '0.2.16', {
+        'checksums': ['7ae4ade128ea05f37068d59e610822ff0b277f9d39d8900f7eb31759ad5a2a0e'],
+    }),
+    ('limSolve', '1.5.6', {
+        'checksums': ['b97ea9930383634c8112cdbc42f71c4e93fe0e7bfaa8f401921835cb44cb49a0'],
+    }),
+    ('dbplyr', '2.1.1', {
+        'checksums': ['aba4cf47b85ab240fd3ec4cd8d512f6e1958201e151577c1a2ebc3d6ebc5bc08'],
+    }),
+    ('modelr', '0.1.8', {
+        'checksums': ['825ba77d95d60cfb94920bec910872ca2ffe7790a44148b2992be2759cb361c4'],
+    }),
+    ('debugme', '1.1.0', {
+        'checksums': ['4dae0e2450d6689a6eab560e36f8a7c63853abbab64994028220b8fd4b793ab1'],
+    }),
+    ('reprex', '2.0.1', {
+        'checksums': ['0e6d8667cacb63135476a766fba3a4f91e5ad86274ea66d2b1e6d773b5ca6426'],
+    }),
+    ('selectr', '0.4-2', {
+        'checksums': ['5588aed05f3f5ee63c0d29953ef53da5dac7afccfdd04b7b22ef24e1e3b0c127'],
+    }),
+    ('rvest', '1.0.2', {
+        'checksums': ['89bb477e0944c80298a52ccf650db8f6377fd7ed3c1bc7034d000f695fdf05a4'],
+    }),
+    ('dtplyr', '1.1.0', {
+        'checksums': ['99681b7285d7d5086e5595ca6bbeebf7f4e2ee358a32b694cd9d35916cdfc732'],
+    }),
+    ('gargle', '1.2.0', {
+        'checksums': ['4d46ca2933f19429ca5a2cfe47b4130a75c7cd9931c7758ade55bac0c091d73b'],
+    }),
+    ('googledrive', '2.0.0', {
+        'checksums': ['605c469a6a086ef4b049909c2e20a35411c165ce7ce4f62d68fd39ffed8c5a26'],
+    }),
+    ('ids', '1.0.1', {
+        'checksums': ['b6212a186063c23116c5cbd3cca65dbb8977dd737261e4526ebee8f64852cfe8'],
+    }),
+    ('googlesheets4', '1.0.0', {
+        'checksums': ['0a107d76aac99d6db48d97ce55810c1412b2197f457b8476f676169a36c7cc7a'],
+    }),
+    ('tidyverse', '1.3.1', {
+        'checksums': ['83cf95109d4606236274f5a8ec2693855bf75d3a1b3bc1ab4426dcc275ed6632'],
+    }),
+    ('R.rsp', '0.44.0', {
+        'checksums': ['8969075bdcabd43bad40eef6b82223e119426279fded041163fd41e55cee3a59'],
+    }),
+    ('gdistance', '1.3-6', {
+        'checksums': ['2ccabeb2f8cf44630c0bd2da79815fe357b812737ebece1bed8f90b27c126a24'],
+    }),
+    ('vioplot', '0.3.7', {
+        'checksums': ['06475d9a47644245ec91598e9aaef7db1c393802d9fc314420ac5139ae56adb6'],
+    }),
+    ('emulator', '1.2-21', {
+        'checksums': ['9b50b2c1e673dbc5e846a4fa72e8bd03434add9f659bde6d7b0c4f1bbd713346'],
+    }),
+    ('gmm', '1.6-6', {
+        'checksums': ['b1b321ad1b4a4a14a2825a2c3eb939ce2f2bcef995247a1d638eca250e59739b'],
+    }),
+    ('tmvtnorm', '1.4-10', {
+        'checksums': ['1a9f35e9b4899672e9c0b263affdc322ecb52ec198b2bb015af9d022faad73f0'],
+    }),
+    ('IDPmisc', '1.1.20', {
+        'checksums': ['bcb9cd7b8097e5089d1936286ef310ac2030ea7791350df706382ba470afc67f'],
+    }),
+    ('gap', '1.2.3-1', {
+        'checksums': ['343ae58ca91e75147ae3961285c3413bdf6dedf7cb4743a822a6c5b16d1b89e7'],
+    }),
+    ('qrnn', '2.0.5', {
+        'checksums': ['3bd83ee8bd83941f9defdab1b5573d0ceca02bf06759a67665e5b9358ff92f52'],
+    }),
+    ('TMB', '1.7.22', {
+        'checksums': ['c24125e1a37ed2b3c2554133183465cb6f3c0021cd4d4609c61336f59c3bd384'],
+    }),
+    ('glmmTMB', '1.1.2.3', {
+        'checksums': ['55631e001ff3f1d8e419e3b0b5555317713c733c11a2f7d4db6434d8c4e7dcf9'],
+    }),
+    ('gmp', '0.6-2', {
+        'checksums': ['6bfcb45b3f1e7da27d8773f911027355cab371d150c3dabf7dbaf8fba85b7f0e'],
+    }),
+    ('ROI', '1.0-0', {
+        'checksums': ['b0d87fb4ed2137d982734f3c5cdc0305aabe6e80f95de29655d02a9e82a0a341'],
+    }),
+    ('Rglpk', '0.6-4', {
+        'checksums': ['a28dbc3130b9618d6ed2ef718d2c55df8ed8c44a47161097c53fe15fa3bfbfa6'],
+    }),
+    ('ROI.plugin.glpk', '1.0-0', {
+        'checksums': ['b361b0d4222d74b21432cdc6990762affecdbcec8fd6bbdb13b78b59cb04b444'],
+    }),
+    ('spaMM', '3.9.13', {
+        'checksums': ['f9ded29106c656ff15ddc2564c16d44b77f08dac1f2dea5720028923e83e2514'],
+    }),
+    ('qgam', '1.3.3', {
+        'checksums': ['9a68fe4e74f4188862f7c01d682d50ffadd96ce7b98383404472309c87e3a26f'],
+    }),
+    ('DHARMa', '0.4.4', {
+        'checksums': ['b5a073f84faf7144f2074a43f619f8f264773afb0e09ca0294735e792552edca'],
+    }),
+    ('mvnfast', '0.2.7', {
+        'checksums': ['b67d50936c9a466977669ef6bb7b23df8e7c90a820ac916328c20e41ef8e0b72'],
+    }),
+    ('bridgesampling', '1.1-2', {
+        'checksums': ['54ecd39aa2e36d4d521d3d36425f9fe56a3f8547df6048c814c5931d790f3e6b'],
+    }),
+    ('BayesianTools', '0.1.7', {
+        'checksums': ['af49389bdeb794da3c39e1d63f59e6219438ecb8613c5ef523b00c6fed5a600c'],
+    }),
+    ('gomms', '1.0', {
+        'checksums': ['52828c6fe9b78d66bde5474e45ff153efdb153f2bd9f0e52a20a668e842f2dc5'],
+    }),
+    ('feather', '0.3.5', {
+        'checksums': ['50ff06d5e24d38b5d5d62f84582861bd353b82363e37623f95529b520504adbf'],
+    }),
+    ('dummies', '1.5.6', {
+        'checksums': ['7551bc2df0830b98c53582cac32145d5ce21f5a61d97e2bb69fd848e3323c805'],
+    }),
+    ('SimSeq', '1.4.0', {
+        'checksums': ['5ab9d4fe2cb1b7634432ff125a9e04d2f574fed06246a93859f8004e10790f19'],
+    }),
+    ('uniqueAtomMat', '0.1-3-2', {
+        'checksums': ['f7024e73274e1e76a870ce5e26bd58f76e8f6df0aa9775c631b861d83f4f53d7'],
+    }),
+    ('PoissonSeq', '1.1.2', {
+        'checksums': ['6f3dc30ad22e33e4fcfa37b3427c093d591c02f1b89a014d85e63203f6031dc2'],
+    }),
+    ('aod', '1.3.1', {
+        'checksums': ['052d8802500fcfdb3b37a8e3e6f3fbd5c3a54e48c3f68122402d2ea3a15403bc'],
+    }),
+    ('cghFLasso', '0.2-1', {
+        'checksums': ['6e697959b35a3ceb2baa1542ef81f0335006a5a9c937f0173c6483979cb4302c'],
+    }),
+    ('svd', '0.5', {
+        'checksums': ['d042d448671355d0664d37fd64dc90932eb780e6494c479d4431d1faae2071a1'],
+    }),
+    ('Rssa', '1.0.4', {
+        'checksums': ['4115b516f6782d52f02695bbbd52921a474aafc7232d49aca85010f1c33b08a7'],
+    }),
+    ('JBTools', '0.7.2.9', {
+        'checksums': ['b33cfa17339df7113176ad1832cbb0533acf5d25c36b95e888f561d586c5d62f'],
+    }),
+    ('RUnit', '0.4.32', {
+        'checksums': ['23a393059989000734898685d0d5509ece219879713eb09083f7707f167f81f1'],
+    }),
+    ('DistributionUtils', '0.6-0', {
+        'checksums': ['7443d6cd154760d55b6954142908eae30385672c4f3f838dd49876ec2f297823'],
+    }),
+    ('gapfill', '0.9.6-1', {
+        'checksums': ['22f04755873e34a9077bb1b1de8d16f5bc56cb8c395c4f797f9ad0b209b1b996'],
+    }),
+    ('gee', '4.13-20', {
+        'checksums': ['53014cee059bd87dc22f9679dfbf18fe6813b9ab41dfe90361921159edfbf798'],
+    }),
+    ('Matching', '4.9-11', {
+        'checksums': ['1c71ca8462b3168839bf446ee8e5b4baa6288a72f8c8590c9d7565c91fba7688'],
+    }),
+    ('MatchIt', '4.3.0', {
+        'checksums': ['ca897ab81a7c19ebd4cbc67011c6223668ad5a8876b10f665a86f5f79ed85446'],
+    }),
+    ('RItools', '0.1-17', {
+        'checksums': ['75654780e9ca39cb3c43acfaca74080ad74de50f92c5e36e95694aafdfdc0cea'],
+    }),
+    ('mitools', '2.4', {
+        'checksums': ['f204f3774e29d79810f579f128de892539518f2cbe6ed237e08c8e7283155d30'],
+    }),
+    ('survey', '4.1-1', {
+        'checksums': ['05e89a1678a39e32bfb41af8a31d643b04fc4d2660a96e701825e6bffcd75a52'],
+    }),
+    ('optmatch', '0.9-15', {
+        'checksums': [('7500fdbed939b7f16603a097d734a332793a3ac68e6a80c7957bef2a567691d8',
+                       'f37254b3af586ffa259f09914e27cba576b6f4ef023b794195014d29f715895b')],
+    }),
+    ('SPAtest', '3.1.2', {
+        'checksums': ['b3d74ed2b0a6475a9966dd50eb5d363d0b2985636271dfbf82f0472b8d22b9f4'],
+    }),
+    ('SKAT', '2.0.1', {
+        'checksums': ['c8637cf5786b926f6bbef3f4ef1d3af5130cc0cfd9094d4835839724b2d0e8c7'],
+    }),
+    ('GillespieSSA', '0.6.1', {
+        'checksums': ['272e9b6b26001d166fd7ce8d04f32831ba23c676075fbd1e922e27ba2c962052'],
+    }),
+    ('startupmsg', '0.9.6', {
+        'checksums': ['1d60ff13bb260630f797bde66a377a5d4cd65d78ae81a3936dc4374572ec786e'],
+    }),
+    ('distr', '2.8.0', {
+        'checksums': ['bb7df05d6b946bcdbbec2e3397c7c7e349b537cabfcbb13a34bcf6312a71ceb7'],
+    }),
+    ('distrEx', '2.8.0', {
+        'checksums': ['b064cde7d63ce93ec9969c8c4463c1e327758b6f8ea7765217d77f9ba9d590bf'],
+    }),
+    ('minerva', '1.5.10', {
+        'checksums': ['2f26353d8fcc989ac698c4e45bb683801b1a7bb60b14903d05a4d73c629c590f'],
+    }),
+    ('KODAMA', '1.8', {
+        'checksums': ['1ed9c14826c3c549c7323672cee04a71048c505c130e739ef5a95ed9bfe43444'],
+    }),
+    ('locfdr', '1.1-8', {
+        'checksums': ['42d6e12593ae6d541e6813a140b92591dabeb1df94432a515507fc2eee9a54b9'],
+    }),
+    ('ica', '1.0-2', {
+        'checksums': ['e721596fc6175d3270a60d5e0b5b98be103a8fd0dd93ef16680af21fe0b54179'],
+    }),
+    ('dtw', '1.22-3', {
+        'checksums': ['df7cf9adf613422ddb22a160597eb5f5475ab6c67c0d790092edb7f72ba98f00'],
+    }),
+    ('SDMTools', '1.1-221.2', {
+        'checksums': ['f0dd8c5f98d2f2c012536fa56d8f7a58aaf0c11cbe3527e66d4ee3194f6a6cf7'],
+    }),
+    ('ggridges', '0.5.3', {
+        'checksums': ['f5eafab17f2d4a8a2a83821ad3e96ae7c26b62bbce9de414484c657383c7b42e'],
+    }),
+    ('TFisher', '0.2.0', {
+        'checksums': ['bd9b7484d6fba0165841596275b446f85ba446d40e92f3b9cb37381a3827e76f'],
+    }),
+    ('lsei', '1.3-0', {
+        'checksums': ['6289058f652989ca8a5ad6fa324ce1762cc9e36c42559c00929b70f762066ab6'],
+    }),
+    ('npsurv', '0.5-0', {
+        'checksums': ['bc87db76e7017e178c2832a684fcd49c42e20054644b21b586413d26c8821dc6'],
+    }),
+    ('fitdistrplus', '1.1-6', {
+        'checksums': ['17c2990041a3bb7479f3c3a6d13d96c989db8eaddab17eff7e1fbe172a5b96be'],
+    }),
+    ('here', '1.0.1', {
+        'checksums': ['08ed908033420d3d665c87248b3a14d1b6e2b37844bf736be620578c20ca346b'],
+    }),
+    ('reticulate', '1.22', {
+        'checksums': ['b06e7b39abf08ae9604ea26d02e3c6e4ef6dcc4b6c7c98118fd85192f615f56c'],
+    }),
+    ('hdf5r', '1.3.4', {
+        'installopts': '--configure-args="--with-hdf5=$EBROOTHDF5/bin/h5pcc"',
+        'preinstallopts': "unset LIBS && ",
+        'checksums': ['64d057601841b604e04e8514d33a1e5e515dcbfd9cc8369d40d717d7036fab53'],
+    }),
+    ('DTRreg', '1.7', {
+        'checksums': ['f0fad2244d960cec8fc33d9a1078df359ceb0aadff980ce6149aa9f01c62223b'],
+    }),
+    ('pulsar', '0.3.7', {
+        'checksums': ['78c9f7e3b2bf8a8d16a81d6ee43bb05b0c360219be473d920c8c8ccb2aba4e3d'],
+    }),
+    ('bayesm', '3.1-4', {
+        'checksums': ['061b216c62bc72eab8d646ad4075f2f78823f9913344a781fa53ea7cf4a48f94'],
+    }),
+    ('gsl', '2.1-7', {
+        'checksums': ['1a86af59d9864ecf2a85d5371076786e7a0491d6d6b4d5c1a7590ea8919f3b17'],
+    }),
+    ('energy', '1.7-8', {
+        'checksums': ['de08e8de037bb30068bbf0c1880b153a586d342304681f4ba103ab808c7f4789'],
+    }),
+    ('compositions', '2.0-2', {
+        'checksums': ['b5e47a14a1bb010b47b4ad7fbfabfead1a08b009b92e1f7d4bd3bd7f8589f216'],
+    }),
+    ('clustree', '0.4.3', {
+        'checksums': ['5ff3afc3fb3e1d20d033328935084de574250d29545c0a5b69180fe4846fbe53'],
+    }),
+    ('plotly', '4.10.0', {
+        'checksums': ['bd995c654dbc8c09a84adaba8def99766919e3894caf18b551bb26b2f591389a'],
+    }),
+    ('tweedie', '2.3.3', {
+        'checksums': ['a032cad512dac37a8619e6f66cb513eb82a88a5a2ffbe91e92c2d44d1756d0d9'],
+    }),
+    ('RcppGSL', '0.3.10', {
+        'checksums': ['8612087da02fb791f427fed310c23d0482a8eb60fb089119f018878143f95451'],
+    }),
+    ('mvabund', '4.1.12', {
+        'checksums': ['c1af39dbfd048c9bb367765ee266be49622e1a5d964186920a2d47bec4e6f780'],
+    }),
+    ('fishMod', '0.29', {
+        'checksums': ['5989e49ca6d6b2c5d514655e61f75b019528a8c975f0d6056143f17dc4277a5d'],
+    }),
+    ('gllvm', '1.3.1', {
+        'checksums': ['cd3f72b84f0c722e9c0b21c2b2de7683ec742345d7f8e62f67c8c93342c1a5c6'],
+    }),
+    ('grpreg', '3.4.0', {
+        'checksums': ['fd57d20baf63d2cc5821998bca5c3fdcbe46c933c9553caa492911b12654d6ad'],
+    }),
+    ('trust', '0.1-8', {
+        'checksums': ['952e348b62aec35988b103fd152329662cb6a451538f184549252fbf49d7dcac'],
+    }),
+    ('lpSolveAPI', '5.5.2.0-17.7', {
+        'checksums': ['9ebc8e45ad73eb51e0b25049598a5bc758370cf89508e2328cf4bd93d68d55bb'],
+    }),
+    ('ergm', '4.1.2', {
+        'checksums': ['1abc6ef53376a4132530c376ce477ae7a2590e95fe8feb011c0da9cfb4d49ba0'],
+    }),
+    ('networkDynamic', '0.11.0', {
+        'checksums': ['aa21caaddce75c22e08b94adfb6036f5ee151ffb79d174ad250fe4592d27dad2'],
+    }),
+    ('tergm', '4.0.2', {
+        'checksums': ['5ab1d61166c90f90c77edd12544b5946e01a933cc3e7ca609cae72075b742a64'],
+    }),
+    ('ergm.count', '4.0.2', {
+        'checksums': ['316ed3cbe4b472eec79e8a5fd4183ce953070f6d98056d87423bd6d9ac155bd1'],
+    }),
+    ('tsna', '0.3.4', {
+        'checksums': ['08fd9612388b86077cd877a48f81068d63f20291836eedbc727c9e00c1a2b4d2'],
+    }),
+    ('statnet', '2019.6', {
+        'checksums': ['0903e1a81ed1b6289359cefd12da1424c92456d19e062c3f74197b69e536b29d'],
+    }),
+    ('aggregation', '1.0.1', {
+        'checksums': ['86f88a02479ddc8506bafb154117ebc3b1a4a44fa308e0193c8c315109302f49'],
+    }),
+    ('ComICS', '1.0.4', {
+        'checksums': ['0af7901215876f95f309d7da6e633c38e4d7faf04112dd6fd343bc15fc593a2f'],
+    }),
+    ('dtangle', '2.0.9', {
+        'checksums': ['c375068c1877c2e8cdc5601cfd5a9c821645c3dff90ddef64817f788f372e179'],
+    }),
+    ('mcmc', '0.9-7', {
+        'checksums': ['b7c4d3d5f9364c67a4a3cd49296a61c315ad9bd49324a22deccbacb314aa8260'],
+    }),
+    ('MCMCpack', '1.6-0', {
+        'checksums': ['b5b9493457d11d4dca12f7732bd1b3eb1443852977c8ee78393126f13deaf29b'],
+    }),
+    ('shinythemes', '1.2.0', {
+        'checksums': ['37d68569ce838c7da9f0ea7e2b162ecf38fba2ae448a4888b6dd29c4bb5b2963'],
+    }),
+    ('csSAM', '1.2.4', {
+        'checksums': ['3d6442ad8c41fa84633cbbc275cd67e88490a160927a5c55d29da55a36e148d7'],
+    }),
+    ('bridgedist', '0.1.0', {
+        'checksums': ['dc7c1c8874d6cfa34d550d9af194389e13471dfbc55049a1ab66db112fbf1343'],
+    }),
+    ('asnipe', '1.1.16', {
+        'checksums': ['be50f9fdef0f4bf9676b9c3c2906d0431afc678af55cf48b1119f9fc0adac44f'],
+    }),
+    ('liquidSVM', '1.2.4', {
+        'patches': ['liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch'],
+        # Don't add optimization flags by liquidSVM which may not be known e.g. on PPC
+        'preinstallopts': 'LIQUIDSVM_TARGET="empty"',
+        'checksums': [
+            '15a9c7f2930e2ed3f4c5bcd9b042884ea580d2b2e52e1c68041600c196046aba',  # liquidSVM_1.2.4.tar.gz
+            # liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch
+            '46b09e441c3b59af535f20d8db0dee7f1d6a7ddd511175d252115b53cb8b86f8',
+        ],
+    }),
+    ('oddsratio', '2.0.1', {
+        'checksums': ['2097e7a8bf623379d55652de5dce4946d05163e85d30df50dc19055962bf60b5'],
+    }),
+    ('mltools', '0.3.5', {
+        'checksums': ['7093ffceccdf5d4c3f045d8c8143deaa8ab79935cc6d5463973ffc7d3812bb10'],
+    }),
+    ('h2o', '3.34.0.3', {
+        'checksums': ['2a707b9f7271eae611c9e81b13d2024b8829f6b06b3c41c5b97de1aef591931e'],
+    }),
+    ('mlegp', '3.1.8', {
+        'checksums': ['eac1df085a608451828575028ca05b78dc6b5035da14cabc141bfee5ef986de9'],
+    }),
+    ('itertools', '0.1-3', {
+        'checksums': ['b69b0781318e175532ad2d4f2840553bade9637e04de215b581704b5635c45d3'],
+    }),
+    ('missForest', '1.4', {
+        'checksums': ['f785804b03bdf424e1c76095989a803afb3b47d6bebca9a6832074b6326c0278'],
+    }),
+    ('bartMachineJARs', '1.1', {
+        'checksums': ['f2c31cb94d7485174a2519771127a102e35b9fe7f665e27beda3e76a56feeef2'],
+    }),
+    ('bartMachine', '1.2.6', {
+        'checksums': ['5e1ac0033da5b41a96d95782886a167e51ff8e43822800e8d40874ff9c13847f'],
+    }),
+    ('lqa', '1.0-3', {
+        'checksums': ['3889675dc4c8cbafeefe118f4f20c3bd3789d4875bb725933571f9991a133990'],
+    }),
+    ('PresenceAbsence', '1.1.9', {
+        'checksums': ['1a30b0a4317ea227d674ac873ab94f87f8326490304e5b08ad58953cdf23169f'],
+    }),
+    ('GUTS', '1.1.1', {
+        'checksums': ['094b8f51719cc36ddc56e3412dbb146eafc93c5e8fbb2c5999c2e80ea7a7d216'],
+    }),
+    ('GenSA', '1.1.7', {
+        'checksums': ['9d99d3d0a4b7770c3c3a6de44206811272d78ab94481713a8c369f7d6ae7b80f'],
+    }),
+    ('parsedate', '1.2.1', {
+        'checksums': ['6b078da4a47904194bfe29e2c3b6fbbf6e3ad190e33979f840a3ea366c708616'],
+    }),
+    ('circular', '0.4-93', {
+        'checksums': ['76cee2393757390ad91d3db3e5aeb2c2d34c0a46822b7941498571a473417142'],
+    }),
+    ('cobs', '1.3-4', {
+        'checksums': ['a1c7b77e4ca097349884fd1c0d863d74f9092766131094d603f34d33ab2e3c42'],
+    }),
+    ('resample', '0.4', {
+        'checksums': ['f0d5f735e1b812612720845d79167a19f713a438fd10a6a3206e667045fd93e5'],
+    }),
+    ('MIIVsem', '0.5.8', {
+        'checksums': ['a908f51e1598290d25864c358d57201bd50c1c40775d4d0405cbc8077bee61e1'],
+    }),
+    ('medflex', '0.6-7', {
+        'checksums': ['d28107a4bbbb0ace1d571f0aa6884ee4c50d7731c04bceba207fd55a39b83b9c'],
+    }),
+    ('Rserve', '1.7-3.1', {
+        'checksums': ['3ba1e919706e16a8632def5f45d666b6e44eafa6c14b57064d6ddf3415038f99'],
+    }),
+    ('spls', '2.2-3', {
+        'checksums': ['bbd693da80487eef2939c37aba199f6d811ec289828c763d9416a05fa202ab2e'],
+    }),
+    ('Boruta', '7.0.0', {
+        'checksums': ['6ff520d27d68637058c33a34c547a656bb44d5e351b7cc7afed6cd4216275c78'],
+    }),
+    ('dr', '3.0.10', {
+        'checksums': ['ce523c1bdb62a9dda30afc12b1dd96975cc34695c61913012236f3b80e24bf36'],
+    }),
+    ('CovSel', '1.2.1', {
+        'checksums': ['b375d00cc567e125ff106b4357654f43bba3abcadeed2238b6dea4b7a68fda09'],
+    }),
+    ('tmle', '1.5.0.2', {
+        'checksums': ['4772c352e8d3d9b5a0b7480c0e0962de4f5060fb7bf3fcb8ee4fa1cb10f93fd4'],
+    }),
+    ('ctmle', '0.1.2', {
+        'checksums': ['e3fa0722cd87aa0e0b209c2dddf3fc44c6d09993f1e66a6c43285fe950948161'],
+    }),
+    ('BayesPen', '1.0', {
+        'checksums': ['772df9ae12cd8a3da1d5b7d1f1629602c7693f0eb03945784df2809e2bb061b0'],
+    }),
+    ('inline', '0.3.19', {
+        'checksums': ['0ee9309bb7dab0b97761ddd18381aa12bd7d54678ccd7bec00784e831f4c99d5'],
+    }),
+    ('BMA', '3.18.15', {
+        'checksums': ['4be0d52f433503631e9574944067f613bafba129ebe27396bcfccb3b95992b1a'],
+    }),
+    ('BCEE', '1.3.0', {
+        'checksums': ['82afc9b8c6d617f5f728341960ae32922194f637c550916b3bea12c231414fa7'],
+    }),
+    ('bacr', '1.0.1', {
+        'checksums': ['c847272e2c03fd08ed79b3b739f57fe881af77404b6fd087caa0c398c90ef993'],
+    }),
+    ('clue', '0.3-60', {
+        'checksums': ['6d21ddfd0d621ed3bac861890c600884b6ed5ff7d2a36c9778b892636dbbef2a'],
+    }),
+    ('bdsmatrix', '1.3-4', {
+        'checksums': ['251e21f433a016ec85e478811ea3ad34c572eb26137447f48d1bbf3cc8bb06ea'],
+    }),
+    ('fftwtools', '0.9-11', {
+        'checksums': ['f1f0c9a9086c7b2f72c5fb0334717cc917213a004eaef8448eab4940c9852c7f'],
+    }),
+    ('imagerExtra', '1.3.2', {
+        'checksums': ['0ebfa1eabb89459d774630ab73c7a97a93b9481ea5afc55482975475acebd5b8'],
+    }),
+    ('MALDIquant', '1.20', {
+        'checksums': ['fff39d5df295b937cdad57b73d4e06e925f69e68784ef58b5dfcd3cf500931c1'],
+    }),
+    ('threejs', '0.3.3', {
+        'checksums': ['76c759c8b20fb34f4f7a01cbd1b961296e1f19f4df6dded69aae7f1bca80219c'],
+    }),
+    ('LaplacesDemon', '16.1.6', {
+        'checksums': ['57b53882fd7a195b38bbdbbf0b17745405eb3159b1b42f7f11ce80c78ab94eb7'],
+    }),
+    ('rda', '1.0.2-2.1', {
+        'checksums': [('6918b62f51252b57f2c05b99debef6136b370f594dc3ae6466268e4c35578ef8',
+                       'eea3a51a2e132a023146bfbc0c384f5373eb3ea2b61743d7658be86a5b04949e')],
+    }),
+    ('sampling', '2.9', {
+        'checksums': ['7f5ba5978f6cdbbbdb6f51958197b28b6fc63e7eeee59e6845ea09fb37d1b187'],
+    }),
+    ('lda', '1.4.2', {
+        'checksums': ['5606a1e1bc24706988853528023f7a004c725791ae1a7309f1aea2fc6681240f'],
+    }),
+    ('jiebaRD', '0.1', {
+        'checksums': ['045ee670f5378fe325a45b40fd55136b355cbb225e088cb229f512c51abb4df1'],
+    }),
+    ('jiebaR', '0.11', {
+        'checksums': ['adde8b0b21c01ec344735d49cd33929511086719c99f8e10dce4ca9479276623'],
+    }),
+    ('hdm', '0.3.1', {
+        'checksums': ['ba087565e9e0a8ea30a6095919141895fd76b7f3c05a03e60e9e24e602732bce'],
+    }),
+    ('abe', '3.0.1', {
+        'checksums': ['66d2e9ac78ba64b7d27b22b647fc00378ea832f868e51c18df50d6fffb8029b8'],
+    }),
+    ('SignifReg', '4.2', {
+        'checksums': ['53d2ff3ddbb398655b245ad3a19c028d6fb6bb1d59adeb30bb3497606733fc2d'],
+    }),
+    ('bbmle', '1.0.24', {
+        'checksums': ['01edc00479fabf7491e47ff59bc4adbe6f0d4c23d22e76d1d49c4c1b6b4693ad'],
+    }),
+    ('emdbook', '1.3.12', {
+        'checksums': ['0646caf9e15aaa61ff917a4b5fdf82c06ac17ef221a61dec3fbb554e7bff4353'],
+    }),
+    ('SOAR', '0.99-11', {
+        'checksums': ['d5a0fba3664087308ce5295a1d57d10bad149eb9771b4fe67478deae4b7f68d8'],
+    }),
+    ('rasterVis', '0.51.0', {
+        'checksums': ['5225334add4dd3502044cf80a00543b766568c2d93c47af180f66a76942d76be'],
+    }),
+    ('tictoc', '1.0.1', {
+        'checksums': ['a09a1535c417ddf6637bbbda5fca6edab6c7f7b252a64e57e99d4d0748712705'],
+    }),
+    ('ISOcodes', '2021.02.24', {
+        'checksums': ['152769bcb4ae99d06a767384541c2000c94990a2c6983780837f85e885b539a6'],
+    }),
+    ('stopwords', '2.3', {
+        'checksums': ['c5ec1c6ab1bad1786d87d7823d4b63abc94d2fd84ed7d8e985906e96fb6321b2'],
+    }),
+    ('janeaustenr', '0.1.5', {
+        'checksums': ['992f6673653daf7010fe176993a01cd4127d9a88be428da8da7a28241826d6f3'],
+    }),
+    ('SnowballC', '0.7.0', {
+        'checksums': ['b10fee9d322f567a22c580b49b5d4ba1c86eae40a71794ca92552c726b3895f3'],
+    }),
+    ('tokenizers', '0.2.1', {
+        'checksums': ['28617cdc5ddef5276abfe14a2642999833322b6c34697de1d4e9d6dc7670dd00'],
+    }),
+    ('hunspell', '3.0.1', {
+        'checksums': ['1fedbb913bc13c790d2fabfe4edda0a987db3a078bea8c0ca9b777d20af08662'],
+    }),
+    ('topicmodels', '0.2-12', {
+        'checksums': ['afd83a4381bf39e470446ebefd41ed03f314be400c1b2f702a4b1060eb8fd1b4'],
+    }),
+    ('tidytext', '0.3.2', {
+        'checksums': ['6fe0ada78ee2cdf77c16e519a29b9baff61d8e23ab56aa0a9adc1b2a99a6472b'],
+    }),
+    ('splitstackshape', '1.4.8', {
+        'checksums': ['656032c3f1e3dd5b8a3ee19ffcae617e07104c0e342fc3da4d863637a770fe56'],
+    }),
+    ('grImport2', '0.2-0', {
+        'checksums': ['a102a2d877e42cd4e4e346e5510a77b2f3e57b43ae3c6d5c272fdceb506b00a7'],
+    }),
+    ('preseqR', '4.0.0', {
+        'checksums': ['0143db473fb9a811f9cf582a348226a5763e62d9857ce3ef4ec41412abb559bc'],
+    }),
+    ('idr', '1.2', {
+        'checksums': ['8bbfdf82c8c2b5c73eb079127e198b6cb65c437bb36729f502c7bcd6037fdb16'],
+    }),
+    ('entropy', '1.3.1', {
+        'checksums': ['6f5a89f5ce0e90cbed1695b81259326c976e7a8f538157e223ee5f63b54412b8'],
+    }),
+    ('kedd', '1.0.3', {
+        'checksums': ['38760abd8c8e8f69ad85ca7992803060acc44ce68358de1763bd2415fdf83c9f'],
+    }),
+    ('HiddenMarkov', '1.8-13', {
+        'checksums': ['7186d23e561818f3e1f01376a4fb2af9ccee775ce5afc1e3175f3b07a81db515'],
+    }),
+    ('lmerTest', '3.1-3', {
+        'checksums': ['35aa75e9f5f2871398ff56a482b013e6828135ef04916ced7d1d7e35257ea8fd'],
+    }),
+    ('loo', '2.4.1', {
+        'checksums': ['bc21fb6b4a93a7e95ee1be57e4e787d731895fb8b4743c26b30b43adee475b50'],
+    }),
+    ('RcppParallel', '5.1.4', {
+        'checksums': ['76b545a6878c55edba780183fd89a76fe723b7f19709c5243495dcf3d54eea82'],
+    }),
+    ('StanHeaders', '2.21.0-7', {
+        'checksums': ['27546e064f0e907e031d9185ad55245d118d82fbe3074ecb1d76fae8b9f2336b'],
+    }),
+    ('V8', '3.4.2', {
+        'installopts': '--configure-vars="INCLUDE_DIR=$CPATH LIB_DIR=$LIBRARY_PATH"',
+        'preinstallopts': "export CPATH=$EBROOTNODEJS/include/node:$CPATH && ",
+        'checksums': ['210643473ca8bf423fae34ce72ceb37a3e44c3315ec4abae59a77f077542d2ed'],
+    }),
+    ('rstan', '2.21.2', {
+        'checksums': ['e30e04d38a612e2cb3ac69b53eaa19f7ede8b3548bf82f7892a2e9991d46054a'],
+    }),
+    ('Rborist', '0.2-3', {
+        'checksums': ['f3b3f953ca99e0d17425ac6ba9a7b1e9d6098343abace575cdb492bca2a9c461'],
+    }),
+    ('VSURF', '1.1.0', {
+        'checksums': ['eee99e0c441795c2ccb21cc6e0a37b24f580241e494c83e811b726b43469eeab'],
+    }),
+    ('mRMRe', '2.1.2', {
+        'checksums': ['a59a3cb3cca89f51d9ee6702cd479fd7db8bc2e25b72f45cb6712da983777ca0'],
+    }),
+    ('dHSIC', '2.1', {
+        'checksums': ['94c86473790cf69f11c68ed8ba9d6ae98218c7c69b7a9a093f235d175cf83db0'],
+    }),
+    ('ggsci', '2.9', {
+        'checksums': ['4af14e6f3657134c115d5ac5e65a2ed74596f9a8437c03255447cd959fe9e33c'],
+    }),
+    ('ggsignif', '0.6.3', {
+        'checksums': ['ca8545b25590e531512a90a18449a2cbab945f7434a1d60188c41f7d1839a7a9'],
+    }),
+    ('corrplot', '0.90', {
+        'checksums': ['d9871f219351f443f879ae93c45e3a364eb32cc6f41491a801e7b8a91e96d5dd'],
+    }),
+    ('rstatix', '0.7.0', {
+        'checksums': ['a5ae17dc32cc26fc5dcab9ff0a9747ce3786c9fe091699247ad8b9f823f2600c'],
+    }),
+    ('ggfan', '0.1.3', {
+        'checksums': ['5c888b203ecf5e3dc7a317a790ca059c733002fbca4b4bc1a4f62b7ded5f70dc'],
+    }),
+    ('ggpubr', '0.4.0', {
+        'checksums': ['abb21ec0b1ae3fa1c58eedca2d59b9b009621b30e3660f1247b3880c5fa50675'],
+    }),
+    ('yaImpute', '1.0-32', {
+        'checksums': ['08eee5d851b80aad9c7c80f9531aadd50d60e4b16b3a80657a50212269cd73ff'],
+    }),
+    ('intrinsicDimension', '1.2.0', {
+        'checksums': ['6cc9180a83aa0d123f1e420136bb959c0d5877867fa170b79536f5ee22106a32'],
+    }),
+    ('patchwork', '1.1.1', {
+        'checksums': ['cf0d7d9f92945729b499d6e343441c55007d5b371206d5389b9e5154dc7cf481'],
+    }),
+    ('leiden', '0.3.9', {
+        'checksums': ['81754276e026a9a8436476365bbadf0f15a403a525a349cb56418da5d8edea0d'],
+    }),
+    ('sctransform', '0.3.2', {
+        'checksums': ['5dbb0a045e514c19f51bbe11c2dba0b72dca1942d6eb044c36b0538b443475dc'],
+    }),
+    ('packrat', '0.7.0', {
+        'checksums': ['e8bce1fd78f28f3a7bf56e65a2ae2c6802e69bf55466c24e1d1a4b8a5f83dcc2'],
+    }),
+    ('colourpicker', '1.1.1', {
+        'checksums': ['a0d09982b048b143e2c3438ccec039dd20d6f892fa0dedc9fdcb0d40de883ce0'],
+    }),
+    ('ggExtra', '0.9', {
+        'checksums': ['f22db92d6e3e610901998348acbcaa6652fa6c62a285a622d3b962ba9e89aba2'],
+    }),
+    ('findpython', '1.0.7', {
+        'checksums': ['59f904b9c2ec84b589380de59d13afbf14d1ec3b670e3a07e820298aaf04c149'],
+    }),
+    ('argparse', '2.1.2', {
+        'checksums': ['9997359a735359580ab6b054672388a55701fca71c80b54bab1aedc13bc5e5b3'],
+    }),
+    ('intergraph', '2.0-2', {
+        'checksums': ['6cbe77f1e87fa1c110db2d46010f2f3ae72bfdb708ce2ca84c1cdc2cd6eb47a1'],
+    }),
+    ('ggnetwork', '0.5.10', {
+        'checksums': ['1b655dbab8eed8d0aa3ab2148aac8e0e5bfa190468f5e3c06b001ce88b7f0d3f'],
+    }),
+    ('qqman', '0.1.8', {
+        'checksums': ['58da8317df8d726d1fde4805919da5d64f880894a423ee20937cafb479b9d8a8'],
+    }),
+    ('rstantools', '2.1.1', {
+        'checksums': ['c95b15de8ec577eeb24bb5206e7b685d882f88b5e6902efda924b7217f463d2d'],
+    }),
+    ('bayesplot', '1.8.1', {
+        'checksums': ['d8d74201ea91fa5438714686ca22a947ec9375b6c12b0cfef010c57104b1aa2a'],
+    }),
+    ('dygraphs', '1.1.1.6', {
+        'checksums': ['c3d331f30012e721a048e04639f60ea738cd7e54e4f930ac9849b95f0f005208'],
+    }),
+    ('rsconnect', '0.8.24', {
+        'checksums': ['cf6bef1e073d6fa95c8be8a00e9e4982b88f4bab0e8ecd77db816a585be2e4a6'],
+    }),
+    ('shinystan', '2.5.0', {
+        'checksums': ['45f9c552a31035c5de8658bb9e5d72da7ec1f88fbddb520d15fe701c677154a1'],
+    }),
+    ('optimx', '2021-10.12', {
+        'checksums': ['39384c856b5efa3992cd230548b60eff936d428111ad6ad5b8fb98a3bcbb7943'],
+    }),
+    ('gamm4', '0.2-6', {
+        'checksums': ['57c5b66582b2adc32f6a3bb6a259f5b95198e283a96d966a6007e8e48b380c89'],
+    }),
+    ('projpred', '2.0.2', {
+        'checksums': ['af0a9fb53f706090fe81b6381b27b0b6bd3f7ae1e1e44b0ada6f40972b09a55b'],
+    }),
+    ('distributional', '0.2.2', {
+        'checksums': ['028e5a91aabe3a676eb7b7f3dc907f7f34735a123fe0d9adcabc03476504435f'],
+    }),
+    ('posterior', '1.1.0', {
+        'checksums': ['eff6262dbcc1bf18337f535b0c75ba2fe360322e8b170c466e24ed3ee76cf4d2'],
+    }),
+    ('brms', '2.16.1', {
+        'checksums': ['749efbd9fb061fe207cf2e729c1387d9a8538b922f12ceec4e82a9f8dd9c1bc4'],
+    }),
+    ('drgee', '1.1.10', {
+        'checksums': ['e684f07f7dfec922380d4202922c11094f859721f77b31ff38b0d35d0f42c743'],
+    }),
+    ('stdReg', '3.4.1', {
+        'checksums': ['285335dbe29b6898641e1151ab2f06acf76c6f4d6fbeadd66d151c25d7e38a74'],
+    }),
+    ('mcmcse', '1.5-0', {
+        'checksums': ['4a820dc22c48efd32b7f9d1e1b897b4b3f165cd64b2ff85ba7029621cf9e7463'],
+    }),
+    ('copCAR', '2.0-4', {
+        'checksums': ['8b4ed53c58a665f70e48bdca689a992a81d5ecb5a6051ca7361d3870e13c77f3'],
+    }),
+    ('batchmeans', '1.0-4', {
+        'checksums': ['8694573009d9070a76007281407d3314da78902e122a9d8aec1f819d3bbe562c'],
+    }),
+    ('ngspatial', '1.2-2', {
+        'checksums': ['3fa79e45d3a502a58c1454593ec83dfc73144e92b34c14f617a6126557dd0d26'],
+    }),
+    ('BIGL', '1.6.5', {
+        'checksums': ['5be825734d76760723e2d5b8fbe03524a2b59d9163b33841d4a2c9ab2d4257cf'],
+    }),
+    ('drugCombo', '1.2.1', {
+        'checksums': ['9a605c655c159604033558d757711e6d83d33dfc286c1280f722d4cb7d130f80'],
+    }),
+    ('betareg', '3.1-4', {
+        'checksums': ['5106986096a68b2b516215968158589b71969ce7912879253d6e930355a18101'],
+    }),
+    ('unmarked', '1.1.1', {
+        'checksums': ['48474f396c4a91e257490025ede6a998883683e8020a898fff5d4e23a3764bfd'],
+    }),
+    ('maxlike', '0.1-8', {
+        'checksums': ['90aaab9602f259cbfae61fe96e105cc4a0c2a385b42380f85c14f5d544107251'],
+    }),
+    ('coxme', '2.2-16', {
+        'checksums': ['a0ce4b5649c4c1abbfe2c2bf23089744d1f66eb8368dea16e74e090f366a5111'],
+    }),
+    ('AICcmodavg', '2.3-1', {
+        'checksums': ['d0517da15a38e9b1df20fa73f5342b586624e65792d266e7dff278ad7fc458b0'],
+    }),
+    ('pacman', '0.5.1', {
+        'checksums': ['9ec9a72a15eda5b8f727adc877a07c4b36f8372fe7ed80a1bc6c2068dab3ef7c'],
+    }),
+    ('spaa', '0.2.2', {
+        'checksums': ['a5a54454d4a7af473ce797875f849bd893005cb04325bf3e0dbddb19fe8d7198'],
+    }),
+    ('maxnet', '0.1.4', {
+        'checksums': ['fd21e5ecf3c1ac00ef1bbe79fab4cdd62789e0c4c45f126f1b64bda667238216'],
+    }),
+    ('oai', '0.3.2', {
+        'checksums': ['ebfa756e08f6ac0aa61556b1a5bbe611f407bfff8aef1f8d075a24c361678bfd'],
+    }),
+    ('wellknown', '0.7.4', {
+        'checksums': ['483e6fc43edf09ed583e74ce5ca7e2d7838ef8a32291e06d774c37546eed1a34'],
+    }),
+    ('rgbif', '3.6.0', {
+        'checksums': ['2941857c85d89ebaf614ed130ec2f68e326a8ca99e00263ac4e2a9c556917f20'],
+    }),
+    ('rgdal', '1.5-27', {
+        'checksums': ['62a555ed7b5424dd0252b3764e3542fb30c524d06e8245215bcfaedd84ee5756'],
+    }),
+    ('rgeos', '0.5-8', {
+        'checksums': ['0db35392146cefb5eea0392eecb6b0bfee53708222b98b06de54a3e1a04ea314'],
+    }),
+    ('mapproj', '1.2.7', {
+        'checksums': ['f0081281b08bf3cc7052c4f1360d6d3c20d9063be57754448ad9b48ab0d34c5b'],
+    }),
+    ('rbison', '1.0.0', {
+        'checksums': ['9957e5f85ce68f5dd0ddc3c4b2b3c9d2f52d6f37587e1022ab8a44863534a83c'],
+    }),
+    ('rebird', '1.3.0', {
+        'checksums': ['b238d3f246aa0249145894e1f3a90f46902f6615fc2f23b24c99bb5feecc55d3'],
+    }),
+    ('rvertnet', '0.8.2', {
+        'checksums': ['2de9a3ec33a213c7592b49cca1d510a25aef0625369376d9b1b4e5d0da519226'],
+    }),
+    ('ridigbio', '0.3.5', {
+        'checksums': ['e5cfb2e4dd8ddd1452a5afcf24fcc260889179d0f52eff4f41835adf99b64614'],
+    }),
+    ('spocc', '1.2.0', {
+        'checksums': ['4bac45db5e69bfa3bf6cebd1b0c9241214c95561f275cee6d31e00911aa79d84'],
+    }),
+    ('spThin', '0.2.0', {
+        'checksums': ['2e997afb79a2a990eded34c71afaac83986669cfa9ac51b15ae3f2b558902048'],
+    }),
+    ('rangeModelMetadata', '0.1.4', {
+        'checksums': ['529d529ca90437db3d1e45118443e27a920422806383c7edaa2102beb43f5f80'],
+    }),
+    ('ENMeval', '2.0.1', {
+        'checksums': ['2f7b7760ae70a45cd3c766aacf1e39f498de4f2e8c7b6dcde6b9adf6d8100250'],
+    }),
+    ('plotmo', '3.6.1', {
+        'checksums': ['245a0c87f0cca08746c6fdc60da2e3856cd69b1a2b7b5641293c620d4ae04343'],
+    }),
+    ('earth', '5.3.1', {
+        'checksums': ['0bbe06ba974ceb8ec5de1d59cb53f9487d1828d7130fe2503c48b6cb449c4b03'],
+    }),
+    ('mda', '0.5-2', {
+        'checksums': ['344f2053215ddf535d1554b4539e9b09067dac878887cc3eb995cef421fc00c3'],
+    }),
+    ('biomod2', '3.5.1', {
+        'checksums': ['30ed33ff980558a59782ec9e35f9c2c710a540718010654363f63878cdc0ac18'],
+    }),
+    ('poLCA', '1.4.1', {
+        'checksums': ['2e69975b5e7da8c36641bfa9453afdb4861523866b8799bec1d4eace9ab5762e'],
+    }),
+    ('PermAlgo', '1.1', {
+        'checksums': ['d7157b92241c34b71ad19901b52144973b49df453bf2a5edf4497d4bf26bd099'],
+    }),
+    ('coxed', '0.3.3', {
+        'checksums': ['d0d6cb8fea9516b3c63b34d0d81f3804c18a07f97a83e51555575c8ed4c75626'],
+    }),
+    ('testit', '0.13', {
+        'checksums': ['90d47168ab6bdbd1274b600b457626ac07697ce09792c92b2043be5f5b678d80'],
+    }),
+    ('NISTunits', '1.0.1', {
+        'checksums': ['eaccd68db5c73d6a089ce5b323cdd51bc6a6a58ce467987158ba8c9be6a0a94e'],
+    }),
+    ('celestial', '1.4.6', {
+        'checksums': ['9f647f41465ac65b254717698f1978871c378ad8e6ccaa693abf579437069abe'],
+    }),
+    ('fasterize', '1.0.3', {
+        'checksums': ['62b459625e9bdb00251ec5f6cb873e0c59713f3e86dc1e2c8332adc0cea17f81'],
+    }),
+    ('RPMM', '1.25', {
+        'checksums': ['f04a524b13918062616beda50c4e759ce2719ce14150a0e677d07132086c88c8'],
+    }),
+    ('RefFreeEWAS', '2.2', {
+        'checksums': ['de2812f166caabf6ea01c0533402e5cd9d8a525a2a7583e4757decf22319caab'],
+    }),
+    ('wordcloud', '2.6', {
+        'checksums': ['53716954430acd4f164bfd8eacd7068a908ee3358293ded6cd992d53b7f72649'],
+    }),
+    ('JADE', '2.0-3', {
+        'checksums': ['56d68a993fa16fc6dec758c843960eee840814c4ca2271e97681a9d2b9e242ba'],
+    }),
+    ('awsMethods', '1.1-1', {
+        'checksums': ['50934dc20cf4e015f1304a89de6703fed27e7bd54c6b9fc9fb253cdf2ecb7541'],
+    }),
+    ('aws', '2.5-1', {
+        'checksums': ['e8abadc5614f132edc3fb9cb1c82ce4dacc1315b727fbd49db7399aee24115ba'],
+    }),
+    ('ruv', '0.9.7.1', {
+        'checksums': ['a0c54e56ba3d8f6ae178ae4d0e417a79295abf5dcb68bbae26c4b874734d98d8'],
+    }),
+    ('mhsmm', '0.4.16', {
+        'checksums': ['fab573abdc0dd44e8c8bc7242a1428df20b3ec64c4c194e5f1f907393f902d01'],
+    }),
+    ('dbarts', '0.9-20', {
+        'checksums': ['1d75e795812819b7637d38fc909f4d7942bddf359acfb40a7b8e7cd167a5e92a'],
+    }),
+    ('proftools', '0.99-3', {
+        'checksums': ['e034eb1531af54013143da3e15229e1d4c2260f8eb79c93846014db3bdefb724'],
+    }),
+    ('NCmisc', '1.1.6', {
+        'checksums': ['2aa85997d5ec2222e610604022684c004a4925241761d9a0104919f1cf3a8c79'],
+    }),
+    ('reader', '1.0.6', {
+        'checksums': ['905c7c5a1b035ac8213fc533fa26e511abfeea40bd22e3edfde42a49074e88f4'],
+    }),
+    ('gnumeric', '0.7-8', {
+        'checksums': ['28b10c91d693b938ebca610933889095ca160b22e6ca750c46103dfd2b009447'],
+    }),
+    ('tcltk2', '1.2-11', {
+        'checksums': ['ad183ae3b7190501504a0589e0b3be480f04267303e3384fef00987446a37dc5'],
+    }),
+    ('readODS', '1.7.0', {
+        'checksums': ['f6a8ec724df68983c9b176a1b3b3b01239cc4e99aac4bfb42ce1c2b3d40922c2'],
+    }),
+    ('nortest', '1.0-4', {
+        'checksums': ['a3850a048181d5d059c1e74903437569873b430c915b709808237d71fee5209f'],
+    }),
+    ('EnvStats', '2.4.0', {
+        'checksums': ['49459e76412037b3d8021bd83ee93d140bc3e715a2a2282a347ef60061900514'],
+    }),
+    ('outliers', '0.14', {
+        'checksums': ['b6ce8f1db6442481546131def8253cabdf4472116d193daea7cb935d2b76986d'],
+    }),
+    ('elementR', '1.3.7', {
+        'checksums': ['4275f88f372a2efe96ccd0afc20f4f12be92f28c7db35c68b80bb0ffb2c2ab07'],
+    }),
+    ('gWidgets2', '1.0-8', {
+        'checksums': ['1615ce9ab07a251d06c68780be15ab5a4814df877a23aa93e0faf14ccd56d45c'],
+    }),
+    ('gWidgets2tcltk', '1.0-6', {
+        'checksums': ['aa3a2f4612116a652e5573a369e3d89c5939f7c06067c6826ba40ed3bb07302b'],
+        # need to run installation via xvfb-run to avoid problems on headless systems:
+        # no DISPLAY variable so Tk is not available
+        # [tcl] invalid command name "font"
+        'preinstallopts': "xvfb-run ",
+        # skip 'import' check with library(gWidgets2tcltk), since it also fails on headless systems...
+        'modulename': False,
+    }),
+    ('mgsub', '1.7.3', {
+        'checksums': ['c9ae2560fe2690bedc5248af3fc89e7ef2bc6c147d46ced28f9824584c3791d5'],
+    }),
+    ('ie2misc', '0.8.6', {
+        'checksums': ['f3e2cc8a88f3789a5e339d2676455472a52a303c8273191f27aa2f2f02fdd8cd'],
+    }),
+    ('assertive.base', '0.0-9', {
+        'checksums': ['4bf0910b0eaa507e0e11c3c43c316b524500c548d307eb045d6f89047e6ba01e'],
+    }),
+    ('assertive.properties', '0.0-4', {
+        'checksums': ['5c0663fecb4b7c30f2e1d65da8644534fcfe97fb3d8b51f74c1327cd14291a6b'],
+    }),
+    ('assertive.types', '0.0-3', {
+        'checksums': ['ab6db2eb926e7bc885f2043fab679330aa336d07755375282d89bf9f9d0cb87f'],
+    }),
+    ('assertive.numbers', '0.0-2', {
+        'checksums': ['bae18c0b9e5b960a20636e127eb738ecd8a266e5fc29d8bc5ca712498cd68349'],
+    }),
+    ('assertive.strings', '0.0-3', {
+        'checksums': ['d541d608a01640347d661cc9a67af8202904142031a20caa270f1c83d0ccd258'],
+    }),
+    ('assertive.datetimes', '0.0-3', {
+        'checksums': ['014e2162f5a8d95138ed8330f7477e71c908a29341697c09a1b7198b7e012d94'],
+    }),
+    ('assertive.files', '0.0-2', {
+        'checksums': ['be6adda6f18a0427449249e44c2deff4444a123244b16fe82c92f15d24faee0a'],
+    }),
+    ('assertive.sets', '0.0-3', {
+        'checksums': ['876975a16ed911ea1ad12da284111c6eada6abfc0118585033abc0edb5801bb3'],
+    }),
+    ('assertive.matrices', '0.0-2', {
+        'checksums': ['3462a7a7e11d7cc24180330d48cc3067cf92eab1699b3e4813deec66d99f5e9b'],
+    }),
+    ('assertive.models', '0.0-2', {
+        'checksums': ['b9a6d8786f352d53371dbe8c5f2f2a62a7866e30313f268e69626d5c3691c42e'],
+    }),
+    ('assertive.data', '0.0-3', {
+        'checksums': ['5a00fb48ad870d9b3c872ce3d6aa20a7948687a980f49fe945b455339e789b01'],
+    }),
+    ('assertive.data.uk', '0.0-2', {
+        'checksums': ['ab48dab6977e8f43d6fffb33228d158865f68dde7026d123c693d77339dcf2bb'],
+    }),
+    ('assertive.data.us', '0.0-2', {
+        'checksums': ['180e64dfe6339d25dd27d7fe9e77619ef697ef6e5bb6a3cf4fb732a681bdfaad'],
+    }),
+    ('assertive.reflection', '0.0-5', {
+        'checksums': ['c2ca9b27cdddb9b9876351afd2ebfaf0fbe72c636cd12aa2af5d64e33fbf34bd'],
+    }),
+    ('assertive.code', '0.0-3', {
+        'checksums': ['ef80e8d1d683d776a7618e78ddccffca7f72ab4a0fcead90c670bb8f8cb90be2'],
+    }),
+    ('assertive', '0.3-6', {
+        'checksums': ['c403169e83c433b65e911f7fd640b378e2a4a4765a36063584b8458168a4ea0a'],
+    }),
+    ('rdrop2', '0.8.2.1', {
+        'checksums': ['b9add765fe8e7c966f0d36eef939a9e38f253958bd2a3c656b890cbb0366300b'],
+    }),
+    ('Exact', '3.0', {
+        'checksums': ['a76114e9780c86e4ea0a561300db024b95af9b0ebb6c3bf9a7598d276d009529'],
+    }),
+    ('lmom', '2.8', {
+        'checksums': ['cae2a925c39429d8e9f91bdb2682ea0d1343e9b2e5c9e8752c5929eb5f20d2d2'],
+    }),
+    ('gld', '2.6.2', {
+        'checksums': ['915860ac054ba4d29854c7d274e9c927995c5df2a7d4a6a0122b1fbc4a3c3cf3'],
+    }),
+    ('DescTools', '0.99.43', {
+        'checksums': ['8c3c4e5975428b9f2817907931449cd704d3df0e19e4337010f0dee333e7a4ff'],
+    }),
+    ('orthopolynom', '1.0-5', {
+        'checksums': ['6da4f437aae5c8fafdf791ce3c6a66f68198df4054af3aab8406402a4dc770bf'],
+    }),
+    ('gaussquad', '1.0-2', {
+        'checksums': ['ba3a1ab6ffe92f592c9f2bb1d4070f1fb1019325226dcb4863cf725eb59e9b2d'],
+    }),
+    ('nlsem', '0.8', {
+        'checksums': ['495a5d07aa5f59efdcd43acf429ae842453abd6c0720a80e2102d663fa997c60'],
+    }),
+    ('tableone', '0.13.0', {
+        'checksums': ['1c73a5a7595dc0ae2299d17c74738e077984af7d5429e4858b7be3c55e121346'],
+    }),
+    ('jstable', '1.0.7', {
+        'checksums': ['a8f66172973dc75d1d751d7015e0f028c441263f6649909bd25fa944be0042c3'],
+    }),
+    ('RCAL', '2.0', {
+        'checksums': ['10f5f938a8322d8737159e1e49ce9d12419a5130699b8a19c6ca53d6508da8cc'],
+    }),
+    ('stargazer', '5.2.2', {
+        'checksums': ['70eb4a13a6ac1bfb35af07cb8a63d501ad38dfd9817fc3fba6724260b23932de'],
+    }),
+    ('sensemakr', '0.1.4', {
+        'checksums': ['6a1354f05392fa9343b90f69a54022c995651fb3c3d05cb08fa088ef52258caf'],
+    }),
+    ('CompQuadForm', '1.4.3', {
+        'checksums': ['042fc56c800dd8f5f47a017e2efa832caf74f0602824abf7099898d9708660c4'],
+    }),
+    ('nonnest2', '0.5-5', {
+        'checksums': ['027f510e322122fc75c936251a95ddd392f96047ac86e0fae6cf8f883ac7aab5'],
+    }),
+    ('blavaan', '0.3-17', {
+        'checksums': ['ada14fcc665a22f11fc57392d70141c398d85dbb35f0a3373a501bc51d27f1e5'],
+    }),
+    ('mathjaxr', '1.4-0', {
+        'checksums': ['ba57378236d593a39c5839054adc5473526de0c8f05b7eeb87c99438496ddc67'],
+    }),
+    ('metafor', '3.0-2', {
+        'checksums': ['02df435197b225da736103edf73d19253a542bc31fc0b99610c02daec434138a'],
+    }),
+    ('fmri', '1.9.6', {
+        'checksums': ['7614290d880667512744d3450480a670cc38abdb270f3f776ac9a17a793f07f2'],
+    }),
+    ('AnalyzeFMRI', '1.1-24', {
+        'checksums': ['0d2acfe9ce8f25eb5cc9e6ef1db3ea8e232a31d46a95e50914489b1997e17062'],
+    }),
+    ('linkcomm', '1.0-14', {
+        'checksums': ['36f1557c65d862fc87635eedfad77f18a5deb66da00895e50e2d5eac0f23b597'],
+    }),
+    ('rnetcarto', '0.2.4', {
+        'checksums': ['266702330250e9fbeb8616d86edf1d50d63084a0731d17e84a04dc6faacf653a'],
+    }),
+    ('DEoptim', '2.2-6', {
+        'checksums': ['8c63397d83a067212d003ef3e639fd81f5f00bf61e3c271b4e4999031a69e2e1'],
+    }),
+    ('optextras', '2019-12.4', {
+        'checksums': ['59006383860826be502ea8757e39ed94338f04d246c4fc398a088e004d8b13eb'],
+    }),
+    ('setRNG', '2013.9-1', {
+        'checksums': ['1a1a399682a06a5fea3934985ebb1334005676c6a2a22d06f3c91c3923432908'],
+    }),
+    ('Rvmmin', '2018-4.17.1', {
+        'checksums': ['55000ac4ff57d42f172c46c7d6b0a603da3b65866d6440d6b32bac4d2b81814e'],
+    }),
+    ('Rcgmin', '2013-2.21', {
+        'checksums': ['a824a09c32d7565a3e30607c71333506d5b7197478fbe8b43f8a77dad6c12f0a'],
+    }),
+    ('optimr', '2019-12.16', {
+        'checksums': ['73b1ed560ffd74599517e8baa4c5b293aa062e9c8d50219a3a24b63e72fa7c00'],
+    }),
+    ('DMCfun', '2.0.2', {
+        'checksums': ['430cbc18f17db11a7941e6a8274a0eefbb8a6b0bdac8800970530d60d5881fde'],
+    }),
+    ('miceadds', '3.11-6', {
+        'checksums': ['121d03c812fbcf584a25585ac73f6c44f4b5d6cd21b05362ddd15395fb3909f6'],
+    }),
+    ('visdat', '0.5.3', {
+        'checksums': ['527c76b6643b8475a58516763ef40238cdc61ec62d2dcf690f7c316b93b878c6'],
+    }),
+    ('UpSetR', '1.4.0', {
+        'checksums': ['351e5fee64204cf77fd378cf2a2c0456cc19d4d98a2fd5f3dac74b69a505f100'],
+    }),
+    ('norm', '1.0-9.5', {
+        'checksums': [('305cbf007f3905cfd535ed9bf5ae3e2995e228cc8883d6482e5d3a2f02814106',
+                       '45016701291a5851d42452fc3ae682ff9bf86b0a9ba4619dc8b36a0187e4d0e4')],
+    }),
+    ('naniar', '0.6.1', {
+        'checksums': ['d546ca15bf6c224f3103eb1441abef91d34feebb7320c2398d598f5d50177450'],
+    }),
+    ('stringdist', '0.9.8', {
+        'checksums': ['efccd6ccc5c74c578be95b7dae1099c52b0d7805452ab14ee91ca34adb8261bb'],
+    }),
+    ('image.binarization', '0.1.2', {
+        'checksums': ['0621ca94a74264bb73f689b1a00484b5a3bbef93fc203d9c001d791a18fcc13f'],
+    }),
+    ('lassosum', '0.4.5', {
+        'source_urls': ['https://github.com/tshmak/%(name)s/releases/download/v%(version)s/'],
+        'sources': ['%(name)s_%(version)s.tar.gz'],
+        'checksums': ['18c0d0b5022bcf81a9bf1b3b6647da3e080f221828b473ea2a45a9bf98474fbc'],
+    }),
+    ('lslx', '0.6.10', {
+        'checksums': ['adc2b2a621625b52165245ab2f3a0bfba4f4db64fcc6ad48a3e5b219c3bd2fa1'],
+    }),
+    ('truncnorm', '1.0-8', {
+        'checksums': ['49564e8d87063cf9610201fbc833859ed01935cc0581b9e21c42a0d21a47c87e'],
+    }),
+    ('Rsolnp', '1.16', {
+        'checksums': ['3142776062beb8e2b45cdbc4fe6e5446b6d33505253d79f2890fe4178d9cf670'],
+    }),
+    ('regsem', '1.8.0', {
+        'checksums': ['28ff1c2dbddcafc6ed6c30154f46074aa0c8974757466680529b71a5f3e463ec'],
+    }),
+    ('semPLS', '1.0-10', {
+        'checksums': ['cb587ccfdaf970f426dc7146035c7e010b1c51c17bf4fc089fd796eda58db460'],
+    }),
+    ('GxEScanR', '2.0.2', {
+        'checksums': ['6d42fd15d83dd1491405b282d26fa472f9f9902a9dc68836d6a48b459ada6a4c'],
+    }),
+    ('alabama', '2015.3-1', {
+        'checksums': ['6600fcf4842488950e196d3f5a8fc4d69e8271b36292ce67ac3ab697449a8f56'],
+    }),
+    ('polycor', '0.7-10', {
+        'checksums': ['caea3beca2c889e12e5b976c20c19cf5a76d42e6329e9ab646112eeae8fcfc73'],
+    }),
+    ('multipol', '1.0-7', {
+        'checksums': ['0abe3c894c0d8e928a920e73708a397133386a0d73a1e7952c4075afe67879e6'],
+    }),
+    ('symmoments', '1.2.1', {
+        'checksums': ['9a6be1f8fe44f6ab5a1790e870fd8b18de1686a48a14a9fca2d035bfb5458672'],
+    }),
+    ('cSEM', '0.4.0', {
+        'checksums': ['7753ac7db9d2c0392e51dd31ec8638e1a7fcbb2546dd9103f5ecc03dd51836c1'],
+    }),
+    ('cubelyr', '1.0.1', {
+        'checksums': ['740a34100592b2c6b7bc89a31bddccf4c8fd95720caf68f530104f17aada77bc'],
+    }),
+    ('broom.mixed', '0.2.7', {
+        'checksums': ['ff29385557af239a41452ffb5ebe230630a2a30f4a91e95505c3178b62df01ba'],
+    }),
+    ('DiceKriging', '1.6.0', {
+        'checksums': ['ab5d1332809f2bb16d156ed234b102eb9fbd6de792e4291f9f6ea4652215cb49'],
+    }),
+    ('grf', '2.0.2', {
+        'checksums': ['043f21a057762a2d5e0febb37c1d9cb8d2f94d19f2eded20c672dec7ff54b505'],
+    }),
+    ('xgboost', '1.4.1.1', {
+        'checksums': ['9f986f3895ce5f6744335c82afe3a87d9ac2e473e60785295edf2be80d34e0c4'],
+    }),
+    ('twang', '2.5', {
+        'checksums': ['fc355527c57e4f6e0f60d26d7c690c4475fcd5fb165d125fea7cc6b9fafc4ce5'],
+    }),
+    ('neuralnet', '1.44.2', {
+        'checksums': ['5f66cd255db633322c0bd158b9320cac5ceff2d56f93e4864a0540f936028826'],
+    }),
+    ('PCAmatchR', '0.3.0', {
+        'checksums': ['73876c6d1cf42928a03a64aba197c67b4a4f4de2c431cfbc6fce615bbea32fa0'],
+    }),
+    ('origami', '1.0.5', {
+        'checksums': ['8d0d08aaecc428cbbf5db4615ad3623777c10c6d7947a1cc3ccc7f8db8cb5263'],
+    }),
+    ('hal9001', '0.4.1', {
+        'checksums': ['386fa93ae6c0f409a9137adc54da25a2770826fbed63787e33a36c95f3f89441'],
+    }),
+    ('cobalt', '4.3.1', {
+        'checksums': ['67e26a700ca083a39beb255df54c6ab495f34ea5847a0bf1c4bac895e980eef8'],
+    }),
+    ('CBPS', '0.22', {
+        'checksums': ['d19247e6765f02737d15a0a2ee86ae24e7206ae740dfaa61821622eb3a309aef'],
+    }),
+    ('SBdecomp', '1.1', {
+        'checksums': ['ad4e4f00bc58eafe551ad6288c0642a16e16ef8f73c2ae649f808b1e559df644'],
+    }),
+    ('naturalsort', '0.1.3', {
+        'checksums': ['cd38a9c5f323f61459e6096cdbf4493851d40497baf671af4f8dfe9a7c00e857'],
+    }),
+    ('lwgeom', '0.2-8', {
+        'checksums': ['f48a92de222da0590b37a30d5cbf2364555044a842795f6b488afecc650b8b34'],
+    }),
+    ('finalfit', '1.0.3', {
+        'checksums': ['bbfa841a2b1a7b1f8c153d773ff076a2e465e451815f8166ff0ce8c4018ff61e'],
+    }),
+    ('broom.helpers', '1.4.0', {
+        'checksums': ['7f6a5c0c79260b57cd31976bc216fffbc79a1641e01b74630dcd37d2c84e3f75'],
+    }),
+    ('gt', '0.3.1', {
+        'checksums': ['ddd1fee446f156d1b52bb2db83262aac2a896db93748e92e08407d317e126019'],
+    }),
+    ('gtsummary', '1.5.0', {
+        'checksums': ['54dd5e11c5b2a808ca93284760a5cd102f820332d2fa40474d5cedea030711a7'],
+    }),
+    ('ncdf4', '1.17', {
+        'checksums': ['db95c4729d3187d1a56dfd019958216f442be6221bd15e23cd597e6129219af6'],
+    }),
+    ('geex', '1.0.12', {
+        'checksums': ['037aece09bc0c4349897cd1d8f5dcf1e680598cdfdf72148b6d1506e02690e7f'],
+    }),
+    ('momentfit', '0.2', {
+        'checksums': ['a10d43ac23bb61b9c67efa4800e3e2b6a444c1afaca8bad351648accd7e003f6'],
+    }),
+    ('StatMatch', '1.4.0', {
+        'checksums': ['820091cd2213734ea16f5fcd616491bbf39d3e6c2bcfb34a7c9fe09f4fd1a459'],
+    }),
+    ('stars', '0.5-3', {
+        'checksums': ['44944a82af36bea09ac1874ff9647acbb7fef021ebdca5aae7c34794be929401'],
+    }),
+    ('rapidjsonr', '1.2.0', {
+        'checksums': ['62c94fcdcf5d0fbdfa2f6168affe526bf547c37c16d94e2e1b78d7bf608eed1f'],
+    }),
+    ('jsonify', '1.2.1', {
+        'checksums': ['929191ab32e34af6a02ad991e29314cc78ea40763fcf232388ef2d132137fbce'],
+    }),
+    ('geometries', '0.2.0', {
+        'checksums': ['8cf5094f3c2458fef5d755799c766afd27c66cd1c292574a6ab532d608360314'],
+    }),
+    ('sfheaders', '0.4.0', {
+        'checksums': ['86bcd61018a0491fc8a1e7fb0422c918296287b82be299a79ccee8fcb515e045'],
+    }),
+    ('geojsonsf', '2.0.1', {
+        'checksums': ['42df40433bfbece5a39cd97b5bd4690b4424855241fcc3e7322ee68a3988bfbf'],
+    }),
+    ('leaflet.providers', '1.9.0', {
+        'checksums': ['9e8fc75c83313ab24663c2e718135459599549ed6e7396086cacb44e36cfd67b'],
+    }),
+    ('leaflet', '2.0.4.1', {
+        'checksums': ['b0f038295f1de5d32d9ffa1d0dbc1562320190f2f1365f3a5e95863fff88901f'],
+    }),
+    ('leafsync', '0.1.0', {
+        'checksums': ['7d8fd8dbbbf66417cf32575f14c0fe68199762ecf1c036c7905c7c5ff859d75c'],
+    }),
+    ('leafem', '0.1.6', {
+        'checksums': ['ca50e0a699f564449248511857a2df0d48cd07de3157e099478a19b533088156'],
+    }),
+    ('widgetframe', '0.3.1', {
+        'checksums': ['44089a2cf8b0941a6f3da55da36353e2f44653ca58bfec7960ee5b71ea380d48'],
+    }),
+    ('tmaptools', '3.1-1', {
+        'checksums': ['fd89cb0d7fb44e0a5dd5311fa3e75a729746bf2e8e158d5ec423e5963f1b542d'],
+    }),
+    ('tmap', '3.3-2', {
+        'checksums': ['2bcb74c5c5546223d79abe5d633581fb2664b910f6246f4b8b7166b208b4629a'],
+    }),
+    ('collapse', '1.6.5', {
+        'checksums': ['1e232a3a62b5eb5ed5d81e7d92ce1bae34c3d877d593d47d7edbd3f515b95a46'],
+    }),
+    ('genoPlotR', '0.8.11', {
+        'checksums': ['f127f7fe8b19c899ecfdf98bf69d2e18926afb593a72fc40097acca66d401607'],
+    }),
+    ('VineCopula', '2.4.3', {
+        'checksums': ['42727aa7345ab544242182222eb97476f5dc04bc837f94f6fd3ea6ccac93ea17'],
+    }),
+    ('Rmpfr', '0.8-7', {
+        'checksums': ['93c2db785ff705dcfc6fa7f0373c2426cdc2ef72ceb5b294edeb2952775f57d2'],
+    }),
+    ('scam', '1.2-12', {
+        'checksums': ['0ce5f844221370884719424eb5b2b22c34a8a8ad64eac3de981e5539b6e88f4a'],
+    }),
+    ('copula', '1.0-1', {
+        'checksums': ['d09b2ccffc7379e48b00952aa6b282baf502feebaf55cc44e93f881d7b909742'],
+    }),
+    ('evd', '2.3-3', {
+        'checksums': ['2fc5ef2e0c3a2a9392425ddd45914445497433d90fb80b8c363877baee4559b4'],
+    }),
+    ('ismev', '1.42', {
+        'checksums': ['0d57fbeca83bd478e84fcff795967d51d8448c629abe7adc6c4c18c7fb8bf1a5'],
+    }),
+    ('GJRM', '0.2-5.1', {
+        'checksums': ['516dd73c70e5c8ab60b24027f94cab42603797c41cb7aa740882cb850f6d6ab4'],
+    }),
+    ('penfa', '0.1.1', {
+        'checksums': ['a22a8ac3d4a040c77e50ddc92328c1989eae536d79fe56013e9372ba27c114e5'],
+    }),
+    ('rngWELL', '0.10-7', {
+        'checksums': ['0c00c54e69d7d552cfa08d766e4854c01c6c1c8e2c558f387760b91a55ef2d38'],
+    }),
+    ('randtoolbox', '1.31.1', {
+        'checksums': ['30992e8156782542e9a2bffb75eb2e35f6d302a8c22cb7c3ed9004f0f0973bad'],
+    }),
+    ('kde1d', '1.0.3', {
+        'checksums': ['d645652d09f1981eb37be9f041034da9b9191885dd38be8a7e485e5e41eb050e'],
+    }),
+    ('RcppThread', '1.0.0', {
+        'checksums': ['544a48ee4ea381e2e1421d4edbec54365f17059084d94ded7c339de36deeccf5'],
+    }),
+    ('wdm', '0.2.2', {
+        'checksums': ['11c616f0896d62993f5eee1daf7b021d27f13751f6617067b57cf463aea32dde'],
+    }),
+    ('rvinecopulib', '0.6.1.1.1', {
+        'checksums': ['779fd288774ebb1a0adde6b960053e5c63750bfa66d5ddf349e0f1d8730f08cd'],
+    }),
+    ('PearsonDS', '1.2.1', {
+        'checksums': ['354be30b8df4e5432d1bc2b6162900522d4c08dc63b207331819d589fb069824'],
+    }),
+    ('covsim', '0.2.1', {
+        'checksums': ['57ca810c6950ab295078b745eb87fdd7f195e15082777eed9f1059b6302f13bf'],
+    }),
+    ('semTools', '0.5-5', {
+        'checksums': ['ddf883753c5964eae8313d7e8a4703be52e649f10d3bc1d12ede6d1707b1fab6'],
+    }),
+    ('GPArotation', '2014.11-1', {
+        'checksums': ['351bc15fc8dc6c8ea5045fbba22180d1e68314fc34d267545687748e312e5096'],
+    }),
+    ('dcurver', '0.9.2', {
+        'checksums': ['cc6c55090d3607910515981ea0c7221e40e7a29e0da0c5a5f42c3847012290ec'],
+    }),
+    ('mirt', '1.35.1', {
+        'checksums': ['788b7e499b7d48f5f590eb5cfdac260c4e993b94a3956d30bc2d8bce8cd2ba3e'],
+    }),
+    ('rpf', '1.0.11', {
+        'checksums': ['e1fd670ae7c3e947db08ce50d6b16ce1b3b8f63a9016b03baba760aee78921fb'],
+    }),
+    ('OpenMx', '2.19.8', {
+        'checksums': ['cb4be9850f61d320dcd47ef0ad7b20e5baafde558ebbc67301b13d883baf6760'],
+    }),
+    ('matlab', '1.0.2', {
+        'checksums': ['a23dec736c51ae1864c1a53caac556a2f98e8020138a3b121badb0f5b7984154'],
+    }),
+    ('FactorCopula', '0.8', {
+        'checksums': ['d95b0ccd1b0eebcf27a90286e9392f662b878a669c693fbbb4145798045134ff'],
+    }),
+    ('rpact', '3.2.1', {
+        'checksums': ['d12f9a085163a1745cc7672685dd24e04d27f76998a57835a1ea32e06b637471'],
+    }),
+    ('ldbounds', '1.1-1.1', {
+        'checksums': ['e88e6bff43762a9f7d80484056d10c7d2fd80969b43061d8cc96c3bd5b9c3583'],
+    }),
+    ('catlearn', '0.8', {
+        'checksums': ['0d13da431a5511b025090b7ffaa3765b94b33c7de5a7cc1cec8c50437755646e'],
+    }),
+    ('metadat', '1.0-0', {
+        'checksums': ['ed335a4eb2145fffde20e36077e360f9d36a615e9d93453d2bbd6f5967db4b9c'],
+    }),
+    ('MetaUtility', '2.1.2', {
+        'checksums': ['e38c21588c239aa8926e64d916aa0f3b04108c2992f0e801095e4c7920b9ad5d'],
+    }),
+    ('EValue', version, {
+        'checksums': ['d9f3feb3da2efaf4e5d794e05475be62666192a7c855e373c3d369324078690c'],
+    }),
+    ('dagitty', '0.3-1', {
+        'checksums': ['7d44b5d259ec3fef776a7e3fcb21d1c379f930d6ae9ae5fbfff54494ad78e8a8'],
+    }),
+    ('ggdag', '0.2.4', {
+        'checksums': ['372ec4ef0ded9637304a19b50bce908e84a034e54dbd2a52a061bb747b2b08a0'],
+    }),
+    ('simex', '1.8', {
+        'checksums': ['80c7841196b9377a9367eb6960ad80ca0bf8de511b8b18a0031bfbe7bde289a0'],
+    }),
+    ('hash', '2.2.6.1', {
+        'checksums': ['a680dfccaaf89b5a55355062b5292baf514d53aa3b206aa74869f1b733a06e2c'],
+    }),
+    ('nabor', '0.5.0', {
+        'checksums': ['47938dcc987279281c13abfd667660bf1b3b76af116136a27eb066ee1a4b43da'],
+    }),
+    ('harmony', '0.1.0', {
+        'checksums': ['e0598c220ae90d1334e47c9958ccccf7defbe6ac530159bc69424923894f724a'],
+    }),
+    ('apcluster', '1.4.9', {
+        'checksums': ['3aac75e3e640eb89c1337d6f2e72a85d226b9c9483e43e0c76f9d424e758cb72'],
+    }),
+    ('DataCombine', '0.2.21', {
+        'checksums': ['352b235612e2cf8234b3ab5f9aa6f7a394b006b98d24e315940ccc65c4218b47'],
+    }),
+    ('docstring', '1.0.0', {
+        'checksums': ['14528bc85bbb299fb8fe1a7116034f8df49ae0c26fb299376185b5d56176e5a7'],
+    }),
+    ('gdalUtils', '2.0.3.2', {
+        'checksums': ['4c6faabee2db8a87b7ea0f8e67e9fce3c5db7f4be353d7d86ea559507cbb2a4f'],
+    }),
+    ('openair', '2.8-6', {
+        'checksums': ['37ffd9d6c5f5cebcd95720c6599f25f2e6c4fd3f6134f6aec026cb671ea373c0'],
+    }),
+    ('pdp', '0.7.0', {
+        'checksums': ['28d69eb63b92bdf8e974b3222e1e9565000d7f15a3bd90854a8e0446b0fa9a71'],
+    }),
+    ('date', '1.2-39', {
+        'checksums': ['b5b1935638b73373809c009f94b77f993cd301744488d9bdf71ef79c82099757'],
+    }),
+    ('cmprsk', '2.2-11', {
+        'checksums': ['844027cb2c162cf7ef97034d01237ad7b81aa192fe302250d22d2c5528110e14'],
+    }),
+    ('mets', '1.2.9', {
+        'checksums': ['5faccc064e715c44234def40f4f560e90f2dbd34c915a8687b48103b39814ab5'],
+    }),
+    ('Publish', '2020.12.23', {
+        'checksums': ['a7a98fc52801bee30b9c8cb423e4e0082ea42d05134f7d3324ac3e95242cfbe2'],
+    }),
+    ('riskRegression', '2022.03.09', {
+        'checksums': ['6b256cc54de81e8304f859fba7994d101ef972b6cad01b46050363fc48108dc6'],
+    }),
+    ('pec', '2022.03.06', {
+        'checksums': ['d55e1d9b5786537ed127f3c470e8e139a9745969dea9a495afe13743a89883ec'],
+    }),
+    ('pammtools', '0.5.8', {
+        'checksums': ['37197edd0984f8bf0e0a39a4ac1cfce897050dbb7f610553c349118fceb3ca93'],
+    }),
+    ('relsurv', '2.2-7', {
+        'checksums': ['82c84bbe0a3eb9b391cbb885b3f3e7114adda5243aa83f974922d2edca918317'],
+    }),
+    ('mstate', '0.3.2', {
+        'checksums': ['3c473dff6854e31cdbdaf79f8fe7eaf97119b01a581874a894b283555afe8d14'],
+    }),
+    ('microbenchmark', '1.4.9', {
+        'checksums': ['443d2caf370ef33e4ac2773176ad9eb86f8790f43b430968ef9647699dbbffd2'],
+    }),
+    ('prettyGraphs', '2.1.6', {
+        'checksums': ['fece08924fc7ed05ec419afa14a2216a2bb23d9da5ed3fc61472d6e45be7577a'],
+    }),
+    ('ExPosition', '2.8.23', {
+        'checksums': ['0510bc51b1c8c883ff3652a5ed56242f91c2b7b7cf3100755436bffa1e002475'],
+    }),
+    ('alluvial', '0.1-2', {
+        'checksums': ['77b6dc4651b33b03aaaf1e09a35f9c3536e5fddac2eda34f5a34e0ae33cf2e0d'],
+    }),
+    ('SNFtool', '2.3.1', {
+        'checksums': ['982fe7c57f52c0c272b8cb5863dc5d50623b368e24ff6e27fc8b17acc0101f16'],
+    }),
+    ('BayesLogit', '2.1', {
+        'checksums': ['3a423f68339ed1bf25e21be53b1fd68452ed7807b17c36239fba759dc6fc6b70'],
+    }),
+    ('Hmsc', '3.0-11', {
+        'checksums': ['318e95ea88a15939dac33691886a9ce0c54765b25a3f4ef483d168bfc699098a'],
+    }),
+    ('MonteCarlo', '1.0.6', {
+        'checksums': ['f21aecfba957bbea9576b09f75b1f7c7621637a04532a8fed2c6bb8ffc1a98cb'],
+    }),
+    ('RhpcBLASctl', '0.21-247.1', {
+        'checksums': ['5be55fd5ddd8173167a48b9f072835a34062ad0268308f2b3fbd1781a5c99769'],
+    }),
+    ('chkptstanr', '0.1.1', {
+        'checksums': ['433b29d597d7ea6c21ed652782a7bf2d766f9223a3b7bfed235c8fe7fffd175c'],
+    }),
+    ('MLmetrics', '1.1.1', {
+        'checksums': ['777f1b76b16837387b830e2b65304ede234b9299d17efd09c7fd403356122118'],
+    }),
+    ('renv', '0.15.5', {
+        'checksums': ['b4f1a9a7daa82f0c3123ebd4eeba06e98d5485215518e5292b25bc56741d582e'],
+    }),
+    ('tabletools', '0.1.0', {
+        'source_urls': ['https://github.com/JMLuther/%(name)s/archive/'],
+        'sources': [{'download_filename': 'cc961c5.tar.gz', 'filename': '%(name)s-%(version)s.tar.gz'}],
+        'checksums': ['667a4270456d28188734ce31411326130a94e085490ced84096c984789bb174a'],
+    }),
+]
+
+moduleclass = 'lang'
diff --git a/r/R/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch.1 b/r/R/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch.1
new file mode 100644
index 0000000..56af450
--- /dev/null
+++ b/r/R/liquidSVM-1.2.4-fix_ppc_and_aarch64_build.patch.1
@@ -0,0 +1,49 @@
+The code requires C++11 but nvcc is not passed any flag for it, do that to avoid 'error: identifier "__ieee128" is undefined' on PPC
+Use uppercase __PPC64__ to detect PPC 64bit (defined by GCC)
+Use lowercase __aarch64__ to detect aarch64 (defined by GCC)
+diff -aur liquidSVM-orig/MD5 liquidSVM/MD5
+--- liquidSVM-orig/MD5  2020-02-20 15:51:17.387058566 +0100
++++ liquidSVM/MD5   2020-02-20 16:48:06.042078399 +0100
+@@ -66,7 +66,7 @@
+ e0ea06f050a2ae8ed2f2e401d968f0ce *man/test.liquidSVM.Rd
+ 8874fc45419e3174bf06013d887f6582 *man/trainSVMs.Rd
+ 4cf2abf7c6d415a4a8cd7f5dee2df959 *man/write.liquidData.Rd
+-854c1eecccd169acdb80b03ad6d768dc *src/Makevars.in
++8c4346267f7b7f649ff27fb5288d4e23 *src/Makevars.in
+ e6d47b428caa2cc55798b431cb5e504f *src/kernel_calculator.cpp
+ 13af8529f5c2bccd4ea03288e9adf908 *src/kernel_calculator.h
+ dc2c86cbe61e7b7c5dd433f9fa41fac6 *src/liquidSVM.cpp
+@@ -155,7 +155,7 @@
+ 8b39ec05680bf3416bc1de3ad92f043f *src/sources/shared/system_support/cuda_simple_vector_operations.h
+ 806ca83732bff4b1b89adfc3494e90da *src/sources/shared/system_support/full_64bit_support.h
+ dfb08cdb449d490d86dd33bee186aac5 *src/sources/shared/system_support/memory_allocation.cpp
+-aec0000be577e69e88c040b641d6818a *src/sources/shared/system_support/memory_allocation.h
++f0231e65bd627116f1b5ebcc45ab1e66 *src/sources/shared/system_support/memory_allocation.h
+ 683d4ee517b1c760dc410c69c5508ce2 *src/sources/shared/system_support/memory_allocation.ins.cpp
+ cbd209324ad752e19be10d8975d65e2f *src/sources/shared/system_support/os_specifics.h
+ 54e8583d2e8e269ff2b6d7a79d57cbd5 *src/sources/shared/system_support/parallel_control.cpp
+diff -aur liquidSVM-orig/src/Makevars.in liquidSVM/src/Makevars.in
+--- liquidSVM-orig/src/Makevars.in  2020-02-20 15:51:17.377058962 +0100
++++ liquidSVM/src/Makevars.in   2020-02-20 16:47:44.042949538 +0100
+@@ -39,7 +39,7 @@
+ # The architecure flag can be set to higher values, if the hardware supports this.
+ # The value below should be safe for essentially all non stone-age systems.
+
+-NVCCFLAGS= -arch sm_30 -L$(CUDA_LIB_PATH) -DCOMPILE_WITH_CUDA__ -U__SSE2__ -U__AVX__ 
++NVCCFLAGS= -arch sm_30 -L$(CUDA_LIB_PATH) -DCOMPILE_WITH_CUDA__ -U__SSE2__ -U__AVX__ -std=c++11
+
+
+ #----------- CUDA related flags for GCC ----------------------------------------------------
+diff -aur liquidSVM-orig/src/sources/shared/system_support/memory_allocation.h liquidSVM/src/sources/shared/system_support/memory_allocation.h
+--- liquidSVM-orig/src/sources/shared/system_support/memory_allocation.h    2020-02-20 15:51:17.377058962 +0100
++++ liquidSVM/src/sources/shared/system_support/memory_allocation.h 2020-02-20 15:56:04.905673381 +0100
+@@ -42,7 +42,7 @@
+
+ // Check for GCC
+ #if __GNUC__
+-	#if __x86_64__ || __ppc64__
++	#if __x86_64__ || __ppc64__ || __PPC64__ || __aarch64__
+	#define SYSTEM_WITH_64BIT
+	#else
+	#define SYSTEM_WITH_32BIT
+
diff --git a/r/RMBlast/RMBlast-2.13.0-gompi-2022a.eb b/r/RMBlast/RMBlast-2.13.0-gompi-2022a.eb
new file mode 100644
index 0000000..8a5f50b
--- /dev/null
+++ b/r/RMBlast/RMBlast-2.13.0-gompi-2022a.eb
@@ -0,0 +1,63 @@
+##
+# EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
+# Authors::   Fotis Georgatos <fotis@cern.ch>, Kenneth Hoste (UGent)
+# License::   MIT/GPL
+# $Id$
+#
+# This work implements a part of the HPCBIOS project and is a component of
+# the policy: https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-94.html
+##
+
+easyblock = 'ConfigureMake'
+
+name = 'RMBlast'
+version = '2.13.0'
+
+homepage = 'https://www.repeatmasker.org/rmblast/'
+description = """RMBlast is a RepeatMasker compatible version of the standard NCBI BLAST suite. The primary
+ difference between this distribution and the NCBI distribution is the addition of a new program 'rmblastn'
+ for use with RepeatMasker and RepeatModeler."""
+
+toolchain = {'name': 'gompi', 'version': '2022a'}
+toolchainopts = {'usempi': True}
+
+# RMBlast is distributed as a patch that applies on top of BLAST+
+source_urls = ['https://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/%(version)s/']
+sources = ['ncbi-blast-%(version)s+-src.tar.gz']
+patches = [('https://www.repeatmasker.org/%(namelower)s/isb-%(version)s+-%(namelower)s.patch.gz', 2)]
+checksums = [
+    {'ncbi-blast-2.13.0+-src.tar.gz': '89553714d133daf28c477f83d333794b3c62e4148408c072a1b4620e5ec4feb2'},
+    {'isb-2.13.0+-rmblast.patch.gz': '06595546318577b450e4a82c641017b2818b1741446e7ac675d82aef3d8f7f3d'},
+]
+
+dependencies = [
+    ('zlib', '1.2.12'),
+    ('bzip2', '1.0.8'),
+    ('PCRE', '8.45'),
+    ('Boost.MPI', '1.79.0'),
+    ('GMP', '6.2.1'),
+    ('libpng', '1.6.37'),
+    ('libjpeg-turbo', '2.1.3'),
+    ('LMDB', '0.9.29'),
+]
+
+# Disable auto-vectorization for the API on CPUs with AVX512 (Intel Skylake and onwards)
+# Compilation fails on src/algo/blast/api/prelim_stage.cpp
+local_apimake = 'src/algo/blast/api/Makefile.xblast.lib'
+preconfigopts = "sed -i 's/FAST_CXXFLAGS)/FAST_CXXFLAGS) -fno-tree-vectorize/g' %s &&" % local_apimake
+
+configopts = "--with-64 --with-z=$EBROOTZLIB --with-bz2=$EBROOTBZIP2 "
+configopts += "--with-pcre=$EBROOTPCRE --with-boost=$EBROOTBOOST "
+configopts += "--with-gmp=$EBROOTGMP --with-png=$EBROOTLIBPNG "
+configopts += "--with-jpeg=$EBROOTLIBJPEGMINTURBO --with-lmdb=$EBROOTLMDB"
+
+prebuildopts = "sed -i 's/LIBS =/LIBS = $(BLAST_THIRD_PARTY_LIBS)/' src/app/rmblastn/Makefile.rmblastn.app && "
+
+sanity_check_paths = {
+    'files': ['bin/blastp', 'bin/blastn', 'bin/deltablast', 'bin/rmblastn'],
+    'dirs': []
+}
+
+moduleclass = 'bio'
diff --git a/r/RStudio-Server/RStudio-Server-2022.07.2+576-foss-2022a-Java-11-R-4.1.2.eb b/r/RStudio-Server/RStudio-Server-2022.07.2+576-foss-2022a-Java-11-R-4.1.2.eb
new file mode 100644
index 0000000..1f5ac37
--- /dev/null
+++ b/r/RStudio-Server/RStudio-Server-2022.07.2+576-foss-2022a-Java-11-R-4.1.2.eb
@@ -0,0 +1,111 @@
+easyblock = 'CMakeNinja'
+
+name = 'RStudio-Server'
+version = '2022.07.2+576'
+versionsuffix = '-Java-%(javaver)s-R-%(rver)s'
+local_git_rev = '7872775ebddc40635780ca1ed238934c3345c5de'
+
+homepage = 'https://www.rstudio.com/'
+description = """This is the RStudio Server version.
+RStudio is a set of integrated tools designed to help you be more productive with R.
+
+The server can be started with:
+  rserver --server-daemonize=0 --www-port=8787
+
+If you need a database config one can be created with:
+  MYTMP=`mktemp -d` && echo -e "provider=sqlite\\ndirectory=${MYTMP}/sqlite" > "${MYTMP}/db.conf"
+and then used with:
+  rserver ... --database-config-file="${MYTMP}/db.conf"
+"""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://github.com/rstudio/rstudio/archive']
+sources = ['v%(version)s.tar.gz']
+patches = [
+    '%(name)s-2022.07.1+554_allow-disabling-quarto.patch',
+    '%(name)s-2022.07.1+554_fix-libsoci-search.patch',
+    '%(name)s-2022.07.1+554_use-XDG_CACHE_HOME.patch',
+]
+checksums = [
+    '55705c36a9b826064b4d9aa87b58c40bb9f7cd2f149b16d554e20136306ce301',
+    # RStudio-Server-2022.07.1+554_allow-disabling-quarto.patch
+    '165306d976c7b851e1e6a2d1f0c2967984b0cd203006aa834a1a6ff17894cf81',
+    # RStudio-Server-2022.07.1+554_fix-libsoci-search.patch
+    '0dafd9fa45d745d350c0c852fe03e3e1e77558d94baae2b5c595d97765002cd5',
+    # RStudio-Server-2022.07.1+554_use-XDG_CACHE_HOME.patch
+    'd033a383c8518a85dcdf45baf14d0a9d6283d03a28576a6eb03bbfb3682d2b00',
+]
+
+builddependencies = [
+    ('ant', '1.10.11', '-Java-%(javaver)s', SYSTEM),
+    ('CMake', '3.23.1'),
+    ('Ninja', '1.10.2'),
+    ('pkgconf', '1.8.0'),
+]
+
+dependencies = [
+    ('Boost', '1.79.0'),
+    ('Java', '11', '', SYSTEM),
+    ('R', '4.1.2'),
+    ('SOCI', '4.0.3'),
+    ('yaml-cpp', '0.7.0'),
+]
+
+osdependencies = [
+    ('pam-devel', 'libpam0g-dev')
+]
+
+# Required until https://github.com/easybuilders/easybuild-framework/pull/4035
+local_start_dir = "%(builddir)s/rstudio-" + version.replace("+", "-")
+
+preconfigopts = " && ".join([
+    # Install dependencies via scripts. Done in subshell to preserve PWD
+    "(export RSTUDIO_TOOLS_ROOT='%(builddir)s'",
+    "cd '%s/dependencies/common'" % local_start_dir,
+    "./install-cef",
+    "./install-dictionaries",
+    "./install-mathjax",
+    "./install-pandoc",
+    "./install-packages",
+    "./install-npm-dependencies)",
+    ""
+])
+
+configopts = " ".join([
+    "-DRSTUDIO_TOOLS_ROOT='%(builddir)s'",
+    "-DRSTUDIO_TARGET=Server",
+    "-DRSTUDIO_USE_SYSTEM_BOOST=ON",
+    "-DRSTUDIO_USE_SYSTEM_SOCI=ON",
+    "-DRSTUDIO_USE_SYSTEM_YAML_CPP=ON",
+    "-DQUARTO_ENABLED=OFF",  # Not available on all archs, use pandoc fallback
+    "-DRSTUDIO_GIT_REVISION_HASH=" + local_git_rev
+])
+
+sanity_check_commands = [
+    # RSession requires environment variables R_HOME and R_DOC_DIR
+    'R_HOME="$EBROOTR/lib64/R" R_DOC_DIR="$R_HOME/doc" rsession --verify-installation=1',
+    # RServer requires a db conf (this may also be needed for live use)
+    # Also create and set a soem dirs so it doesn't try to use $HOME
+    'MYTMP=`mktemp -d`'
+    ' && export RSTUDIO_CONFIG_DIR="$MYTMP"'
+    ' && export XDG_DATA_HOME="$MYTMP/.data"'
+    ' && export XDG_CACHE_HOME="$MYTMP/.cache"'
+    ' && mkdir "$XDG_DATA_HOME" "$XDG_CACHE_HOME"'
+    ' && export RS_LOG_DIR="$MYTMP/log"'
+    ' && echo -e "provider=sqlite\\ndirectory=$MYTMP/db" >> "$MYTMP/db.conf"'
+    ' && rserver ' + ' '.join([
+        '--verify-installation=1',
+        '--server-user="$USER"',
+        '--database-config-file="$MYTMP/db.conf"',
+        '--server-data-dir="$MYTMP/sdd"',
+        '--secure-cookie-key-file="$MYTMP/secure-cookie-key"',
+    ]),
+]
+
+sanity_check_paths = {
+    'files': ['bin/rstudio-server'],
+    'dirs': ['bin', 'extras', 'resources', 'www', 'www-symbolmaps', 'R'],
+}
+
+moduleclass = 'lang'
diff --git a/r/Racon/Racon-1.5.0-GCCcore-11.3.0.eb b/r/Racon/Racon-1.5.0-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..5150c4f
--- /dev/null
+++ b/r/Racon/Racon-1.5.0-GCCcore-11.3.0.eb
@@ -0,0 +1,29 @@
+easyblock = 'CMakeMake'
+
+name = 'Racon'
+version = '1.5.0'
+
+homepage = 'https://github.com/lbcb-sci/racon'
+description = """Ultrafast consensus module for raw de novo genome assembly of long uncorrected reads."""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+github_account = 'lbcb-sci'
+source_urls = [GITHUB_SOURCE]
+sources = ['%(version)s.tar.gz']
+checksums = ['41e362f71cc03b934f17d6e2c0d626e1b2997258261b14551586de006666424a']
+
+builddependencies = [
+    ('CMake', '3.24.3'),
+    ('binutils', '2.38'),
+    ('git', '2.36.0', '-nodocs'),
+]
+
+sanity_check_paths = {
+    'files': ['bin/racon'],
+    'dirs': [],
+}
+
+sanity_check_commands = ['racon --help']
+
+moduleclass = 'bio'
diff --git a/r/rush/rush-0.5.0.eb b/r/rush/rush-0.5.0.eb
new file mode 100644
index 0000000..3c7aa14
--- /dev/null
+++ b/r/rush/rush-0.5.0.eb
@@ -0,0 +1,20 @@
+easyblock = 'BinariesTarball'
+
+name = 'rush'
+version = '0.5.0'
+
+homepage = 'https://github.com/shenwei356/rush'
+description = """A cross-platform command-line tool for executing jobs in parallel """
+
+toolchain = SYSTEM
+
+source_urls = ['https://github.com/shenwei356/rush/releases/download/v0.5.0/']
+sources = ['rush_linux_amd64.tar.gz']
+
+sanity_check_paths = {
+    'files': ['bin/rush'],
+    'dirs': [],
+}
+
+moduleclass = 'tools'
+
diff --git a/s/SciPy-bundle/README b/s/SciPy-bundle/README
new file mode 100644
index 0000000..e132bbe
--- /dev/null
+++ b/s/SciPy-bundle/README
@@ -0,0 +1,3 @@
+For SciPy-bundle-2020.03-foss-2022a-Python-2.7.18.eb,
+
+I installed manually by pip and use eb to create module
diff --git a/s/SciPy-bundle/SciPy-bundle-2019.10-foss-2022a-Python-2.7.18.eb b/s/SciPy-bundle/SciPy-bundle-2019.10-foss-2022a-Python-2.7.18.eb
new file mode 100644
index 0000000..7114417
--- /dev/null
+++ b/s/SciPy-bundle/SciPy-bundle-2019.10-foss-2022a-Python-2.7.18.eb
@@ -0,0 +1,47 @@
+easyblock = 'PythonBundle'
+
+name = 'SciPy-bundle'
+version = '2019.10'
+versionsuffix = '-Python-2.7.18'
+
+homepage = 'https://python.org/'
+description = "Bundle of Python packages for scientific software"
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True, 'lowopt': True}
+
+dependencies = [
+    ('Python', '2.7.18'),
+]
+
+use_pip = True
+sanity_pip_check = True
+
+# order is important!
+# package versions updated Sep 17th 2019 to latest versions compatible with python2
+exts_list = [
+    ('numpy', '1.16.5', {
+        'patches': ['numpy-1.16.2_relax-long-complex-test.patch'],
+        'source_tmpl': '%(name)s-%(version)s.zip',
+        'checksums': [
+            '8bb452d94e964b312205b0de1238dd7209da452343653ab214b5d681780e7a0c',  # numpy-1.16.5.zip
+            # numpy-1.16.2_relax-long-complex-test.patch
+            '647dd4099c2968489e5103b50bcd1b3d970b5b536af25ec75efe86127dda07bb',
+        ],
+    }),
+    ('scipy', '1.2.2', {
+        'checksums': ['a4331e0b8dab1ff75d2c67b5158a8bb9a83c799d7140094dda936d876c7cfbb1'],
+    }),
+    ('mpi4py', '3.0.2', {
+        'source_urls': ['https://bitbucket.org/mpi4py/mpi4py/downloads/'],
+        'checksums': ['f8d629d1e3e3b7b89cb99d0e3bc5505e76cc42089829807950d5c56606ed48e0'],
+    }),
+    ('pandas', '0.24.2', {
+        'checksums': ['4f919f409c433577a501e023943e582c57355d50a724c589e78bc1d551a535a2'],
+    }),
+    ('mpmath', '1.1.0', {
+        'checksums': ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'],
+    }),
+]
+
+moduleclass = 'lang'
diff --git a/s/SciPy-bundle/SciPy-bundle-2020.03-foss-2022a-Python-2.7.18.eb b/s/SciPy-bundle/SciPy-bundle-2020.03-foss-2022a-Python-2.7.18.eb
new file mode 100644
index 0000000..d7d4557
--- /dev/null
+++ b/s/SciPy-bundle/SciPy-bundle-2020.03-foss-2022a-Python-2.7.18.eb
@@ -0,0 +1,52 @@
+easyblock = 'PythonBundle'
+
+name = 'SciPy-bundle'
+version = '2020.03'
+versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://python.org/'
+description = "Bundle of Python packages for scientific software"
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True, 'lowopt': True}
+
+dependencies = [
+    ('Python', '2.7.18'),
+]
+
+use_pip = True
+
+#install_pip = True
+
+#exts_default_options = {
+#    'download_dep_fail': True,
+#    'sanity_pip_check': True,
+#    'source_urls': [PYPI_SOURCE],
+#    'use_pip': True,
+#}
+
+# order is important!
+exts_list = [
+#    ('numpy', '1.16.6', { 
+#       'source_tmpl': '%(name)s-%(version)s-cp27-cp27mu-manylinux1_x86_64.whl', 
+#    }),
+#    ('scipy', '1.2.3', {
+#       'source_tmpl': '%(name)s-%(version)s-cp27-cp27mu-manylinux1_x86_64.whl',
+#    }),
+    ('mpi4py', '3.0.3', {
+        'checksums': ['012d716c8b9ed1e513fcc4b18e5af16a8791f51e6d1716baccf988ad355c5a1f'],
+    }),
+    ('pandas', '0.24.2', {
+        'checksums': ['4f919f409c433577a501e023943e582c57355d50a724c589e78bc1d551a535a2'],
+    }),
+    ('mpmath', '1.1.0', {
+        'checksums': ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'],
+    }),
+    ('deap', '1.3.1', {
+        'checksums': ['11f54493ceb54aae10dde676577ef59fc52d52f82729d5a12c90b0813c857a2f'],
+    }),
+]
+
+sanity_pip_check = True
+
+moduleclass = 'lang'
diff --git a/s/SciPy-bundle/SciPy-bundle-2020.03-fosscuda-2022a-Python-2.7.18.eb b/s/SciPy-bundle/SciPy-bundle-2020.03-fosscuda-2022a-Python-2.7.18.eb
new file mode 100644
index 0000000..4760841
--- /dev/null
+++ b/s/SciPy-bundle/SciPy-bundle-2020.03-fosscuda-2022a-Python-2.7.18.eb
@@ -0,0 +1,38 @@
+easyblock = 'PythonBundle'
+
+name = 'SciPy-bundle'
+version = '2020.03'
+versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://python.org/'
+description = "Bundle of Python packages for scientific software"
+
+toolchain = {'name': 'fosscuda', 'version': '2020a'}
+toolchainopts = {'pic': True, 'lowopt': True}
+
+dependencies = [
+    ('Python', '2.7.18'),
+]
+
+use_pip = True
+sanity_pip_check = True
+
+# order is important!
+exts_list = [
+    ('numpy', '1.16.6'),
+    ('scipy', '1.2.3'),
+    ('mpi4py', '3.0.3', {
+        'checksums': ['012d716c8b9ed1e513fcc4b18e5af16a8791f51e6d1716baccf988ad355c5a1f'],
+    }),
+    ('pandas', '0.24.2', {
+        'checksums': ['4f919f409c433577a501e023943e582c57355d50a724c589e78bc1d551a535a2'],
+    }),
+    ('mpmath', '1.1.0', {
+        'checksums': ['fc17abe05fbab3382b61a123c398508183406fa132e0223874578e20946499f6'],
+    }),
+    ('deap', '1.3.1', {
+        'checksums': ['11f54493ceb54aae10dde676577ef59fc52d52f82729d5a12c90b0813c857a2f'],
+    }),
+]
+
+moduleclass = 'lang'
diff --git a/s/SciPy-bundle/numpy-1.16.2_relax-long-complex-test.patch b/s/SciPy-bundle/numpy-1.16.2_relax-long-complex-test.patch
new file mode 100644
index 0000000..5649a5c
--- /dev/null
+++ b/s/SciPy-bundle/numpy-1.16.2_relax-long-complex-test.patch
@@ -0,0 +1,17 @@
+Relax test condition for test failing on PPC
+See https://github.com/numpy/numpy/issues/15763
+
+Author: Alexander Grund (TU Dresden)
+
+diff -aur numpy-1.16.2/numpy/core/tests/test_umath.py numpy-1.16.2-new/numpy/core/tests/test_umath.py
+--- numpy-1.16.2/numpy/core/tests/test_umath.py	2021-03-29 12:29:48.950135026 +0200
++++ numpy-1.16.2-new/numpy/core/tests/test_umath.py	2021-03-29 12:28:09.000000000 +0200
+@@ -2593,7 +2593,7 @@
+             # are accurate down to a few epsilons. (Eg. on Linux 64-bit)
+             # So, give more leeway for long complex tests here:
+             # Can use 2.1 for > Ubuntu LTS Trusty (2014), glibc = 2.19.
+-            check(x_series, 50.0*eps)
++            check(x_series, 5e-19)
+         else:
+             check(x_series, 2.1*eps)
+         check(x_basic, 2.0*eps/1e-3)
diff --git a/s/SciPy-bundle/site.cfg b/s/SciPy-bundle/site.cfg
new file mode 100644
index 0000000..d49c030
--- /dev/null
+++ b/s/SciPy-bundle/site.cfg
@@ -0,0 +1,10 @@
+[DEFAULT]
+library_dirs = /apps/easybuild-2022/easybuild/software/Core/GCCcore/11.3.0/lib64:/apps/easybuild-2022/easybuild/software/Core/GCCcore/11.3.0/lib:/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/lib64:/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/lib:/apps/easybuild-2022/easybuild/software/MPI/GCC/11.3.0/OpenMPI/4.1.4/ScaLAPACK/2.2.0-fb/lib64:/apps/easybuild-2022/easybuild/software/MPI/GCC/11.3.0/OpenMPI/4.1.4/ScaLAPACK/2.2.0-fb/lib:/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FFTW/3.3.10/lib64:/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FFTW/3.3.10/lib
+include_dirs= /apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/include:/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FlexiBLAS/3.2.0/include/flexiblas:/apps/easybuild-2022/easybuild/software/Compiler/GCC/11.3.0/FFTW/3.3.10/include
+search_static_first=True
+[atlas]
+atlas_libs = flexiblas, gfortran
+[lapack]
+lapack_libs = flexiblas, gfortran
+[fftw]
+libraries = fftw3
\ No newline at end of file
diff --git a/s/Stata/Stata-15.eb b/s/Stata/Stata-15.eb
new file mode 100644
index 0000000..f315338
--- /dev/null
+++ b/s/Stata/Stata-15.eb
@@ -0,0 +1,25 @@
+easyblock = 'PackedBinary'
+
+name = 'Stata'
+version = '15'
+
+homepage = 'http://www.stata.com/support/updates/'
+description = """Stata is a complete, integrated statistical software package that provides everything you need for data analysis, data management, and graphics."""
+
+toolchain = {'name': 'system', 'version': ''}
+
+sources = ['Stata15Linux64.tar.gz']
+
+dependencies = [
+    ('ncurses', '6.2'),
+]
+
+sanity_check_paths = {
+    'files': ['stata', 'xstata'],
+    'dirs': [],
+}
+
+moduleclass = 'math'
+
+#NB this is a convenience Easyblock
+
diff --git a/s/Stata/Stata-16-legacy.eb b/s/Stata/Stata-16-legacy.eb
new file mode 100644
index 0000000..4fbf703
--- /dev/null
+++ b/s/Stata/Stata-16-legacy.eb
@@ -0,0 +1,22 @@
+name = 'Stata'
+version = '16'
+versionsuffix = '-legacy'
+
+homepage = 'https://www.stata.com/'
+description = """Stata is a complete, integrated statistical software package that provides everything you need
+ for data analysis, data management, and graphics."""
+
+toolchain = SYSTEM
+
+# requires license to access source files
+sources = ['Stata%(version)sLinux64-Legacy.tar.gz']
+checksums = ['4999f631c0b52e8b6733812d285836353122d855b654d1a57474a62470a6f775']
+
+dependencies = [
+    ('ncurses', '6.2'),
+	('libpng', '1.6.37'),
+]
+
+sanity_check_commands = ['stata -h']
+
+moduleclass = 'data'
diff --git a/s/scikit-image/scikit-image-0.19.3-foss-2022a.eb b/s/scikit-image/scikit-image-0.19.3-foss-2022a.eb
new file mode 100644
index 0000000..2cc7bce
--- /dev/null
+++ b/s/scikit-image/scikit-image-0.19.3-foss-2022a.eb
@@ -0,0 +1,43 @@
+easyblock = 'PythonBundle'
+
+name = 'scikit-image'
+version = '0.19.3'
+
+homepage = 'https://scikit-image.org/'
+description = "scikit-image is a collection of algorithms for image processing."
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('matplotlib', '3.5.2'),
+    ('Pillow', '9.1.1'),
+    ('networkx', '2.8.4'),
+    ('dask', '2022.10.0'),
+    ('imageio', '2.22.2'),
+]
+
+use_pip = True
+sanity_pip_check = True
+
+exts_list = [
+    ('PyWavelets', '1.4.1', {
+        'modulename': 'pywt',
+        'checksums': ['6437af3ddf083118c26d8f97ab43b0724b956c9f958e9ea788659f6a2834ba93'],
+    }),
+    ('imread', '0.7.4', {
+        'checksums': ['0487adef11a22168700968c1727020361a72f6132b6ced2b8826b02d8cbf744f'],
+    }),
+    ('pooch', '1.6.0', {
+        'checksums': ['57d20ec4b10dd694d2b05bb64bc6b109c6e85a6c1405794ce87ed8b341ab3f44'],
+    }),
+    ('tifffile', '2022.10.10', {
+        'checksums': ['50b61ba943b866d191295bc38a00191c9fdab23ece063544c7f1a264e3f6aa8e'],
+    }),
+    (name, version, {
+        'modulename': 'skimage',
+        'checksums': ['24b5367de1762da6ee126dd8f30cc4e7efda474e0d7d70685433f0e3aa2ec450'],
+    }),
+]
+
+moduleclass = 'vis'
diff --git a/s/spoa/spoa-4.0.7-GCC-11.3.0.eb b/s/spoa/spoa-4.0.7-GCC-11.3.0.eb
new file mode 100644
index 0000000..658c26a
--- /dev/null
+++ b/s/spoa/spoa-4.0.7-GCC-11.3.0.eb
@@ -0,0 +1,29 @@
+easyblock = 'CMakeMake'
+
+name = 'spoa'
+version = '4.0.7'
+
+homepage = 'https://github.com/rvaser/spoa'
+description = """Spoa (SIMD POA) is a c++ implementation of the partial order alignment (POA) algorithm
+ which is used to generate consensus sequences"""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/rvaser/spoa/releases/download/%(version)s/']
+sources = ['spoa-v%(version)s.tar.gz']
+checksums = ['f7a8cd039e4aabea1481e123387fedaa8f87e55418a3649408a615f5c6b1b9a4']
+
+builddependencies = [('CMake', '3.23.1')]
+
+configopts = "-Dspoa_build_executable=ON"
+
+sanity_check_paths = {
+    'files': ['bin/spoa'] + ['include/spoa/%s' % x for x in ['alignment_engine.hpp', 'graph.hpp', 'spoa.hpp']] +
+             ['lib/libspoa.a', 'lib/pkgconfig/spoa-1.pc'],
+    'dirs': [],
+}
+
+sanity_check_commands = ["spoa --help"]
+
+moduleclass = 'bio'
diff --git a/t/TensorFlow/TensorFlow-2.11.0-foss-2022a-CUDA-11.7.0-deeplearn.eb b/t/TensorFlow/TensorFlow-2.11.0-foss-2022a-CUDA-11.7.0-deeplearn.eb
new file mode 100644
index 0000000..78fd81c
--- /dev/null
+++ b/t/TensorFlow/TensorFlow-2.11.0-foss-2022a-CUDA-11.7.0-deeplearn.eb
@@ -0,0 +1,234 @@
+easyblock = 'PythonBundle'
+
+name = 'TensorFlow'
+version = '2.11.0'
+versionsuffix = '-CUDA-%(cudaver)s-deeplearn'
+local_cudasuffix1 = '-CUDA-%(cudaver)s'
+
+homepage = 'https://www.tensorflow.org/'
+description = "An open-source software library for Machine Intelligence"
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'pic': True}
+
+cuda_compute_capabilities = ['3.5', '7.0', '8.0']
+
+builddependencies = [
+    ('Bazel', '5.1.1'),
+    ('protobuf', '3.19.4'),
+    # git 2.x required, see also https://github.com/tensorflow/tensorflow/issues/29053
+    ('git', '2.36.0', '-nodocs'),
+    ('pybind11', '2.9.2'),
+    ('UnZip', '6.0'),
+]
+dependencies = [
+    ('CUDA', '11.7.0', '', SYSTEM),
+    ('cuDNN', '8.4.1.50', local_cudasuffix1, SYSTEM),
+    ('NCCL', '2.12.12', local_cudasuffix1),
+    ('Python', '3.10.4'),
+    ('h5py', '3.7.0'),
+    ('cURL', '7.83.0'),
+    ('dill', '0.3.6'),
+    ('double-conversion', '3.2.0'),
+    ('flatbuffers', '2.0.7'),
+    ('giflib', '5.2.1'),
+    ('hwloc', '2.7.1'),
+    ('ICU', '71.1'),
+    ('JsonCpp', '1.9.5'),
+    ('libjpeg-turbo', '2.1.3'),
+    ('LMDB', '0.9.29'),
+    ('NASM', '2.15.05'),
+    ('nsync', '1.25.0'),
+    ('SQLite', '3.38.3'),
+    ('protobuf-python', '3.19.4'),
+    ('libpng', '1.6.37'),
+    ('snappy', '1.1.9'),
+    ('zlib', '1.2.12'),
+    ('networkx', '2.8.4'),  # required for pythran
+]
+
+use_pip = True
+sanity_pip_check = True
+
+# Dependencies created and updated using findPythonDeps.sh:
+# https://gist.github.com/Flamefire/49426e502cd8983757bd01a08a10ae0d
+exts_list = [
+    ('wrapt', '1.14.1', {
+        'checksums': ['380a85cf89e0e69b7cfbe2ea9f765f004ff419f34194018a6827ac0e3edfed4d'],
+    }),
+    ('termcolor', '1.1.0', {
+        'checksums': ['1d6d69ce66211143803fbc56652b41d73b4a400a2891d7bf7a1cdf4c02de613b'],
+    }),
+    ('tensorflow-estimator', version, {
+        'source_tmpl': 'tensorflow_estimator-%(version)s-py2.py3-none-any.whl',
+        'checksums': ['ea3b64acfff3d9a244f06178c9bdedcbdd3f125b67d0888dba8229498d06468b'],
+    }),
+    ('Werkzeug', '2.2.2', {
+        'checksums': ['7ea2d48322cc7c0f8b3a215ed73eabd7b5d75d0b50e31ab006286ccff9e00b8f'],
+    }),
+    ('tensorboard-plugin-wit', '1.8.1', {
+        'source_tmpl': 'tensorboard_plugin_wit-%(version)s-py3-none-any.whl',
+        'checksums': ['ff26bdd583d155aa951ee3b152b3d0cffae8005dc697f72b44a8e8c2a77a8cbe'],
+    }),
+    ('tensorboard-data-server', '0.6.1', {
+        'source_tmpl': 'tensorboard_data_server-%(version)s-py3-none-any.whl',
+        'checksums': ['809fe9887682d35c1f7d1f54f0f40f98bb1f771b14265b453ca051e2ce58fca7'],
+    }),
+    ('Markdown', '3.4.1', {
+        'checksums': ['3b809086bb6efad416156e00a0da66fe47618a5d6918dd688f53f40c8e4cfeff'],
+    }),
+    ('grpcio', '1.51.1', {
+        'modulename': 'grpc',
+        'preinstallopts': "export GRPC_PYTHON_BUILD_EXT_COMPILER_JOBS=%(parallel)s && ",
+        'checksums': ['e6dfc2b6567b1c261739b43d9c59d201c1b89e017afd9e684d85aa7a186c9f7a'],
+    }),
+    ('oauthlib', '3.2.2', {
+        'checksums': ['9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918'],
+    }),
+    ('requests-oauthlib', '1.3.1', {
+        'checksums': ['75beac4a47881eeb94d5ea5d6ad31ef88856affe2332b9aafb52c6452ccf0d7a'],
+    }),
+    ('rsa', '4.9', {
+        'checksums': ['e38464a49c6c85d7f1351b0126661487a7e0a14a50f1675ec50eb34d4f20ef21'],
+    }),
+    ('pyasn1-modules', '0.2.8', {
+        'checksums': ['905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e'],
+    }),
+    ('cachetools', '5.2.1', {
+        'checksums': ['5991bc0e08a1319bb618d3195ca5b6bc76646a49c21d55962977197b301cc1fe'],
+    }),
+    ('google-auth', '2.16.0', {
+        'modulename': 'google.auth',
+        'checksums': ['ed7057a101af1146f0554a769930ac9de506aeca4fd5af6543ebe791851a9fbd'],
+    }),
+    ('google-auth-oauthlib', '0.4.6', {
+        'checksums': ['a90a072f6993f2c327067bf65270046384cda5a8ecb20b94ea9a687f1f233a7a'],
+    }),
+    ('absl-py', '1.4.0', {
+        'modulename': 'absl',
+        'checksums': ['d2c244d01048ba476e7c080bd2c6df5e141d211de80223460d5b3b8a2a58433d'],
+    }),
+    ('tensorboard', '2.11.1', {
+        'source_tmpl': SOURCE_PY3_WHL,
+        'checksums': ['0c7529f3f43691e8cc2ece8e564c2e103c51ade317c6af626d415239b5088018'],
+    }),
+    ('opt-einsum', '3.3.0', {
+        'source_tmpl': 'opt_einsum-%(version)s.tar.gz',
+        'checksums': ['59f6475f77bbc37dcf7cd748519c0ec60722e91e63ca114e68821c0c54a46549'],
+    }),
+    ('keras', version, {
+        'source_tmpl': SOURCE_WHL,
+        'checksums': ['38c6fff0ea9a8b06a2717736565c92a73c8cd9b1c239e7125ccb188b7848f65e'],
+    }),
+    ('google-pasta', '0.2.0', {
+        'modulename': 'pasta',
+        'checksums': ['c9f2c8dfc8f96d0d5808299920721be30c9eec37f2389f28904f454565c8a16e'],
+    }),
+    ('astunparse', '1.6.3', {
+        'checksums': ['5ad93a8456f0d084c3456d059fd9a92cce667963232cbf763eac3bc5b7940872'],
+    }),
+    # Version <= 0.4.0 required by TF: https://github.com/tensorflow/tensorflow/issues/56244
+    ('gast', '0.4.0', {
+        'checksums': ['40feb7b8b8434785585ab224d1568b857edb18297e5a3047f1ba012bc83b42c1'],
+    }),
+    # (newer) pythran and beniget in SciPy-Bundle require gast 0.5
+    ('beniget', '0.3.0', {
+        'checksums': ['062c893be9cdf87c3144fb15041cce4d81c67107c1591952cd45fdce789a0ff1'],
+    }),
+    ('pythran', '0.9.11', {
+        'checksums': ['a317f91e2aade9f6550dc3bf40b5caeb45b7e012daf27e2b3e4ad928edb01667'],
+    }),
+    # Required by tests
+    ('portpicker', '1.5.2', {
+        'checksums': ['c55683ad725f5c00a41bc7db0225223e8be024b1fa564d039ed3390e4fd48fb3'],
+    }),
+    # System dependencies
+    ('tblib', '1.7.0', {
+        'checksums': ['059bd77306ea7b419d4f76016aef6d7027cc8a0785579b5aad198803435f882c'],
+    }),
+    ('astor', '0.8.1', {
+        'checksums': ['6a6effda93f4e1ce9f618779b2dd1d9d84f1e32812c23a29b3fff6fd7f63fa5e'],
+    }),
+    # Optional profile plugin + dependency
+    ('gviz-api', '1.10.0', {
+        'source_tmpl': 'gviz_api-%(version)s.tar.gz',
+        'checksums': ['846692dd8cc73224fc31b18e41589bd934e1cc05090c6576af4b4b26c2e71b90'],
+    }),
+    ('tensorboard-plugin-profile', '2.11.1', {
+        'source_tmpl': 'tensorboard_plugin_profile-%(version)s.tar.gz',
+        'checksums': ['7a97c02d502fde98a0336aadcab15b37169744d5bf6966af7d576c7a3f0a89f4'],
+    }),
+    (name, version, {
+        'source_tmpl': 'v%(version)s.tar.gz',
+        'source_urls': ['https://github.com/tensorflow/tensorflow/archive/'],
+        'patches': [
+            '%(name)s-2.4.0_dont-use-var-lock.patch',
+            '%(name)s-2.5.0-fix-alias-violation-in-absl.patch',
+            '%(name)s-2.5.0_fix-crash-on-shutdown.patch',
+            '%(name)s-2.8.4_exclude-xnnpack-on-ppc.patch',
+            '%(name)s-2.8.4_resolve-gcc-symlinks.patch',
+            '%(name)s-2.9.1_remove-duplicate-gpu-tests.patch',
+            '%(name)s-%(version)s_disable-avx512-extensions.patch',
+            '%(name)s-%(version)s_fix-eigen-atan-on-PPC.patch',
+            '%(name)s-%(version)s_fix-eigen-gemm-on-PPC.patch',
+            '%(name)s-%(version)s_fix-link-error.patch',
+            '%(name)s-%(version)s_remove-libclang-and-io-gcs-deps.patch',
+            '%(name)s-%(version)s_fix-missing-prefix-zeroes-slurm-nodes.patch',
+        ],
+        'checksums': [
+            {'v2.11.0.tar.gz': '99c732b92b1b37fc243a559e02f9aef5671771e272758aa4aec7f34dc92dac48'},
+            {'TensorFlow-2.4.0_dont-use-var-lock.patch':
+             'b14f2493fd2edf79abd1c4f2dde6c98a3e7d5cb9c25ab9386df874d5f072d6b5'},
+            {'TensorFlow-2.5.0-fix-alias-violation-in-absl.patch':
+             '12454fda3330fb45cd380377e283f04488b40e0b8ae7378e786ddf731a581f75'},
+            {'TensorFlow-2.5.0_fix-crash-on-shutdown.patch':
+             '578c7493221ebd3dc25ca43d63a72cbb28fdf4112b1e2baa7390f25781bd78fd'},
+            {'TensorFlow-2.8.4_exclude-xnnpack-on-ppc.patch':
+             'ebd404ac56cc4ca662483f1f591e62e11749361be57a7ba5f4b2f0d03e829884'},
+            {'TensorFlow-2.8.4_resolve-gcc-symlinks.patch':
+             '43ce9acc6bffff68a31d2263d0064d272999b2e0a2c6546690287cd1c9c90f04'},
+            {'TensorFlow-2.9.1_remove-duplicate-gpu-tests.patch':
+             '6fe50faab28387c622c68dc3fc0cbfb2a51000cd750c1a82f8420b54fcd2509f'},
+            {'TensorFlow-2.11.0_disable-avx512-extensions.patch':
+             'fb8e7694b5d2377cc44e6674ff85a7c50dc725f2f507cbcfda65f129f534b1cc'},
+            {'TensorFlow-2.11.0_fix-eigen-atan-on-PPC.patch':
+             'd9f4779f72ffd2c5f9c5da0a7735328dd25756515edccf603087dba2bf4d1612'},
+            {'TensorFlow-2.11.0_fix-eigen-gemm-on-PPC.patch':
+             '4f18ff0563b0ef8556904db1bb4974f8068bf0d2ee1effb24e0c779eb32517e3'},
+            {'TensorFlow-2.11.0_fix-link-error.patch':
+             '0a2f5c9c5be425f305bdc08f5a5ffce210e66f6ad4120d94ea0209246fc0449f'},
+            {'TensorFlow-2.11.0_remove-libclang-and-io-gcs-deps.patch':
+             '21d5723ab4e9a3be349cf3d57bb55cbe43e28785a8c8b19c52cee9dcc4dcf0de'},
+        ],
+        'test_script': 'TensorFlow-2.x_mnist-test.py',
+        'test_tag_filters_cpu': '-gpu,-tpu,-no_cuda_on_cpu_tap,'
+                                '-no_pip,-no_oss,-oss_serial,-benchmark-test,-v1only',
+        'test_tag_filters_gpu': 'gpu,-no_gpu,-nogpu,-gpu_cupti,-no_cuda11,'
+                                '-no_pip,-no_oss,-oss_serial,-benchmark-test,-v1only',
+        'test_targets': [
+            '//tensorflow/core/...',
+            '-//tensorflow/core:example_java_proto',
+            '-//tensorflow/core/example:example_protos_closure',
+            '//tensorflow/cc/...',
+            '//tensorflow/c/...',
+            '//tensorflow/python/...',
+            '-//tensorflow/c/eager:c_api_test_gpu',
+            '-//tensorflow/c/eager:c_api_distributed_test',
+            '-//tensorflow/c/eager:c_api_distributed_test_gpu',
+            '-//tensorflow/c/eager:c_api_cluster_test_gpu',
+            '-//tensorflow/c/eager:c_api_remote_function_test_gpu',
+            '-//tensorflow/c/eager:c_api_remote_test_gpu',
+            '-//tensorflow/core/common_runtime:collective_param_resolver_local_test',
+            '-//tensorflow/core/common_runtime:mkl_layout_pass_test',
+            '-//tensorflow/core/kernels/mkl:mkl_fused_ops_test',
+            '-//tensorflow/core/kernels/mkl:mkl_fused_batch_norm_op_test',
+            '-//tensorflow/core/ir/importexport/tests/roundtrip/...',
+        ],
+        'testopts': "--test_timeout=3600 --test_size_filters=small",
+        'testopts_gpu': "--test_timeout=3600 --test_size_filters=small "
+                        "--run_under=//tensorflow/tools/ci_build/gpu_build:parallel_gpu_execute",
+        'with_xla': True,
+    }),
+]
+
+moduleclass = 'lib'
diff --git a/t/Tophat/Tophat-2.1.2-foss-2022a.eb b/t/TopHat/TopHat-2.1.2-foss-2022a.eb
similarity index 100%
rename from t/Tophat/Tophat-2.1.2-foss-2022a.eb
rename to t/TopHat/TopHat-2.1.2-foss-2022a.eb
diff --git a/t/tbb/tbb-2020.3-GCCcore-11.3.0.eb b/t/tbb/tbb-2020.3-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..31a8d3e
--- /dev/null
+++ b/t/tbb/tbb-2020.3-GCCcore-11.3.0.eb
@@ -0,0 +1,19 @@
+name = 'tbb'
+version = '2020.3'
+
+homepage = 'https://github.com/oneapi-src/oneTBB'
+description = """Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily write parallel C++ programs that
+ take full advantage of multicore performance, that are portable, composable and have future-proof scalability."""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/oneapi-src/oneTBB/archive/']
+sources = ['v%(version)s.tar.gz']
+checksums = ['ebc4f6aa47972daed1f7bf71d100ae5bf6931c2e3144cf299c8cc7d041dca2f3']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('CMake', '3.23.1'),
+]
+
+moduleclass = 'lib'
diff --git a/t/tbl2asn/tbl2asn-20220427-linux64.eb b/t/tbl2asn/tbl2asn-20220427-linux64.eb
index 8cb78e8..fc82568 100644
--- a/t/tbl2asn/tbl2asn-20220427-linux64.eb
+++ b/t/tbl2asn/tbl2asn-20220427-linux64.eb
@@ -35,6 +35,6 @@ sanity_check_paths = {
     'dirs': [],
 }
 
-postinstallcmds = ["chmod +x %(installdir)s/bin/tbl2asn"]
+postinstallcmds = ["chmod +x %(installdir)s/bin/tbl2asn","mkdir %(installdir)s/lib","ln -s /usr/lib64/libidn.so.12 %(installdir)s/lib/libidn.so.11"]
 
 moduleclass = 'bio'
diff --git a/t/torchvision/torchvision-0.13.1-foss-2022a-CUDA-11.7.0.eb b/t/torchvision/torchvision-0.13.1-foss-2022a-CUDA-11.7.0.eb
new file mode 100644
index 0000000..b3e2810
--- /dev/null
+++ b/t/torchvision/torchvision-0.13.1-foss-2022a-CUDA-11.7.0.eb
@@ -0,0 +1,23 @@
+name = 'torchvision'
+version = '0.13.1'
+versionsuffix = '-CUDA-%(cudaver)s'
+
+homepage = 'https://github.com/pytorch/vision'
+description = " Datasets, Transforms and Models specific to Computer Vision"
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+source_urls = ['https://github.com/pytorch/vision/archive']
+sources = ['v%(version)s.tar.gz']
+checksums = ['c32fab734e62c7744dadeb82f7510ff58cc3bca1189d17b16aa99b08afc42249']
+
+builddependencies = [('CMake', '3.23.1')]
+
+dependencies = [
+    ('CUDA', '11.7.0', '', SYSTEM),
+    ('Python', '3.10.4'),
+    ('Pillow-SIMD', '9.2.0'),
+    ('PyTorch', '1.12.1', '-CUDA-%(cudaver)s'),
+]
+
+moduleclass = 'vis'
diff --git a/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-11.7.0.eb b/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-11.7.0.eb
new file mode 100644
index 0000000..5c5366f
--- /dev/null
+++ b/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-11.7.0.eb
@@ -0,0 +1,41 @@
+easyblock = 'EB_UCX_Plugins'
+
+name = 'UCX-CUDA'
+version = '1.14.1'
+versionsuffix = '-CUDA-%(cudaver)s'
+
+homepage = 'http://www.openucx.org/'
+description = """Unified Communication X
+An open-source production grade communication framework for data centric
+and high-performance applications
+
+This module adds the UCX CUDA support.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s']
+sources = [{'filename': 'ucx-%(version)s.tar.gz', 'alt_location': 'UCX'}]
+patches = ['%(name)s-1.11.0_link_against_existing_UCX_libs.patch']
+checksums = [
+    {'ucx-1.14.1.tar.gz': 'baa0634cafb269a3112f626eb226bcd2ca8c9fcf0fec3b8e2a3553baad5f77aa'},
+    {'UCX-CUDA-1.11.0_link_against_existing_UCX_libs.patch':
+     '457187fa020e526609ba91e7750c9941d57bd57d60d6eed317b40ad8824aca93'},
+]
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('Autotools', '20220317'),
+    ('pkgconf', '1.9.5'),
+]
+
+dependencies = [
+    ('zlib', '1.2.13'),
+    ('UCX', version),
+    ('CUDA', '11.7.0', '', SYSTEM),
+    ('GDRCopy', '2.3'),
+]
+
+
+moduleclass = 'lib'
diff --git a/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb b/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb
new file mode 100644
index 0000000..6e15656
--- /dev/null
+++ b/u/UCX-CUDA/UCX-CUDA-1.14.1-GCCcore-11.3.0-CUDA-12.2.0.eb
@@ -0,0 +1,41 @@
+easyblock = 'EB_UCX_Plugins'
+
+name = 'UCX-CUDA'
+version = '1.14.1'
+versionsuffix = '-CUDA-%(cudaver)s'
+
+homepage = 'http://www.openucx.org/'
+description = """Unified Communication X
+An open-source production grade communication framework for data centric
+and high-performance applications
+
+This module adds the UCX CUDA support.
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s']
+sources = [{'filename': 'ucx-%(version)s.tar.gz', 'alt_location': 'UCX'}]
+patches = ['%(name)s-1.11.0_link_against_existing_UCX_libs.patch']
+checksums = [
+    {'ucx-1.14.1.tar.gz': 'baa0634cafb269a3112f626eb226bcd2ca8c9fcf0fec3b8e2a3553baad5f77aa'},
+    {'UCX-CUDA-1.11.0_link_against_existing_UCX_libs.patch':
+     '457187fa020e526609ba91e7750c9941d57bd57d60d6eed317b40ad8824aca93'},
+]
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('Autotools', '20220317'),
+    ('pkgconf', '1.9.5'),
+]
+
+dependencies = [
+    ('zlib', '1.2.13'),
+    ('UCX', version),
+    ('CUDA', '12.2.0', '', SYSTEM),
+    ('GDRCopy', '2.3'),
+]
+
+
+moduleclass = 'lib'
diff --git a/u/UCX/UCX-1.14.1-GCCcore-11.3.0.eb b/u/UCX/UCX-1.14.1-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..4f1ba04
--- /dev/null
+++ b/u/UCX/UCX-1.14.1-GCCcore-11.3.0.eb
@@ -0,0 +1,52 @@
+easyblock = 'ConfigureMake'
+
+name = 'UCX'
+version = '1.14.1'
+
+homepage = 'https://www.openucx.org/'
+description = """Unified Communication X
+An open-source production grade communication framework for data centric
+and high-performance applications
+"""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+toolchainopts = {'pic': True}
+
+source_urls = ['https://github.com/openucx/ucx/releases/download/v%(version)s']
+sources = ['%(namelower)s-%(version)s.tar.gz']
+patches = [
+    'UCX-1.13.1-dynamic_modules.patch',
+]
+checksums = [
+    {'ucx-1.14.1.tar.gz': 'baa0634cafb269a3112f626eb226bcd2ca8c9fcf0fec3b8e2a3553baad5f77aa'},
+    {'UCX-1.13.1-dynamic_modules.patch': '00874687bd90b795fff61aaa183f6c6bea2210aa1003b28f23d9ebf7066f8782'},
+]
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('Autotools', '20220317'),
+    ('pkgconf', '1.9.5'),
+]
+
+osdependencies = [OS_PKG_IBVERBS_DEV]
+
+dependencies = [
+    ('zlib', '1.2.13'),
+    ('numactl', '2.0.14'),
+]
+
+configure_cmd = "contrib/configure-release"
+
+configopts = '--enable-optimizations --enable-cma --enable-mt --with-verbs '
+configopts += '--without-java --without-go --disable-doxygen-doc '
+
+buildopts = 'V=1'
+
+sanity_check_paths = {
+    'files': ['bin/ucx_info', 'bin/ucx_perftest', 'bin/ucx_read_profile'],
+    'dirs': ['include', 'lib', 'share']
+}
+
+sanity_check_commands = ["ucx_info -d"]
+
+moduleclass = 'lib'
diff --git a/v/VSEARCH/VSEARCH-2.22.1-GCC-11.3.0.eb b/v/VSEARCH/VSEARCH-2.22.1-GCC-11.3.0.eb
new file mode 100644
index 0000000..693720d
--- /dev/null
+++ b/v/VSEARCH/VSEARCH-2.22.1-GCC-11.3.0.eb
@@ -0,0 +1,40 @@
+easyblock = 'ConfigureMake'
+
+name = 'VSEARCH'
+version = '2.22.1'
+
+homepage = 'https://github.com/torognes/vsearch'
+description = """VSEARCH supports de novo and reference based chimera detection,
+ clustering, full-length and prefix dereplication, rereplication,
+ reverse complementation, masking, all-vs-all pairwise global alignment,
+ exact and global alignment searching, shuffling, subsampling and sorting.
+ It also supports FASTQ file analysis, filtering,
+ conversion and merging of paired-end reads."""
+
+toolchain = {'name': 'GCC', 'version': '11.3.0'}
+
+source_urls = ['https://github.com/torognes/vsearch/archive']
+sources = ['v%(version)s.tar.gz']
+checksums = ['c62bf69e7cc3d011a12e3b522ba8c0c91fb90deea782359e9569677d0c991778']
+
+builddependencies = [
+    ('Autotools', '20220317'),
+]
+
+dependencies = [
+    ('zlib', '1.2.12'),
+    ('bzip2', '1.0.8'),
+]
+
+preconfigopts = './autogen.sh &&'
+
+configopts = '--disable-pdfman '
+
+sanity_check_paths = {
+    'files': ['bin/vsearch'],
+    'dirs': [],
+}
+
+sanity_check_commands = ['vsearch --help']
+
+moduleclass = 'bio'
diff --git a/v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb b/v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb
new file mode 100644
index 0000000..c420093
--- /dev/null
+++ b/v/VTK/VTK-8.2.0-foss-2019b-Python-3.7.4.eb
@@ -0,0 +1,96 @@
+##
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
+# Authors::   Fotis Georgatos <fotis@cern.ch>
+# License::   MIT/GPL
+#
+# This work implements a part of the HPCBIOS project and is a component of the policy:
+# https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-97.html
+##
+
+easyblock = 'CMakeMake'
+
+name = 'VTK'
+version = '8.2.0'
+versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://www.vtk.org'
+description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for
+ 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several
+ interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization
+ algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques
+ such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation."""
+
+toolchain = {'name': 'foss', 'version': '2019b'}
+toolchainopts = {'usempi': True}
+
+source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s']
+sources = [
+    SOURCE_TAR_GZ,
+    '%(name)sData-%(version)s.tar.gz',
+]
+patches = [('vtk-version.egg-info', '.')]
+checksums = [
+    '34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb',  # VTK-8.2.0.tar.gz
+    'd1ff312f7a63d90d8b7033a99109801f16a462ae411d648642838aae04bcc21e',  # VTKData-8.2.0.tar.gz
+    '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b',  # vtk-version.egg-info
+]
+
+builddependencies = [('CMake', '3.16.1')]
+
+dependencies = [
+    ('Python', '3.7.4'),
+    ('SciPy-bundle', '2019.10', '-Python-3.7.4'),
+    ('XZ', '5.2.4'),
+    ('HDF5', '1.10.5'),
+    ('netCDF', '4.7.1'),
+    ('libGLU', '9.0.1'),
+    ('X11', '20190717'),
+]
+
+separate_build_dir = True
+
+# Third party modules
+configopts = "-DVTK_USE_SYSTEM_MPI4PY=ON "
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+# OpenGL
+configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
+configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
+configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include "
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=%(pyver)s "
+configopts += "-DPYTHON_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)sm "
+configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython%%(pyshortver)sm.%s " % SHLIB_EXT
+# Other
+configopts += "-DVTK_Group_MPI:BOOL=ON "
+configopts += "-DCMAKE_INSTALL_LIBDIR=lib"
+
+preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
+
+# Install a egg-info file so VTK is more python friendly, required for mayavi
+local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info'
+local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info'
+postinstallcmds = [
+    'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest),
+]
+
+modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']}
+
+sanity_check_paths = {
+    'files': ['bin/vtk%s-%%(version_major_minor)s' % x for x in
+              ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +
+             ['bin/pvtkpython', 'bin/vtkpython'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'],
+}
+
+sanity_check_commands = [
+    ('python', "-c 'import %(namelower)s'"),
+    ('python', "-c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'"),
+]
+
+
+moduleclass = 'vis'
diff --git a/v/VTK/VTK-8.2.0-foss-2022a-Python-2.7.18.eb b/v/VTK/VTK-8.2.0-foss-2022a-Python-2.7.18.eb
new file mode 100644
index 0000000..0b4ed17
--- /dev/null
+++ b/v/VTK/VTK-8.2.0-foss-2022a-Python-2.7.18.eb
@@ -0,0 +1,103 @@
+##
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
+# Authors::   Fotis Georgatos <fotis@cern.ch>
+# License::   MIT/GPL
+#
+# This work implements a part of the HPCBIOS project and is a component of the policy:
+# https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-97.html
+##
+
+easyblock = 'CMakeMake'
+
+name = 'VTK'
+version = '8.2.0'
+versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://www.vtk.org'
+description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for
+ 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several
+ interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization
+ algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques
+ such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'usempi': True, 'cstd': 'c++11' }
+
+source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s']
+sources = [
+    SOURCE_TAR_GZ,
+    '%(name)sData-%(version)s.tar.gz',
+]
+
+patches = ['VTK-8.2.0_gcc10-fix.patch',
+	  ('vtk-version.egg-info', '.'),
+]
+
+#checksums = [
+#    '34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb',  # VTK-8.2.0.tar.gz
+#    'd1ff312f7a63d90d8b7033a99109801f16a462ae411d648642838aae04bcc21e',  # VTKData-8.2.0.tar.gz
+#    '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b',  # vtk-version.egg-info
+#    '4f1d2c2f0faa06551384b08356142a998a322008891472a72298152eeaa7038b',  # VTK-8.2.0_gcc10-fix.patch
+#]
+
+builddependencies = [('CMake', '3.15.3')]
+
+dependencies = [
+    ('Python', '2.7.18'),
+    ('SciPy-bundle', '2020.03', '-Python-2.7.18'),
+    ('XZ', '5.2.5'),
+    ('HDF5', '1.12.2'),
+    ('netCDF', '4.9.0'),
+    ('libGLU', '9.0.2'),
+    ('X11', '20220504'),
+]
+
+separate_build_dir = True
+
+# Third party modules
+configopts = "-DVTK_USE_SYSTEM_MPI4PY=ON "
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+configopts += "-DVTK_USE_SYSTEM_PNG=ON "
+# OpenGL
+configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
+configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
+configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include "
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=%(pyver)s "
+configopts += "-DPYTHON_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)s "
+configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython%%(pyshortver)s.%s " % SHLIB_EXT
+# Other
+configopts += "-DVTK_Group_MPI:BOOL=ON "
+configopts += "-DCMAKE_INSTALL_LIBDIR=lib"
+
+preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
+
+# Install a egg-info file so VTK is more python friendly, required for mayavi
+local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info'
+local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info'
+postinstallcmds = [
+    'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest),
+]
+
+modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']}
+
+sanity_check_paths = {
+    'files': ['bin/vtk%s-%%(version_major_minor)s' % x for x in
+              ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +
+             ['bin/pvtkpython', 'bin/vtkpython'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'],
+}
+
+sanity_check_commands = [
+    ('python', "-c 'import %(namelower)s'"),
+    ('python', "-c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'"),
+]
+
+#parallel = 1
+
+moduleclass = 'vis'
diff --git a/v/VTK/VTK-8.2.0-foss-2022a.eb b/v/VTK/VTK-8.2.0-foss-2022a.eb
new file mode 100644
index 0000000..e5d5267
--- /dev/null
+++ b/v/VTK/VTK-8.2.0-foss-2022a.eb
@@ -0,0 +1,106 @@
+##
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
+# Authors::   Fotis Georgatos <fotis@cern.ch>
+# License::   MIT/GPL
+#
+# This work implements a part of the HPCBIOS project and is a component of the policy:
+# https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-97.html
+##
+
+easyblock = 'CMakeMake'
+
+name = 'VTK'
+version = '8.2.0'
+
+homepage = 'https://www.vtk.org'
+description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for
+ 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several
+ interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization
+ algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques
+ such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+toolchainopts = {'usempi': True}
+
+source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s']
+sources = [
+    SOURCE_TAR_GZ,
+    '%(name)sData-%(version)s.tar.gz',
+]
+patches = [
+    'VTK-8.2.0_python_3.8_compatibility.patch',
+    'VTK-8.2.0_gcc10-fix.patch',
+    ('vtk-version.egg-info', '.'),
+]
+checksums = [
+    '34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb',  # VTK-8.2.0.tar.gz
+    'd1ff312f7a63d90d8b7033a99109801f16a462ae411d648642838aae04bcc21e',  # VTKData-8.2.0.tar.gz
+    'a7586f60501de145d4c31e48aa0589547d9fe7a39f96ab31dae8e82aa5fb4403',  # VTK-8.2.0_python_3.8_compatibility.patch
+    '4f1d2c2f0faa06551384b08356142a998a322008891472a72298152eeaa7038b',  # VTK-8.2.0_gcc10-fix.patch
+    '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b',  # vtk-version.egg-info
+]
+
+builddependencies = [('CMake', '3.23.1')]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('XZ', '5.2.5'),
+    ('HDF5', '1.12.2'),
+    ('netCDF', '4.9.0'),
+    ('libGLU', '9.0.2'),
+    ('X11', '20220504'),
+]
+
+separate_build_dir = True
+
+# Third party modules
+configopts = "-DVTK_USE_SYSTEM_MPI4PY=ON "
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+configopts += "-DVTK_USE_SYSTEM_PNG=ON "
+# OpenGL
+configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
+configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
+configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include "
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=%(pyver)s "
+configopts += "-DPYTHON_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)s "
+configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython%%(pyshortver)s.%s " % SHLIB_EXT
+# Other
+configopts += "-DVTK_Group_MPI:BOOL=ON "
+configopts += "-DCMAKE_INSTALL_LIBDIR=lib"
+
+preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
+
+# Install a egg-info file so VTK is more python friendly, required for mayavi
+local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info'
+local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info'
+postinstallcmds = [
+    'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest),
+]
+
+modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']}
+
+local_vtk_exec = ['vtk%s-%%(version_major_minor)s' % x
+                  for x in ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']]
+local_vtk_exec += ['vtkpython', 'pvtkpython']
+local_vtk_libs = ['CommonCore', 'IONetCDF', 'ParallelMPI', 'RenderingOpenGL2']
+
+sanity_check_paths = {
+    'files': ['bin/%s' % x for x in local_vtk_exec] +
+             ['lib/libvtk%s-%%(version_major_minor)s.%s' % (l, SHLIB_EXT) for l in local_vtk_libs],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'],
+}
+
+sanity_check_commands = [
+    ('python', "-c 'import %(namelower)s'"),
+    ('python', "-c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'"),
+]
+
+
+moduleclass = 'vis'
diff --git a/v/VTK/VTK-8.2.0-fosscuda-2022a.eb b/v/VTK/VTK-8.2.0-fosscuda-2022a.eb
new file mode 100644
index 0000000..d8a2284
--- /dev/null
+++ b/v/VTK/VTK-8.2.0-fosscuda-2022a.eb
@@ -0,0 +1,96 @@
+##
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+#
+# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
+# Authors::   Fotis Georgatos <fotis@cern.ch>
+# License::   MIT/GPL
+#
+# This work implements a part of the HPCBIOS project and is a component of the policy:
+# https://hpcbios.readthedocs.org/en/latest/HPCBIOS_2012-97.html
+##
+
+easyblock = 'CMakeMake'
+
+name = 'VTK'
+version = '8.2.0'
+versionsuffix = '-Python-%(pyver)s'
+
+homepage = 'https://www.vtk.org'
+description = """The Visualization Toolkit (VTK) is an open-source, freely available software system for
+ 3D computer graphics, image processing and visualization. VTK consists of a C++ class library and several
+ interpreted interface layers including Tcl/Tk, Java, and Python. VTK supports a wide variety of visualization
+ algorithms including: scalar, vector, tensor, texture, and volumetric methods; and advanced modeling techniques
+ such as: implicit modeling, polygon reduction, mesh smoothing, cutting, contouring, and Delaunay triangulation."""
+
+toolchain = {'name': 'fosscuda', 'version': '2019b'}
+toolchainopts = {'usempi': True}
+
+source_urls = ['https://www.vtk.org/files/release/%(version_major_minor)s']
+sources = [
+    SOURCE_TAR_GZ,
+    '%(name)sData-%(version)s.tar.gz',
+]
+patches = [('vtk-version.egg-info', '.')]
+checksums = [
+    '34c3dc775261be5e45a8049155f7228b6bd668106c72a3c435d95730d17d57bb',  # VTK-8.2.0.tar.gz
+    'd1ff312f7a63d90d8b7033a99109801f16a462ae411d648642838aae04bcc21e',  # VTKData-8.2.0.tar.gz
+    '787b82415ae7a4a1f815b4db0e25f7abc809a05fc85d7d219627f3a7e5d3867b',  # vtk-version.egg-info
+]
+
+builddependencies = [('CMake', '3.16.1')]
+
+dependencies = [
+    ('Python', '3.7.4'),
+    ('SciPy-bundle', '2019.10', '-Python-3.7.4'),
+    ('XZ', '5.2.4'),
+    ('HDF5', '1.10.5'),
+    ('netCDF', '4.7.1'),
+    ('libGLU', '9.0.1'),
+    ('X11', '20190717'),
+]
+
+separate_build_dir = True
+
+# Third party modules
+configopts = "-DVTK_USE_SYSTEM_MPI4PY=ON "
+configopts += "-DVTK_USE_SYSTEM_LZMA=ON "
+configopts += "-DVTK_USE_SYSTEM_HDF5=ON "
+configopts += "-DVTK_USE_SYSTEM_NETCDF=ON "
+# OpenGL
+configopts += "-DOPENGL_glu_LIBRARY=$EBROOTLIBGLU/lib/libGLU.%s " % SHLIB_EXT
+configopts += "-DOPENGL_gl_LIBRARY=$EBROOTMESA/lib/libGL.%s " % SHLIB_EXT
+configopts += "-DOPENGL_INCLUDE_DIR=$EBROOTMESA/include "
+# Python
+configopts += "-DVTK_WRAP_PYTHON=ON "
+configopts += "-DVTK_PYTHON_VERSION=%(pyver)s "
+configopts += "-DPYTHON_INCLUDE_DIR=$EBROOTPYTHON/include/python%(pyshortver)sm "
+configopts += "-DPYTHON_LIBRARY=$EBROOTPYTHON/lib/libpython%%(pyshortver)sm.%s " % SHLIB_EXT
+# Other
+configopts += "-DVTK_Group_MPI:BOOL=ON "
+configopts += "-DCMAKE_INSTALL_LIBDIR=lib"
+
+preinstallopts = "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && "
+
+# Install a egg-info file so VTK is more python friendly, required for mayavi
+local_egg_info_src = '%(builddir)s/VTK-%(version)s/vtk-version.egg-info'
+local_egg_info_dest = '%(installdir)s/lib/python%(pyshortver)s/site-packages/vtk-%(version)s.egg-info'
+postinstallcmds = [
+    'sed "s/#VTK_VERSION#/%%(version)s/" %s > %s' % (local_egg_info_src, local_egg_info_dest),
+]
+
+modextrapaths = {'PYTHONPATH': ['lib/python%(pyshortver)s/site-packages']}
+
+sanity_check_paths = {
+    'files': ['bin/vtk%s-%%(version_major_minor)s' % x for x in
+              ['WrapJava', 'ParseJava', 'WrapPythonInit', 'WrapPython', 'WrapHierarchy']] +
+             ['bin/pvtkpython', 'bin/vtkpython'],
+    'dirs': ['lib/python%(pyshortver)s/site-packages/', 'include/vtk-%(version_major_minor)s'],
+}
+
+sanity_check_commands = [
+    ('python', "-c 'import %(namelower)s'"),
+    ('python', "-c 'import pkg_resources; pkg_resources.get_distribution(\"vtk\")'"),
+]
+
+
+moduleclass = 'vis'
diff --git a/v/VTK/VTK-8.2.0_gcc10-fix.patch b/v/VTK/VTK-8.2.0_gcc10-fix.patch
new file mode 100644
index 0000000..73180e0
--- /dev/null
+++ b/v/VTK/VTK-8.2.0_gcc10-fix.patch
@@ -0,0 +1,72 @@
+exodusII changes from https://gitlab.kitware.com/vtk/vtk/-/merge_requests/6420
+VTKGenerateExportHeader.cmake changes from https://gitlab.kitware.com/vtk/vtk/-/issues/17775#note_794604
+Patch added by Simon Branford (University of Birmingham)
+--- a/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c
++++ b/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c
+@@ -216,5 +216,5 @@ int ex_create_par_int(const char *path, int cmode, int *comp_ws, int *io_ws, MPI
+  * Prevent warning in some versions of ranlib(1) because the object
+  * file has no symbols.
+  */
+-const char exodus_unused_symbol_dummy_1;
++const char exodus_unused_symbol_dummy_ex_create_par;
+ #endif
+diff --git a/src/ex_open_par.c b/src/ex_open_par.c
+index b2faa22c294..9df4818767d 100644
+--- a/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c
++++ b/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c
+@@ -459,5 +459,5 @@ int ex_open_par_int(const char *path, int mode, int *comp_ws, int *io_ws, float
+  * Prevent warning in some versions of ranlib(1) because the object
+  * file has no symbols.
+  */
+-const char exodus_unused_symbol_dummy_1;
++const char exodus_unused_symbol_dummy_ex_open_par;
+ #endif
+--- a/CMake/VTKGenerateExportHeader.cmake	2022-01-28 11:49:28.902123000 +0000
++++ b/CMake/VTKGenerateExportHeader.cmake	2022-01-28 12:27:17.901428104 +0000
+@@ -170,37 +170,17 @@
+ 
+ macro(_vtk_test_compiler_hidden_visibility)
+ 
+-  if(CMAKE_COMPILER_IS_GNUCXX)
+-    execute_process(COMMAND ${CMAKE_C_COMPILER} --version
+-      OUTPUT_VARIABLE _gcc_version_info
+-      ERROR_VARIABLE _gcc_version_info)
+-    string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
+-      _gcc_version "${_gcc_version_info}")
+-    # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
+-    # patch level, handle this here:
+-    if(NOT _gcc_version)
+-      string(REGEX REPLACE ".*\\(GCC\\).*([34]\\.[0-9]).*" "\\1.0"
+-        _gcc_version "${_gcc_version_info}")
+-    endif()
+-
+-    if(_gcc_version VERSION_LESS "4.2")
+-      set(GCC_TOO_OLD TRUE)
+-    endif()
++  if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.2")
++    set(GCC_TOO_OLD TRUE)
++    message(WARNING "GCC version older than 4.2")
++  elseif(CMAKE_COMPILER_IS_GNUCC AND CMAKE_C_COMPILER_VERSION VERSION_LESS "4.2")
++    set(GCC_TOO_OLD TRUE)
++    message(WARNING "GCC version older than 4.2")
++  elseif(CMAKE_CXX_COMPILER_ID MATCHES Intel AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "12.0")
++    set(_INTEL_TOO_OLD TRUE)
++    message(WARNING "Intel compiler older than 12.0")
+   endif()
+ 
+-  if(CMAKE_CXX_COMPILER_ID MATCHES "Intel")
+-    execute_process(COMMAND ${CMAKE_CXX_COMPILER} -V
+-      OUTPUT_VARIABLE _intel_version_info
+-      ERROR_VARIABLE _intel_version_info)
+-    string(REGEX REPLACE ".*Version ([0-9]+(\\.[0-9]+)+).*" "\\1"
+-      _intel_version "${_intel_version_info}")
+-
+-    if(_intel_version VERSION_LESS "12.0")
+-      set(_INTEL_TOO_OLD TRUE)
+-    endif()
+-  endif()
+-
+-
+   # Exclude XL here because it misinterprets -fvisibility=hidden even though
+   # the check_cxx_compiler_flag passes
+   # http://www.cdash.org/CDash/testDetails.php?test=109109951&build=1419259
diff --git a/v/VTK/VTK-8.2.0_gcc10-fix.patch.old b/v/VTK/VTK-8.2.0_gcc10-fix.patch.old
new file mode 100644
index 0000000..73180e0
--- /dev/null
+++ b/v/VTK/VTK-8.2.0_gcc10-fix.patch.old
@@ -0,0 +1,72 @@
+exodusII changes from https://gitlab.kitware.com/vtk/vtk/-/merge_requests/6420
+VTKGenerateExportHeader.cmake changes from https://gitlab.kitware.com/vtk/vtk/-/issues/17775#note_794604
+Patch added by Simon Branford (University of Birmingham)
+--- a/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c
++++ b/ThirdParty/exodusII/vtkexodusII/src/ex_create_par.c
+@@ -216,5 +216,5 @@ int ex_create_par_int(const char *path, int cmode, int *comp_ws, int *io_ws, MPI
+  * Prevent warning in some versions of ranlib(1) because the object
+  * file has no symbols.
+  */
+-const char exodus_unused_symbol_dummy_1;
++const char exodus_unused_symbol_dummy_ex_create_par;
+ #endif
+diff --git a/src/ex_open_par.c b/src/ex_open_par.c
+index b2faa22c294..9df4818767d 100644
+--- a/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c
++++ b/ThirdParty/exodusII/vtkexodusII/src/ex_open_par.c
+@@ -459,5 +459,5 @@ int ex_open_par_int(const char *path, int mode, int *comp_ws, int *io_ws, float
+  * Prevent warning in some versions of ranlib(1) because the object
+  * file has no symbols.
+  */
+-const char exodus_unused_symbol_dummy_1;
++const char exodus_unused_symbol_dummy_ex_open_par;
+ #endif
+--- a/CMake/VTKGenerateExportHeader.cmake	2022-01-28 11:49:28.902123000 +0000
++++ b/CMake/VTKGenerateExportHeader.cmake	2022-01-28 12:27:17.901428104 +0000
+@@ -170,37 +170,17 @@
+ 
+ macro(_vtk_test_compiler_hidden_visibility)
+ 
+-  if(CMAKE_COMPILER_IS_GNUCXX)
+-    execute_process(COMMAND ${CMAKE_C_COMPILER} --version
+-      OUTPUT_VARIABLE _gcc_version_info
+-      ERROR_VARIABLE _gcc_version_info)
+-    string(REGEX MATCH "[3-9]\\.[0-9]\\.[0-9]*"
+-      _gcc_version "${_gcc_version_info}")
+-    # gcc on mac just reports: "gcc (GCC) 3.3 20030304 ..." without the
+-    # patch level, handle this here:
+-    if(NOT _gcc_version)
+-      string(REGEX REPLACE ".*\\(GCC\\).*([34]\\.[0-9]).*" "\\1.0"
+-        _gcc_version "${_gcc_version_info}")
+-    endif()
+-
+-    if(_gcc_version VERSION_LESS "4.2")
+-      set(GCC_TOO_OLD TRUE)
+-    endif()
++  if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.2")
++    set(GCC_TOO_OLD TRUE)
++    message(WARNING "GCC version older than 4.2")
++  elseif(CMAKE_COMPILER_IS_GNUCC AND CMAKE_C_COMPILER_VERSION VERSION_LESS "4.2")
++    set(GCC_TOO_OLD TRUE)
++    message(WARNING "GCC version older than 4.2")
++  elseif(CMAKE_CXX_COMPILER_ID MATCHES Intel AND CMAKE_CXX_COMPILER_VERSION VERSION_LESS "12.0")
++    set(_INTEL_TOO_OLD TRUE)
++    message(WARNING "Intel compiler older than 12.0")
+   endif()
+ 
+-  if(CMAKE_CXX_COMPILER_ID MATCHES "Intel")
+-    execute_process(COMMAND ${CMAKE_CXX_COMPILER} -V
+-      OUTPUT_VARIABLE _intel_version_info
+-      ERROR_VARIABLE _intel_version_info)
+-    string(REGEX REPLACE ".*Version ([0-9]+(\\.[0-9]+)+).*" "\\1"
+-      _intel_version "${_intel_version_info}")
+-
+-    if(_intel_version VERSION_LESS "12.0")
+-      set(_INTEL_TOO_OLD TRUE)
+-    endif()
+-  endif()
+-
+-
+   # Exclude XL here because it misinterprets -fvisibility=hidden even though
+   # the check_cxx_compiler_flag passes
+   # http://www.cdash.org/CDash/testDetails.php?test=109109951&build=1419259
diff --git a/v/VTK/VTK-8.2.0_python_3.8_compatibility.patch b/v/VTK/VTK-8.2.0_python_3.8_compatibility.patch
new file mode 100644
index 0000000..60134b1
--- /dev/null
+++ b/v/VTK/VTK-8.2.0_python_3.8_compatibility.patch
@@ -0,0 +1,176 @@
+From 257b9d7b18d5f3db3fe099dc18f230e23f7dfbab Mon Sep 17 00:00:00 2001
+From: David Gobbi <david.gobbi@gmail.com>
+Date: Tue, 20 Aug 2019 17:02:24 -0600
+Subject: [PATCH] Compatibility for Python 3.8
+
+The PyTypeObject struct was modified in Python 3.8, this change is
+required to avoid compile errors.
+---
+ .../PythonInterpreter/vtkPythonStdStreamCaptureHelper.h   | 6 ++++++
+ Wrapping/PythonCore/PyVTKMethodDescriptor.cxx             | 2 +-
+ Wrapping/PythonCore/PyVTKNamespace.cxx                    | 2 +-
+ Wrapping/PythonCore/PyVTKReference.cxx                    | 8 ++++----
+ Wrapping/PythonCore/PyVTKTemplate.cxx                     | 2 +-
+ Wrapping/PythonCore/vtkPythonCompatibility.h              | 8 +++++++-
+ Wrapping/Tools/vtkWrapPythonClass.c                       | 2 +-
+ Wrapping/Tools/vtkWrapPythonEnum.c                        | 2 +-
+ Wrapping/Tools/vtkWrapPythonType.c                        | 2 +-
+ 9 files changed, 23 insertions(+), 11 deletions(-)
+
+diff --git a/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h b/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
+index b1c12c83de..14ccfbe928 100644
+--- a/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
++++ b/Utilities/PythonInterpreter/vtkPythonStdStreamCaptureHelper.h
+@@ -140,6 +140,12 @@ static PyTypeObject vtkPythonStdStreamCaptureHelperType = {
+ #if PY_VERSION_HEX >= 0x03040000
+   0, // tp_finalize
+ #endif
++#if PY_VERSION_HEX >= 0x03080000
++  0, // tp_vectorcall
++#if PY_VERSION_HEX < 0x03090000
++  0, // tp_print
++#endif
++#endif
+ };
+ 
+ static PyObject* vtkWrite(PyObject* self, PyObject* args)
+diff --git a/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx b/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
+index 2b0d443537..3840038498 100644
+--- a/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
++++ b/Wrapping/PythonCore/PyVTKMethodDescriptor.cxx
+@@ -186,7 +186,7 @@ PyTypeObject PyVTKMethodDescriptor_Type = {
+   sizeof(PyMethodDescrObject),           // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKMethodDescriptor_Delete,          // tp_dealloc
+-  nullptr,                               // tp_print
++  0,                                     // tp_vectorcall_offset
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff --git a/Wrapping/PythonCore/PyVTKNamespace.cxx b/Wrapping/PythonCore/PyVTKNamespace.cxx
+index 71ee2a3516..5cf5bfbe6b 100644
+--- a/Wrapping/PythonCore/PyVTKNamespace.cxx
++++ b/Wrapping/PythonCore/PyVTKNamespace.cxx
+@@ -49,7 +49,7 @@ PyTypeObject PyVTKNamespace_Type = {
+   0,                                     // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKNamespace_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  0,                                     // tp_vectorcall_offset
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff --git a/Wrapping/PythonCore/PyVTKReference.cxx b/Wrapping/PythonCore/PyVTKReference.cxx
+index 943ac71080..b7104091c0 100644
+--- a/Wrapping/PythonCore/PyVTKReference.cxx
++++ b/Wrapping/PythonCore/PyVTKReference.cxx
+@@ -1010,7 +1010,7 @@ PyTypeObject PyVTKReference_Type = {
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  0,                                     // tp_vectorcall_offset
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+@@ -1067,7 +1067,7 @@ PyTypeObject PyVTKNumberReference_Type = {
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  0,                                     // tp_vectorcall_offset
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+@@ -1124,7 +1124,7 @@ PyTypeObject PyVTKStringReference_Type = {
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  0,                                     // tp_vectorcall_offset
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+@@ -1181,7 +1181,7 @@ PyTypeObject PyVTKTupleReference_Type = {
+   sizeof(PyVTKReference),                // tp_basicsize
+   0,                                     // tp_itemsize
+   PyVTKReference_Delete,                 // tp_dealloc
+-  nullptr,                               // tp_print
++  0,                                     // tp_vectorcall_offset
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff --git a/Wrapping/PythonCore/PyVTKTemplate.cxx b/Wrapping/PythonCore/PyVTKTemplate.cxx
+index be200985b3..340fe7953b 100644
+--- a/Wrapping/PythonCore/PyVTKTemplate.cxx
++++ b/Wrapping/PythonCore/PyVTKTemplate.cxx
+@@ -268,7 +268,7 @@ PyTypeObject PyVTKTemplate_Type = {
+   0,                                     // tp_basicsize
+   0,                                     // tp_itemsize
+   nullptr,                               // tp_dealloc
+-  nullptr,                               // tp_print
++  0,                                     // tp_vectorcall_offset
+   nullptr,                               // tp_getattr
+   nullptr,                               // tp_setattr
+   nullptr,                               // tp_compare
+diff --git a/Wrapping/PythonCore/vtkPythonCompatibility.h b/Wrapping/PythonCore/vtkPythonCompatibility.h
+index 4a767844a6..be208faeef 100644
+--- a/Wrapping/PythonCore/vtkPythonCompatibility.h
++++ b/Wrapping/PythonCore/vtkPythonCompatibility.h
+@@ -64,7 +64,13 @@
+ #endif
+ 
+ // PyTypeObject compatibility
+-#if PY_VERSION_HEX >= 0x03040000
++#if PY_VERSION_HEX >= 0x03090000
++#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
++  0, 0, 0, 0,
++#elif PY_VERSION_HEX >= 0x03080000
++#define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
++  0, 0, 0, 0, 0,
++#elif PY_VERSION_HEX >= 0x03040000
+ #define VTK_WRAP_PYTHON_SUPPRESS_UNINITIALIZED \
+   0, 0, 0,
+ #else
+diff --git a/Wrapping/Tools/vtkWrapPythonClass.c b/Wrapping/Tools/vtkWrapPythonClass.c
+index b1e45f8e80..4d558ea081 100644
+--- a/Wrapping/Tools/vtkWrapPythonClass.c
++++ b/Wrapping/Tools/vtkWrapPythonClass.c
+@@ -521,7 +521,7 @@ void vtkWrapPython_GenerateObjectType(
+     "  sizeof(PyVTKObject), // tp_basicsize\n"
+     "  0, // tp_itemsize\n"
+     "  PyVTKObject_Delete, // tp_dealloc\n"
+-    "  nullptr, // tp_print\n"
++    "  0, // tp_vectorcall_offset\n"
+     "  nullptr, // tp_getattr\n"
+     "  nullptr, // tp_setattr\n"
+     "  nullptr, // tp_compare\n"
+diff --git a/Wrapping/Tools/vtkWrapPythonEnum.c b/Wrapping/Tools/vtkWrapPythonEnum.c
+index b933702242..1249362854 100644
+--- a/Wrapping/Tools/vtkWrapPythonEnum.c
++++ b/Wrapping/Tools/vtkWrapPythonEnum.c
+@@ -145,7 +145,7 @@ void vtkWrapPython_GenerateEnumType(
+     "  sizeof(PyIntObject), // tp_basicsize\n"
+     "  0, // tp_itemsize\n"
+     "  nullptr, // tp_dealloc\n"
+-    "  nullptr, // tp_print\n"
++    "  0, // tp_vectorcall_offset\n"
+     "  nullptr, // tp_getattr\n"
+     "  nullptr, // tp_setattr\n"
+     "  nullptr, // tp_compare\n"
+diff --git a/Wrapping/Tools/vtkWrapPythonType.c b/Wrapping/Tools/vtkWrapPythonType.c
+index 744cb1b9d3..0a1375e541 100644
+--- a/Wrapping/Tools/vtkWrapPythonType.c
++++ b/Wrapping/Tools/vtkWrapPythonType.c
+@@ -709,7 +709,7 @@ void vtkWrapPython_GenerateSpecialType(
+     "  sizeof(PyVTKSpecialObject), // tp_basicsize\n"
+     "  0, // tp_itemsize\n"
+     "  Py%s_Delete, // tp_dealloc\n"
+-    "  nullptr, // tp_print\n"
++    "  0, // tp_vectorcall_offset\n"
+     "  nullptr, // tp_getattr\n"
+     "  nullptr, // tp_setattr\n"
+     "  nullptr, // tp_compare\n"
+-- 
+2.24.1
+
diff --git a/v/VTK/vtk-version.egg-info b/v/VTK/vtk-version.egg-info
new file mode 100644
index 0000000..9ddd689
--- /dev/null
+++ b/v/VTK/vtk-version.egg-info
@@ -0,0 +1,5 @@
+Metadata-Version: 2.1
+Name: vtk
+Version: #VTK_VERSION#
+Summary: VTK is an open-source toolkit for 3D computer graphics, image processing, and visualization
+Platform: UNKNOWN
diff --git a/w/WhatsHap/WhatsHap-1.7-foss-2022a.eb b/w/WhatsHap/WhatsHap-1.7-foss-2022a.eb
new file mode 100644
index 0000000..f99182d
--- /dev/null
+++ b/w/WhatsHap/WhatsHap-1.7-foss-2022a.eb
@@ -0,0 +1,50 @@
+# This file is an EasyBuild reciPY as per https://github.com/easybuilders/easybuild
+
+easyblock = 'PythonBundle'
+
+name = 'WhatsHap'
+version = '1.7'
+
+homepage = 'https://whatshap.readthedocs.io'
+description = """WhatsHap is a software for phasing genomic variants using DNA
+sequencing reads, also called read-based phasing or haplotype assembly. It is
+especially suitable for long reads, but works also well with short reads."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('Pysam', '0.19.1'),
+    ('networkx', '2.8.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('Biopython', '1.79'),
+    ('Yasm', '1.3.0'),
+    ('pyfaidx', '0.7.1'),
+    ('python-isal', '1.1.0'),
+]
+
+sanity_pip_check = True
+use_pip = True
+
+exts_list = [
+    ('xopen', '1.5.0', {
+        'checksums': ['822b926afd39b6904e5d2fdee6e0944d342023f2a42339103c1507b0da48c693'],
+    }),
+    ('pulp', '2.7.0', {
+        'source_tmpl': 'PuLP-%(version)s.tar.gz',
+        'checksums': ['e73ee6b32d639c9b8cf4b4aded334ba158be5f8313544e056f796ace0a10ae63'],
+    }),
+    (name, version, {
+        'source_tmpl': '%(namelower)s-%(version)s.tar.gz',
+        'checksums': ['abd90551a4e19426ceb3a84ed1c8e23f609869956a7f16609f6950aedc930a2c'],
+    }),
+]
+
+sanity_check_paths = {
+    'files': ['bin/%(namelower)s'],
+    'dirs': [],
+}
+
+sanity_check_commands = ['%(namelower)s --help']
+
+moduleclass = 'bio'
diff --git a/w/Wine/Wine-8.17-GCCcore-11.3.0.eb b/w/Wine/Wine-8.17-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..524d1b2
--- /dev/null
+++ b/w/Wine/Wine-8.17-GCCcore-11.3.0.eb
@@ -0,0 +1,35 @@
+easyblock = 'ConfigureMake'
+
+name = 'Wine'
+version = '8.17'
+
+homepage = 'http://www.winehq.com/' 
+
+description = """Wine (originally an acronym for "Wine Is Not an Emulator") is a compatibility layer capable of running Windows applications on several 
+POSIX-compliant operating systems."""
+
+source_urls = [' http://dl.winehq.org/wine/source/8.x/']
+sources = ['%(namelower)s-%(version)s.tar.xz']
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+configopts = '--enable-win64'
+
+dependencies = {
+        ('Bison', '3.8.2'),
+        ('libxml2', '2.9.13'),
+        ('libxslt', '1.1.34'),
+        ('libjpeg-turbo', '2.1.3'),
+        ('libGLU', '9.0.2'),
+        ('LibTIFF', '4.3.0'),
+}
+
+sanity_check_paths = {
+                      'files': [],
+                      'dirs': ['.'] # fixme when the compilation is successful
+                     }
+
+parallel = 1    # this is a conservative choice
+maxparallel = 1 # this is a conservative choice
+
+moduleclass = 'base'
diff --git a/x/Xerces-C++/Xerces-C++-3.2.4-GCCcore-11.3.0.eb b/x/Xerces-C++/Xerces-C++-3.2.4-GCCcore-11.3.0.eb
new file mode 100644
index 0000000..a35a5c2
--- /dev/null
+++ b/x/Xerces-C++/Xerces-C++-3.2.4-GCCcore-11.3.0.eb
@@ -0,0 +1,39 @@
+easyblock = 'CMakeMake'
+
+name = 'Xerces-C++'
+version = '3.2.4'
+
+homepage = 'https://xerces.apache.org/xerces-c/'
+
+description = """Xerces-C++ is a validating XML parser written in a portable
+subset of C++. Xerces-C++ makes it easy to give your application the ability to
+read and write XML data. A shared library is provided for parsing, generating,
+manipulating, and validating XML documents using the DOM, SAX, and SAX2
+APIs."""
+
+toolchain = {'name': 'GCCcore', 'version': '11.3.0'}
+
+source_urls = ['https://archive.apache.org/dist/xerces/c/%(version_major)s/sources/']
+sources = ['xerces-c-%(version)s.tar.gz']
+checksums = ['3d8ec1c7f94e38fee0e4ca5ad1e1d9db23cbf3a10bba626f6b4afa2dedafe5ab']
+
+builddependencies = [
+    ('binutils', '2.38'),
+    ('pkgconf', '1.8.0'),
+    ('CMake', '3.23.1'),
+]
+
+dependencies = [
+    ('cURL', '7.83.0'),
+]
+
+runtest = 'test'
+
+sanity_check_paths = {
+    'files': ['bin/XInclude',
+              'include/xercesc/xinclude/XIncludeUtils.hpp',
+              'lib/libxerces-c-3.2.%s' % SHLIB_EXT],
+    'dirs': ['bin', 'include', 'lib']
+}
+
+moduleclass = 'lib'
diff --git a/y/yaff/h5py-2.10.0_avoid-mpi-init.patch b/y/yaff/h5py-2.10.0_avoid-mpi-init.patch
new file mode 100644
index 0000000..9803477
--- /dev/null
+++ b/y/yaff/h5py-2.10.0_avoid-mpi-init.patch
@@ -0,0 +1,85 @@
+avoid that 'import h5py' triggers MPI_Init via mpi4py
+
+backported to h5py 2.10.0 from https://github.com/h5py/h5py/pull/1552 by Kenneth Hoste (HPC-UGent)
+
+diff -ru h5py-2.10.0.orig/h5py/api_types_ext.pxd h5py-2.10.0/h5py/api_types_ext.pxd
+--- h5py-2.10.0.orig/h5py/api_types_ext.pxd	2019-09-06 23:29:33.000000000 +0200
++++ h5py-2.10.0/h5py/api_types_ext.pxd	2020-05-25 19:30:30.000000000 +0200
+@@ -12,7 +12,7 @@
+ include 'config.pxi'
+ 
+ IF MPI:
+-    from mpi4py.MPI cimport MPI_Comm, MPI_Info, Comm, Info
++    from mpi4py.libmpi cimport MPI_Comm, MPI_Info
+ 
+ cdef extern from "stdlib.h":
+   ctypedef long size_t
+@@ -52,6 +52,7 @@
+ cdef extern from "Python.h":
+   ctypedef void PyObject
+   ctypedef ssize_t Py_ssize_t
++  ctypedef size_t Py_uintptr_t
+ 
+   PyObject* PyErr_Occurred()
+   void PyErr_SetString(object type, char *message)
+diff -ru h5py-2.10.0.orig/h5py/h5p.pyx h5py-2.10.0/h5py/h5p.pyx
+--- h5py-2.10.0.orig/h5py/h5p.pyx	2019-09-06 23:29:33.000000000 +0200
++++ h5py-2.10.0/h5py/h5p.pyx	2020-05-25 19:33:24.000000000 +0200
+@@ -17,6 +17,7 @@
+ from cpython.buffer cimport PyObject_CheckBuffer, \
+                             PyObject_GetBuffer, PyBuffer_Release, \
+                             PyBUF_SIMPLE
++from cpython.long cimport PyLong_AsVoidPtr
+ 
+ from utils cimport  require_tuple, convert_dims, convert_tuple, \
+                     emalloc, efree, \
+@@ -1161,7 +1162,7 @@
+ 
+     IF MPI:
+         @with_phil
+-        def set_fapl_mpio(self, Comm comm not None, Info info not None):
++        def set_fapl_mpio(self, comm, info):
+             """ (Comm comm, Info info)
+ 
+             Set MPI-I/O Parallel HDF5 driver.
+@@ -1169,7 +1170,12 @@
+             Comm: An mpi4py.MPI.Comm instance
+             Info: An mpi4py.MPI.Info instance
+             """
+-            H5Pset_fapl_mpio(self.id, comm.ob_mpi, info.ob_mpi)
++            from mpi4py.MPI import Comm, Info, _handleof
++            assert isinstance(comm, Comm)
++            assert isinstance(info, Info)
++            cdef Py_uintptr_t _comm = _handleof(comm)
++            cdef Py_uintptr_t _info = _handleof(info)
++            H5Pset_fapl_mpio(self.id, <MPI_Comm>_comm, <MPI_Info>_info)
+ 
+ 
+         @with_phil
+@@ -1183,20 +1189,22 @@
+             """
+             cdef MPI_Comm comm
+             cdef MPI_Info info
++            from mpi4py.MPI import Comm, Info, _addressof
+ 
+             H5Pget_fapl_mpio(self.id, &comm, &info)
+             pycomm = Comm()
+-            pyinfo = Info()
+-            MPI_Comm_dup(comm, &pycomm.ob_mpi)
+-            MPI_Info_dup(info, &pyinfo.ob_mpi)
++            MPI_Comm_dup(comm, <MPI_Comm *>PyLong_AsVoidPtr(_addressof(pycomm)))
+             MPI_Comm_free(&comm)
++
++            pyinfo = Info()
++            MPI_Info_dup(info, <MPI_Info *>PyLong_AsVoidPtr(_addressof(pyinfo)))
+             MPI_Info_free(&info)
+ 
+             return (pycomm, pyinfo)
+ 
+ 
+         @with_phil
+-        def set_fapl_mpiposix(self, Comm comm not None, bint use_gpfs_hints=0):
++        def set_fapl_mpiposix(self, comm, bint use_gpfs_hints=0):
+             """ Obsolete.
+             """
+             raise RuntimeError("MPI-POSIX driver is broken; removed in h5py 2.3.1")
diff --git a/y/yaff/yaff-1.6.0-foss-2022a.eb b/y/yaff/yaff-1.6.0-foss-2022a.eb
new file mode 100644
index 0000000..82ea72d
--- /dev/null
+++ b/y/yaff/yaff-1.6.0-foss-2022a.eb
@@ -0,0 +1,57 @@
+# Updated from previous config
+# Author: Pavel Grochal (INUITS)
+# License: GPLv2
+#
+# Building this in interactive Slurm session will result in freeze during either
+# runtest phase or sanity_check_commands phase (python -c 'import yaff')
+#
+# If you submit this as non-interactive Slurm job, it will build just fine.
+# Possibly root cause: https://github.com/h5py/h5py/issues/917
+#
+easyblock = 'PythonBundle'
+
+name = 'yaff'
+version = '1.6.0'
+
+homepage = 'https://molmod.github.io/yaff/'
+description = """Yaff stands for 'Yet another force field'. It is a pythonic force-field code."""
+
+toolchain = {'name': 'foss', 'version': '2022a'}
+
+builddependencies = [('pkgconfig', '1.5.5', '-python')]
+
+dependencies = [
+    ('Python', '3.10.4'),
+    ('SciPy-bundle', '2022.05'),
+    ('HDF5', '1.10.8'),
+    ('molmod', '1.4.8'),
+    ('nose3', '1.3.8'),
+]
+
+use_pip = True
+sanity_pip_check = True
+
+local_runtest = "export MATPLOTLIBRC=$PWD; echo 'backend: agg' > $MATPLOTLIBRC/matplotlibrc; "
+local_runtest += "python setup.py build_ext -i; nosetests -v"
+
+exts_list = [
+    # yaff v1.6.0 does not work with h5py>=3.0, the default version in foss/2020b
+    ('h5py', '2.10.0', {
+        'patches': ['h5py-2.10.0_avoid-mpi-init.patch'],
+        'preinstallopts': 'HDF5_MPI=ON HDF5_DIR="$EBROOTHDF5" ',
+        'source_urls': ['https://pypi.python.org/packages/source/h/h5py'],
+        'checksums': [
+            '84412798925dc870ffd7107f045d7659e60f5d46d1c70c700375248bf6bf512d',  # h5py-2.10.0.tar.gz
+            '6bacb71f5d9fbd7bd9a01018d7fe21b067a2317f33c4a7c21fde9cd404c1603f',  # h5py-2.10.0_avoid-mpi-init.patch
+        ],
+    }),
+    (name, version, {
+        'patches': ['yaff-nose3-dependency.patch'],
+        'source_urls': ['https://github.com/molmod/yaff/releases/download/%(version)s'],
+        'runtest': local_runtest,
+        'checksums': ['a266ab032778e37bb2e93152aefb67f396827aa728151651403984429c74ceaa'],
+    }),
+]
+
+
+moduleclass = 'chem'
diff --git a/y/yaff/yaff-nose3-dependency.patch b/y/yaff/yaff-nose3-dependency.patch
new file mode 100644
index 0000000..71f1026
--- /dev/null
+++ b/y/yaff/yaff-nose3-dependency.patch
@@ -0,0 +1,13 @@
+diff --git a/setup.py b/setup.py
+index fff2a90..c5714b4 100755
+--- a/setup.py
++++ b/setup.py
+@@ -90,7 +90,7 @@ setup(
+     include_package_data=True,
+     zip_safe=False,
+     setup_requires=['numpy>=1.5', 'cython>=0.26'],
+-    install_requires=['numpy>=1.5', 'nose>=0.11', 'cython>=0.26', 'matplotlib>1.0.0',
++    install_requires=['numpy>=1.5', 'nose3>=0.11', 'cython>=0.26', 'matplotlib>1.0.0',
+                       'h5py>=2.0.0', 'molmod>=1.4.1', 'scipy>=0.17.1'],
+     ext_modules=[
+         Extension("yaff.pes.ext",
-- 
GitLab