Diff of the two buildlogs:

--
--- b1/build.log	2023-05-09 22:29:22.138691361 +0000
+++ b2/build.log	2023-05-09 22:47:36.882788828 +0000
@@ -1,6 +1,6 @@
 I: pbuilder: network access will be disabled during build
-I: Current time: Tue May  9 09:13:24 -12 2023
-I: pbuilder-time-stamp: 1683666804
+I: Current time: Wed May 10 12:30:16 +14 2023
+I: pbuilder-time-stamp: 1683671416
 I: Building the build Environment
 I: extracting base tarball [/var/cache/pbuilder/bookworm-reproducible-base.tgz]
 I: copying local configuration
@@ -16,7 +16,7 @@
 I: copying [./kmc_3.2.1+dfsg.orig.tar.xz]
 I: copying [./kmc_3.2.1+dfsg-1.debian.tar.xz]
 I: Extracting source
-gpgv: Signature made Sun Jan 16 02:40:06 2022 -12
+gpgv: Signature made Mon Jan 17 04:40:06 2022 +14
 gpgv:                using RSA key 8F91B227C7D6F2B1948C8236793CF67E8F0D11DA
 gpgv:                issuer "emollier@debian.org"
 gpgv: Can't check signature: No public key
@@ -34,135 +34,167 @@
 dpkg-source: info: applying support-mixed-march.patch
 I: Not using root during the build.
 I: Installing the build-deps
-I: user script /srv/workspace/pbuilder/12339/tmp/hooks/D02_print_environment starting
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/D01_modify_environment starting
+debug: Running on jtx1c.
+I: Changing host+domainname to test build reproducibility
+I: Adding a custom variable just for the fun of it...
+I: Changing /bin/sh to bash
+'/bin/sh' -> '/bin/bash'
+lrwxrwxrwx 1 root root 9 May 10 12:31 /bin/sh -> /bin/bash
+I: Setting pbuilder2's login shell to /bin/bash
+I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/D01_modify_environment finished
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/D02_print_environment starting
 I: set
-  BUILDDIR='/build'
-  BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other'
-  BUILDUSERNAME='pbuilder1'
-  BUILD_ARCH='armhf'
-  DEBIAN_FRONTEND='noninteractive'
-  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=3'
-  DISTRIBUTION='bookworm'
-  HOME='/root'
-  HOST_ARCH='armhf'
+  BASH=/bin/sh
+  BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath
+  BASH_ALIASES=()
+  BASH_ARGC=()
+  BASH_ARGV=()
+  BASH_CMDS=()
+  BASH_LINENO=([0]="12" [1]="0")
+  BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:.
+  BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
+  BASH_VERSINFO=([0]="5" [1]="2" [2]="15" [3]="1" [4]="release" [5]="arm-unknown-linux-gnueabihf")
+  BASH_VERSION='5.2.15(1)-release'
+  BUILDDIR=/build
+  BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
+  BUILDUSERNAME=pbuilder2
+  BUILD_ARCH=armhf
+  DEBIAN_FRONTEND=noninteractive
+  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=4'
+  DIRSTACK=()
+  DISTRIBUTION=bookworm
+  EUID=0
+  FUNCNAME=([0]="Echo" [1]="main")
+  GROUPS=()
+  HOME=/root
+  HOSTNAME=i-capture-the-hostname
+  HOSTTYPE=arm
+  HOST_ARCH=armhf
   IFS=' 	
   '
-  INVOCATION_ID='50a9aadf19364a438639a32995b94960'
-  LANG='C'
-  LANGUAGE='en_US:en'
-  LC_ALL='C'
-  MAIL='/var/mail/root'
-  OPTIND='1'
-  PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games'
-  PBCURRENTCOMMANDLINEOPERATION='build'
-  PBUILDER_OPERATION='build'
-  PBUILDER_PKGDATADIR='/usr/share/pbuilder'
-  PBUILDER_PKGLIBDIR='/usr/lib/pbuilder'
-  PBUILDER_SYSCONFDIR='/etc'
-  PPID='12339'
-  PS1='# '
-  PS2='> '
+  INVOCATION_ID=09bcaf94523a48aeb9fab35c5d39c40a
+  LANG=C
+  LANGUAGE=it_CH:it
+  LC_ALL=C
+  MACHTYPE=arm-unknown-linux-gnueabihf
+  MAIL=/var/mail/root
+  OPTERR=1
+  OPTIND=1
+  OSTYPE=linux-gnueabihf
+  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
+  PBCURRENTCOMMANDLINEOPERATION=build
+  PBUILDER_OPERATION=build
+  PBUILDER_PKGDATADIR=/usr/share/pbuilder
+  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
+  PBUILDER_SYSCONFDIR=/etc
+  PIPESTATUS=([0]="0")
+  POSIXLY_CORRECT=y
+  PPID=20472
   PS4='+ '
-  PWD='/'
-  SHELL='/bin/bash'
-  SHLVL='2'
-  SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.svOm8Pta/pbuilderrc_Q2bn --distribution bookworm --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.svOm8Pta/b1 --logfile b1/build.log kmc_3.2.1+dfsg-1.dsc'
-  SUDO_GID='113'
-  SUDO_UID='107'
-  SUDO_USER='jenkins'
-  TERM='unknown'
-  TZ='/usr/share/zoneinfo/Etc/GMT+12'
-  USER='root'
-  _='/usr/bin/systemd-run'
-  http_proxy='http://10.0.0.15:3142/'
+  PWD=/
+  SHELL=/bin/bash
+  SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
+  SHLVL=3
+  SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.svOm8Pta/pbuilderrc_eV4O --distribution bookworm --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/bookworm-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.svOm8Pta/b2 --logfile b2/build.log --extrapackages usrmerge kmc_3.2.1+dfsg-1.dsc'
+  SUDO_GID=114
+  SUDO_UID=108
+  SUDO_USER=jenkins
+  TERM=unknown
+  TZ=/usr/share/zoneinfo/Etc/GMT-14
+  UID=0
+  USER=root
+  _='I: set'
+  http_proxy=http://10.0.0.15:3142/
 I: uname -a
-  Linux cbxi4pro0 5.10.0-22-armmp #1 SMP Debian 5.10.178-3 (2023-04-22) armv7l GNU/Linux
+  Linux i-capture-the-hostname 5.10.0-22-arm64 #1 SMP Debian 5.10.178-3 (2023-04-22) aarch64 GNU/Linux
 I: ls -l /bin
   total 5072
-  -rwxr-xr-x 1 root root 838488 Apr 23 09:24 bash
-  -rwxr-xr-x 3 root root  67144 Sep 18  2022 bunzip2
-  -rwxr-xr-x 3 root root  67144 Sep 18  2022 bzcat
-  lrwxrwxrwx 1 root root      6 Sep 18  2022 bzcmp -> bzdiff
-  -rwxr-xr-x 1 root root   2225 Sep 18  2022 bzdiff
-  lrwxrwxrwx 1 root root      6 Sep 18  2022 bzegrep -> bzgrep
-  -rwxr-xr-x 1 root root   4893 Nov 27  2021 bzexe
-  lrwxrwxrwx 1 root root      6 Sep 18  2022 bzfgrep -> bzgrep
-  -rwxr-xr-x 1 root root   3775 Sep 18  2022 bzgrep
-  -rwxr-xr-x 3 root root  67144 Sep 18  2022 bzip2
-  -rwxr-xr-x 1 root root  67112 Sep 18  2022 bzip2recover
-  lrwxrwxrwx 1 root root      6 Sep 18  2022 bzless -> bzmore
-  -rwxr-xr-x 1 root root   1297 Sep 18  2022 bzmore
-  -rwxr-xr-x 1 root root  67632 Sep 20  2022 cat
-  -rwxr-xr-x 1 root root  67676 Sep 20  2022 chgrp
-  -rwxr-xr-x 1 root root  67644 Sep 20  2022 chmod
-  -rwxr-xr-x 1 root root  67684 Sep 20  2022 chown
-  -rwxr-xr-x 1 root root 133532 Sep 20  2022 cp
-  -rwxr-xr-x 1 root root 132868 Jan  5 01:20 dash
-  -rwxr-xr-x 1 root root 133220 Sep 20  2022 date
-  -rwxr-xr-x 1 root root  67732 Sep 20  2022 dd
-  -rwxr-xr-x 1 root root  68104 Sep 20  2022 df
-  -rwxr-xr-x 1 root root 133632 Sep 20  2022 dir
-  -rwxr-xr-x 1 root root  59128 Mar 22 21:02 dmesg
-  lrwxrwxrwx 1 root root      8 Dec 19 01:33 dnsdomainname -> hostname
-  lrwxrwxrwx 1 root root      8 Dec 19 01:33 domainname -> hostname
-  -rwxr-xr-x 1 root root  67560 Sep 20  2022 echo
-  -rwxr-xr-x 1 root root     41 Jan 24 02:43 egrep
-  -rwxr-xr-x 1 root root  67548 Sep 20  2022 false
-  -rwxr-xr-x 1 root root     41 Jan 24 02:43 fgrep
-  -rwxr-xr-x 1 root root  55748 Mar 22 21:02 findmnt
-  -rwsr-xr-x 1 root root  26208 Mar 22 20:15 fusermount
-  -rwxr-xr-x 1 root root 128608 Jan 24 02:43 grep
-  -rwxr-xr-x 2 root root   2346 Apr  9  2022 gunzip
-  -rwxr-xr-x 1 root root   6447 Apr  9  2022 gzexe
-  -rwxr-xr-x 1 root root  64220 Apr  9  2022 gzip
-  -rwxr-xr-x 1 root root  67032 Dec 19 01:33 hostname
-  -rwxr-xr-x 1 root root  67720 Sep 20  2022 ln
-  -rwxr-xr-x 1 root root  35132 Mar 22 21:51 login
-  -rwxr-xr-x 1 root root 133632 Sep 20  2022 ls
-  -rwxr-xr-x 1 root root 136808 Mar 22 21:02 lsblk
-  -rwxr-xr-x 1 root root  67800 Sep 20  2022 mkdir
-  -rwxr-xr-x 1 root root  67764 Sep 20  2022 mknod
-  -rwxr-xr-x 1 root root  67596 Sep 20  2022 mktemp
-  -rwxr-xr-x 1 root root  38504 Mar 22 21:02 more
-  -rwsr-xr-x 1 root root  38496 Mar 22 21:02 mount
-  -rwxr-xr-x 1 root root   9824 Mar 22 21:02 mountpoint
-  -rwxr-xr-x 1 root root 133532 Sep 20  2022 mv
-  lrwxrwxrwx 1 root root      8 Dec 19 01:33 nisdomainname -> hostname
-  lrwxrwxrwx 1 root root     14 Apr  2 18:25 pidof -> /sbin/killall5
-  -rwxr-xr-x 1 root root  67608 Sep 20  2022 pwd
-  lrwxrwxrwx 1 root root      4 Apr 23 09:24 rbash -> bash
-  -rwxr-xr-x 1 root root  67600 Sep 20  2022 readlink
-  -rwxr-xr-x 1 root root  67672 Sep 20  2022 rm
-  -rwxr-xr-x 1 root root  67600 Sep 20  2022 rmdir
-  -rwxr-xr-x 1 root root  67400 Nov  2  2022 run-parts
-  -rwxr-xr-x 1 root root 133372 Jan  5 07:55 sed
-  lrwxrwxrwx 1 root root      4 Jan  5 01:20 sh -> dash
-  -rwxr-xr-x 1 root root  67584 Sep 20  2022 sleep
-  -rwxr-xr-x 1 root root  67644 Sep 20  2022 stty
-  -rwsr-xr-x 1 root root  50800 Mar 22 21:02 su
-  -rwxr-xr-x 1 root root  67584 Sep 20  2022 sync
-  -rwxr-xr-x 1 root root 336764 Apr  6 02:25 tar
-  -rwxr-xr-x 1 root root  67144 Nov  2  2022 tempfile
-  -rwxr-xr-x 1 root root 133224 Sep 20  2022 touch
-  -rwxr-xr-x 1 root root  67548 Sep 20  2022 true
-  -rwxr-xr-x 1 root root   9768 Mar 22 20:15 ulockmgr_server
-  -rwsr-xr-x 1 root root  22108 Mar 22 21:02 umount
-  -rwxr-xr-x 1 root root  67572 Sep 20  2022 uname
-  -rwxr-xr-x 2 root root   2346 Apr  9  2022 uncompress
-  -rwxr-xr-x 1 root root 133632 Sep 20  2022 vdir
-  -rwxr-xr-x 1 root root  42608 Mar 22 21:02 wdctl
-  lrwxrwxrwx 1 root root      8 Dec 19 01:33 ypdomainname -> hostname
-  -rwxr-xr-x 1 root root   1984 Apr  9  2022 zcat
-  -rwxr-xr-x 1 root root   1678 Apr  9  2022 zcmp
-  -rwxr-xr-x 1 root root   6460 Apr  9  2022 zdiff
-  -rwxr-xr-x 1 root root     29 Apr  9  2022 zegrep
-  -rwxr-xr-x 1 root root     29 Apr  9  2022 zfgrep
-  -rwxr-xr-x 1 root root   2081 Apr  9  2022 zforce
-  -rwxr-xr-x 1 root root   8103 Apr  9  2022 zgrep
-  -rwxr-xr-x 1 root root   2206 Apr  9  2022 zless
-  -rwxr-xr-x 1 root root   1842 Apr  9  2022 zmore
-  -rwxr-xr-x 1 root root   4577 Apr  9  2022 znew
-I: user script /srv/workspace/pbuilder/12339/tmp/hooks/D02_print_environment finished
+  -rwxr-xr-x 1 root root 838488 Apr 24 11:24 bash
+  -rwxr-xr-x 3 root root  67144 Sep 19  2022 bunzip2
+  -rwxr-xr-x 3 root root  67144 Sep 19  2022 bzcat
+  lrwxrwxrwx 1 root root      6 Sep 19  2022 bzcmp -> bzdiff
+  -rwxr-xr-x 1 root root   2225 Sep 19  2022 bzdiff
+  lrwxrwxrwx 1 root root      6 Sep 19  2022 bzegrep -> bzgrep
+  -rwxr-xr-x 1 root root   4893 Nov 28  2021 bzexe
+  lrwxrwxrwx 1 root root      6 Sep 19  2022 bzfgrep -> bzgrep
+  -rwxr-xr-x 1 root root   3775 Sep 19  2022 bzgrep
+  -rwxr-xr-x 3 root root  67144 Sep 19  2022 bzip2
+  -rwxr-xr-x 1 root root  67112 Sep 19  2022 bzip2recover
+  lrwxrwxrwx 1 root root      6 Sep 19  2022 bzless -> bzmore
+  -rwxr-xr-x 1 root root   1297 Sep 19  2022 bzmore
+  -rwxr-xr-x 1 root root  67632 Sep 21  2022 cat
+  -rwxr-xr-x 1 root root  67676 Sep 21  2022 chgrp
+  -rwxr-xr-x 1 root root  67644 Sep 21  2022 chmod
+  -rwxr-xr-x 1 root root  67684 Sep 21  2022 chown
+  -rwxr-xr-x 1 root root 133532 Sep 21  2022 cp
+  -rwxr-xr-x 1 root root 132868 Jan  6 03:20 dash
+  -rwxr-xr-x 1 root root 133220 Sep 21  2022 date
+  -rwxr-xr-x 1 root root  67732 Sep 21  2022 dd
+  -rwxr-xr-x 1 root root  68104 Sep 21  2022 df
+  -rwxr-xr-x 1 root root 133632 Sep 21  2022 dir
+  -rwxr-xr-x 1 root root  59128 Mar 23 23:02 dmesg
+  lrwxrwxrwx 1 root root      8 Dec 20 03:33 dnsdomainname -> hostname
+  lrwxrwxrwx 1 root root      8 Dec 20 03:33 domainname -> hostname
+  -rwxr-xr-x 1 root root  67560 Sep 21  2022 echo
+  -rwxr-xr-x 1 root root     41 Jan 25 04:43 egrep
+  -rwxr-xr-x 1 root root  67548 Sep 21  2022 false
+  -rwxr-xr-x 1 root root     41 Jan 25 04:43 fgrep
+  -rwxr-xr-x 1 root root  55748 Mar 23 23:02 findmnt
+  -rwsr-xr-x 1 root root  26208 Mar 23 22:15 fusermount
+  -rwxr-xr-x 1 root root 128608 Jan 25 04:43 grep
+  -rwxr-xr-x 2 root root   2346 Apr 10  2022 gunzip
+  -rwxr-xr-x 1 root root   6447 Apr 10  2022 gzexe
+  -rwxr-xr-x 1 root root  64220 Apr 10  2022 gzip
+  -rwxr-xr-x 1 root root  67032 Dec 20 03:33 hostname
+  -rwxr-xr-x 1 root root  67720 Sep 21  2022 ln
+  -rwxr-xr-x 1 root root  35132 Mar 23 23:51 login
+  -rwxr-xr-x 1 root root 133632 Sep 21  2022 ls
+  -rwxr-xr-x 1 root root 136808 Mar 23 23:02 lsblk
+  -rwxr-xr-x 1 root root  67800 Sep 21  2022 mkdir
+  -rwxr-xr-x 1 root root  67764 Sep 21  2022 mknod
+  -rwxr-xr-x 1 root root  67596 Sep 21  2022 mktemp
+  -rwxr-xr-x 1 root root  38504 Mar 23 23:02 more
+  -rwsr-xr-x 1 root root  38496 Mar 23 23:02 mount
+  -rwxr-xr-x 1 root root   9824 Mar 23 23:02 mountpoint
+  -rwxr-xr-x 1 root root 133532 Sep 21  2022 mv
+  lrwxrwxrwx 1 root root      8 Dec 20 03:33 nisdomainname -> hostname
+  lrwxrwxrwx 1 root root     14 Apr  3 20:25 pidof -> /sbin/killall5
+  -rwxr-xr-x 1 root root  67608 Sep 21  2022 pwd
+  lrwxrwxrwx 1 root root      4 Apr 24 11:24 rbash -> bash
+  -rwxr-xr-x 1 root root  67600 Sep 21  2022 readlink
+  -rwxr-xr-x 1 root root  67672 Sep 21  2022 rm
+  -rwxr-xr-x 1 root root  67600 Sep 21  2022 rmdir
+  -rwxr-xr-x 1 root root  67400 Nov  3  2022 run-parts
+  -rwxr-xr-x 1 root root 133372 Jan  6 09:55 sed
+  lrwxrwxrwx 1 root root      9 May 10 12:31 sh -> /bin/bash
+  -rwxr-xr-x 1 root root  67584 Sep 21  2022 sleep
+  -rwxr-xr-x 1 root root  67644 Sep 21  2022 stty
+  -rwsr-xr-x 1 root root  50800 Mar 23 23:02 su
+  -rwxr-xr-x 1 root root  67584 Sep 21  2022 sync
+  -rwxr-xr-x 1 root root 336764 Apr  7 04:25 tar
+  -rwxr-xr-x 1 root root  67144 Nov  3  2022 tempfile
+  -rwxr-xr-x 1 root root 133224 Sep 21  2022 touch
+  -rwxr-xr-x 1 root root  67548 Sep 21  2022 true
+  -rwxr-xr-x 1 root root   9768 Mar 23 22:15 ulockmgr_server
+  -rwsr-xr-x 1 root root  22108 Mar 23 23:02 umount
+  -rwxr-xr-x 1 root root  67572 Sep 21  2022 uname
+  -rwxr-xr-x 2 root root   2346 Apr 10  2022 uncompress
+  -rwxr-xr-x 1 root root 133632 Sep 21  2022 vdir
+  -rwxr-xr-x 1 root root  42608 Mar 23 23:02 wdctl
+  lrwxrwxrwx 1 root root      8 Dec 20 03:33 ypdomainname -> hostname
+  -rwxr-xr-x 1 root root   1984 Apr 10  2022 zcat
+  -rwxr-xr-x 1 root root   1678 Apr 10  2022 zcmp
+  -rwxr-xr-x 1 root root   6460 Apr 10  2022 zdiff
+  -rwxr-xr-x 1 root root     29 Apr 10  2022 zegrep
+  -rwxr-xr-x 1 root root     29 Apr 10  2022 zfgrep
+  -rwxr-xr-x 1 root root   2081 Apr 10  2022 zforce
+  -rwxr-xr-x 1 root root   8103 Apr 10  2022 zgrep
+  -rwxr-xr-x 1 root root   2206 Apr 10  2022 zless
+  -rwxr-xr-x 1 root root   1842 Apr 10  2022 zmore
+  -rwxr-xr-x 1 root root   4577 Apr 10  2022 znew
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/D02_print_environment finished
  -> Attempting to satisfy build-dependencies
  -> Creating pbuilder-satisfydepends-dummy package
 Package: pbuilder-satisfydepends-dummy
@@ -267,7 +299,7 @@
 Get: 53 http://deb.debian.org/debian bookworm/main armhf libbz2-dev armhf 1.0.8-5+b1 [28.1 kB]
 Get: 54 http://deb.debian.org/debian bookworm/main armhf libsimde-dev all 0.7.4~rc2-2 [377 kB]
 Get: 55 http://deb.debian.org/debian bookworm/main armhf zlib1g-dev armhf 1:1.2.13.dfsg-1 [902 kB]
-Fetched 27.9 MB in 5s (5543 kB/s)
+Fetched 27.9 MB in 2s (11.4 MB/s)
 debconf: delaying package configuration, since apt-utils is not installed
 Selecting previously unselected package liblocale-gettext-perl.
 (Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 19329 files and directories currently installed.)
@@ -508,8 +540,19 @@
 Writing extended state information...
 Building tag database...
  -> Finished parsing the build-deps
+Reading package lists...
+Building dependency tree...
+Reading state information...
+usrmerge is already the newest version (35).
+0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
 I: Building the package
-I: Running cd /build/kmc-3.2.1+dfsg/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S  > ../kmc_3.2.1+dfsg-1_source.changes
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/A99_set_merged_usr starting
+Re-configuring usrmerge...
+removed '/etc/unsupported-skip-usrmerge-conversion'
+The system has been successfully converted.
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/A99_set_merged_usr finished
+hostname: Name or service not known
+I: Running cd /build/kmc-3.2.1+dfsg/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S  > ../kmc_3.2.1+dfsg-1_source.changes
 dpkg-buildpackage: info: source package kmc
 dpkg-buildpackage: info: source version 3.2.1+dfsg-1
 dpkg-buildpackage: info: source distribution unstable
@@ -523,7 +566,7 @@
 rm -rf /build/kmc-3.2.1+dfsg/debian/man_src/*.html /build/kmc-3.2.1+dfsg/debian/man_src/*.?
 rm -rf /build/kmc-3.2.1+dfsg/debian/man
 dh_auto_clean --
-	make -j3 clean
+	make -j4 clean
 make[2]: Entering directory '/build/kmc-3.2.1+dfsg'
 rm -f kmc_core/*.o
 rm -f kmc_api/*.o
@@ -557,7 +600,7 @@
    debian/rules override_dh_auto_build
 make[1]: Entering directory '/build/kmc-3.2.1+dfsg'
 dh_auto_build
-	make -j3 "INSTALL=install --strip-program=true"
+	make -j4 "INSTALL=install --strip-program=true"
 make[2]: Entering directory '/build/kmc-3.2.1+dfsg'
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_CLI/kmc.cpp -o kmc_CLI/kmc.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/mem_disk_file.cpp -o kmc_core/mem_disk_file.o
@@ -566,6 +609,8 @@
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/cpu_info.cpp -o kmc_core/cpu_info.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/bkb_reader.cpp -o kmc_core/bkb_reader.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/fastq_reader.cpp -o kmc_core/fastq_reader.o
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/timer.cpp -o kmc_core/timer.o
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/develop.cpp -o kmc_core/develop.o
 In file included from /usr/include/c++/12/set:60,
                  from kmc_core/queues.h:19,
                  from kmc_core/params.h:16,
@@ -597,8 +642,6 @@
       |                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   513 |                                             std::tuple<>());
       |                                             ~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/timer.cpp -o kmc_core/timer.o
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/develop.cpp -o kmc_core/develop.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/kb_completer.cpp -o kmc_core/kb_completer.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/kb_storer.cpp -o kmc_core/kb_storer.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_core/kmer.cpp -o kmc_core/kmer.o
@@ -674,6 +717,7 @@
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::pair<std::__cxx11::basic_string<char>, long long unsigned int> >::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
       |       ^~~~~~~~~~~~~~~~~~~
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_dump/nc_utils.cpp -o kmc_dump/nc_utils.o
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const char (&)[12], long long unsigned int&}; _Tp = std::pair<std::__cxx11::basic_string<char>, long long unsigned int>; _Alloc = std::allocator<std::pair<std::__cxx11::basic_string<char>, long long unsigned int> >]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::pair<std::__cxx11::basic_string<char>, long long unsigned int> >::iterator' changed in GCC 7.1
 In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {const char (&)[12], long long unsigned int&}; _Tp = std::pair<std::__cxx11::basic_string<char>, long long unsigned int>; _Alloc = std::allocator<std::pair<std::__cxx11::basic_string<char>, long long unsigned int> >]',
@@ -691,9 +735,9 @@
 /usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::pair<std::__cxx11::basic_string<char>, long long unsigned int>*, std::vector<std::pair<std::__cxx11::basic_string<char>, long long unsigned int> > >' changed in GCC 7.1
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_dump/nc_utils.cpp -o kmc_dump/nc_utils.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_dump/kmc_dump.cpp -o kmc_dump/kmc_dump.o
 g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/kmer_file_header.cpp -o kmc_tools/kmer_file_header.o
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/kmc_tools.cpp -o kmc_tools/kmc_tools.o
 kmc_tools/kmer_file_header.cpp: In member function 'bool CKmerFileHeader::is_kff_file(std::string&)':
 kmc_tools/kmer_file_header.cpp:117:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   117 |         fread(marker_start, 1, 3, file);
@@ -733,7 +777,8 @@
 /usr/include/c++/12/bits/stl_uninitialized.h:137:39: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFVariables*, std::vector<CKFFVariables> >' changed in GCC 7.1
   137 |         { return std::__do_uninit_copy(__first, __last, __result); }
       |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/kmc_tools.cpp -o kmc_tools/kmc_tools.o
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/nc_utils.cpp -o kmc_tools/nc_utils.o
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/parameters_parser.cpp -o kmc_tools/parameters_parser.o
 In file included from /usr/include/c++/12/queue:62,
                  from kmc_core/raduls_impl.h:15:
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>*, vector<tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>, allocator<tuple<CKmer<1>*, CKmer<1>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<1>, int>(CKmer<1>*, CKmer<1>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>, tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>)> >]':
@@ -742,26 +787,76 @@
       |     ^~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>*, vector<tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>, allocator<tuple<CKmer<1>*, CKmer<1>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<1>, long long int>(CKmer<1>*, CKmer<1>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>, tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>*, std::vector<std::tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>, std::allocator<std::tuple<CKmer<1>*, CKmer<1>*, long long unsigned int> > > >' changed in GCC 7.1
+In file included from /usr/include/c++/12/vector:70,
+                 from kmc_tools/operations.h:24,
+                 from kmc_tools/expression_node.h:14,
+                 from kmc_tools/parser.h:14,
+                 from kmc_tools/parameters_parser.h:15,
+                 from kmc_tools/parameters_parser.cpp:11:
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CInputDesc&}; _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CInputDesc>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+In file included from /usr/include/c++/12/vector:64:
+In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]',
+    inlined from 'void CParametersParser::read_input_desc()' at kmc_tools/parameters_parser.cpp:251:29:
+/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CInputDesc*, std::vector<CInputDesc> >' changed in GCC 7.1
+ 1287 |           _M_realloc_insert(end(), __x);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, vector<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, allocator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<2>, int>(CKmer<2>*, CKmer<2>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, std::vector<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, std::allocator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >' changed in GCC 7.1
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc::OpType&}; _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CTransformOutputDesc>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, vector<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, allocator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<2>, long long int>(CKmer<2>*, CKmer<2>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, std::vector<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, std::allocator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >' changed in GCC 7.1
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc::OpType&}; _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]',
+    inlined from 'bool CParametersParser::read_output_for_transform()' at kmc_tools/parameters_parser.cpp:339:43:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CTransformOutputDesc*, std::vector<CTransformOutputDesc> >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>*, vector<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, allocator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<3>, int>(CKmer<3>*, CKmer<3>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>*, std::vector<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, std::allocator<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int> > > >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>*, vector<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, allocator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<3>, long long int>(CKmer<3>*, CKmer<3>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>*, std::vector<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, std::allocator<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int> > > >' changed in GCC 7.1
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CSimpleOutputDesc::OpType&}; _Tp = CSimpleOutputDesc; _Alloc = std::allocator<CSimpleOutputDesc>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CSimpleOutputDesc>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>*, vector<tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>, allocator<tuple<CKmer<4>*, CKmer<4>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<4>, int>(CKmer<4>*, CKmer<4>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>, tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>*, std::vector<std::tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>, std::allocator<std::tuple<CKmer<4>*, CKmer<4>*, long long unsigned int> > > >' changed in GCC 7.1
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CSimpleOutputDesc::OpType&}; _Tp = CSimpleOutputDesc; _Alloc = std::allocator<CSimpleOutputDesc>]',
+    inlined from 'bool CParametersParser::read_output_desc_for_simple()' at kmc_tools/parameters_parser.cpp:504:40:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CSimpleOutputDesc*, std::vector<CSimpleOutputDesc> >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>*, vector<tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>, allocator<tuple<CKmer<4>*, CKmer<4>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<4>, long long int>(CKmer<4>*, CKmer<4>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>, tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>*, std::vector<std::tuple<CKmer<4>*, CKmer<4>*, long long unsigned int>, std::allocator<std::tuple<CKmer<4>*, CKmer<4>*, long long unsigned int> > > >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, vector<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, allocator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<5>, int>(CKmer<5>*, CKmer<5>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, std::vector<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, std::allocator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, vector<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, allocator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<5>, long long int>(CKmer<5>*, CKmer<5>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, std::vector<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, std::allocator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >' changed in GCC 7.1
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CKmerFileHeader}; _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKmerFileHeader>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>*, vector<tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>, allocator<tuple<CKmer<6>*, CKmer<6>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<6>, int>(CKmer<6>*, CKmer<6>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>, tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>*, std::vector<std::tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>, std::allocator<std::tuple<CKmer<6>*, CKmer<6>*, long long unsigned int> > > >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>*, vector<tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>, allocator<tuple<CKmer<6>*, CKmer<6>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<6>, long long int>(CKmer<6>*, CKmer<6>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>, tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>*, std::vector<std::tuple<CKmer<6>*, CKmer<6>*, long long unsigned int>, std::allocator<std::tuple<CKmer<6>*, CKmer<6>*, long long unsigned int> > > >' changed in GCC 7.1
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CKmerFileHeader}; _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]',
+    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
+    inlined from 'bool CParametersParser::validate_input_dbs()' at kmc_tools/parameters_parser.cpp:754:26:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKmerFileHeader*, std::vector<CKmerFileHeader> >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CKmerFileHeader}; _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]',
+    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
+    inlined from 'bool CParametersParser::validate_input_dbs()' at kmc_tools/parameters_parser.cpp:768:27:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKmerFileHeader*, std::vector<CKmerFileHeader> >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>*, vector<tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>, allocator<tuple<CKmer<7>*, CKmer<7>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<7>, int>(CKmer<7>*, CKmer<7>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>, tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>*, std::vector<std::tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>, std::allocator<std::tuple<CKmer<7>*, CKmer<7>*, long long unsigned int> > > >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>*, vector<tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>, allocator<tuple<CKmer<7>*, CKmer<7>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<7>, long long int>(CKmer<7>*, CKmer<7>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>, tuple<CKmer<7>*, CKmer<7>*, long long unsigned int>)> >]':
@@ -770,6 +865,7 @@
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>*, std::vector<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>, std::allocator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> > > >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>*, vector<tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>, allocator<tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> > > >; _Distance = int; _Tp = tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<8>, long long int>(CKmer<8>*, CKmer<8>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>, tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>*, std::vector<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>, std::allocator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> > > >' changed in GCC 7.1
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/parser.cpp -o kmc_tools/parser.o
 In file included from /usr/include/c++/12/algorithm:61,
                  from kmc_core/raduls_impl.h:19:
 /usr/include/c++/12/bits/stl_algo.h: In function 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, vector<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, allocator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<5>, long long int>(CKmer<5>*, CKmer<5>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>)> >]':
@@ -841,6 +937,15 @@
 kmc_core/s_mapper.h:106:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   106 |                         fread(raw, 1, 4, file);
       |                         ~~~~~^~~~~~~~~~~~~~~~~
+In file included from /usr/include/c++/12/vector:70,
+                 from kmc_tools/operations.h:24,
+                 from kmc_tools/expression_node.h:14,
+                 from kmc_tools/parser.h:14,
+                 from kmc_tools/parser.cpp:11:
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CInputDesc&}; _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CInputDesc>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
 In file included from kmc_tools/db_reader_factory.h:8,
                  from kmc_tools/expression_node.h:19,
                  from kmc_tools/parser.h:14,
@@ -874,6 +979,18 @@
 kmc_tools/check_kmer.h:273:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   273 |                         fread(tmp, 1, record_size, file);
       |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
+In file included from /usr/include/c++/12/vector:70,
+                 from /usr/include/c++/12/queue:61:
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >]',
+    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
+    inlined from 'CRangeQueue::CRangeQueue(uint32, uint64)' at kmc_core/first_dispatch.h:58:25:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, unsigned int>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int> > >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 kmc_tools/kff_db_reader.h: In member function 'bool CKFFDbReaderSeq<SIZE>::reload_buff() [with unsigned int SIZE = 7]':
 kmc_tools/kff_db_reader.h:1377:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
  1377 |                         fread(buff, 1, buff_bytes, file);
@@ -1070,18 +1187,6 @@
 kmc_tools/check_kmer.h:273:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   273 |                         fread(tmp, 1, record_size, file);
       |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:70,
-                 from /usr/include/c++/12/queue:61:
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >]',
-    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
-    inlined from 'CRangeQueue::CRangeQueue(uint32, uint64)' at kmc_core/first_dispatch.h:58:25:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, unsigned int>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int> > >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>}; _Tp = std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>; _Alloc = std::allocator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> >]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>, std::allocator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> > >::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
@@ -1132,6 +1237,12 @@
 /usr/include/c++/12/bits/stl_algo.h:1922:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>*, std::vector<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>, std::allocator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> > > >' changed in GCC 7.1
  1922 |           std::__introsort_loop(__cut, __last, __depth_limit, __comp);
       |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In file included from /usr/include/c++/12/vector:64:
+In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]',
+    inlined from 'void CParser::parseInputLine(const std::string&)' at kmc_tools/parser.cpp:147:31:
+/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CInputDesc*, std::vector<CInputDesc> >' changed in GCC 7.1
+ 1287 |           _M_realloc_insert(end(), __x);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
 In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>}; _Tp = std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>; _Alloc = std::allocator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> >]',
     inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int>; _Alloc = std::allocator<std::tuple<CKmer<8>*, CKmer<8>*, long long unsigned int> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
     inlined from 'void RadulsSort::RadixSortMSD_impl(KMER_T*, KMER_T*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64) [with KMER_T = CKmer<8>; COUNTER_TYPE = int]' at kmc_core/raduls_impl.h:685:26:
@@ -1266,6 +1377,7 @@
 /usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, std::vector<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, std::allocator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >' changed in GCC 7.1
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/tokenizer.cpp -o kmc_tools/tokenizer.o
 /usr/include/c++/12/bits/stl_algo.h: In function 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, vector<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, allocator<tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<5>, long long int>(CKmer<5>*, CKmer<5>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>)> >]':
 /usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>*, std::vector<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int>, std::allocator<std::tuple<CKmer<5>*, CKmer<5>*, long long unsigned int> > > >' changed in GCC 7.1
  1908 |     __introsort_loop(_RandomAccessIterator __first,
@@ -1566,6 +1678,7 @@
 /usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>*, std::vector<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, std::allocator<std::tuple<CKmer<3>*, CKmer<3>*, long long unsigned int> > > >' changed in GCC 7.1
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/fastq_filter.cpp -o kmc_tools/fastq_filter.o
 In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>*, vector<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, allocator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int> > > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<3>, int>(CKmer<3>*, CKmer<3>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>)> >]',
     inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>*, vector<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, allocator<tuple<CKmer<3>*, CKmer<3>*, long long unsigned int> > > >; _Compare = RadulsSort::RadixSortMSD_impl<CKmer<3>, int>(CKmer<3>*, CKmer<3>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>, tuple<CKmer<3>*, CKmer<3>*, long long unsigned int>)>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
     inlined from 'void RadulsSort::RadixSortMSD_impl(KMER_T*, KMER_T*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64) [with KMER_T = CKmer<3>; COUNTER_TYPE = int]' at kmc_core/raduls_impl.h:713:8:
@@ -1602,6 +1715,14 @@
       |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1939 |                                 __comp);
       |                                 ~~~~~~~
+In file included from /usr/include/c++/12/queue:62,
+                 from kmc_tools/queues.h:20,
+                 from kmc_tools/kmc1_db_reader.h:18,
+                 from kmc_tools/db_reader_factory.h:6:
+/usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Distance = int; _Tp = long long unsigned int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
+/usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+  224 |     __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
+      |     ^~~~~~~~~~~~~
 In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, vector<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, allocator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<2>, long long int>(CKmer<2>*, CKmer<2>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>)> >]',
     inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, vector<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, allocator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<RadulsSort::RadixSortMSD_impl<CKmer<2>, long long int>(CKmer<2>*, CKmer<2>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>)> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31,
     inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, vector<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, allocator<tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >; _Compare = RadulsSort::RadixSortMSD_impl<CKmer<2>, long long int>(CKmer<2>*, CKmer<2>*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64)::<lambda(tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>)>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
@@ -1612,6 +1733,14 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>*, std::vector<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>, std::allocator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> > > >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
+In file included from /usr/include/c++/12/algorithm:61,
+                 from kmc_tools/kmc2_db_reader.h:24,
+                 from kmc_tools/db_reader_factory.h:7:
+/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
+/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1802 |     __insertion_sort(_RandomAccessIterator __first,
+      |     ^~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
 In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>}; _Tp = std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>; _Alloc = std::allocator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> >]',
     inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int>; _Alloc = std::allocator<std::tuple<CKmer<2>*, CKmer<2>*, long long unsigned int> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
     inlined from 'void RadulsSort::RadixSortMSD_impl(KMER_T*, KMER_T*, uint64, uint32, uint32, CMemoryPool*, bool, uint64, uint64) [with KMER_T = CKmer<2>; COUNTER_TYPE = int]' at kmc_core/raduls_impl.h:685:26:
@@ -1690,22 +1819,7 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>*, std::vector<std::tuple<CKmer<1>*, CKmer<1>*, long long unsigned int>, std::allocator<std::tuple<CKmer<1>*, CKmer<1>*, long long unsigned int> > > >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/queue:62,
-                 from kmc_tools/queues.h:20,
-                 from kmc_tools/kmc1_db_reader.h:18,
-                 from kmc_tools/db_reader_factory.h:6:
-/usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Distance = int; _Tp = long long unsigned int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
-/usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
-  224 |     __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
-      |     ^~~~~~~~~~~~~
-In file included from /usr/include/c++/12/algorithm:61,
-                 from kmc_tools/kmc2_db_reader.h:24,
-                 from kmc_tools/db_reader_factory.h:7:
-/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
-/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1802 |     __insertion_sort(_RandomAccessIterator __first,
-      |     ^~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/fastq_reader.cpp -o kmc_tools/fastq_reader.o
 In file included from /usr/include/c++/12/bits/stl_algo.h:60,
                  from /usr/include/c++/12/algorithm:61,
                  from /usr/include/c++/12/ext/algorithm:61,
@@ -1741,6 +1855,7 @@
 /usr/include/c++/12/bits/stl_algo.h: In function 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
 /usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/fastq_writer.cpp -o kmc_tools/fastq_writer.o
 /usr/include/c++/12/bits/stl_algo.h: In function 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<pair<long long unsigned int, long long unsigned int>*, vector<pair<long long unsigned int, long long unsigned int> > >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKmerBinSorter<8>::ExpandKxmersBoth(uint64)::<lambda(const pair<long long unsigned int, long long unsigned int>&, const pair<long long unsigned int, long long unsigned int>&)> >]':
 /usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::pair<long long unsigned int, long long unsigned int>*, std::vector<std::pair<long long unsigned int, long long unsigned int> > >' changed in GCC 7.1
 /usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::pair<long long unsigned int, long long unsigned int>*, std::vector<std::pair<long long unsigned int, long long unsigned int> > >' changed in GCC 7.1
@@ -1774,8 +1889,142 @@
       |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_tree.h: In function 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_emplace_hint_unique(const_iterator, _Args&& ...) [with _Args = {const std::piecewise_construct_t&, std::tuple<long long unsigned int&&>, std::tuple<>}; _Key = long long unsigned int; _Val = std::pair<const long long unsigned int, long long unsigned int>; _KeyOfValue = std::_Select1st<std::pair<const long long unsigned int, long long unsigned int> >; _Compare = std::less<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, long long unsigned int> >]':
 /usr/include/c++/12/bits/stl_tree.h:2457:7: note: parameter passing for argument of type 'std::_Rb_tree<long long unsigned int, std::pair<const long long unsigned int, long long unsigned int>, std::_Select1st<std::pair<const long long unsigned int, long long unsigned int> >, std::less<long long unsigned int>, std::allocator<std::pair<const long long unsigned int, long long unsigned int> > >::const_iterator' changed in GCC 7.1
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/percent_progress.cpp -o kmc_tools/percent_progress.o
 /usr/include/c++/12/bits/stl_tree.h: In function 'std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::iterator std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>::_M_emplace_hint_unique(const_iterator, _Args&& ...) [with _Args = {const std::piecewise_construct_t&, std::tuple<const long long unsigned int&>, std::tuple<>}; _Key = long long unsigned int; _Val = std::pair<const long long unsigned int, long long unsigned int>; _KeyOfValue = std::_Select1st<std::pair<const long long unsigned int, long long unsigned int> >; _Compare = std::less<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, long long unsigned int> >]':
 /usr/include/c++/12/bits/stl_tree.h:2457:7: note: parameter passing for argument of type 'std::_Rb_tree<long long unsigned int, std::pair<const long long unsigned int, long long unsigned int>, std::_Select1st<std::pair<const long long unsigned int, long long unsigned int> >, std::less<long long unsigned int>, std::allocator<std::pair<const long long unsigned int, long long unsigned int> > >::const_iterator' changed in GCC 7.1
+In file included from /usr/include/c++/12/vector:70,
+                 from kmc_tools/percent_progress.h:15,
+                 from kmc_tools/percent_progress.cpp:11:
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CPercentProgress::CDisplayItem>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]',
+    inlined from 'uint32 CPercentProgress::RegisterItem(const std::string&, uint64)' at kmc_tools/percent_progress.cpp:24:20:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CPercentProgress::CDisplayItem*, std::vector<CPercentProgress::CDisplayItem> >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CPercentProgress::CDisplayItem>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]',
+    inlined from 'uint32 CPercentProgress::RegisterItem(uint64)' at kmc_tools/percent_progress.cpp:31:20:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CPercentProgress::CDisplayItem*, std::vector<CPercentProgress::CDisplayItem> >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/kff_info_reader.cpp -o kmc_tools/kff_info_reader.o
+kmc_tools/kff_info_reader.cpp: In constructor 'CKFFInfoReader::CKFFInfoReader(const std::string&)':
+kmc_tools/kff_info_reader.cpp:34:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   34 |         fread(marker, 1, 3, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:39:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   39 |         fread(marker, 1, 3, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:45:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   45 |         fread(footer_size_str, 1, 12, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:54:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   54 |                 fread(tmp.data(), 1, 8, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:61:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   61 |                 fread(tmp.data(), 1, 1, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:67:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   67 |                 fread(tmp.data(), 1, 8, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:76:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   76 |                         fread(tmp.data(), 1, 8, file);
+      |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:89:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   89 |         fread(tmp.data(), 1, 1, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:92:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   92 |         fread(tmp.data(), 1, 1, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:96:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   96 |         fread(tmp.data(), 1, 1, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:99:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+   99 |         fread(tmp.data(), 1, 1, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:105:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  105 |         fread(tmp.data(), 1, 1, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:111:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  111 |         fread(tmp.data(), 1, sizeof(free_size), file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:116:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  116 |         fread(tmp.data(), 1, 1, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:136:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  136 |                 fread(tmp.data(), 1, 1, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:141:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  141 |                 fread(tmp.data(), 1, 8, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:150:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  150 |                         fread(tmp.data(), 1, 1, file);
+      |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:154:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  154 |                         fread(tmp.data(), 1, 8, file);
+      |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:161:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  161 |                 fread(tmp.data(), 1, 8, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:173:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  173 |                 fread(tmp.data(), 1, 1, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:182:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  182 |                 fread(tmp.data(), 1, 1, file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp: In member function 'void CKFFInfoReader::ReadVariableSection()':
+kmc_tools/kff_info_reader.cpp:207:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  207 |         fread(tmp.data(), 1, sizeof(uint64_t), file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:214:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  214 |                 fread(tmp.data(), 1, sizeof(uint64_t), file);
+      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp: In member function 'void CKFFInfoReader::ReadRawSection()':
+kmc_tools/kff_info_reader.cpp:253:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  253 |         fread(tmp.data(), 1, 8, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp: In member function 'void CKFFInfoReader::ReadMinimizerSection()':
+kmc_tools/kff_info_reader.cpp:288:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  288 |         fread(data_section.minimizer.data(), 1, minimizer_bytes, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+kmc_tools/kff_info_reader.cpp:290:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
+  290 |         fread(tmp.data(), 1, 8, file);
+      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
+In file included from /usr/include/c++/12/bits/stl_algo.h:60,
+                 from /usr/include/c++/12/algorithm:61,
+                 from kmc_tools/kff_info_reader.cpp:7:
+/usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Distance = int; _Tp = CKFFIndexPair; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]':
+/usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
+  224 |     __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
+      |     ^~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]':
+/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
+ 1802 |     __insertion_sort(_RandomAccessIterator __first,
+      |     ^~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
+/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]':
+/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
+ 1908 |     __introsort_loop(_RandomAccessIterator __first,
+      |     ^~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
+/usr/include/c++/12/bits/stl_algo.h:1922:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
+ 1922 |           std::__introsort_loop(__cut, __last, __depth_limit, __comp);
+      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In file included from /usr/include/c++/12/vector:70,
+                 from kmc_tools/kff_info_reader.h:3,
+                 from kmc_tools/kff_info_reader.cpp:1:
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {char&, long long int}; _Tp = CKFFIndexPair; _Alloc = std::allocator<CKFFIndexPair>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKFFIndexPair>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CKFFDataSection&}; _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKFFDataSection>::iterator' changed in GCC 7.1
 In file included from /usr/include/c++/12/map:61,
                  from kmc_core/queues.h:20:
 In member function 'std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = int; _Tp = std::tuple<unsigned int, long long unsigned int, _IO_FILE*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long long unsigned int>; _Compare = std::less<int>; _Alloc = std::allocator<std::pair<const int, std::tuple<unsigned int, long long unsigned int, _IO_FILE*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long long unsigned int> > >]',
@@ -1796,52 +2045,90 @@
       |                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   513 |                                             std::tuple<>());
       |                                             ~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:70,
-                 from kmc_tools/kmc_tools.cpp:12:
-/usr/include/c++/12/bits/vector.tcc: In member function 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::_M_erase(iterator) [with _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]':
-/usr/include/c++/12/bits/vector.tcc:175:5: note: parameter passing for argument of type 'std::vector<CTransformOutputDesc>::iterator' changed in GCC 7.1
-  175 |     vector<_Tp, _Alloc>::
-      |     ^~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<long long unsigned int>::iterator' changed in GCC 7.1
+In file included from /usr/include/c++/12/vector:64:
+In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]',
+    inlined from 'void CKFFInfoReader::ReadMinimizerSection()' at kmc_tools/kff_info_reader.cpp:296:31:
+/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
+ 1287 |           _M_realloc_insert(end(), __x);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
+In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]',
+    inlined from 'void CKFFInfoReader::ReadRawSection()' at kmc_tools/kff_info_reader.cpp:260:31:
+/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
+ 1287 |           _M_realloc_insert(end(), __x);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
+In file included from /usr/include/c++/12/vector:63:
+/usr/include/c++/12/bits/stl_uninitialized.h: In function '_ForwardIterator std::__do_uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*]':
+/usr/include/c++/12/bits/stl_uninitialized.h:113:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
+  113 |     __do_uninit_copy(_InputIterator __first, _InputIterator __last,
+      |     ^~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_uninitialized.h:113:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CKFFVariables&}; _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKFFVariables>::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
       |       ^~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
-/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1908 |     __introsort_loop(_RandomAccessIterator __first,
-      |     ^~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
-/usr/include/c++/12/bits/stl_algo.h:1922:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1922 |           std::__introsort_loop(__cut, __last, __depth_limit, __comp);
-      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
-/usr/include/c++/12/bits/stl_algo.h:1932:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1932 |     __sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
-      |     ^~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1932:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
-/usr/include/c++/12/bits/stl_algo.h:1937:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; bool _TrivialValueTypes = false]',
+    inlined from '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*]' at /usr/include/c++/12/bits/stl_uninitialized.h:185:15,
+    inlined from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; _Tp = CKFFDataSection]' at /usr/include/c++/12/bits/stl_uninitialized.h:372:37,
+    inlined from 'std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]' at /usr/include/c++/12/bits/stl_vector.h:601:31,
+    inlined from 'CKFFVariables::CKFFVariables(const CKFFVariables&)' at kmc_tools/kff_info_reader.h:38:8,
+    inlined from 'void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/new_allocator.h:175:4,
+    inlined from 'static void std::allocator_traits<std::allocator<_CharT> >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/alloc_traits.h:516:17,
+    inlined from 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CKFFVariables&}; _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]' at /usr/include/c++/12/bits/vector.tcc:462:28:
+/usr/include/c++/12/bits/stl_uninitialized.h:137:39: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
+  137 |         { return std::__do_uninit_copy(__first, __last, __result); }
+      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
+In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; bool _TrivialValueTypes = false]',
+    inlined from '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*]' at /usr/include/c++/12/bits/stl_uninitialized.h:185:15,
+    inlined from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; _Tp = CKFFDataSection]' at /usr/include/c++/12/bits/stl_uninitialized.h:372:37,
+    inlined from 'std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]' at /usr/include/c++/12/bits/stl_vector.h:601:31,
+    inlined from 'CKFFVariables::CKFFVariables(const CKFFVariables&)' at kmc_tools/kff_info_reader.h:38:8,
+    inlined from 'void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/new_allocator.h:175:4,
+    inlined from 'static void std::allocator_traits<std::allocator<_CharT> >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/alloc_traits.h:516:17,
+    inlined from 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]' at /usr/include/c++/12/bits/stl_vector.h:1281:30,
+    inlined from 'void CKFFInfoReader::ReadVariableSection()' at kmc_tools/kff_info_reader.cpp:232:34:
+/usr/include/c++/12/bits/stl_uninitialized.h:137:39: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
+  137 |         { return std::__do_uninit_copy(__first, __last, __result); }
+      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
+In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]',
+    inlined from 'void CKFFInfoReader::ReadVariableSection()' at kmc_tools/kff_info_reader.cpp:232:34:
+/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFVariables*, std::vector<CKFFVariables> >' changed in GCC 7.1
+ 1287 |           _M_realloc_insert(end(), __x);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {char&, long long int}; _Tp = CKFFIndexPair; _Alloc = std::allocator<CKFFIndexPair>]',
+    inlined from 'CKFFInfoReader::CKFFInfoReader(const std::string&)' at kmc_tools/kff_info_reader.cpp:157:22:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]',
+    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
+    inlined from 'CKFFInfoReader::CKFFInfoReader(const std::string&)' at kmc_tools/kff_info_reader.cpp:165:11:
+/usr/include/c++/12/bits/stl_algo.h:1937:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
  1937 |           std::__introsort_loop(__first, __last,
       |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
  1938 |                                 std::__lg(__last - __first) * 2,
       |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  1939 |                                 __comp);
       |                                 ~~~~~~~
-In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
-    inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31:
-/usr/include/c++/12/bits/stl_algo.h:1849:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]',
+    inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31,
+    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
+    inlined from 'CKFFInfoReader::CKFFInfoReader(const std::string&)' at kmc_tools/kff_info_reader.cpp:165:11:
+/usr/include/c++/12/bits/stl_algo.h:1849:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
  1849 |           std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
       |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+/usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<1>; _Alloc = std::allocator<CDumpWriterForTransform<1> >]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<1>, std::allocator<CDumpWriterForTransform<1> > >::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<1>; _Alloc = std::allocator<CDumpWriterForTransform<1> >]':
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<1>*, std::vector<CDumpWriterForTransform<1>, std::allocator<CDumpWriterForTransform<1> > > >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ar rcs libkmc.a kmc_api/mmer.o kmc_api/kmc_file.o kmc_api/kmer_api.o
+ranlib libkmc.a
+mkdir -p bin
+g++ -o bin/kmc_dump kmc_dump/nc_utils.o kmc_dump/kmc_dump.o kmc_api/mmer.o kmc_api/kmc_file.o kmc_api/kmer_api.o -Wl,-z,relro -Wl,-z,now -lm -O3 -lpthread -std=c++11 -lz -lbz2
+In file included from /usr/include/c++/12/vector:70,
+                 from kmc_tools/kmc_tools.cpp:12:
+/usr/include/c++/12/bits/vector.tcc: In member function 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::_M_erase(iterator) [with _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]':
+/usr/include/c++/12/bits/vector.tcc:175:5: note: parameter passing for argument of type 'std::vector<CTransformOutputDesc>::iterator' changed in GCC 7.1
+  175 |     vector<_Tp, _Alloc>::
+      |     ^~~~~~~~~~~~~~~~~~~
 In member function 'std::map<_Key, _Tp, _Compare, _Alloc>::mapped_type& std::map<_Key, _Tp, _Compare, _Alloc>::operator[](const key_type&) [with _Key = long long unsigned int; _Tp = long long unsigned int; _Compare = std::less<long long unsigned int>; _Alloc = std::allocator<std::pair<const long long unsigned int, long long unsigned int> >]',
     inlined from 'CMemoryBins::init(uint32, uint32, int64, int64, int64, int64, int64)::<lambda()>' at kmc_core/queues.h:1286:28,
     inlined from 'CThrowingOnCancelConditionVariable::wait<CMemoryBins::init(uint32, uint32, int64, int64, int64, int64, int64)::<lambda()> >(std::unique_lock<std::mutex>&, CMemoryBins::init(uint32, uint32, int64, int64, int64, int64, int64)::<lambda()>)::<lambda()>' at kmc_core/critical_error_handler.h:21:20,
@@ -1930,6 +2217,46 @@
       |                                             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   513 |                                             std::tuple<>());
       |                                             ~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<long long unsigned int>::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
+/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1908 |     __introsort_loop(_RandomAccessIterator __first,
+      |     ^~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+/usr/include/c++/12/bits/stl_algo.h:1922:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1922 |           std::__introsort_loop(__cut, __last, __depth_limit, __comp);
+      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]':
+/usr/include/c++/12/bits/stl_algo.h:1932:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1932 |     __sort(_RandomAccessIterator __first, _RandomAccessIterator __last,
+      |     ^~~~~~
+/usr/include/c++/12/bits/stl_algo.h:1932:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+/usr/include/c++/12/bits/stl_algo.h:1937:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1937 |           std::__introsort_loop(__first, __last,
+      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
+ 1938 |                                 std::__lg(__last - __first) * 2,
+      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 1939 |                                 __comp);
+      |                                 ~~~~~~~
+In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
+    inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31:
+/usr/include/c++/12/bits/stl_algo.h:1849:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1849 |           std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
+      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1854 |         std::__insertion_sort(__first, __last, __comp);
+      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<1>; _Alloc = std::allocator<CDumpWriterForTransform<1> >]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<1>, std::allocator<CDumpWriterForTransform<1> > >::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<1>; _Alloc = std::allocator<CDumpWriterForTransform<1> >]':
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<1>*, std::vector<CDumpWriterForTransform<1>, std::allocator<CDumpWriterForTransform<1> > > >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In file included from /usr/include/c++/12/vector:70,
                  from kmc_core/kmc_runner.h:14,
                  from kmc_core/kmc_runner.cpp:11:
@@ -1975,12 +2302,10 @@
       |                                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   532 |                                         std::tuple<>());
       |                                         ~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/nc_utils.cpp -o kmc_tools/nc_utils.o
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const long long unsigned int&}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<long long unsigned int>::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
       |       ^~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/parameters_parser.cpp -o kmc_tools/parameters_parser.o
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<7>; _Alloc = std::allocator<CDumpWriterForTransform<7> >]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<7>, std::allocator<CDumpWriterForTransform<7> > >::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
@@ -2072,6 +2397,14 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<6>; _Alloc = std::allocator<CDumpWriterForTransform<6> >]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<6>, std::allocator<CDumpWriterForTransform<6> > >::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<6>; _Alloc = std::allocator<CDumpWriterForTransform<6> >]':
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<6>*, std::vector<CDumpWriterForTransform<6>, std::allocator<CDumpWriterForTransform<6> > > >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {long long int}; _Tp = long long int; _Alloc = std::allocator<long long int>]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<long long int>::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
@@ -2108,48 +2441,6 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:70,
-                 from kmc_tools/operations.h:24,
-                 from kmc_tools/expression_node.h:14,
-                 from kmc_tools/parser.h:14,
-                 from kmc_tools/parameters_parser.h:15,
-                 from kmc_tools/parameters_parser.cpp:11:
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CInputDesc&}; _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CInputDesc>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<6>; _Alloc = std::allocator<CDumpWriterForTransform<6> >]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<6>, std::allocator<CDumpWriterForTransform<6> > >::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:64:
-In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]',
-    inlined from 'void CParametersParser::read_input_desc()' at kmc_tools/parameters_parser.cpp:251:29:
-/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CInputDesc*, std::vector<CInputDesc> >' changed in GCC 7.1
- 1287 |           _M_realloc_insert(end(), __x);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<6>; _Alloc = std::allocator<CDumpWriterForTransform<6> >]':
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<6>*, std::vector<CDumpWriterForTransform<6>, std::allocator<CDumpWriterForTransform<6> > > >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc::OpType&}; _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CTransformOutputDesc>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc::OpType&}; _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]',
-    inlined from 'bool CParametersParser::read_output_for_transform()' at kmc_tools/parameters_parser.cpp:339:43:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CTransformOutputDesc*, std::vector<CTransformOutputDesc> >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CSimpleOutputDesc::OpType&}; _Tp = CSimpleOutputDesc; _Alloc = std::allocator<CSimpleOutputDesc>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CSimpleOutputDesc>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CSimpleOutputDesc::OpType&}; _Tp = CSimpleOutputDesc; _Alloc = std::allocator<CSimpleOutputDesc>]',
-    inlined from 'bool CParametersParser::read_output_desc_for_simple()' at kmc_tools/parameters_parser.cpp:504:40:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CSimpleOutputDesc*, std::vector<CSimpleOutputDesc> >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
     inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 6]' at kmc_core/kmc.h:276:24:
 /usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
@@ -2175,23 +2466,6 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CKmerFileHeader}; _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKmerFileHeader>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CKmerFileHeader}; _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]',
-    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
-    inlined from 'bool CParametersParser::validate_input_dbs()' at kmc_tools/parameters_parser.cpp:754:26:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKmerFileHeader*, std::vector<CKmerFileHeader> >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CKmerFileHeader}; _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]',
-    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = CKmerFileHeader; _Alloc = std::allocator<CKmerFileHeader>]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
-    inlined from 'bool CParametersParser::validate_input_dbs()' at kmc_tools/parameters_parser.cpp:768:27:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKmerFileHeader*, std::vector<CKmerFileHeader> >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/parser.cpp -o kmc_tools/parser.o
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::tuple<long long unsigned int, long long unsigned int, bool> >::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
@@ -2208,6 +2482,20 @@
 /usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, bool> > >' changed in GCC 7.1
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]',
+    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
+    inlined from 'void CBinBufProvider<SIZE>::init(std::vector<CBin<SIZE> >&) [with unsigned int SIZE = 7]' at kmc_tools/kmc2_db_reader.h:300:17:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, bool> > >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> >]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> >::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> >]':
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> > >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
     inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 5]' at kmc_core/kmc.h:276:24:
 /usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
@@ -2233,20 +2521,6 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]',
-    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
-    inlined from 'void CBinBufProvider<SIZE>::init(std::vector<CBin<SIZE> >&) [with unsigned int SIZE = 7]' at kmc_tools/kmc2_db_reader.h:300:17:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, bool> > >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> >]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> >::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> >]':
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, unsigned int, bool> > >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
     inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
     inlined from 'bool CTools<SIZE>::filter() [with unsigned int SIZE = 1]' at kmc_tools/kmc_tools.cpp:252:24:
@@ -2272,26 +2546,11 @@
 /usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<5>*, std::vector<CDumpWriterForTransform<5>, std::allocator<CDumpWriterForTransform<5> > > >' changed in GCC 7.1
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:70,
-                 from kmc_tools/operations.h:24,
-                 from kmc_tools/expression_node.h:14,
-                 from kmc_tools/parser.h:14,
-                 from kmc_tools/parser.cpp:11:
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CInputDesc&}; _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CInputDesc>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
 In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
     inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 1]' at kmc_core/kmc.h:1491:6:
 /usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
  4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
       |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:64:
-In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CInputDesc; _Alloc = std::allocator<CInputDesc>]',
-    inlined from 'void CParser::parseInputLine(const std::string&)' at kmc_tools/parser.cpp:147:31:
-/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CInputDesc*, std::vector<CInputDesc> >' changed in GCC 7.1
- 1287 |           _M_realloc_insert(end(), __x);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
 In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
     inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
     inlined from 'bool CTools<SIZE>::filter() [with unsigned int SIZE = 7]' at kmc_tools/kmc_tools.cpp:252:24:
@@ -2303,6 +2562,20 @@
 /usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
       |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]',
+    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
+    inlined from 'void CBinBufProvider<SIZE>::init(std::vector<CBin<SIZE> >&) [with unsigned int SIZE = 5]' at kmc_tools/kmc2_db_reader.h:300:17:
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, bool> > >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<4>; _Alloc = std::allocator<CDumpWriterForTransform<4> >]':
+/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<4>, std::allocator<CDumpWriterForTransform<4> > >::iterator' changed in GCC 7.1
+  439 |       vector<_Tp, _Alloc>::
+      |       ^~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<4>; _Alloc = std::allocator<CDumpWriterForTransform<4> >]':
+/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<4>*, std::vector<CDumpWriterForTransform<4>, std::allocator<CDumpWriterForTransform<4> > > >' changed in GCC 7.1
+  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
     inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 4]' at kmc_core/kmc.h:276:24:
 /usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
@@ -2328,20 +2601,6 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]',
-    inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
-    inlined from 'void CBinBufProvider<SIZE>::init(std::vector<CBin<SIZE> >&) [with unsigned int SIZE = 5]' at kmc_tools/kmc2_db_reader.h:300:17:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, bool> > >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<4>; _Alloc = std::allocator<CDumpWriterForTransform<4> >]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<4>, std::allocator<CDumpWriterForTransform<4> > >::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<4>; _Alloc = std::allocator<CDumpWriterForTransform<4> >]':
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<4>*, std::vector<CDumpWriterForTransform<4>, std::allocator<CDumpWriterForTransform<4> > > >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In file included from /usr/include/c++/12/vector:63:
 /usr/include/c++/12/bits/stl_uninitialized.h: In function '_ForwardIterator std::__do_uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*]':
 /usr/include/c++/12/bits/stl_uninitialized.h:113:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
@@ -2370,7 +2629,6 @@
 /usr/include/c++/12/bits/stl_uninitialized.h:137:39: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFVariables*, std::vector<CKFFVariables> >' changed in GCC 7.1
   137 |         { return std::__do_uninit_copy(__first, __last, __result); }
       |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/tokenizer.cpp -o kmc_tools/tokenizer.o
 In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFVariables*, std::vector<CKFFVariables> >; _ForwardIterator = CKFFVariables*; bool _TrivialValueTypes = false]',
     inlined from '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFVariables*, vector<CKFFVariables> >; _ForwardIterator = CKFFVariables*]' at /usr/include/c++/12/bits/stl_uninitialized.h:185:15,
     inlined from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFVariables*, vector<CKFFVariables> >; _ForwardIterator = CKFFVariables*; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/stl_uninitialized.h:372:37,
@@ -2437,32 +2695,6 @@
 /usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::tuple<long long unsigned int, long long unsigned int, bool>*, std::vector<std::tuple<long long unsigned int, long long unsigned int, bool> > >' changed in GCC 7.1
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
-    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 3]' at kmc_core/kmc.h:276:24:
-/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1287 |           _M_realloc_insert(end(), __x);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
-In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
-    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = greater<long long unsigned int>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
-    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 3]' at kmc_core/kmc.h:280:8:
-/usr/include/c++/12/bits/stl_algo.h:1937:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1937 |           std::__introsort_loop(__first, __last,
-      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
- 1938 |                                 std::__lg(__last - __first) * 2,
-      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 1939 |                                 __comp);
-      |                                 ~~~~~~~
-In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
-    inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31,
-    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = greater<long long unsigned int>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
-    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 3]' at kmc_core/kmc.h:280:8:
-/usr/include/c++/12/bits/stl_algo.h:1849:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1849 |           std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
-      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
- 1854 |         std::__insertion_sort(__first, __last, __comp);
-      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/fastq_filter.cpp -o kmc_tools/fastq_filter.o
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {CTransformOutputDesc&}; _Tp = CDumpWriterForTransform<2>; _Alloc = std::allocator<CDumpWriterForTransform<2> >]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CDumpWriterForTransform<2>, std::allocator<CDumpWriterForTransform<2> > >::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
@@ -2471,11 +2703,6 @@
 /usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CDumpWriterForTransform<2>*, std::vector<CDumpWriterForTransform<2>, std::allocator<CDumpWriterForTransform<2> > > >' changed in GCC 7.1
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
-    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 8]' at kmc_core/kmc.h:1491:6:
-/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
- 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
-      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::erase(const_iterator) [with _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]',
     inlined from 'bool CTools<SIZE>::transform() [with unsigned int SIZE = 5]' at kmc_tools/kmc_tools.cpp:428:45,
     inlined from 'bool CTools<SIZE>::Process() [with unsigned int SIZE = 5]' at kmc_tools/kmc_tools.cpp:531:20:
@@ -2493,7 +2720,6 @@
 /usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
       |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/fastq_reader.cpp -o kmc_tools/fastq_reader.o
 In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::tuple<long long unsigned int, long long unsigned int, bool>}; _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]',
     inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = std::tuple<long long unsigned int, long long unsigned int, bool>; _Alloc = std::allocator<std::tuple<long long unsigned int, long long unsigned int, bool> >]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
     inlined from 'void CBinBufProvider<SIZE>::init(std::vector<CBin<SIZE> >&) [with unsigned int SIZE = 2]' at kmc_tools/kmc2_db_reader.h:300:17:
@@ -2501,13 +2727,13 @@
   123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
-    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 2]' at kmc_core/kmc.h:276:24:
+    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 3]' at kmc_core/kmc.h:276:24:
 /usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1287 |           _M_realloc_insert(end(), __x);
       |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
 In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
     inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = greater<long long unsigned int>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
-    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 2]' at kmc_core/kmc.h:280:8:
+    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 3]' at kmc_core/kmc.h:280:8:
 /usr/include/c++/12/bits/stl_algo.h:1937:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1937 |           std::__introsort_loop(__first, __last,
       |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
@@ -2518,246 +2744,13 @@
 In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
     inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31,
     inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = greater<long long unsigned int>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
-    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 2]' at kmc_core/kmc.h:280:8:
+    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 3]' at kmc_core/kmc.h:280:8:
 /usr/include/c++/12/bits/stl_algo.h:1849:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1849 |           std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
       |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
-    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 7]' at kmc_core/kmc.h:1491:6:
-/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
- 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
-      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/fastq_writer.cpp -o kmc_tools/fastq_writer.o
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/percent_progress.cpp -o kmc_tools/percent_progress.o
-In file included from /usr/include/c++/12/vector:70,
-                 from kmc_tools/percent_progress.h:15,
-                 from kmc_tools/percent_progress.cpp:11:
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CPercentProgress::CDisplayItem>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]',
-    inlined from 'uint32 CPercentProgress::RegisterItem(const std::string&, uint64)' at kmc_tools/percent_progress.cpp:24:20:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CPercentProgress::CDisplayItem*, std::vector<CPercentProgress::CDisplayItem> >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CPercentProgress::CDisplayItem>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, long long unsigned int&}; _Tp = CPercentProgress::CDisplayItem; _Alloc = std::allocator<CPercentProgress::CDisplayItem>]',
-    inlined from 'uint32 CPercentProgress::RegisterItem(uint64)' at kmc_tools/percent_progress.cpp:31:20:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CPercentProgress::CDisplayItem*, std::vector<CPercentProgress::CDisplayItem> >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-g++ -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -ffile-prefix-map=/build/kmc-3.2.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -Wall -O3 -c kmc_tools/kff_info_reader.cpp -o kmc_tools/kff_info_reader.o
-In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
-    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 6]' at kmc_core/kmc.h:1491:6:
-/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
- 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
-      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp: In constructor 'CKFFInfoReader::CKFFInfoReader(const std::string&)':
-kmc_tools/kff_info_reader.cpp:34:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   34 |         fread(marker, 1, 3, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:39:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   39 |         fread(marker, 1, 3, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:45:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   45 |         fread(footer_size_str, 1, 12, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:54:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   54 |                 fread(tmp.data(), 1, 8, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:61:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   61 |                 fread(tmp.data(), 1, 1, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:67:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   67 |                 fread(tmp.data(), 1, 8, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:76:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   76 |                         fread(tmp.data(), 1, 8, file);
-      |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:89:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   89 |         fread(tmp.data(), 1, 1, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:92:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   92 |         fread(tmp.data(), 1, 1, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:96:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   96 |         fread(tmp.data(), 1, 1, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:99:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-   99 |         fread(tmp.data(), 1, 1, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:105:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  105 |         fread(tmp.data(), 1, 1, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:111:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  111 |         fread(tmp.data(), 1, sizeof(free_size), file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:116:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  116 |         fread(tmp.data(), 1, 1, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:136:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  136 |                 fread(tmp.data(), 1, 1, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:141:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  141 |                 fread(tmp.data(), 1, 8, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:150:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  150 |                         fread(tmp.data(), 1, 1, file);
-      |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:154:30: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  154 |                         fread(tmp.data(), 1, 8, file);
-      |                         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:161:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  161 |                 fread(tmp.data(), 1, 8, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:173:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  173 |                 fread(tmp.data(), 1, 1, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:182:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  182 |                 fread(tmp.data(), 1, 1, file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp: In member function 'void CKFFInfoReader::ReadVariableSection()':
-kmc_tools/kff_info_reader.cpp:207:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  207 |         fread(tmp.data(), 1, sizeof(uint64_t), file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:214:22: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  214 |                 fread(tmp.data(), 1, sizeof(uint64_t), file);
-      |                 ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp: In member function 'void CKFFInfoReader::ReadRawSection()':
-kmc_tools/kff_info_reader.cpp:253:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  253 |         fread(tmp.data(), 1, 8, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp: In member function 'void CKFFInfoReader::ReadMinimizerSection()':
-kmc_tools/kff_info_reader.cpp:288:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  288 |         fread(data_section.minimizer.data(), 1, minimizer_bytes, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-kmc_tools/kff_info_reader.cpp:290:14: warning: ignoring return value of 'size_t fread(void*, size_t, size_t, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
-  290 |         fread(tmp.data(), 1, 8, file);
-      |         ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/bits/stl_algo.h:60,
-                 from /usr/include/c++/12/algorithm:61,
-                 from kmc_tools/kff_info_reader.cpp:7:
-/usr/include/c++/12/bits/stl_heap.h: In function 'void std::__adjust_heap(_RandomAccessIterator, _Distance, _Distance, _Tp, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Distance = int; _Tp = CKFFIndexPair; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]':
-/usr/include/c++/12/bits/stl_heap.h:224:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
-  224 |     __adjust_heap(_RandomAccessIterator __first, _Distance __holeIndex,
-      |     ^~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]':
-/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
- 1802 |     __insertion_sort(_RandomAccessIterator __first,
-      |     ^~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1802:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
-/usr/include/c++/12/bits/stl_algo.h: In function 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]':
-/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
- 1908 |     __introsort_loop(_RandomAccessIterator __first,
-      |     ^~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
-/usr/include/c++/12/bits/stl_algo.h:1922:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
- 1922 |           std::__introsort_loop(__cut, __last, __depth_limit, __comp);
-      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:70,
-                 from kmc_tools/kff_info_reader.h:3,
-                 from kmc_tools/kff_info_reader.cpp:1:
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {char&, long long int}; _Tp = CKFFIndexPair; _Alloc = std::allocator<CKFFIndexPair>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKFFIndexPair>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CKFFDataSection&}; _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKFFDataSection>::iterator' changed in GCC 7.1
-In file included from /usr/include/c++/12/vector:64:
-In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]',
-    inlined from 'void CKFFInfoReader::ReadMinimizerSection()' at kmc_tools/kff_info_reader.cpp:296:31:
-/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
- 1287 |           _M_realloc_insert(end(), __x);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
-In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]',
-    inlined from 'void CKFFInfoReader::ReadRawSection()' at kmc_tools/kff_info_reader.cpp:260:31:
-/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
- 1287 |           _M_realloc_insert(end(), __x);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
-In file included from /usr/include/c++/12/vector:63:
-/usr/include/c++/12/bits/stl_uninitialized.h: In function '_ForwardIterator std::__do_uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*]':
-/usr/include/c++/12/bits/stl_uninitialized.h:113:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
-  113 |     __do_uninit_copy(_InputIterator __first, _InputIterator __last,
-      |     ^~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_uninitialized.h:113:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
-/usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CKFFVariables&}; _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]':
-/usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<CKFFVariables>::iterator' changed in GCC 7.1
-  439 |       vector<_Tp, _Alloc>::
-      |       ^~~~~~~~~~~~~~~~~~~
-In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; bool _TrivialValueTypes = false]',
-    inlined from '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*]' at /usr/include/c++/12/bits/stl_uninitialized.h:185:15,
-    inlined from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; _Tp = CKFFDataSection]' at /usr/include/c++/12/bits/stl_uninitialized.h:372:37,
-    inlined from 'std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]' at /usr/include/c++/12/bits/stl_vector.h:601:31,
-    inlined from 'CKFFVariables::CKFFVariables(const CKFFVariables&)' at kmc_tools/kff_info_reader.h:38:8,
-    inlined from 'void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/new_allocator.h:175:4,
-    inlined from 'static void std::allocator_traits<std::allocator<_CharT> >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/alloc_traits.h:516:17,
-    inlined from 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {const CKFFVariables&}; _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]' at /usr/include/c++/12/bits/vector.tcc:462:28:
-/usr/include/c++/12/bits/stl_uninitialized.h:137:39: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
-  137 |         { return std::__do_uninit_copy(__first, __last, __result); }
-      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
-In static member function 'static _ForwardIterator std::__uninitialized_copy<_TrivialValueTypes>::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; bool _TrivialValueTypes = false]',
-    inlined from '_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*]' at /usr/include/c++/12/bits/stl_uninitialized.h:185:15,
-    inlined from '_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, allocator<_Tp>&) [with _InputIterator = __gnu_cxx::__normal_iterator<const CKFFDataSection*, vector<CKFFDataSection> >; _ForwardIterator = CKFFDataSection*; _Tp = CKFFDataSection]' at /usr/include/c++/12/bits/stl_uninitialized.h:372:37,
-    inlined from 'std::vector<_Tp, _Alloc>::vector(const std::vector<_Tp, _Alloc>&) [with _Tp = CKFFDataSection; _Alloc = std::allocator<CKFFDataSection>]' at /usr/include/c++/12/bits/stl_vector.h:601:31,
-    inlined from 'CKFFVariables::CKFFVariables(const CKFFVariables&)' at kmc_tools/kff_info_reader.h:38:8,
-    inlined from 'void std::__new_allocator<_Tp>::construct(_Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/new_allocator.h:175:4,
-    inlined from 'static void std::allocator_traits<std::allocator<_CharT> >::construct(allocator_type&, _Up*, _Args&& ...) [with _Up = CKFFVariables; _Args = {const CKFFVariables&}; _Tp = CKFFVariables]' at /usr/include/c++/12/bits/alloc_traits.h:516:17,
-    inlined from 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]' at /usr/include/c++/12/bits/stl_vector.h:1281:30,
-    inlined from 'void CKFFInfoReader::ReadVariableSection()' at kmc_tools/kff_info_reader.cpp:232:34:
-/usr/include/c++/12/bits/stl_uninitialized.h:137:39: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<const CKFFDataSection*, std::vector<CKFFDataSection> >' changed in GCC 7.1
-  137 |         { return std::__do_uninit_copy(__first, __last, __result); }
-      |                  ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
-In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = CKFFVariables; _Alloc = std::allocator<CKFFVariables>]',
-    inlined from 'void CKFFInfoReader::ReadVariableSection()' at kmc_tools/kff_info_reader.cpp:232:34:
-/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFVariables*, std::vector<CKFFVariables> >' changed in GCC 7.1
- 1287 |           _M_realloc_insert(end(), __x);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
-In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {char&, long long int}; _Tp = CKFFIndexPair; _Alloc = std::allocator<CKFFIndexPair>]',
-    inlined from 'CKFFInfoReader::CKFFInfoReader(const std::string&)' at kmc_tools/kff_info_reader.cpp:157:22:
-/usr/include/c++/12/bits/vector.tcc:123:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
-  123 |           _M_realloc_insert(end(), std::forward<_Args>(__args)...);
-      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]',
-    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
-    inlined from 'CKFFInfoReader::CKFFInfoReader(const std::string&)' at kmc_tools/kff_info_reader.cpp:165:11:
-/usr/include/c++/12/bits/stl_algo.h:1937:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
- 1937 |           std::__introsort_loop(__first, __last,
-      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
- 1938 |                                 std::__lg(__last - __first) * 2,
-      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 1939 |                                 __comp);
-      |                                 ~~~~~~~
-In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]',
-    inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31,
-    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<CKFFIndexPair*, vector<CKFFIndexPair> >; _Compare = CKFFInfoReader::CKFFInfoReader(const std::string&)::<lambda(const auto:1&, const auto:2&)>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
-    inlined from 'CKFFInfoReader::CKFFInfoReader(const std::string&)' at kmc_tools/kff_info_reader.cpp:165:11:
-/usr/include/c++/12/bits/stl_algo.h:1849:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
- 1849 |           std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
-      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-/usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CKFFIndexPair*, std::vector<CKFFIndexPair> >' changed in GCC 7.1
- 1854 |         std::__insertion_sort(__first, __last, __comp);
-      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-ar rcs libkmc.a kmc_api/mmer.o kmc_api/kmc_file.o kmc_api/kmer_api.o
-ranlib libkmc.a
-mkdir -p bin
-g++ -o bin/kmc_dump kmc_dump/nc_utils.o kmc_dump/kmc_dump.o kmc_api/mmer.o kmc_api/kmc_file.o kmc_api/kmer_api.o -Wl,-z,relro -Wl,-z,now -lm -O3 -lpthread -std=c++11 -lz -lbz2
-In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
-    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 5]' at kmc_core/kmc.h:1491:6:
-/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
- 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
-      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
-    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 4]' at kmc_core/kmc.h:1491:6:
-/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
- 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
-      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'std::vector<_Tp, _Alloc>::reference std::vector<_Tp, _Alloc>::emplace_back(_Args&& ...) [with _Args = {long long unsigned int}; _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
     inlined from 'void std::vector<_Tp, _Alloc>::push_back(value_type&&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]' at /usr/include/c++/12/bits/stl_vector.h:1294:21,
     inlined from 'bool CTools<SIZE>::filter() [with unsigned int SIZE = 3]' at kmc_tools/kmc_tools.cpp:252:24:
@@ -2770,12 +2763,7 @@
  4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
       |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
-    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 3]' at kmc_core/kmc.h:1491:6:
-/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
- 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
-      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
-    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 2]' at kmc_core/kmc.h:1491:6:
+    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 8]' at kmc_core/kmc.h:1491:6:
 /usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
  4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
       |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -2790,6 +2778,36 @@
 /usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
  4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
       |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In member function 'void std::vector<_Tp, _Alloc>::push_back(const value_type&) [with _Tp = long long unsigned int; _Alloc = std::allocator<long long unsigned int>]',
+    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 2]' at kmc_core/kmc.h:276:24:
+/usr/include/c++/12/bits/stl_vector.h:1287:28: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1287 |           _M_realloc_insert(end(), __x);
+      |           ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
+In function 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
+    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = greater<long long unsigned int>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
+    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 2]' at kmc_core/kmc.h:280:8:
+/usr/include/c++/12/bits/stl_algo.h:1937:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1937 |           std::__introsort_loop(__first, __last,
+      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
+ 1938 |                                 std::__lg(__last - __first) * 2,
+      |                                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 1939 |                                 __comp);
+      |                                 ~~~~~~~
+In function 'void std::__final_insertion_sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]',
+    inlined from 'void std::__sort(_RandomAccessIterator, _RandomAccessIterator, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<greater<long long unsigned int> >]' at /usr/include/c++/12/bits/stl_algo.h:1940:31,
+    inlined from 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long unsigned int*, vector<long long unsigned int> >; _Compare = greater<long long unsigned int>]' at /usr/include/c++/12/bits/stl_algo.h:4853:18,
+    inlined from 'void CKMC<SIZE>::SetThreads1Stage(const KMC::Stage1Params&) [with unsigned int SIZE = 2]' at kmc_core/kmc.h:280:8:
+/usr/include/c++/12/bits/stl_algo.h:1849:32: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1849 |           std::__insertion_sort(__first, __first + int(_S_threshold), __comp);
+      |           ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+/usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long unsigned int*, std::vector<long long unsigned int> >' changed in GCC 7.1
+ 1854 |         std::__insertion_sort(__first, __last, __comp);
+      |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
+In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
+    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 7]' at kmc_core/kmc.h:1491:6:
+/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
+ 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
+      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In member function 'std::vector<_Tp, _Alloc>::iterator std::vector<_Tp, _Alloc>::erase(const_iterator) [with _Tp = CTransformOutputDesc; _Alloc = std::allocator<CTransformOutputDesc>]',
     inlined from 'bool CTools<SIZE>::transform() [with unsigned int SIZE = 4]' at kmc_tools/kmc_tools.cpp:428:45,
     inlined from 'bool CTools<SIZE>::Process() [with unsigned int SIZE = 4]' at kmc_tools/kmc_tools.cpp:531:20,
@@ -2848,12 +2866,39 @@
 /usr/include/c++/12/bits/stl_vector.h:1530:24: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<CTransformOutputDesc*, std::vector<CTransformOutputDesc> >' changed in GCC 7.1
  1530 |       { return _M_erase(begin() + (__position - cbegin())); }
       |                ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
+    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 6]' at kmc_core/kmc.h:1491:6:
+/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
+ 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
+      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
+    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 5]' at kmc_core/kmc.h:1491:6:
+/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
+ 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
+      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
+    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 4]' at kmc_core/kmc.h:1491:6:
+/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
+ 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
+      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
+    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 3]' at kmc_core/kmc.h:1491:6:
+/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
+ 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
+      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+In function 'void std::sort(_RAIter, _RAIter, _Compare) [with _RAIter = __gnu_cxx::__normal_iterator<long long int*, vector<long long int> >; _Compare = greater<long long int>]',
+    inlined from 'KMC::Stage2Results CKMC<SIZE>::ProcessStage2_impl() [with unsigned int SIZE = 2]' at kmc_core/kmc.h:1491:6:
+/usr/include/c++/12/bits/stl_algo.h:4853:18: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<long long int*, std::vector<long long int> >' changed in GCC 7.1
+ 4853 |       std::__sort(__first, __last, __gnu_cxx::__ops::__iter_comp_iter(__comp));
+      |       ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 In file included from /usr/include/c++/12/list:63,
                  from kmc_core/queues.h:18:
 /usr/include/c++/12/bits/stl_list.h: In member function 'void std::__cxx11::list<_Tp, _Alloc>::_M_insert(iterator, _Args&& ...) [with _Args = {int, long long unsigned int&}; _Tp = std::pair<long long unsigned int, long long unsigned int>; _Alloc = std::allocator<std::pair<long long unsigned int, long long unsigned int> >]':
 /usr/include/c++/12/bits/stl_list.h:2003:8: note: parameter passing for argument of type 'std::__cxx11::list<std::pair<long long unsigned int, long long unsigned int> >::iterator' changed in GCC 7.1
  2003 |        _M_insert(iterator __position, _Args&&... __args)
       |        ^~~~~~~~~
+mkdir -p bin
+g++ -o bin/kmc_tools kmc_tools/kmer_file_header.o kmc_tools/kmc_tools.o kmc_tools/nc_utils.o kmc_tools/parameters_parser.o kmc_tools/parser.o kmc_tools/tokenizer.o kmc_tools/fastq_filter.o kmc_tools/fastq_reader.o kmc_tools/fastq_writer.o kmc_tools/percent_progress.o kmc_tools/kff_info_reader.o kmc_api/mmer.o kmc_api/kmc_file.o kmc_api/kmer_api.o kmc_core/kff_writer.o  -Wl,-z,relro -Wl,-z,now -lm -O3 -lpthread -std=c++11 -lz -lbz2
 /usr/include/c++/12/bits/stl_algo.h: In function 'void std::__introsort_loop(_RandomAccessIterator, _RandomAccessIterator, _Size, _Compare) [with _RandomAccessIterator = __gnu_cxx::__normal_iterator<pair<long long unsigned int, long long unsigned int>*, vector<pair<long long unsigned int, long long unsigned int> > >; _Size = int; _Compare = __gnu_cxx::__ops::_Iter_comp_iter<CKmerBinSorter<1>::ExpandKxmersBoth(uint64)::<lambda(const pair<long long unsigned int, long long unsigned int>&, const pair<long long unsigned int, long long unsigned int>&)> >]':
 /usr/include/c++/12/bits/stl_algo.h:1908:5: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::pair<long long unsigned int, long long unsigned int>*, std::vector<std::pair<long long unsigned int, long long unsigned int> > >' changed in GCC 7.1
  1908 |     __introsort_loop(_RandomAccessIterator __first,
@@ -2882,8 +2927,6 @@
 /usr/include/c++/12/bits/stl_algo.h:1854:30: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<std::pair<long long unsigned int, long long unsigned int>*, std::vector<std::pair<long long unsigned int, long long unsigned int> > >' changed in GCC 7.1
  1854 |         std::__insertion_sort(__first, __last, __comp);
       |         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
-mkdir -p bin
-g++ -o bin/kmc_tools kmc_tools/kmer_file_header.o kmc_tools/kmc_tools.o kmc_tools/nc_utils.o kmc_tools/parameters_parser.o kmc_tools/parser.o kmc_tools/tokenizer.o kmc_tools/fastq_filter.o kmc_tools/fastq_reader.o kmc_tools/fastq_writer.o kmc_tools/percent_progress.o kmc_tools/kff_info_reader.o kmc_api/mmer.o kmc_api/kmc_file.o kmc_api/kmer_api.o kmc_core/kff_writer.o  -Wl,-z,relro -Wl,-z,now -lm -O3 -lpthread -std=c++11 -lz -lbz2
 /usr/include/c++/12/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(iterator, _Args&& ...) [with _Args = {SubArrayDesc}; _Tp = SubArrayDesc; _Alloc = std::allocator<SubArrayDesc>]':
 /usr/include/c++/12/bits/vector.tcc:439:7: note: parameter passing for argument of type 'std::vector<SubArrayDesc>::iterator' changed in GCC 7.1
   439 |       vector<_Tp, _Alloc>::
@@ -3185,7 +3228,7 @@
 make[2]: Leaving directory '/build/kmc-3.2.1+dfsg'
 make[1]: Leaving directory '/build/kmc-3.2.1+dfsg'
    dh_auto_test
-	rm -fr -- /tmp/dh-xdg-rundir-myc1UOmc
+	rm -fr -- /tmp/dh-xdg-rundir-jv4zSAA_
    create-stamp debian/debhelper-build-stamp
    dh_prep
 	rm -f -- debian/kmc.substvars debian/libkmc-dev.substvars
@@ -3247,25 +3290,27 @@
 	install -p -m0644 ./debian/man/kmc_tools-union.1 debian/kmc/usr/share/man/man1/kmc_tools-union.1
 	install -m0755 -d debian/kmc/usr/share/man/man1/
 	install -p -m0644 ./debian/man/kmc_tools.1 debian/kmc/usr/share/man/man1/kmc_tools.1
-	man-recode --to-code UTF-8 --suffix .dh-new debian/kmc/usr/share/man/man1/kmc.1 debian/kmc/usr/share/man/man1/kmc_dump.1 debian/kmc/usr/share/man/man1/kmc_tools-compact.1 debian/kmc/usr/share/man/man1/kmc_tools-complex.1 debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1
-	man-recode --to-code UTF-8 --suffix .dh-new debian/kmc/usr/share/man/man1/kmc_tools-sort.1 debian/kmc/usr/share/man/man1/kmc_tools-union.1 debian/kmc/usr/share/man/man1/kmc_tools.1
-	man-recode --to-code UTF-8 --suffix .dh-new debian/kmc/usr/share/man/man1/kmc_tools-dump.1 debian/kmc/usr/share/man/man1/kmc_tools-filter.1 debian/kmc/usr/share/man/man1/kmc_tools-histogram.1 debian/kmc/usr/share/man/man1/kmc_tools-intersect.1 debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1
+	man-recode --to-code UTF-8 --suffix .dh-new debian/kmc/usr/share/man/man1/kmc_tools-intersect.1 debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1 debian/kmc/usr/share/man/man1/kmc_tools-sort.1 debian/kmc/usr/share/man/man1/kmc_tools-union.1
+	man-recode --to-code UTF-8 --suffix .dh-new debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1 debian/kmc/usr/share/man/man1/kmc_tools-dump.1 debian/kmc/usr/share/man/man1/kmc_tools-filter.1 debian/kmc/usr/share/man/man1/kmc_tools-histogram.1
+	man-recode --to-code UTF-8 --suffix .dh-new debian/kmc/usr/share/man/man1/kmc.1 debian/kmc/usr/share/man/man1/kmc_dump.1 debian/kmc/usr/share/man/man1/kmc_tools-compact.1 debian/kmc/usr/share/man/man1/kmc_tools-complex.1
+	man-recode --to-code UTF-8 --suffix .dh-new debian/kmc/usr/share/man/man1/kmc_tools.1
+	mv debian/kmc/usr/share/man/man1/kmc_tools.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools.1
+	chmod 0644 -- debian/kmc/usr/share/man/man1/kmc_tools.1
+	mv debian/kmc/usr/share/man/man1/kmc_tools-intersect.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-intersect.1
+	mv debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1
 	mv debian/kmc/usr/share/man/man1/kmc_tools-sort.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-sort.1
 	mv debian/kmc/usr/share/man/man1/kmc_tools-union.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-union.1
-	mv debian/kmc/usr/share/man/man1/kmc_tools.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools.1
-	chmod 0644 -- debian/kmc/usr/share/man/man1/kmc_tools-sort.1 debian/kmc/usr/share/man/man1/kmc_tools-union.1 debian/kmc/usr/share/man/man1/kmc_tools.1
+	chmod 0644 -- debian/kmc/usr/share/man/man1/kmc_tools-intersect.1 debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1 debian/kmc/usr/share/man/man1/kmc_tools-sort.1 debian/kmc/usr/share/man/man1/kmc_tools-union.1
+	mv debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1
 	mv debian/kmc/usr/share/man/man1/kmc_tools-dump.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-dump.1
 	mv debian/kmc/usr/share/man/man1/kmc_tools-filter.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-filter.1
 	mv debian/kmc/usr/share/man/man1/kmc_tools-histogram.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-histogram.1
-	mv debian/kmc/usr/share/man/man1/kmc_tools-intersect.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-intersect.1
-	mv debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1
-	chmod 0644 -- debian/kmc/usr/share/man/man1/kmc_tools-dump.1 debian/kmc/usr/share/man/man1/kmc_tools-filter.1 debian/kmc/usr/share/man/man1/kmc_tools-histogram.1 debian/kmc/usr/share/man/man1/kmc_tools-intersect.1 debian/kmc/usr/share/man/man1/kmc_tools-kmers_subtract.1
+	chmod 0644 -- debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1 debian/kmc/usr/share/man/man1/kmc_tools-dump.1 debian/kmc/usr/share/man/man1/kmc_tools-filter.1 debian/kmc/usr/share/man/man1/kmc_tools-histogram.1
 	mv debian/kmc/usr/share/man/man1/kmc.1.dh-new debian/kmc/usr/share/man/man1/kmc.1
 	mv debian/kmc/usr/share/man/man1/kmc_dump.1.dh-new debian/kmc/usr/share/man/man1/kmc_dump.1
 	mv debian/kmc/usr/share/man/man1/kmc_tools-compact.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-compact.1
 	mv debian/kmc/usr/share/man/man1/kmc_tools-complex.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-complex.1
-	mv debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1.dh-new debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1
-	chmod 0644 -- debian/kmc/usr/share/man/man1/kmc.1 debian/kmc/usr/share/man/man1/kmc_dump.1 debian/kmc/usr/share/man/man1/kmc_tools-compact.1 debian/kmc/usr/share/man/man1/kmc_tools-complex.1 debian/kmc/usr/share/man/man1/kmc_tools-counters_subtract.1
+	chmod 0644 -- debian/kmc/usr/share/man/man1/kmc.1 debian/kmc/usr/share/man/man1/kmc_dump.1 debian/kmc/usr/share/man/man1/kmc_tools-compact.1 debian/kmc/usr/share/man/man1/kmc_tools-complex.1
 make[1]: Leaving directory '/build/kmc-3.2.1+dfsg'
    dh_perl
    dh_link
@@ -3273,25 +3318,25 @@
    dh_compress
 	cd debian/kmc
 	cd debian/libkmc-dev
-	chmod a-x usr/share/doc/kmc/changelog.Debian usr/share/man/man1/kmc.1 usr/share/man/man1/kmc_dump.1 usr/share/man/man1/kmc_tools-compact.1 usr/share/man/man1/kmc_tools-complex.1 usr/share/man/man1/kmc_tools-counters_subtract.1 usr/share/man/man1/kmc_tools-dump.1 usr/share/man/man1/kmc_tools-filter.1 usr/share/man/man1/kmc_tools-histogram.1 usr/share/man/man1/kmc_tools-intersect.1 usr/share/man/man1/kmc_tools-kmers_subtract.1 usr/share/man/man1/kmc_tools-sort.1 usr/share/man/man1/kmc_tools-union.1 usr/share/man/man1/kmc_tools.1
-	gzip -9nf usr/share/doc/kmc/changelog.Debian usr/share/man/man1/kmc.1 usr/share/man/man1/kmc_dump.1 usr/share/man/man1/kmc_tools-compact.1 usr/share/man/man1/kmc_tools-complex.1 usr/share/man/man1/kmc_tools-counters_subtract.1 usr/share/man/man1/kmc_tools-dump.1 usr/share/man/man1/kmc_tools-filter.1 usr/share/man/man1/kmc_tools-histogram.1 usr/share/man/man1/kmc_tools-intersect.1 usr/share/man/man1/kmc_tools-kmers_subtract.1 usr/share/man/man1/kmc_tools-sort.1 usr/share/man/man1/kmc_tools-union.1 usr/share/man/man1/kmc_tools.1
 	chmod a-x usr/share/doc/libkmc-dev/changelog.Debian
 	gzip -9nf usr/share/doc/libkmc-dev/changelog.Debian
+	chmod a-x usr/share/doc/kmc/changelog.Debian usr/share/man/man1/kmc.1 usr/share/man/man1/kmc_dump.1 usr/share/man/man1/kmc_tools-compact.1 usr/share/man/man1/kmc_tools-complex.1 usr/share/man/man1/kmc_tools-counters_subtract.1 usr/share/man/man1/kmc_tools-dump.1 usr/share/man/man1/kmc_tools-filter.1 usr/share/man/man1/kmc_tools-histogram.1 usr/share/man/man1/kmc_tools-intersect.1 usr/share/man/man1/kmc_tools-kmers_subtract.1 usr/share/man/man1/kmc_tools-sort.1 usr/share/man/man1/kmc_tools-union.1 usr/share/man/man1/kmc_tools.1
+	gzip -9nf usr/share/doc/kmc/changelog.Debian usr/share/man/man1/kmc.1 usr/share/man/man1/kmc_dump.1 usr/share/man/man1/kmc_tools-compact.1 usr/share/man/man1/kmc_tools-complex.1 usr/share/man/man1/kmc_tools-counters_subtract.1 usr/share/man/man1/kmc_tools-dump.1 usr/share/man/man1/kmc_tools-filter.1 usr/share/man/man1/kmc_tools-histogram.1 usr/share/man/man1/kmc_tools-intersect.1 usr/share/man/man1/kmc_tools-kmers_subtract.1 usr/share/man/man1/kmc_tools-sort.1 usr/share/man/man1/kmc_tools-union.1 usr/share/man/man1/kmc_tools.1
 	cd '/build/kmc-3.2.1+dfsg'
 	cd '/build/kmc-3.2.1+dfsg'
    dh_fixperms
-	find debian/kmc ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s
 	find debian/libkmc-dev ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s
+	find debian/kmc ! -type l -a -true -a -true -print0 2>/dev/null | xargs -0r chmod go=rX,u+rw,a-s
 	find debian/libkmc-dev/usr/share/doc -type f -a -true -a ! -regex 'debian/libkmc-dev/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | xargs -0r chmod 0644
 	find debian/kmc/usr/share/doc -type f -a -true -a ! -regex 'debian/kmc/usr/share/doc/[^/]*/examples/.*' -print0 2>/dev/null | xargs -0r chmod 0644
 	find debian/libkmc-dev/usr/share/doc -type d -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0755
 	find debian/kmc/usr/share/doc -type d -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0755
-	find debian/libkmc-dev/usr/include -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
 	find debian/kmc/usr/share/man -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
-	find debian/libkmc-dev -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' -o -name '*.node' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
 	find debian/kmc -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' -o -name '*.node' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
-	find debian/libkmc-dev/usr/lib -type f -name '*.ali' -a -true -a -true -print0 2>/dev/null | xargs -0r chmod uga-w
+	find debian/libkmc-dev/usr/include -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
 	find debian/kmc/usr/bin -type f -a -true -a -true -print0 2>/dev/null | xargs -0r chmod a+x
+	find debian/libkmc-dev -type f \( -name '*.so.*' -o -name '*.so' -o -name '*.la' -o -name '*.a' -o -name '*.js' -o -name '*.css' -o -name '*.scss' -o -name '*.sass' -o -name '*.jpeg' -o -name '*.jpg' -o -name '*.png' -o -name '*.gif' -o -name '*.cmxs' -o -name '*.node' \) -a -true -a -true -print0 2>/dev/null | xargs -0r chmod 0644
+	find debian/libkmc-dev/usr/lib -type f -name '*.ali' -a -true -a -true -print0 2>/dev/null | xargs -0r chmod uga-w
    dh_missing
    dh_dwz -a
 	install -m0755 -d debian/kmc/usr/lib/debug/.dwz/arm-linux-gnueabihf
@@ -3300,22 +3345,22 @@
 	chmod 0644 -- debian/kmc/usr/lib/debug/.dwz/arm-linux-gnueabihf/kmc.debug
    dh_strip -a
 	strip --strip-debug --remove-section=.comment --remove-section=.note --enable-deterministic-archives -R .gnu.lto_\* -R .gnu.debuglto_\* -N __gnu_lto_slim -N __gnu_lto_v1 debian/libkmc-dev/usr/lib/arm-linux-gnueabihf/libkmc.a
-	strip --strip-debug --remove-section=.comment --remove-section=.note --enable-deterministic-archives -R .gnu.lto_\* -R .gnu.debuglto_\* -N __gnu_lto_slim -N __gnu_lto_v1 debian/libkmc-dev/usr/lib/arm-linux-gnueabihf/libkmc_core.a
 	install -m0755 -d debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/d4
 	objcopy --only-keep-debug --compress-debug-sections debian/kmc/usr/bin/kmc_dump debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/d4/e9ad250d455ec1c107d741c26d5f2aab863d2f.debug
+	strip --strip-debug --remove-section=.comment --remove-section=.note --enable-deterministic-archives -R .gnu.lto_\* -R .gnu.debuglto_\* -N __gnu_lto_slim -N __gnu_lto_v1 debian/libkmc-dev/usr/lib/arm-linux-gnueabihf/libkmc_core.a
 	chmod 0644 -- debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/d4/e9ad250d455ec1c107d741c26d5f2aab863d2f.debug
 	strip --remove-section=.comment --remove-section=.note debian/kmc/usr/bin/kmc_dump
 	objcopy --add-gnu-debuglink debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/d4/e9ad250d455ec1c107d741c26d5f2aab863d2f.debug debian/kmc/usr/bin/kmc_dump
-	install -m0755 -d debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96
-	objcopy --only-keep-debug --compress-debug-sections debian/kmc/usr/bin/kmc_tools debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96/01b098b076ec5a41d9b935c6b4acd8ff63200d.debug
-	chmod 0644 -- debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96/01b098b076ec5a41d9b935c6b4acd8ff63200d.debug
-	strip --remove-section=.comment --remove-section=.note debian/kmc/usr/bin/kmc_tools
-	objcopy --add-gnu-debuglink debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96/01b098b076ec5a41d9b935c6b4acd8ff63200d.debug debian/kmc/usr/bin/kmc_tools
 	install -m0755 -d debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/fb
 	objcopy --only-keep-debug --compress-debug-sections debian/kmc/usr/bin/kmc debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/fb/a0da771621185fb54c0c4832adf3809abb7ee5.debug
 	chmod 0644 -- debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/fb/a0da771621185fb54c0c4832adf3809abb7ee5.debug
 	strip --remove-section=.comment --remove-section=.note debian/kmc/usr/bin/kmc
 	objcopy --add-gnu-debuglink debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/fb/a0da771621185fb54c0c4832adf3809abb7ee5.debug debian/kmc/usr/bin/kmc
+	install -m0755 -d debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96
+	objcopy --only-keep-debug --compress-debug-sections debian/kmc/usr/bin/kmc_tools debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96/01b098b076ec5a41d9b935c6b4acd8ff63200d.debug
+	chmod 0644 -- debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96/01b098b076ec5a41d9b935c6b4acd8ff63200d.debug
+	strip --remove-section=.comment --remove-section=.note debian/kmc/usr/bin/kmc_tools
+	objcopy --add-gnu-debuglink debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.build-id/96/01b098b076ec5a41d9b935c6b4acd8ff63200d.debug debian/kmc/usr/bin/kmc_tools
 	install -m0755 -d debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.dwz
 	cp --reflink=auto -a debian/kmc/usr/lib/debug/.dwz/arm-linux-gnueabihf debian/.debhelper/kmc/dbgsym-root/usr/lib/debug/.dwz
 	rm -fr debian/kmc/usr/lib/debug/.dwz
@@ -3328,9 +3373,9 @@
 	rm -f debian/libkmc-dev/DEBIAN/shlibs
    dh_shlibdeps -a
 	install -m0755 -d debian/kmc/DEBIAN
-	dpkg-shlibdeps -Tdebian/kmc.substvars debian/kmc/usr/bin/kmc_dump debian/kmc/usr/bin/kmc_tools debian/kmc/usr/bin/kmc
-dpkg-shlibdeps: warning: debian/kmc/usr/bin/kmc_tools contains an unresolvable reference to symbol __aeabi_atexit@CXXABI_ARM_1.3.3: it's probably a plugin
+	dpkg-shlibdeps -Tdebian/kmc.substvars debian/kmc/usr/bin/kmc_dump debian/kmc/usr/bin/kmc debian/kmc/usr/bin/kmc_tools
 dpkg-shlibdeps: warning: debian/kmc/usr/bin/kmc contains an unresolvable reference to symbol __aeabi_atexit@CXXABI_ARM_1.3.3: it's probably a plugin
+dpkg-shlibdeps: warning: debian/kmc/usr/bin/kmc_tools contains an unresolvable reference to symbol __aeabi_atexit@CXXABI_ARM_1.3.3: it's probably a plugin
 dpkg-shlibdeps: warning: debian/kmc/usr/bin/kmc_dump contains an unresolvable reference to symbol __aeabi_atexit@CXXABI_ARM_1.3.3: it's probably a plugin
    dh_installdeb
 	install -m0755 -d debian/kmc/DEBIAN
@@ -3339,38 +3384,38 @@
    debian/rules override_dh_gencontrol
 make[1]: Entering directory '/build/kmc-3.2.1+dfsg'
 dh_gencontrol -- -Vsimde:Built-Using="simde (= 0.7.4~rc2-2), "
-	install -m0755 -d debian/libkmc-dev/DEBIAN
-	echo misc:Depends= >> debian/libkmc-dev.substvars
-	echo misc:Pre-Depends= >> debian/libkmc-dev.substvars
-	dpkg-gencontrol -plibkmc-dev -ldebian/changelog -Tdebian/libkmc-dev.substvars -Pdebian/libkmc-dev "-Vsimde:Built-Using=simde (= 0.7.4~rc2-2), "
 	install -m0755 -d debian/kmc/DEBIAN
 	echo misc:Depends= >> debian/kmc.substvars
 	echo misc:Pre-Depends= >> debian/kmc.substvars
 	install -m0755 -d debian/.debhelper/kmc/dbgsym-root/DEBIAN
 	dpkg-gencontrol -pkmc -ldebian/changelog -Tdebian/kmc.substvars -Pdebian/.debhelper/kmc/dbgsym-root "-Vsimde:Built-Using=simde (= 0.7.4~rc2-2), " -UPre-Depends -URecommends -USuggests -UEnhances -UProvides -UEssential -UConflicts -DPriority=optional -UHomepage -UImportant -UBuilt-Using -DAuto-Built-Package=debug-symbols -UProtected -DPackage=kmc-dbgsym "-DDepends=kmc (= \${binary:Version})" "-DDescription=debug symbols for kmc" "-DBuild-Ids=9601b098b076ec5a41d9b935c6b4acd8ff63200d d4e9ad250d455ec1c107d741c26d5f2aab863d2f fba0da771621185fb54c0c4832adf3809abb7ee5" -DSection=debug -UMulti-Arch -UReplaces -UBreaks
-dpkg-gencontrol: warning: Depends field of package libkmc-dev: substitution variable ${shlibs:Depends} used, but is not defined
-	chmod 0644 -- debian/libkmc-dev/DEBIAN/control
+	install -m0755 -d debian/libkmc-dev/DEBIAN
+	echo misc:Depends= >> debian/libkmc-dev.substvars
+	echo misc:Pre-Depends= >> debian/libkmc-dev.substvars
+	dpkg-gencontrol -plibkmc-dev -ldebian/changelog -Tdebian/libkmc-dev.substvars -Pdebian/libkmc-dev "-Vsimde:Built-Using=simde (= 0.7.4~rc2-2), "
 	chmod 0644 -- debian/.debhelper/kmc/dbgsym-root/DEBIAN/control
 	dpkg-gencontrol -pkmc -ldebian/changelog -Tdebian/kmc.substvars -Pdebian/kmc "-Vsimde:Built-Using=simde (= 0.7.4~rc2-2), "
+dpkg-gencontrol: warning: Depends field of package libkmc-dev: substitution variable ${shlibs:Depends} used, but is not defined
+	chmod 0644 -- debian/libkmc-dev/DEBIAN/control
 	chmod 0644 -- debian/kmc/DEBIAN/control
 make[1]: Leaving directory '/build/kmc-3.2.1+dfsg'
    dh_md5sums
 	install -m0755 -d debian/kmc/DEBIAN
 	cd debian/kmc >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums
 	install -m0755 -d debian/libkmc-dev/DEBIAN
+	cd debian/libkmc-dev >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums
 	chmod 0644 -- debian/kmc/DEBIAN/md5sums
 	install -m0755 -d debian/.debhelper/kmc/dbgsym-root/DEBIAN
-	cd debian/libkmc-dev >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums
 	cd debian/.debhelper/kmc/dbgsym-root >/dev/null && xargs -r0 md5sum | perl -pe 'if (s@^\\@@) { s/\\\\/\\/g; }' > DEBIAN/md5sums
 	chmod 0644 -- debian/libkmc-dev/DEBIAN/md5sums
 	chmod 0644 -- debian/.debhelper/kmc/dbgsym-root/DEBIAN/md5sums
    dh_builddeb
-	dpkg-deb --root-owner-group --build debian/libkmc-dev ..
-	dpkg-deb --root-owner-group --build debian/.debhelper/kmc/dbgsym-root ..
 	dpkg-deb --root-owner-group --build debian/kmc ..
+	dpkg-deb --root-owner-group --build debian/libkmc-dev ..
 dpkg-deb: building package 'libkmc-dev' in '../libkmc-dev_3.2.1+dfsg-1_armhf.deb'.
-dpkg-deb: building package 'kmc-dbgsym' in '../kmc-dbgsym_3.2.1+dfsg-1_armhf.deb'.
 dpkg-deb: building package 'kmc' in '../kmc_3.2.1+dfsg-1_armhf.deb'.
+	dpkg-deb --root-owner-group --build debian/.debhelper/kmc/dbgsym-root ..
+dpkg-deb: building package 'kmc-dbgsym' in '../kmc-dbgsym_3.2.1+dfsg-1_armhf.deb'.
  dpkg-genbuildinfo --build=binary -O../kmc_3.2.1+dfsg-1_armhf.buildinfo
  dpkg-genchanges --build=binary -O../kmc_3.2.1+dfsg-1_armhf.changes
 dpkg-genchanges: info: binary-only upload (no source code included)
@@ -3378,12 +3423,14 @@
 dpkg-buildpackage: info: binary-only upload (no source included)
 dpkg-genchanges: info: including full source code in upload
 I: copying local configuration
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/B01_cleanup starting
+I: user script /srv/workspace/pbuilder/20472/tmp/hooks/B01_cleanup finished
 I: unmounting dev/ptmx filesystem
 I: unmounting dev/pts filesystem
 I: unmounting dev/shm filesystem
 I: unmounting proc filesystem
 I: unmounting sys filesystem
 I: cleaning the build env 
-I: removing directory /srv/workspace/pbuilder/12339 and its subdirectories
-I: Current time: Tue May  9 10:29:16 -12 2023
-I: pbuilder-time-stamp: 1683671356
+I: removing directory /srv/workspace/pbuilder/20472 and its subdirectories
+I: Current time: Wed May 10 12:47:32 +14 2023
+I: pbuilder-time-stamp: 1683672452