anchor.diff:        <div class="card-supporting-text">
           <p>
             UMGAP uses exact substring matching to identify reads.
  -          The next step of the pipeline fragments each amino acid sequence into 9-mers,
  -          all of its substrings of length 9, and looks them up in our index.
  +          The next step of the pipeline fragments each amino acid sequence into 9-mers.
  +          The <i>k</i>-mers of a string are all possible substrings of length <i>k</i>.
  +          For example, the 4-mers of the string "ABCDEFG" are "ABCD", "BCDE", "CDEF" and "DEFG".
  +          After constructing all possible 9-mers, they are matched against our index.
             This index maps each 9-mer encountered in the UniProt's protein knowledgebase (2014)
             to the lowest common ancestor (LCA) of all the organisms it occured in.
             The LCA of a set of taxa is equal to the taxon of the most specific rank
  
positive.code:       <div class="card-title card-title-colored"><h2 class="card-title-text">Aggregation</h2></div>
        <div class="card-supporting-text">
          <p>
            At this step of the pipeline, we have a list of taxon identifiers per protein read,
            one protein read per reading frame and two paired-ends per metagenomics read.
            To get a single taxon identification per read, we need to aggregate this list.
            UMGAP offers 3 alternative aggregation strategies with varying speciality.
  
            <ul>
  
negative.code:       <div class="card-supporting-text">
          <p>
            Especially when running the pipeline with all six frames,
            a lot of the translations are invalid since we expect only one of the reading frames, rarely more, to yield a valid protein.
            The Seed-Extend step in the pipeline filters out most random hits
            by selecting only 9-mer hits which are spatially close to other hits.
          </p>
  