anchor.diff:        cudatoolkit==${CUDA_VERSION} \
         pdbfixer \
         pip \
  -      python=3.7
  +      python=3.7 \
  +      && conda clean --all --force-pkgs-dirs --yes
   
   RUN git clone --branch $ALPHAFOLD_VERSION https://github.com/deepmind/alphafold.git /app/alphafold
   RUN wget -q -P /app/alphafold/alphafold/common/ \
     https://git.scicore.unibas.ch/schwede/openstructure/-/raw/7102c63615b64735c4941278d92b554ec94415f8/modules/mol/alg/src/stereo_chemical_props.txt
   
   # Install pip packages.
  -RUN pip3 install --upgrade pip \
  -    && pip3 install -r /app/alphafold/requirements.txt \
  -    && pip3 install --upgrade \
  -      jax==0.2.14 \
  -      jaxlib==0.1.69+cuda$(cut -f1,2 -d. <<< ${CUDA} | sed 's/\.//g') \
  +RUN pip3 install --upgrade pip --no-cache-dir \
  +    && pip3 install -r /app/alphafold/requirements.txt --no-cache-dir \
  +    && pip3 install --upgrade --no-cache-dir \
  +      jax==0.3.17 \
  +      jaxlib==0.3.15+cuda11.cudnn805 \
         -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
   
   # Apply OpenMM patch.
  
positive.code:         kalign \
          tzdata \
          wget \
      && rm -rf /var/lib/apt/lists/*
  
  # Compile HHsuite from source.
  RUN git clone --branch v3.3.0 https://github.com/soedinglab/hh-suite.git /tmp/hh-suite \
  
negative.code: # FROM directive resets ARGS, so we specify again (the value is retained if
  # previously set).
  ARG CUDA
  ARG ALPHAFOLD_VERSION=v2.2.4
  
  # Use bash to support string substitution.
  SHELL ["/bin/bash", "-o", "pipefail", "-c"]
  
  RUN apt-get update \ 
      && DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \
          build-essential \
          cmake \
          cuda-command-line-tools-$(cut -f1,2 -d- <<< ${CUDA//./-}) \
  