summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/altcoins/memorycoin.nix4
-rw-r--r--pkgs/applications/altcoins/primecoin.nix4
-rw-r--r--pkgs/applications/audio/bitwig-studio/default.nix4
-rw-r--r--pkgs/applications/audio/calf/default.nix6
-rw-r--r--pkgs/applications/audio/distrho/default.nix18
-rw-r--r--pkgs/applications/audio/ingen/default.nix14
-rw-r--r--pkgs/applications/audio/mod-distortion/default.nix10
-rw-r--r--pkgs/applications/audio/qsampler/default.nix4
-rw-r--r--pkgs/applications/editors/atom/default.nix4
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-packages.nix3
-rw-r--r--pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix3
-rw-r--r--pkgs/applications/gis/qgis/default.nix7
-rw-r--r--pkgs/applications/graphics/awesomebump/default.nix5
-rw-r--r--pkgs/applications/graphics/awesomebump/qtnproperty-parallel-building.patch9
-rw-r--r--pkgs/applications/graphics/pqiv/default.nix10
-rw-r--r--pkgs/applications/graphics/sane/backends/git.nix6
-rw-r--r--pkgs/applications/graphics/unigine-valley/default.nix2
-rw-r--r--pkgs/applications/misc/airspy/default.nix15
-rw-r--r--pkgs/applications/misc/camlistore/default.nix35
-rw-r--r--pkgs/applications/misc/electrum/default.nix22
-rw-r--r--pkgs/applications/misc/golden-cheetah/default.nix4
-rw-r--r--pkgs/applications/misc/googleearth/default.nix2
-rw-r--r--pkgs/applications/misc/ipmicfg/default.nix7
-rw-r--r--pkgs/applications/misc/keepassx/community.nix8
-rw-r--r--pkgs/applications/misc/perkeep/default.nix31
-rw-r--r--pkgs/applications/misc/playonlinux/default.nix2
-rw-r--r--pkgs/applications/misc/xmr-stak/default.nix20
-rw-r--r--pkgs/applications/networking/bittorrentsync/generic.nix5
-rw-r--r--pkgs/applications/networking/browsers/chromium/plugins.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.nix18
-rw-r--r--pkgs/applications/networking/browsers/firefox/common.nix3
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix12
-rw-r--r--pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix10
-rw-r--r--pkgs/applications/networking/browsers/qutebrowser/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix6
-rw-r--r--pkgs/applications/networking/cluster/terraform/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/dino/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/jackline/default.nix9
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/bare.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/default.nix5
-rw-r--r--pkgs/applications/networking/instant-messengers/rambox/disable-tooltips.patch19
-rw-r--r--pkgs/applications/networking/instant-messengers/ricochet/default.nix3
-rw-r--r--pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/slack/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/mutt/default.nix4
-rw-r--r--pkgs/applications/networking/mailreaders/neomutt/default.nix4
-rw-r--r--pkgs/applications/networking/newsreaders/liferea/default.nix4
-rw-r--r--pkgs/applications/networking/ostinato/default.nix4
-rw-r--r--pkgs/applications/networking/remote/teamviewer/default.nix2
-rw-r--r--pkgs/applications/networking/resilio-sync/default.nix2
-rw-r--r--pkgs/applications/networking/syncplay/default.nix30
-rw-r--r--pkgs/applications/science/logic/acgtk/default.nix2
-rw-r--r--pkgs/applications/science/logic/coq/HEAD.nix81
-rw-r--r--pkgs/applications/science/logic/coq/default.nix1
-rw-r--r--pkgs/applications/science/logic/ott/default.nix18
-rw-r--r--pkgs/applications/science/logic/stp/default.nix4
-rw-r--r--pkgs/applications/science/logic/z3/4.5.0.nix31
-rw-r--r--pkgs/applications/science/machine-learning/shogun/default.nix8
-rw-r--r--pkgs/applications/version-management/gerrit/default.nix6
-rw-r--r--pkgs/applications/version-management/gitless/default.nix26
-rw-r--r--pkgs/applications/version-management/guitone/default.nix3
-rw-r--r--pkgs/applications/version-management/guitone/parallel-building.patch7
-rw-r--r--pkgs/applications/virtualization/openstack/glance.nix69
-rw-r--r--pkgs/applications/virtualization/openstack/keystone.nix55
-rw-r--r--pkgs/applications/virtualization/openstack/neutron-iproute-4.patch93
-rw-r--r--pkgs/applications/virtualization/openstack/neutron.nix69
-rw-r--r--pkgs/applications/virtualization/openstack/nova.nix71
-rw-r--r--pkgs/applications/virtualization/openstack/remove-oslo-policy-tests.patch61
-rw-r--r--pkgs/applications/virtualization/virt-viewer/default.nix8
-rw-r--r--pkgs/applications/virtualization/xen/4.5.nix6
-rw-r--r--pkgs/applications/virtualization/xen/4.8.nix6
-rw-r--r--pkgs/applications/virtualization/xen/xsa-patches.nix93
-rw-r--r--pkgs/applications/window-managers/qtile/default.nix3
-rw-r--r--pkgs/build-support/libredirect/default.nix6
-rw-r--r--pkgs/build-support/rust/build-rust-crate.nix382
-rw-r--r--pkgs/build-support/rust/cargo-vendor.nix6
-rw-r--r--pkgs/build-support/rust/carnix.nix875
-rw-r--r--pkgs/build-support/rust/default-crate-overrides.nix10
-rw-r--r--pkgs/build-support/rust/fetchcrate.nix35
-rw-r--r--pkgs/build-support/vm/default.nix34
-rw-r--r--pkgs/desktops/gnome-3/apps/gedit/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/apps/glade/default.nix20
-rw-r--r--pkgs/desktops/gnome-3/apps/glade/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/adwaita-icon-theme/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/dconf/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/empathy/default.nix71
-rw-r--r--pkgs/desktops/gnome-3/core/empathy/src.nix10
-rw-r--r--pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/gtksourceview/default.nix26
-rw-r--r--pkgs/desktops/gnome-3/core/gtksourceview/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/gucharmap/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/libgweather/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/rest/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/core/totem-pl-parser/src.nix2
-rw-r--r--pkgs/desktops/gnome-3/core/totem/default.nix5
-rw-r--r--pkgs/desktops/gnome-3/core/tracker-miners/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/core/tracker/default.nix2
-rw-r--r--pkgs/desktops/gnome-3/core/tracker/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/default.nix5
-rw-r--r--pkgs/desktops/gnome-3/games/aisleriot/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/games/four-in-a-row/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/games/gnome-robots/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/games/hitori/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/misc/gspell/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/misc/gspell/src.nix12
-rw-r--r--pkgs/desktops/gnome-3/misc/libgit2-glib/src.nix6
-rw-r--r--pkgs/desktops/gnome-3/misc/libmediaart/default.nix8
-rw-r--r--pkgs/development/compilers/ats2/default.nix8
-rw-r--r--pkgs/development/compilers/ats2/install-postiats-contrib.patch19
-rw-r--r--pkgs/development/compilers/chicken/default.nix4
-rw-r--r--pkgs/development/compilers/cudatoolkit/default.nix3
-rw-r--r--pkgs/development/compilers/edk2/default.nix21
-rw-r--r--pkgs/development/compilers/fpc/lazarus.nix6
-rw-r--r--pkgs/development/compilers/gcc/4.5/default.nix75
-rw-r--r--pkgs/development/compilers/gcc/4.8/default.nix83
-rw-r--r--pkgs/development/compilers/gcc/4.9/default.nix83
-rw-r--r--pkgs/development/compilers/gcc/5/default.nix82
-rw-r--r--pkgs/development/compilers/gcc/6/default.nix83
-rw-r--r--pkgs/development/compilers/gcc/7/default.nix83
-rw-r--r--pkgs/development/compilers/gcc/builder.sh202
-rw-r--r--pkgs/development/compilers/gcc/snapshot/default.nix83
-rw-r--r--pkgs/development/compilers/jetbrains-jdk/default.nix2
-rw-r--r--pkgs/development/compilers/kotlin/default.nix7
-rw-r--r--pkgs/development/compilers/mono/5.0.nix1
-rw-r--r--pkgs/development/compilers/oraclejdk/jdk-linux-base.nix2
-rw-r--r--pkgs/development/coq-modules/QuickChick/default.nix12
-rw-r--r--pkgs/development/coq-modules/bedrock/default.nix39
-rw-r--r--pkgs/development/coq-modules/category-theory/default.nix45
-rw-r--r--pkgs/development/coq-modules/contribs/all.nix163
-rw-r--r--pkgs/development/coq-modules/contribs/default.nix261
-rw-r--r--pkgs/development/coq-modules/contribs/mk-contrib.nix30
-rw-r--r--pkgs/development/coq-modules/coq-ext-lib/default.nix1
-rw-r--r--pkgs/development/coq-modules/coq-haskell/default.nix51
-rw-r--r--pkgs/development/coq-modules/coqeal/default.nix33
-rw-r--r--pkgs/development/coq-modules/coquelicot/default.nix22
-rw-r--r--pkgs/development/coq-modules/domains/darcs_context809
-rw-r--r--pkgs/development/coq-modules/domains/default.nix26
-rw-r--r--pkgs/development/coq-modules/fiat/default.nix41
-rw-r--r--pkgs/development/coq-modules/interval/default.nix18
-rw-r--r--pkgs/development/coq-modules/mathcomp/default.nix6
-rw-r--r--pkgs/development/coq-modules/ssreflect/default.nix6
-rw-r--r--pkgs/development/coq-modules/tlc/default.nix38
-rw-r--r--pkgs/development/coq-modules/unimath/default.nix26
-rw-r--r--pkgs/development/coq-modules/ynot/default.nix32
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix33
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml130
-rw-r--r--pkgs/development/haskell-modules/configuration-nix.nix1
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix3325
-rw-r--r--pkgs/development/interpreters/clojure/default.nix22
-rw-r--r--pkgs/development/interpreters/perl/default.nix6
-rw-r--r--pkgs/development/libraries/at-spi2-atk/default.nix8
-rw-r--r--pkgs/development/libraries/at-spi2-core/default.nix11
-rw-r--r--pkgs/development/libraries/atk/default.nix13
-rw-r--r--pkgs/development/libraries/audio/lv2/unstable.nix6
-rw-r--r--pkgs/development/libraries/audio/raul/default.nix6
-rw-r--r--pkgs/development/libraries/aws-sdk-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/babl/default.nix9
-rw-r--r--pkgs/development/libraries/bootil/default.nix2
-rw-r--r--pkgs/development/libraries/cairomm/default.nix8
-rw-r--r--pkgs/development/libraries/fftw/default.nix4
-rw-r--r--pkgs/development/libraries/gegl/3.0.nix18
-rw-r--r--pkgs/development/libraries/glib-networking/default.nix4
-rw-r--r--pkgs/development/libraries/gpgme/default.nix12
-rw-r--r--pkgs/development/libraries/gstreamer/bad/default.nix8
-rw-r--r--pkgs/development/libraries/gstreamer/base/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/core/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/ges/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/good/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/libav/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/ugly/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/vaapi/default.nix4
-rw-r--r--pkgs/development/libraries/gstreamer/validate/default.nix4
-rw-r--r--pkgs/development/libraries/hwloc/default.nix22
-rw-r--r--pkgs/development/libraries/java/saxon/default.nix93
-rw-r--r--pkgs/development/libraries/java/saxon/default8.nix26
-rwxr-xr-xpkgs/development/libraries/java/saxon/unzip-builder.sh6
-rw-r--r--pkgs/development/libraries/kde-frameworks/fetch.sh2
-rw-r--r--pkgs/development/libraries/kde-frameworks/srcs.nix608
-rw-r--r--pkgs/development/libraries/libaccounts-glib/default.nix6
-rw-r--r--pkgs/development/libraries/libinput/default.nix4
-rw-r--r--pkgs/development/libraries/liblscp/default.nix6
-rw-r--r--pkgs/development/libraries/libmicrohttpd/default.nix4
-rw-r--r--pkgs/development/libraries/libre/default.nix13
-rw-r--r--pkgs/development/libraries/librem/default.nix4
-rw-r--r--pkgs/development/libraries/libvirt-glib/default.nix4
-rw-r--r--pkgs/development/libraries/libvirt/default.nix6
-rw-r--r--pkgs/development/libraries/openexr/default.nix16
-rw-r--r--pkgs/development/libraries/openssl/default.nix4
-rw-r--r--pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh5
-rw-r--r--pkgs/development/libraries/qt-5/5.9/default.nix4
-rw-r--r--pkgs/development/libraries/qt-5/5.9/fetch.sh2
-rw-r--r--pkgs/development/libraries/qt-5/5.9/qtbase.patch111
-rw-r--r--pkgs/development/libraries/qt-5/5.9/srcs.nix312
-rw-r--r--pkgs/development/libraries/qt-5/hooks/qmake-hook.sh5
-rw-r--r--pkgs/development/libraries/qt-5/modules/qtbase.nix4
-rw-r--r--pkgs/development/libraries/science/math/openblas/default.nix8
-rw-r--r--pkgs/development/libraries/taglib/1.9.nix3
-rw-r--r--pkgs/development/libraries/taglib/default.nix27
-rw-r--r--pkgs/development/ocaml-modules/alcotest/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/asn1-combinators/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/astring/default.nix13
-rw-r--r--pkgs/development/ocaml-modules/bos/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/cairo2/default.nix (renamed from pkgs/development/ocaml-modules/ocaml-cairo2/default.nix)11
-rw-r--r--pkgs/development/ocaml-modules/cmdliner/default.nix15
-rw-r--r--pkgs/development/ocaml-modules/cohttp/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/cow/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/cpuid/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/decompress/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/fmt/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/fpath/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/functoria/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/git-http/default.nix1
-rw-r--r--pkgs/development/ocaml-modules/integers/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/jsonm/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/logs/default.nix11
-rw-r--r--pkgs/development/ocaml-modules/mtime/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/nocrypto/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/notty/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/ocb-stubblr/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/octavius/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/otfm/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/otr/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/ppx_deriving_yojson/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/ptime/default.nix8
-rw-r--r--pkgs/development/ocaml-modules/react/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/rresult/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/topkg/default.nix23
-rw-r--r--pkgs/development/ocaml-modules/tsdl/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/uucd/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/uucp/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/uuidm/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/uunf/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/uuseg/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/uutf/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/vg/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/xmlm/default.nix13
-rw-r--r--pkgs/development/python-modules/TurboCheetah/default.nix26
-rw-r--r--pkgs/development/python-modules/backports_shutil_get_terminal_size/default.nix26
-rw-r--r--pkgs/development/python-modules/blessed/default.nix9
-rw-r--r--pkgs/development/python-modules/bootstrapped-pip/default.nix4
-rw-r--r--pkgs/development/python-modules/cheetah/default.nix33
-rw-r--r--pkgs/development/python-modules/contextlib2/default.nix5
-rw-r--r--pkgs/development/python-modules/dateparser/default.nix43
-rw-r--r--pkgs/development/python-modules/fix_swiftclient_mocking.patch26
-rw-r--r--pkgs/development/python-modules/gssapi/default.nix28
-rw-r--r--pkgs/development/python-modules/gst-python/default.nix4
-rw-r--r--pkgs/development/python-modules/inflection/default.nix23
-rw-r--r--pkgs/development/python-modules/jsondate/default.nix22
-rw-r--r--pkgs/development/python-modules/jsonrpclib-pelix/default.nix22
-rw-r--r--pkgs/development/python-modules/kafka-python/default.nix30
-rw-r--r--pkgs/development/python-modules/keystoneauth1/default.nix37
-rw-r--r--pkgs/development/python-modules/keystoneclient/default.nix53
-rw-r--r--pkgs/development/python-modules/lark-parser/default.nix30
-rw-r--r--pkgs/development/python-modules/os-testr/default.nix33
-rw-r--r--pkgs/development/python-modules/oslo-config/default.nix32
-rw-r--r--pkgs/development/python-modules/pathlib2/default.nix31
-rw-r--r--pkgs/development/python-modules/pyrax/default.nix35
-rw-r--r--pkgs/development/python-modules/quandl/allow-requests-v2.18.patch12
-rw-r--r--pkgs/development/python-modules/quandl/default.nix59
-rw-r--r--pkgs/development/python-modules/rackspace-novaclient/default.nix166
-rw-r--r--pkgs/development/python-modules/raven/default.nix4
-rw-r--r--pkgs/development/python-modules/setuptools/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlalchemy-migrate/default.nix19
-rw-r--r--pkgs/development/python-modules/stevedore/default.nix3
-rw-r--r--pkgs/development/tools/analysis/retdec/default.nix113
-rwxr-xr-xpkgs/development/tools/build-managers/cmake/setup-hook.sh9
-rw-r--r--pkgs/development/tools/build-managers/meson/setup-hook.sh5
-rw-r--r--pkgs/development/tools/build-managers/ninja/setup-hook.sh9
-rw-r--r--pkgs/development/tools/continuous-integration/jenkins/default.nix4
-rw-r--r--pkgs/development/tools/coursier/default.nix4
-rw-r--r--pkgs/development/tools/misc/editorconfig-core-c/default.nix4
-rw-r--r--pkgs/development/tools/misc/epm/default.nix16
-rw-r--r--pkgs/development/tools/misc/iozone/default.nix2
-rw-r--r--pkgs/development/tools/misc/saleae-logic/default.nix2
-rw-r--r--pkgs/development/tools/ocaml/merlin/default.nix4
-rw-r--r--pkgs/development/tools/ocaml/ocp-indent/default.nix4
-rw-r--r--pkgs/development/tools/scalafmt/default.nix44
-rw-r--r--pkgs/games/chessx/default.nix2
-rw-r--r--pkgs/games/cutemaze/default.nix28
-rw-r--r--pkgs/games/dwarf-fortress/dfhack/default.nix8
-rw-r--r--pkgs/games/dwarf-fortress/dwarf-therapist/default.nix14
-rw-r--r--pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix6
-rw-r--r--pkgs/games/dwarf-fortress/game.nix8
-rw-r--r--pkgs/games/dwarf-fortress/soundsense.nix2
-rw-r--r--pkgs/games/dwarf-fortress/themes/cla.nix6
-rw-r--r--pkgs/games/dwarf-fortress/themes/phoebus.nix6
-rw-r--r--pkgs/games/dwarf-fortress/unfuck.nix10
-rw-r--r--pkgs/games/dwarf-fortress/wrapper/default.nix4
-rw-r--r--pkgs/games/nethack/default.nix2
-rw-r--r--pkgs/games/steam/default.nix2
-rw-r--r--pkgs/misc/cups/default.nix67
-rw-r--r--pkgs/misc/cups/drivers/cnijfilter_4_00/default.nix2
-rw-r--r--pkgs/misc/cups/drivers/kyocera/default.nix2
-rw-r--r--pkgs/misc/drivers/sundtek/default.nix2
-rw-r--r--pkgs/misc/uboot/default.nix16
-rw-r--r--pkgs/misc/vscode-extensions/default.nix5
-rw-r--r--pkgs/misc/vscode-extensions/python/default.nix41
-rw-r--r--pkgs/misc/vscode-extensions/vscode-utils.nix6
-rw-r--r--pkgs/os-specific/linux/broadcom-sta/default.nix2
-rw-r--r--pkgs/os-specific/linux/conky/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix6
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.14.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.4.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/prl-tools/default.nix2
-rw-r--r--pkgs/os-specific/linux/spl/default.nix6
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix4
-rw-r--r--pkgs/servers/dns/knot-resolver/default.nix9
-rw-r--r--pkgs/servers/dns/pdns-recursor/default.nix4
-rw-r--r--pkgs/servers/dns/powerdns/default.nix4
-rw-r--r--pkgs/servers/http/nginx/modules.nix8
-rw-r--r--pkgs/servers/mail/postfix/default.nix4
-rw-r--r--pkgs/servers/monitoring/grafana/default.nix6
-rw-r--r--pkgs/servers/nosql/cassandra/3.11.nix6
-rw-r--r--pkgs/stdenv/generic/check-meta.nix18
-rw-r--r--pkgs/tools/audio/abcmidi/default.nix10
-rw-r--r--pkgs/tools/audio/pulsemixer/default.nix4
-rw-r--r--pkgs/tools/backup/ugarit-manifest-maker/eggs.nix6
-rw-r--r--pkgs/tools/backup/ugarit/eggs.nix6
-rw-r--r--pkgs/tools/graphics/graphviz/0001-vimdot-lookup-vim-in-PATH.patch30
-rw-r--r--pkgs/tools/graphics/graphviz/2.32.nix68
-rw-r--r--pkgs/tools/graphics/graphviz/base.nix59
-rw-r--r--pkgs/tools/graphics/graphviz/cve-2014-9157.patch24
-rw-r--r--pkgs/tools/graphics/graphviz/default.nix72
-rw-r--r--pkgs/tools/graphics/pfstools/default.nix20
-rw-r--r--pkgs/tools/misc/calamares/default.nix64
-rw-r--r--pkgs/tools/misc/desktop-file-utils/default.nix4
-rw-r--r--pkgs/tools/misc/direnv/default.nix4
-rw-r--r--pkgs/tools/misc/fd/default.nix13
-rw-r--r--pkgs/tools/misc/mprime/default.nix5
-rw-r--r--pkgs/tools/misc/recoverjpeg/default.nix28
-rw-r--r--pkgs/tools/misc/rockbox-utility/default.nix6
-rw-r--r--pkgs/tools/misc/slop/default.nix4
-rw-r--r--pkgs/tools/misc/smenu/default.nix29
-rw-r--r--pkgs/tools/misc/thefuck/default.nix38
-rw-r--r--pkgs/tools/misc/togglesg-download/default.nix20
-rw-r--r--pkgs/tools/misc/yubico-piv-tool/default.nix8
-rw-r--r--pkgs/tools/networking/axel/default.nix8
-rw-r--r--pkgs/tools/networking/i2p/default.nix4
-rw-r--r--pkgs/tools/networking/logmein-hamachi/default.nix5
-rw-r--r--pkgs/tools/networking/network-manager/strongswan.nix7
-rw-r--r--pkgs/tools/networking/strongswan/default.nix33
-rw-r--r--pkgs/tools/package-management/nix/default.nix10
-rw-r--r--pkgs/tools/security/libmodsecurity/default.nix47
-rw-r--r--pkgs/tools/security/paperkey/default.nix4
-rw-r--r--pkgs/tools/security/pinentry/default.nix37
-rw-r--r--pkgs/tools/security/pinentry/qt5.nix49
-rw-r--r--pkgs/tools/typesetting/biber/default.nix36
-rw-r--r--pkgs/tools/typesetting/tex/texlive/bin.nix11
-rw-r--r--pkgs/tools/typesetting/tex/texlive/combine.nix6
-rw-r--r--pkgs/tools/typesetting/tex/texlive/default.nix32
-rw-r--r--pkgs/tools/typesetting/tex/texlive/fixedHashes.nix6030
-rw-r--r--pkgs/tools/typesetting/tex/texlive/pkgs.nix3657
-rw-r--r--pkgs/tools/virtualization/awsebcli/default.nix4
-rw-r--r--pkgs/tools/virtualization/cloud-init/default.nix4
-rw-r--r--pkgs/top-level/all-packages.nix134
-rw-r--r--pkgs/top-level/ocaml-packages.nix6
-rw-r--r--pkgs/top-level/perl-packages.nix34
-rw-r--r--pkgs/top-level/php-packages.nix4
-rw-r--r--pkgs/top-level/python-packages.nix1203
364 files changed, 13403 insertions, 10376 deletions
diff --git a/pkgs/applications/altcoins/memorycoin.nix b/pkgs/applications/altcoins/memorycoin.nix
index 24b891d60eb2..a14276d4fa2d 100644
--- a/pkgs/applications/altcoins/memorycoin.nix
+++ b/pkgs/applications/altcoins/memorycoin.nix
@@ -31,6 +31,10 @@ stdenv.mkDerivation rec{
     then "install -D bitcoin-qt $out/bin/memorycoin-qt"
     else "install -D bitcoind $out/bin/memorycoind";
 
+  # `make build/version.o`:
+  # make: *** No rule to make target 'build/build.h', needed by 'build/version.o'.  Stop.
+  enableParallelBuilding = false;
+
   meta = {
     description = "Peer-to-peer, CPU-based electronic cash system";
     longDescription= ''
diff --git a/pkgs/applications/altcoins/primecoin.nix b/pkgs/applications/altcoins/primecoin.nix
index b1e3dc2dd93d..f79d54d0ce26 100644
--- a/pkgs/applications/altcoins/primecoin.nix
+++ b/pkgs/applications/altcoins/primecoin.nix
@@ -31,6 +31,10 @@ stdenv.mkDerivation rec{
     then "install -D bitcoin-qt $out/bin/primecoin-qt"
     else "install -D bitcoind $out/bin/primecoind";
 
+  # `make build/version.o`:
+  # make: *** No rule to make target 'build/build.h', needed by 'build/version.o'.  Stop.
+  enableParallelBuilding = false;
+
   meta = {
     description = "A new type cryptocurrency which is proof-of-work based on searching for prime numbers";
     longDescription= ''
diff --git a/pkgs/applications/audio/bitwig-studio/default.nix b/pkgs/applications/audio/bitwig-studio/default.nix
index c597e42eaa6d..bc87254cf183 100644
--- a/pkgs/applications/audio/bitwig-studio/default.nix
+++ b/pkgs/applications/audio/bitwig-studio/default.nix
@@ -6,11 +6,11 @@
 
 stdenv.mkDerivation rec {
   name = "bitwig-studio-${version}";
-  version = "2.1.3";
+  version = "2.2.2";
 
   src = fetchurl {
     url = "https://downloads.bitwig.com/stable/${version}/bitwig-studio-${version}.deb";
-    sha256 = "0blfw7dayl1wzys11mdixlkbr1p1d5rnwrvim1hblfpnw2zmlslb";
+    sha256 = "1x4wka32xlygmhdh9rb15s37zh5qjrgap2qk35y34c52lf5aak22";
   };
 
   nativeBuildInputs = [ dpkg makeWrapper ];
diff --git a/pkgs/applications/audio/calf/default.nix b/pkgs/applications/audio/calf/default.nix
index 15fca59deee3..82c32903bd86 100644
--- a/pkgs/applications/audio/calf/default.nix
+++ b/pkgs/applications/audio/calf/default.nix
@@ -3,14 +3,14 @@
 
 stdenv.mkDerivation rec {
   name = "calf-${version}";
-  version = "0.0.60";
+  version = "0.90.0";
 
   src = fetchurl {
     url = "http://calf-studio-gear.org/files/${name}.tar.gz";
-    sha256 = "019fwg00jv217a5r767z7szh7vdrarybac0pr2sk26xp81kibrx9";
+    sha256 = "0dijv2j7vlp76l10s4v8gbav26ibaqk8s24ci74vrc398xy00cib";
   };
 
-  buildInputs = [ 
+  buildInputs = [
     cairo expat fftwSinglePrec fluidsynth glib gtk2 libjack2 ladspaH
     libglade lv2 pkgconfig
   ];
diff --git a/pkgs/applications/audio/distrho/default.nix b/pkgs/applications/audio/distrho/default.nix
index a80cc36b2164..a6a7ad22fa1a 100644
--- a/pkgs/applications/audio/distrho/default.nix
+++ b/pkgs/applications/audio/distrho/default.nix
@@ -2,12 +2,12 @@
 , libxslt, lv2, pkgconfig, premake3, xorg, ladspa-sdk }:
 
 stdenv.mkDerivation rec {
-  name = "distrho-ports-unstable-2017-08-04";
+  name = "distrho-ports-unstable-2017-10-10";
 
   src = fetchgit {
     url = "https://github.com/DISTRHO/DISTRHO-Ports.git";
-    rev = "f591a1066cd3929536699bb516caa4b5efd9d025";
-    sha256 = "1qjnmpmwbq2zpwn8v1dmqn3bjp2ykj5p89fkjax7idgpx1cg7pp9";
+    rev = "e11e2b204c14b8e370a0bf5beafa5f162fedb8e9";
+    sha256 = "1nd542iian9kr2ldaf7fkkgf900ryzqigks999d1jhms6p0amvfv";
   };
 
   patchPhase = ''
@@ -37,12 +37,12 @@ stdenv.mkDerivation rec {
     description = "A collection of cross-platform audio effects and plugins";
     longDescription = ''
       Includes:
-      Dexed  drowaudio-distortion drowaudio-distortionshaper drowaudio-flanger
-      drowaudio-reverb drowaudio-tremolo drumsynt EasySSP  eqinox
-      JuceDemoPlugin klangfalter LUFSMeter luftikus obxd pitchedDelay
-      stereosourceseparation TAL-Dub-3 TAL-Filter TAL-Filter-2 TAL-NoiseMaker
-      TAL-Reverb TAL-Reverb-2 TAL-Reverb-3 TAL-Vocoder-2 TheFunction
-      ThePilgrim Vex Wolpertinger
+      Dexed drowaudio-distortion drowaudio-distortionshaper drowaudio-flanger
+      drowaudio-reverb drowaudio-tremolo drumsynth EasySSP eqinox HiReSam
+      JuceDemoPlugin KlangFalter LUFSMeter LUFSMeterMulti Luftikus Obxd
+      PitchedDelay ReFine StereoSourceSeparation TAL-Dub-3 TAL-Filter
+      TAL-Filter-2 TAL-NoiseMaker TAL-Reverb TAL-Reverb-2 TAL-Reverb-3
+      TAL-Vocoder-2 TheFunction ThePilgrim Vex Wolpertinger
     '';
     maintainers = [ maintainers.goibhniu ];
     platforms = platforms.linux;
diff --git a/pkgs/applications/audio/ingen/default.nix b/pkgs/applications/audio/ingen/default.nix
index ca806aad02fe..d9109dd1c0e7 100644
--- a/pkgs/applications/audio/ingen/default.nix
+++ b/pkgs/applications/audio/ingen/default.nix
@@ -1,21 +1,23 @@
 { stdenv, fetchgit, boost, ganv, glibmm, gtkmm2, libjack2, lilv
-, lv2, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
+, lv2Unstable, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
+
 , suil
 }:
 
 stdenv.mkDerivation  rec {
   name = "ingen-unstable-${rev}";
-  rev = "2017-01-18";
+  rev = "2017-07-22";
 
   src = fetchgit {
-    url = "http://git.drobilla.net/cgit.cgi/ingen.git";
-    rev = "02ae3e9d8bf3f6a5e844706721aad8c0ac9f4340";
-    sha256 = "15s8nrzn68hc2s6iw0zshbz3lfnsq0mr6gflq05xm911b7xbp74k";
+    url = "https://git.drobilla.net/cgit.cgi/ingen.git";
+    rev = "cc4a4db33f4d126a07a4a498e053c5fb9a883be3";
+    sha256 = "1gmwmml486r9zq4w65v91mfaz36af9zzyjkmi74m8qmh67ffqn3w";
+    deepClone = true;
   };
 
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [
-    boost ganv glibmm gtkmm2 libjack2 lilv lv2 makeWrapper
+    boost ganv glibmm gtkmm2 libjack2 lilv lv2Unstable makeWrapper
     python raul serd sord sratom suil
   ];
 
diff --git a/pkgs/applications/audio/mod-distortion/default.nix b/pkgs/applications/audio/mod-distortion/default.nix
index a18372870795..c66f78373228 100644
--- a/pkgs/applications/audio/mod-distortion/default.nix
+++ b/pkgs/applications/audio/mod-distortion/default.nix
@@ -1,19 +1,19 @@
 { stdenv, fetchFromGitHub, lv2 }:
 
 stdenv.mkDerivation rec {
-  name = "mod-distortion-${version}";
-  version = "git-2015-05-18";
+  name = "mod-distortion-git-${version}";
+  version = "2016-08-19";
 
   src = fetchFromGitHub {
     owner = "portalmod";
     repo = "mod-distortion";
-    rev = "0cdf186abc2a9275890b57057faf5c3f6d86d84a";
-    sha256 = "1wmxgpcdcy9m7j78yq85824if0wz49wv7mw13bj3sw2s87dcmw19";
+    rev = "e672d5feb9d631798e3d56eb96e8958c3d2c6821";
+    sha256 = "005wdkbhn9dgjqv019cwnziqg86yryc5vh7j5qayrzh9v446dw34";
   };
 
   buildInputs = [ lv2 ];
 
-  installFlags = [ "LV2_PATH=$(out)/lib/lv2"  ];
+  installFlags = [ "INSTALL_PATH=$(out)/lib/lv2" ];
 
   meta = with stdenv.lib; {
     homepage = https://github.com/portalmod/mod-distortion;
diff --git a/pkgs/applications/audio/qsampler/default.nix b/pkgs/applications/audio/qsampler/default.nix
index 1eb8d8decff1..518fef0c4f5e 100644
--- a/pkgs/applications/audio/qsampler/default.nix
+++ b/pkgs/applications/audio/qsampler/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation rec {
   name = "qsampler-${version}";
-  version = "0.4.3";
+  version = "0.5.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/qsampler/${name}.tar.gz";
-    sha256 = "1wg19022gyzy8rk9npfav9kz9z2qicqwwb2x5jz5hshzf3npx1fi";
+    sha256 = "0kn1mv31ygjjsric03pkbv7r8kg3bri9ldx2ajc9pyx0p8ggnbmc";
   };
 
   nativeBuildInputs = [ autoconf automake libtool pkgconfig qttools ];
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index f5763ea787f3..a8e4adeac930 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "atom-${version}";
-  version = "1.22.0";
+  version = "1.23.1";
 
   src = fetchurl {
     url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
-    sha256 = "1jxw0m1hfaisf1f875wr28f0mr3h0wjml6pjhfxbybvcblpnd27k";
+    sha256 = "14cwg48cxrhkcj8ahfznqr1ym316437xds7aw5011dqbmswb0v4f";
     name = "${name}.deb";
   };
 
diff --git a/pkgs/applications/editors/emacs-modes/melpa-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
index d8b548b03e49..b6cd881205f9 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-packages.nix
@@ -47,6 +47,9 @@ self:
       bufshow = markBroken super.bufshow;
 
       # part of a larger package
+      caml = dontConfigure super.caml;
+
+      # part of a larger package
       # upstream issue: missing package version
       cmake-mode = markBroken (dontConfigure super.cmake-mode);
 
diff --git a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
index 0550a1bbd3ff..b02adeefa2a7 100644
--- a/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
+++ b/pkgs/applications/editors/emacs-modes/melpa-stable-packages.nix
@@ -46,6 +46,9 @@ self:
       bufshow = markBroken super.bufshow;
 
       # part of a larger package
+      caml = dontConfigure super.caml;
+
+      # part of a larger package
       # upstream issue: missing package version
       cmake-mode = markBroken (dontConfigure super.cmake-mode);
 
diff --git a/pkgs/applications/gis/qgis/default.nix b/pkgs/applications/gis/qgis/default.nix
index f64845f6e43a..d689254f2c85 100644
--- a/pkgs/applications/gis/qgis/default.nix
+++ b/pkgs/applications/gis/qgis/default.nix
@@ -5,7 +5,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "qgis-2.18.14";
+  name = "qgis-2.18.15";
 
   buildInputs = [ gdal qt4 flex openssl bison proj geos xlibsWrapper sqlite gsl qwt qscintilla
     fcgi libspatialindex libspatialite postgresql qjson qca2 txt2tags ] ++
@@ -14,8 +14,9 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake makeWrapper ];
 
+  # `make -f src/providers/wms/CMakeFiles/wmsprovider_a.dir/build.make src/providers/wms/CMakeFiles/wmsprovider_a.dir/qgswmssourceselect.cpp.o`:
   # fatal error: ui_qgsdelimitedtextsourceselectbase.h: No such file or directory
-  #enableParallelBuilding = true;
+  enableParallelBuilding = false;
 
   # To handle the lack of 'local' RPATH; required, as they call one of
   # their built binaries requiring their libs, in the build process.
@@ -25,7 +26,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://qgis.org/downloads/${name}.tar.bz2";
-    sha256 = "199nc539kd8fxbfny61s4sv8bvrhlxw59dmvw6m70gnff6mpc8fq";
+    sha256 = "1jpprkk91s2wwx0iiqlnsngxnn52zs32bad799fjai58nrsh8b7b";
   };
 
   cmakeFlags = stdenv.lib.optional withGrass "-DGRASS_PREFIX7=${grass}/${grass.name}";
diff --git a/pkgs/applications/graphics/awesomebump/default.nix b/pkgs/applications/graphics/awesomebump/default.nix
index f190b421b056..f7a813f36061 100644
--- a/pkgs/applications/graphics/awesomebump/default.nix
+++ b/pkgs/applications/graphics/awesomebump/default.nix
@@ -15,6 +15,7 @@ let
     name = "qtnproperty";
     inherit src;
     sourceRoot = "AwesomeBump/Sources/utils/QtnProperty";
+    patches = [ ./qtnproperty-parallel-building.patch ];
     buildInputs = [ qtscript qtbase qtdeclarative ];
     nativeBuildInputs = [ qmake flex bison ];
     postInstall = ''
@@ -46,6 +47,10 @@ in stdenv.mkDerivation rec {
         --run "cd $d"
   '';
 
+  # $ cd Sources; qmake; make ../workdir/linux-g++-dgb-gl4/obj/glwidget.o
+  # fatal error: properties/ImageProperties.peg.h: No such file or directory
+  enableParallelBuilding = false;
+
   meta = {
     homepage = https://github.com/kmkolasinski/AwesomeBump;
     description = "A program to generate normal, height, specular or ambient occlusion textures from a single image";
diff --git a/pkgs/applications/graphics/awesomebump/qtnproperty-parallel-building.patch b/pkgs/applications/graphics/awesomebump/qtnproperty-parallel-building.patch
new file mode 100644
index 000000000000..b3f8e68dd1ad
--- /dev/null
+++ b/pkgs/applications/graphics/awesomebump/qtnproperty-parallel-building.patch
@@ -0,0 +1,9 @@
+--- a/PEG/Flex.pri
++++ b/PEG/Flex.pri
+@@ -1,5 +1,6 @@
+ flex.name = Flex ${QMAKE_FILE_IN}
+ flex.input = FLEX_SOURCES
++flex.depends = ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.parser.cpp
+ flex.output = ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.lexer.cpp
+ 
+ win32:flex.commands = win_flex --wincompat -o ${QMAKE_FILE_PATH}/${QMAKE_FILE_BASE}.lexer.cpp ${QMAKE_FILE_IN}
diff --git a/pkgs/applications/graphics/pqiv/default.nix b/pkgs/applications/graphics/pqiv/default.nix
index 39f4e0a26d24..9e5958871cc0 100644
--- a/pkgs/applications/graphics/pqiv/default.nix
+++ b/pkgs/applications/graphics/pqiv/default.nix
@@ -1,18 +1,20 @@
-{ stdenv, fetchFromGitHub, getopt, which, pkgconfig, gtk3 } :
+{ stdenv, fetchFromGitHub, pkgconfig
+, ffmpeg, gtk3, imagemagick, libarchive, libspectre, libwebp, poppler
+}:
 
 stdenv.mkDerivation (rec {
   name = "pqiv-${version}";
-  version = "2.10.1";
+  version = "2.10.2";
 
   src = fetchFromGitHub {
     owner = "phillipberndt";
     repo = "pqiv";
     rev = version;
-    sha256 = "06blqckj3bpbi2kl5ndv2d10r7nw62r386kfwrkic9amynlv9gki";
+    sha256 = "0zn7ps73lw04l9i4777c90ik07v3hkg66mnpz8vvvwjyi40i77a7";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ getopt which gtk3 ];
+  buildInputs = [ ffmpeg gtk3 imagemagick libarchive libspectre libwebp poppler ];
 
   prePatch = "patchShebangs .";
 
diff --git a/pkgs/applications/graphics/sane/backends/git.nix b/pkgs/applications/graphics/sane/backends/git.nix
index dbf79bf20acb..e746f83e5d49 100644
--- a/pkgs/applications/graphics/sane/backends/git.nix
+++ b/pkgs/applications/graphics/sane/backends/git.nix
@@ -1,10 +1,10 @@
 { callPackage, fetchgit, ... } @ args:
 
 callPackage ./generic.nix (args // {
-  version = "2016-06-11";
+  version = "2017-12-01";
   src = fetchgit {
-    sha256 = "0jpavig7bg7l72drlwipmsg03j6qdy5aq2r3kj6a2h6ahpnm2549";
-    rev = "5ba37467e88ca8052973b37128ce8fd36ad5d61d";
+    sha256 = "0qf7d7268kdxnb723c03m6icxhbgx0vw8gqvck2q1w5b948dy9g8";
+    rev = "e895ee55bec8a3320a0e972b32c05d35b47fe226";
     url = "git://alioth.debian.org/git/sane/sane-backends.git";
   };
 })
diff --git a/pkgs/applications/graphics/unigine-valley/default.nix b/pkgs/applications/graphics/unigine-valley/default.nix
index 31908dcfd9f0..f1adc6bd10ea 100644
--- a/pkgs/applications/graphics/unigine-valley/default.nix
+++ b/pkgs/applications/graphics/unigine-valley/default.nix
@@ -22,7 +22,7 @@ let
   else if stdenv.system == "i686-linux" then
     "x86"
   else
-    abort "Unsupported platform";
+    throw "Unsupported platform ${stdenv.system}";
 
 in
   stdenv.mkDerivation rec {
diff --git a/pkgs/applications/misc/airspy/default.nix b/pkgs/applications/misc/airspy/default.nix
index b73cc09eaec0..211e8fd05411 100644
--- a/pkgs/applications/misc/airspy/default.nix
+++ b/pkgs/applications/misc/airspy/default.nix
@@ -4,7 +4,7 @@
 
 let
   version = "1.0.9";
-in  
+in
   stdenv.mkDerivation {
     name = "airspy-${version}";
 
@@ -15,17 +15,20 @@ in
       sha256 = "04kx2p461sqd4q354n1a99zcabg9h29dwcnyhakykq8bpg3mgf1x";
     };
 
+    postPatch = ''
+      substituteInPlace airspy-tools/CMakeLists.txt --replace "/etc/udev/rules.d" "$out/etc/udev/rules.d"
+    '';
+
     nativeBuildInputs = [ cmake pkgconfig ];
     buildInputs = [ libusb ];
- 
-    cmakeFlags = [ "-DINSTALL_UDEV_RULES=OFF" ];
-   
+
+    cmakeFlags = [ "-DINSTALL_UDEV_RULES=ON" ];
+
     meta = with stdenv.lib; {
       homepage = http://github.com/airspy/airspyone_host;
       description = "Host tools and driver library for the AirSpy SDR";
       license = licenses.free;
       platforms = platforms.linux;
-      maintainer = with maintainers; [ markuskowa ];
+      maintainers = with maintainers; [ markuskowa ];
     };
   }
-
diff --git a/pkgs/applications/misc/camlistore/default.nix b/pkgs/applications/misc/camlistore/default.nix
deleted file mode 100644
index d90e8a6dba66..000000000000
--- a/pkgs/applications/misc/camlistore/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ stdenv, lib, go, fetchgit, git, buildGoPackage }:
-
-buildGoPackage rec {
-  name = "camlistore-${version}";
-  version = "0.9";
-
-  src = fetchgit {
-    url = "https://github.com/camlistore/camlistore";
-    rev = "refs/tags/${version}";
-    sha256 = "1ypplr939ny9drsdngapa029fgak0wic8sbna588m79cbl17psya";
-    leaveDotGit = true;
-  };
-
-  buildInputs = [ git ];
-
-  goPackagePath = "";
-  buildPhase = ''
-    cd go/src/camlistore
-    go run make.go
-  '';
-
-  installPhase = ''
-    mkdir -p $bin/bin
-    rm bin/README
-    cp bin/* $bin/bin
-  '';
-
-  meta = with stdenv.lib; {
-    description = "A way of storing, syncing, sharing, modelling and backing up content";
-    homepage = https://camlistore.org;
-    license = licenses.asl20;
-    maintainers = with maintainers; [ cstrahan ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/applications/misc/electrum/default.nix b/pkgs/applications/misc/electrum/default.nix
index 8de837991aab..a339770ba588 100644
--- a/pkgs/applications/misc/electrum/default.nix
+++ b/pkgs/applications/misc/electrum/default.nix
@@ -1,24 +1,24 @@
-{ stdenv, fetchurl, python2Packages }:
+{ stdenv, fetchurl, python3, python3Packages }:
 
-python2Packages.buildPythonApplication rec {
+python3Packages.buildPythonApplication rec {
   name = "electrum-${version}";
-  version = "2.9.3";
+  version = "3.0.3";
 
   src = fetchurl {
     url = "https://download.electrum.org/${version}/Electrum-${version}.tar.gz";
-    sha256 = "0d0fzb653g7b8ka3x90nl21md4g3n1fv11czdxpdq3s9yr6js6f2";
+    sha256 = "09h3s1mbkliwh8758prbdk3sm19bnma7wy3k10pl9q9fkarbhp75";
   };
 
-  propagatedBuildInputs = with python2Packages; [
+  propagatedBuildInputs = with python3Packages; [
     dnspython
     ecdsa
-    jsonrpclib
+    jsonrpclib-pelix
     matplotlib
     pbkdf2
     protobuf
     pyaes
     pycrypto
-    pyqt4
+    pyqt5
     pysocks
     qrcode
     requests
@@ -35,7 +35,7 @@ python2Packages.buildPythonApplication rec {
 
   preBuild = ''
     sed -i 's,usr_share = .*,usr_share = "'$out'/share",g' setup.py
-    pyrcc4 icons.qrc -o gui/qt/icons_rc.py
+    pyrcc5 icons.qrc -o gui/qt/icons_rc.py
     # Recording the creation timestamps introduces indeterminism to the build
     sed -i '/Created: .*/d' gui/qt/icons_rc.py
   '';
@@ -43,13 +43,15 @@ python2Packages.buildPythonApplication rec {
   postInstall = ''
     # Despite setting usr_share above, these files are installed under
     # $out/nix ...
-    mv $out/lib/python2.7/site-packages/nix/store"/"*/share $out
-    rm -rf $out/lib/python2.7/site-packages/nix
+    mv $out/${python3.sitePackages}/nix/store"/"*/share $out
+    rm -rf $out/${python3.sitePackages}/nix
 
     substituteInPlace $out/share/applications/electrum.desktop \
       --replace "Exec=electrum %u" "Exec=$out/bin/electrum %u"
   '';
 
+  doCheck = false;
+
   doInstallCheck = true;
   installCheckPhase = ''
     $out/bin/electrum help >/dev/null
diff --git a/pkgs/applications/misc/golden-cheetah/default.nix b/pkgs/applications/misc/golden-cheetah/default.nix
index 358d9dff44a6..efd3bfe73dd9 100644
--- a/pkgs/applications/misc/golden-cheetah/default.nix
+++ b/pkgs/applications/misc/golden-cheetah/default.nix
@@ -30,6 +30,10 @@ stdenv.mkDerivation rec {
 
     runHook postInstall
   '';
+
+  # RCC: Error in 'Resources/application.qrc': Cannot find file 'translations/gc_fr.qm'
+  enableParallelBuilding = false;
+
   meta = {
     description = "Performance software for cyclists, runners and triathletes";
     platforms = stdenv.lib.platforms.linux;
diff --git a/pkgs/applications/misc/googleearth/default.nix b/pkgs/applications/misc/googleearth/default.nix
index df8cb71d6f9e..52903a1f8014 100644
--- a/pkgs/applications/misc/googleearth/default.nix
+++ b/pkgs/applications/misc/googleearth/default.nix
@@ -6,7 +6,7 @@ let
   arch =
     if stdenv.system == "x86_64-linux" then "amd64"
     else if stdenv.system == "i686-linux" then "i386"
-    else abort "Unsupported architecture";
+    else throw "Unsupported system ${stdenv.system}";
   sha256 =
     if arch == "amd64"
     then "0dwnppn5snl5bwkdrgj4cyylnhngi0g66fn2k41j3dvis83x24k6"
diff --git a/pkgs/applications/misc/ipmicfg/default.nix b/pkgs/applications/misc/ipmicfg/default.nix
index af67db3f654a..2efd0ee969f1 100644
--- a/pkgs/applications/misc/ipmicfg/default.nix
+++ b/pkgs/applications/misc/ipmicfg/default.nix
@@ -2,12 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "ipmicfg-${version}";
-  version = "1.27.0";
-  buildVersion = "170620";
+  version = "1.27.1";
+  buildVersion = "170901";
 
   src = fetchzip {
     url = "ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_${version}_build.${buildVersion}.zip";
-    sha256 = "0jr2vih4hzymb62mbqyykwcrjhbhazf6wr1g0cq8ji586i3z3vw5";
+    sha256 = "11xhzw36pg4has8857pypf44cni8m2mg8qsqi1s4bfjbxlfgxgwk";
+    extraPostFetch = "chmod u+rwX,go-rwx+X $out/";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index 72d9c7d2fb5d..acf37f699b38 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -7,17 +7,17 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "keepassxc-${version}";
-  version = "2.2.2";
+  version = "2.2.4";
 
   src = fetchFromGitHub {
     owner = "keepassxreboot";
     repo = "keepassxc";
     rev = "${version}";
-    sha256 = "01pqpa3vzk2q1vrj2lqayr7a3nzpnj176yhnqbrwlm3s9rga4wzn";
+    sha256 = "0q913v2ka6p7jr7c4w9fq8aqh5v6nxqgcv9h7zllk5p0amsf8d80";
   };
 
-  cmakeFlags = [ 
-    "-DWITH_GUI_TESTS=ON" 
+  cmakeFlags = [
+    "-DWITH_GUI_TESTS=ON"
     "-DWITH_XC_AUTOTYPE=ON"
     "-DWITH_XC_YUBIKEY=ON"
   ] ++ (optional withKeePassHTTP "-DWITH_XC_HTTP=ON");
diff --git a/pkgs/applications/misc/perkeep/default.nix b/pkgs/applications/misc/perkeep/default.nix
new file mode 100644
index 000000000000..3b64cf4aa6c0
--- /dev/null
+++ b/pkgs/applications/misc/perkeep/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, lib, go_1_8, fetchzip, git }:
+
+stdenv.mkDerivation rec {
+  name = "perkeep-${version}";
+  version = "20170505";
+
+  src = fetchzip {
+    url = "https://perkeep.org/dl/monthly/camlistore-${version}-src.zip";
+    sha256 = "1vliyvkyzmhdi6knbh8rdsswmz3h0rpxdpq037jwbdbkjccxjdwa";
+  };
+
+  buildInputs = [ git go_1_8 ];
+
+  goPackagePath = "";
+  buildPhase = ''
+    go run make.go
+  '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp bin/* $out/bin
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A way of storing, syncing, sharing, modelling and backing up content (née Camlistore)";
+    homepage = https://perkeep.org;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ cstrahan ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/misc/playonlinux/default.nix b/pkgs/applications/misc/playonlinux/default.nix
index 3f39a356312e..44650d001e34 100644
--- a/pkgs/applications/misc/playonlinux/default.nix
+++ b/pkgs/applications/misc/playonlinux/default.nix
@@ -48,7 +48,7 @@ let
   ld32 =
     if stdenv.system == "x86_64-linux" then "${stdenv.cc}/nix-support/dynamic-linker-m32"
     else if stdenv.system == "i686-linux" then "${stdenv.cc}/nix-support/dynamic-linker"
-    else abort "Unsupported platform for PlayOnLinux: ${stdenv.system}";
+    else throw "Unsupported platform for PlayOnLinux: ${stdenv.system}";
   ld64 = "${stdenv.cc}/nix-support/dynamic-linker";
   libs = pkgs: stdenv.lib.makeLibraryPath [ pkgs.xlibs.libX11 ];
 
diff --git a/pkgs/applications/misc/xmr-stak/default.nix b/pkgs/applications/misc/xmr-stak/default.nix
index d12f649d5ee4..4931a3f8a12b 100644
--- a/pkgs/applications/misc/xmr-stak/default.nix
+++ b/pkgs/applications/misc/xmr-stak/default.nix
@@ -1,32 +1,34 @@
 { stdenv, lib, fetchFromGitHub, cmake, libuv, libmicrohttpd, openssl
 , opencl-headers, ocl-icd, hwloc, cudatoolkit
-, devDonationLevel ? 0.0
-, cudaSupport ? false  # doesn't work currently
+, devDonationLevel ? "0.0"
+, cudaSupport ? false
+, openclSupport ? false
 }:
 
 stdenv.mkDerivation rec {
   name = "xmr-stak-${version}";
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
     owner = "fireice-uk";
     repo = "xmr-stak";
     rev = "v${version}";
-    sha256 = "1gsp5d2qmc8qwbfm87c2vnak6ks6y9csfjbsi0570pdciapaf8vs";
+    sha256 = "0ijhimsd03v1psj7pyj70z4rrgfvphpf69y7g72p06010xq1agp8";
   };
 
   NIX_CFLAGS_COMPILE = "-O3";
 
-  cmakeFlags = lib.optional (!cudaSupport) "-DCUDA_ENABLE=OFF";
+  cmakeFlags = lib.optional (!cudaSupport) "-DCUDA_ENABLE=OFF"
+    ++ lib.optional (!openclSupport) "-DOpenCL_ENABLE=OFF";
 
   nativeBuildInputs = [ cmake ];
-  buildInputs =
-    [ libmicrohttpd openssl opencl-headers ocl-icd hwloc ]
-    ++ lib.optional cudaSupport cudatoolkit;
+  buildInputs = [ libmicrohttpd openssl hwloc ]
+    ++ lib.optional cudaSupport cudatoolkit
+    ++ lib.optionals openclSupport [ opencl-headers ocl-icd ];
 
   postPatch = ''
     substituteInPlace xmrstak/donate-level.hpp \
-      --replace 'fDevDonationLevel = 2.0' 'fDevDonationLevel = ${toString devDonationLevel}'
+      --replace 'fDevDonationLevel = 2.0' 'fDevDonationLevel = ${devDonationLevel}'
   '';
 
   meta = with lib; {
diff --git a/pkgs/applications/networking/bittorrentsync/generic.nix b/pkgs/applications/networking/bittorrentsync/generic.nix
index 3fa7fe180402..eb988471c8c7 100644
--- a/pkgs/applications/networking/bittorrentsync/generic.nix
+++ b/pkgs/applications/networking/bittorrentsync/generic.nix
@@ -4,8 +4,9 @@ let
   arch = {
     "x86_64-linux" = "x64";
     "i686-linux" = "i386";
-  }.${stdenv.system};
+  }.${stdenv.system} or throwSystem;
   libPath = stdenv.lib.makeLibraryPath [ stdenv.cc.libc ];
+  throwSystem = throw "Unsupported system: ${stdenv.system}";
 in
 
 stdenv.mkDerivation rec {
@@ -19,7 +20,7 @@ stdenv.mkDerivation rec {
       "https://download-cdn.getsync.com/${version}/linux-${arch}/BitTorrent-Sync_${arch}.tar.gz"
       "http://syncapp.bittorrent.com/${version}/btsync_${arch}-${version}.tar.gz"
     ];
-    sha256 = sha256s.${stdenv.system};
+    sha256 = sha256s.${stdenv.system} or throwSystem;
   };
 
   dontStrip = true; # Don't strip, otherwise patching the rpaths breaks
diff --git a/pkgs/applications/networking/browsers/chromium/plugins.nix b/pkgs/applications/networking/browsers/chromium/plugins.nix
index d9adad1189f8..a20d7b17a83e 100644
--- a/pkgs/applications/networking/browsers/chromium/plugins.nix
+++ b/pkgs/applications/networking/browsers/chromium/plugins.nix
@@ -94,12 +94,12 @@ let
 
   flash = stdenv.mkDerivation rec {
     name = "flashplayer-ppapi-${version}";
-    version = "27.0.0.187";
+    version = "28.0.0.126";
 
     src = fetchzip {
       url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/"
           + "${version}/flash_player_ppapi_linux.x86_64.tar.gz";
-      sha256 = "102z9aflm0a29klc26jch3wl4y8hdrxzqdqvf5yj0bnibx3hwpsy";
+      sha256 = "10q005jp5vcfqx35jzwp138djv9g7jp83jqbyism40k67ah33i1z";
       stripRoot = false;
     };
 
diff --git a/pkgs/applications/networking/browsers/chromium/upstream-info.nix b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
index 8b20d1748007..738be28ac173 100644
--- a/pkgs/applications/networking/browsers/chromium/upstream-info.nix
+++ b/pkgs/applications/networking/browsers/chromium/upstream-info.nix
@@ -1,18 +1,18 @@
 # This file is autogenerated from update.sh in the same directory.
 {
   beta = {
-    sha256 = "1bx35zj15wyviq2pp12gr0srn036av4i7bk7dap7adikzi6pbqkd";
-    sha256bin64 = "0d4bhwbnvi0sci2h6i8ysz2vi9p831khhs2a2176py5xfgxzc1jj";
-    version = "63.0.3239.84";
+    sha256 = "1mv01q6sdvkmfyk9q834zcaq1z4s07sgfp5i107vgcbwnmwmhpgi";
+    sha256bin64 = "0x176ijcmn25xhn4apn3yal1xb14rz0xaiy2mjbknm011s4ysvby";
+    version = "64.0.3282.24";
   };
   dev = {
-    sha256 = "078cj2sbs65391z5l35jmfr5n2wg63bl5b55f9r46wqxgs1b746c";
-    sha256bin64 = "1p9l9aqh8h5n1mx3ss7byxxl863lr0j241d5bds0yab2dk9gmxyn";
-    version = "64.0.3278.0";
+    sha256 = "1mv01q6sdvkmfyk9q834zcaq1z4s07sgfp5i107vgcbwnmwmhpgi";
+    sha256bin64 = "15zmh4ix6822kzqcapkpjzsjkd4yaw45jgddh5gdv65j65a6fhlq";
+    version = "64.0.3282.24";
   };
   stable = {
-    sha256 = "1bx35zj15wyviq2pp12gr0srn036av4i7bk7dap7adikzi6pbqkd";
-    sha256bin64 = "0rdcq63ppd5pyj6iwlalxr93iyls9pkr5jifsjyf14p79li297zx";
-    version = "63.0.3239.84";
+    sha256 = "0aqsqd2s4hj3lci7wa7bss4wy4sv889f0z4va7fqp9sd36c0gn27";
+    sha256bin64 = "188wxkagihq77aaikkdiq923bbx7a0np73skhrfd4y38lygirry9";
+    version = "63.0.3239.108";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix
index e0f2844bd532..aeae471ce5bb 100644
--- a/pkgs/applications/networking/browsers/firefox/common.nix
+++ b/pkgs/applications/networking/browsers/firefox/common.nix
@@ -135,6 +135,9 @@ stdenv.mkDerivation (rec {
     "--with-libclang-path=${llvmPackages.clang-unwrapped}/lib"
     "--with-clang-path=${llvmPackages.clang}/bin/clang"
   ]
+  ++ lib.optionals (stdenv.lib.versionAtLeast version "57") [
+    "--enable-webrender=build"
+  ]
 
   # TorBrowser patches these
   ++ lib.optionals (!isTorBrowserLike) [
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
index ecd4026821a8..5004c55b5bbe 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix
@@ -73,25 +73,25 @@ let
 in
 stdenv.mkDerivation rec {
   name = "flashplayer-${version}";
-  version = "27.0.0.187";
+  version = "28.0.0.126";
 
   src = fetchurl {
     url =
       if debug then
-        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/27/flash_player_npapi_linux_debug.${arch}.tar.gz"
+        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/28/flash_player_npapi_linux_debug.${arch}.tar.gz"
       else
         "https://fpdownload.adobe.com/get/flashplayer/pdc/${version}/flash_player_npapi_linux.${arch}.tar.gz";
     sha256 =
       if debug then
         if arch == "x86_64" then
-          "1ii97fa1diyggarh1gkg43ia42ws7x84hpjzvrdhxcf6s47lh2ld"
+          "16ivf0j7kr7hak2pxs4mbhw5g0i8ky72mvdkaxpfq42g4mr7qf62"
         else
-          "1gphlgy64ddzn4bbgr2k1kh8xwq9ghf0z0c6zilry0nq33i64xa1"
+          "09dn1zr5bcfvkb46z86p7gr2g9p0a3nj9vvw1qw2fblvbajmznk0"
       else
         if arch == "x86_64" then
-          "1hfcphcvdam62k983rm6r42mnkih4nfwyrnx0v88z3nw14mjr4c3"
+          "0z5p3zimvx8zas649gn2nzp4gfvwc69hklza3d2hpmzb35ckfqbc"
         else
-          "06jb4jd5840w125wd4l35f0b1iqjak07ajy02k9j8srglwi0ffmw";
+          "0kyyjqim7qq0am2hr9ldcbm4sx8dsbgf3916km9gbgg8vjddgxwy";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
index 92e73e475581..8de4e7bd111e 100644
--- a/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
+++ b/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix
@@ -55,19 +55,19 @@ let
 in
 stdenv.mkDerivation rec {
   name = "flashplayer-standalone-${version}";
-  version = "27.0.0.187";
+  version = "28.0.0.126";
 
   src = fetchurl {
     url =
       if debug then
-        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/27/flash_player_sa_linux_debug.x86_64.tar.gz"
+        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/28/flash_player_sa_linux_debug.x86_64.tar.gz"
       else
-        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/27/flash_player_sa_linux.x86_64.tar.gz";
+        "https://fpdownload.macromedia.com/pub/flashplayer/updaters/28/flash_player_sa_linux.x86_64.tar.gz";
     sha256 =
       if debug then
-        "1857g4yy62pj02pnw7p9bpqazp98jf17yv2xdh1fkqiibzahjc6m"
+        "07692qivf09zh36vlaczwwq93f8p7v1afnsgkry7m9yybxh1753d"
       else
-        "0kywx7c3qb1hfljc14ddzm1cyhvwygbbdfxp1rdhqw8s3b6ns0hw";
+        "14xj55wjp9jvm01n8bwrbwmkhpcrxc44yfqi3jq8f8pzrqi7smck";
   };
 
   nativeBuildInputs = [ unzip ];
diff --git a/pkgs/applications/networking/browsers/qutebrowser/default.nix b/pkgs/applications/networking/browsers/qutebrowser/default.nix
index 4f0e891dc496..f4beb70f40da 100644
--- a/pkgs/applications/networking/browsers/qutebrowser/default.nix
+++ b/pkgs/applications/networking/browsers/qutebrowser/default.nix
@@ -29,13 +29,13 @@ let
 
 in buildPythonApplication rec {
   name = "qutebrowser-${version}${fix_postfix}";
-  fix_postfix = "-1";
-  version = "1.0.3";
+  fix_postfix = "";
+  version = "1.0.4";
   namePrefix = "";
 
   src = fetchurl {
     url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${name}.tar.gz";
-    sha256 = "04d6hg2yf2wjwn0sd05bpx3zngnb93g7rizbdq17bbpmnwxchzap";
+    sha256 = "0z8zrgr914bfmimqk3l17dxyc7gzh42sw8lfp041zzvj6fxw3lkr";
   };
 
   # Needs tox
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index a3b30a5ef405..f69b0e5eca9b 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -23,7 +23,7 @@ let
 in buildGoPackage rec {
   pname   = "minikube";
   name    = "${pname}-${version}";
-  version = "0.23.0";
+  version = "0.24.1";
 
   goPackagePath = "k8s.io/minikube";
 
@@ -31,7 +31,7 @@ in buildGoPackage rec {
     owner  = "kubernetes";
     repo   = "minikube";
     rev    = "v${version}";
-    sha256 = "1f7kjn26y7knmab5avj8spb40ny1y0jix5j5p0dqfjvg9climl0h";
+    sha256 = "18b5ic4lcn84hq2ji5alyx58x9vi0b03544i5xzfgn3h2k78kynk";
   };
 
   patches = [
@@ -65,6 +65,8 @@ in buildGoPackage rec {
   postInstall = ''
     mkdir -p $bin/share/bash-completion/completions/
     MINIKUBE_WANTUPDATENOTIFICATION=false HOME=$PWD $bin/bin/minikube completion bash > $bin/share/bash-completion/completions/minikube
+    mkdir -p $bin/share/zsh/site-functions/
+    MINIKUBE_WANTUPDATENOTIFICATION=false HOME=$PWD $bin/bin/minikube completion zsh > $bin/share/zsh/site-functions/_minikube
   '';
 
   postFixup = "wrapProgram $bin/bin/${pname} --prefix PATH : ${stdenv.lib.makeBinPath binPath}";
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index 1fce0695bfd4..a7c5bf4046bf 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -98,8 +98,8 @@ in {
   });
 
   terraform_0_11 = pluggable (generic {
-    version = "0.11.0";
-    sha256 = "0qsydg6bn7k6d68pd1y4j5iys9i66c690yq21axcpnjfibxgqyff";
+    version = "0.11.1";
+    sha256 = "04qyhlif3b3kjs3m6c3mx45sgr5r13x55aic638zzlrhbpmqiih1";
     patches = [ ./provider-path.patch ];
     passthru = { inherit plugins; };
   });
diff --git a/pkgs/applications/networking/instant-messengers/dino/default.nix b/pkgs/applications/networking/instant-messengers/dino/default.nix
index ca7f717810fa..bfe4e9708e3d 100644
--- a/pkgs/applications/networking/instant-messengers/dino/default.nix
+++ b/pkgs/applications/networking/instant-messengers/dino/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub
-, vala, cmake, wrapGAppsHook, pkgconfig, gettext
+, vala, cmake, ninja, wrapGAppsHook, pkgconfig, gettext
 , gobjectIntrospection, gnome3, glib, gdk_pixbuf, gtk3, glib_networking
 , xorg, libXdmcp, libxkbcommon
 , libnotify, libsoup
@@ -26,6 +26,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [
     vala
     cmake
+    ninja
     pkgconfig
     wrapGAppsHook
   ];
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index 853a6c96a7a4..0fb05eda4a8e 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -7,12 +7,12 @@
 stdenv.mkDerivation rec {
 
     pname = "discord";
-    version = "0.0.2";
+    version = "0.0.3";
     name = "${pname}-${version}";
 
     src = fetchurl {
         url = "https://cdn.discordapp.com/apps/linux/${version}/${pname}-${version}.tar.gz";
-        sha256 = "0sb7l0rrpqxzn4fndjr50r5xfiid1f81p22gda4mz943yv37mhfz";
+        sha256 = "1yxxy9q75zlgk1b4winw4zy9yxk5pn8x4camh52n6v3mw6gq0bfh";
     };
 
     nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/networking/instant-messengers/jackline/default.nix b/pkgs/applications/networking/instant-messengers/jackline/default.nix
index 6545b90980e3..9f9236244ae2 100644
--- a/pkgs/applications/networking/instant-messengers/jackline/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jackline/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchFromGitHub, ocamlPackages, opam}:
+{ stdenv, fetchFromGitHub, ocamlPackages }:
 
 assert stdenv.lib.versionAtLeast ocamlPackages.ocaml.version "4.02.2";
 
@@ -16,13 +16,12 @@ stdenv.mkDerivation rec {
   buildInputs = with ocamlPackages; [
                   ocaml ocamlbuild findlib topkg ppx_sexp_conv
                   erm_xmpp_0_3 tls nocrypto x509 ocaml_lwt otr astring
-                  ptime notty sexplib_p4 hex uutf opam
+                  ptime notty sexplib_p4 hex uutf
                 ];
 
-  buildPhase = with ocamlPackages;
-    "ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib pkg/pkg.ml build --pinned true";
+  buildPhase = "${ocamlPackages.topkg.run} build --pinned true";
 
-  installPhase = "opam-installer --prefix=$out --script | sh";
+  inherit (ocamlPackages.topkg) installPhase;
 
   meta = with stdenv.lib; {
     homepage = https://github.com/hannesm/jackline;
diff --git a/pkgs/applications/networking/instant-messengers/rambox/bare.nix b/pkgs/applications/networking/instant-messengers/rambox/bare.nix
index 543bf6425250..594004fd2949 100644
--- a/pkgs/applications/networking/instant-messengers/rambox/bare.nix
+++ b/pkgs/applications/networking/instant-messengers/rambox/bare.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchFromGitHub, fetchNodeModules, nodejs-8_x, ruby, sencha, auth0ClientID, auth0Domain }:
+{ stdenv, fetchFromGitHub, fetchNodeModules, nodejs-8_x, ruby, sencha
+, auth0ClientID, auth0Domain, disableTooltips }:
 
 stdenv.mkDerivation rec {
   name = "rambox-bare-${version}";
@@ -20,7 +21,8 @@ stdenv.mkDerivation rec {
     sha256 = "1y3q8ggyvfywxqi5hn9mvr1sjfylspis43iyf4b7snyr1a1br3r4";
   };
 
-  patches = [ ./hide-check-for-updates.patch ./isDev.patch ];
+  patches = [ ./hide-check-for-updates.patch ./isDev.patch ]
+    ++ stdenv.lib.optionals disableTooltips [ ./disable-tooltips.patch ];
 
   configurePhase = ''
     echo 'var auth0Cfg = { clientID: "${auth0ClientID}", domain: "${auth0Domain}" };' > env.js
diff --git a/pkgs/applications/networking/instant-messengers/rambox/default.nix b/pkgs/applications/networking/instant-messengers/rambox/default.nix
index b6e9c9210251..a601db8c8da5 100644
--- a/pkgs/applications/networking/instant-messengers/rambox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/rambox/default.nix
@@ -1,13 +1,14 @@
 { stdenv, newScope, makeWrapper, electron, xdg_utils, makeDesktopItem
 , auth0ClientID ? "0spuNKfIGeLAQ_Iki9t3fGxbfJl3k8SU"
-, auth0Domain ? "nixpkgs.auth0.com" }:
+, auth0Domain ? "nixpkgs.auth0.com"
+, disableTooltips ? false }:
 
 let
   callPackage = newScope self;
   self = {
     fetchNodeModules = callPackage ./fetchNodeModules.nix {};
     rambox-bare = callPackage ./bare.nix {
-      inherit auth0ClientID auth0Domain;
+      inherit auth0ClientID auth0Domain disableTooltips;
     };
     sencha = callPackage ./sencha {};
   };
diff --git a/pkgs/applications/networking/instant-messengers/rambox/disable-tooltips.patch b/pkgs/applications/networking/instant-messengers/rambox/disable-tooltips.patch
new file mode 100644
index 000000000000..5ddaa9d51771
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/rambox/disable-tooltips.patch
@@ -0,0 +1,19 @@
+--- index.html.orig	2017-12-16 20:06:03.401298402 +0300
++++ ./index.html	2017-12-16 20:06:21.474484436 +0300
+@@ -43,14 +43,14 @@
+ 	<!--- Localization -->
+ 
+ 	<!--- Tooltip player -->
+-	<script type='text/javascript'>
++	<!--<script type='text/javascript'>
+ 	    (function(d, s){
+ 			var t = d.createElement(s), e = d.getElementsByTagName(s)[0];
+ 			t.type = "text/javascript"; e.parentNode.insertBefore(t, e);
+ 			t.async = "async";
+ 			t.src = "https://cdn.tooltip.io/static/player.js?apiKey=sEF8shc4KSuqtHMx0ztmTFdcrQO0cAVpszZ9Y8hLfQ2";
+ 		})(document, "script");
+-	</script>
++	</script>-->
+ 	<!--- Tooltip player -->
+ </head>
+ <body>
diff --git a/pkgs/applications/networking/instant-messengers/ricochet/default.nix b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
index 050eb7765906..c99130f28a39 100644
--- a/pkgs/applications/networking/instant-messengers/ricochet/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ricochet/default.nix
@@ -46,6 +46,9 @@ stdenv.mkDerivation rec {
     cp icons/ricochet.png $out/share/pixmaps/ricochet.png
   '';
 
+  # RCC: Error in 'translation/embedded.qrc': Cannot find file 'ricochet_en.qm'
+  enableParallelBuilding = false;
+
   meta = with stdenv.lib; {
     description = "Anonymous peer-to-peer instant messaging";
     homepage = https://ricochet.im;
diff --git a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
index b92bf50b315b..11a1efec8abe 100644
--- a/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
+++ b/pkgs/applications/networking/instant-messengers/skypeforlinux/default.nix
@@ -4,6 +4,8 @@
 
 let
 
+  # Please keep the version x.y.0.z and do not update to x.y.76.z because the
+  # source of the latter disappears much faster.
   version = "8.11.0.4";
 
   rpath = stdenv.lib.makeLibraryPath [
@@ -55,7 +57,7 @@ let
     if stdenv.system == "x86_64-linux" then
       fetchurl {
         url = "https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb";
-        sha256 = "1dq7k4zlqqsx7786phialia5xbpc3cp1wrjhqrvga09yg4dl505c";
+        sha256 = "1chwc4rqcwwim03n6nski5dar33bb1gnadbvcjg6gln3xqr0ipib";
       }
     else
       throw "Skype for linux is not supported on ${stdenv.system}";
diff --git a/pkgs/applications/networking/instant-messengers/slack/default.nix b/pkgs/applications/networking/instant-messengers/slack/default.nix
index 23a5d91f0d25..a32623c1c848 100644
--- a/pkgs/applications/networking/instant-messengers/slack/default.nix
+++ b/pkgs/applications/networking/instant-messengers/slack/default.nix
@@ -4,7 +4,7 @@
 
 let
 
-  version = "2.9.0";
+  version = "3.0.0";
 
   rpath = stdenv.lib.makeLibraryPath [
     alsaLib
@@ -46,7 +46,7 @@ let
     if stdenv.system == "x86_64-linux" then
       fetchurl {
         url = "https://downloads.slack-edge.com/linux_releases/slack-desktop-${version}-amd64.deb";
-        sha256 = "1ddfvsy4lr7hcnzxbk4crczylj1qwm9av02xms4w2p0k0c8nhvvc";
+        sha256 = "17hq31x9k03rvj2sdsdfj6j75v30yrywlsbca4d56a0qsdzysxkw";
       }
     else
       throw "Slack is not supported on ${stdenv.system}";
diff --git a/pkgs/applications/networking/mailreaders/mutt/default.nix b/pkgs/applications/networking/mailreaders/mutt/default.nix
index 5d0ab27840bb..d28bfb647e5b 100644
--- a/pkgs/applications/networking/mailreaders/mutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/mutt/default.nix
@@ -27,11 +27,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "mutt-${version}";
-  version = "1.9.1";
+  version = "1.9.2";
 
   src = fetchurl {
     url = "http://ftp.mutt.org/pub/mutt/${name}.tar.gz";
-    sha256 = "1c8vv4anl555a03pbnwf8wnf0d8pcnd4p35y3q8f5ikkcflq76vl";
+    sha256 = "15kqxpx8bykqbyw4q33hkz0j2f65v6cl21sl5li2vw5vaaim5qd2";
   };
 
   patches = optional smimeSupport (fetchpatch {
diff --git a/pkgs/applications/networking/mailreaders/neomutt/default.nix b/pkgs/applications/networking/mailreaders/neomutt/default.nix
index f72fdba52f8b..8704961270df 100644
--- a/pkgs/applications/networking/mailreaders/neomutt/default.nix
+++ b/pkgs/applications/networking/mailreaders/neomutt/default.nix
@@ -15,14 +15,14 @@ let
   '';
 
 in stdenv.mkDerivation rec {
-  version = "20171027";
+  version = "20171208";
   name = "neomutt-${version}";
 
   src = fetchFromGitHub {
     owner  = "neomutt";
     repo   = "neomutt";
     rev    = "neomutt-${version}";
-    sha256 = "0pwc5zdxc9h23658dfkzndfj1ld3ijyvcxmsiv793y3i4dig0s3n";
+    sha256 = "1fn28q4akfz0nq3ysp8n53j8yqp2mx6yhbvb59c4zm6zgd4qzgp1";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/newsreaders/liferea/default.nix b/pkgs/applications/networking/newsreaders/liferea/default.nix
index 93e10fbe5664..2e67cea4c93c 100644
--- a/pkgs/applications/networking/newsreaders/liferea/default.nix
+++ b/pkgs/applications/networking/newsreaders/liferea/default.nix
@@ -6,13 +6,13 @@
 
 let
   pname = "liferea";
-  version = "1.12-rc3";
+  version = "1.12.0";
 in stdenv.mkDerivation rec {
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "https://github.com/lwindolf/${pname}/releases/download/v${version}/${name}.tar.bz2";
-    sha256 = "0dd6hisqvc4ps6dx9ly34qx49ab1qa5h826b7dvf64mjqxa2v3kr";
+    sha256 = "02qzg85l2vrja2qwzdbrfa4z1lp5p6lp528bv74abmxz5wlpif70";
   };
 
   nativeBuildInputs = [ wrapGAppsHook python3Packages.wrapPython intltool pkgconfig ];
diff --git a/pkgs/applications/networking/ostinato/default.nix b/pkgs/applications/networking/ostinato/default.nix
index 41e64d7b721f..f2b7a4a4e999 100644
--- a/pkgs/applications/networking/ostinato/default.nix
+++ b/pkgs/applications/networking/ostinato/default.nix
@@ -54,6 +54,10 @@ stdenv.mkDerivation rec {
     EOF
   '';
 
+  # `cd common; qmake ostproto.pro; make pdmlreader.o`:
+  # pdmlprotocol.h:23:25: fatal error: protocol.pb.h: No such file or directory
+  enableParallelBuilding = false;
+
   meta = with stdenv.lib; {
     description = "A packet traffic generator and analyzer";
     homepage    = http://ostinato.org;
diff --git a/pkgs/applications/networking/remote/teamviewer/default.nix b/pkgs/applications/networking/remote/teamviewer/default.nix
index d002b51625c6..4ff649dbf2a0 100644
--- a/pkgs/applications/networking/remote/teamviewer/default.nix
+++ b/pkgs/applications/networking/remote/teamviewer/default.nix
@@ -4,7 +4,7 @@ let
   ld32 =
     if stdenv.system == "i686-linux" then "${stdenv.cc}/nix-support/dynamic-linker"
     else if stdenv.system == "x86_64-linux" then "${stdenv.cc}/nix-support/dynamic-linker-m32"
-    else abort "Unsupported architecture";
+    else throw "Unsupported system ${stdenv.system}";
   ld64 = "${stdenv.cc}/nix-support/dynamic-linker";
 
   mkLdPath = ps: lib.makeLibraryPath (with ps; [ qt4 dbus alsaLib ]);
diff --git a/pkgs/applications/networking/resilio-sync/default.nix b/pkgs/applications/networking/resilio-sync/default.nix
index 7622cb76ad2a..5e94106a48f1 100644
--- a/pkgs/applications/networking/resilio-sync/default.nix
+++ b/pkgs/applications/networking/resilio-sync/default.nix
@@ -4,7 +4,7 @@ let
   arch = {
     "x86_64-linux" = "x64";
     "i686-linux" = "i386";
-  }.${stdenv.system};
+  }.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
   libPath = stdenv.lib.makeLibraryPath [ stdenv.cc.libc ];
 
 in stdenv.mkDerivation rec {
diff --git a/pkgs/applications/networking/syncplay/default.nix b/pkgs/applications/networking/syncplay/default.nix
new file mode 100644
index 000000000000..80ad1a43332a
--- /dev/null
+++ b/pkgs/applications/networking/syncplay/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, python2Packages }:
+
+python2Packages.buildPythonApplication rec {
+  name = "syncplay-${version}";
+  version = "1.5.0";
+
+  format = "other";
+
+  src = fetchurl {
+    url = https://github.com/Syncplay/syncplay/archive/v1.5.0.tar.gz;
+    sha256 = "762e6318588e14aa02b1340baa18510e7de87771c62ca5b44d985b6d1289964d";
+  };
+
+  propagatedBuildInputs = with python2Packages; [ pyside twisted ];
+
+  makeFlags = [ "DESTDIR=$(out)" "PREFIX=" ];
+
+  postInstall = ''
+    mkdir -p $out/lib/python2.7/site-packages
+    mv $out/lib/syncplay/syncplay $out/lib/python2.7/site-packages/
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = http://syncplay.pl/;
+    description = "Free software that synchronises media players";
+    license = licenses.asl20;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ enzime ];
+  };
+}
diff --git a/pkgs/applications/science/logic/acgtk/default.nix b/pkgs/applications/science/logic/acgtk/default.nix
index e76689992296..9e6243c54980 100644
--- a/pkgs/applications/science/logic/acgtk/default.nix
+++ b/pkgs/applications/science/logic/acgtk/default.nix
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   };
 
   buildInputs = with ocamlPackages; [
-    ocaml findlib camlp4 ansiterminal biniou bolt ocaml_cairo2 dypgen easy-format ocf yojson
+    ocaml findlib camlp4 ansiterminal biniou bolt cairo2 dypgen easy-format ocf yojson
   ];
 
   patches = [ ./install-emacs-to-site-lisp.patch
diff --git a/pkgs/applications/science/logic/coq/HEAD.nix b/pkgs/applications/science/logic/coq/HEAD.nix
deleted file mode 100644
index 968ea74e2960..000000000000
--- a/pkgs/applications/science/logic/coq/HEAD.nix
+++ /dev/null
@@ -1,81 +0,0 @@
-# - coqide compilation can be disabled by setting buildIde to false;
-# - The csdp program used for the Micromega tactic is statically referenced.
-#   However, coq can build without csdp by setting it to null.
-#   In this case some Micromega tactics will search the user's path for the csdp program and will fail if it is not found.
-
-{stdenv, fetchgit, writeText, pkgconfig, ocamlPackages_4_02, ncurses, buildIde ? true, csdp ? null}:
-
-let
-  version = "2017-02-03";
-  coq-version = "8.6";
-  ideFlags = if buildIde then "-lablgtkdir ${ocamlPackages_4_02.lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
-  csdpPatch = if csdp != null then ''
-    substituteInPlace plugins/micromega/sos.ml --replace "; csdp" "; ${csdp}/bin/csdp"
-    substituteInPlace plugins/micromega/coq_micromega.ml --replace "System.is_in_system_path \"csdp\"" "true"
-  '' else "";
-  ocaml = ocamlPackages_4_02.ocaml;
-  findlib = ocamlPackages_4_02.findlib;
-  lablgtk = ocamlPackages_4_02.lablgtk;
-  camlp5 = ocamlPackages_4_02.camlp5_transitional;
-in
-
-stdenv.mkDerivation {
-  name = "coq-unstable-${version}";
-
-  inherit coq-version;
-  inherit ocaml camlp5 findlib;
-
-  src = fetchgit {
-    url = git://scm.gforge.inria.fr/coq/coq.git;
-    rev = "078598d029792a3d9a54fae9b9ac189b75bc3b06";
-    sha256 = "0sflrpp6x0ada0bjh67q1x65g88d179n3cawpwkp1pm4kw76g8x7";
-  };
-
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ocaml findlib camlp5 ncurses lablgtk ];
-
-  postPatch = ''
-    UNAME=$(type -tp uname)
-    RM=$(type -tp rm)
-    substituteInPlace configure --replace "/bin/uname" "$UNAME"
-    substituteInPlace tools/beautify-archive --replace "/bin/rm" "$RM"
-    substituteInPlace configure.ml --replace "\"Darwin\"; \"FreeBSD\"; \"OpenBSD\"" "\"Darwinx\"; \"FreeBSD\"; \"OpenBSD\""
-    ${csdpPatch}
-  '';
-
-  setupHook = writeText "setupHook.sh" ''
-    addCoqPath () {
-      if test -d "''$1/lib/coq/${coq-version}/user-contrib"; then
-        export COQPATH="''${COQPATH}''${COQPATH:+:}''$1/lib/coq/${coq-version}/user-contrib/"
-      fi
-    }
-
-    envHooks=(''${envHooks[@]} addCoqPath)
-  '';
-
-  preConfigure = ''
-    configureFlagsArray=(
-      -opt
-      ${ideFlags}
-    )
-  '';
-
-  prefixKey = "-prefix ";
-
-  buildFlags = "revision coq coqide";
-
-  meta = with stdenv.lib; {
-    description = "Coq proof assistant";
-    longDescription = ''
-      Coq is a formal proof management system.  It provides a formal language
-      to write mathematical definitions, executable algorithms and theorems
-      together with an environment for semi-interactive development of
-      machine-checked proofs.
-    '';
-    homepage = http://coq.inria.fr;
-    license = licenses.lgpl21;
-    branch = coq-version;
-    maintainers = with maintainers; [ roconnor thoughtpolice vbgl ];
-    platforms = platforms.unix;
-  };
-}
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index cdfd035c7139..2aa40b391f70 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -21,6 +21,7 @@ let
    "8.6.1"     = "0llrxcxwy5j87vbbjnisw42rfw1n1pm5602ssx64xaxx3k176g6l";
    "8.7+beta2" = "1r274m44z774xigvj43g211ms9z9bwgyp1g43rvq4fswb3gzxc4b";
    "8.7.0"     = "1h18b7xpnx3ix9vsi5fx4zdcbxy7bhra7gd5c5yzxmk53cgf1p9m";
+   "8.7.1"     = "0gjn59jkbxwrihk8fx9d823wjyjh5m9gvj9l31nv6z6bcqhgdqi8";
   }."${version}";
   coq-version = builtins.substring 0 3 version;
   camlp5 = ocamlPackages.camlp5_strict;
diff --git a/pkgs/applications/science/logic/ott/default.nix b/pkgs/applications/science/logic/ott/default.nix
index b10ec814ff55..6fcc8f9c111f 100644
--- a/pkgs/applications/science/logic/ott/default.nix
+++ b/pkgs/applications/science/logic/ott/default.nix
@@ -1,18 +1,18 @@
-# - coqide compilation can be disabled by setting lablgtk to null;
-
-{stdenv, fetchurl, pkgconfig, ocaml, camlp5}:
+{ stdenv, fetchFromGitHub, pkgconfig, ocaml }:
 
 stdenv.mkDerivation rec {
   name = "ott-${version}";
-  version = "0.25";
+  version = "0.27";
 
-  src = fetchurl {
-    url = "http://www.cl.cam.ac.uk/~pes20/ott/ott_distro_${version}.tar.gz";
-    sha256 = "0i8ad1yrz9nrrgpi8db4z0aii5s0sy35mmzdfw5nq183mvbx8qqd";
+  src = fetchFromGitHub {
+    owner = "ott-lang";
+    repo = "ott";
+    rev = version;
+    sha256 = "12hzpyinswqaxwp6y793h7ywrv6289cw4911ah2yzq04ji095pfb";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ocaml camlp5 ];
+  buildInputs = [ ocaml ];
 
   installPhase = ''
     mkdir -p $out/bin
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
     ln -s $out/bin/ott.opt $out/bin/ott
 
     mkdir -p $out/share/emacs/site-lisp
-    cp emacs/ottmode.el $out/share/emacs/site-lisp
+    cp emacs/ott-mode.el $out/share/emacs/site-lisp
     '';
 
   meta = {
diff --git a/pkgs/applications/science/logic/stp/default.nix b/pkgs/applications/science/logic/stp/default.nix
index 8c0b82cc549c..367449f44f38 100644
--- a/pkgs/applications/science/logic/stp/default.nix
+++ b/pkgs/applications/science/logic/stp/default.nix
@@ -23,6 +23,10 @@ stdenv.mkDerivation rec {
     )
   '';
 
+  # `make -f lib/Interface/CMakeFiles/cppinterface.dir/build.make lib/Interface/CMakeFiles/cppinterface.dir/cpp_interface.cpp.o`:
+  # include/stp/AST/UsefulDefs.h:41:29: fatal error: stp/AST/ASTKind.h: No such file or directory
+  enableParallelBuilding = false;
+
   meta = with stdenv.lib; {
     description = "Simple Theorem Prover";
     maintainers = with maintainers; [ mornfall ];
diff --git a/pkgs/applications/science/logic/z3/4.5.0.nix b/pkgs/applications/science/logic/z3/4.5.0.nix
new file mode 100644
index 000000000000..827cb2cbe3de
--- /dev/null
+++ b/pkgs/applications/science/logic/z3/4.5.0.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, python2, fixDarwinDylibNames }:
+
+let
+  python = python2;
+in stdenv.mkDerivation rec {
+  name = "z3-${version}";
+  version = "4.5.0";
+
+  src = fetchFromGitHub {
+    owner  = "Z3Prover";
+    repo   = "z3";
+    rev    = "z3-4.5.0";
+    sha256 = "0ssp190ksak93hiz61z90x6hy9hcw1ywp8b2dzmbhn6fbd4bnxzp";
+  };
+
+  buildInputs = [ python fixDarwinDylibNames ];
+  enableParallelBuilding = true;
+
+  configurePhase = ''
+    ${python.interpreter} scripts/mk_make.py --prefix=$out --python --pypkgdir=$out/${python.sitePackages}
+    cd build
+  '';
+
+  meta = {
+    description = "A high-performance theorem prover and SMT solver";
+    homepage    = "https://github.com/Z3Prover/z3";
+    license     = stdenv.lib.licenses.mit;
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
+  };
+}
diff --git a/pkgs/applications/science/machine-learning/shogun/default.nix b/pkgs/applications/science/machine-learning/shogun/default.nix
index 9d736694cbdc..ae272284bcdc 100644
--- a/pkgs/applications/science/machine-learning/shogun/default.nix
+++ b/pkgs/applications/science/machine-learning/shogun/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, ccache, cmake, ctags, swig
+{ stdenv, lib, fetchFromGitHub, fetchpatch, ccache, cmake, ctags, swig
 # data, compression
 , bzip2, curl, hdf5, json_c, lzma, lzo, protobuf, snappy
 # maths
@@ -27,6 +27,12 @@ stdenv.mkDerivation rec {
     fetchSubmodules = true;
   };
 
+  patches = fetchpatch {
+    name = "Fix-meta-example-parser-bug-in-parallel-builds.patch";
+    url = "https://github.com/shogun-toolbox/shogun/commit/ecd6a8f11ac52748e89d27c7fab7f43c1de39f05.patch";
+    sha256 = "1hrwwrj78sxhwcvgaz7n4kvh5y9snfcc4jf5xpgji5hjymnl311n";
+  };
+
   CCACHE_DIR=".ccache";
 
   buildInputs = with lib; [
diff --git a/pkgs/applications/version-management/gerrit/default.nix b/pkgs/applications/version-management/gerrit/default.nix
index 54693f3c5f01..0475a8ae76ca 100644
--- a/pkgs/applications/version-management/gerrit/default.nix
+++ b/pkgs/applications/version-management/gerrit/default.nix
@@ -2,16 +2,16 @@
 
 stdenv.mkDerivation rec {
   name = "gerrit-${version}";
-  version = "2.14.3";
+  version = "2.14.6";
 
   src = fetchurl {
     url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
-    sha256 = "1hxrlhp5l5q4lp5b5bq8va7856cnm4blfv01rgqq3yhvn432sq6v";
+    sha256 = "0fsqwfsnyb4nbxgb1i1mp0vshl0mk8bwqlddzqr9x2v99mbca28q";
   };
 
   outputHashAlgo = "sha256";
   outputHashMode = "recursive";
-  outputHash = "1j1afxv7yj2fxaw0wy8kmxi6sl9fwj8xsxs5kzg9qz5gzayb26kp";
+  outputHash = "1qrmvqqnlbabqz4yx06vi030ci12v0063iq2palxmbj3whrzv9la";
 
   buildCommand = ''
     mkdir -p "$out"/webapps/
diff --git a/pkgs/applications/version-management/gitless/default.nix b/pkgs/applications/version-management/gitless/default.nix
new file mode 100644
index 000000000000..2b93a95e45ae
--- /dev/null
+++ b/pkgs/applications/version-management/gitless/default.nix
@@ -0,0 +1,26 @@
+{ fetchFromGitHub, pythonPackages, stdenv }:
+
+pythonPackages.buildPythonApplication rec {
+  ver = "0.8.5";
+  name = "gitless-${ver}";
+
+  src = fetchFromGitHub {
+    owner = "sdg-mit";
+    repo = "gitless";
+    rev = "v${ver}";
+    sha256 = "1v22i5lardswpqb6vxjgwra3ac8652qyajbijfj18vlkhajz78hq";
+  };
+
+  propagatedBuildInputs = with pythonPackages; [ sh pygit2 clint ];
+
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    homepage = http://gitless.com/;
+    description = "A version control system built on top of Git";
+    license = licenses.gpl2;
+    platforms = platforms.all;
+    maintainers = [ maintainers.cransom ];
+  };
+}
+
diff --git a/pkgs/applications/version-management/guitone/default.nix b/pkgs/applications/version-management/guitone/default.nix
index bfaa62ebb66d..ded0d5e39863 100644
--- a/pkgs/applications/version-management/guitone/default.nix
+++ b/pkgs/applications/version-management/guitone/default.nix
@@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
     branch = "net.venge.monotone.guitone";
   };
 
+  patches = [ ./parallel-building.patch ];
+
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ qt4 qmake4Hook graphviz ];
 
@@ -24,6 +26,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Qt4 based GUI for monotone";
     homepage = http://guitone.thomaskeller.biz;
+    downloadPage = https://code.monotone.ca/p/guitone/;
     inherit (qt4.meta) platforms;
   };
 }
diff --git a/pkgs/applications/version-management/guitone/parallel-building.patch b/pkgs/applications/version-management/guitone/parallel-building.patch
new file mode 100644
index 000000000000..f0e924cbfb81
--- /dev/null
+++ b/pkgs/applications/version-management/guitone/parallel-building.patch
@@ -0,0 +1,7 @@
+Without this `make tmp/AttributesView.o` fails with
+src/view/dialogs/AddEditAttribute.h:22:35: fatal error: ui_add_edit_attribute.h: No such file or directory
+--- a/guitone.pro
++++ b/guitone.pro
+@@ -215 +215,2 @@ help.commands = @echo Available targets: $${QMAKE_EXTRA_TARGETS}
+ QMAKE_EXTRA_TARGETS += help
++CONFIG += depend_includepath
diff --git a/pkgs/applications/virtualization/openstack/glance.nix b/pkgs/applications/virtualization/openstack/glance.nix
deleted file mode 100644
index 21cb4906d034..000000000000
--- a/pkgs/applications/virtualization/openstack/glance.nix
+++ /dev/null
@@ -1,69 +0,0 @@
-{ stdenv, fetchurl, python2Packages, sqlite, which, strace }:
-
-python2Packages.buildPythonApplication rec {
-  name = "glance-${version}";
-  version = "11.0.0";
-  namePrefix = "";
-
-  PBR_VERSION = "${version}";
-
-  src = fetchurl {
-    url = "https://github.com/openstack/glance/archive/${version}.tar.gz";
-    sha256 = "05rz1lmzdmpnw8sf87vvi0l6q9g6s840z934zyinw17yfcvmqrdg";
-  };
-
-  # https://github.com/openstack/glance/blob/stable/liberty/requirements.txt
-  propagatedBuildInputs = with python2Packages; [
-     pbr sqlalchemy anyjson eventlet PasteDeploy routes webob sqlalchemy_migrate
-     httplib2 pycrypto iso8601 stevedore futurist keystonemiddleware paste
-     jsonschema keystoneclient pyopenssl six retrying semantic-version qpid-python
-     WSME osprofiler glance_store castellan taskflow cryptography xattr pysendfile
-
-     # oslo componenets
-     oslo-config oslo-context oslo-concurrency oslo-service oslo-utils oslo-db
-     oslo-i18n oslo-log oslo-messaging oslo-middleware oslo-policy oslo-serialization
-     MySQL_python
-  ];
-
-  buildInputs = with python2Packages; [
-    Babel coverage fixtures mox3 mock oslosphinx requests testrepository pep8
-    testresources testscenarios testtools psutil_1 oslotest psycopg2
-    sqlite which strace
-  ];
-
-  patchPhase = ''
-    # it's not a test, but a class mixin
-    sed -i 's/ImageCacheTestCase/ImageCacheMixin/' glance/tests/unit/test_image_cache.py
-
-    # these require network access, see https://bugs.launchpad.net/glance/+bug/1508868
-    sed -i 's/test_get_image_data_http/noop/' glance/tests/unit/common/scripts/test_scripts_utils.py
-    sed -i 's/test_set_image_data_http/noop/' glance/tests/unit/common/scripts/image_import/test_main.py
-    sed -i 's/test_create_image_with_nonexistent_location_url/noop/' glance/tests/unit/v1/test_api.py
-    sed -i 's/test_upload_image_http_nonexistent_location_url/noop/' glance/tests/unit/v1/test_api.py
-
-    # TODO: couldn't figure out why this test is failing
-    sed -i 's/test_all_task_api/noop/' glance/tests/integration/v2/test_tasks_api.py
-  '';
-
-  postInstall = ''
-    # check all binaries don't crash
-    for i in $out/bin/*; do
-      case "$i" in
-      *glance-artifacts) # https://bugs.launchpad.net/glance/+bug/1508879
-          :
-          ;;
-      *)
-          $i --help
-      esac
-    done
-
-    cp etc/*-paste.ini $out/etc/
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://glance.openstack.org/;
-    description = "Services for discovering, registering, and retrieving virtual machine images";
-    license = stdenv.lib.licenses.asl20;
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/applications/virtualization/openstack/keystone.nix b/pkgs/applications/virtualization/openstack/keystone.nix
deleted file mode 100644
index 39c54f0d204b..000000000000
--- a/pkgs/applications/virtualization/openstack/keystone.nix
+++ /dev/null
@@ -1,55 +0,0 @@
-{ stdenv, fetchurl, python2Packages, xmlsec, which, openssl }:
-
-python2Packages.buildPythonApplication rec {
-  name = "keystone-${version}";
-  version = "8.0.0";
-  namePrefix = "";
-
-  PBR_VERSION = "${version}";
-
-  src = fetchurl {
-    url = "https://github.com/openstack/keystone/archive/${version}.tar.gz";
-    sha256 = "1xbrs7xgwjzrs07zyxxcl2lq18dh582gd6lx1zzzji8c0qmffy0z";
-  };
-
-  # remove on next version bump
-  patches = [ ./remove-oslo-policy-tests.patch ];
-
-  # https://github.com/openstack/keystone/blob/stable/liberty/requirements.txt
-  propagatedBuildInputs = with python2Packages; [
-    pbr webob eventlet greenlet PasteDeploy paste routes cryptography six
-    sqlalchemy sqlalchemy_migrate stevedore passlib keystoneclient memcached
-    keystonemiddleware oauthlib pysaml2 dogpile_cache jsonschema pycadf msgpack
-    xmlsec MySQL_python
-
-    # oslo
-    oslo-cache oslo-concurrency oslo-config oslo-context oslo-messaging oslo-db
-    oslo-i18n oslo-log oslo-middleware oslo-policy oslo-serialization oslo-service
-    oslo-utils
-  ];
-
-  buildInputs = with python2Packages; [
-    coverage fixtures mock subunit tempest-lib testtools testrepository
-    ldap ldappool webtest requests oslotest pep8 pymongo which
-  ];
-
-  makeWrapperArgs = ["--prefix PATH : '${openssl.bin}/bin:$PATH'"];
-
-  postInstall = ''
-    # install .ini files
-    mkdir -p $out/etc
-    cp etc/* $out/etc
-
-    # check all binaries don't crash
-    for i in $out/bin/*; do
-      $i --help
-    done
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://keystone.openstack.org/;
-    description = "Authentication, authorization and service discovery mechanisms via HTTP";
-    license = stdenv.lib.licenses.asl20;
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/applications/virtualization/openstack/neutron-iproute-4.patch b/pkgs/applications/virtualization/openstack/neutron-iproute-4.patch
deleted file mode 100644
index d7a2caa2bdea..000000000000
--- a/pkgs/applications/virtualization/openstack/neutron-iproute-4.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-From 3aefdf4de76fdcdc02093bc631e339f9ecd4c707 Mon Sep 17 00:00:00 2001
-From: James Page <james.page@ubuntu.com>
-Date: Fri, 18 Sep 2015 16:38:47 +0100
-Subject: Add compatibility with iproute2 >= 4.0
-
-The ip netns list command adds additional id data in more recent
-versions of iproute2 of the format:
-
-  qdhcp-35fc068a-750d-4add-b1d2-af392dbd8790 (id: 1)
-
-Update parsing to deal with old and new formats.
-
-Change-Id: I0d3fc4262284172f5ad31e4f2f78ae1fb33b4228
-Closes-Bug: 1497309
----
- neutron/agent/linux/ip_lib.py                   |  6 +++---
- neutron/tests/functional/agent/test_l3_agent.py |  2 +-
- neutron/tests/unit/agent/linux/test_ip_lib.py   | 15 +++++++++++++++
- 3 files changed, 19 insertions(+), 4 deletions(-)
-
-diff --git a/neutron/agent/linux/ip_lib.py b/neutron/agent/linux/ip_lib.py
-index 551341a..a717bf6 100644
---- a/neutron/agent/linux/ip_lib.py
-+++ b/neutron/agent/linux/ip_lib.py
-@@ -208,7 +208,7 @@ class IPWrapper(SubProcessBase):
-     @classmethod
-     def get_namespaces(cls):
-         output = cls._execute([], 'netns', ('list',))
--        return [l.strip() for l in output.split('\n')]
-+        return [l.split()[0] for l in output.splitlines()]
- 
- 
- class IPDevice(SubProcessBase):
-@@ -819,8 +819,8 @@ class IpNetnsCommand(IpCommandBase):
-         output = self._parent._execute(
-             ['o'], 'netns', ['list'],
-             run_as_root=cfg.CONF.AGENT.use_helper_for_ns_read)
--        for line in output.split('\n'):
--            if name == line.strip():
-+        for line in [l.split()[0] for l in output.splitlines()]:
-+            if name == line:
-                 return True
-         return False
- 
-diff --git a/neutron/tests/functional/agent/test_l3_agent.py b/neutron/tests/functional/agent/test_l3_agent.py
-index ffa20e6..84b16df 100644
---- a/neutron/tests/functional/agent/test_l3_agent.py
-+++ b/neutron/tests/functional/agent/test_l3_agent.py
-@@ -790,7 +790,7 @@ class L3HATestFramework(L3AgentTestFramework):
-         get_ns_name = mock.patch.object(
-             namespaces.RouterNamespace, '_get_ns_name').start()
-         get_ns_name.return_value = "%s%s%s" % (
--            namespaces.RouterNamespace._get_ns_name(router_info['id']),
-+            'qrouter-' + router_info['id'],
-             self.NESTED_NAMESPACE_SEPARATOR, self.agent.host)
-         router1 = self.manage_router(self.agent, router_info)
- 
-diff --git a/neutron/tests/unit/agent/linux/test_ip_lib.py b/neutron/tests/unit/agent/linux/test_ip_lib.py
-index 2de408d..bdfc9d7 100644
---- a/neutron/tests/unit/agent/linux/test_ip_lib.py
-+++ b/neutron/tests/unit/agent/linux/test_ip_lib.py
-@@ -27,6 +27,11 @@ NETNS_SAMPLE = [
-     'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb',
-     'cccccccc-cccc-cccc-cccc-cccccccccccc']
- 
-+NETNS_SAMPLE_IPROUTE2_4 = [
-+    '12345678-1234-5678-abcd-1234567890ab (id: 1)',
-+    'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb (id: 0)',
-+    'cccccccc-cccc-cccc-cccc-cccccccccccc (id: 2)']
-+
- LINK_SAMPLE = [
-     '1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN \\'
-     'link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 promiscuity 0',
-@@ -279,6 +284,16 @@ class TestIpWrapper(base.BaseTestCase):
- 
-         self.execute.assert_called_once_with([], 'netns', ('list',))
- 
-+    def test_get_namespaces_iproute2_4(self):
-+        self.execute.return_value = '\n'.join(NETNS_SAMPLE_IPROUTE2_4)
-+        retval = ip_lib.IPWrapper.get_namespaces()
-+        self.assertEqual(retval,
-+                         ['12345678-1234-5678-abcd-1234567890ab',
-+                          'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb',
-+                          'cccccccc-cccc-cccc-cccc-cccccccccccc'])
-+
-+        self.execute.assert_called_once_with([], 'netns', ('list',))
-+
-     def test_add_tuntap(self):
-         ip_lib.IPWrapper().add_tuntap('tap0')
-         self.execute.assert_called_once_with([], 'tuntap',
--- 
-cgit v0.11.2
-
diff --git a/pkgs/applications/virtualization/openstack/neutron.nix b/pkgs/applications/virtualization/openstack/neutron.nix
deleted file mode 100644
index 9ee586cf0409..000000000000
--- a/pkgs/applications/virtualization/openstack/neutron.nix
+++ /dev/null
@@ -1,69 +0,0 @@
-{ stdenv, fetchurl, python2Packages, xmlsec, which, dnsmasq }:
-
-python2Packages.buildPythonApplication rec {
-  name = "neutron-${version}";
-  version = "7.0.0";
-  namePrefix = "";
-
-  PBR_VERSION = "${version}";
-
-  src = fetchurl {
-    url = "https://github.com/openstack/neutron/archive/${version}.tar.gz";
-    sha256 = "02ll081xly7zfjmgkal81fy3aplbnn5zgx8xfy3yy1nv3kfnyi40";
-  };
-
-  # https://github.com/openstack/neutron/blob/stable/liberty/requirements.txt
-  propagatedBuildInputs = with python2Packages; [
-   pbr paste PasteDeploy routes debtcollector eventlet greenlet httplib2 requests
-   jinja2 keystonemiddleware netaddr retrying sqlalchemy webob alembic six
-   stevedore pecan ryu networking-hyperv MySQL_python
-
-   # clients
-   keystoneclient neutronclient novaclient
-
-   # oslo components
-   oslo-concurrency oslo-config oslo-context oslo-db oslo-i18n oslo-log oslo-messaging
-   oslo-middleware oslo-policy oslo-rootwrap oslo-serialization oslo-service oslo-utils
-   oslo-versionedobjects
-  ];
-
-  # make sure we include migrations
-  prePatch = ''
-    echo "graft neutron" >> MANIFEST.in
-    substituteInPlace etc/neutron/rootwrap.d/dhcp.filters --replace "/sbin/dnsmasq" "${dnsmasq}/bin/dnsmasq"
-  '';
-  patches = [ ./neutron-iproute-4.patch ];
-
-  buildInputs = with python2Packages; [
-    cliff coverage fixtures mock subunit requests-mock oslosphinx testrepository
-    testtools testresources testscenarios webtest oslotest os-testr tempest-lib
-    ddt pep8
-  ];
-
-  postInstall = ''
-    # requires extra optional dependencies
-    # TODO: package networking_mlnx, networking_vsphere, bsnstacklib, XenAPI
-    rm $out/bin/{neutron-mlnx-agent,neutron-ovsvapp-agent,neutron-restproxy-agent,neutron-rootwrap-xen-dom0}
-
-    # check all binaries don't crash
-    for i in $out/bin/*; do
-      case "$i" in
-      *neutron-pd-notify|*neutron-rootwrap-daemon|*neutron-rootwrap)
-        :
-        ;;
-      *)
-         $i --help
-      esac
-    done
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://neutron.openstack.org/;
-    description = "Virtual network service for Openstack";
-    license = stdenv.lib.licenses.asl20;
-    platforms = stdenv.lib.platforms.linux;
-    # Marked as broken due to needing an update for security issues.
-    # See: https://github.com/NixOS/nixpkgs/issues/18856
-    broken = true;
-  };
-}
diff --git a/pkgs/applications/virtualization/openstack/nova.nix b/pkgs/applications/virtualization/openstack/nova.nix
deleted file mode 100644
index ef3eb2fb0842..000000000000
--- a/pkgs/applications/virtualization/openstack/nova.nix
+++ /dev/null
@@ -1,71 +0,0 @@
-{ stdenv, fetchurl, python2Packages, openssl, openssh }:
-
-python2Packages.buildPythonApplication rec {
-  name = "nova-${version}";
-  version = "12.0.0";
-  namePrefix = "";
-
-  PBR_VERSION = "${version}";
-
-  src = fetchurl {
-    url = "https://github.com/openstack/nova/archive/${version}.tar.gz";
-    sha256 = "175n1znvmy8f5vqvabc2fa4qy8y17685z4gzpq8984mdsdnpv21w";
-  };
-
-  # otherwise migrate.cfg is not installed
-  patchPhase = ''
-    echo "graft nova" >> MANIFEST.in
-
-    # remove transient error test, see http://hydra.nixos.org/build/40203534
-    rm nova/tests/unit/compute/test_{shelve,compute_utils}.py
-  '';
-
-  # https://github.com/openstack/nova/blob/stable/liberty/requirements.txt
-  propagatedBuildInputs = with python2Packages; [
-    pbr sqlalchemy boto decorator eventlet jinja2 lxml routes cryptography
-    webob greenlet PasteDeploy paste prettytable sqlalchemy_migrate netaddr
-    netifaces paramiko Babel iso8601 jsonschema keystoneclient requests six
-    stevedore websockify rfc3986 os-brick psutil_1 alembic psycopg2 pymysql
-    keystonemiddleware MySQL_python
-
-    # oslo components
-    oslo-rootwrap oslo-reports oslo-utils oslo-i18n oslo-config oslo-context
-    oslo-log oslo-serialization oslo-middleware oslo-db oslo-service oslo-messaging
-    oslo-concurrency oslo-versionedobjects
-
-    # clients
-    cinderclient neutronclient glanceclient
-  ];
-
-  buildInputs = with python2Packages; [
-    coverage fixtures mock mox3 subunit requests-mock pillow oslosphinx
-    oslotest testrepository testresources testtools tempest-lib bandit
-    oslo-vmware pep8 barbicanclient ironicclient openssl openssh
-  ];
-
-  postInstall = ''
-    cp -prvd etc $out/etc
-
-    # check all binaries don't crash
-    for i in $out/bin/*; do
-      case "$i" in
-      *nova-dhcpbridge*)
-         :
-         ;;
-      *nova-rootwrap*)
-         :
-         ;;
-      *)
-         $i --help
-         ;;
-      esac
-    done
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://nova.openstack.org/;
-    description = "OpenStack Compute (a.k.a. Nova), a cloud computing fabric controller";
-    license = stdenv.lib.licenses.asl20;
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/applications/virtualization/openstack/remove-oslo-policy-tests.patch b/pkgs/applications/virtualization/openstack/remove-oslo-policy-tests.patch
deleted file mode 100644
index 3cdc27a2d2af..000000000000
--- a/pkgs/applications/virtualization/openstack/remove-oslo-policy-tests.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 6016d017004acaae288312b196ef07ea98e9962d Mon Sep 17 00:00:00 2001
-From: Brant Knudson <bknudson@us.ibm.com>
-Date: Mon, 12 Oct 2015 15:12:45 -0500
-Subject: [PATCH] Remove oslo.policy implementation tests from keystone
-
-oslo.policy 0.12.0 contains a change to use requests to do the http
-check rather than urllib. This change caused keystone tests to fail
-because the keystone tests were mocking urllib, making assumptions
-about how oslo.policy is implemented. Keystone doesn't need to test
-internal features of oslo.policy, so these tests are removed.
-
-Change-Id: I9d6e4950b9fe75cbb94100c8effdcec002642027
-Closes-Bug: 1505374
----
- keystone/tests/unit/test_policy.py | 24 ------------------------
- 1 file changed, 24 deletions(-)
-
-diff --git a/keystone/tests/unit/test_policy.py b/keystone/tests/unit/test_policy.py
-index b2f0e52..686e2b7 100644
---- a/keystone/tests/unit/test_policy.py
-+++ b/keystone/tests/unit/test_policy.py
-@@ -16,10 +16,8 @@
- import json
- import os
- 
--import mock
- from oslo_policy import policy as common_policy
- import six
--from six.moves.urllib import request as urlrequest
- from testtools import matchers
- 
- from keystone import exception
-@@ -118,28 +116,6 @@ def test_enforce_good_action(self):
-         action = "example:allowed"
-         rules.enforce(self.credentials, action, self.target)
- 
--    def test_enforce_http_true(self):
--
--        def fakeurlopen(url, post_data):
--            return six.StringIO("True")
--
--        action = "example:get_http"
--        target = {}
--        with mock.patch.object(urlrequest, 'urlopen', fakeurlopen):
--            result = rules.enforce(self.credentials, action, target)
--        self.assertTrue(result)
--
--    def test_enforce_http_false(self):
--
--        def fakeurlopen(url, post_data):
--            return six.StringIO("False")
--
--        action = "example:get_http"
--        target = {}
--        with mock.patch.object(urlrequest, 'urlopen', fakeurlopen):
--            self.assertRaises(exception.ForbiddenAction, rules.enforce,
--                              self.credentials, action, target)
--
-     def test_templatized_enforcement(self):
-         target_mine = {'project_id': 'fake'}
-         target_not_mine = {'project_id': 'another'}
diff --git a/pkgs/applications/virtualization/virt-viewer/default.nix b/pkgs/applications/virtualization/virt-viewer/default.nix
index 3b8d0a7cf63e..68ee06953a38 100644
--- a/pkgs/applications/virtualization/virt-viewer/default.nix
+++ b/pkgs/applications/virtualization/virt-viewer/default.nix
@@ -25,8 +25,12 @@ stdenv.mkDerivation rec {
   buildInputs = [
     glib libxml2 gtk3 gtkvnc gmp libgcrypt gnupg cyrus_sasl shared_mime_info
     libvirt yajl gsettings_desktop_schemas makeWrapper libvirt-glib
-    libcap_ng numactl libapparmor xen
-  ] ++ optionals spiceSupport [ spice_gtk spice_protocol libcap gdbm ];
+    libcap_ng numactl libapparmor
+  ] ++ optionals stdenv.isx86_64 [
+    xen
+  ] ++ optionals spiceSupport [
+    spice_gtk spice_protocol libcap gdbm
+  ];
 
   postInstall = ''
     for f in "$out"/bin/*; do
diff --git a/pkgs/applications/virtualization/xen/4.5.nix b/pkgs/applications/virtualization/xen/4.5.nix
index 308913adf89c..ec3fe9ccf221 100644
--- a/pkgs/applications/virtualization/xen/4.5.nix
+++ b/pkgs/applications/virtualization/xen/4.5.nix
@@ -230,6 +230,12 @@ callPackage (import ./generic.nix (rec {
     XSA_243_45
     XSA_244_45
     XSA_245
+    XSA_246_45
+    XSA_247_45
+    XSA_248_45
+    XSA_249
+    XSA_250_45
+    XSA_251_45
   ];
 
   # Fix build on Glibc 2.24.
diff --git a/pkgs/applications/virtualization/xen/4.8.nix b/pkgs/applications/virtualization/xen/4.8.nix
index 259dd72a960c..6eedca18960b 100644
--- a/pkgs/applications/virtualization/xen/4.8.nix
+++ b/pkgs/applications/virtualization/xen/4.8.nix
@@ -158,6 +158,12 @@ callPackage (import ./generic.nix (rec {
     XSA_243_48
     XSA_244
     XSA_245
+    XSA_246
+    XSA_247_48
+    XSA_248_48
+    XSA_249
+    XSA_250
+    XSA_251_48
   ];
 
   # Fix build on Glibc 2.24.
diff --git a/pkgs/applications/virtualization/xen/xsa-patches.nix b/pkgs/applications/virtualization/xen/xsa-patches.nix
index fd85c85f22bb..8f8cc459a243 100644
--- a/pkgs/applications/virtualization/xen/xsa-patches.nix
+++ b/pkgs/applications/virtualization/xen/xsa-patches.nix
@@ -771,4 +771,97 @@ in rec {
       sha256 = "1k6z5r7wnrswsczn2j3a1mc4nvxqm4ydj6n6rvgqizk2pszdkqg8";
     })
   ];
+
+  # 4.5 - 4.7
+  XSA_246_45 = [
+    (xsaPatch {
+      name = "246-4.7";
+      sha256 = "13rad4k8z3bq15d67dhgy96kdbrjiq9sy8px0jskbpx9ygjdahkn";
+    })
+  ];
+
+  # 4.8 - 4.9
+  XSA_246 = [
+    (xsaPatch {
+      name = "246-4.9";
+      sha256 = "0z68vm0z5zvv9gm06pxs9kxq2q9fdbl0l0cm71ggzdplg1vw0snz";
+    })
+  ];
+
+  # 4.8
+  XSA_247_48 = [
+    (xsaPatch {
+      name = "247-4.8/0001-p2m-Always-check-to-see-if-removing-a-p2m-entry-actu";
+      sha256 = "0kvjrk90n69s721c2qj2df5raml3pjk6bg80aig353p620w6s3xh";
+    })
+    (xsaPatch {
+      name = "247-4.8/0002-p2m-Check-return-value-of-p2m_set_entry-when-decreas";
+      sha256 = "1s9kv6h6dd8psi5qf5l5gpk9qhq8blckwhl76cjbldcgi6imb3nr";
+    })
+  ];
+
+  # 4.5
+  XSA_247_45 = [
+    (xsaPatch {
+      name = "247-4.5/0001-p2m-Always-check-to-see-if-removing-a-p2m-entry-actu";
+      sha256 = "0h1mp5s9si8aw2gipds317f27h9pi7bgnhj0bcmw11p0ch98sg1m";
+    })
+    (xsaPatch {
+      name = "247-4.5/0002-p2m-Check-return-value-of-p2m_set_entry-when-decreas";
+      sha256 = "0vjjybxbcm4xl26wbqvcqfiyvvlayswm4f98i1fr5a9abmljn5sb";
+    })
+  ];
+
+	# 4.5
+  XSA_248_45 = [
+    (xsaPatch {
+      name = "248-4.5";
+      sha256 = "0csxg6h492ddsa210b45av28iqf7cn2dfdqk4zx10zwf1pv2shyn";
+    })
+  ];
+
+  # 4.8
+  XSA_248_48 = [
+    (xsaPatch {
+      name = "248-4.8";
+      sha256 = "1ycw29q22ymxg18kxpr5p7vhpmp8klssbp5gq77hspxzz2mb96q1";
+    })
+  ];
+
+  # 4.5 .. 4.9
+  XSA_249 = [
+   (xsaPatch {
+      name = "249";
+      sha256 = "0v6ngzqhkz7yv4n83xlpxfbkr2qyg5b1cds7ikkinm86hiqy6agl";
+    })
+  ];
+  # 4.5
+  XSA_250_45 = [
+   (xsaPatch {
+      name = "250-4.5";
+      sha256 = "0pqldl6qnl834gvfp90z247q9xcjh3835s2iffnajz7jhjb2145d";
+    })
+  ];
+  # 4.8 ...
+  XSA_250 = [
+   (xsaPatch {
+      name = "250";
+      sha256 = "1wpigg8kmha57sspqqln3ih9nbczsw6rx3v72mc62lh62qvwd7x8";
+    })
+  ];
+  # 4.5
+  XSA_251_45 = [
+   (xsaPatch {
+      name = "251-4.5";
+      sha256 = "0lc94cx271z09r0mhxaypyd9d4740051p28idf5calx5228dqjgm";
+    })
+  ];
+  # 4.8
+  XSA_251_48 = [
+   (xsaPatch {
+      name = "251-4.8";
+      sha256 = "079wi0j6iydid2zj7k584w2c393kgh588w7sjz2nn4039qn8k9mq";
+    })
+  ];
+
 }
diff --git a/pkgs/applications/window-managers/qtile/default.nix b/pkgs/applications/window-managers/qtile/default.nix
index 22521cc6da8d..a7b9a77b3dbf 100644
--- a/pkgs/applications/window-managers/qtile/default.nix
+++ b/pkgs/applications/window-managers/qtile/default.nix
@@ -41,6 +41,8 @@ python27Packages.buildPythonApplication rec {
       --run 'export QTILE_SAVED_PATH=$PATH'
   '';
 
+  doCheck = false; # Requires X server.
+
   meta = with stdenv.lib; {
     homepage = http://www.qtile.org/;
     license = licenses.mit;
@@ -49,4 +51,3 @@ python27Packages.buildPythonApplication rec {
     maintainers = with maintainers; [ kamilchm ];
   };
 }
-
diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix
index bc777c7e6c74..d13cdd681a21 100644
--- a/pkgs/build-support/libredirect/default.nix
+++ b/pkgs/build-support/libredirect/default.nix
@@ -14,5 +14,11 @@ stdenv.mkDerivation {
 
   meta = {
     platforms = stdenv.lib.platforms.linux;
+    description = "An LD_PRELOAD library to intercept and rewrite the paths in glibc calls";
+    longDescription = ''
+      libredirect is an LD_PRELOAD library to intercept and rewrite the paths in
+      glibc calls based on the value of $NIX_REDIRECTS, a colon-separated list
+      of path prefixes to be rewritten, e.g. "/src=/dst:/usr/=/nix/store/".
+    '';
   };
 }
diff --git a/pkgs/build-support/rust/build-rust-crate.nix b/pkgs/build-support/rust/build-rust-crate.nix
new file mode 100644
index 000000000000..72bb3b80492a
--- /dev/null
+++ b/pkgs/build-support/rust/build-rust-crate.nix
@@ -0,0 +1,382 @@
+# Code for buildRustCrate, a Nix function that builds Rust code, just
+# like Cargo, but using Nix instead.
+#
+# This can be useful for deploying packages with NixOps, and to share
+# binary dependencies between projects.
+
+{ lib, buildPlatform, stdenv, defaultCrateOverrides, fetchCrate, ncurses, rustc  }:
+
+let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
+                   dependencies, completeDeps, completeBuildDeps,
+                   crateFeatures, libName, build, release, libPath,
+                   crateType, metadata, crateBin, finalBins,
+                   verbose, colors }:
+
+      let depsDir = lib.concatStringsSep " " dependencies;
+          completeDepsDir = lib.concatStringsSep " " completeDeps;
+          completeBuildDepsDir = lib.concatStringsSep " " completeBuildDeps;
+          makeDeps = dependencies:
+            (lib.concatMapStringsSep " " (dep:
+              let extern = lib.strings.replaceStrings ["-"] ["_"] dep.libName; in
+              (if dep.crateType == "lib" then
+                 " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}.rlib"
+              else
+                 " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}${buildPlatform.extensions.sharedLibrary}")
+            ) dependencies);
+          deps = makeDeps dependencies;
+          buildDeps = makeDeps buildDependencies;
+          optLevel = if release then 3 else 0;
+          rustcOpts = (if release then "-C opt-level=3" else "-C debuginfo=2");
+          rustcMeta = "-C metadata=${metadata} -C extra-filename=-${metadata}";
+          version_ = lib.splitString "-" crateVersion;
+          versionPre = if lib.tail version_ == [] then "" else builtins.elemAt version_ 1;
+          version = lib.splitString "." (lib.head version_);
+          authors = lib.concatStringsSep ":" crateAuthors;
+      in ''
+      norm=""
+      bold=""
+      green=""
+      boldgreen=""
+      if [[ "${colors}" -eq "always" ]]; then
+        norm="$(printf '\033[0m')" #returns to "normal"
+        bold="$(printf '\033[0;1m')" #set bold
+        green="$(printf '\033[0;32m')" #set green
+        boldgreen="$(printf '\033[0;1;32m')" #set bold, and set green.
+      fi
+
+      echo_build_heading() {
+       start=""
+       end=""
+       if [[ x"${colors}" -eq x"always" ]]; then
+         start="$(printf '\033[0;1;32m')" #set bold, and set green.
+         end="$(printf '\033[0m')" #returns to "normal"
+       fi
+       if (( $# == 1 )); then
+         echo "$start""Building $1""$end"
+       else
+         echo "$start""Building $1 ($2)""$end"
+       fi
+      }
+
+      noisily() {
+        start=""
+        end=""
+        if [[ x"${colors}" -eq x"always" ]]; then
+          start="$(printf '\033[0;1;32m')" #set bold, and set green.
+          end="$(printf '\033[0m')" #returns to "normal"
+        fi
+	${lib.optionalString verbose ''
+            echo -n "$start"Running "$end"
+            echo $@
+	''}
+	$@
+      }
+
+      symlink_dependency() {
+      # $1 is the nix-store path of a dependency
+        i=$1
+	dest=target/deps
+	if [ ! -z $2 ]; then
+           if [ "$2" = "--buildDep" ]; then
+             dest=target/buildDeps
+           fi
+	fi
+        ln -s -f $i/lib/*.rlib $dest #*/
+        ln -s -f $i/lib/*.so $i/lib/*.dylib $dest #*/
+        if [ -e "$i/lib/link" ]; then
+            cat $i/lib/link >> target/link
+            cat $i/lib/link >> target/link.final
+        fi
+        if [ -e $i/env ]; then
+            source $i/env
+        fi
+      }
+
+      build_lib() {
+         lib_src=$1
+         echo_build_heading $lib_src ${libName}
+
+         noisily rustc --crate-name $CRATE_NAME $lib_src --crate-type ${crateType} \
+           ${rustcOpts} ${rustcMeta} ${crateFeatures} --out-dir target/lib \
+           --emit=dep-info,link -L dependency=target/deps ${deps} --cap-lints allow \
+           $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
+
+         EXTRA_LIB=" --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}.rlib"
+         if [ -e target/deps/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary} ]; then
+            EXTRA_LIB="$EXTRA_LIB --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary}"
+         fi
+      }
+
+      build_bin() {
+        crate_name=$1
+        crate_name_=$(echo $crate_name | sed -e "s/-/_/g")
+	main_file=""
+	if [[ ! -z $2 ]]; then
+          main_file=$2
+	fi
+	echo_build_heading $@
+	noisily rustc --crate-name $crate_name_ $main_file --crate-type bin ${rustcOpts}\
+          ${crateFeatures} --out-dir target/bin --emit=dep-info,link -L dependency=target/deps \
+          $LINK ${deps}$EXTRA_LIB --cap-lints allow \
+          $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
+        if [ "$crate_name_" -ne "$crate_name" ]; then
+          mv target/bin/$crate_name_ target/bin/$crate_name
+        fi
+      }
+
+      runHook preBuild
+      mkdir -p target/{deps,lib,build,buildDeps}
+      chmod uga+w target -R
+      for i in ${completeDepsDir}; do
+        symlink_dependency $i
+      done
+      for i in ${completeBuildDepsDir}; do
+         symlink_dependency $i --buildDep
+      done
+      if [ -e target/link ]; then
+        sort -u target/link > target/link.sorted
+        mv target/link.sorted target/link
+        sort -u target/link.final > target/link.final.sorted
+        mv target/link.final.sorted target/link.final
+        tr '\n' ' ' < target/link > target/link_
+      fi
+      EXTRA_BUILD=""
+      BUILD_OUT_DIR=""
+      export CARGO_PKG_NAME=${crateName}
+      export CARGO_PKG_VERSION=${crateVersion}
+      export CARGO_PKG_AUTHORS="${authors}"
+      export CARGO_CFG_TARGET_ARCH=${buildPlatform.parsed.cpu.name}
+      export CARGO_CFG_TARGET_OS=${buildPlatform.parsed.kernel.name}
+
+      export CARGO_CFG_TARGET_ENV="gnu"
+      export CARGO_MANIFEST_DIR="."
+      export DEBUG="${toString (!release)}"
+      export OPT_LEVEL="${toString optLevel}"
+      export TARGET="${buildPlatform.config}"
+      export HOST="${buildPlatform.config}"
+      export PROFILE=${if release then "release" else "debug"}
+      export OUT_DIR=$(pwd)/target/build/${crateName}.out
+      export CARGO_PKG_VERSION_MAJOR=${builtins.elemAt version 0}
+      export CARGO_PKG_VERSION_MINOR=${builtins.elemAt version 1}
+      export CARGO_PKG_VERSION_PATCH=${builtins.elemAt version 2}
+      if [ -n "${versionPre}" ]; then
+        export CARGO_PKG_VERSION_PRE="${versionPre}"
+      fi
+
+      BUILD=""
+      if [[ ! -z "${build}" ]] ; then
+         BUILD=${build}
+      elif [[ -e "build.rs" ]]; then
+         BUILD="build.rs"
+      fi
+      if [[ ! -z "$BUILD" ]] ; then
+         echo_build_heading "$BUILD" ${libName}
+         mkdir -p target/build/${crateName}
+         EXTRA_BUILD_FLAGS=""
+         if [ -e target/link_ ]; then
+           EXTRA_BUILD_FLAGS=$(cat target/link_)
+         fi
+         if [ -e target/link.build ]; then
+           EXTRA_BUILD_FLAGS="$EXTRA_BUILD_FLAGS $(cat target/link.build)"
+         fi
+         noisily rustc --crate-name build_script_build $BUILD --crate-type bin ${rustcOpts} \
+          ${crateFeatures} --out-dir target/build/${crateName} --emit=dep-info,link \
+          -L dependency=target/buildDeps ${buildDeps} --cap-lints allow $EXTRA_BUILD_FLAGS --color ${colors}
+
+         mkdir -p target/build/${crateName}.out
+         export RUST_BACKTRACE=1
+         BUILD_OUT_DIR="-L $OUT_DIR"
+         mkdir -p $OUT_DIR
+         target/build/${crateName}/build_script_build > target/build/${crateName}.opt
+         set +e
+         EXTRA_BUILD=$(sed -n "s/^cargo:rustc-flags=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ')
+         EXTRA_FEATURES=$(sed -n "s/^cargo:rustc-cfg=\(.*\)/--cfg \1/p" target/build/${crateName}.opt | tr '\n' ' ')
+         EXTRA_LINK=$(sed -n "s/^cargo:rustc-link-lib=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ')
+         EXTRA_LINK_SEARCH=$(sed -n "s/^cargo:rustc-link-search=\(.*\)/\1/p" target/build/${crateName}.opt | tr '\n' ' ')
+         CRATENAME=$(echo ${crateName} | sed -e "s/\(.*\)-sys$/\U\1/")
+         grep -P "^cargo:(?!(rustc-|warning=|rerun-if-changed=|rerun-if-env-changed))" target/build/${crateName}.opt \
+           | sed -e "s/cargo:\([^=]*\)=\(.*\)/export DEP_$(echo $CRATENAME)_\U\1\E=\2/" > target/env
+
+         set -e
+         if [ -n "$(ls target/build/${crateName}.out)" ]; then
+
+            if [ -e "${libPath}" ] ; then
+               cp -r target/build/${crateName}.out/* $(dirname ${libPath}) #*/
+            else
+               cp -r target/build/${crateName}.out/* src #*/
+            fi
+         fi
+      fi
+
+      EXTRA_LIB=""
+      CRATE_NAME=$(echo ${libName} | sed -e "s/-/_/g")
+
+      if [ -e target/link_ ]; then
+        EXTRA_BUILD="$(cat target/link_) $EXTRA_BUILD"
+      fi
+
+      if [ -e "${libPath}" ] ; then
+         build_lib ${libPath}
+      elif [ -e src/lib.rs ] ; then
+         build_lib src/lib.rs
+      elif [ -e src/${libName}.rs ] ; then
+         build_lib src/${libName}.rs
+      fi
+
+      echo "$EXTRA_LINK_SEARCH" | while read i; do
+         if [ ! -z "$i" ]; then
+           for lib in $i; do
+             echo "-L $lib" >> target/link
+             L=$(echo $lib | sed -e "s#$(pwd)/target/build#$out/lib#")
+             echo "-L $L" >> target/link.final
+           done
+         fi
+      done
+      echo "$EXTRA_LINK" | while read i; do
+         if [ ! -z "$i" ]; then
+           for lib in $i; do
+             echo "-l $lib" >> target/link
+             echo "-l $lib" >> target/link.final
+           done
+         fi
+      done
+
+      if [ -e target/link ]; then
+         sort -u target/link.final > target/link.final.sorted
+         mv target/link.final.sorted target/link.final
+         sort -u target/link > target/link.sorted
+         mv target/link.sorted target/link
+
+         tr '\n' ' ' < target/link > target/link_
+         LINK=$(cat target/link_)
+       fi
+
+      mkdir -p target/bin
+      echo "${crateBin}" | sed -n 1'p' | tr ',' '\n' | while read BIN; do
+         if [ ! -z "$BIN" ]; then
+           build_bin $BIN
+         fi
+      done
+      ${lib.optionalString (crateBin == "") ''
+        if [[ -e src/main.rs ]]; then
+          build_bin ${crateName} src/main.rs
+        fi
+        for i in src/bin/*.rs; do #*/
+          build_bin "$(basename $i .rs)" "$i"
+        done
+      ''}
+      # Remove object files to avoid "wrong ELF type"
+      find target -type f -name "*.o" -print0 | xargs -0 rm -f
+      runHook postBuild
+    '' + finalBins;
+
+    installCrate = crateName: ''
+      mkdir -p $out
+      if [ -s target/env ]; then
+        cp target/env $out/env
+      fi
+      if [ -s target/link.final ]; then
+        mkdir -p $out/lib
+        cp target/link.final $out/lib/link
+      fi
+      if [ "$(ls -A target/lib)" ]; then
+        mkdir -p $out/lib
+        cp target/lib/* $out/lib #*/
+      fi
+      if [ "$(ls -A target/build)" ]; then # */
+        mkdir -p $out/lib
+        cp -r target/build/* $out/lib # */
+      fi
+      if [ "$(ls -A target/bin)" ]; then
+        mkdir -p $out/bin
+        cp -P target/bin/* $out/bin # */
+      fi
+    '';
+in
+
+crate_: lib.makeOverridable ({ rust, release, verbose, features, buildInputs, crateOverrides }:
+
+let crate = crate_ // (lib.attrByPath [ crate_.crateName ] (attr: {}) crateOverrides crate_);
+    buildInputs_ = buildInputs;
+in
+stdenv.mkDerivation rec {
+
+    inherit (crate) crateName;
+
+    src = if lib.hasAttr "src" crate then
+        crate.src
+      else
+        fetchCrate { inherit (crate) crateName version sha256; };
+    name = "rust_${crate.crateName}-${crate.version}";
+    buildInputs = [ rust ncurses ] ++ (crate.buildInputs or []) ++ buildInputs_;
+    dependencies =
+      builtins.map
+        (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
+        (crate.dependencies or []);
+
+    buildDependencies =
+      builtins.map
+        (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
+        (crate.buildDependencies or []);
+
+    completeDeps = lib.lists.unique (dependencies ++ lib.lists.concatMap (dep: dep.completeDeps) dependencies);
+    completeBuildDeps = lib.lists.unique (
+      buildDependencies
+      ++ lib.lists.concatMap (dep: dep.completeBuildDeps ++ dep.completeDeps) buildDependencies
+    );
+
+    crateFeatures = if crate ? features then
+        lib.concatMapStringsSep " " (f: "--cfg feature=\\\"${f}\\\"") (crate.features ++ features)
+      else "";
+
+    libName = if crate ? libName then crate.libName else crate.crateName;
+    libPath = if crate ? libPath then crate.libPath else "";
+
+    metadata = builtins.substring 0 10 (builtins.hashString "sha256" (crateName + "-" + crateVersion));
+
+    crateBin = if crate ? crateBin then
+       builtins.foldl' (bins: bin:
+          let name =
+              lib.strings.replaceStrings ["-"] ["_"]
+                 (if bin ? name then bin.name else crateName);
+              path = if bin ? path then bin.path else "src/main.rs";
+          in
+          bins + (if bin == "" then "" else ",") + "${name} ${path}"
+
+       ) "" crate.crateBin
+    else "";
+
+    finalBins = if crate ? crateBin then
+       builtins.foldl' (bins: bin:
+          let name = lib.strings.replaceStrings ["-"] ["_"]
+                      (if bin ? name then bin.name else crateName);
+              new_name = if bin ? name then bin.name else crateName;
+          in
+          if name == new_name then bins else
+          (bins + "mv target/bin/${name} target/bin/${new_name};")
+
+       ) "" crate.crateBin
+    else "";
+
+    build = if crate ? build then crate.build else "";
+    crateVersion = crate.version;
+    crateAuthors = if crate ? authors && lib.isList crate.authors then crate.authors else [];
+    crateType =
+      if lib.attrByPath ["procMacro"] false crate then "proc-macro" else
+      if lib.attrByPath ["plugin"] false crate then "dylib" else "lib";
+    colors = lib.attrByPath [ "colors" ] "always" crate;
+    buildPhase = buildCrate {
+      inherit crateName dependencies buildDependencies completeDeps completeBuildDeps
+              crateFeatures libName build release libPath crateType crateVersion
+              crateAuthors metadata crateBin finalBins verbose colors;
+    };
+    installPhase = installCrate crateName;
+
+}) {
+  rust = rustc;
+  release = true;
+  verbose = true;
+  features = [];
+  buildInputs = [];
+  crateOverrides = defaultCrateOverrides;
+}
diff --git a/pkgs/build-support/rust/cargo-vendor.nix b/pkgs/build-support/rust/cargo-vendor.nix
index 6b50f8b83e73..9c379eaa3337 100644
--- a/pkgs/build-support/rust/cargo-vendor.nix
+++ b/pkgs/build-support/rust/cargo-vendor.nix
@@ -8,13 +8,15 @@ let
     x86_64-linux = "1hxlavcxy374yypfamlkygjg662lhll8j434qcvdawkvlidg5ii5";
     x86_64-darwin = "1jkvhh710gwjnnjx59kaplx2ncfvkx9agfa76rr94sbjqq4igddm";
   };
-  hash = hashes. ${system} or (throw "missing bootstrap hash for platform ${system}");
+  hash = hashes. ${system} or badSystem;
+
+  badSystem = throw "missing bootstrap hash for platform ${system}";
 
   platforms = {
     x86_64-linux = "x86_64-unknown-linux-musl";
     x86_64-darwin = "x86_64-apple-darwin";
   };
-  platform = platforms . ${system};
+  platform = platforms . ${system} or badSystem;
 
 in stdenv.mkDerivation {
   name = "cargo-vendor-${version}";
diff --git a/pkgs/build-support/rust/carnix.nix b/pkgs/build-support/rust/carnix.nix
new file mode 100644
index 000000000000..80c0903369af
--- /dev/null
+++ b/pkgs/build-support/rust/carnix.nix
@@ -0,0 +1,875 @@
+# Generated by carnix 0.5.0: carnix -o carnix.nix --src ./. Cargo.lock
+{ lib, buildPlatform, buildRustCrate, fetchgit }:
+let kernel = buildPlatform.parsed.kernel.name;
+    abi = buildPlatform.parsed.abi.name;
+    hasFeature = feature:
+      lib.lists.any
+        (originName: feature.${originName})
+        (builtins.attrNames feature);
+
+    hasDefault = feature:
+      let defaultFeatures = builtins.attrNames (feature."default" or {}); in
+      (defaultFeatures == [])
+      || (lib.lists.any (originName: feature."default".${originName}) defaultFeatures);
+
+    mkFeatures = feat: lib.lists.foldl (features: featureName:
+      if featureName != "" && hasFeature feat.${featureName} then
+        [ featureName ] ++ features
+      else
+        features
+    ) (if hasDefault feat then [ "default" ] else []) (builtins.attrNames feat);
+    aho_corasick_0_6_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "aho-corasick";
+      version = "0.6.3";
+      authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
+      sha256 = "1cpqzf6acj8lm06z3f1cg41wn6c2n9l3v49nh0dvimv4055qib6k";
+      libName = "aho_corasick";
+      crateBin = [ {  name = "aho-corasick-dot"; } ];
+      inherit dependencies buildDependencies features;
+    };
+    ansi_term_0_10_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "ansi_term";
+      version = "0.10.2";
+      authors = [ "ogham@bsago.me" "Ryan Scheel (Havvy) <ryan.havvy@gmail.com>" "Josh Triplett <josh@joshtriplett.org>" ];
+      sha256 = "07k0hfmlhv43lihyxb9d81l5mq5zlpqvv30dkfd3knmv2ginasn9";
+      inherit dependencies buildDependencies features;
+    };
+    atty_0_2_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "atty";
+      version = "0.2.3";
+      authors = [ "softprops <d.tangren@gmail.com>" ];
+      sha256 = "0zl0cjfgarp5y78nd755lpki5bbkj4hgmi88v265m543yg29i88f";
+      inherit dependencies buildDependencies features;
+    };
+    backtrace_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "backtrace";
+      version = "0.3.4";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" "The Rust Project Developers" ];
+      sha256 = "1caba8w3rqd5ghr88ghyz5wgkf81dgx18bj1llkax6qmianc6gk7";
+      inherit dependencies buildDependencies features;
+    };
+    backtrace_sys_0_1_16_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "backtrace-sys";
+      version = "0.1.16";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+      sha256 = "1cn2c8q3dn06crmnk0p62czkngam4l8nf57wy33nz1y5g25pszwy";
+      build = "build.rs";
+      inherit dependencies buildDependencies features;
+    };
+    bitflags_0_7_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "bitflags";
+      version = "0.7.0";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "1hr72xg5slm0z4pxs2hiy4wcyx3jva70h58b7mid8l0a4c8f7gn5";
+      inherit dependencies buildDependencies features;
+    };
+    bitflags_1_0_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "bitflags";
+      version = "1.0.1";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "0p4b3nr0s5nda2qmm7xdhnvh4lkqk3xd8l9ffmwbvqw137vx7mj1";
+      inherit dependencies buildDependencies features;
+    };
+    carnix_0_5_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "carnix";
+      version = "0.5.0";
+      authors = [ "pe@pijul.org <pe@pijul.org>" ];
+      sha256 = "0mrprfa9l6q351ci77zr305jk5wdii8gamaphd2iars4xwn26lj4";
+      inherit dependencies buildDependencies features;
+    };
+    cc_1_0_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "cc";
+      version = "1.0.3";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+      sha256 = "193pwqgh79w6k0k29svyds5nnlrwx44myqyrw605d5jj4yk2zmpr";
+      inherit dependencies buildDependencies features;
+    };
+    cfg_if_0_1_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "cfg-if";
+      version = "0.1.2";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+      sha256 = "0x06hvrrqy96m97593823vvxcgvjaxckghwyy2jcyc8qc7c6cyhi";
+      inherit dependencies buildDependencies features;
+    };
+    clap_2_28_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "clap";
+      version = "2.28.0";
+      authors = [ "Kevin K. <kbknapp@gmail.com>" ];
+      sha256 = "0m0rj9xw6mja4gdhqmaldv0q5y5jfsfzbyzfd70mm3857aynq03k";
+      inherit dependencies buildDependencies features;
+    };
+    dbghelp_sys_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "dbghelp-sys";
+      version = "0.2.0";
+      authors = [ "Peter Atashian <retep998@gmail.com>" ];
+      sha256 = "0ylpi3bbiy233m57hnisn1df1v0lbl7nsxn34b0anzsgg440hqpq";
+      libName = "dbghelp";
+      build = "build.rs";
+      inherit dependencies buildDependencies features;
+    };
+    dtoa_0_4_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "dtoa";
+      version = "0.4.2";
+      authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "1bxsh6fags7nr36vlz07ik2a1rzyipc8x1y30kjk832hf2pzadmw";
+      inherit dependencies buildDependencies features;
+    };
+    either_1_4_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "either";
+      version = "1.4.0";
+      authors = [ "bluss" ];
+      sha256 = "04kpfd84lvyrkb2z4sljlz2d3d5qczd0sb1yy37fgijq2yx3vb37";
+      inherit dependencies buildDependencies features;
+    };
+    env_logger_0_4_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "env_logger";
+      version = "0.4.3";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "0nrx04p4xa86d5kc7aq4fwvipbqji9cmgy449h47nc9f1chafhgg";
+      inherit dependencies buildDependencies features;
+    };
+    error_chain_0_11_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "error-chain";
+      version = "0.11.0";
+      authors = [ "Brian Anderson <banderson@mozilla.com>" "Paul Colomiets <paul@colomiets.name>" "Colin Kiegel <kiegel@gmx.de>" "Yamakaky <yamakaky@yamaworld.fr>" ];
+      sha256 = "19nz17q6dzp0mx2jhh9qbj45gkvvgcl7zq9z2ai5a8ihbisfj6d7";
+      inherit dependencies buildDependencies features;
+    };
+    fuchsia_zircon_0_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "fuchsia-zircon";
+      version = "0.2.1";
+      authors = [ "Raph Levien <raph@google.com>" ];
+      sha256 = "0yd4rd7ql1vdr349p6vgq2dnwmpylky1kjp8g1zgvp250jxrhddb";
+      inherit dependencies buildDependencies features;
+    };
+    fuchsia_zircon_sys_0_2_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "fuchsia-zircon-sys";
+      version = "0.2.0";
+      authors = [ "Raph Levien <raph@google.com>" ];
+      sha256 = "1yrqsrjwlhl3di6prxf5xmyd82gyjaysldbka5wwk83z11mpqh4w";
+      inherit dependencies buildDependencies features;
+    };
+    itertools_0_7_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "itertools";
+      version = "0.7.3";
+      authors = [ "bluss" ];
+      sha256 = "128a69cnmgpj38rs6lcwzya773d2vx7f9y7012iycjf9yi2pyckj";
+      inherit dependencies buildDependencies features;
+    };
+    itoa_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "itoa";
+      version = "0.3.4";
+      authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "1nfkzz6vrgj0d9l3yzjkkkqzdgs68y294fjdbl7jq118qi8xc9d9";
+      inherit dependencies buildDependencies features;
+    };
+    kernel32_sys_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "kernel32-sys";
+      version = "0.2.2";
+      authors = [ "Peter Atashian <retep998@gmail.com>" ];
+      sha256 = "1lrw1hbinyvr6cp28g60z97w32w8vsk6pahk64pmrv2fmby8srfj";
+      libName = "kernel32";
+      build = "build.rs";
+      inherit dependencies buildDependencies features;
+    };
+    lazy_static_0_2_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "lazy_static";
+      version = "0.2.11";
+      authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
+      sha256 = "1x6871cvpy5b96yv4c7jvpq316fp5d4609s9py7qk6cd6x9k34vm";
+      inherit dependencies buildDependencies features;
+    };
+    libc_0_2_33_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "libc";
+      version = "0.2.33";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "1l7synziccnvarsq2kk22vps720ih6chmn016bhr2bq54hblbnl1";
+      inherit dependencies buildDependencies features;
+    };
+    libsqlite3_sys_0_9_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "libsqlite3-sys";
+      version = "0.9.0";
+      authors = [ "John Gallagher <jgallagher@bignerdranch.com>" ];
+      sha256 = "1pnx3i9h85si6cs4nhazfb28hsvk7dn0arnfvpdzpjdnj9z38q57";
+      build = "build.rs";
+      inherit dependencies buildDependencies features;
+    };
+    linked_hash_map_0_4_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "linked-hash-map";
+      version = "0.4.2";
+      authors = [ "Stepan Koltsov <stepan.koltsov@gmail.com>" "Andrew Paseltiner <apaseltiner@gmail.com>" ];
+      sha256 = "04da208h6jb69f46j37jnvsw2i1wqplglp4d61csqcrhh83avbgl";
+      inherit dependencies buildDependencies features;
+    };
+    log_0_3_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "log";
+      version = "0.3.8";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "1c43z4z85sxrsgir4s1hi84558ab5ic7jrn5qgmsiqcv90vvn006";
+      inherit dependencies buildDependencies features;
+    };
+    lru_cache_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "lru-cache";
+      version = "0.1.1";
+      authors = [ "Stepan Koltsov <stepan.koltsov@gmail.com>" ];
+      sha256 = "1hl6kii1g54sq649gnscv858mmw7a02xj081l4vcgvrswdi2z8fw";
+      inherit dependencies buildDependencies features;
+    };
+    memchr_1_0_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "memchr";
+      version = "1.0.2";
+      authors = [ "Andrew Gallant <jamslam@gmail.com>" "bluss" ];
+      sha256 = "0dfb8ifl9nrc9kzgd5z91q6qg87sh285q1ih7xgrsglmqfav9lg7";
+      inherit dependencies buildDependencies features;
+    };
+    nom_3_2_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "nom";
+      version = "3.2.1";
+      authors = [ "contact@geoffroycouprie.com" ];
+      sha256 = "1vcllxrz9hdw6j25kn020ka3psz1vkaqh1hm3yfak2240zrxgi07";
+      inherit dependencies buildDependencies features;
+    };
+    num_traits_0_1_40_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "num-traits";
+      version = "0.1.40";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "1fr8ghp4i97q3agki54i0hpmqxv3s65i2mqd1pinc7w7arc3fplw";
+      inherit dependencies buildDependencies features;
+    };
+    pkg_config_0_3_9_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "pkg-config";
+      version = "0.3.9";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+      sha256 = "06k8fxgrsrxj8mjpjcq1n7mn2p1shpxif4zg9y5h09c7vy20s146";
+      inherit dependencies buildDependencies features;
+    };
+    quote_0_3_15_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "quote";
+      version = "0.3.15";
+      authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "09il61jv4kd1360spaj46qwyl21fv1qz18fsv2jra8wdnlgl5jsg";
+      inherit dependencies buildDependencies features;
+    };
+    rand_0_3_18_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "rand";
+      version = "0.3.18";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "15d7c3myn968dzjs0a2pgv58hzdavxnq6swgj032lw2v966ir4xv";
+      inherit dependencies buildDependencies features;
+    };
+    redox_syscall_0_1_32_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "redox_syscall";
+      version = "0.1.32";
+      authors = [ "Jeremy Soller <jackpot51@gmail.com>" ];
+      sha256 = "1axxj8x6ngh6npkzqc5h216fajkcyrdxdgb7m2f0n5xfclbk47fv";
+      libName = "syscall";
+      inherit dependencies buildDependencies features;
+    };
+    redox_termios_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "redox_termios";
+      version = "0.1.1";
+      authors = [ "Jeremy Soller <jackpot51@gmail.com>" ];
+      sha256 = "04s6yyzjca552hdaqlvqhp3vw0zqbc304md5czyd3axh56iry8wh";
+      libPath = "src/lib.rs";
+      inherit dependencies buildDependencies features;
+    };
+    regex_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "regex";
+      version = "0.2.2";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "1f1zrrynfylg0vcfyfp60bybq4rp5g1yk2k7lc7fyz7mmc7k2qr7";
+      inherit dependencies buildDependencies features;
+    };
+    regex_syntax_0_4_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "regex-syntax";
+      version = "0.4.1";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "01yrsm68lj86ad1whgg1z95c2pfsvv58fz8qjcgw7mlszc0c08ls";
+      inherit dependencies buildDependencies features;
+    };
+    rusqlite_0_13_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "rusqlite";
+      version = "0.13.0";
+      authors = [ "John Gallagher <jgallagher@bignerdranch.com>" ];
+      sha256 = "1hj2464ar2y4324sk3jx7m9byhkcp60krrrs1v1i8dlhhlnkb9hc";
+      inherit dependencies buildDependencies features;
+    };
+    rustc_demangle_0_1_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "rustc-demangle";
+      version = "0.1.5";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+      sha256 = "096kkcx9j747700fhxj1s4rlwkj21pqjmvj64psdj6bakb2q13nc";
+      inherit dependencies buildDependencies features;
+    };
+    serde_1_0_21_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "serde";
+      version = "1.0.21";
+      authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "10almq7pvx8s4ryiqk8gf7fj5igl0yq6dcjknwc67rkmxd8q50w3";
+      inherit dependencies buildDependencies features;
+    };
+    serde_derive_1_0_21_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "serde_derive";
+      version = "1.0.21";
+      authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "0r20qyimm9scfaz7lc0swnhik9d045zklmbidd0zzpd4b2f3jsqm";
+      procMacro = true;
+      inherit dependencies buildDependencies features;
+    };
+    serde_derive_internals_0_17_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "serde_derive_internals";
+      version = "0.17.0";
+      authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "1g1j3v6pj9wbcz3v3w4smjpwrcdwjicmf6yd5cbai04as9iwhw74";
+      inherit dependencies buildDependencies features;
+    };
+    serde_json_1_0_6_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "serde_json";
+      version = "1.0.6";
+      authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "1kacyc59splwbg8gr7qs32pp9smgy1khq0ggnv07yxhs7h355vjz";
+      inherit dependencies buildDependencies features;
+    };
+    strsim_0_6_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "strsim";
+      version = "0.6.0";
+      authors = [ "Danny Guo <dannyguo91@gmail.com>" ];
+      sha256 = "1lz85l6y68hr62lv4baww29yy7g8pg20dlr0lbaswxmmcb0wl7gd";
+      inherit dependencies buildDependencies features;
+    };
+    syn_0_11_11_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "syn";
+      version = "0.11.11";
+      authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "0yw8ng7x1dn5a6ykg0ib49y7r9nhzgpiq2989rqdp7rdz3n85502";
+      inherit dependencies buildDependencies features;
+    };
+    synom_0_11_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "synom";
+      version = "0.11.3";
+      authors = [ "David Tolnay <dtolnay@gmail.com>" ];
+      sha256 = "1l6d1s9qjfp6ng2s2z8219igvlv7gyk8gby97sdykqc1r93d8rhc";
+      inherit dependencies buildDependencies features;
+    };
+    tempdir_0_3_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "tempdir";
+      version = "0.3.5";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "0rirc5prqppzgd15fm8ayan349lgk2k5iqdkrbwrwrv5pm4znsnz";
+      inherit dependencies buildDependencies features;
+    };
+    termion_1_5_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "termion";
+      version = "1.5.1";
+      authors = [ "ticki <Ticki@users.noreply.github.com>" "gycos <alexandre.bury@gmail.com>" "IGI-111 <igi-111@protonmail.com>" ];
+      sha256 = "02gq4vd8iws1f3gjrgrgpajsk2bk43nds5acbbb4s8dvrdvr8nf1";
+      inherit dependencies buildDependencies features;
+    };
+    textwrap_0_9_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "textwrap";
+      version = "0.9.0";
+      authors = [ "Martin Geisler <martin@geisler.net>" ];
+      sha256 = "18jg79ndjlwndz01mlbh82kkr2arqm658yn5kwp65l5n1hz8w4yb";
+      inherit dependencies buildDependencies features;
+    };
+    thread_local_0_3_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "thread_local";
+      version = "0.3.4";
+      authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ];
+      sha256 = "1y6cwyhhx2nkz4b3dziwhqdvgq830z8wjp32b40pjd8r0hxqv2jr";
+      inherit dependencies buildDependencies features;
+    };
+    time_0_1_38_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "time";
+      version = "0.1.38";
+      authors = [ "The Rust Project Developers" ];
+      sha256 = "1ws283vvz7c6jfiwn53rmc6kybapr4pjaahfxxrz232b0qzw7gcp";
+      inherit dependencies buildDependencies features;
+    };
+    toml_0_4_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "toml";
+      version = "0.4.5";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
+      sha256 = "06zxqhn3y58yzjfaykhcrvlf7p2dnn54kn3g4apmja3cn5b18lkk";
+      inherit dependencies buildDependencies features;
+    };
+    unicode_width_0_1_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "unicode-width";
+      version = "0.1.4";
+      authors = [ "kwantam <kwantam@gmail.com>" ];
+      sha256 = "1rp7a04icn9y5c0lm74nrd4py0rdl0af8bhdwq7g478n1xifpifl";
+      inherit dependencies buildDependencies features;
+    };
+    unicode_xid_0_0_4_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "unicode-xid";
+      version = "0.0.4";
+      authors = [ "erick.tryzelaar <erick.tryzelaar@gmail.com>" "kwantam <kwantam@gmail.com>" ];
+      sha256 = "1dc8wkkcd3s6534s5aw4lbjn8m67flkkbnajp5bl8408wdg8rh9v";
+      inherit dependencies buildDependencies features;
+    };
+    unreachable_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "unreachable";
+      version = "1.0.0";
+      authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
+      sha256 = "1am8czbk5wwr25gbp2zr007744fxjshhdqjz9liz7wl4pnv3whcf";
+      inherit dependencies buildDependencies features;
+    };
+    utf8_ranges_1_0_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "utf8-ranges";
+      version = "1.0.0";
+      authors = [ "Andrew Gallant <jamslam@gmail.com>" ];
+      sha256 = "0rzmqprwjv9yp1n0qqgahgm24872x6c0xddfym5pfndy7a36vkn0";
+      inherit dependencies buildDependencies features;
+    };
+    vcpkg_0_2_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "vcpkg";
+      version = "0.2.2";
+      authors = [ "Jim McGrath <jimmc2@gmail.com>" ];
+      sha256 = "1fl5j0ksnwrnsrf1b1a9lqbjgnajdipq0030vsbhx81mb7d9478a";
+      inherit dependencies buildDependencies features;
+    };
+    vec_map_0_8_0_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "vec_map";
+      version = "0.8.0";
+      authors = [ "Alex Crichton <alex@alexcrichton.com>" "Jorge Aparicio <japaricious@gmail.com>" "Alexis Beingessner <a.beingessner@gmail.com>" "Brian Anderson <>" "tbu- <>" "Manish Goregaokar <>" "Aaron Turon <aturon@mozilla.com>" "Adolfo Ochagavía <>" "Niko Matsakis <>" "Steven Fackler <>" "Chase Southwood <csouth3@illinois.edu>" "Eduard Burtescu <>" "Florian Wilkens <>" "Félix Raimundo <>" "Tibor Benke <>" "Markus Siemens <markus@m-siemens.de>" "Josh Branchaud <jbranchaud@gmail.com>" "Huon Wilson <dbau.pp@gmail.com>" "Corey Farwell <coref@rwell.org>" "Aaron Liblong <>" "Nick Cameron <nrc@ncameron.org>" "Patrick Walton <pcwalton@mimiga.net>" "Felix S Klock II <>" "Andrew Paseltiner <apaseltiner@gmail.com>" "Sean McArthur <sean.monstar@gmail.com>" "Vadim Petrochenkov <>" ];
+      sha256 = "07sgxp3cf1a4cxm9n3r27fcvqmld32bl2576mrcahnvm34j11xay";
+      inherit dependencies buildDependencies features;
+    };
+    void_1_0_2_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "void";
+      version = "1.0.2";
+      authors = [ "Jonathan Reem <jonathan.reem@gmail.com>" ];
+      sha256 = "0h1dm0dx8dhf56a83k68mijyxigqhizpskwxfdrs1drwv2cdclv3";
+      inherit dependencies buildDependencies features;
+    };
+    winapi_0_2_8_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "winapi";
+      version = "0.2.8";
+      authors = [ "Peter Atashian <retep998@gmail.com>" ];
+      sha256 = "0a45b58ywf12vb7gvj6h3j264nydynmzyqz8d8rqxsj6icqv82as";
+      inherit dependencies buildDependencies features;
+    };
+    winapi_build_0_1_1_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+      crateName = "winapi-build";
+      version = "0.1.1";
+      authors = [ "Peter Atashian <retep998@gmail.com>" ];
+      sha256 = "1lxlpi87rkhxcwp2ykf1ldw3p108hwm24nywf3jfrvmff4rjhqga";
+      libName = "build";
+      inherit dependencies buildDependencies features;
+    };
+
+in
+rec {
+  aho_corasick_0_6_3 = aho_corasick_0_6_3_ rec {
+    dependencies = [ memchr_1_0_2 ];
+  };
+  memchr_1_0_2_features."default".from_aho_corasick_0_6_3__default = true;
+  ansi_term_0_10_2 = ansi_term_0_10_2_ rec {};
+  atty_0_2_3 = atty_0_2_3_ rec {
+    dependencies = (if kernel == "redox" then [ termion_1_5_1 ] else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then [ libc_0_2_33 ] else [])
+      ++ (if kernel == "windows" then [ kernel32_sys_0_2_2 winapi_0_2_8 ] else []);
+  };
+  termion_1_5_1_features."default".from_atty_0_2_3__default = true;
+  libc_0_2_33_features."default".from_atty_0_2_3__default = false;
+  kernel32_sys_0_2_2_features."default".from_atty_0_2_3__default = true;
+  winapi_0_2_8_features."default".from_atty_0_2_3__default = true;
+  backtrace_0_3_4 = backtrace_0_3_4_ rec {
+    dependencies = [ cfg_if_0_1_2 rustc_demangle_0_1_5 ]
+      ++ (if (kernel == "linux" || kernel == "darwin") && !(kernel == "fuchsia") && !(kernel == "emscripten") && !(kernel == "darwin") && !(kernel == "ios") then [ backtrace_sys_0_1_16 ]
+      ++ (if lib.lists.any (x: x == "backtrace-sys") features then [backtrace_sys_0_1_16] else []) else [])
+      ++ (if (kernel == "linux" || kernel == "darwin") then [ libc_0_2_33 ] else [])
+      ++ (if kernel == "windows" then [ dbghelp_sys_0_2_0 kernel32_sys_0_2_2 winapi_0_2_8 ]
+      ++ (if lib.lists.any (x: x == "dbghelp-sys") features then [dbghelp_sys_0_2_0] else [])      ++ (if lib.lists.any (x: x == "kernel32-sys") features then [kernel32_sys_0_2_2] else [])      ++ (if lib.lists.any (x: x == "winapi") features then [winapi_0_2_8] else []) else []);
+    features = mkFeatures backtrace_0_3_4_features;
+  };
+  backtrace_0_3_4_features."".self = true;
+  backtrace_0_3_4_features."kernel32-sys".self_dbghelp = hasFeature (backtrace_0_3_4_features."dbghelp" or {});
+  backtrace_0_3_4_features."winapi".self_dbghelp = hasFeature (backtrace_0_3_4_features."dbghelp" or {});
+  backtrace_0_3_4_features."dbghelp-sys".self_dbghelp = hasFeature (backtrace_0_3_4_features."dbghelp" or {});
+  backtrace_0_3_4_features."libunwind".self_default = hasDefault backtrace_0_3_4_features;
+  backtrace_0_3_4_features."libbacktrace".self_default = hasDefault backtrace_0_3_4_features;
+  backtrace_0_3_4_features."coresymbolication".self_default = hasDefault backtrace_0_3_4_features;
+  backtrace_0_3_4_features."dladdr".self_default = hasDefault backtrace_0_3_4_features;
+  backtrace_0_3_4_features."dbghelp".self_default = hasDefault backtrace_0_3_4_features;
+  backtrace_0_3_4_features."addr2line".self_gimli-symbolize = hasFeature (backtrace_0_3_4_features."gimli-symbolize" or {});
+  backtrace_0_3_4_features."findshlibs".self_gimli-symbolize = hasFeature (backtrace_0_3_4_features."gimli-symbolize" or {});
+  backtrace_0_3_4_features."backtrace-sys".self_libbacktrace = hasFeature (backtrace_0_3_4_features."libbacktrace" or {});
+  backtrace_0_3_4_features."rustc-serialize".self_serialize-rustc = hasFeature (backtrace_0_3_4_features."serialize-rustc" or {});
+  backtrace_0_3_4_features."serde".self_serialize-serde = hasFeature (backtrace_0_3_4_features."serialize-serde" or {});
+  backtrace_0_3_4_features."serde_derive".self_serialize-serde = hasFeature (backtrace_0_3_4_features."serialize-serde" or {});
+  addr2line_0_0_0_features."default".from_backtrace_0_3_4__default = true;
+  cfg_if_0_1_2_features."default".from_backtrace_0_3_4__default = true;
+  cpp_demangle_0_0_0_features."default".from_backtrace_0_3_4__default = false;
+  findshlibs_0_0_0_features."default".from_backtrace_0_3_4__default = true;
+  rustc_demangle_0_1_5_features."default".from_backtrace_0_3_4__default = true;
+  rustc_serialize_0_0_0_features."default".from_backtrace_0_3_4__default = true;
+  serde_0_0_0_features."default".from_backtrace_0_3_4__default = true;
+  serde_derive_0_0_0_features."default".from_backtrace_0_3_4__default = true;
+  backtrace_sys_0_1_16_features."default".from_backtrace_0_3_4__default = true;
+  libc_0_2_33_features."default".from_backtrace_0_3_4__default = true;
+  dbghelp_sys_0_2_0_features."default".from_backtrace_0_3_4__default = true;
+  kernel32_sys_0_2_2_features."default".from_backtrace_0_3_4__default = true;
+  winapi_0_2_8_features."default".from_backtrace_0_3_4__default = true;
+  backtrace_sys_0_1_16 = backtrace_sys_0_1_16_ rec {
+    dependencies = [ libc_0_2_33 ];
+    buildDependencies = [ cc_1_0_3 ];
+  };
+  libc_0_2_33_features."default".from_backtrace_sys_0_1_16__default = true;
+  bitflags_0_7_0 = bitflags_0_7_0_ rec {};
+  bitflags_1_0_1 = bitflags_1_0_1_ rec {
+    features = mkFeatures bitflags_1_0_1_features;
+  };
+  bitflags_1_0_1_features."example_generated".self_default = hasDefault bitflags_1_0_1_features;
+  carnix_0_5_0 = carnix_0_5_0_ rec {
+    dependencies = [ clap_2_28_0 env_logger_0_4_3 error_chain_0_11_0 itertools_0_7_3 log_0_3_8 nom_3_2_1 regex_0_2_2 rusqlite_0_13_0 serde_1_0_21 serde_derive_1_0_21 serde_json_1_0_6 tempdir_0_3_5 toml_0_4_5 ];
+  };
+  clap_2_28_0_features."default".from_carnix_0_5_0__default = true;
+  env_logger_0_4_3_features."default".from_carnix_0_5_0__default = true;
+  error_chain_0_11_0_features."default".from_carnix_0_5_0__default = true;
+  itertools_0_7_3_features."default".from_carnix_0_5_0__default = true;
+  log_0_3_8_features."default".from_carnix_0_5_0__default = true;
+  nom_3_2_1_features."default".from_carnix_0_5_0__default = true;
+  regex_0_2_2_features."default".from_carnix_0_5_0__default = true;
+  rusqlite_0_13_0_features."default".from_carnix_0_5_0__default = true;
+  serde_1_0_21_features."default".from_carnix_0_5_0__default = true;
+  serde_derive_1_0_21_features."default".from_carnix_0_5_0__default = true;
+  serde_json_1_0_6_features."default".from_carnix_0_5_0__default = true;
+  tempdir_0_3_5_features."default".from_carnix_0_5_0__default = true;
+  toml_0_4_5_features."default".from_carnix_0_5_0__default = true;
+  cc_1_0_3 = cc_1_0_3_ rec {
+    dependencies = [];
+    features = mkFeatures cc_1_0_3_features;
+  };
+  cc_1_0_3_features."rayon".self_parallel = hasFeature (cc_1_0_3_features."parallel" or {});
+  rayon_0_0_0_features."default".from_cc_1_0_3__default = true;
+  cfg_if_0_1_2 = cfg_if_0_1_2_ rec {};
+  clap_2_28_0 = clap_2_28_0_ rec {
+    dependencies = [ ansi_term_0_10_2 atty_0_2_3 bitflags_1_0_1 strsim_0_6_0 textwrap_0_9_0 unicode_width_0_1_4 vec_map_0_8_0 ]
+      ++ (if lib.lists.any (x: x == "ansi_term") features then [ansi_term_0_10_2] else [])      ++ (if lib.lists.any (x: x == "atty") features then [atty_0_2_3] else [])      ++ (if lib.lists.any (x: x == "strsim") features then [strsim_0_6_0] else [])      ++ (if lib.lists.any (x: x == "vec_map") features then [vec_map_0_8_0] else []);
+    features = mkFeatures clap_2_28_0_features;
+  };
+  clap_2_28_0_features."".self = true;
+  clap_2_28_0_features."ansi_term".self_color = hasFeature (clap_2_28_0_features."color" or {});
+  clap_2_28_0_features."atty".self_color = hasFeature (clap_2_28_0_features."color" or {});
+  clap_2_28_0_features."suggestions".self_default = hasDefault clap_2_28_0_features;
+  clap_2_28_0_features."color".self_default = hasDefault clap_2_28_0_features;
+  clap_2_28_0_features."vec_map".self_default = hasDefault clap_2_28_0_features;
+  clap_2_28_0_features."yaml".self_doc = hasFeature (clap_2_28_0_features."doc" or {});
+  clap_2_28_0_features."clippy".self_lints = hasFeature (clap_2_28_0_features."lints" or {});
+  clap_2_28_0_features."strsim".self_suggestions = hasFeature (clap_2_28_0_features."suggestions" or {});
+  clap_2_28_0_features."term_size".self_wrap_help = hasFeature (clap_2_28_0_features."wrap_help" or {});
+  clap_2_28_0_features."yaml-rust".self_yaml = hasFeature (clap_2_28_0_features."yaml" or {});
+  ansi_term_0_10_2_features."default".from_clap_2_28_0__default = true;
+  atty_0_2_3_features."default".from_clap_2_28_0__default = true;
+  bitflags_1_0_1_features."default".from_clap_2_28_0__default = true;
+  clippy_0_0_0_features."default".from_clap_2_28_0__default = true;
+  strsim_0_6_0_features."default".from_clap_2_28_0__default = true;
+  term_size_0_0_0_features."default".from_clap_2_28_0__default = true;
+  textwrap_0_9_0_features."term_size".from_clap_2_28_0__wrap_help = hasFeature (clap_2_28_0_features."wrap_help" or {});
+  textwrap_0_9_0_features."default".from_clap_2_28_0__default = true;
+  unicode_width_0_1_4_features."default".from_clap_2_28_0__default = true;
+  vec_map_0_8_0_features."default".from_clap_2_28_0__default = true;
+  yaml_rust_0_0_0_features."default".from_clap_2_28_0__default = true;
+  dbghelp_sys_0_2_0 = dbghelp_sys_0_2_0_ rec {
+    dependencies = [ winapi_0_2_8 ];
+    buildDependencies = [ winapi_build_0_1_1 ];
+  };
+  winapi_0_2_8_features."default".from_dbghelp_sys_0_2_0__default = true;
+  dtoa_0_4_2 = dtoa_0_4_2_ rec {};
+  either_1_4_0 = either_1_4_0_ rec {
+    dependencies = [];
+    features = mkFeatures either_1_4_0_features;
+  };
+  either_1_4_0_features."use_std".self_default = hasDefault either_1_4_0_features;
+  serde_0_0_0_features."derive".from_either_1_4_0 = true;
+  serde_0_0_0_features."default".from_either_1_4_0__default = true;
+  env_logger_0_4_3 = env_logger_0_4_3_ rec {
+    dependencies = [ log_0_3_8 regex_0_2_2 ]
+      ++ (if lib.lists.any (x: x == "regex") features then [regex_0_2_2] else []);
+    features = mkFeatures env_logger_0_4_3_features;
+  };
+  env_logger_0_4_3_features."".self = true;
+  env_logger_0_4_3_features."regex".self_default = hasDefault env_logger_0_4_3_features;
+  log_0_3_8_features."default".from_env_logger_0_4_3__default = true;
+  regex_0_2_2_features."default".from_env_logger_0_4_3__default = true;
+  error_chain_0_11_0 = error_chain_0_11_0_ rec {
+    dependencies = [ backtrace_0_3_4 ]
+      ++ (if lib.lists.any (x: x == "backtrace") features then [backtrace_0_3_4] else []);
+    features = mkFeatures error_chain_0_11_0_features;
+  };
+  error_chain_0_11_0_features."".self = true;
+  error_chain_0_11_0_features."backtrace".self_default = hasDefault error_chain_0_11_0_features;
+  error_chain_0_11_0_features."example_generated".self_default = hasDefault error_chain_0_11_0_features;
+  backtrace_0_3_4_features."default".from_error_chain_0_11_0__default = true;
+  fuchsia_zircon_0_2_1 = fuchsia_zircon_0_2_1_ rec {
+    dependencies = [ fuchsia_zircon_sys_0_2_0 ];
+  };
+  fuchsia_zircon_sys_0_2_0_features."default".from_fuchsia_zircon_0_2_1__default = true;
+  fuchsia_zircon_sys_0_2_0 = fuchsia_zircon_sys_0_2_0_ rec {
+    dependencies = [ bitflags_0_7_0 ];
+  };
+  bitflags_0_7_0_features."default".from_fuchsia_zircon_sys_0_2_0__default = true;
+  itertools_0_7_3 = itertools_0_7_3_ rec {
+    dependencies = [ either_1_4_0 ];
+    features = mkFeatures itertools_0_7_3_features;
+  };
+  itertools_0_7_3_features."use_std".self_default = hasDefault itertools_0_7_3_features;
+  either_1_4_0_features."default".from_itertools_0_7_3__default = false;
+  itoa_0_3_4 = itoa_0_3_4_ rec {
+    features = mkFeatures itoa_0_3_4_features;
+  };
+  itoa_0_3_4_features."".self = true;
+  kernel32_sys_0_2_2 = kernel32_sys_0_2_2_ rec {
+    dependencies = [ winapi_0_2_8 ];
+    buildDependencies = [ winapi_build_0_1_1 ];
+  };
+  winapi_0_2_8_features."default".from_kernel32_sys_0_2_2__default = true;
+  lazy_static_0_2_11 = lazy_static_0_2_11_ rec {
+    dependencies = [];
+    features = mkFeatures lazy_static_0_2_11_features;
+  };
+  lazy_static_0_2_11_features."compiletest_rs".self_compiletest = hasFeature (lazy_static_0_2_11_features."compiletest" or {});
+  lazy_static_0_2_11_features."nightly".self_spin_no_std = hasFeature (lazy_static_0_2_11_features."spin_no_std" or {});
+  lazy_static_0_2_11_features."spin".self_spin_no_std = hasFeature (lazy_static_0_2_11_features."spin_no_std" or {});
+  compiletest_rs_0_0_0_features."default".from_lazy_static_0_2_11__default = true;
+  spin_0_0_0_features."default".from_lazy_static_0_2_11__default = true;
+  libc_0_2_33 = libc_0_2_33_ rec {
+    features = mkFeatures libc_0_2_33_features;
+  };
+  libc_0_2_33_features."use_std".self_default = hasDefault libc_0_2_33_features;
+  libsqlite3_sys_0_9_0 = libsqlite3_sys_0_9_0_ rec {
+    dependencies = (if abi == "msvc" then [] else []);
+    buildDependencies = [ pkg_config_0_3_9 ]
+      ++ (if lib.lists.any (x: x == "pkg-config") features then [pkg_config_0_3_9] else []);
+    features = mkFeatures libsqlite3_sys_0_9_0_features;
+  };
+  libsqlite3_sys_0_9_0_features."bindgen".self_buildtime_bindgen = hasFeature (libsqlite3_sys_0_9_0_features."buildtime_bindgen" or {});
+  libsqlite3_sys_0_9_0_features."pkg-config".self_buildtime_bindgen = hasFeature (libsqlite3_sys_0_9_0_features."buildtime_bindgen" or {});
+  libsqlite3_sys_0_9_0_features."vcpkg".self_buildtime_bindgen = hasFeature (libsqlite3_sys_0_9_0_features."buildtime_bindgen" or {});
+  libsqlite3_sys_0_9_0_features."cc".self_bundled = hasFeature (libsqlite3_sys_0_9_0_features."bundled" or {});
+  libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_8".self_default = hasDefault libsqlite3_sys_0_9_0_features;
+  libsqlite3_sys_0_9_0_features."pkg-config".self_min_sqlite_version_3_6_11 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_11" or {});
+  libsqlite3_sys_0_9_0_features."vcpkg".self_min_sqlite_version_3_6_11 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_11" or {});
+  libsqlite3_sys_0_9_0_features."pkg-config".self_min_sqlite_version_3_6_23 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_23" or {});
+  libsqlite3_sys_0_9_0_features."vcpkg".self_min_sqlite_version_3_6_23 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_23" or {});
+  libsqlite3_sys_0_9_0_features."pkg-config".self_min_sqlite_version_3_6_8 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_8" or {});
+  libsqlite3_sys_0_9_0_features."vcpkg".self_min_sqlite_version_3_6_8 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_8" or {});
+  libsqlite3_sys_0_9_0_features."pkg-config".self_min_sqlite_version_3_7_16 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_16" or {});
+  libsqlite3_sys_0_9_0_features."vcpkg".self_min_sqlite_version_3_7_16 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_16" or {});
+  libsqlite3_sys_0_9_0_features."pkg-config".self_min_sqlite_version_3_7_3 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_3" or {});
+  libsqlite3_sys_0_9_0_features."vcpkg".self_min_sqlite_version_3_7_3 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_3" or {});
+  libsqlite3_sys_0_9_0_features."pkg-config".self_min_sqlite_version_3_7_4 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_4" or {});
+  libsqlite3_sys_0_9_0_features."vcpkg".self_min_sqlite_version_3_7_4 = hasFeature (libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_4" or {});
+  linked_hash_map_0_4_2 = linked_hash_map_0_4_2_ rec {
+    dependencies = [];
+    features = mkFeatures linked_hash_map_0_4_2_features;
+  };
+  linked_hash_map_0_4_2_features."heapsize".self_heapsize_impl = hasFeature (linked_hash_map_0_4_2_features."heapsize_impl" or {});
+  linked_hash_map_0_4_2_features."serde".self_serde_impl = hasFeature (linked_hash_map_0_4_2_features."serde_impl" or {});
+  linked_hash_map_0_4_2_features."serde_test".self_serde_impl = hasFeature (linked_hash_map_0_4_2_features."serde_impl" or {});
+  clippy_0_0_0_features."default".from_linked_hash_map_0_4_2__default = true;
+  heapsize_0_0_0_features."default".from_linked_hash_map_0_4_2__default = true;
+  serde_0_0_0_features."default".from_linked_hash_map_0_4_2__default = true;
+  serde_test_0_0_0_features."default".from_linked_hash_map_0_4_2__default = true;
+  log_0_3_8 = log_0_3_8_ rec {
+    features = mkFeatures log_0_3_8_features;
+  };
+  log_0_3_8_features."use_std".self_default = hasDefault log_0_3_8_features;
+  lru_cache_0_1_1 = lru_cache_0_1_1_ rec {
+    dependencies = [ linked_hash_map_0_4_2 ];
+    features = mkFeatures lru_cache_0_1_1_features;
+  };
+  lru_cache_0_1_1_features."heapsize".self_heapsize_impl = hasFeature (lru_cache_0_1_1_features."heapsize_impl" or {});
+  heapsize_0_0_0_features."default".from_lru_cache_0_1_1__default = true;
+  linked_hash_map_0_4_2_features."heapsize_impl".from_lru_cache_0_1_1__heapsize_impl = hasFeature (lru_cache_0_1_1_features."heapsize_impl" or {});
+  linked_hash_map_0_4_2_features."default".from_lru_cache_0_1_1__default = true;
+  memchr_1_0_2 = memchr_1_0_2_ rec {
+    dependencies = [ libc_0_2_33 ]
+      ++ (if lib.lists.any (x: x == "libc") features then [libc_0_2_33] else []);
+    features = mkFeatures memchr_1_0_2_features;
+  };
+  memchr_1_0_2_features."".self = true;
+  memchr_1_0_2_features."use_std".self_default = hasDefault memchr_1_0_2_features;
+  memchr_1_0_2_features."libc".self_default = hasDefault memchr_1_0_2_features;
+  memchr_1_0_2_features."libc".self_use_std = hasFeature (memchr_1_0_2_features."use_std" or {});
+  libc_0_2_33_features."use_std".from_memchr_1_0_2__use_std = hasFeature (memchr_1_0_2_features."use_std" or {});
+  libc_0_2_33_features."default".from_memchr_1_0_2__default = false;
+  nom_3_2_1 = nom_3_2_1_ rec {
+    dependencies = [ memchr_1_0_2 ];
+    features = mkFeatures nom_3_2_1_features;
+  };
+  nom_3_2_1_features."std".self_default = hasDefault nom_3_2_1_features;
+  nom_3_2_1_features."stream".self_default = hasDefault nom_3_2_1_features;
+  nom_3_2_1_features."compiler_error".self_nightly = hasFeature (nom_3_2_1_features."nightly" or {});
+  nom_3_2_1_features."regex".self_regexp = hasFeature (nom_3_2_1_features."regexp" or {});
+  nom_3_2_1_features."regexp".self_regexp_macros = hasFeature (nom_3_2_1_features."regexp_macros" or {});
+  nom_3_2_1_features."lazy_static".self_regexp_macros = hasFeature (nom_3_2_1_features."regexp_macros" or {});
+  compiler_error_0_0_0_features."default".from_nom_3_2_1__default = true;
+  lazy_static_0_0_0_features."default".from_nom_3_2_1__default = true;
+  memchr_1_0_2_features."use_std".from_nom_3_2_1__std = hasFeature (nom_3_2_1_features."std" or {});
+  memchr_1_0_2_features."default".from_nom_3_2_1__default = false;
+  regex_0_0_0_features."default".from_nom_3_2_1__default = true;
+  num_traits_0_1_40 = num_traits_0_1_40_ rec {};
+  pkg_config_0_3_9 = pkg_config_0_3_9_ rec {};
+  quote_0_3_15 = quote_0_3_15_ rec {};
+  rand_0_3_18 = rand_0_3_18_ rec {
+    dependencies = [ libc_0_2_33 ]
+      ++ (if kernel == "fuchsia" then [ fuchsia_zircon_0_2_1 ] else []);
+    features = mkFeatures rand_0_3_18_features;
+  };
+  rand_0_3_18_features."i128_support".self_nightly = hasFeature (rand_0_3_18_features."nightly" or {});
+  libc_0_2_33_features."default".from_rand_0_3_18__default = true;
+  fuchsia_zircon_0_2_1_features."default".from_rand_0_3_18__default = true;
+  redox_syscall_0_1_32 = redox_syscall_0_1_32_ rec {};
+  redox_termios_0_1_1 = redox_termios_0_1_1_ rec {
+    dependencies = [ redox_syscall_0_1_32 ];
+  };
+  redox_syscall_0_1_32_features."default".from_redox_termios_0_1_1__default = true;
+  regex_0_2_2 = regex_0_2_2_ rec {
+    dependencies = [ aho_corasick_0_6_3 memchr_1_0_2 regex_syntax_0_4_1 thread_local_0_3_4 utf8_ranges_1_0_0 ];
+    features = mkFeatures regex_0_2_2_features;
+  };
+  regex_0_2_2_features."simd".self_simd-accel = hasFeature (regex_0_2_2_features."simd-accel" or {});
+  aho_corasick_0_6_3_features."default".from_regex_0_2_2__default = true;
+  memchr_1_0_2_features."default".from_regex_0_2_2__default = true;
+  regex_syntax_0_4_1_features."default".from_regex_0_2_2__default = true;
+  simd_0_0_0_features."default".from_regex_0_2_2__default = true;
+  thread_local_0_3_4_features."default".from_regex_0_2_2__default = true;
+  utf8_ranges_1_0_0_features."default".from_regex_0_2_2__default = true;
+  regex_syntax_0_4_1 = regex_syntax_0_4_1_ rec {};
+  rusqlite_0_13_0 = rusqlite_0_13_0_ rec {
+    dependencies = [ bitflags_1_0_1 libsqlite3_sys_0_9_0 lru_cache_0_1_1 time_0_1_38 ];
+    features = mkFeatures rusqlite_0_13_0_features;
+  };
+  rusqlite_0_13_0_features."".self = true;
+  bitflags_1_0_1_features."default".from_rusqlite_0_13_0__default = true;
+  chrono_0_0_0_features."default".from_rusqlite_0_13_0__default = true;
+  libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_11".from_rusqlite_0_13_0__backup = hasFeature (rusqlite_0_13_0_features."backup" or {});
+  libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_4".from_rusqlite_0_13_0__blob = hasFeature (rusqlite_0_13_0_features."blob" or {});
+  libsqlite3_sys_0_9_0_features."buildtime_bindgen".from_rusqlite_0_13_0__buildtime_bindgen = hasFeature (rusqlite_0_13_0_features."buildtime_bindgen" or {});
+  libsqlite3_sys_0_9_0_features."bundled".from_rusqlite_0_13_0__bundled = hasFeature (rusqlite_0_13_0_features."bundled" or {});
+  libsqlite3_sys_0_9_0_features."min_sqlite_version_3_7_3".from_rusqlite_0_13_0__functions = hasFeature (rusqlite_0_13_0_features."functions" or {});
+  libsqlite3_sys_0_9_0_features."sqlcipher".from_rusqlite_0_13_0__sqlcipher = hasFeature (rusqlite_0_13_0_features."sqlcipher" or {});
+  libsqlite3_sys_0_9_0_features."min_sqlite_version_3_6_23".from_rusqlite_0_13_0__trace = hasFeature (rusqlite_0_13_0_features."trace" or {});
+  libsqlite3_sys_0_9_0_features."default".from_rusqlite_0_13_0__default = true;
+  lru_cache_0_1_1_features."default".from_rusqlite_0_13_0__default = true;
+  serde_json_0_0_0_features."default".from_rusqlite_0_13_0__default = true;
+  time_0_1_38_features."default".from_rusqlite_0_13_0__default = true;
+  rustc_demangle_0_1_5 = rustc_demangle_0_1_5_ rec {};
+  serde_1_0_21 = serde_1_0_21_ rec {
+    dependencies = [];
+    features = mkFeatures serde_1_0_21_features;
+  };
+  serde_1_0_21_features."unstable".self_alloc = hasFeature (serde_1_0_21_features."alloc" or {});
+  serde_1_0_21_features."std".self_default = hasDefault serde_1_0_21_features;
+  serde_1_0_21_features."serde_derive".self_derive = hasFeature (serde_1_0_21_features."derive" or {});
+  serde_1_0_21_features."serde_derive".self_playground = hasFeature (serde_1_0_21_features."playground" or {});
+  serde_derive_0_0_0_features."default".from_serde_1_0_21__default = true;
+  serde_derive_1_0_21 = serde_derive_1_0_21_ rec {
+    dependencies = [ quote_0_3_15 serde_derive_internals_0_17_0 syn_0_11_11 ];
+  };
+  quote_0_3_15_features."default".from_serde_derive_1_0_21__default = true;
+  serde_derive_internals_0_17_0_features."default".from_serde_derive_1_0_21__default = false;
+  syn_0_11_11_features."visit".from_serde_derive_1_0_21 = true;
+  syn_0_11_11_features."default".from_serde_derive_1_0_21__default = true;
+  serde_derive_internals_0_17_0 = serde_derive_internals_0_17_0_ rec {
+    dependencies = [ syn_0_11_11 synom_0_11_3 ];
+  };
+  syn_0_11_11_features."parsing".from_serde_derive_internals_0_17_0 = true;
+  syn_0_11_11_features."default".from_serde_derive_internals_0_17_0__default = false;
+  synom_0_11_3_features."default".from_serde_derive_internals_0_17_0__default = true;
+  serde_json_1_0_6 = serde_json_1_0_6_ rec {
+    dependencies = [ dtoa_0_4_2 itoa_0_3_4 num_traits_0_1_40 serde_1_0_21 ];
+    features = mkFeatures serde_json_1_0_6_features;
+  };
+  serde_json_1_0_6_features."linked-hash-map".self_preserve_order = hasFeature (serde_json_1_0_6_features."preserve_order" or {});
+  dtoa_0_4_2_features."default".from_serde_json_1_0_6__default = true;
+  itoa_0_3_4_features."default".from_serde_json_1_0_6__default = true;
+  linked_hash_map_0_0_0_features."default".from_serde_json_1_0_6__default = true;
+  num_traits_0_1_40_features."default".from_serde_json_1_0_6__default = true;
+  serde_1_0_21_features."default".from_serde_json_1_0_6__default = true;
+  strsim_0_6_0 = strsim_0_6_0_ rec {};
+  syn_0_11_11 = syn_0_11_11_ rec {
+    dependencies = [ quote_0_3_15 synom_0_11_3 unicode_xid_0_0_4 ]
+      ++ (if lib.lists.any (x: x == "quote") features then [quote_0_3_15] else [])      ++ (if lib.lists.any (x: x == "synom") features then [synom_0_11_3] else [])      ++ (if lib.lists.any (x: x == "unicode-xid") features then [unicode_xid_0_0_4] else []);
+    features = mkFeatures syn_0_11_11_features;
+  };
+  syn_0_11_11_features."".self = true;
+  syn_0_11_11_features."parsing".self_default = hasDefault syn_0_11_11_features;
+  syn_0_11_11_features."printing".self_default = hasDefault syn_0_11_11_features;
+  syn_0_11_11_features."unicode-xid".self_parsing = hasFeature (syn_0_11_11_features."parsing" or {});
+  syn_0_11_11_features."synom".self_parsing = hasFeature (syn_0_11_11_features."parsing" or {});
+  syn_0_11_11_features."quote".self_printing = hasFeature (syn_0_11_11_features."printing" or {});
+  quote_0_3_15_features."default".from_syn_0_11_11__default = true;
+  synom_0_11_3_features."default".from_syn_0_11_11__default = true;
+  unicode_xid_0_0_4_features."default".from_syn_0_11_11__default = true;
+  synom_0_11_3 = synom_0_11_3_ rec {
+    dependencies = [ unicode_xid_0_0_4 ];
+  };
+  unicode_xid_0_0_4_features."default".from_synom_0_11_3__default = true;
+  tempdir_0_3_5 = tempdir_0_3_5_ rec {
+    dependencies = [ rand_0_3_18 ];
+  };
+  rand_0_3_18_features."default".from_tempdir_0_3_5__default = true;
+  termion_1_5_1 = termion_1_5_1_ rec {
+    dependencies = (if !(kernel == "redox") then [ libc_0_2_33 ] else [])
+      ++ (if kernel == "redox" then [ redox_syscall_0_1_32 redox_termios_0_1_1 ] else []);
+  };
+  libc_0_2_33_features."default".from_termion_1_5_1__default = true;
+  redox_syscall_0_1_32_features."default".from_termion_1_5_1__default = true;
+  redox_termios_0_1_1_features."default".from_termion_1_5_1__default = true;
+  textwrap_0_9_0 = textwrap_0_9_0_ rec {
+    dependencies = [ unicode_width_0_1_4 ];
+  };
+  hyphenation_0_0_0_features."default".from_textwrap_0_9_0__default = true;
+  term_size_0_0_0_features."default".from_textwrap_0_9_0__default = true;
+  unicode_width_0_1_4_features."default".from_textwrap_0_9_0__default = true;
+  thread_local_0_3_4 = thread_local_0_3_4_ rec {
+    dependencies = [ lazy_static_0_2_11 unreachable_1_0_0 ];
+  };
+  lazy_static_0_2_11_features."default".from_thread_local_0_3_4__default = true;
+  unreachable_1_0_0_features."default".from_thread_local_0_3_4__default = true;
+  time_0_1_38 = time_0_1_38_ rec {
+    dependencies = [ libc_0_2_33 ]
+      ++ (if kernel == "redox" then [ redox_syscall_0_1_32 ] else [])
+      ++ (if kernel == "windows" then [ kernel32_sys_0_2_2 winapi_0_2_8 ] else []);
+  };
+  libc_0_2_33_features."default".from_time_0_1_38__default = true;
+  rustc_serialize_0_0_0_features."default".from_time_0_1_38__default = true;
+  redox_syscall_0_1_32_features."default".from_time_0_1_38__default = true;
+  kernel32_sys_0_2_2_features."default".from_time_0_1_38__default = true;
+  winapi_0_2_8_features."default".from_time_0_1_38__default = true;
+  toml_0_4_5 = toml_0_4_5_ rec {
+    dependencies = [ serde_1_0_21 ];
+  };
+  serde_1_0_21_features."default".from_toml_0_4_5__default = true;
+  unicode_width_0_1_4 = unicode_width_0_1_4_ rec {
+    features = mkFeatures unicode_width_0_1_4_features;
+  };
+  unicode_width_0_1_4_features."".self = true;
+  unicode_xid_0_0_4 = unicode_xid_0_0_4_ rec {
+    features = mkFeatures unicode_xid_0_0_4_features;
+  };
+  unicode_xid_0_0_4_features."".self = true;
+  unreachable_1_0_0 = unreachable_1_0_0_ rec {
+    dependencies = [ void_1_0_2 ];
+  };
+  void_1_0_2_features."default".from_unreachable_1_0_0__default = false;
+  utf8_ranges_1_0_0 = utf8_ranges_1_0_0_ rec {};
+  vcpkg_0_2_2 = vcpkg_0_2_2_ rec {};
+  vec_map_0_8_0 = vec_map_0_8_0_ rec {
+    dependencies = [];
+    features = mkFeatures vec_map_0_8_0_features;
+  };
+  vec_map_0_8_0_features."serde".self_eders = hasFeature (vec_map_0_8_0_features."eders" or {});
+  vec_map_0_8_0_features."serde_derive".self_eders = hasFeature (vec_map_0_8_0_features."eders" or {});
+  serde_0_0_0_features."default".from_vec_map_0_8_0__default = true;
+  serde_derive_0_0_0_features."default".from_vec_map_0_8_0__default = true;
+  void_1_0_2 = void_1_0_2_ rec {
+    features = mkFeatures void_1_0_2_features;
+  };
+  void_1_0_2_features."std".self_default = hasDefault void_1_0_2_features;
+  winapi_0_2_8 = winapi_0_2_8_ rec {};
+  winapi_build_0_1_1 = winapi_build_0_1_1_ rec {};
+}
diff --git a/pkgs/build-support/rust/default-crate-overrides.nix b/pkgs/build-support/rust/default-crate-overrides.nix
new file mode 100644
index 000000000000..c074d46a7f75
--- /dev/null
+++ b/pkgs/build-support/rust/default-crate-overrides.nix
@@ -0,0 +1,10 @@
+{ pkgconfig, sqlite, openssl, ... }:
+
+{
+  libsqlite3-sys = attrs: {
+    buildInputs = [ pkgconfig sqlite ];
+  };
+  openssl-sys = attrs: {
+    buildInputs = [ pkgconfig openssl ];
+  };
+}
diff --git a/pkgs/build-support/rust/fetchcrate.nix b/pkgs/build-support/rust/fetchcrate.nix
new file mode 100644
index 000000000000..95dfd38b12ae
--- /dev/null
+++ b/pkgs/build-support/rust/fetchcrate.nix
@@ -0,0 +1,35 @@
+{ lib, fetchurl, unzip }:
+
+{ crateName
+, version
+, sha256
+, ... } @ args:
+
+lib.overrideDerivation (fetchurl ({
+
+  name = "${crateName}-${version}.tar.gz";
+  url = "https://crates.io/api/v1/crates/${crateName}/${version}/download";
+  recursiveHash = true;
+
+  downloadToTemp = true;
+
+  postFetch =
+    ''
+      export PATH=${unzip}/bin:$PATH
+
+      unpackDir="$TMPDIR/unpack"
+      mkdir "$unpackDir"
+      cd "$unpackDir"
+
+      renamed="$TMPDIR/${crateName}-${version}.tar.gz"
+      mv "$downloadedFile" "$renamed"
+      unpackFile "$renamed"
+      fn=$(cd "$unpackDir" && echo *)
+      if [ -f "$unpackDir/$fn" ]; then
+        mkdir $out
+      fi
+      mv "$unpackDir/$fn" "$out"
+    '';
+} // removeAttrs args [ "crateName" "version" ]))
+# Hackety-hack: we actually need unzip hooks, too
+(x: {nativeBuildInputs = x.nativeBuildInputs++ [unzip];})
diff --git a/pkgs/build-support/vm/default.nix b/pkgs/build-support/vm/default.nix
index baaa150b5a05..e31f513c6666 100644
--- a/pkgs/build-support/vm/default.nix
+++ b/pkgs/build-support/vm/default.nix
@@ -60,21 +60,6 @@ rec {
     ''; # */
 
 
-  createDeviceNodes = dev:
-    ''
-      mknod -m 666 ${dev}/null    c 1 3
-      mknod -m 666 ${dev}/zero    c 1 5
-      mknod -m 666 ${dev}/full    c 1 7
-      mknod -m 666 ${dev}/random  c 1 8
-      mknod -m 666 ${dev}/urandom c 1 9
-      mknod -m 666 ${dev}/tty     c 5 0
-      mknod -m 666 ${dev}/ttyS0   c 4 64
-      mknod ${dev}/rtc     c 254 0
-      . /sys/class/block/${hd}/uevent
-      mknod ${dev}/${hd} b $MAJOR $MINOR
-    '';
-
-
   stage1Init = writeScript "vm-run-stage1" ''
     #! ${initrdUtils}/bin/ash -e
 
@@ -109,8 +94,7 @@ rec {
       insmod $i
     done
 
-    mount -t tmpfs none /dev
-    ${createDeviceNodes "/dev"}
+    mount -t devtmpfs devtmpfs /dev
 
     ifconfig lo up
 
@@ -302,7 +286,6 @@ rec {
     touch /mnt/.debug
 
     mkdir /mnt/proc /mnt/dev /mnt/sys
-    ${createDeviceNodes "/mnt/dev"}
   '';
 
 
@@ -353,7 +336,6 @@ rec {
         ${kmod}/bin/modprobe iso9660
         ${kmod}/bin/modprobe ufs
         ${kmod}/bin/modprobe cramfs
-        mknod /dev/loop0 b 7 0
 
         mkdir -p $out
         mkdir -p tmp
@@ -377,8 +359,6 @@ rec {
         ${kmod}/bin/modprobe mtdblock
         ${kmod}/bin/modprobe jffs2
         ${kmod}/bin/modprobe zlib
-        mknod /dev/mtd0 c 90 0
-        mknod /dev/mtdblock0 b 31 0
 
         mkdir -p $out
         mkdir -p tmp
@@ -1980,22 +1960,22 @@ rec {
     };
 
     debian8i386 = {
-      name = "debian-8.9-jessie-i386";
-      fullName = "Debian 8.9 Jessie (i386)";
+      name = "debian-8.10-jessie-i386";
+      fullName = "Debian 8.10 Jessie (i386)";
       packagesList = fetchurl {
         url = mirror://debian/dists/jessie/main/binary-i386/Packages.xz;
-        sha256 = "3c78bdf3b693f2f37737c52d6a7718b3a545956f2a853da79f04a2d15541e811";
+        sha256 = "b3aa33bfe0256f72b7aad07b6c714b790d9a20d86c1a448a6f36b35652a82ff0";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
     };
 
     debian8x86_64 = {
-      name = "debian-8.9-jessie-amd64";
-      fullName = "Debian 8.9 Jessie (amd64)";
+      name = "debian-8.10-jessie-amd64";
+      fullName = "Debian 8.10 Jessie (amd64)";
       packagesList = fetchurl {
         url = mirror://debian/dists/jessie/main/binary-amd64/Packages.xz;
-        sha256 = "0605589ae7a63c690f37bd2567dc12e02a2eb279d9dc200a7310072ad3593e53";
+        sha256 = "689e77cdf5334a3fffa5ca504e8131ee9ec88a7616f12c9ea5a3d5ac3100a710";
       };
       urlPrefix = mirror://debian;
       packages = commonDebianPackages;
diff --git a/pkgs/desktops/gnome-3/apps/gedit/src.nix b/pkgs/desktops/gnome-3/apps/gedit/src.nix
index 3fdc6cfaa685..7a68b75eb2a7 100644
--- a/pkgs/desktops/gnome-3/apps/gedit/src.nix
+++ b/pkgs/desktops/gnome-3/apps/gedit/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "gedit-3.22.0";
+  name = "gedit-3.22.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gedit/3.22/gedit-3.22.0.tar.xz;
-    sha256 = "063b5a0b5dcc8f540f6e8c3ea1c22cf8a3a19edffc25315a1b6bc51d462b3f45";
+    url = mirror://gnome/sources/gedit/3.22/gedit-3.22.1.tar.xz;
+    sha256 = "aa7bc3618fffa92fdb7daf2f57152e1eb7962e68561a9c92813d7bbb7fc9492b";
   };
 }
diff --git a/pkgs/desktops/gnome-3/apps/glade/default.nix b/pkgs/desktops/gnome-3/apps/glade/default.nix
index e48d15e6abfe..accd66933aad 100644
--- a/pkgs/desktops/gnome-3/apps/glade/default.nix
+++ b/pkgs/desktops/gnome-3/apps/glade/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, intltool, fetchurl, python, autoreconfHook
+{ stdenv, intltool, fetchurl, python
 , pkgconfig, gtk3, glib, gobjectIntrospection
 , wrapGAppsHook, itstool, libxml2, docbook_xsl
 , gnome3, gdk_pixbuf, libxslt }:
@@ -6,12 +6,8 @@
 stdenv.mkDerivation rec {
   inherit (import ./src.nix fetchurl) name src;
 
-  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard ];
-
   nativeBuildInputs = [
     pkgconfig intltool itstool wrapGAppsHook docbook_xsl libxslt gobjectIntrospection
-    # reconfiguration
-    autoreconfHook gnome3.gnome_common gnome3.yelp_tools
   ];
   buildInputs = [ gtk3 glib libxml2 python
                   gnome3.gsettings_desktop_schemas
@@ -19,20 +15,6 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  patches = [
-    # https://bugzilla.gnome.org/show_bug.cgi?id=782161
-    (fetchurl {
-      url = https://bugzilla.gnome.org/attachment.cgi?id=351054;
-      sha256 = "093wjjj40027pkqqnm14jb2dp2i2m8p1bayqx1lw18pq66c8fahn";
-    })
-  ];
-
-  preFixup = ''
-    wrapProgram "$out/bin/glade" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-      --prefix XDG_DATA_DIRS : "${gnome3.gnome_themes_standard}/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
-  '';
-
   meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Apps/Glade;
     description = "User interface designer for GTK+ applications";
diff --git a/pkgs/desktops/gnome-3/apps/glade/src.nix b/pkgs/desktops/gnome-3/apps/glade/src.nix
index d32dbd94d059..b244d2434c9e 100644
--- a/pkgs/desktops/gnome-3/apps/glade/src.nix
+++ b/pkgs/desktops/gnome-3/apps/glade/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "glade-3.20.0";
+  name = "glade-3.20.2";
 
   src = fetchurl {
-    url = mirror://gnome/sources/glade/3.20/glade-3.20.0.tar.xz;
-    sha256 = "82d96dca5dec40ee34e2f41d49c13b4ea50da8f32a3a49ca2da802ff14dc18fe";
+    url = mirror://gnome/sources/glade/3.20/glade-3.20.2.tar.xz;
+    sha256 = "07d1545570951aeded20e9fdc6d3d8a56aeefe2538734568c5335be336c6abed";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/adwaita-icon-theme/src.nix b/pkgs/desktops/gnome-3/core/adwaita-icon-theme/src.nix
index 1a388505674c..24f0955659ec 100644
--- a/pkgs/desktops/gnome-3/core/adwaita-icon-theme/src.nix
+++ b/pkgs/desktops/gnome-3/core/adwaita-icon-theme/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "adwaita-icon-theme-3.26.0";
+  name = "adwaita-icon-theme-3.26.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/adwaita-icon-theme/3.26/adwaita-icon-theme-3.26.0.tar.xz;
-    sha256 = "9cad85de19313f5885497aceab0acbb3f08c60fcd5fa5610aeafff37a1d12212";
+    url = mirror://gnome/sources/adwaita-icon-theme/3.26/adwaita-icon-theme-3.26.1.tar.xz;
+    sha256 = "28ba7392c7761996efd780779167ea6c940eedfb1bf37cfe9bccb7021f54d79d";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/dconf/default.nix b/pkgs/desktops/gnome-3/core/dconf/default.nix
index 130e8255edca..9a836869ec6e 100644
--- a/pkgs/desktops/gnome-3/core/dconf/default.nix
+++ b/pkgs/desktops/gnome-3/core/dconf/default.nix
@@ -6,11 +6,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "dconf-${version}";
-  version = "${majorVersion}.0";
+  version = "${majorVersion}.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/dconf/${majorVersion}/${name}.tar.xz";
-    sha256 = "1jaqsr1r0grpd25rbsc2v3vb0sc51lia9w31wlqswgqsncp2k0w6";
+    sha256 = "0da587hpiqy8h3pswn1102h4b905x8k6mk3ajpi7kf4kzkvv30ym";
   };
 
   outputs = [ "out" "lib" "dev" ];
diff --git a/pkgs/desktops/gnome-3/core/empathy/default.nix b/pkgs/desktops/gnome-3/core/empathy/default.nix
index ea257ed69f0f..f9156053819a 100644
--- a/pkgs/desktops/gnome-3/core/empathy/default.nix
+++ b/pkgs/desktops/gnome-3/core/empathy/default.nix
@@ -4,55 +4,46 @@
 , clutter_gtk, clutter-gst, gst_all_1, cogl, gnome_online_accounts
 , gcr, libsecret, folks, libpulseaudio, telepathy_mission_control
 , telepathy_logger, libnotify, clutter, libsoup, gnutls
-, evolution_data_server
+, evolution_data_server, yelp_xsl
 , libcanberra_gtk3, p11_kit, farstream, libtool, shared_mime_info
-, bash, makeWrapper, itstool, libxml2, libxslt, icu, libgee  }:
+, bash, wrapGAppsHook, itstool, libxml2, libxslt, icu, libgee
+, isocodes, enchant, libchamplain, geoclue2, geocode_glib, cheese, libgudev }:
 
-# TODO: enable more features
-
-let
-  majorVersion = "3.12";
-in
 stdenv.mkDerivation rec {
-  name = "empathy-${majorVersion}.11";
-
-  src = fetchurl {
-    url = "mirror://gnome/sources/empathy/${majorVersion}/${name}.tar.xz";
-    sha256 = "11yl8msyf017197fm6h15yw159yjp9i08566l967yashbx7gzr6i";
-  };
-
-  propagatedUserEnvPkgs = [ gnome3.gnome_themes_standard
-                            gnome_online_accounts shared_mime_info ];
-  propagatedBuildInputs = [ folks telepathy_logger evolution_data_server
-                            telepathy_mission_control ];
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ gtk3 glib webkitgtk intltool itstool
-                  libxml2 libxslt icu file makeWrapper
-                  telepathy_glib clutter_gtk clutter-gst cogl
-                  gst_all_1.gstreamer gst_all_1.gst-plugins-base
-                  gcr libsecret libpulseaudio gnome3.yelp_xsl gdk_pixbuf
-                  libnotify clutter libsoup gnutls libgee p11_kit
-                  libcanberra_gtk3 telepathy_farstream farstream
-                  gnome3.defaultIconTheme gnome3.gsettings_desktop_schemas
-                  file libtool librsvg ];
-
-  NIX_CFLAGS_COMPILE = [ "-I${dbus_glib.dev}/include/dbus-1.0"
-                         "-I${dbus_libs.dev}/include/dbus-1.0"
-                         "-I${dbus_libs.dev}/lib/dbus-1.0/include" ];
+  inherit (import ./src.nix fetchurl) name src;
 
-  preFixup = ''
-    for f in $out/bin/* $out/libexec/*; do
-      wrapProgram $f \
-        --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
-        --prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${gnome3.gnome_themes_standard}/share:$out/share:$GSETTINGS_SCHEMAS_PATH"
-    done
-  '';
+  propagatedUserEnvPkgs = [
+    gnome_online_accounts shared_mime_info
+  ];
+  propagatedBuildInputs = [
+    folks telepathy_logger evolution_data_server telepathy_mission_control
+  ];
+  nativeBuildInputs = [
+    pkgconfig libtool intltool itstool file wrapGAppsHook
+    libxml2 libxslt yelp_xsl
+  ];
+  buildInputs = [
+    gtk3 glib webkitgtk icu gnome_online_accounts
+    telepathy_glib clutter_gtk clutter-gst cogl
+    gst_all_1.gstreamer gst_all_1.gst-plugins-base
+    gcr libsecret libpulseaudio gdk_pixbuf
+    libnotify clutter libsoup gnutls libgee p11_kit
+    libcanberra_gtk3 telepathy_farstream farstream
+    gnome3.defaultIconTheme gnome3.gsettings_desktop_schemas
+    librsvg
+    # Spell-checking
+    enchant isocodes
+    # Display maps, location awareness, geocode support
+    libchamplain geoclue2 geocode_glib
+    # Cheese webcam support, camera monitoring
+    cheese libgudev
+  ];
 
   meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Apps/Empathy;
     description = "Messaging program which supports text, voice, video chat, and file transfers over many different protocols";
     maintainers = gnome3.maintainers;
-    # TODO: license = [ licenses.gpl2 licenses.lgpl2 ];
+    license = [ licenses.gpl2 ];
     platforms = platforms.linux;
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/empathy/src.nix b/pkgs/desktops/gnome-3/core/empathy/src.nix
new file mode 100644
index 000000000000..7e54ed38fd36
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/empathy/src.nix
@@ -0,0 +1,10 @@
+# Autogenerated by maintainers/scripts/gnome.sh update
+
+fetchurl: {
+  name = "empathy-3.12.14";
+
+  src = fetchurl {
+    url = mirror://gnome/sources/empathy/3.12/empathy-3.12.14.tar.xz;
+    sha256 = "7d86942ce97edd10ade0e6ae6a210d35e4d627fe4d223377d71fd1840bc6e3a3";
+  };
+}
diff --git a/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/src.nix b/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/src.nix
index 22760d2be113..1eca56c509bf 100644
--- a/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/src.nix
+++ b/pkgs/desktops/gnome-3/core/gsettings-desktop-schemas/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "gsettings-desktop-schemas-3.24.0";
+  name = "gsettings-desktop-schemas-3.24.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gsettings-desktop-schemas/3.24/gsettings-desktop-schemas-3.24.0.tar.xz;
-    sha256 = "f6573a3f661d22ff8a001cc2421d8647717f1c0e697e342d03c6102f29bbbb90";
+    url = mirror://gnome/sources/gsettings-desktop-schemas/3.24/gsettings-desktop-schemas-3.24.1.tar.xz;
+    sha256 = "76a3fa309f9de6074d66848987214f0b128124ba7184c958c15ac78a8ac7eea7";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/gtksourceview/default.nix b/pkgs/desktops/gnome-3/core/gtksourceview/default.nix
index a39464449485..363cf1a0c4ac 100644
--- a/pkgs/desktops/gnome-3/core/gtksourceview/default.nix
+++ b/pkgs/desktops/gnome-3/core/gtksourceview/default.nix
@@ -1,14 +1,22 @@
 { stdenv, fetchurl, pkgconfig, atk, cairo, glib, gtk3, pango
-, libxml2Python, perl, intltool, gettext, gnome3 }:
+, libxml2, perl, intltool, gettext, gnome3, dbus, xvfb_run, shared_mime_info }:
 
 stdenv.mkDerivation rec {
   inherit (import ./src.nix fetchurl) name src;
 
-  propagatedBuildInputs = [ gtk3 ];
+  propagatedBuildInputs = [
+    # Required by gtksourceview-3.0.pc
+    gtk3
+    # Used by gtk_source_language_manager_guess_language
+    shared_mime_info
+  ];
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ atk cairo glib pango
-                  libxml2Python perl intltool gettext ];
+  outputs = [ "out" "dev" ];
+
+  nativeBuildInputs = [ pkgconfig intltool gettext perl ]
+    ++ stdenv.lib.optionals doCheck checkInputs;
+  buildInputs = [ atk cairo glib pango libxml2 ];
+  checkInputs = [ xvfb_run dbus ];
 
   preBuild = ''
     substituteInPlace gtksourceview/gtksourceview-utils.c --replace "@NIX_SHARE_PATH@" "$out/share"
@@ -16,6 +24,14 @@ stdenv.mkDerivation rec {
 
   patches = [ ./nix_share_path.patch ];
 
+  doCheck = true;
+  checkPhase = ''
+    export NO_AT_BRIDGE=1
+    xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
+      --config-file=${dbus.daemon}/share/dbus-1/session.conf \
+      make check
+  '';
+
   meta = with stdenv.lib; {
     platforms = with platforms; linux ++ darwin;
     maintainers = gnome3.maintainers;
diff --git a/pkgs/desktops/gnome-3/core/gtksourceview/src.nix b/pkgs/desktops/gnome-3/core/gtksourceview/src.nix
index 8648c595bb96..ec7a8a6aaa57 100644
--- a/pkgs/desktops/gnome-3/core/gtksourceview/src.nix
+++ b/pkgs/desktops/gnome-3/core/gtksourceview/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "gtksourceview-3.24.3";
+  name = "gtksourceview-3.24.6";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gtksourceview/3.24/gtksourceview-3.24.3.tar.xz;
-    sha256 = "3eed05486a6420c3e2fdda0bbb19a0d905ed09ebf442302a026ab7e574204cbd";
+    url = mirror://gnome/sources/gtksourceview/3.24/gtksourceview-3.24.6.tar.xz;
+    sha256 = "7aa6bdfebcdc73a763dddeaa42f190c40835e6f8495bb9eb8f78587e2577c188";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/gucharmap/src.nix b/pkgs/desktops/gnome-3/core/gucharmap/src.nix
index 67d00c269f53..fb38e3bf386b 100644
--- a/pkgs/desktops/gnome-3/core/gucharmap/src.nix
+++ b/pkgs/desktops/gnome-3/core/gucharmap/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "gucharmap-10.0.1";
+  name = "gucharmap-10.0.3";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gucharmap/10.0/gucharmap-10.0.1.tar.xz;
-    sha256 = "51a2bf91c4590ea2159f828156864f088a0bd4c12e7a1c396002a23d48b2d5e2";
+    url = mirror://gnome/sources/gucharmap/10.0/gucharmap-10.0.3.tar.xz;
+    sha256 = "ac07d75924e2d8f436d9492e8f7d54cf109404d34de06886a3967563cd1726a4";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/libgweather/src.nix b/pkgs/desktops/gnome-3/core/libgweather/src.nix
index f2cb4c310afc..799713c28a4a 100644
--- a/pkgs/desktops/gnome-3/core/libgweather/src.nix
+++ b/pkgs/desktops/gnome-3/core/libgweather/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "libgweather-3.26.0";
+  name = "libgweather-3.26.1";
 
   src = fetchurl {
-    url = mirror://gnome/sources/libgweather/3.26/libgweather-3.26.0.tar.xz;
-    sha256 = "5b84badc0b3ecffff5db1bb9a7cc4dd4e400a8eb3f1282348f8ee6ba33626b6e";
+    url = mirror://gnome/sources/libgweather/3.26/libgweather-3.26.1.tar.xz;
+    sha256 = "fca78470b345bce948e0333cab0a7c52c32562fc4a75de37061248a64e8fc4b8";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/rest/default.nix b/pkgs/desktops/gnome-3/core/rest/default.nix
index 154e7221cc20..59f7a53e3e3e 100644
--- a/pkgs/desktops/gnome-3/core/rest/default.nix
+++ b/pkgs/desktops/gnome-3/core/rest/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
   name = "rest-${version}";
   major = "0.8";
-  version = "${major}.0";
+  version = "${major}.1";
 
   src = fetchurl {
     url = "mirror://gnome/sources/rest/${major}/${name}.tar.xz";
-    sha256 = "e7b89b200c1417073aef739e8a27ff2ab578056c27796ec74f5886a5e0dff647";
+    sha256 = "0513aad38e5d3cedd4ae3c551634e3be1b9baaa79775e53b2dba9456f15b01c9";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/desktops/gnome-3/core/totem-pl-parser/src.nix b/pkgs/desktops/gnome-3/core/totem-pl-parser/src.nix
index 58e2ad07532e..2935111df27d 100644
--- a/pkgs/desktops/gnome-3/core/totem-pl-parser/src.nix
+++ b/pkgs/desktops/gnome-3/core/totem-pl-parser/src.nix
@@ -5,6 +5,6 @@ fetchurl: {
 
   src = fetchurl {
     url = mirror://gnome/sources/totem-pl-parser/3.26/totem-pl-parser-3.26.0.tar.xz;
-    sha256 = "1jzvq7s6qdsdpbc58jpcwvyj7qsq58r65kmnbknjzd79j4rsalzi";
+    sha256 = "f153a53391e9b42fed5cb6ce62322a58e323fde6ec4a54d8ba4d376cf4c1fbcb";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/totem/default.nix b/pkgs/desktops/gnome-3/core/totem/default.nix
index b66405cf0510..651b7cff226d 100644
--- a/pkgs/desktops/gnome-3/core/totem/default.nix
+++ b/pkgs/desktops/gnome-3/core/totem/default.nix
@@ -9,7 +9,10 @@ stdenv.mkDerivation rec {
 
   doCheck = true;
 
-  enableParallelBuilding = true;
+  # https://bugs.launchpad.net/ubuntu/+source/totem/+bug/1712021
+  # https://bugzilla.gnome.org/show_bug.cgi?id=784236
+  # https://github.com/mesonbuild/meson/issues/1994
+  enableParallelBuilding = false;
 
   NIX_CFLAGS_COMPILE = "-I${gnome3.glib.dev}/include/gio-unix-2.0";
 
diff --git a/pkgs/desktops/gnome-3/core/tracker-miners/src.nix b/pkgs/desktops/gnome-3/core/tracker-miners/src.nix
index 2b309161fd19..1c5ee9b35fa1 100644
--- a/pkgs/desktops/gnome-3/core/tracker-miners/src.nix
+++ b/pkgs/desktops/gnome-3/core/tracker-miners/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "tracker-miners-2.0.2";
+  name = "tracker-miners-2.0.3";
 
   src = fetchurl {
-    url = mirror://gnome/sources/tracker-miners/2.0/tracker-miners-2.0.2.tar.xz;
-    sha256 = "cf417ece944c997f630dda41a7f5c449d609fa53dbb34fae7caa4c7af1e0e8ef";
+    url = mirror://gnome/sources/tracker-miners/2.0/tracker-miners-2.0.3.tar.xz;
+    sha256 = "12413a9f8dfa705a48a2697dcbb3eef12ee91bb98f392a23ba4bda7813e41d1b";
   };
 }
diff --git a/pkgs/desktops/gnome-3/core/tracker/default.nix b/pkgs/desktops/gnome-3/core/tracker/default.nix
index bf3438db338a..59455f320b53 100644
--- a/pkgs/desktops/gnome-3/core/tracker/default.nix
+++ b/pkgs/desktops/gnome-3/core/tracker/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, intltool, pkgconfig
+{ stdenv, fetchurl, intltool, pkgconfig
 , libxml2, upower, glib, wrapGAppsHook, vala, sqlite, libxslt
 , gnome3, icu, libuuid, networkmanager, libsoup, json_glib }:
 
diff --git a/pkgs/desktops/gnome-3/core/tracker/src.nix b/pkgs/desktops/gnome-3/core/tracker/src.nix
index afec65a4f633..887ae9a865a9 100644
--- a/pkgs/desktops/gnome-3/core/tracker/src.nix
+++ b/pkgs/desktops/gnome-3/core/tracker/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "tracker-2.0.1";
+  name = "tracker-2.0.2";
 
   src = fetchurl {
-    url = mirror://gnome/sources/tracker/2.0/tracker-2.0.1.tar.xz;
-    sha256 = "ac5c9f4dbb0741af5877ae2818d8c053aa9a431477a924a17976bb7e44411e47";
+    url = mirror://gnome/sources/tracker/2.0/tracker-2.0.2.tar.xz;
+    sha256 = "ece71a56c29151a76fc1b6e43c15dd1b657b37162dc948fa2487faf5ddb47fda";
   };
 }
diff --git a/pkgs/desktops/gnome-3/default.nix b/pkgs/desktops/gnome-3/default.nix
index e0a4c2ed4e48..d60fddb589bb 100644
--- a/pkgs/desktops/gnome-3/default.nix
+++ b/pkgs/desktops/gnome-3/default.nix
@@ -74,10 +74,7 @@ let
   dconf = callPackage ./core/dconf { };
   dconf-editor = callPackage ./core/dconf-editor { };
 
-  # empathy = callPackage ./core/empathy {
-  #   webkitgtk = webkitgtk24x-gtk3;
-  #   clutter-gst = pkgs.clutter-gst;
-  # };
+  empathy = callPackage ./core/empathy { };
 
   epiphany = callPackage ./core/epiphany { };
 
diff --git a/pkgs/desktops/gnome-3/games/aisleriot/src.nix b/pkgs/desktops/gnome-3/games/aisleriot/src.nix
index fbe6505b9a06..7fee97bae1df 100644
--- a/pkgs/desktops/gnome-3/games/aisleriot/src.nix
+++ b/pkgs/desktops/gnome-3/games/aisleriot/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "aisleriot-3.22.0";
+  name = "aisleriot-3.22.4";
 
   src = fetchurl {
-    url = mirror://gnome/sources/aisleriot/3.22/aisleriot-3.22.0.tar.xz;
-    sha256 = "e7b603df0a482bdd0ab8083efc096a24a46aea1b36cc8608846e568b7a353eb7";
+    url = mirror://gnome/sources/aisleriot/3.22/aisleriot-3.22.4.tar.xz;
+    sha256 = "fe8dee3ad771ab778d37740a26410778aa5c61e8eb75dd42b9a5e5719c6e34fb";
   };
 }
diff --git a/pkgs/desktops/gnome-3/games/four-in-a-row/src.nix b/pkgs/desktops/gnome-3/games/four-in-a-row/src.nix
index e0e11bc2124c..9e2b23f3996b 100644
--- a/pkgs/desktops/gnome-3/games/four-in-a-row/src.nix
+++ b/pkgs/desktops/gnome-3/games/four-in-a-row/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "four-in-a-row-3.22.0";
+  name = "four-in-a-row-3.22.2";
 
   src = fetchurl {
-    url = mirror://gnome/sources/four-in-a-row/3.22/four-in-a-row-3.22.0.tar.xz;
-    sha256 = "c2e26630f7b4e81cff087314edc0f39cd645dfbf4b31f826232bd8e9d57a7ff7";
+    url = mirror://gnome/sources/four-in-a-row/3.22/four-in-a-row-3.22.2.tar.xz;
+    sha256 = "bc4194e8ab6d1d2a6a63a2e91945cd5465f49ebf0dae2eecacc66e69db56a420";
   };
 }
diff --git a/pkgs/desktops/gnome-3/games/gnome-robots/src.nix b/pkgs/desktops/gnome-3/games/gnome-robots/src.nix
index 17fabe2de26b..09e4ad6c9673 100644
--- a/pkgs/desktops/gnome-3/games/gnome-robots/src.nix
+++ b/pkgs/desktops/gnome-3/games/gnome-robots/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "gnome-robots-3.22.0";
+  name = "gnome-robots-3.22.2";
 
   src = fetchurl {
-    url = mirror://gnome/sources/gnome-robots/3.22/gnome-robots-3.22.0.tar.xz;
-    sha256 = "ddb02f9d04c970354d1836813f8c0d9ffc3ff509091d2580384e2275663e6f73";
+    url = mirror://gnome/sources/gnome-robots/3.22/gnome-robots-3.22.2.tar.xz;
+    sha256 = "c5d63f0fcae66d0df9b10e39387d09875555909f0aa7e57ef8552621d852082f";
   };
 }
diff --git a/pkgs/desktops/gnome-3/games/hitori/src.nix b/pkgs/desktops/gnome-3/games/hitori/src.nix
index 47989cf2eae5..93dcd5de62e3 100644
--- a/pkgs/desktops/gnome-3/games/hitori/src.nix
+++ b/pkgs/desktops/gnome-3/games/hitori/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "hitori-3.22.0";
+  name = "hitori-3.22.4";
 
   src = fetchurl {
-    url = mirror://gnome/sources/hitori/3.22/hitori-3.22.0.tar.xz;
-    sha256 = "f70521c9a7a7c3e16b3951b64780eb0c5bce1bb1bb29de4482be06fb5e41adaa";
+    url = mirror://gnome/sources/hitori/3.22/hitori-3.22.4.tar.xz;
+    sha256 = "dcac6909b6007857ee425ac8c65fed179f2c71da138d5e5300cd62c8b9ea15d3";
   };
 }
diff --git a/pkgs/desktops/gnome-3/misc/gspell/default.nix b/pkgs/desktops/gnome-3/misc/gspell/default.nix
index 71e3ff19dc3f..e8c299685f70 100644
--- a/pkgs/desktops/gnome-3/misc/gspell/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gspell/default.nix
@@ -5,8 +5,8 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ enchant ]; # required for pkgconfig
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ glib gtk3 isocodes vala ];
+  nativeBuildInputs = [ pkgconfig vala ];
+  buildInputs = [ glib gtk3 isocodes ];
 
   meta = with stdenv.lib; {
     platforms = platforms.linux;
diff --git a/pkgs/desktops/gnome-3/misc/gspell/src.nix b/pkgs/desktops/gnome-3/misc/gspell/src.nix
index fd55e654d551..9ae78f39e4e1 100644
--- a/pkgs/desktops/gnome-3/misc/gspell/src.nix
+++ b/pkgs/desktops/gnome-3/misc/gspell/src.nix
@@ -1,10 +1,10 @@
-fetchurl: rec {
-  major = "1.4";
-  minor = "1";
-  name = "gspell-${major}.${minor}";
+# Autogenerated by maintainers/scripts/gnome.sh update
+
+fetchurl: {
+  name = "gspell-1.6.1";
 
   src = fetchurl {
-    url = "mirror://gnome/sources/gspell/${major}/${name}.tar.xz";
-    sha256 = "1ghh1xdzf04mfgb13zqpj88krpa44xv2vbyhm6k017kzrpz8hbs4";
+    url = mirror://gnome/sources/gspell/1.6/gspell-1.6.1.tar.xz;
+    sha256 = "f4d329348775374eec18158f8dcbbacf76f85be5ce002a92d93054ece70ec4de";
   };
 }
diff --git a/pkgs/desktops/gnome-3/misc/libgit2-glib/src.nix b/pkgs/desktops/gnome-3/misc/libgit2-glib/src.nix
index 00e747500c61..d233dc3a4015 100644
--- a/pkgs/desktops/gnome-3/misc/libgit2-glib/src.nix
+++ b/pkgs/desktops/gnome-3/misc/libgit2-glib/src.nix
@@ -1,10 +1,10 @@
 # Autogenerated by maintainers/scripts/gnome.sh update
 
 fetchurl: {
-  name = "libgit2-glib-0.26.0";
+  name = "libgit2-glib-0.26.2";
 
   src = fetchurl {
-    url = mirror://gnome/sources/libgit2-glib/0.26/libgit2-glib-0.26.0.tar.xz;
-    sha256 = "06b16cfcc3a53d9804858618d690e5509e9af2e2245b75f0479cadbbe39745c3";
+    url = mirror://gnome/sources/libgit2-glib/0.26/libgit2-glib-0.26.2.tar.xz;
+    sha256 = "2ad6f20db2e38bbfdb6cb452704fe8a911036b86de82dc75bb0f3b20db40ce9c";
   };
 }
diff --git a/pkgs/desktops/gnome-3/misc/libmediaart/default.nix b/pkgs/desktops/gnome-3/misc/libmediaart/default.nix
index abdcdef99379..2ea7a58ab665 100644
--- a/pkgs/desktops/gnome-3/misc/libmediaart/default.nix
+++ b/pkgs/desktops/gnome-3/misc/libmediaart/default.nix
@@ -4,15 +4,15 @@ let
   majorVersion = "1.9";
 in
 stdenv.mkDerivation rec {
-  name = "libmediaart-${majorVersion}.1";
+  name = "libmediaart-${majorVersion}.4";
 
   src = fetchurl {
     url = "mirror://gnome/sources/libmediaart/${majorVersion}/${name}.tar.xz";
-    sha256 = "0jg9gwxmhdxcbwb5svgkxkd3yl1d14wqzckcgg2swkn81i7al52v";
+    sha256 = "a57be017257e4815389afe4f58fdacb6a50e74fd185452b23a652ee56b04813d";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ glib gdk_pixbuf gobjectIntrospection ];
+  nativeBuildInputs = [ pkgconfig gobjectIntrospection ];
+  buildInputs = [ glib gdk_pixbuf ];
 
   meta = with stdenv.lib; {
     description = "Library tasked with managing, extracting and handling media art caches";
diff --git a/pkgs/development/compilers/ats2/default.nix b/pkgs/development/compilers/ats2/default.nix
index 3abd5c8c82a9..6c523ebb4f14 100644
--- a/pkgs/development/compilers/ats2/default.nix
+++ b/pkgs/development/compilers/ats2/default.nix
@@ -3,11 +3,11 @@
 , withContrib ? true }:
 
 let
-  versionPkg = "0.3.0" ;
+  versionPkg = "0.3.7" ;
 
   contrib = fetchurl {
     url = "mirror://sourceforge/ats2-lang/ATS2-Postiats-contrib-${versionPkg}.tgz" ;
-    sha256 = "1s4yscisn9gsr692jmh4y5mz03012pv84cm7l5n51v83wc08fks0" ;
+    sha256 = "1w59ir9ij5bvvnxj6fb1rvzycfqa57i31wmpwawxbsb10bqwzyr6";
   };
 
   postInstallContrib = stdenv.lib.optionalString withContrib
@@ -31,11 +31,9 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "mirror://sourceforge/ats2-lang/ATS2-Postiats-${version}.tgz";
-    sha256 = "1knf03r8a5sis7n8rw54flf1lxfbr3prywxb1czcdp6hsbcd1v1d";
+    sha256 = "19nxyi39fn42sp38kl14a6pvbxq9wr8y405wx0zz7mqb77r0m0h5";
   };
 
-  patches = [ ./install-postiats-contrib.patch ];
-
   buildInputs = [ gmp ];
 
   setupHook = with stdenv.lib;
diff --git a/pkgs/development/compilers/ats2/install-postiats-contrib.patch b/pkgs/development/compilers/ats2/install-postiats-contrib.patch
deleted file mode 100644
index cb280d028b52..000000000000
--- a/pkgs/development/compilers/ats2/install-postiats-contrib.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Install the parts of the contrib that have been moved to Postiats.
-diff -Naur ATS2-Postiats-0.3.0-upstream/Makefile_dist ATS2-Postiats-0.3.0/Makefile_dist
---- ATS2-Postiats-0.3.0-upstream/Makefile_dist	2017-01-20 10:23:54.000000000 -0400
-+++ ATS2-Postiats-0.3.0/Makefile_dist	2017-01-21 13:14:27.614723335 -0400
-@@ -124,12 +124,12 @@
-   cd "$(abs_top_srcdir)" && \
-   $(MKDIR_P) $(PATSLIBHOME2)/bin && \
-   if [ ! -d $(bindir2) ] ; then $(MKDIR_P) $(bindir2) ; fi && \
--  for x in share ccomp prelude libc libats ; do \
-+  for x in share ccomp prelude libc libats contrib atscntrb ; do \
-     find "$$x" -type d -exec $(MKDIR_P) $(PATSLIBHOME2)/\{} \; -print; \
-   done
- 
- install_files_0: install_dirs ; \
--  for x in share ccomp/runtime prelude libc libats ; do \
-+  for x in share ccomp/runtime prelude libc libats contrib atscntrb ; do \
-     cd "$(abs_top_srcdir)" && \
-     $(INSTALL) -d $(PATSLIBHOME2)/"$$x" && \
-     find "$$x" -type l -exec cp -d \{} $(PATSLIBHOME2)/\{} \; -print && \
diff --git a/pkgs/development/compilers/chicken/default.nix b/pkgs/development/compilers/chicken/default.nix
index 792ecc739a50..4a2893c303f4 100644
--- a/pkgs/development/compilers/chicken/default.nix
+++ b/pkgs/development/compilers/chicken/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, makeWrapper, bootstrap-chicken ? null }:
 
 let
-  version = "4.11.0";
+  version = "4.13.0";
   platform = with stdenv;
     if isDarwin then "macosx"
     else if isCygwin then "cygwin"
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://code.call-cc.org/releases/${version}/chicken-${version}.tar.gz";
-    sha256 = "12ddyiikqknpr8h6llsxbg2fz75xnayvcnsvr1cwv8xnjn7jpp73";
+    sha256 = "0hvckhi5gfny3mlva6d7y9pmx7cbwvq0r7mk11k3sdiik9hlkmdd";
   };
 
   setupHook = lib.ifEnable (bootstrap-chicken != null) ./setup-hook.sh;
diff --git a/pkgs/development/compilers/cudatoolkit/default.nix b/pkgs/development/compilers/cudatoolkit/default.nix
index 62b2e7c18508..fd8930bc8547 100644
--- a/pkgs/development/compilers/cudatoolkit/default.nix
+++ b/pkgs/development/compilers/cudatoolkit/default.nix
@@ -94,6 +94,9 @@ let
         # Change the #error on GCC > 4.9 to a #warning.
         sed -i $out/include/host_config.h -e 's/#error\(.*unsupported GNU version\)/#warning\1/'
 
+        # Fix builds with newer glibc version
+        sed -i "1 i#define _BITS_FLOATN_H" "$out/include/host_defines.h"
+
         # Ensure that cmake can find CUDA.
         mkdir -p $out/nix-support
         echo "cmakeFlags+=' -DCUDA_TOOLKIT_ROOT_DIR=$out'" >> $out/nix-support/setup-hook
diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix
index b3e2ff909b7f..4b87beb08794 100644
--- a/pkgs/development/compilers/edk2/default.nix
+++ b/pkgs/development/compilers/edk2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, libuuid, python2, iasl }:
+{ stdenv, fetchFromGitHub, fetchpatch, libuuid, python2, iasl }:
 
 let
   pythonEnv = python2.withPackages(ps: [ps.tkinter]);
@@ -11,16 +11,24 @@ else
   throw "Unsupported architecture";
 
 edk2 = stdenv.mkDerivation {
-  name = "edk2-2014-12-10";
+  name = "edk2-2017-12-05";
 
   src = fetchFromGitHub {
     owner = "tianocore";
     repo = "edk2";
-    rev = "vUDK2017";
-    sha256 = "0sswa028644yr8fbl8j6rhrdm717fj29h4dys3ygklmjhss90a2g";
+    rev = "f71a70e7a4c93a6143d7bad8ab0220a947679697";
+    sha256 = "0k48xfwxcgcim1bhkggc19hilvsxsf5axvvcpmld0ng1fcfg0cr6";
   };
 
-  buildInputs = [ libuuid pythonEnv];
+  patches = [
+    (fetchpatch {
+      name = "short-circuit-the-transfer-of-an-empty-S3_CONTEXT.patch";
+      url = "https://github.com/tianocore/edk2/commit/9e2a8e928995c3b1bb664b73fd59785055c6b5f6";
+      sha256 = "0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73";
+    })
+  ];
+
+  buildInputs = [ libuuid pythonEnv ];
 
   makeFlags = "-C BaseTools";
 
@@ -33,10 +41,13 @@ edk2 = stdenv.mkDerivation {
     mv -v edksetup.sh $out
   '';
 
+  enableParallelBuilding = true;
+
   meta = {
     description = "Intel EFI development kit";
     homepage = https://sourceforge.net/projects/edk2/;
     license = stdenv.lib.licenses.bsd2;
+    branch = "UDK2017";
     platforms = ["x86_64-linux" "i686-linux"];
   };
 
diff --git a/pkgs/development/compilers/fpc/lazarus.nix b/pkgs/development/compilers/fpc/lazarus.nix
index 704d9d5be645..e646debd9d7e 100644
--- a/pkgs/development/compilers/fpc/lazarus.nix
+++ b/pkgs/development/compilers/fpc/lazarus.nix
@@ -8,10 +8,10 @@ stdenv, fetchurl
 let
   s =
   rec {
-    version = "1.6";
-    versionSuffix = ".0-0";
+    version = "1.8.0";
+    versionSuffix = "";
     url = "mirror://sourceforge/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%20${version}/lazarus-${version}${versionSuffix}.tar.gz";
-    sha256 = "1a1w9yibi0rsr51bl7csnq6mr59x0934850kiabs80nr3sz05knb";
+    sha256 = "0i58ngrr1vjyazirfmz0cgikglc02z1m0gcrsfw9awpi3ax8h21j";
     name = "lazarus-${version}";
   };
   buildInputs = [
diff --git a/pkgs/development/compilers/gcc/4.5/default.nix b/pkgs/development/compilers/gcc/4.5/default.nix
index 12739682292b..b41d22f4f539 100644
--- a/pkgs/development/compilers/gcc/4.5/default.nix
+++ b/pkgs/development/compilers/gcc/4.5/default.nix
@@ -25,6 +25,7 @@
 , libpthread ? null, libpthreadCross ? null  # required for GNU/Hurd
 , stripped ? true
 , buildPlatform, hostPlatform, targetPlatform
+, buildPackages
 }:
 
 assert langJava     -> zip != null && unzip != null
@@ -258,6 +259,8 @@ stdenv.mkDerivation ({
       "--with-mpc=${libmpc}"
     ] ++
     optional (libelf != null) "--with-libelf=${libelf}" ++
+    optional (!(crossMingw && crossStageStatic))
+      "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
 
     # Basic configuration
     [
@@ -349,29 +352,32 @@ stdenv.mkDerivation ({
     STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
     CC_FOR_TARGET = "${targetPlatform.config}-gcc";
     CXX_FOR_TARGET = "${targetPlatform.config}-g++";
-    # If we are making a cross compiler, cross != null
-    NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
+
     dontStrip = true;
   };
 
+  NIX_BUILD_CC = buildPackages.stdenv.cc;
 
   # Needed for the cross compilation to work
   AR = "ar";
   LD = "ld";
   CC = "gcc";
 
-  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
-  # the library headers and binaries, regarless of the language being
-  # compiled.
-
-  # Note: When building the Java AWT GTK+ peer, the build system doesn't
-  # honor `--with-gmp' et al., e.g., when building
-  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
-  # add them to $CPATH and $LIBRARY_PATH in this case.
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
+  # `--with-gmp' et al., e.g., when building
+  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
+  # them to $CPATH and $LIBRARY_PATH in this case.
   #
   # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
 
-  CPATH = makeSearchPathOutput "dev" "include" ([]
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
@@ -382,39 +388,38 @@ stdenv.mkDerivation ({
     # On GNU/Hurd glibc refers to Mach & Hurd
     # headers.
     ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
-                 libcCross.propagatedBuildInputs);
+                 libcCross.propagatedBuildInputs
+  ));
 
-  LIBRARY_PATH = makeLibraryPath ([]
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
     ++ optionals javaAwtGtk [ gmp mpfr ]
-    ++ optional (libpthread != null) libpthread);
-
-  EXTRA_TARGET_CFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-idirafter ${libcCross.dev}/include"
-      ]
-      ++ optionals (! crossStageStatic) [
-        "-B${libcCross.out}/lib"
-      ]
-    else null;
-
-  EXTRA_TARGET_LDFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-Wl,-L${libcCross.out}/lib"
-      ]
-      ++ (if crossStageStatic then [
+    ++ optional (libpthread != null) libpthread)
+  );
+
+  EXTRA_TARGET_FLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-idirafter ${libcCross.dev}/include"
+    ] ++ optionals (! crossStageStatic) [
+      "-B${libcCross.out}/lib"
+    ]);
+
+  EXTRA_TARGET_LDFLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-Wl,-L${libcCross.out}/lib"
+    ] ++ (if crossStageStatic then [
         "-B${libcCross.out}/lib"
       ] else [
         "-Wl,-rpath,${libcCross.out}/lib"
         "-Wl,-rpath-link,${libcCross.out}/lib"
-      ])
-      ++ optionals (libpthreadCross != null) [
-        "-L${libpthreadCross}/lib"
-        "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
-      ]
-    else null;
+    ]) ++ optionals (libpthreadCross != null) [
+      "-L${libpthreadCross}/lib"
+      "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
+    ]);
 
   passthru = { inherit langC langCC langAda langFortran langVhdl
       enableMultilib version; isGNU = true; };
diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix
index 51fb1a1c9a1e..8713c174d5a6 100644
--- a/pkgs/development/compilers/gcc/4.8/default.nix
+++ b/pkgs/development/compilers/gcc/4.8/default.nix
@@ -33,6 +33,7 @@
 , gnused ? null
 , darwin ? null
 , buildPlatform, hostPlatform, targetPlatform
+, buildPackages
 }:
 
 assert langJava     -> zip != null && unzip != null
@@ -316,6 +317,8 @@ stdenv.mkDerivation ({
       "--with-mpc=${libmpc}"
     ] ++
     optional (libelf != null) "--with-libelf=${libelf}" ++
+    optional (!(crossMingw && crossStageStatic))
+      "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
 
     # Basic configuration
     [
@@ -372,14 +375,6 @@ stdenv.mkDerivation ({
     # Ada
     optional langAda "--enable-libada" ++
 
-    # Cross-compilation
-    optional (targetPlatform == hostPlatform) (
-      let incDir = if hostPlatform.isDarwin
-                     then "${darwin.usr-include}"
-                     else "${getDev stdenv.cc.libc}/include";
-      in "--with-native-system-header-dir=${incDir}"
-    ) ++
-
     platformFlags ++
     optional (targetPlatform != hostPlatform) crossConfigureFlags ++
     optional (!bootstrap) "--disable-bootstrap" ++
@@ -444,12 +439,12 @@ stdenv.mkDerivation ({
     STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
     CC_FOR_TARGET = "${targetPlatform.config}-gcc";
     CXX_FOR_TARGET = "${targetPlatform.config}-g++";
-    # If we are making a cross compiler, targetPlatform != hostPlatform
-    NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
+
     dontStrip = true;
     buildFlags = "";
   };
 
+  NIX_BUILD_CC = buildPackages.stdenv.cc;
 
   # Needed for the cross compilation to work
   AR = "ar";
@@ -457,18 +452,21 @@ stdenv.mkDerivation ({
   # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
   CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
 
-  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
-  # the library headers and binaries, regarless of the language being
-  # compiled.
-
-  # Note: When building the Java AWT GTK+ peer, the build system doesn't
-  # honor `--with-gmp' et al., e.g., when building
-  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
-  # add them to $CPATH and $LIBRARY_PATH in this case.
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
+  # `--with-gmp' et al., e.g., when building
+  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
+  # them to $CPATH and $LIBRARY_PATH in this case.
   #
   # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
 
-  CPATH = makeSearchPathOutput "dev" "include" ([]
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
@@ -479,39 +477,38 @@ stdenv.mkDerivation ({
     # On GNU/Hurd glibc refers to Mach & Hurd
     # headers.
     ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
-                 libcCross.propagatedBuildInputs);
+                 libcCross.propagatedBuildInputs
+  ));
 
-  LIBRARY_PATH = makeLibraryPath ([]
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
     ++ optionals javaAwtGtk [ gmp mpfr ]
-    ++ optional (libpthread != null) libpthread);
-
-  EXTRA_TARGET_CFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-idirafter ${getDev libcCross}/include"
-      ]
-      ++ optionals (! crossStageStatic) [
-        "-B${libcCross.out}/lib"
-      ]
-    else null;
-
-  EXTRA_TARGET_LDFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-Wl,-L${libcCross.out}/lib"
-      ]
-      ++ (if crossStageStatic then [
+    ++ optional (libpthread != null) libpthread)
+  );
+
+  EXTRA_TARGET_FLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-idirafter ${libcCross.dev}/include"
+    ] ++ optionals (! crossStageStatic) [
+      "-B${libcCross.out}/lib"
+    ]);
+
+  EXTRA_TARGET_LDFLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-Wl,-L${libcCross.out}/lib"
+    ] ++ (if crossStageStatic then [
         "-B${libcCross.out}/lib"
       ] else [
         "-Wl,-rpath,${libcCross.out}/lib"
         "-Wl,-rpath-link,${libcCross.out}/lib"
-      ])
-      ++ optionals (libpthreadCross != null) [
-        "-L${libpthreadCross}/lib"
-        "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
-      ]
-    else null;
+    ]) ++ optionals (libpthreadCross != null) [
+      "-L${libpthreadCross}/lib"
+      "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
+    ]);
 
   passthru =
     { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix
index 57d173c3a144..c338f9c641ee 100644
--- a/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/pkgs/development/compilers/gcc/4.9/default.nix
@@ -33,6 +33,7 @@
 , gnused ? null
 , darwin ? null
 , buildPlatform, hostPlatform, targetPlatform
+, buildPackages
 }:
 
 assert langJava     -> zip != null && unzip != null
@@ -314,6 +315,8 @@ stdenv.mkDerivation ({
       "--with-mpc=${libmpc}"
     ] ++
     optional (libelf != null) "--with-libelf=${libelf}" ++
+    optional (!(crossMingw && crossStageStatic))
+      "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
 
     # Basic configuration
     [
@@ -370,14 +373,6 @@ stdenv.mkDerivation ({
     # Ada
     optional langAda "--enable-libada" ++
 
-    # Cross-compilation
-    optional (targetPlatform == hostPlatform) (
-      let incDir = if hostPlatform.isDarwin
-                     then "${darwin.usr-include}"
-                     else "${getDev stdenv.cc.libc}/include";
-      in "--with-native-system-header-dir=${incDir}"
-    ) ++
-
     platformFlags ++
     optional (targetPlatform != hostPlatform) crossConfigureFlags ++
     optional (!bootstrap) "--disable-bootstrap" ++
@@ -442,12 +437,12 @@ stdenv.mkDerivation ({
     STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
     CC_FOR_TARGET = "${targetPlatform.config}-gcc";
     CXX_FOR_TARGET = "${targetPlatform.config}-g++";
-    # If we are making a cross compiler, targetPlatform != hostPlatform
-    NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
+
     dontStrip = true;
     buildFlags = "";
   };
 
+  NIX_BUILD_CC = buildPackages.stdenv.cc;
 
   # Needed for the cross compilation to work
   AR = "ar";
@@ -455,18 +450,21 @@ stdenv.mkDerivation ({
   # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
   CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
 
-  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
-  # the library headers and binaries, regarless of the language being
-  # compiled.
-
-  # Note: When building the Java AWT GTK+ peer, the build system doesn't
-  # honor `--with-gmp' et al., e.g., when building
-  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
-  # add them to $CPATH and $LIBRARY_PATH in this case.
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
+  # `--with-gmp' et al., e.g., when building
+  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
+  # them to $CPATH and $LIBRARY_PATH in this case.
   #
   # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
 
-  CPATH = makeSearchPathOutput "dev" "include" ([]
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
@@ -477,39 +475,38 @@ stdenv.mkDerivation ({
     # On GNU/Hurd glibc refers to Mach & Hurd
     # headers.
     ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
-                 libcCross.propagatedBuildInputs);
+                 libcCross.propagatedBuildInputs
+  ));
 
-  LIBRARY_PATH = makeLibraryPath ([]
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
     ++ optionals javaAwtGtk [ gmp mpfr ]
-    ++ optional (libpthread != null) libpthread);
-
-  EXTRA_TARGET_CFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-idirafter ${getDev libcCross}/include"
-      ]
-      ++ optionals (! crossStageStatic) [
-        "-B${libcCross.out}/lib"
-      ]
-    else null;
-
-  EXTRA_TARGET_LDFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-Wl,-L${libcCross.out}/lib"
-      ]
-      ++ (if crossStageStatic then [
+    ++ optional (libpthread != null) libpthread)
+  );
+
+  EXTRA_TARGET_FLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-idirafter ${getDev libcCross}/include"
+    ] ++ optionals (! crossStageStatic) [
+      "-B${libcCross.out}/lib"
+    ]);
+
+  EXTRA_TARGET_LDFLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-Wl,-L${libcCross.out}/lib"
+    ] ++ (if crossStageStatic then [
         "-B${libcCross.out}/lib"
       ] else [
         "-Wl,-rpath,${libcCross.out}/lib"
         "-Wl,-rpath-link,${libcCross.out}/lib"
-      ])
-      ++ optionals (libpthreadCross != null) [
-        "-L${libpthreadCross}/lib"
-        "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
-      ]
-    else null;
+    ]) ++ optionals (libpthreadCross != null) [
+      "-L${libpthreadCross}/lib"
+      "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
+    ]);
 
   passthru =
     { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix
index a34d14e88021..552e827ec366 100644
--- a/pkgs/development/compilers/gcc/5/default.nix
+++ b/pkgs/development/compilers/gcc/5/default.nix
@@ -329,6 +329,8 @@ stdenv.mkDerivation ({
       "--with-mpc=${libmpc}"
     ] ++
     optional (libelf != null) "--with-libelf=${libelf}" ++
+    optional (!(crossMingw && crossStageStatic))
+      "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++ 
 
     # Basic configuration
     [
@@ -380,14 +382,6 @@ stdenv.mkDerivation ({
     # Ada
     optional langAda "--enable-libada" ++
 
-    # Cross-compilation
-    optional (targetPlatform == hostPlatform) (
-      let incDir = if hostPlatform.isDarwin
-                     then "${darwin.usr-include}"
-                     else "${getDev stdenv.cc.libc}/include";
-      in "--with-native-system-header-dir=${incDir}"
-    ) ++
-
     platformFlags ++
     optional (targetPlatform != hostPlatform) crossConfigureFlags ++
     optional (!bootstrap) "--disable-bootstrap" ++
@@ -452,12 +446,12 @@ stdenv.mkDerivation ({
     STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
     CC_FOR_TARGET = "${targetPlatform.config}-gcc";
     CXX_FOR_TARGET = "${targetPlatform.config}-g++";
-    # If we are making a cross compiler, targetPlatform != hostPlatform
-    NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
+
     dontStrip = true;
     buildFlags = "";
   };
 
+  NIX_BUILD_CC = buildPackages.stdenv.cc;
 
   # Needed for the cross compilation to work
   AR = "ar";
@@ -465,18 +459,21 @@ stdenv.mkDerivation ({
   # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
   CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
 
-  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
-  # the library headers and binaries, regarless of the language being
-  # compiled.
-
-  # Note: When building the Java AWT GTK+ peer, the build system doesn't
-  # honor `--with-gmp' et al., e.g., when building
-  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
-  # add them to $CPATH and $LIBRARY_PATH in this case.
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
+  # `--with-gmp' et al., e.g., when building
+  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
+  # them to $CPATH and $LIBRARY_PATH in this case.
   #
   # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
 
-  CPATH = makeSearchPathOutput "dev" "include" ([]
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
@@ -487,39 +484,38 @@ stdenv.mkDerivation ({
     # On GNU/Hurd glibc refers to Mach & Hurd
     # headers.
     ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
-                 libcCross.propagatedBuildInputs);
+                 libcCross.propagatedBuildInputs
+  ));
 
-  LIBRARY_PATH = makeLibraryPath ([]
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
     ++ optionals javaAwtGtk [ gmp mpfr ]
-    ++ optional (libpthread != null) libpthread);
-
-  EXTRA_TARGET_CFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-idirafter ${getDev libcCross}/include"
-      ]
-      ++ optionals (! crossStageStatic) [
-        "-B${libcCross.out}/lib"
-      ]
-    else null;
-
-  EXTRA_TARGET_LDFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-Wl,-L${libcCross.out}/lib"
-      ]
-      ++ (if crossStageStatic then [
+    ++ optional (libpthread != null) libpthread)
+  );
+
+  EXTRA_TARGET_FLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-idirafter ${getDev libcCross}/include"
+    ] ++ optionals (! crossStageStatic) [
+      "-B${libcCross.out}/lib"
+    ]);
+
+  EXTRA_TARGET_LDFLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-Wl,-L${libcCross.out}/lib"
+    ] ++ (if crossStageStatic then [
         "-B${libcCross.out}/lib"
       ] else [
         "-Wl,-rpath,${libcCross.out}/lib"
         "-Wl,-rpath-link,${libcCross.out}/lib"
-      ])
-      ++ optionals (libpthreadCross != null) [
-        "-L${libpthreadCross}/lib"
-        "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
-      ]
-    else null;
+    ]) ++ optionals (libpthreadCross != null) [
+      "-L${libpthreadCross}/lib"
+      "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
+    ]);
 
   passthru =
     { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix
index 61e7647f968f..fbc490026067 100644
--- a/pkgs/development/compilers/gcc/6/default.nix
+++ b/pkgs/development/compilers/gcc/6/default.nix
@@ -34,6 +34,7 @@
 , cloog # unused; just for compat with gcc4, as we override the parameter on some places
 , darwin ? null
 , buildPlatform, hostPlatform, targetPlatform
+, buildPackages
 }:
 
 assert langJava     -> zip != null && unzip != null
@@ -330,6 +331,8 @@ stdenv.mkDerivation ({
       "--with-mpc=${libmpc}"
     ] ++
     optional (libelf != null) "--with-libelf=${libelf}" ++
+    optional (!(crossMingw && crossStageStatic))
+      "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
 
     # Basic configuration
     [
@@ -381,14 +384,6 @@ stdenv.mkDerivation ({
     # Ada
     optional langAda "--enable-libada" ++
 
-    # Cross-compilation
-    optional (targetPlatform == hostPlatform) (
-      let incDir = if hostPlatform.isDarwin
-                     then "${darwin.usr-include}"
-                     else "${getDev stdenv.cc.libc}/include";
-      in "--with-native-system-header-dir=${incDir}"
-    ) ++
-
     platformFlags ++
     optional (targetPlatform != hostPlatform) crossConfigureFlags ++
     optional (!bootstrap) "--disable-bootstrap" ++
@@ -452,12 +447,12 @@ stdenv.mkDerivation ({
     STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
     CC_FOR_TARGET = "${targetPlatform.config}-gcc";
     CXX_FOR_TARGET = "${targetPlatform.config}-g++";
-    # If we are making a cross compiler, targetPlatform != hostPlatform
-    NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
+
     dontStrip = true;
     buildFlags = "";
   };
 
+  NIX_BUILD_CC = buildPackages.stdenv.cc;
 
   # Needed for the cross compilation to work
   AR = "ar";
@@ -465,18 +460,21 @@ stdenv.mkDerivation ({
   # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
   CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
 
-  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
-  # the library headers and binaries, regarless of the language being
-  # compiled.
-
-  # Note: When building the Java AWT GTK+ peer, the build system doesn't
-  # honor `--with-gmp' et al., e.g., when building
-  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
-  # add them to $CPATH and $LIBRARY_PATH in this case.
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
+  # `--with-gmp' et al., e.g., when building
+  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
+  # them to $CPATH and $LIBRARY_PATH in this case.
   #
   # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
 
-  CPATH = makeSearchPathOutput "dev" "include" ([]
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
@@ -487,39 +485,38 @@ stdenv.mkDerivation ({
     # On GNU/Hurd glibc refers to Mach & Hurd
     # headers.
     ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
-                 libcCross.propagatedBuildInputs);
+                 libcCross.propagatedBuildInputs
+  ));
 
-  LIBRARY_PATH = makeLibraryPath ([]
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
     ++ optionals javaAwtGtk [ gmp mpfr ]
-    ++ optional (libpthread != null) libpthread);
-
-  EXTRA_TARGET_CFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-idirafter ${getDev libcCross}/include"
-      ]
-      ++ optionals (! crossStageStatic) [
-        "-B${libcCross.out}/lib"
-      ]
-    else null;
-
-  EXTRA_TARGET_LDFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-Wl,-L${libcCross.out}/lib"
-      ]
-      ++ (if crossStageStatic then [
+    ++ optional (libpthread != null) libpthread)
+  );
+
+  EXTRA_TARGET_FLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-idirafter ${getDev libcCross}/include"
+    ] ++ optionals (! crossStageStatic) [
+      "-B${libcCross.out}/lib"
+    ]);
+
+  EXTRA_TARGET_LDFLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-Wl,-L${libcCross.out}/lib"
+    ] ++ (if crossStageStatic then [
         "-B${libcCross.out}/lib"
       ] else [
         "-Wl,-rpath,${libcCross.out}/lib"
         "-Wl,-rpath-link,${libcCross.out}/lib"
-      ])
-      ++ optionals (libpthreadCross != null) [
-        "-L${libpthreadCross}/lib"
-        "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
-      ]
-    else null;
+    ]) ++ optionals (libpthreadCross != null) [
+      "-L${libpthreadCross}/lib"
+      "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
+    ]);
 
   passthru =
     { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix
index 48b245c1006f..032a20271ee0 100644
--- a/pkgs/development/compilers/gcc/7/default.nix
+++ b/pkgs/development/compilers/gcc/7/default.nix
@@ -35,6 +35,7 @@
 , darwin ? null
 , flex ? null
 , buildPlatform, hostPlatform, targetPlatform
+, buildPackages
 }:
 
 assert langJava     -> zip != null && unzip != null
@@ -323,6 +324,8 @@ stdenv.mkDerivation ({
       "--with-mpc=${libmpc}"
     ] ++
     optional (libelf != null) "--with-libelf=${libelf}" ++
+    optional (!(crossMingw && crossStageStatic))
+      "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
 
     # Basic configuration
     [
@@ -374,14 +377,6 @@ stdenv.mkDerivation ({
     # Ada
     optional langAda "--enable-libada" ++
 
-    # Cross-compilation
-    optional (targetPlatform == hostPlatform) (
-      let incDir = if hostPlatform.isDarwin
-                     then "${darwin.usr-include}"
-                     else "${getDev stdenv.cc.libc}/include";
-      in "--with-native-system-header-dir=${incDir}"
-    ) ++
-
     platformFlags ++
     optional (targetPlatform != hostPlatform) crossConfigureFlags ++
     optional (!bootstrap) "--disable-bootstrap" ++
@@ -446,12 +441,12 @@ stdenv.mkDerivation ({
     STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
     CC_FOR_TARGET = "${targetPlatform.config}-gcc";
     CXX_FOR_TARGET = "${targetPlatform.config}-g++";
-    # If we are making a cross compiler, targetPlatform != hostPlatform
-    NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
+
     dontStrip = true;
     buildFlags = "";
   };
 
+  NIX_BUILD_CC = buildPackages.stdenv.cc;
 
   # Needed for the cross compilation to work
   AR = "ar";
@@ -459,18 +454,21 @@ stdenv.mkDerivation ({
   # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
   CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
 
-  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
-  # the library headers and binaries, regarless of the language being
-  # compiled.
-
-  # Note: When building the Java AWT GTK+ peer, the build system doesn't
-  # honor `--with-gmp' et al., e.g., when building
-  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
-  # add them to $CPATH and $LIBRARY_PATH in this case.
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
+  # `--with-gmp' et al., e.g., when building
+  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
+  # them to $CPATH and $LIBRARY_PATH in this case.
   #
   # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
 
-  CPATH = makeSearchPathOutput "dev" "include" ([]
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
@@ -481,39 +479,38 @@ stdenv.mkDerivation ({
     # On GNU/Hurd glibc refers to Mach & Hurd
     # headers.
     ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
-                 libcCross.propagatedBuildInputs);
+                 libcCross.propagatedBuildInputs
+  ));
 
-  LIBRARY_PATH = makeLibraryPath ([]
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
     ++ optionals javaAwtGtk [ gmp mpfr ]
-    ++ optional (libpthread != null) libpthread);
-
-  EXTRA_TARGET_CFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-idirafter ${getDev libcCross}/include"
-      ]
-      ++ optionals (! crossStageStatic) [
-        "-B${libcCross.out}/lib"
-      ]
-    else null;
-
-  EXTRA_TARGET_LDFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-Wl,-L${libcCross.out}/lib"
-      ]
-      ++ (if crossStageStatic then [
+    ++ optional (libpthread != null) libpthread)
+  );
+
+  EXTRA_TARGET_FLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-idirafter ${getDev libcCross}/include"
+    ] ++ optionals (! crossStageStatic) [
+      "-B${libcCross.out}/lib"
+    ]);
+
+  EXTRA_TARGET_LDFLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-Wl,-L${libcCross.out}/lib"
+    ] ++ (if crossStageStatic then [
         "-B${libcCross.out}/lib"
       ] else [
         "-Wl,-rpath,${libcCross.out}/lib"
         "-Wl,-rpath-link,${libcCross.out}/lib"
-      ])
-      ++ optionals (libpthreadCross != null) [
-        "-L${libpthreadCross}/lib"
-        "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
-      ]
-    else null;
+    ]) ++ optionals (libpthreadCross != null) [
+      "-L${libpthreadCross}/lib"
+      "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
+    ]);
 
   passthru =
     { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
diff --git a/pkgs/development/compilers/gcc/builder.sh b/pkgs/development/compilers/gcc/builder.sh
index ee56425f00b4..d21755d7b1dc 100644
--- a/pkgs/development/compilers/gcc/builder.sh
+++ b/pkgs/development/compilers/gcc/builder.sh
@@ -1,8 +1,12 @@
 source $stdenv/setup
 
 
-export NIX_FIXINC_DUMMY=$NIX_BUILD_TOP/dummy
-mkdir $NIX_FIXINC_DUMMY
+oldOpts="$(shopt -po nounset)" || true
+set -euo pipefail
+
+
+export NIX_FIXINC_DUMMY="$NIX_BUILD_TOP/dummy"
+mkdir "$NIX_FIXINC_DUMMY"
 
 
 if test "$staticCompiler" = "1"; then
@@ -13,141 +17,125 @@ fi
 
 
 # GCC interprets empty paths as ".", which we don't want.
-if test -z "$CPATH"; then unset CPATH; fi
-if test -z "$LIBRARY_PATH"; then unset LIBRARY_PATH; fi
-echo "\$CPATH is \`$CPATH'"
-echo "\$LIBRARY_PATH is \`$LIBRARY_PATH'"
+if test -z "${CPATH-}"; then unset CPATH; fi
+if test -z "${LIBRARY_PATH-}"; then unset LIBRARY_PATH; fi
+echo "\$CPATH is \`${CPATH-}'"
+echo "\$LIBRARY_PATH is \`${LIBRARY_PATH-}'"
 
 if test "$noSysDirs" = "1"; then
 
-    if test -e $NIX_CC/nix-support/orig-libc; then
-
-        # Figure out what extra flags to pass to the gcc compilers
-        # being generated to make sure that they use our glibc.
-        extraFlags="$(cat $NIX_CC/nix-support/libc-cflags)"
-        extraLDFlags="$(cat $NIX_CC/nix-support/libc-ldflags) $(cat $NIX_CC/nix-support/libc-ldflags-before || true)"
+    declare \
+        EXTRA_BUILD_FLAGS EXTRA_FLAGS EXTRA_TARGET_FLAGS \
+        EXTRA_BUILD_LDFLAGS EXTRA_TARGET_LDFLAGS
 
-        # Use *real* header files, otherwise a limits.h is generated
-        # that does not include Glibc's limits.h (notably missing
-        # SSIZE_MAX, which breaks the build).
-        export NIX_FIXINC_DUMMY=$libc_dev/include
-
-        # The path to the Glibc binaries such as `crti.o'.
-        glibc_libdir="$(cat $NIX_CC/nix-support/orig-libc)/lib"
-
-    else
-        # Hack: support impure environments.
-        extraFlags="-isystem /usr/include"
-        extraLDFlags="-L/usr/lib64 -L/usr/lib"
-        glibc_libdir="/usr/lib"
-        export NIX_FIXINC_DUMMY=/usr/include
-    fi
+    for pre in 'BUILD_' ''; do
+        curCC="NIX_${pre}CC"
+        curFIXINC="NIX_${pre}FIXINC_DUMMY"
 
-    extraFlags="-I$NIX_FIXINC_DUMMY $extraFlags"
-    extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags"
+        declare -a extraFlags=() extraLDFlags=()
+        if [[ -e "${!curCC}/nix-support/orig-libc" ]]; then
+            # Figure out what extra flags to pass to the gcc compilers being
+            # generated to make sure that they use our glibc.
+            extraFlags=($(cat "${!curCC}/nix-support/libc-cflags"))
+            extraLDFlags=($(cat "${!curCC}/nix-support/libc-ldflags") $(cat "${!curCC}/nix-support/libc-ldflags-before" || true))
 
-    # BOOT_CFLAGS defaults to `-g -O2'; since we override it below,
-    # make sure to explictly add them so that files compiled with the
-    # bootstrap compiler are optimized and (optionally) contain
-    # debugging information (info "(gccinstall) Building").
-    if test -n "$dontStrip"; then
-        extraFlags="-O2 -g $extraFlags"
-    else
-        # Don't pass `-g' at all; this saves space while building.
-        extraFlags="-O2 $extraFlags"
-    fi
+            # The path to the Glibc binaries such as `crti.o'.
+            glibc_libdir="$(cat "${!curCC}/nix-support/orig-libc")/lib"
+            glibc_devdir="$(cat "${!curCC}/nix-support/orig-libc-dev")"
 
-    EXTRA_FLAGS="$extraFlags"
-    for i in $extraLDFlags; do
-        EXTRA_LDFLAGS="$EXTRA_LDFLAGS -Wl,$i"
-    done
+            # Use *real* header files, otherwise a limits.h is generated that
+            # does not include Glibc's limits.h (notably missing SSIZE_MAX,
+            # which breaks the build).
+            declare NIX_${pre}FIXINC_DUMMY="$glibc_devdir/include"
+        else
+            # Hack: support impure environments.
+            extraFlags=("-isystem" "/usr/include")
+            extraLDFlags=("-L/usr/lib64" "-L/usr/lib")
+            glibc_libdir="/usr/lib"
+            declare NIX_${pre}FIXINC_DUMMY=/usr/include
+        fi
 
-    if test -n "$targetConfig"; then
-        # Cross-compiling, we need gcc not to read ./specs in order to build
-        # the g++ compiler (after the specs for the cross-gcc are created).
-        # Having LIBRARY_PATH= makes gcc read the specs from ., and the build
-        # breaks. Having this variable comes from the default.nix code to bring
-        # gcj in.
-        unset LIBRARY_PATH
-        unset CPATH
-    else
-        if test -z "$NIX_CC_CROSS"; then
-            EXTRA_TARGET_CFLAGS="$EXTRA_FLAGS"
-            EXTRA_TARGET_CXXFLAGS="$EXTRA_FLAGS"
-            EXTRA_TARGET_LDFLAGS="$EXTRA_LDFLAGS"
+        extraFlags=("-I${!curFIXINC}"
+                    "${extraFlags[@]}")
+        extraLDFlags=("-L$glibc_libdir" "-rpath" "$glibc_libdir"
+                      "${extraLDFlags[@]}")
+
+        # BOOT_CFLAGS defaults to `-g -O2'; since we override it below, make
+        # sure to explictly add them so that files compiled with the bootstrap
+        # compiler are optimized and (optionally) contain debugging information
+        # (info "(gccinstall) Building").
+        if test -n "${dontStrip-}"; then
+            extraFlags=("-O2" "-g" "${extraFlags[@]}")
         else
-            # This the case of cross-building the gcc.
-            # We need special flags for the target, different than those of the build
-            # Assertion:
-            test -e $NIX_CC_CROSS/nix-support/orig-libc
+            # Don't pass `-g' at all; this saves space while building.
+            extraFlags=("-O2" "${extraFlags[@]}")
+        fi
 
-            # Figure out what extra flags to pass to the gcc compilers
-            # being generated to make sure that they use our glibc.
-            extraFlags="$(cat $NIX_CC_CROSS/nix-support/libc-cflags)"
-            extraLDFlags="$(cat $NIX_CC_CROSS/nix-support/libc-ldflags) $(cat $NIX_CC_CROSS/nix-support/libc-ldflags-before)"
+        declare EXTRA_${pre}FLAGS="${extraFlags[*]}"
+        for i in "${extraLDFlags[@]}"; do
+            declare EXTRA_${pre}LDFLAGS+=" -Wl,$i"
+        done
+    done
 
-            # The path to the Glibc binaries such as `crti.o'.
-            glibc_dir="$(cat $NIX_CC_CROSS/nix-support/orig-libc)"
-            glibc_libdir="$glibc_dir/lib"
-            glibc_devdir="$(cat $NIX_CC_CROSS/nix-support/orig-libc-dev)"
-            configureFlags="$configureFlags --with-native-system-header-dir=$glibc_devdir/include"
-
-            # Use *real* header files, otherwise a limits.h is generated
-            # that does not include Glibc's limits.h (notably missing
-            # SSIZE_MAX, which breaks the build).
-            NIX_FIXINC_DUMMY_CROSS="$glibc_devdir/include"
-
-            extraFlags="-I$NIX_FIXINC_DUMMY_CROSS $extraFlags"
-            extraLDFlags="-L$glibc_libdir -rpath $glibc_libdir $extraLDFlags"
-
-            EXTRA_TARGET_CFLAGS="$extraFlags"
-            for i in $extraLDFlags; do
-                EXTRA_TARGET_LDFLAGS="$EXTRA_TARGET_LDFLAGS -Wl,$i"
-            done
-        fi
+    if test -z "${targetConfig-}"; then
+        # host = target, so the flags are the same
+        EXTRA_TARGET_FLAGS="$EXTRA_FLAGS"
+        EXTRA_TARGET_LDFLAGS="$EXTRA_LDFLAGS"
     fi
 
     # CFLAGS_FOR_TARGET are needed for the libstdc++ configure script to find
     # the startfiles.
     # FLAGS_FOR_TARGET are needed for the target libraries to receive the -Bxxx
     # for the startfiles.
-    makeFlagsArray+=( \
-        NATIVE_SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
-        SYSTEM_HEADER_DIR="$NIX_FIXINC_DUMMY" \
-        CFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
-        CXXFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
-        CFLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
-        CXXFLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
-        FLAGS_FOR_TARGET="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
-        LDFLAGS_FOR_BUILD="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
-        LDFLAGS_FOR_TARGET="$EXTRA_TARGET_LDFLAGS $EXTRA_TARGET_LDFLAGS" \
+    makeFlagsArray+=(
+        "BUILD_SYSTEM_HEADER_DIR=$NIX_BUILD_FIXINC_DUMMY"
+        "SYSTEM_HEADER_DIR=$NIX_BUILD_FIXINC_DUMMY"
+        "NATIVE_SYSTEM_HEADER_DIR=$NIX_FIXINC_DUMMY"
+
+        "LDFLAGS_FOR_BUILD=$EXTRA_BUILD_LDFLAGS"
+        #"LDFLAGS=$EXTRA_LDFLAGS"
+        "LDFLAGS_FOR_TARGET=$EXTRA_TARGET_LDFLAGS"
+
+        "CFLAGS_FOR_BUILD=$EXTRA_BUILD_FLAGS $EXTRA_BUILD_LDFLAGS"
+        "CXXFLAGS_FOR_BUILD=$EXTRA_BUILD_FLAGS $EXTRA_BUILD_LDFLAGS"
+        "FLAGS_FOR_BUILD=$EXTRA_BUILD_FLAGS $EXTRA_BUILD_LDFLAGS"
+
+        # It seems there is a bug in GCC 5
+        #"CFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
+        #"CXXFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
+
+        "CFLAGS_FOR_TARGET=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
+        "CXXFLAGS_FOR_TARGET=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
+        "FLAGS_FOR_TARGET=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
+    )
+
+    if test -z "${targetConfig-}"; then
+        makeFlagsArray+=(
+            "BOOT_CFLAGS=$EXTRA_FLAGS $EXTRA_LDFLAGS"
+            "BOOT_LDFLAGS=$EXTRA_TARGET_FLAGS $EXTRA_TARGET_LDFLAGS"
         )
-
-    if test -z "$targetConfig"; then
-        makeFlagsArray+=( \
-            BOOT_CFLAGS="$EXTRA_FLAGS $EXTRA_LDFLAGS" \
-            BOOT_LDFLAGS="$EXTRA_TARGET_CFLAGS $EXTRA_TARGET_LDFLAGS" \
-            )
     fi
 
-    if test -n "$targetConfig" -a "$crossStageStatic" == 1; then
+    if test -n "${targetConfig-}" -a "$crossStageStatic" == 1; then
         # We don't want the gcc build to assume there will be a libc providing
         # limits.h in this stagae
-        makeFlagsArray+=( \
-            LIMITS_H_TEST=false \
-            )
+        makeFlagsArray+=(
+            'LIMITS_H_TEST=false'
+        )
     else
-        makeFlagsArray+=( \
-            LIMITS_H_TEST=true \
-            )
+        makeFlagsArray+=(
+            'LIMITS_H_TEST=true'
+        )
     fi
 fi
 
-if test -n "$targetConfig"; then
+if test -n "${targetConfig-}"; then
     # The host strip will destroy some important details of the objects
     dontStrip=1
 fi
 
+eval "$oldOpts"
+
 providedPreConfigure="$preConfigure";
 preConfigure() {
     if test -n "$newlibSrc"; then
diff --git a/pkgs/development/compilers/gcc/snapshot/default.nix b/pkgs/development/compilers/gcc/snapshot/default.nix
index 981ac44d1b19..f2f8eeb09a5e 100644
--- a/pkgs/development/compilers/gcc/snapshot/default.nix
+++ b/pkgs/development/compilers/gcc/snapshot/default.nix
@@ -35,6 +35,7 @@
 , darwin ? null
 , flex ? null
 , buildPlatform, hostPlatform, targetPlatform
+, buildPackages
 }:
 
 assert langJava     -> zip != null && unzip != null
@@ -310,6 +311,8 @@ stdenv.mkDerivation ({
       "--with-mpc=${libmpc}"
     ] ++
     optional (libelf != null) "--with-libelf=${libelf}" ++
+    optional (!(crossMingw && crossStageStatic))
+      "--with-native-system-header-dir=${getDev stdenv.cc.libc}/include" ++
 
     # Basic configuration
     [
@@ -361,14 +364,6 @@ stdenv.mkDerivation ({
     # Ada
     optional langAda "--enable-libada" ++
 
-    # Cross-compilation
-    optional (targetPlatform == hostPlatform) (
-      let incDir = if hostPlatform.isDarwin
-                     then "${darwin.usr-include}"
-                     else "${getDev stdenv.cc.libc}/include";
-      in "--with-native-system-header-dir=${incDir}"
-    ) ++
-
     platformFlags ++
     optional (targetPlatform != hostPlatform) crossConfigureFlags ++
     optional (!bootstrap) "--disable-bootstrap" ++
@@ -433,12 +428,12 @@ stdenv.mkDerivation ({
     STRIP_FOR_TARGET = "${targetPlatform.config}-strip";
     CC_FOR_TARGET = "${targetPlatform.config}-gcc";
     CXX_FOR_TARGET = "${targetPlatform.config}-g++";
-    # If we are making a cross compiler, targetPlatform != hostPlatform
-    NIX_CC_CROSS = optionalString (targetPlatform == hostPlatform) builtins.toString stdenv.cc;
+
     dontStrip = true;
     buildFlags = "";
   };
 
+  NIX_BUILD_CC = buildPackages.stdenv.cc;
 
   # Needed for the cross compilation to work
   AR = "ar";
@@ -446,18 +441,21 @@ stdenv.mkDerivation ({
   # http://gcc.gnu.org/install/specific.html#x86-64-x-solaris210
   CC = if stdenv.system == "x86_64-solaris" then "gcc -m64" else "gcc";
 
-  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find
-  # the library headers and binaries, regarless of the language being
-  # compiled.
-
-  # Note: When building the Java AWT GTK+ peer, the build system doesn't
-  # honor `--with-gmp' et al., e.g., when building
-  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just
-  # add them to $CPATH and $LIBRARY_PATH in this case.
+  # Setting $CPATH and $LIBRARY_PATH to make sure both `gcc' and `xgcc' find the
+  # library headers and binaries, regarless of the language being compiled.
+  #
+  # Note: When building the Java AWT GTK+ peer, the build system doesn't honor
+  # `--with-gmp' et al., e.g., when building
+  # `libjava/classpath/native/jni/java-math/gnu_java_math_GMP.c', so we just add
+  # them to $CPATH and $LIBRARY_PATH in this case.
   #
   # Likewise, the LTO code doesn't find zlib.
+  #
+  # Cross-compiling, we need gcc not to read ./specs in order to build the g++
+  # compiler (after the specs for the cross-gcc are created). Having
+  # LIBRARY_PATH= makes gcc read the specs from ., and the build breaks.
 
-  CPATH = makeSearchPathOutput "dev" "include" ([]
+  CPATH = optionals (targetPlatform == hostPlatform) (makeSearchPathOutput "dev" "include" ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
@@ -468,39 +466,38 @@ stdenv.mkDerivation ({
     # On GNU/Hurd glibc refers to Mach & Hurd
     # headers.
     ++ optionals (libcCross != null && libcCross ? propagatedBuildInputs)
-                 libcCross.propagatedBuildInputs);
+                 libcCross.propagatedBuildInputs
+  ));
 
-  LIBRARY_PATH = makeLibraryPath ([]
+  LIBRARY_PATH = optionals (targetPlatform == hostPlatform) (makeLibraryPath ([]
     ++ optional (zlib != null) zlib
     ++ optional langJava boehmgc
     ++ optionals javaAwtGtk xlibs
     ++ optionals javaAwtGtk [ gmp mpfr ]
-    ++ optional (libpthread != null) libpthread);
-
-  EXTRA_TARGET_CFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-idirafter ${getDev libcCross}/include"
-      ]
-      ++ optionals (! crossStageStatic) [
-        "-B${libcCross.out}/lib"
-      ]
-    else null;
-
-  EXTRA_TARGET_LDFLAGS =
-    if targetPlatform != hostPlatform && libcCross != null then [
-        "-Wl,-L${libcCross.out}/lib"
-      ]
-      ++ (if crossStageStatic then [
+    ++ optional (libpthread != null) libpthread)
+  );
+
+  EXTRA_TARGET_FLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-idirafter ${getDev libcCross}/include"
+    ] ++ optionals (! crossStageStatic) [
+      "-B${libcCross.out}/lib"
+    ]);
+
+  EXTRA_TARGET_LDFLAGS = optionals
+    (targetPlatform != hostPlatform && libcCross != null)
+    ([
+      "-Wl,-L${libcCross.out}/lib"
+    ] ++ (if crossStageStatic then [
         "-B${libcCross.out}/lib"
       ] else [
         "-Wl,-rpath,${libcCross.out}/lib"
         "-Wl,-rpath-link,${libcCross.out}/lib"
-      ])
-      ++ optionals (libpthreadCross != null) [
-        "-L${libpthreadCross}/lib"
-        "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
-      ]
-    else null;
+    ]) ++ optionals (libpthreadCross != null) [
+      "-L${libpthreadCross}/lib"
+      "-Wl,${libpthreadCross.TARGET_LDFLAGS}"
+    ]);
 
   passthru =
     { inherit langC langCC langObjC langObjCpp langAda langFortran langVhdl langGo version; isGNU = true; };
diff --git a/pkgs/development/compilers/jetbrains-jdk/default.nix b/pkgs/development/compilers/jetbrains-jdk/default.nix
index 383283309ddf..7f23a4d507e7 100644
--- a/pkgs/development/compilers/jetbrains-jdk/default.nix
+++ b/pkgs/development/compilers/jetbrains-jdk/default.nix
@@ -16,7 +16,7 @@ let drv = stdenv.mkDerivation rec {
       sha256 = "1768f02i3dxdbxn8n29d522h8v0mkgnhpb8ixzq5p54vwjmfl6md";
     }
   else
-    abort "unsupported system: ${stdenv.system}";
+    throw "unsupported system: ${stdenv.system}";
 
   nativeBuildInputs = [ file ];
 
diff --git a/pkgs/development/compilers/kotlin/default.nix b/pkgs/development/compilers/kotlin/default.nix
index 8f2bbefc2bc7..5015f4900774 100644
--- a/pkgs/development/compilers/kotlin/default.nix
+++ b/pkgs/development/compilers/kotlin/default.nix
@@ -1,15 +1,14 @@
 { stdenv, fetchurl, makeWrapper, jre, unzip }:
 
 let
-  version = "1.1.60";
-  release = "55";
+  version = "1.2.10";
 in stdenv.mkDerivation rec {
   inherit version;
   name = "kotlin-${version}";
 
   src = fetchurl {
-    url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}-release-${release}.zip";
-    sha256 = "04vlhpc92pg0bcgapd5w2b3039sgv52km8i0m4mc5yf0ik6hx1s9";
+    url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
+    sha256 = "1qr61i5fjd5p7bi05hplagmcxgb05k4xdh5yjjvaq8cij5l4b1wm";
   };
 
   propagatedBuildInputs = [ jre ] ;
diff --git a/pkgs/development/compilers/mono/5.0.nix b/pkgs/development/compilers/mono/5.0.nix
index 911ba0ae02a7..d10d6e3e6053 100644
--- a/pkgs/development/compilers/mono/5.0.nix
+++ b/pkgs/development/compilers/mono/5.0.nix
@@ -4,4 +4,5 @@ callPackage ./generic-cmake.nix (rec {
   inherit Foundation libobjc;
   version = "5.0.1.1";
   sha256 = "064pgsmanpybpbhpam9jv9n8aicx6mlyb7a91yzh3kcksmqsxmj8";
+  enableParallelBuilding = false; # #32386, https://hydra.nixos.org/build/65820147
 })
diff --git a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
index fadae3eb5925..554c322781fc 100644
--- a/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
+++ b/pkgs/development/compilers/oraclejdk/jdk-linux-base.nix
@@ -44,7 +44,7 @@ assert stdenv.system == "i686-linux"
 assert swingSupport -> xorg != null;
 
 let
-  abortArch = abort "jdk requires i686-linux, x86_64-linux, aarch64-linux or armv7l-linux";
+  abortArch = throw "Unsupported system: ${stdenv.system}";
 
   /**
    * The JRE libraries are in directories that depend on the CPU.
diff --git a/pkgs/development/coq-modules/QuickChick/default.nix b/pkgs/development/coq-modules/QuickChick/default.nix
index af7ef8001d39..2a0c3ade5612 100644
--- a/pkgs/development/coq-modules/QuickChick/default.nix
+++ b/pkgs/development/coq-modules/QuickChick/default.nix
@@ -2,12 +2,6 @@
 
 let param =
   {
-    "8.4" = {
-      version = "20160529";
-      rev = "a9e89f1d4246a787bf1d8873072077a319635c3e";
-      sha256 = "14ng71p890q12xvsj00si2a3fjcbsap2gy0r8sxpw4zndnlq74wa";
-    };
-
     "8.5" = {
       version = "20170512";
       rev = "31eb050ae5ce57ab402db9726fb7cd945a0b4d03";
@@ -21,9 +15,9 @@ let param =
     };
 
     "8.7" = {
-      version = "20171102";
-      rev = "ddf746809c211fa7edfdbfe459d5a7e1cca47a44";
-      sha256 = "0jg3x0w8p088b8369qx492hjpq09f9h2i0li6ph3pny6hdkpdzsi";
+      version = "20171212";
+      rev = "195e550a1cf0810497734356437a1720ebb6d744";
+      sha256 = "0zm23y89z0h4iamy74qk9qi2pz2cj3ga6ygav0w79n0qyqwhxcq1";
     };
 
   }."${coq.coq-version}"
diff --git a/pkgs/development/coq-modules/bedrock/default.nix b/pkgs/development/coq-modules/bedrock/default.nix
deleted file mode 100644
index fc3c16d00492..000000000000
--- a/pkgs/development/coq-modules/bedrock/default.nix
+++ /dev/null
@@ -1,39 +0,0 @@
-{stdenv, fetchurl, coq}:
-
-stdenv.mkDerivation rec {
-
-  name = "coq-bedrock-${coq.coq-version}-${version}";
-  version = "20140722";
-
-  src = fetchurl {
-    url = "http://plv.csail.mit.edu/bedrock/bedrock-${version}.tgz";
-    sha256 = "0aaa98q42rsy9hpsxji21bqznizfvf6fplsw6jq42h06j0049k80";
-  };
-
-  buildInputs = [ coq.ocaml coq.camlp5 ];
-  propagatedBuildInputs = [ coq ];
-
-  enableParallelBuilding = true;
-
-  buildPhase = ''
-    make -j$NIX_BUILD_CORES -C src/reification
-    make -j$NIX_BUILD_CORES -C src
-    make -j$NIX_BUILD_CORES -C src native
-    # make -j$NIX_BUILD_CORES -C platform
-    # make -j$NIX_BUILD_CORES -C platform -f Makefile.cito
-  '';
-
-  installPhase = ''
-    COQLIB=$out/lib/coq/${coq.coq-version}/
-    mkdir -p $COQLIB/user-contrib/Bedrock
-    cp -pR src/* $COQLIB/user-contrib/Bedrock
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://plv.csail.mit.edu/bedrock/;
-    description = "A library that turns Coq into a tool much like classical verification systems";
-    maintainers = with maintainers; [ jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-}
diff --git a/pkgs/development/coq-modules/category-theory/default.nix b/pkgs/development/coq-modules/category-theory/default.nix
new file mode 100644
index 000000000000..143e0344cf30
--- /dev/null
+++ b/pkgs/development/coq-modules/category-theory/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchgit, coq, ssreflect }:
+
+let param =
+  {
+    "8.6" = {
+      version = "20171214";
+      rev = "babf9c013506da1dbd67171e4a3ae87fdb7e9d00";
+      sha256 = "16fsf4cggx9s9fkijnpi4g614nmdb2yx7inzqqn070f8p959qcrd";
+    };
+
+    "8.7" = {
+      version = "20171214";
+      rev = "babf9c013506da1dbd67171e4a3ae87fdb7e9d00";
+      sha256 = "16fsf4cggx9s9fkijnpi4g614nmdb2yx7inzqqn070f8p959qcrd";
+    };
+
+  }."${coq.coq-version}"
+; in
+
+stdenv.mkDerivation rec {
+
+  name = "coq${coq.coq-version}-category-theory-${param.version}";
+
+  src = fetchgit {
+    url = git://github.com/jwiegley/category-theory.git;
+    inherit (param) rev sha256;
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 coq.findlib ];
+  propagatedBuildInputs = [ coq ssreflect ];
+
+  enableParallelBuilding = false;
+
+  installPhase = ''
+    make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = git://github.com/jwiegley/category-theory.git;
+    description = "A formalization of category theory in Coq for personal study and practical work";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/contribs/all.nix b/pkgs/development/coq-modules/contribs/all.nix
deleted file mode 100644
index d2ef82c55875..000000000000
--- a/pkgs/development/coq-modules/contribs/all.nix
+++ /dev/null
@@ -1,163 +0,0 @@
-{
-AACTactics = "0v18kf7xjys4g3z8m2sfiyipyn6mz75wxl2zgqk7nv1jr8i03min";
-ABP = "06cn70lbdivn1hxnlsqpiibq9nlwl6dggcn967q6n3nph37m4pdp";
-AILS = "1g0hc27kizrwm6x35j3w721cllfl4rvhiqifn3ljy868mwxwsiva";
-AMM11262 = "15rxr5bzyswxfznml4vij3pflqm3v2bl1xzg9m1p5gmd0385zh6l";
-ATBR = "1xfhc70m9qm51gwi7cls8znx37y5cp1m0wak1h0r51g1d2lxr7a6";
-Additions = "0bhl1wqbqigq0m6zj1yhdm5j0rsn75xy510kz9qy4dv5277wc7ab";
-Algebra = "061szlbg5zh5h0ksgmw34hqrvqy6794p3r1ijg0xi8mqa2wpbjd8";
-Angles = "1grqx88mibz4lg7k9ba89vpg4kwrm3s87wy0ls39i3d3wgx18n97";
-AreaMethod = "07d86p5xbnhbrily18hda0hymf3zx8yhw905plmrqyfbcc6x5531";
-Automata = "0g75gjdj79ysiq1pwqk658jxs2z1l8pk702iz69008vkjzbzkhvm";
-AxiomaticABP = "19x16dgsqyw2pflza8cgv29585a6yy3r8pz4z8ns3r7qhpp1449b";
-BDDs = "0s5a67w9v1lklph8dm4d9bkd6f9qzfb377gvisr3hslacn9ya8zy";
-Bertrand = "05i6xw9gi5ad78rsw5pfhiqllw9x4q4phfi4ddzlxpsgshiw7d0k";
-Buchberger = "1v7zi62ar4inncbcphalsyaggx8im02j81b0fnpvx2x3kyv2pr94";
-CCS = "1na7902k05z19a727wa7rz0dbf1fhcl53r4zxvcgvg5dasvwfc97";
-CFGV = "13gk597r9n2wcgcbhribsqrp9wb8mmr3qd4zbv2ig8469kng0j4m";
-CTLTCTL = "0il1hhizvd2zvh2bhjaa2f43q1qz5sjfdin00yx5l1a8867wjs05";
-CanonBDDs = "1l9yqj0dfqkq49acsy17cvz4rjj86wjbhsdbr4qw2qvn4shllc23";
-Cantor = "1ys81ivigsbsg5cfx9jvm0qprdwc3jm69xm3whq5v9b6skn958yp";
-CatsInZFC = "06rkhns5gz397mafxina52h9z35r0n5bpryk5yfja0kfiyjvp4cr";
-Checker = "0hvfmpy3w4jj4zi3bm9q2yy4361q0lg0znqa22n5l7hzvi28q796";
-Chinese = "191c1bcslxrjxcxvpcz0mzklrl1cwh0lzkd2nq5m0ch3vxar6rq4";
-Circuits = "1a091g5vvmg579mmbfbvhj0scv7zw4n5brmj8dmiwfayfscdh5vg";
-ClassicalRealizability = "1zgivy679rl3ay9mf5ahs0lzrwfg19pcmz5nqm9hq0dpfn9avd6a";
-CoLoR = "05x1drvvhrspj2wzh8v1abblmb9fxy0yx6gg9y4nldkc24widjr7";
-CoRN = "1wv8y67bm2072bd6i3gbvy4sc665sci5kzd1zwv9n2ffxzhy0l5j";
-Coalgebras = "1wzwadfii9mm11bifjbg6f23qbab1ix3valysgq2b4myxlnpwdfz";
-CoinductiveExamples = "1iw6jsxvshsmn52xac3dspkw8f95214f0dcx0y6gi13ln02h8njy";
-CoinductiveReals = "149nsygwlb80s2805qgn85a6mcp7rxifbicbr84l3nyzilfyr6lk";
-ConCaT = "0537r0lamfz657llarxjl030qw29dnya7rb73kx0bdbyphxszr71";
-ConstructiveGeometry = "0cfz64yciyma6jrskc37md4mnv2vbx9hw7y69vyxzy7xdax55j64";
-Containers = "07pjbnzhh418ypppvfkls2x0ycslgl274a913xwi3rb1wrg6q84g";
-Continuations = "0l35xl9kvmq8l9gx3rmcx11p22inw76m1s18y0dnhc6qnhhkq1qg";
-CoqInCoq = "0d5m71xq66rfaa6xr51bsv9hykzfv4dwpclxpnqc7a7ss1q9ccqz";
-Coqoban = "1xp6wblg31asbqbkvbha94lbzn6xnhl0v5y0f3qh4nbmv6hslc54";
-Counting = "150la62c1j4yg8myr7nrp1qwp4z15rfg788j9vraz5q6f2n8c8ph";
-CoursDeCoq = "1qgc03ngzyd138s2cmcwrwrmyq0lf3z3vwhiaq5p371al34fk0d9";
-#Dblib = "00704xi5348fbw9bc0cy5bqx5w4a7aqwpcwdd3740i15ihk60mrl";
-Demos = "0j5ndysvhsj57971yz7xz5mmnzwymgigr3b9mr6nh9iids98g9vy";
-DescenteInfinie = "0is6kclxhfd9n4sdpfkzm4kcc740ifkylg11b8z90frwq79a8yzb";
-Dictionaries = "13zhjvgl20f0hj2pp0zkczm9pwdgh174248jgbqj87rn5alyr2iy";
-DistributedReferenceCounting = "1kw6fb7rvkkrh5rz1839jwf9hrpnrsdnhjlpx3634d5a5kbbdj6a";
-DomainTheory = "1g39bgyxfj9r51vrmrxhrq1xqr36j5q8x0zgz2a12b0k3fj8bswn";
-Ergo = "0xkza35n3f05gkfywaisnis70zsrkh1kwq5idsb2k0rw8m4hq9ki";
-EuclideanGeometry = "11n8877zksgksdfcj7arjx0zcfhsrvg83lcp6yb2bynvfp80gyzb";
-EulerFormula = "1nhh49rf6wza2m5qmz5l5m24m299qn3v80wqzvf51lybadzll2h6";
-ExactRealArithmetic = "1p32g13sx2z5rj3q6390ym8902gvl5x16wdhgz5i75y44s6kmkb1";
-Exceptions = "0w2b16nr80f70dxllmhbqwfr1aw26rcfbak5bdyc0fna8hqp4q3p";
-FOUnify = "1vwp5rwvs5ng4d13l9jjh4iljasfqmc5jpla8rga4v968bp84nw6";
-FSSecModel = "0fi78vqfrw4vrmdw215ic08rw8y6aia901wqs4f1s9z2idd6m8qy";
-FSets = "1n54s2vr6snh31jnvr79q951vyk0w0w6jrnwnlz9d3vyw47la9js";
-Fairisle = "0gg9x69qr0zflaryniqnl8d34kjdij0i55fcb1f1i5hmrwn2sqn6";
-Fermat4 = "0d5lkkrw3vqw6dip1mrgn8imq861xaipirzwpd35jgdkamds802v";
-FingerTree = "1kzfv97mc9sbprgg76lb5lk71gr4a5q10q8yaj57qw3m5hvmdhmw";
-FiringSquad = "0y2dy75j97x0592dxcbcd00ffwnf61f92yiap68xszv3dixl9i9x";
-Float = "1xmskkfd9w3j0bynlmadsrv997988k17bcs0r3zxaazm7vvw2sci";
-FreeGroups = "00pskmp0kfnnafldzcw8vak5v2n0nsjl9pfbw8qkj1xzzbvym2wk";
-FunctionsInZFC = "1vfs27m5f2cx0q2qjlxj3nim1bv53mk241pqz9mpj4plcj0g838l";
-FundamentalArithmetics = "1vvgl5c7rcg3bxizcjdix0fn20vdqy73ixcvm714llb8p986lan5";
-GC = "11kwn43nm58bv7v3p8xg2ih4x0gvgigz26gzh8l8w3lgmriqmzx0";
-GenericEnvironments = "1w05ysx0rl17fgxq3fc0p7p3h70c94qxa6yq88ppyhwm1cqqgihw";
-Goedel = "0b1dfmxp9q5z2l59yz5bn37m0zz4307kq94a7fs8s0lbbwrgyhrf";
-GraphBasics = "1f2bsfkhlyzjvy6ln62sf6hpy9dh8azrnlfpjq6jn667nfb7cbf6";
-Graphs = "0smhsas27llkmfkn4vs8ygb9w19ci2q4ps0f2q969xv8n8n0bj4z";
-GroupTheory = "141w3zbf7jczbk1lrpz6dnpk8yh1vr4f7kw55siawwaai11bh7c1";
-Groups = "00zmn1q9lz7dz8p5wk34svwki9xwn62xkgnhw4bcx8awlbx1pw3a";
-Hardware = "1bp9bnvlv54ksngmgzyxaqw1idxw5snmwrcifqcd6088w6hd9w1n";
-Hedges = "1abbf8v0i8akmhbi2hmb1l9wxvql275c9mxf0r5lzxigwmf0qrbv";
-HighSchoolGeometry = "09n70n0sb1dxnss9xz7xj2z1070gzxs4ap1h0kjcrfkiqss11fpy";
-HigmanCF = "05qg4ci8bvd6s9nmj80imj3b9kfwy4xzfy8ckr5870505mkzxyxv";
-HigmanNW = "0i3mmyh20iib7pglalf4l2p62qyqa6w0mz557n53aa2zx6l0dw18";
-HigmanS = "1c9db1jrpwzqw0arsiljskx3pcxpc1flkdql87fn55lgypbfz5gk";
-HistoricalExamples = "16alm4cv9hj59jyn1rnmb1dnbwp488wpzbnkq6hrnl5drr78gx08";
-HoareTut = "1mazqhb0hclknnzbr4ka1aafkk36hl6n4vixkf5kfvyymr094d0a";
-Huffman = "1h14qdbmawjn9hw813hsywxz0az80nx620rr35mb9wg8hy4xw7jj";
-IEEE754 = "06xrpzg2q9x2bzm7h16k0czm56sgsdn1rxpdgcl44743q3mvpi5p";
-IPC = "1xcgrln8nn2h98qyqz36d0zszjs33kcclv9vamz8mc163agk6jxy";
-IZF = "12inbpihh35hbrh4prs93r4avxlgsj5019n7bndi4fgn09m839bm";
-Icharate = "0giak87mv7g0312i05r7v06wb8wmfkrd2ai54r4c80497f72d17l";
-IdxAssoc = "0gdaxnwyw8phi97izx0wfbpccql73yjdzqqygc4i6nfw4lwanx38";
-IntMap = "1zmlcqv2mz488vpxa6iwbi6sqcljkmb55mywb5pabjjwjj745jhx";
-JProver = "0vz07sclzx0izwm5klwmd0amxhzqly6aknh876vvh3033jp62ik0";
-JordanCurveTheorem = "0varv6ib4f0l3jjq71rafb071ivzcnyxjb5ri8bf6vbjl4fqr335";
-Karatsuba = "02190l3dl0k6qxi3djr2imy4h31kcr5kj94l2ys3xqg1kjjajcmj";
-Kildall = "0lbby3gd3pwivkhr6v8c73915cswmvh50nj3ch10f0zix8lsxrpa";
-LTL = "0bk4232pa6mkbmxjazknfbnmzh2pcjccr68dkf8a2ndd06yfaii1";
-Lambda = "1wy9r95acwf7srs54y5kgmgl9d48j8b871n4z26xpbhdi2pvv9a4";
-Lambek = "0f6nd3fsxsaij9wypwd3cxmgn3larkxg4xww9c0yvjqxpgc5s552";
-LesniewskiMereology = "11wgw93fxwnbvwmpnscvgg9caakhr3wbvqwzqkk1p8wfslpvf7pj";
-LinAlg = "0gl081rx0iikhaghjny3g04aaqgiv0wq6r6c34qpcr5jc6i40mdr";
-MapleMode = "0a50dx473mmg7ksmghbjqs2rg4334dqdd2rkydicw8fl406z19ab";
-Markov = "06aacr8ghycjm68r36hip4rjhwfnbz7az2k8pa92pakjm0am78lq";
-MathClasses = "1gj6dznlc2ma5b5qn9mlinavlrl4xq18dilzd0l9j8jrxfdk1q7n";
-Maths = "15qbv7dxj4ygmw38gnmyf2kwdmy75a21yf991c8lw6fzx334b4dv";
-Matrices = "1q3683xvsgjqlav6kfxx7y05lvr5gp60hpbx4ypwa0hsl6w14mn0";
-#Micromega = "0h2ybdlbdvy30l5kzkfvp5kwsf236fxd3xi87pl4pl3dzylzsbh4";
-MiniC = "1gg9jinay9i3jbsi8bbwxzr9584wycdadf02c5al5yv281ywjar0";
-MiniCompiler = "0yq0k8c0rp120pfssdwfpmz017vq2w8s0rzk9gls476gywjmdvgf";
-MiniML = "1fd4k6rzn5cr24d11dnyy9jp2wf3n8d8l7q7bxk94lbrj6lhrzw2";
-ModRed = "1khg29cm83npasxqlm13bv2w2kfkn9hrvf5q2wch9l1l4ghys4rk";
-Multiplier = "07bj7j4agq2cvhfbkwgrvg39jlzlj1mzlm0ykqjwljd7hi4f6yv9";
-MutualExclusion = "1j3fmf0zvnxg0yzj956jfpjqccnk9l2393q6as80a5gfqhlb3rcr";
-Nfix = "1mpn1fbx15naa2d5lbcxl88xsgp1p88xx4g94f8cjzhg6kdnz7cc";
-OrbStab = "06gg3d2f9qybs2c49mm7srzqx5r9dxail92bcxdi6lr0k74y75ml";
-OtwayRees = "1d39yxppnpzpn5yxdk6rinrgxwgsnr348cggyhwjmgyjm8mr9gcp";
-PAutomata = "0hlzvdi9kb291g36lgyy3vlpn7i8rphpwjisy3wh19j4yqqc7ddf";
-PTS = "12y9niiks4rzpvzzvgfwc1z37480c4l9nvsmh4wx6gsvpnjqvyl3";
-PTSATR = "10jsfbsdaiqrdgp9vnc84wwkxjyfin35kr1qckbax6599xgyk7vj";
-PTSF = "0yz7sh2d4ldcqblnvb96yyimsb4351qqjl8di1cy785mnxa1zfla";
-Paradoxes = "03b22vhkra038z3nfbv9wpbr63x984qyrfvrg58lwqq87s5kgv1d";
-ParamPi = "1p64yj2pqqvyx5b5xm0pv0pm9lqp7hc5hb3wjnwvzi3qchqf7hwi";
-PersistentUnionFind = "1ljdnsm6h3zfn43vla13ibx42kfvgmy6n9qyfn7cgkcw5yv4fh6m";
-PiCalc = "1af8ws86mqs55dldcpm7x4qhk11k0f8l88z2bv6hylfvy6fpbpiy";
-Pocklington = "18zx1ca3pn3vn763smmrnfi395007ddzicrr0cydrph6g4agdw3g";
-Presburger = "1n3nqrplgx1r2vvpcbp91l02c7zc297fkpsqgx1x1msqrldnac9y";
-Prfx = "1nyh134hlh6cdxpys9kv0ngiiibgigh2mifwf8rdz6aj6xj7dgyv";
-ProjectiveGeometry = "01x409rbh3rqxyz53v0kdixnqqv7b890va04a21862g8bml7ls6k";
-QArith = "0xvkw3d3kgiyw6b255f6zbkali1023a9wmn12ga3bgak24jsa8lg";
-QArithSternBrocot = "1kvzww76nxgq7b3b3v2wrjxaxskfrzk55zpg6mj1jjcpgydfqwjr";
-QuicksortComplexity = "0c5gj65rxnxydspc4jqq20c8v9mjbnjrkjkk220yxymbv5n3nqd1";
-RSA = "0b56ipivbbdwc0w7bp4v4lwl0fhhb73k2b62ybmb3x7alc599mc0";
-RailroadCrossing = "0z5cnw1d8jbg30lc9p1hsgrnjwjc4yhpxl74m2pcjscrrnr01zsf";
-Ramsey = "0sd3cihzfx7mn7wcsng15y4jqvp1ql49fy1ch997wfbchp6515ld";
-Random = "0b7gwz38fbk9j5sfa76c2n4781kcb18r65v9vzz8qigx37gm89w4";
-Rational = "0v1zjcf22ij9daxharmaavwp2msgl77y5ad46lskshpypd1ysrsc";
-RecursiveDefinition = "1y4gy2ksxkvmz16zrnblwd1axi7gdjw171n8xfw4f8400my1qhm0";
-ReflexiveFirstOrder = "156a6kmds25kc645w6kkhn3a4bvryp307b76ghz5m5wv2wsajgrn";
-RegExp = "0gya2kckr6325hykd12vwpbwwf7cf04yyjrr2dvmcc81dkygrwxb";
-RelationAlgebra = "1nrhkvypkk7k48gb18c2q9cwbgy02ldfg6s3j74f5rgff1i6c9in";
-RelationExtraction = "1g6hvmsfal17pppqf9v8zh2i1dph0lj5a1r3xiszqr4biiig09ch";
-ReleasedSsreflect = "17wirznfsizmw6gjb54vk9bp97a3bc1l2sb4gdxfbzvxmabx1a9l";
-Rem = "03559q60ibf4dr1np82341xfrw134d27dx8dim84q9fszr4gy8sx";
-RulerCompassGeometry = "02vm80xvvw22pdxrag3pv5zrhqf8726i9jqsiv4bnjqavj5z2hdr";
-SMC = "0ca3ar1y9nyj5147r18babqsbg2q2ywws8fdi91xb5z9m3i97nv1";
-Schroeder = "0mfbjmw4a48758k88yv01494wnywcp5yamkl394axvvbbna9h8b6";
-SearchTrees = "1jyps6ddm8klmxjm50p2j9i014ij7imy3229pwz3dkzg54gxzzxb";
-Semantics = "157db1y5zgxs9shl7rmqg89gxfa4cqxwlf6qys0jh3j0wsxs8580";
-Shuffle = "14v1m4s9k49w30xrnyncjzgqjcckiga8wd2vnnzy8axrwr9zq7iq";
-SquareMatrices = "07dlykg3w59crc54qqdqxq6hf8rmzvwwfr1g8z8v2l8h4yvfnhfl";
-Ssreflect = "07hv0ixv68d8vrpf9s6gxazxaz5fwpmhqrd6cqw7xp8m8gspxifz";
-Stalmarck = "0vcbkzappq1si4hxbnb9bjkfk82j3jklb8g8ia83h1mdhzr7xdpz";
-Streams = "1spcqnvwayahk12fd13vzh922ypzrjkcmws9gcy12qdqp04h8bnc";
-String = "1wy7g66yq9y8m8y3gq29q7whfdm98g3cj9jxm5yibdzfahfdzzni";
-Subst = "1wxscjhz2y2jv5rdga80ldx2kc954sklip4jsbsd2fim5gwxzl23";
-Sudoku = "0f9h8gwzrdzk5j76nhvlnvpll81zar3pk84r2bf1xfav4yvj8sj7";
-SumOfTwoSquare = "1lxf9wdmvpi0vz4d21p6v9h2vvkk9v8113mvr2cdxd0j43l4ra18";
-Tait = "0bwxl894isndwadbbc3664j51haj3c0i57zmmycnxmhnmsx5pnjj";
-TarskiGeometry = "1vkznrjla943wcyddzyq0pqraiklgn62n1720msxp7cs13ckzpy0";
-ThreeGap = "01nj27xs348126ynsnva1jnvk0nin61xzyi6hwcybj5n46r7nlcv";
-Topology = "1kchddfiksjnkvwdr2ffpqcvmqkd6gf359r09yngf340sa15p5wk";
-TortoiseHareAlgorithm = "1ldm1z48j59lxz60szpy64d0928j4fmygp5npfksvwkvghijchq8";
-TreeAutomata = "0jzfa6rxv7lw1nzrqaxv08h9mpyvc2g4cbdc09ncyhazincrix0z";
-TreeDiameter = "0xdansrbmxrwicvqjjr9ivgs0255nd4ic6jkfv37m1c10vxcjq2n";
-WeakUpTo = "1baaapciaqhyjx8bqa4l04l1vwycyy1bvjr2arrc9myqacifmnpp";
-ZChinese = "0v7gffmcj9yazbbssb2i2iha1dr82b4bl8df9g021s40da49k09k";
-ZF = "0am15lgpn127pzx6ghm76axy75w7m9a8wqa26msgkczjk4x497ni";
-ZFC = "0s11g9rzacng2xg9ygx9lxyqv2apxyirnf7cg3iz95531n46ppn2";
-ZSearchTrees = "1lh6jlzm53jnsg91aa60f6gir6bsx77hg8xwl24771jg8a9b9mcl";
-ZornsLemma = "0dxizjfjx4qsdwc60k6k9fnq8hj4m13vi0llsv9xk3lj3izhpil1";
-lazyPCF = "0wzpv41nv3gdd07g9pr7wydfjv1wxz8kylzmyn07ab38kahhhzh9";
-lc = "05zr0y2ivznmf1ijszq249v4rw6kvdx6jz4s2hhnaiqvx35g4cqg";
-}
diff --git a/pkgs/development/coq-modules/contribs/default.nix b/pkgs/development/coq-modules/contribs/default.nix
deleted file mode 100644
index 289a4d759214..000000000000
--- a/pkgs/development/coq-modules/contribs/default.nix
+++ /dev/null
@@ -1,261 +0,0 @@
-contribs:
-
-let
-  mkContrib = import ./mk-contrib.nix;
-  all = import ./all.nix;
-  overrides = {
-    Additions = self: {
-      patchPhase = ''
-        for p in binary_strat dicho_strat generation log2_implementation shift
-        do
-          substituteInPlace $p.v \
-          --replace 'Require Import Euclid.' 'Require Import Coq.Arith.Euclid.'
-        done
-      '';
-    };
-    BDDs = self: {
-      buildInputs = self.buildInputs ++ [ contribs.IntMap ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../../Cachan/IntMap IntMap
-        32d30
-        < extraction
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-      postInstall = ''
-        mkdir -p $out/bin
-        cp extraction/dyade $out/bin
-      '';
-    };
-    CanonBDDs = self: {
-      patchPhase = ''
-        patch Make <<EOF
-        17d16
-        < rauzy/algorithme1/extraction
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-      postInstall = ''
-        mkdir -p $out/bin
-        cp rauzy/algorithme1/extraction/suresnes $out/bin
-      '';
-    };
-    CoinductiveReals = self: {
-      buildInputs = self.buildInputs ++ [ contribs.QArithSternBrocot ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../QArithSternBrocot QArithSternBrocot
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    CoRN = self: {
-      buildInputs = self.buildInputs ++ [ contribs.MathClasses ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../MathClasses/ MathClasses
-        EOF
-        coq_makefile -f Make -o Makefile.coq
-      '';
-      enableParallelBuilding = true;
-      installFlags = self.installFlags + " -f Makefile.coq";
-    };
-    Counting = self: {
-      postInstall = ''
-        for ext in cma cmxs
-        do
-          cp src/counting_plugin.$ext $out/lib/coq/8.4/user-contrib/Counting/
-        done
-      '';
-    };
-    Ergo = self: {
-      buildInputs = self.buildInputs ++ (with contribs; [ Containers Counting Nfix ]);
-      patchPhase = ''
-        patch Make <<EOF
-        4,9d3
-        < -I ../Containers/src
-        < -R ../Containers/theories Containers
-        < -I ../Nfix/src
-        < -R ../Nfix/theories Nfix
-        < -I ../Counting/src
-        < -R ../Counting/theories Counting
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    FingerTree = self: {
-      patchPhase = ''
-        patch Make <<EOF
-        21d20
-        < extraction
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    FOUnify = self: {
-      patchPhase = ''
-        patch Make <<EOF
-        8c8
-        < -custom "\$(CAMLOPTLINK) -pp '\$(CAMLBIN)\$(CAMLP4)o' -o unif unif.mli unif.ml main.ml" unif.ml unif
-        ---
-        > -custom "\$(CAMLOPTLINK) -pp 'camlp5o' -o unif unif.mli unif.ml main.ml" unif.ml unif
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-      postInstall = ''
-        mkdir -p $out/bin
-        cp unif $out/bin/
-      '';
-    };
-    Goedel = self: {
-      buildInputs = self.buildInputs ++ [ contribs.Pocklington ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../../Eindhoven/Pocklington Pocklington
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    Graphs = self: {
-      buildInputs = self.buildInputs ++ [ contribs.IntMap ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../../Cachan/IntMap IntMap
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-      postInstall = ''
-        mkdir -p $out/bin
-        cp checker $out/bin/
-      '';
-    };
-    IntMap = self: { configurePhase = "coq_makefile -f Make -o Makefile"; };
-    LinAlg = self: {
-      buildInputs = self.buildInputs ++ [ contribs.Algebra ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../../Sophia-Antipolis/Algebra/ Algebra
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    Markov = self: { configurePhase = "coq_makefile -o Makefile -R . Markov markov.v"; };
-    Nfix = self: {
-      postInstall = ''
-        for ext in cma cmxs
-        do
-          cp src/nfix_plugin.$ext $out/lib/coq/8.4/user-contrib/Nfix/
-        done
-      '';
-    };
-    OrbStab = self: {
-      buildInputs = self.buildInputs ++ (with contribs; [ LinAlg Algebra ]);
-      patchPhase = ''
-        patch Make <<EOF
-        2,3d1
-        < -R ../../Sophia-Antipolis/Algebra Algebra
-        < -R ../../Nijmegen/LinAlg LinAlg
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    PTSF = self: {
-      buildInputs = self.buildInputs ++ [ contribs.PTSATR ];
-      patchPhase = ''
-        patch Make <<EOF
-        1d0
-        < -R ../../Paris/PTSATR/ PTSATR
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    RelationExtraction = self: {
-      patchPhase = ''
-        patch Make <<EOF
-        31d30
-        < test
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    Semantics = self: {
-      patchPhase = ''
-        patch Make <<EOF
-        18a19
-        > interp.mli
-        EOF
-      '';
-      configurePhase = ''
-        coq_makefile -f Make -o Makefile
-        make extract_interpret.vo
-        rm -f str_little.ml.d
-      '';
-    };
-    SMC = self: {
-      buildInputs = self.buildInputs ++ [ contribs.IntMap ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../../Cachan/IntMap IntMap
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    Ssreflect = self: {
-      patchPhase = ''
-        substituteInPlace Makefile \
-        --replace "/bin/mkdir" "mkdir"
-      '';
-    };
-    Stalmarck = self: {
-      configurePhase = "coq_makefile -R . Stalmarck *.v staltac.ml4 > Makefile";
-    };
-    Topology = self: {
-      buildInputs = self.buildInputs ++ [ contribs.ZornsLemma ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../ZornsLemma ZornsLemma
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-    TreeAutomata = self: {
-      buildInputs = self.buildInputs ++ [ contribs.IntMap ];
-      patchPhase = ''
-        patch Make <<EOF
-        2d1
-        < -R ../../Cachan/IntMap IntMap
-        EOF
-        coq_makefile -f Make -o Makefile
-      '';
-    };
-  };
-in
-
-callPackage: extra:
-
-builtins.listToAttrs (
-map
-(name:
-  let
-    sha256 = builtins.getAttr name all;
-    override =
-      if builtins.hasAttr name overrides
-      then builtins.getAttr name overrides
-      else x: { };
-  in
-  {
-    inherit name;
-    value = callPackage (mkContrib { inherit name sha256 override; }) extra;
-  }
-)
-(builtins.attrNames all)
-)
diff --git a/pkgs/development/coq-modules/contribs/mk-contrib.nix b/pkgs/development/coq-modules/contribs/mk-contrib.nix
deleted file mode 100644
index 12dd700a6310..000000000000
--- a/pkgs/development/coq-modules/contribs/mk-contrib.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ name, sha256, override }:
-
-{ stdenv, fetchzip, coq }:
-
-let
-  self = {
-
-  name = "coq-contribs-${name}-${coq.coq-version}";
-
-  src = fetchzip {
-    url = "http://www.lix.polytechnique.fr/coq/pylons/contribs/files/${name}/v${coq.coq-version}/${name}.tar.gz";
-    inherit sha256;
-  };
-
-  buildInputs = [ coq.ocaml coq.camlp5 ];
-  propagatedBuildInputs = [ coq ];
-
-  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
-
-  meta = with stdenv.lib; {
-    homepage = "http://www.lix.polytechnique.fr/coq/pylons/contribs/view/${name}/v${coq.coq-version}";
-    maintainers = with maintainers; [ vbgl ];
-    platforms = coq.meta.platforms;
-  };
-
-};
-
-in
-
-stdenv.mkDerivation (self // override self)
diff --git a/pkgs/development/coq-modules/coq-ext-lib/default.nix b/pkgs/development/coq-modules/coq-ext-lib/default.nix
index 5ebf07922776..374979f1d15b 100644
--- a/pkgs/development/coq-modules/coq-ext-lib/default.nix
+++ b/pkgs/development/coq-modules/coq-ext-lib/default.nix
@@ -2,7 +2,6 @@
 
 let param =
   {
-    "8.4" = { version = "0.9.0"; sha256 = "1n3bk003vvbghbrxkhal6drnc0l65jv9y77wd56is3jw9xgiif0w"; };
     "8.5" = { version = "0.9.4"; sha256 = "1y66pamgsdxlq2w1338lj626ln70cwj7k53hxcp933g8fdsa4hp0"; };
     "8.6" = { version = "0.9.5"; sha256 = "1b4cvz3llxin130g13calw5n1zmvi6wdd5yb8a41q7yyn2hd3msg"; };
     "8.7" = { version = "0.9.5"; sha256 = "1b4cvz3llxin130g13calw5n1zmvi6wdd5yb8a41q7yyn2hd3msg"; };
diff --git a/pkgs/development/coq-modules/coq-haskell/default.nix b/pkgs/development/coq-modules/coq-haskell/default.nix
new file mode 100644
index 000000000000..b27fbcc15872
--- /dev/null
+++ b/pkgs/development/coq-modules/coq-haskell/default.nix
@@ -0,0 +1,51 @@
+{ stdenv, fetchgit, coq, ssreflect }:
+
+let param =
+  {
+    "8.5" = {
+      version = "20171215";
+      rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
+      sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
+    };
+
+    "8.6" = {
+      version = "20171215";
+      rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
+      sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
+    };
+
+    "8.7" = {
+      version = "20171215";
+      rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
+      sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
+    };
+
+  }."${coq.coq-version}"
+; in
+
+stdenv.mkDerivation rec {
+
+  name = "coq${coq.coq-version}-coq-haskell-${param.version}";
+
+  src = fetchgit {
+    url = git://github.com/jwiegley/coq-haskell.git;
+    inherit (param) rev sha256;
+  };
+
+  buildInputs = [ coq.ocaml coq.camlp5 coq.findlib ];
+  propagatedBuildInputs = [ coq ssreflect ];
+
+  enableParallelBuilding = false;
+
+  installPhase = ''
+    make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = git://github.com/jwiegley/coq-haskell.git;
+    description = "A library for formalizing Haskell types and functions in Coq";
+    maintainers = with maintainers; [ jwiegley ];
+    platforms = coq.meta.platforms;
+  };
+
+}
diff --git a/pkgs/development/coq-modules/coqeal/default.nix b/pkgs/development/coq-modules/coqeal/default.nix
deleted file mode 100644
index b6d3fe2e34f3..000000000000
--- a/pkgs/development/coq-modules/coqeal/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ stdenv, fetchgit, coq, mathcomp }:
-
-stdenv.mkDerivation rec {
-
-  name = "coq-coqeal-${coq.coq-version}-${version}";
-  version = "7522037d";
-
-  src = fetchgit {
-    url = git://github.com/CoqEAL/CoqEAL.git;
-    rev = "7522037d5e01e651e705d782f4f91fc68c46866e";
-    sha256 = "0kbnsrycd0hjni311i8xc5xinn4ia8rnqi328sdfqzvvyky37fgj";
-  };
-
-  propagatedBuildInputs = [ mathcomp ];
-
-  preConfigure = ''
-    cd theory
-    patch ./Make <<EOF
-    0a1
-    > -R . CoqEAL
-    EOF
-  '';
-
-  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
-
-  meta = with stdenv.lib; {
-    homepage = http://www.maximedenes.fr/content/coqeal-coq-effective-algebra-library;
-    description = "A Coq library for effective algebra, by which is meant formally verified computer algebra algorithms that can be run inside Coq on concrete inputs";
-    maintainers = with maintainers; [ jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-}
diff --git a/pkgs/development/coq-modules/coquelicot/default.nix b/pkgs/development/coq-modules/coquelicot/default.nix
index 84f95d4ddea3..7f5111462bd5 100644
--- a/pkgs/development/coq-modules/coquelicot/default.nix
+++ b/pkgs/development/coq-modules/coquelicot/default.nix
@@ -1,27 +1,11 @@
 { stdenv, fetchurl, which, coq, ssreflect }:
 
-let param =
-  let
-  v2_1_1 = {
-    version = "2.1.1";
-    url = https://gforge.inria.fr/frs/download.php/file/35429/coquelicot-2.1.1.tar.gz;
-    sha256 = "1wxds73h26q03r2xiw8shplh97rsbim2i2s0r7af0fa490bp44km";
-  };
-  v3_0_1 = {
-    version = "3.0.1";
+stdenv.mkDerivation {
+  name = "coq${coq.coq-version}-coquelicot-3.0.1";
+  src = fetchurl {
     url = "https://gforge.inria.fr/frs/download.php/file/37045/coquelicot-3.0.1.tar.gz";
     sha256 = "0hsyhsy2lwqxxx2r8xgi5csmirss42lp9bkb9yy35mnya0w78c8r";
   };
-  in {
-  "8.4" = v2_1_1;
-  "8.5" = v3_0_1;
-  "8.6" = v3_0_1;
-  "8.7" = v3_0_1;
-}."${coq.coq-version}"; in
-
-stdenv.mkDerivation {
-  name = "coq${coq.coq-version}-coquelicot-${param.version}";
-  src = fetchurl { inherit (param) url sha256; };
 
   nativeBuildInputs = [ which ];
   buildInputs = [ coq ];
diff --git a/pkgs/development/coq-modules/domains/darcs_context b/pkgs/development/coq-modules/domains/darcs_context
deleted file mode 100644
index 5dac711c0c0a..000000000000
--- a/pkgs/development/coq-modules/domains/darcs_context
+++ /dev/null
@@ -1,809 +0,0 @@
-
-Context:
-
-[additional facts about limits on cuts
-robdockins@fastmail.fm**20140818025955
- Ignore-this: 6f9c952db425df6ae9d2a14139a8a3d1
-] 
-
-[work on limits
-robdockins@fastmail.fm**20140817221707
- Ignore-this: 9811e0cd669b48f3beb7a56d47cbe3c3
-] 
-
-[finish proving that Q field ops commute with injq
-robdockins@fastmail.fm**20140817060600
- Ignore-this: a1f6c62b39983e6f6f01d28aca5f8534
-] 
-
-[split up realdom.v and perform associated code motion
-robdockins@fastmail.fm**20140817030034
- Ignore-this: 24c74cd459d2ab15dcd3d83ba06f7081
-] 
-
-[recip is canonical and converges
-robdockins@fastmail.fm**20140725211947
- Ignore-this: c100dbd94114cca9576b2a3f46c9ddc7
-] 
-
-[improve the proof that 1 is a unit for multiplication
-robdockins@fastmail.fm**20140724150124
- Ignore-this: c5ec976f8a9858a7ba1f704b4e84d02e
-] 
-
-[complete proof the interval multiplication converges; other minor stuff
-robdockins@fastmail.fm**20140724015132
- Ignore-this: bc717baa4c8f9ec31b821c5cfae5b499
-] 
-
-[further progress in realdom.v
-robdockins@fastmail.fm**20140723004023
- Ignore-this: f33e18d22ae69c9b6209e28151d18017
-] 
-
-[unmessify rational_intervals patch
-robdockins@fastmail.fm**20140721123718
- Ignore-this: 4a125b192a9964a508a1063845e9f160
-] 
-
-[messy updates to rational_intervals.v
-robdockins@fastmail.fm**20140721015810
- Ignore-this: 858dac9c55426167c6f397a71ef3fda5
-] 
-
-[implicit arguments for "fixes"
-robdockins@fastmail.fm**20140721015739
- Ignore-this: 229ecdd48265fc855319141e399bc522
-] 
-
-[metadata
-robdockins@fastmail.fm**20140714201441
- Ignore-this: aa16faaf09c1c404bdc6eaf0d0c39912
-] 
-
-[further beautification
-robdockins@fastmail.fm**20140714200516
- Ignore-this: 47d74c51d9fe130a5ac12706b1ddb1d4
-] 
-
-[start working on the recripricol function
-robdockins@fastmail.fm**20140714180055
- Ignore-this: c7f93cea17f46daa78a1ea14e86dfcaf
-] 
-
-[tweaks to the lambda models
-robdockins@fastmail.fm**20140714180031
- Ignore-this: 219788fe70f42f0f6e60176cab464f19
-] 
-
-[beauty edits in st_lam*
-robdockins@fastmail.fm**20140714180006
- Ignore-this: a40aa7ae00ed27595ee04073918bd028
-] 
-
-[move stuff to rational_intervals.v / define real_mult and prove some properties
-robdockins@fastmail.fm**20140712053232
- Ignore-this: 398c5c03aac9ff37526d4d7c9e1a82c0
-] 
-
-[finish correctness proof for interval multiplication
-robdockins@fastmail.fm**20140711191547
- Ignore-this: c9ab138a0ca43fe0b133b208419bbcc4
-] 
-
-[break out facts about rational intervals
-robdockins@fastmail.fm**20140711012320
- Ignore-this: b7fe6e9377629a89b5debe3019ae1aa
-] 
-
-[updates to ideal completion
-robdockins@fastmail.fm**20140707053800
- Ignore-this: 90d1efbd0e5833d8c83f0df056d7a74c
-] 
-
-[a pile of additional properties in realdom.v
-robdockins@fastmail.fm**20140707053519
- Ignore-this: 7edba1e72a1856f297ef11e698ed989f
-] 
-
-[some properties of converging prereals
-robdockins@fastmail.fm**20140706041401
- Ignore-this: 273bfbb245302becd7ff402831827ffb
-] 
-
-[make realdom compile
-robdockins@fastmail.fm**20140630015439
- Ignore-this: 8bfc8eaeed4a1596450b0bb9ddef9aaa
-] 
-
-[renaming
-robdockins@fastmail.fm**20140630011639
- Ignore-this: a287e083af095790cbf2b48df7a58739
-] 
-
-[reorganize some code
-robdockins@fastmail.fm**20140630011446
- Ignore-this: f1375b9e7ad822cb92f0c83d4001eddd
-] 
-
-[build the retract for realdom
-robdockins@fastmail.fm**20140630001245
- Ignore-this: 4eb9da621588417d1b7b2fc980c7bf70
-] 
-
-[fill out lemmas about cPLT
-robdockins@fastmail.fm**20140630001140
- Ignore-this: add9e45c14621e3d6328684098bf8461
-] 
-
-[more facts about cPLT
-robdockins@fastmail.fm**20140628073731
- Ignore-this: 101a131ed114902924a1707eff7ebc70
-] 
-
-[continuous domains as retracts of bifinite domains
-robdockins@fastmail.fm**20140628035522
- Ignore-this: 5e7c61d49cf8424412b0d94f5fcb5ee6
-] 
-
-[start implementing arithmetic operations in RealDom
-robdockins@fastmail.fm**20140620003249
- Ignore-this: c28479b8a933cba263765bdddb112264
-] 
-
-[define the domain of rational intervals
-robdockins@fastmail.fm**20140619040809
- Ignore-this: 6cbe1a9cc690e5a9d77f37ee299154b
- this domain is useful for describing the semantics of exact real arithmetic.
-] 
-
-[show that every effective CUSL is Plotkin
-robdockins@fastmail.fm**20140619034433
- Ignore-this: d529a4b1d6d698f79572caa805072394
-] 
-
-[fix notation for octothorpe
-robdockins@fastmail.fm**20140614222130
- Ignore-this: 3dc815825f11ceaf4f4f53e4668e6382
-] 
-
-[fix for coq 8.4pl4
-robdockins@fastmail.fm**20140614222049
- Ignore-this: 9745904845aaf54e5569df982fc93d65
-] 
-
-[move swelling lemma into finsets
-robdockins@fastmail.fm**20140504080535
- Ignore-this: ffa560e9aa4e4f8b15a55c1f9b1da72e
-] 
-
-[documentation improvements and code motion
-robdockins@fastmail.fm**20140504070008
- Ignore-this: da7847f82403990342732a8ce226315c
-] 
-
-[replace the old finprod
-robdockins@fastmail.fm**20140504005534
- Ignore-this: 606cf44422f68d66c8d2d90049e67b93
-] 
-
-[remove the old finprod
-robdockins@fastmail.fm**20140504005137
- Ignore-this: 38bd54e16c87d27bbede08496c37bfba
-] 
-
-[update st_lam_fix to use the new finprod
-robdockins@fastmail.fm**20140504003627
- Ignore-this: 95d0a66e99ccead89bdfef09a1c8c109
-] 
-
-[update st_lam to use the new termmodel
-robdockins@fastmail.fm**20140503230854
- Ignore-this: c3d6b2155674b414c5c2e14b85b13760
-] 
-
-[new version of finprod with a better term model
-robdockins@fastmail.fm**20140503222035
- Ignore-this: db63e3a063bdb6f2f579644c7b63bd1b
-] 
-
-[a few more (hopefully final) lemmas about union
-robdockins@fastmail.fm**20140422223924
- Ignore-this: 7b95c75abef9b0d45863b5e33d1c5a37
-] 
-
-[finish proofs about union
-robdockins@fastmail.fm**20140422065034
- Ignore-this: 2929c3cdb013c028a48022b0293b2f18
-] 
-
-[powerdomain progress
-robdockins@fastmail.fm**20140421064325
- Ignore-this: 592f9c6046f05a27897b460edb2efe10
- Show that powerdomains are endofunctors on PLT.  Further, they are monads with
- the 'singleton' and 'join' operations.  Also make some progress on the additive
- portion of the theory, dealing with emptyset and union.
-] 
-
-[tweak makefile
-robdockins@fastmail.fm**20140420031337
- Ignore-this: d5954b26f731bfed3d79cefacab322fb
-] 
-
-[show that semvalue is the weakest condition allowing beta-reduction of strict functions
-robdockins@fastmail.fm**20140420020447
- Ignore-this: 16a7ed23f04879f1fb324bdac8a2ffaf
-] 
-
-[some additional operations relating to the PLT adjunction
-robdockins@fastmail.fm**20140420020351
- Ignore-this: db8eec6e3f74cce3acb67d2b660b104e
-] 
-
-[finish building power domain fmap
-robdockins@fastmail.fm**20140420020217
- Ignore-this: 556e1cb87576de36cb26f8add3a1b163
-] 
-
-[fix up st_lam.v
-robdockins@fastmail.fm**20140329015058
- Ignore-this: 1c31d674b759fbd0cc74fb3125579f96
-] 
-
-[push some proofs into finprod
-robdockins@fastmail.fm**20140329000401
- Ignore-this: 49070fdd951e49473e60d3cd0ec431c6
-] 
-
-[documentation and aesthetic changeds
-robdockins@fastmail.fm**20140327043141
- Ignore-this: be27b24b78ea6af722a307117e59f5b3
-] 
-
-[finish the st_lam_fix example
-robdockins@fastmail.fm**20140322011153
- Ignore-this: e702f564b6eab2f8c11ab16bcb62504b
-] 
-
-[clarafications re: countable choice; remove unfinished example from build order
-robdockins@fastmail.fm**20140321212852
- Ignore-this: 2a9d5c79c05ba088e1815feab99a5f6c
-] 
-
-[break the "fixes" operator into a separate file and prove some facts about it
-robdockins@fastmail.fm**20140318013247
- Ignore-this: 80c506cef0719a974a049a1f5870f676
-] 
-
-[minor fix to skiy.v
-robdockins@fastmail.fm**20140317054057
- Ignore-this: ffef6fcaf5fa7f8cea80d2808caf4f4c
-] 
-
-[add the fixpoint operator; admit proofs
-robdockins@fastmail.fm**20140317044648
- Ignore-this: 97ca18e980cdf46a9b40c8252badef14
-] 
-
-[remove the evaluation case for variables
-robdockins@fastmail.fm**20140317032932
- Ignore-this: e46d634e735e5b21a18518a48777168d
-] 
-
-[start on STLC with fixpoints -- but without fixpoints for now 
-robdockins@fastmail.fm**20140317031953
- Ignore-this: 3458bc18c73d967bef58418bc73e06cb
-] 
-
-[add the eliminator for booleans to st_lam; other additional utility lemmas
-robdockins@fastmail.fm**20140317031753
- Ignore-this: 369dd375755cbd9ae5e3c969f3ef6ec
-] 
-
-[some minor code motion
-robdockins@fastmail.fm**20140228064927
- Ignore-this: 804828472ddb0c5fafc72460fce8387b
-] 
-
-[plug final holes in st_lam and add to build order
-robdockins@fastmail.fm**20140228044729
- Ignore-this: 3edc7f36bfa97775ba33ffa27c80df59
-] 
-
-[reduce st_lam.v to facts I believe about fresh variables
-robdockins@fastmail.fm**20140228010832
- Ignore-this: bde3e73291ddd32337d6fb999e4b1c02
-] 
-
-[fix breakages
-robdockins@fastmail.fm**20140226073930
- Ignore-this: 9be54f5255f8ed9d53a79260e9bdf565
-] 
-
-[more work on lambdas
-robdockins@fastmail.fm**20140226043753
- Ignore-this: 7f7452670221e2643067a3c7cc180998
-] 
-
-[use new finprod implementation
-robdockins@fastmail.fm**20140226043700
- Ignore-this: c9e05df5fcfd31254ed7318fe693490c
-] 
-
-[remove old finprod 
-robdockins@fastmail.fm**20140226043642
- Ignore-this: 2705703a2c782da21a152fbb27c8a972
-] 
-
-[rearrange the interfact to finprod
-robdockins@fastmail.fm**20140226043541
- Ignore-this: c44d7c478948f42b188eb8d06469abbf
-] 
-
-[fill remaining holes in finprod2
-robdockins@fastmail.fm**20140225205242
- Ignore-this: 1eeb9b8beef92790c28918292f2a9cf4
-] 
-
-[rework some stuff dealing with semidecidable predicates
-robdockins@fastmail.fm**20140225092149
- Ignore-this: 32b5ccb2927e08979ea92b9ef67c40f4
-] 
-
-[lots of work on alpha-congrunce in lambdas
-robdockins@fastmail.fm**20140225035601
- Ignore-this: fbbec9dac4cb328ff4e0b25df646e0c7
-] 
-
-[terminate is universal in PLT
-robdockins@fastmail.fm**20140225035538
- Ignore-this: abc6cd1a60578c435bf9ca596d8d0922
-] 
-
-[new attack on nominal finite products
-robdockins@fastmail.fm**20140225035516
- Ignore-this: 3875e713acc6aa5193696612f3ede76d
-] 
-
-[push forward a little on lambdas
-robdockins@fastmail.fm**20140221095249
- Ignore-this: c690a1b03075702e3fd84aac7e268211
-] 
-
-[update finprod for various changes
-robdockins@fastmail.fm**20140221095230
- Ignore-this: a6d787930ed356ae2b0a003af1f4d44
-] 
-
-[better discrete cases lemma
-robdockins@fastmail.fm**20140219051301
- Ignore-this: f0ec88e8207257e7657ced933cf687e7
-] 
-
-[start working on simply-typed lambdas
-robdockins@fastmail.fm**20140219051238
- Ignore-this: 69bea345376ea39cd1addc0849a43077
-] 
-
-[more messing about with advanced category theory stuff
-robdockins@fastmail.fm**20140211095003
- Ignore-this: 9cd3c9d961349e8797f109f716c5f678
-] 
-
-[minor rearrangements and code motion
-robdockins@fastmail.fm**20140211041724
- Ignore-this: 642ad6f1395fde7ecd81e5a905fd5428
-] 
-
-[some basic bicategory theory
-robdockins@fastmail.fm**20140210083634
- Ignore-this: f47a898fa045a397d3ee70e1512b8baa
-] 
-
-[even more notation futzing
-robdockins@fastmail.fm**20140209072416
- Ignore-this: d2061652cb3e80f6994f567a9e677b32
-] 
-
-[additional notational futzing
-robdockins@fastmail.fm**20140209043308
- Ignore-this: ac42cbbc94df227e6d5e70b96ae65fd3
-] 
-
-[futz around with notations, various other cleanup activities
-robdockins@fastmail.fm**20140209005551
- Ignore-this: 3f41a52650aadd956ac490b62e59c1c3
-] 
-
-[complete adequacy for SKI+Y
-robdockins@fastmail.fm**20140206050414
- Ignore-this: f730587ac7a42f3e35740976a1439f2e
-] 
-
-[minor changes in cpo
-robdockins@fastmail.fm**20140206014745
- Ignore-this: 95244704faf1e6c336d62dc7912f9022
-] 
-
-[push through most of SKI+Y adequacy
-robdockins@fastmail.fm**20140205214805
- Ignore-this: dc998ef45f2e919e9373bfa21a5ef8c7
-] 
-
-[major simplification of the adequacy proof for SKI
-robdockins@fastmail.fm**20140205185605
- Ignore-this: f1f0dc46274db05f3393038dfe2775e2
-] 
-
-[push forward on SKI+Y
-robdockins@fastmail.fm**20140205044216
- Ignore-this: daf255aa940b42c1c68ba947a356370d
-] 
-
-[continue futzing with the LR statement
-robdockins@fastmail.fm**20140203055601
- Ignore-this: f5ef9f06d3b1a11d76317b52cec691ab
-] 
-
-[start pushing on adequacy for SKI+Y
-robdockins@fastmail.fm**20140202085948
- Ignore-this: 956844809340fad0c13c19e9fa729b5c
-] 
-
-[mostly finish soundness for SKI+Y
-robdockins@fastmail.fm**20140202060633
- Ignore-this: 4c75fd9eeefa1d6dad6866662abea0fd
-] 
-
-[start working on a CCL example
-robdockins@fastmail.fm**20140202020748
- Ignore-this: 44c5d7854cc19b0f90414c2be6b3df68
-] 
-
-[make id(A) a parsing-only notation
-robdockins@fastmail.fm**20140202020724
- Ignore-this: 68f51f754c0b89e2e815da47b901e4b1
-] 
-
-[the PLT adjunction is strong monodial
-robdockins@fastmail.fm**20140202020637
- Ignore-this: 7b29b9a6a5e8efa07440c528ec12d7bd
-] 
-
-[fix my broken version of lfp and fixup proofs
-robdockins@fastmail.fm**20140202020615
- Ignore-this: 3ac283481318622cbf38378e815a4f09
-] 
-
-[more work on SKI + Y
-robdockins@fastmail.fm**20140202020516
- Ignore-this: d1f63e2ef610c6f93d03806c5426cfa5
-] 
-
-[start work on SKI + Y
-robdockins@fastmail.fm**20140201085039
- Ignore-this: fb7a405830cf90526cddd8ce37f4da40
-] 
-
-[doc corrections
-robdockins@fastmail.fm**20140130015908
- Ignore-this: bca4c04267bfdac8cb202651a0960d92
-] 
-
-[lots of additional inline documentation
-robdockins@fastmail.fm**20140129234834
- Ignore-this: ab2c59add5514f44a898de1f0eece98b
-] 
-
-[powerdomains form continuous functors in EMBED
-robdockins@fastmail.fm**20140126234115
- Ignore-this: d2ee08902f0bdb52efd7f7ce2c594469
-] 
-
-[complete the powerdomain constructions; build some operations
-robdockins@fastmail.fm**20140125225202
- Ignore-this: 9c8f2632df05e84fc3794a338ff8720d
-] 
-
-[construct the basic powerdomains--still some holes left 
-robdockins@fastmail.fm**20140125064541
- Ignore-this: c3206d2e1e925096b3e9ff49afacef2f
-] 
-
-[generalize the lfp construction to a generic chain_sup operation
-robdockins@fastmail.fm**20140124183103
- Ignore-this: 4cc2c1011b9f79365dcb7c76784fbfa6
-] 
-
-[update makefile
-robdockins@fastmail.fm**20140124073734
- Ignore-this: a0b7db8383262caa314c21b99e146222
-] 
-
-[new file for recursive lambda domains
-robdockins@fastmail.fm**20140124070023
- Ignore-this: 300c02b4da83b6ebd734aa2ccb21cd2d
-] 
-
-[more lemmas about antistrict homs
-robdockins@fastmail.fm**20140124065953
- Ignore-this: 483c7b350dc3cab59c8ff50e1ac73b8c
-] 
-
-[fix breakage related to implicit arguments
-robdockins@fastmail.fm**20140124065805
- Ignore-this: 561693d3280851299c6a49a2a34546b3
-] 
-
-[notation tweaks in cpo.v
-robdockins@fastmail.fm**20140124053800
- Ignore-this: 83e92d8c14568448074a940ceafbe2c9
-] 
-
-[add if/then/else to the SKI system
-robdockins@fastmail.fm**20140124023630
- Ignore-this: 37a9737932a05393a6338380226ca346
-] 
-
-[case analysis for finite types
-robdockins@fastmail.fm**20140124012505
- Ignore-this: 6ec1076b2a74f5832501a105a28a6dba
-] 
-
-[finish adequacy proof for SKI
-robdockins@fastmail.fm**20140123211322
- Ignore-this: 1fe3e626e33431c27e2aa186b3bf91d2
-] 
-
-[additional lemmas about domains
-robdockins@fastmail.fm**20140123090037
- Ignore-this: fcad2dd816f805b8b5e7d1be3df60db8
-] 
-
-[most of a proof of adequacy for SKI
-robdockins@fastmail.fm**20140123085839
- Ignore-this: d1595c02a6387297018e7f316a3e751
-] 
-
-[more work on finite products
-robdockins@fastmail.fm**20140121061158
- Ignore-this: c2f8212e041478104dd4c81c225b42d5
-] 
-
-[begin work on a more flexible "finprod" domain
-robdockins@fastmail.fm**20140119021653
- Ignore-this: 249718a2c31964733171b21c84d2effb
-] 
-
-[mess with implicit arguments in categories.v
-robdockins@fastmail.fm**20140113041450
- Ignore-this: 314cad9207f706e949bd686aaa5c5e1b
-] 
-
-[products for CPO, uniformity of lfp
-robdockins@fastmail.fm**20140113041421
- Ignore-this: e533abe995e634c732a35e71d66ddb6a
-] 
-
-[define the LFP in pointed CPOs, prove the Scott induction principle
-robdockins@fastmail.fm**20140112231843
- Ignore-this: 2014174b1c6914bef376d614f34d073f
-] 
-
-[build the forgetful functor from EMBED to PLT
-robdockins@fastmail.fm**20140110014909
- Ignore-this: 1dacbfc0383e48f4ab35fe0a5fd11cec
-] 
-
-[notation changes, prove sum_cases and curry preserve order and equality
-robdockins@fastmail.fm**20140110014820
- Ignore-this: d1c6a1d0346a9eba14f3529ac30b5e2f
-] 
-
-[prove addl facts about pairs, tweak implicit arguments
-robdockins@fastmail.fm**20140110010319
- Ignore-this: 9f0af8abc268b2b22d8b5450d6a4136
-] 
-
-[make 'ob' a coercion
-robdockins@fastmail.fm**20140110010204
- Ignore-this: 467c0b0a8b086a7f44bf98875a4380d6
-] 
-
-[copyright notices
-robdockins@fastmail.fm**20140106232333
- Ignore-this: f59bafa0ec99e259bd9b4319f2cdbc67
-] 
-
-[add ord_dec coercion
-robdockins@fastmail.fm**20140104052750
- Ignore-this: 4ed1cacfd27979f0fe518862be5ac27c
-] 
-
-[define the model for CBV lambda calculus
-robdockins@fastmail.fm**20140104050626
- Ignore-this: 88ca796d4697bfebb044d3fae27d6129
-] 
-
-[proof a fixpoint lemma for unpointed domains
-robdockins@fastmail.fm**20140103231818
- Ignore-this: 4939eb02d09b6a4eecf145c887c64393
-] 
-
-[prove that the adjoint functors between PLT and PPLT extend to continuous functors in EMBED
-robdockins@fastmail.fm**20140103000915
- Ignore-this: 54da0101f581731ebe512ed514e0603e
-] 
-
-[notation changes for PLT
-robdockins@fastmail.fm**20140102234446
- Ignore-this: ad1f82f22d1bf0e057f11c3508a81716
-] 
-
-[move embeddings into their own file; pull TPLT and PPLT into profinite.v
-robdockins@fastmail.fm**20140102234424
- Ignore-this: 3704996af47ae32415ba3e539d67cf5c
-] 
-
-[Show that PLT is cocartesian; rearrange proof that EMBED(true) is terminated
-robdockins@fastmail.fm**20140102213805
- Ignore-this: 3470df6910e7a3e4bda478c0c6ecea62
-] 
-
-[remove unnecessary "inh" hypothesis in the definition of Plotkin order; fixup the fallout
-robdockins@fastmail.fm**20140102213646
- Ignore-this: b6a5ad59296f938b377d71852120d48b
-] 
-
-[move proofs that empty and unit preorders are effective plotkin
-robdockins@fastmail.fm**20140102205530
- Ignore-this: 7324843510fd938d356aa82003c9ec68
-] 
-
-[make epi/mono/iso morphisms into categories
-robdockins@fastmail.fm**20131228082442
- Ignore-this: ee75a2b6eb1f3d6fa47f17d6734e5015
-] 
-
-[define the cocartesian and distributive categories
-robdockins@fastmail.fm**20131226001612
- Ignore-this: 11e9d8a88bef42bcb800b31d85d28d16
-] 
-
-[remove uses of maximally implict arguments
-robdockins@fastmail.fm**20131226001536
- Ignore-this: c0d93a5398aea58cbcc4fbbca3b59b17
-] 
-
-[fixpoints and binary sums for NOMINAL
-robdockins@fastmail.fm**20131121092931
- Ignore-this: 8a660dfe2ab16a8208ae559dcf2b7ed0
-] 
-
-[modify bilimit.v to use the general construction from cont_functors.v
-robdockins@fastmail.fm**20131120075848
- Ignore-this: 17ea36107ade1646eab5c99aec3561a9
-] 
-
-[generic fixpoint construction for categories with initial objects and directed colimits
-robdockins@fastmail.fm**20131119092522
- Ignore-this: 25674dff855a1cecdb4ee919f8bf3a5d
-] 
-
-[remove some irritating unit parameters, fix doc typos
-robdockins@fastmail.fm**20131118093204
- Ignore-this: 38342d58567d8a13471620d5b7c2b7d4
-] 
-
-[improvements to categories; complete some constructions in nominal
-robdockins@fastmail.fm**20131118085737
- Ignore-this: e58cb49a01d0210dabdb021250910adb
-] 
-
-[build fixes
-robdockins@fastmail.fm**20131113004305
- Ignore-this: 5abffcd1d6b44f816749c5e0cfd5b6e9
-] 
-
-[Documentation additions
-robdockins@fastmail.fm**20131113004254
- Ignore-this: 79a913d3a8652866f3fdc64891f6304d
-] 
-
-[lots of inline documentation additions
-robdockins@fastmail.fm**20131112192736
- Ignore-this: 6aa38112c10ceed3bf43e35dbda98312
-] 
-
-[update makefiles
-robdockins@fastmail.fm**20131112192706
- Ignore-this: d834beaa532cdf994cfa0a0b5a562e4f
-] 
-
-[continuous functors for binary sum and products
-robdockins@fastmail.fm**20131112192605
- Ignore-this: 61520e6e315df909465a02f854816366
-] 
-
-[add the category of nominal types
-robdockins@fastmail.fm**20131112192520
- Ignore-this: f0351c5eb0bdacdfe192a6863d9c0bc6
-] 
-
-[split the proof that expF is a continuous functor into a separate file; rearrange some defintions
-robdockins@fastmail.fm**20130924013328
- Ignore-this: 4eacee37bb6474d1bdfffe416b98b4c1
-] 
-
-[rearrange definitions of continuous functors. Prove enough plumbing to build the model: D = D->D
-robdockins@fastmail.fm**20130924002837
- Ignore-this: a66f9e8833601e244048b70e8bfaab96
-] 
-
-[show that the function space is a continuous functor; other junk
-robdockins@fastmail.fm**20130923060521
- Ignore-this: d8f406450688c633ebc1fe1eb0343c91
-] 
-
-[some name changes, other cosmetic fixes
-robdockins@fastmail.fm**20130909043234
- Ignore-this: cdd24d1c96a34fb3573c1806153df9fb
-] 
-
-[additional cosmetic changes and rearrangements
-robdockins@fastmail.fm**20130909020137
- Ignore-this: 77d28bc9452f6c93915194033118dab7
-] 
-
-[reorganize profinite code
-robdockins@fastmail.fm**20130909011437
- Ignore-this: 8511bf92ca6998ff8c69d5537624bdb8
-] 
-
-[cosmetic changes
-robdockins@fastmail.fm**20130908183909
- Ignore-this: e19039701e58fd26ca4eab79d7b49d14
-] 
-
-[complete the bilimit construction, show how to take fixpoints of continuous functors
-robdockins@fastmail.fm**20130908175228
- Ignore-this: 82feab8fdc0c944f13d91605c6a8e571
-] 
-
-[find a MUCH easier path to a bilimit construction
-robdockins@fastmail.fm**20130907012151
- Ignore-this: fcc72ad140b045ef37e4b03ad38a8fb0
-] 
-
-[lots of progress, mostly on defining bilimits
-robdockins@fastmail.fm**20130905204959
- Ignore-this: abf4bcf03a49fa009f9fb2200ee3abf2
-] 
-
-[start working on the theory of finite preorders, which form a basis for plokin orders
-robdockins@fastmail.fm**20130812054451
- Ignore-this: 5be36257a8fdf486bcc31f587d93c457
-] 
-
-[parameterize plotkin orders, build category PPLT
-robdockins@fastmail.fm**20130811063623
- Ignore-this: 3f273841bc72098acee0fd618627dbd5
-] 
-
-[complete the details showing PLT is cartesian closed
-robdockins@fastmail.fm**20130809230336
- Ignore-this: 13fd1b5a8172dd263cf655421f7584f7
-] 
-
-[add files missed in the first import
-robdockins@fastmail.fm**20130809080742
- Ignore-this: 6b59cce866a486d70559f7c80fe99053
-] 
-
-[initial import of development
-robdockins@fastmail.fm**20130809080409
- Ignore-this: 44cb5a0df2f1643d289f07dcd4227cbf
- First major steps toward a fully effective and usable formalized
- domain theory.  We formalize the plotkin preorders and show that
- they form a cartesian closed category.
-] 
diff --git a/pkgs/development/coq-modules/domains/default.nix b/pkgs/development/coq-modules/domains/default.nix
deleted file mode 100644
index 975260c839bd..000000000000
--- a/pkgs/development/coq-modules/domains/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{stdenv, fetchdarcs, coq}:
-
-stdenv.mkDerivation rec {
-
-  name = "coq-domains-${coq.coq-version}-${version}";
-  version = "ce1a9806";
-
-  src = fetchdarcs {
-    url = http://hub.darcs.net/rdockins/domains;
-    context = ./darcs_context;
-    sha256 = "0zdqiw08b453i8gdxwbk7nia2dv2r3pncmxsvgr0kva7f3dn1rnc";
-  };
-
-  buildInputs = [ coq.ocaml coq.camlp5 ];
-  propagatedBuildInputs = [ coq ];
-
-  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
-
-  meta = with stdenv.lib; {
-    homepage = http://rwd.rdockins.name/domains/;
-    description = "A Coq library for domain theory";
-    maintainers = with maintainers; [ jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-}
diff --git a/pkgs/development/coq-modules/fiat/default.nix b/pkgs/development/coq-modules/fiat/default.nix
deleted file mode 100644
index e084497cbf81..000000000000
--- a/pkgs/development/coq-modules/fiat/default.nix
+++ /dev/null
@@ -1,41 +0,0 @@
-{stdenv, fetchurl, coq}:
-
-stdenv.mkDerivation rec {
-
-  name = "coq-fiat-${coq.coq-version}-${version}";
-  version = "20141031";
-
-  src = fetchurl {
-    url = "http://plv.csail.mit.edu/fiat/releases/fiat-${version}.tar.gz";
-    sha256 = "0c5jrcgbpdj0gfzg2q4naqw7frf0xxs1f451fnic6airvpaj0d55";
-  };
-
-  buildInputs = [ coq.ocaml coq.camlp5 ];
-  propagatedBuildInputs = [ coq ];
-
-  enableParallelBuilding = false;
-  doCheck = !stdenv.isi686;
-
-  unpackPhase = ''
-    mkdir fiat
-    cd fiat
-    tar xvzf ${src}
-  '';
-
-  buildPhase = "make -j$NIX_BUILD_CORES sources";
-  checkPhase = "make -j$NIX_BUILD_CORES examples";
-
-  installPhase = ''
-    COQLIB=$out/lib/coq/${coq.coq-version}/
-    mkdir -p $COQLIB/user-contrib/Fiat
-    cp -pR src/* $COQLIB/user-contrib/Fiat
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://plv.csail.mit.edu/fiat/;
-    description = "A library for the Coq proof assistant for synthesizing efficient correct-by-construction programs from declarative specifications";
-    maintainers = with maintainers; [ jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-}
diff --git a/pkgs/development/coq-modules/interval/default.nix b/pkgs/development/coq-modules/interval/default.nix
index 683ab80b36bb..5faf8093b153 100644
--- a/pkgs/development/coq-modules/interval/default.nix
+++ b/pkgs/development/coq-modules/interval/default.nix
@@ -1,24 +1,12 @@
 { stdenv, fetchurl, which, coq, coquelicot, flocq, mathcomp
 , bignums ? null }:
 
-let param =
-  if stdenv.lib.versionAtLeast coq.coq-version "8.5"
-  then {
-    version = "3.3.0";
-    url = "https://gforge.inria.fr/frs/download.php/file/37077/interval-3.3.0.tar.gz";
-    sha256 = "08fdcf3hbwqphglvwprvqzgkg0qbimpyhnqsgv3gac4y1ap0f903";
-  } else {
-    version = "3.1.1";
-    url = "https://gforge.inria.fr/frs/download.php/file/36723/interval-3.1.1.tar.gz";
-    sha256 = "1sqsf075c7s98mwi291bhnrv5fgd7brrqrzx51747394hndlvfw3";
-  };
-in
-
 stdenv.mkDerivation {
-  name = "coq${coq.coq-version}-interval-${param.version}";
+  name = "coq${coq.coq-version}-interval-3.3.0";
 
   src = fetchurl {
-    inherit (param) url sha256;
+    url = "https://gforge.inria.fr/frs/download.php/file/37077/interval-3.3.0.tar.gz";
+    sha256 = "08fdcf3hbwqphglvwprvqzgkg0qbimpyhnqsgv3gac4y1ap0f903";
   };
 
   nativeBuildInputs = [ which ];
diff --git a/pkgs/development/coq-modules/mathcomp/default.nix b/pkgs/development/coq-modules/mathcomp/default.nix
index 48cb2c4d33fb..79bced9ad0ee 100644
--- a/pkgs/development/coq-modules/mathcomp/default.nix
+++ b/pkgs/development/coq-modules/mathcomp/default.nix
@@ -2,12 +2,6 @@
 
 let param =
   {
-    "8.4" =  {
-      version = "1.6.1";
-      url = https://github.com/math-comp/math-comp/archive/mathcomp-1.6.1.tar.gz;
-      sha256 = "1j9ylggjzrxz1i2hdl2yhsvmvy5z6l4rprwx7604401080p5sgjw";
-    };
-
     "8.5" =  {
       version = "1.6.1";
       url = https://github.com/math-comp/math-comp/archive/mathcomp-1.6.1.tar.gz;
diff --git a/pkgs/development/coq-modules/ssreflect/default.nix b/pkgs/development/coq-modules/ssreflect/default.nix
index 35c23842158d..3b53a2831e8c 100644
--- a/pkgs/development/coq-modules/ssreflect/default.nix
+++ b/pkgs/development/coq-modules/ssreflect/default.nix
@@ -2,12 +2,6 @@
 
 let param =
   {
-    "8.4" =  {
-      version = "1.6.1";
-      url = https://github.com/math-comp/math-comp/archive/mathcomp-1.6.1.tar.gz;
-      sha256 = "1j9ylggjzrxz1i2hdl2yhsvmvy5z6l4rprwx7604401080p5sgjw";
-    };
-
     "8.5" =  {
       version = "1.6.1";
       url = https://github.com/math-comp/math-comp/archive/mathcomp-1.6.1.tar.gz;
diff --git a/pkgs/development/coq-modules/tlc/default.nix b/pkgs/development/coq-modules/tlc/default.nix
deleted file mode 100644
index 2d30db5a80d4..000000000000
--- a/pkgs/development/coq-modules/tlc/default.nix
+++ /dev/null
@@ -1,38 +0,0 @@
-{stdenv, fetchsvn, coq}:
-
-stdenv.mkDerivation {
-
-  name = "coq-tlc-${coq.coq-version}";
-
-  src = fetchsvn {
-    url = svn://scm.gforge.inria.fr/svn/tlc/branches/v3.1;
-    rev = 240;
-    sha256 = "0mjnb6n9wzb13y2ix9cvd6irzd9d2gj8dcm2x71wgan0jcskxadm";
-  };
-
-  buildInputs = [ coq.ocaml coq.camlp5 ];
-  propagatedBuildInputs = [ coq ];
-
-  preConfigure = ''
-    patch Makefile <<EOF
-    105c105
-    < 	\$(COQC) \$<
-    ---
-    > 	\$(COQC) -R . Tlc \$<
-    EOF
-  '';
-
-  installPhase = ''
-    COQLIB=$out/lib/coq/${coq.coq-version}/
-    mkdir -p $COQLIB/user-contrib/Tlc
-    cp -p *.vo $COQLIB/user-contrib/Tlc
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://www.chargueraud.org/softs/tlc/;
-    description = "A general purpose Coq library that provides an alternative to Coq's standard library";
-    maintainers = with maintainers; [ jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-}
diff --git a/pkgs/development/coq-modules/unimath/default.nix b/pkgs/development/coq-modules/unimath/default.nix
deleted file mode 100644
index 8bd6cf5a84dd..000000000000
--- a/pkgs/development/coq-modules/unimath/default.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{stdenv, fetchgit, coq}:
-
-stdenv.mkDerivation rec {
-
-  name = "coq-unimath-${coq.coq-version}-${version}";
-  version = "a2714eca";
-
-  src = fetchgit {
-    url = git://github.com/UniMath/UniMath.git;
-    rev = "a2714eca29444a595cd280ea961ec33d17712009";
-    sha256 = "0v7dlyipr6bhwgp9v366nxdan018acafh13pachnjkgzzpsjnr7g";
-  };
-
-  buildInputs = [ coq.ocaml coq.camlp5 ];
-  propagatedBuildInputs = [ coq ];
-
-  installFlags = "COQLIB=$(out)/lib/coq/${coq.coq-version}/";
-
-  meta = with stdenv.lib; {
-    homepage = https://github.com/UniMath/UniMath;
-    description = "A formalization of a substantial body of mathematics using the univalent point of view";
-    maintainers = with maintainers; [ jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-}
diff --git a/pkgs/development/coq-modules/ynot/default.nix b/pkgs/development/coq-modules/ynot/default.nix
deleted file mode 100644
index d83e2c5c7909..000000000000
--- a/pkgs/development/coq-modules/ynot/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{stdenv, fetchgit, coq}:
-
-stdenv.mkDerivation rec {
-
-  name = "coq-ynot-${coq.coq-version}-${version}";
-  version = "ce1a9806";
-
-  src = fetchgit {
-    url = git://github.com/Ptival/ynot.git;
-    rev = "ce1a9806c26ffc6e7def41da50a9aac1433cb2f8";
-    sha256 = "1pcmcl5zamiimkcg1xvynxnfbv439y02vg1mnz79hqq9mnjyfnpw";
-  };
-
-  buildInputs = [ coq.ocaml coq.camlp5 ];
-  propagatedBuildInputs = [ coq ];
-
-  preBuild = "cd src";
-
-  installPhase = ''
-    COQLIB=$out/lib/coq/${coq.coq-version}/
-    mkdir -p $COQLIB/user-contrib/Ynot
-    cp -pR coq/*.vo $COQLIB/user-contrib/Ynot
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = http://ynot.cs.harvard.edu/;
-    description = "A library for writing and verifying imperative programs";
-    maintainers = with maintainers; [ jwiegley ];
-    platforms = coq.meta.platforms;
-  };
-
-}
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 172ce5deacf2..961d250efb63 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -95,7 +95,7 @@ self: super: {
       name = "git-annex-${drv.version}-src";
       url = "git://git-annex.branchable.com/";
       rev = "refs/tags/" + drv.version;
-      sha256 = "1bnnrwamw3d37fz7cwykxhi1ryy22dq8r6ld59gsbgcv23drqzax";
+      sha256 = "1fd7lyrwr60dp55swc5iwl0mkkzmdzpmj9qmx1qca2r7y9wc5w5k";
     };
   })).override {
     dbus = if pkgs.stdenv.isLinux then self.dbus else null;
@@ -510,17 +510,17 @@ self: super: {
   });
 
   # pandoc 2 dependency resolution
-  hslua_0_9_2 = super.hslua_0_9_2.override { lua5_1 = pkgs.lua5_3; };
-  hslua-module-text = super.hslua-module-text.override { hslua = self.hslua_0_9_2; };
+  hslua_0_9_3 = super.hslua_0_9_3.override { lua5_1 = pkgs.lua5_3; };
+  hslua-module-text = super.hslua-module-text.override { hslua = self.hslua_0_9_3; };
   texmath_0_10 = super.texmath_0_10.override { pandoc-types = self.pandoc-types_1_17_3; };
-  pandoc_2_0_4 = super.pandoc_2_0_4.override {
+  pandoc_2_0_5 = super.pandoc_2_0_5.override {
     doctemplates = self.doctemplates_0_2_1;
     pandoc-types = self.pandoc-types_1_17_3;
     skylighting = self.skylighting_0_4_4_1;
     texmath = self.texmath_0_10;
   };
   pandoc-citeproc_0_12_1 = super.pandoc-citeproc_0_12_1.override {
-    pandoc = self.pandoc_2_0_4;
+    pandoc = self.pandoc_2_0_5;
     pandoc-types = self.pandoc-types_1_17_3;
   };
 
@@ -642,7 +642,8 @@ self: super: {
     '';
   });
 
-  # Fine-tune the build.
+  # Build the latest git version instead of the official release. This isn't
+  # ideal, but Chris doesn't seem to make official releases any more.
   structured-haskell-mode = (overrideCabal super.structured-haskell-mode (drv: {
     src = pkgs.fetchFromGitHub {
       owner = "chrisdone";
@@ -999,4 +1000,24 @@ self: super: {
     libraryToolDepends = drv.libraryToolDepends or [] ++ [pkgs.postgresql];
     testToolDepends = drv.testToolDepends or [] ++ [pkgs.procps];
   });
+
+  # Newer hpack's needs newer HUnit, but we cannot easily override the version
+  # used in the build, so we take the easy way out and disable the test suite.
+  hpack_0_20_0 = dontCheck super.hpack_0_20_0;
+  hpack_0_21_2 = dontCheck super.hpack_0_21_2;
+
+  # Stack 1.6.1 needs newer versions than LTS-9 provides.
+  stack = super.stack.overrideScope (self: super: {
+    ansi-terminal = self.ansi-terminal_0_7_1_1;
+    ansi-wl-pprint = self.ansi-wl-pprint_0_6_8_1;
+    extra = dontCheck super.extra_1_6_2;
+    hpack = super.hpack_0_20_0;
+    path = dontCheck super.path_0_6_1;
+    path-io = self.path-io_1_3_3;
+    unliftio = self.unliftio_0_2_0_0;
+  });
+
+  # Hoogle needs a newer version than lts-9 provides.
+  hoogle = super.hoogle.override { haskell-src-exts = self.haskell-src-exts_1_20_1; };
+
 }
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
index 1c141dfaf75e..f625ad5f656c 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix
@@ -62,4 +62,7 @@ self: super: {
   # This builds needs the latest Cabal version.
   cabal2nix = super.cabal2nix.overrideScope (self: super: { Cabal = self.Cabal_2_0_1_1; });
 
+  # Add appropriate Cabal library to build this code.
+  stack = addSetupDepend super.stack self.Cabal_2_0_1_1;
+
 }
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index c512bb0fcd8b..515b8027cb85 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -37,7 +37,7 @@ core-packages:
   - ghcjs-base-0
 
 default-package-overrides:
-  # LTS Haskell 9.16
+  # LTS Haskell 9.18
   - abstract-deque ==0.3
   - abstract-deque-tests ==0.3
   - abstract-par ==0.3.3
@@ -170,6 +170,7 @@ default-package-overrides:
   - ansigraph ==0.3.0.4
   - ansi-terminal ==0.6.3.1
   - ansi-wl-pprint ==0.6.7.3
+  - apecs ==0.2.4.7
   - api-field-json-th ==0.1.0.2
   - appar ==0.1.4
   - apportionment ==0.0.0.2
@@ -232,7 +233,7 @@ default-package-overrides:
   - base-unicode-symbols ==0.2.2.4
   - basic-prelude ==0.6.1.1
   - bcrypt ==0.0.10
-  - bench ==1.0.6
+  - bench ==1.0.7
   - benchpress ==0.2.2.10
   - bencode ==0.6.0.0
   - bento ==0.1.0
@@ -251,7 +252,7 @@ default-package-overrides:
   - binary-search ==1.0.0.3
   - binary-tagged ==0.1.4.2
   - binary-typed ==1.0
-  - bindings-DSL ==1.0.23
+  - bindings-DSL ==1.0.24
   - bindings-GLFW ==3.1.2.3
   - bindings-libzip ==1.0.1
   - bioace ==0.0.1
@@ -327,7 +328,7 @@ default-package-overrides:
   - c2hs ==0.28.2
   - Cabal ==1.24.2.0
   - cabal-dependency-licenses ==0.2.0.0
-  - cabal-doctest ==1.0.3
+  - cabal-doctest ==1.0.4
   - cabal-file-th ==0.2.4
   - cabal-helper ==0.7.3.0
   - cabal-rpm ==0.11.2
@@ -404,7 +405,7 @@ default-package-overrides:
   - code-page ==0.1.3
   - codo-notation ==0.5.2
   - colorful-monoids ==0.2.1.0
-  - colour ==2.3.3
+  - colour ==2.3.4
   - comfort-graph ==0.0.2.1
   - commutative ==0.0.1.4
   - comonad ==5.0.2
@@ -422,7 +423,7 @@ default-package-overrides:
   - concurrent-split ==0.0.1
   - concurrent-supply ==0.1.8
   - conduit ==1.2.12.1
-  - conduit-combinators ==1.1.1
+  - conduit-combinators ==1.1.2
   - conduit-connection ==0.1.0.3
   - conduit-extra ==1.1.17
   - conduit-iconv ==0.1.1.2
@@ -516,7 +517,7 @@ default-package-overrides:
   - data-ordlist ==0.4.7.0
   - data-ref ==0.0.1.1
   - data-reify ==0.6.1
-  - data-serializer ==0.3
+  - data-serializer ==0.3.2
   - data-textual ==0.3.0.2
   - dataurl ==0.1.0.0
   - DAV ==1.3.1
@@ -781,9 +782,9 @@ default-package-overrides:
   - gi-gdk ==3.0.14
   - gi-gdkpixbuf ==2.0.14
   - gi-gio ==2.0.14
-  - gi-glib ==2.0.14
+  - gi-glib ==2.0.15
   - gi-gobject ==2.0.15
-  - gi-gtk ==3.0.17
+  - gi-gtk ==3.0.18
   - gi-javascriptcore ==3.0.14
   - ginger ==0.5.3.0
   - gio ==0.13.4.0
@@ -933,7 +934,7 @@ default-package-overrides:
   - groundhog-mysql ==0.8
   - groundhog-postgresql ==0.8.0.1
   - groundhog-sqlite ==0.8
-  - groundhog-th ==0.8.0.1
+  - groundhog-th ==0.8.0.2
   - group-by-date ==0.1.0.2
   - grouped-list ==0.2.1.3
   - groupoids ==4.0
@@ -941,6 +942,7 @@ default-package-overrides:
   - gtk ==0.14.7
   - gtk2hs-buildtools ==0.13.3.1
   - gtk3 ==0.14.8
+  - gym-http-api ==0.1.0.0
   - H ==0.9.0.1
   - h2c ==1.0.0
   - hackage-db ==1.22
@@ -959,7 +961,7 @@ default-package-overrides:
   - hamlet ==1.2.0
   - HandsomeSoup ==0.4.2
   - handwriting ==0.1.0.3
-  - hapistrano ==0.3.4.0
+  - hapistrano ==0.3.5.0
   - happstack-hsp ==7.3.7.3
   - happstack-jmacro ==7.0.12
   - happstack-server ==7.4.6.4
@@ -971,9 +973,9 @@ default-package-overrides:
   - hashable-time ==0.2.0.1
   - hashmap ==1.3.2
   - hashtables ==1.2.2.1
-  - haskeline ==0.7.4.0
+  - haskeline ==0.7.4.1
   - haskell-gi ==0.20.3
-  - haskell-gi-base ==0.20.5
+  - haskell-gi-base ==0.20.7
   - haskell-gi-overloading ==1.0
   - haskell-import-graph ==1.0.3
   - haskell-lexer ==1.0.1
@@ -1025,7 +1027,7 @@ default-package-overrides:
   - heaps ==0.3.5
   - heatshrink ==0.1.0.0
   - hebrew-time ==0.1.1
-  - hedgehog ==0.5
+  - hedgehog ==0.5.1
   - hedgehog-quickcheck ==0.1
   - hedis ==0.9.12
   - here ==1.2.11
@@ -1074,8 +1076,8 @@ default-package-overrides:
   - hp2pretty ==0.8.0.2
   - hpack ==0.18.1
   - hpc-coveralls ==1.0.10
-  - hPDB ==1.2.0.9
-  - hPDB-examples ==1.2.0.7
+  - hPDB ==1.2.0.10
+  - hPDB-examples ==1.2.0.8
   - HPDF ==1.4.10
   - hpio ==0.8.0.10
   - hpp ==0.4.1
@@ -1094,8 +1096,8 @@ default-package-overrides:
   - hsebaysdk ==0.4.0.0
   - hse-cpp ==0.2
   - hsemail ==2
-  - HSet ==0.0.1
   - hset ==2.2.0
+  - HSet ==0.0.1
   - hsexif ==0.6.1.5
   - hs-GeoIP ==0.3
   - hsignal ==0.2.7.5
@@ -1126,7 +1128,7 @@ default-package-overrides:
   - hspec-wai ==0.8.0
   - hspec-wai-json ==0.8.0
   - hspec-webdriver ==1.2.0
-  - hsshellscript ==3.4.2
+  - hsshellscript ==3.4.5
   - hstatistics ==0.3
   - hstatsd ==0.1
   - HStringTemplate ==0.8.6
@@ -1147,13 +1149,13 @@ default-package-overrides:
   - http-client-openssl ==0.2.1.1
   - http-client-tls ==0.3.5.1
   - http-common ==0.8.2.0
-  - http-conduit ==2.2.3.2
+  - http-conduit ==2.2.4
   - http-date ==0.0.6.1
   - httpd-shed ==0.4.0.3
   - http-link-header ==1.0.3
   - http-media ==0.6.4
   - http-reverse-proxy ==0.4.5
-  - http-streams ==0.8.5.3
+  - http-streams ==0.8.5.5
   - http-types ==0.9.1
   - human-readable-duration ==0.2.0.3
   - HUnit ==1.5.0.0
@@ -1258,7 +1260,7 @@ default-package-overrides:
   - jmacro-rpc-snap ==0.3
   - jni ==0.3.1
   - jose ==0.6.0.3
-  - jose-jwt ==0.7.7
+  - jose-jwt ==0.7.8
   - js-flot ==0.8.3
   - js-jquery ==3.2.1
   - json ==0.9.1
@@ -1299,6 +1301,7 @@ default-package-overrides:
   - language-javascript ==0.6.0.10
   - language-lua2 ==0.1.0.5
   - language-puppet ==1.3.8.1
+  - language-python ==0.5.4
   - language-thrift ==0.10.0.0
   - largeword ==1.2.5
   - latex ==0.1.0.3
@@ -1333,7 +1336,7 @@ default-package-overrides:
   - licensor ==0.2.1
   - lifted-async ==0.9.3
   - lifted-base ==0.2.3.11
-  - lift-generics ==0.1.1
+  - lift-generics ==0.1.2
   - line ==3.1.0
   - linear ==1.20.7
   - linear-accelerate ==0.4.1
@@ -1399,8 +1402,8 @@ default-package-overrides:
   - median-stream ==0.7.0.0
   - med-module ==0.1.1
   - megaparsec ==5.3.1
-  - mega-sdist ==0.3.0.4
-  - memory ==0.14.9
+  - mega-sdist ==0.3.0.5
+  - memory ==0.14.10
   - MemoTrie ==0.6.8
   - mersenne-random-pure64 ==0.2.2.0
   - messagepack ==0.5.4
@@ -1469,9 +1472,9 @@ default-package-overrides:
   - monoid-extras ==0.4.2
   - monoid-subclasses ==0.4.4
   - monoid-transformer ==0.0.3
-  - mono-traversable ==1.0.4.0
+  - mono-traversable ==1.0.5.0
   - mono-traversable-instances ==0.1.0.0
-  - morte ==1.6.11
+  - morte ==1.6.12
   - mountpoints ==1.0.2
   - mstate ==0.2.7
   - mtl ==2.2.1
@@ -1514,7 +1517,7 @@ default-package-overrides:
   - network-carbon ==1.0.10
   - network-conduit-tls ==1.2.2
   - network-house ==0.1.0.2
-  - network-info ==0.2.0.8
+  - network-info ==0.2.0.9
   - network-ip ==0.3.0.2
   - network-msgpack-rpc ==0.0.3
   - network-multicast ==0.2.0
@@ -1532,8 +1535,8 @@ default-package-overrides:
   - nfc ==0.1.0
   - nicify-lib ==1.0.1
   - NineP ==0.0.2.1
-  - nix-paths ==1.0.0.1
-  - nonce ==1.0.4
+  - nix-paths ==1.0.1
+  - nonce ==1.0.5
   - nondeterminism ==1.4
   - non-empty ==0.3
   - non-empty-sequence ==0.2.0.2
@@ -1555,7 +1558,7 @@ default-package-overrides:
   - objective ==1.1.1
   - ObjectName ==1.1.0.1
   - octane ==0.20.2
-  - Octree ==0.5.4.3
+  - Octree ==0.5.4.4
   - oeis ==0.3.9
   - ofx ==0.4.2.0
   - old-locale ==1.0.0.7
@@ -1690,7 +1693,7 @@ default-package-overrides:
   - posix-realtime ==0.0.0.4
   - postgresql-binary ==0.12.1
   - postgresql-libpq ==0.9.3.1
-  - postgresql-schema ==0.1.13
+  - postgresql-schema ==0.1.14
   - postgresql-simple ==0.5.3.0
   - postgresql-simple-migration ==0.1.11.0
   - postgresql-simple-opts ==0.2.0.2
@@ -1717,7 +1720,7 @@ default-package-overrides:
   - prettyprinter-compat-annotated-wl-pprint ==1
   - prettyprinter-compat-ansi-wl-pprint ==1.0.1
   - prettyprinter-compat-wl-pprint ==1.0.0.1
-  - pretty-show ==1.6.13
+  - pretty-show ==1.6.14
   - pretty-simple ==2.0.1.0
   - pretty-types ==0.2.3.1
   - primes ==0.2.1.0
@@ -1854,7 +1857,7 @@ default-package-overrides:
   - result ==0.2.6.0
   - rethinkdb ==2.2.0.10
   - rethinkdb-client-driver ==0.0.25
-  - retry ==0.7.4.3
+  - retry ==0.7.5.0
   - rev-state ==0.1.2
   - rfc5051 ==0.1.0.3
   - rng-utils ==0.2.1
@@ -1886,7 +1889,7 @@ default-package-overrides:
   - scotty ==0.11.0
   - scrape-changes ==0.1.0.5
   - scrypt ==0.5.0
-  - SDL ==0.6.5.1
+  - SDL ==0.6.6.0
   - sdl2 ==2.2.0
   - sdl2-gfx ==0.2
   - sdl2-image ==2.0.0
@@ -2113,7 +2116,7 @@ default-package-overrides:
   - tasty-kat ==0.0.3
   - tasty-program ==1.0.5
   - tasty-quickcheck ==0.8.4
-  - tasty-rerun ==1.1.7
+  - tasty-rerun ==1.1.8
   - tasty-silver ==3.1.10
   - tasty-smallcheck ==0.8.1
   - tasty-stats ==0.2.0.3
@@ -2190,7 +2193,7 @@ default-package-overrides:
   - thumbnail-plus ==1.0.5
   - th-utilities ==0.2.0.1
   - thyme ==0.3.5.5
-  - tidal ==0.9.4
+  - tidal ==0.9.5
   - time-compat ==0.1.0.3
   - timeit ==1.0.0.0
   - timelens ==0.2.0.2
@@ -2208,7 +2211,7 @@ default-package-overrides:
   - tldr ==0.2.3
   - tls ==1.3.11
   - tls-debug ==0.4.4
-  - tls-session-manager ==0.0.0.1
+  - tls-session-manager ==0.0.0.2
   - tmp-postgres ==0.1.1.1
   - token-bucket ==0.1.0.1
   - torrent ==10000.1.1
@@ -2271,8 +2274,8 @@ default-package-overrides:
   - union-find ==0.2
   - uniplate ==1.6.12
   - uniq-deep ==1.1.0.0
-  - unique ==0
   - Unique ==0.4.7.1
+  - unique ==0
   - unit-constraint ==0.0.0
   - units ==2.4
   - units-defs ==2.0.1.1
@@ -2338,7 +2341,7 @@ default-package-overrides:
   - wai-app-static ==3.1.6.1
   - wai-cli ==0.1.1
   - wai-conduit ==3.0.0.3
-  - wai-cors ==0.2.5
+  - wai-cors ==0.2.6
   - wai-eventsource ==3.0.0
   - wai-extra ==3.0.20.2
   - wai-handler-launch ==3.0.2.3
@@ -2360,7 +2363,7 @@ default-package-overrides:
   - wai-routes ==0.10.0
   - wai-routing ==0.13.0
   - wai-session ==0.3.2
-  - wai-session-postgresql ==0.2.1.1
+  - wai-session-postgresql ==0.2.1.2
   - wai-slack-middleware ==0.2.0
   - waitra ==0.0.4.0
   - wai-transformers ==0.0.7
@@ -2386,7 +2389,7 @@ default-package-overrides:
   - websockets-rpc ==0.4.0
   - websockets-simple ==0.0.2
   - websockets-snap ==0.10.2.4
-  - weeder ==0.1.7
+  - weeder ==0.1.9
   - weigh ==0.0.7
   - wikicfp-scraper ==0.1.0.9
   - wild-bind ==0.1.0.3
@@ -2460,7 +2463,7 @@ default-package-overrides:
   - Yampa ==0.10.6.2
   - YampaSynth ==0.2
   - yesod ==1.4.5
-  - yesod-auth ==1.4.20
+  - yesod-auth ==1.4.21
   - yesod-auth-account ==1.4.3
   - yesod-auth-basic ==0.1.0.2
   - yesod-auth-fb ==1.8.1
@@ -2538,7 +2541,8 @@ extra-packages:
   - haddock-library == 1.2.*            # required for haddock-api-2.16.x
   - happy <1.19.6                       # newer versions break Agda
   - haskell-gi-overloading == 0.0       # gi-* packages use this dependency to disable overloading support
-  - haskell-src-exts == 1.18.*          # required by hoogle-5.0.4
+  - haskell-src-exts == 1.19.*          # required by hindent and structured-haskell-mode
+  - hpack == 0.20.*                     # required by stack-1.6.1
   - language-c == 0.7.0                 # required by c2hs hack to work around https://github.com/haskell/c2hs/issues/192.
   - mtl < 2.2                           # newer versions require transformers > 0.4.x, which we cannot provide in GHC 7.8.x
   - mtl-prelude < 2                     # required for to build postgrest on mtl 2.1.x platforms
@@ -2888,10 +2892,12 @@ dont-distribute-packages:
   angel:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   angle:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   Animas:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  animate-example:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   animate:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   annah:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   Annotations:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   anonymous-sums-tests:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  ansi-escape-codes:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   antagonist:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   antfarm:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   anticiv:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3455,6 +3461,7 @@ dont-distribute-packages:
   clash:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   ClassLaws:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   classy-parallel:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  classyplate:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   ClassyPrelude:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   clckwrks-cli:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   clckwrks-dot-com:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3610,6 +3617,7 @@ dont-distribute-packages:
   console-program:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   const-math-ghc-plugin:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   constrained-monads:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  constraint:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   ConstraintKinds:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   constructive-algebra:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   consul-haskell:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3687,6 +3695,7 @@ dont-distribute-packages:
   craze:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   crc16:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   crc:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  crdt:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   creatur:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   credential-store:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   credentials-cli:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3943,6 +3952,7 @@ dont-distribute-packages:
   discordian-calendar:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   DiscussionSupportSystem:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   Dish:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  disjoint-containers:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   disjoint-set:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   diskhash:                                     [ "x86_64-darwin" ]
   Dist:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3979,6 +3989,7 @@ dont-distribute-packages:
   doc-review:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   doccheck:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   docidx:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  docker-build-cacher:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   docker:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   dockercook:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   doctest-discover-configurator:                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4090,6 +4101,7 @@ dont-distribute-packages:
   eigen:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   EitherT:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   ekg-log:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  ekg-prometheus-adapter:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   ekg-push:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   ekg-rrd:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   elerea-examples:                              [ "x86_64-darwin" ]
@@ -4290,6 +4302,7 @@ dont-distribute-packages:
   Finance-Treasury:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   find-conduit:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   FiniteMap:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  firefly-example:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   first-and-last:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   firstify:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   FirstOrderTheory:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4331,6 +4344,8 @@ dont-distribute-packages:
   flower:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   flowlocks-framework:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   flowsim:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  fluffy-parser:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  fluffy:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   fluidsynth:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   FM-SBLEX:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   fmark:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5098,6 +5113,7 @@ dont-distribute-packages:
   heukarya:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   hevolisa-dph:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   hevolisa:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hexchat:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   hexif:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   hexml-lens:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   hexpat-iteratee:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5262,6 +5278,7 @@ dont-distribute-packages:
   hobbes:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   hobbits:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   hocilib:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hocker:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   hodatime:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   HODE:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   Hoed:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5387,6 +5404,7 @@ dont-distribute-packages:
   hsbencher-codespeed:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsbencher-fusion:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsbencher:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hsc3-auditor:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsc3-cairo:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsc3-data:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsc3-db:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5459,6 +5477,7 @@ dont-distribute-packages:
   hspec-jenkins:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   hspec-monad-control:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   hspec-pg-transact:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hspec-setup:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   hspec-shouldbe:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   hspec-snap:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   hspec-test-sandbox:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5611,6 +5630,7 @@ dont-distribute-packages:
   idempotent:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   idiii:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   idna2008:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  idris:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   IDynamic:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   ieee-utils:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   iException:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5932,6 +5952,7 @@ dont-distribute-packages:
   language-c-comments:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-c-inline:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-conf:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  language-dockerfile:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-eiffel:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-elm:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-gcl:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5995,6 +6016,7 @@ dont-distribute-packages:
   lenses:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   lensref:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   lenz-template:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  lenz:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   Level0:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   leveldb-haskell-fork:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   leveldb-haskell:                              [ "x86_64-darwin" ]
@@ -6099,6 +6121,7 @@ dont-distribute-packages:
   llvm-general-pure:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   llvm-general-quote:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   llvm-general:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
+  llvm-hs-pretty:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   llvm-hs:                                      [ "x86_64-darwin" ]
   llvm-ht:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   llvm-tf:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6106,6 +6129,7 @@ dont-distribute-packages:
   llvm:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   lmdb-high-level:                              [ "x86_64-darwin" ]
   lmdb-simple:                                  [ "x86_64-darwin" ]
+  lmdb-simple:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   lmdb:                                         [ "x86_64-darwin" ]
   lmonad-yesod:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   lmonad:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6285,6 +6309,7 @@ dont-distribute-packages:
   mercury-api:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   merge-bash-history:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   merkle-patricia-db:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
+  merkle-tree:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   messente:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   meta-misc:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   meta-par-accelerate:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6306,6 +6331,7 @@ dont-distribute-packages:
   microformats2-types:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   microlens-each:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   micrologger:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  microsoft-translator:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   MicrosoftTranslator:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   mida:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   midair:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6820,6 +6846,7 @@ dont-distribute-packages:
   peakachu:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   PeanoWitnesses:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   pec:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  pedersen-commitment:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   peg:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   peggy:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   pell:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6970,6 +6997,7 @@ dont-distribute-packages:
   posix-waitpid:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   postcodes:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   postgres-embedded:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  postgres-websockets:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   postgresql-named:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   postgresql-orm:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   postgresql-query:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6985,6 +7013,9 @@ dont-distribute-packages:
   postmark-streams:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   postmark:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   potato-tool:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  potoki-cereal:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  potoki-core:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  potoki:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   powermate:                                    [ "x86_64-darwin" ]
   powerpc:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   powerqueue-levelmem:                          [ "x86_64-darwin" ]
@@ -7027,6 +7058,7 @@ dont-distribute-packages:
   procrastinating-variable:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   procstat:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   producer:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  product:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   prof2dot:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   prof2pretty:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   progress:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7039,6 +7071,7 @@ dont-distribute-packages:
   prolog-graph:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   prolog:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   prologue:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  prometheus:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   promise:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   propane:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   Proper:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7089,6 +7122,7 @@ dont-distribute-packages:
   pyffi:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   pyfi:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   python-pickle:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  q4c12-twofinger:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   qc-oi-testgenerator:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   qd-vec:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   qd:                                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7118,6 +7152,7 @@ dont-distribute-packages:
   quick-schema:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   QuickAnnotate:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   quickbooks:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  quickcheck-classes:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   quickcheck-poly:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   quickcheck-property-comb:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   quickcheck-property-monad:                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7370,6 +7405,7 @@ dont-distribute-packages:
   RNAFoldProgs:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   RNAwolf:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   rncryptor:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  rob:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   robot:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   robots-txt:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   roc-cluster-demo:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7560,6 +7596,7 @@ dont-distribute-packages:
   servant-github:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-haxl-client:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-jquery:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  servant-match:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-matrix-param:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-pandoc:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-pool:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8158,6 +8195,7 @@ dont-distribute-packages:
   time-exts:                                    [ "x86_64-darwin" ]
   time-http:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   time-io-access:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  time-machine:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   time-patterns:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   time-recurrence:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   time-series:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8294,7 +8332,6 @@ dont-distribute-packages:
   type-level-bst:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   type-level-natural-number-induction:          [ i686-linux, x86_64-linux, x86_64-darwin ]
   type-level-natural-number-operations:         [ i686-linux, x86_64-linux, x86_64-darwin ]
-  type-of-html:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   type-ord-spine-cereal:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   type-ord:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   type-prelude:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8438,6 +8475,7 @@ dont-distribute-packages:
   views:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   vigilance:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   Villefort:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  vimeta:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   vimus:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   vintage-basic:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   vinyl-json:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8656,6 +8694,8 @@ dont-distribute-packages:
   xml-tydom-conduit:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   xml2json:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   xml2x:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  xmlbf-xeno:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  xmlbf-xmlhtml:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   xmlhtml:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   XmlHtmlWriter:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   xmltv:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8779,6 +8819,8 @@ dont-distribute-packages:
   york-lava:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   yql:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   yst:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
+  yu-core:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  yu-launch:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   yuiGrid:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   yuuko:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   zabt:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix
index 8146674a9435..4ad0663600a2 100644
--- a/pkgs/development/haskell-modules/configuration-nix.nix
+++ b/pkgs/development/haskell-modules/configuration-nix.nix
@@ -506,5 +506,6 @@ self: super: builtins.intersectAttrs super {
 
   # Break cyclic reference that results in an infinite recursion.
   partial-semigroup = dontCheck super.partial-semigroup;
+  colour = dontCheck super.colour;
 
 }
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index d29bcbf28135..78e329a7f372 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -873,22 +873,23 @@ self: {
 
   "Allure" = callPackage
     ({ mkDerivation, async, base, containers, enummapset-th, filepath
-     , LambdaHack, random, template-haskell, text, zlib
+     , LambdaHack, optparse-applicative, random, template-haskell, text
+     , zlib
      }:
      mkDerivation {
        pname = "Allure";
-       version = "0.6.2.0";
-       sha256 = "1va5xpyw2plq1f82q2zk64xyrdvkprjzv5p6zycircgc2ficz5a1";
+       version = "0.7.0.0";
+       sha256 = "1i4lj4ixs9p6c9l3y57cws6hirwkabc6hwn8cjbzc7xqcmz8xrxg";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
-         async base containers enummapset-th filepath LambdaHack random
-         template-haskell text zlib
+         async base containers enummapset-th filepath LambdaHack
+         optparse-applicative random template-haskell text zlib
        ];
        testHaskellDepends = [
-         base containers enummapset-th filepath LambdaHack random
-         template-haskell text zlib
+         base containers enummapset-th filepath LambdaHack
+         optparse-applicative random template-haskell text zlib
        ];
        homepage = "http://allureofthestars.com";
        description = "Near-future Sci-Fi roguelike and tactical squad game";
@@ -5462,6 +5463,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "Fin" = callPackage
+    ({ mkDerivation, base, clist, natural-induction, peano }:
+     mkDerivation {
+       pname = "Fin";
+       version = "0.2.0.0";
+       sha256 = "0w4gmfhpav73rkia3q7g6m4lncz1smhfa0rl2sr0602sc0694spr";
+       libraryHaskellDepends = [ base clist natural-induction peano ];
+       description = "Finite totally-ordered sets";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "Finance-Quote-Yahoo" = callPackage
     ({ mkDerivation, base, bytestring, http-conduit, network
      , old-locale, time
@@ -5828,20 +5840,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "Frames_0_2_1_1" = callPackage
+  "Frames_0_3_0_2" = callPackage
     ({ mkDerivation, base, criterion, directory, ghc-prim, hspec, htoml
-     , HUnit, pipes, pretty, primitive, readable, regex-applicative
-     , template-haskell, temporary, text, transformers
-     , unordered-containers, vector, vinyl
+     , HUnit, pipes, pipes-bytestring, pipes-group, pipes-parse
+     , pipes-safe, pipes-text, pretty, primitive, readable
+     , regex-applicative, template-haskell, temporary, text
+     , transformers, unordered-containers, vector, vinyl
      }:
      mkDerivation {
        pname = "Frames";
-       version = "0.2.1.1";
-       sha256 = "19sgkra9i5mn8nbys1h17vhl2j1yhd43hhg4bjr35nz9hj1cjfjs";
+       version = "0.3.0.2";
+       sha256 = "1a0dq3dfiqj5nmqk5ivn07ds7k51rf24k5kcbk19m8nwy4hvi896";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base ghc-prim pipes primitive readable template-haskell text
+         base ghc-prim pipes pipes-bytestring pipes-group pipes-parse
+         pipes-safe pipes-text primitive readable template-haskell text
          transformers vector vinyl
        ];
        testHaskellDepends = [
@@ -6135,8 +6149,8 @@ self: {
      }:
      mkDerivation {
        pname = "GLUtil";
-       version = "0.9.2";
-       sha256 = "04k0i27igqzvxmyp2yy5gvd9agymmxwxnnkqxkiv0qjhk1kj8p8r";
+       version = "0.9.3";
+       sha256 = "045wdcxm8ink7q86f6c4p47i1vmjyndk8xahabb0zic4yf3mdr76";
        libraryHaskellDepends = [
          array base bytestring containers directory filepath hpp JuicyPixels
          linear OpenGL OpenGLRaw transformers vector
@@ -8680,6 +8694,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "HTTP_4000_3_9" = callPackage
+    ({ mkDerivation, array, base, bytestring, case-insensitive, conduit
+     , conduit-extra, deepseq, http-types, httpd-shed, HUnit, mtl
+     , network, network-uri, parsec, pureMD5, split, test-framework
+     , test-framework-hunit, time, wai, warp
+     }:
+     mkDerivation {
+       pname = "HTTP";
+       version = "4000.3.9";
+       sha256 = "1zv38sjr1kv6vm35a8w5659ap9jpxpq5b9zjgablils8ca52p5h5";
+       libraryHaskellDepends = [
+         array base bytestring mtl network network-uri parsec time
+       ];
+       testHaskellDepends = [
+         base bytestring case-insensitive conduit conduit-extra deepseq
+         http-types httpd-shed HUnit mtl network network-uri pureMD5 split
+         test-framework test-framework-hunit wai warp
+       ];
+       homepage = "https://github.com/haskell/HTTP";
+       description = "A library for client-side HTTP";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "HTTP-Simple" = callPackage
     ({ mkDerivation, base, HTTP, network }:
      mkDerivation {
@@ -10734,6 +10772,8 @@ self: {
        pname = "JuicyPixels";
        version = "3.2.9.1";
        sha256 = "1g31zgsg7gq5ac9r5aizghvrg7jwn1a0qs4qwnfillqn4wkw6y5b";
+       revision = "1";
+       editedCabalFile = "04llw8m0s7bqz1d1vymhnzr51y9y6r9vwn4acwch1a10kq02kkpg";
        libraryHaskellDepends = [
          base binary bytestring containers deepseq mtl primitive
          transformers vector zlib
@@ -11188,41 +11228,59 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "LambdaDesigner" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, bytestring-trie
+     , containers, hosc, lens, lens-aeson, matrix, text, transformers
+     , vector
+     }:
+     mkDerivation {
+       pname = "LambdaDesigner";
+       version = "0.1.0.0";
+       sha256 = "1lgplxb546f7bdrwnmivb8zwix4rqhkrhv83ni90hzf4nx5fpjcy";
+       libraryHaskellDepends = [
+         aeson base bytestring bytestring-trie containers hosc lens
+         lens-aeson matrix text transformers vector
+       ];
+       homepage = "https://github.com/ulyssesp/LambdaDesigner#readme";
+       description = "A type-safe EDSL for TouchDesigner written in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "LambdaHack" = callPackage
     ({ mkDerivation, assert-failure, async, base, base-compat, binary
      , bytestring, containers, deepseq, directory, enummapset-th
-     , filepath, ghc-prim, hashable, hsini, keys, miniutter, pretty-show
-     , random, sdl2, sdl2-ttf, stm, template-haskell, text, time
-     , transformers, unordered-containers, vector
-     , vector-binary-instances, zlib
+     , filepath, ghc-prim, hashable, hsini, keys, miniutter
+     , optparse-applicative, pretty-show, random, sdl2, sdl2-ttf, stm
+     , template-haskell, text, time, transformers, unordered-containers
+     , vector, vector-binary-instances, zlib
      }:
      mkDerivation {
        pname = "LambdaHack";
-       version = "0.6.2.0";
-       sha256 = "15fa4kwaa7dzdrppjzkpm8dhazsb5cw372ksfl3smsfxiz8z4af9";
+       version = "0.7.0.0";
+       sha256 = "1f20d0533lxx6ag54752xvvbigp4mkw7b7iklm7cxxpijvbfjcqv";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          assert-failure async base base-compat binary bytestring containers
          deepseq directory enummapset-th filepath ghc-prim hashable hsini
-         keys miniutter pretty-show random sdl2 sdl2-ttf stm text time
-         transformers unordered-containers vector vector-binary-instances
-         zlib
+         keys miniutter optparse-applicative pretty-show random sdl2
+         sdl2-ttf stm text time transformers unordered-containers vector
+         vector-binary-instances zlib
        ];
        executableHaskellDepends = [
          assert-failure async base base-compat binary bytestring containers
          deepseq directory enummapset-th filepath ghc-prim hashable hsini
-         keys miniutter pretty-show random stm template-haskell text time
-         transformers unordered-containers vector vector-binary-instances
-         zlib
+         keys miniutter optparse-applicative pretty-show random stm
+         template-haskell text time transformers unordered-containers vector
+         vector-binary-instances zlib
        ];
        testHaskellDepends = [
          assert-failure async base base-compat binary bytestring containers
          deepseq directory enummapset-th filepath ghc-prim hashable hsini
-         keys miniutter pretty-show random stm template-haskell text time
-         transformers unordered-containers vector vector-binary-instances
-         zlib
+         keys miniutter optparse-applicative pretty-show random stm
+         template-haskell text time transformers unordered-containers vector
+         vector-binary-instances zlib
        ];
        homepage = "https://lambdahack.github.io";
        description = "A game engine library for roguelike dungeon crawlers";
@@ -11589,6 +11647,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ListT" = callPackage
+    ({ mkDerivation, base, smallcheck, tasty, tasty-smallcheck
+     , transformers, util
+     }:
+     mkDerivation {
+       pname = "ListT";
+       version = "0.1.2.0";
+       sha256 = "0ygj695w1xrv0kkpnm55gfjnks7xdbw6vrlqx1a5as4s36hq11zr";
+       libraryHaskellDepends = [ base transformers util ];
+       testHaskellDepends = [
+         base smallcheck tasty tasty-smallcheck transformers util
+       ];
+       description = "List transformer";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "ListTree" = callPackage
     ({ mkDerivation, base, directory, filepath, List, transformers }:
      mkDerivation {
@@ -13474,21 +13548,6 @@ self: {
      }) {};
 
   "Octree" = callPackage
-    ({ mkDerivation, AC-Vector, base, markdown-unlit, QuickCheck }:
-     mkDerivation {
-       pname = "Octree";
-       version = "0.5.4.3";
-       sha256 = "0rdlf8cqpfz43j9xddc5pqp829nyirndkc2rc7h8f8ycpdzsmn2g";
-       revision = "1";
-       editedCabalFile = "1ysmpp7knrkxh68q6nq012877mn51sgzjrpls7d80pkg4pgkf42a";
-       libraryHaskellDepends = [ AC-Vector base QuickCheck ];
-       testHaskellDepends = [ AC-Vector base markdown-unlit QuickCheck ];
-       homepage = "https://github.com/mgajda/octree";
-       description = "Simple unbalanced Octree for storing data about 3D points";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "Octree_0_5_4_4" = callPackage
     ({ mkDerivation, AC-Vector, base, QuickCheck }:
      mkDerivation {
        pname = "Octree";
@@ -13499,7 +13558,6 @@ self: {
        homepage = "https://github.com/mgajda/octree";
        description = "Simple unbalanced Octree for storing data about 3D points";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "OddWord" = callPackage
@@ -15650,10 +15708,8 @@ self: {
     ({ mkDerivation, base, SDL }:
      mkDerivation {
        pname = "SDL";
-       version = "0.6.5.1";
-       sha256 = "1sa3zx3vrs1gbinxx33zwq0x2bsf3i964bff7419p7vzidn36k46";
-       revision = "1";
-       editedCabalFile = "0gj76j31i8rnlnvkf6hr8ljc6qmqqqcndy0bgrcppji78zg3ygi3";
+       version = "0.6.6.0";
+       sha256 = "0wpddhq5vwm2m1q8ja1p6draz4f40p1snmdshxwqnyyj3nchqz0z";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base ];
        librarySystemDepends = [ SDL ];
@@ -16338,8 +16394,8 @@ self: {
      }:
      mkDerivation {
        pname = "ShellCheck";
-       version = "0.4.6";
-       sha256 = "1g5ihsma3zgb7q89n2j4772f504nnhfn065xdz6bqgrnjhkrpsqi";
+       version = "0.4.7";
+       sha256 = "0z0dlx4s0j5v627cvns5qdq1r6kcka5nif8g62hdria29lk5aj8q";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -21398,13 +21454,13 @@ self: {
 
   "aern2-real" = callPackage
     ({ mkDerivation, aern2-mp, aeson, base, bytestring, containers
-     , convertible, elm-bridge, hspec, lens, mixed-types-num, QuickCheck
-     , random, stm, transformers
+     , convertible, hspec, lens, mixed-types-num, QuickCheck, random
+     , stm, transformers
      }:
      mkDerivation {
        pname = "aern2-real";
-       version = "0.1.0.2";
-       sha256 = "1bm0w1wvyga97ahg9p31w3lj7rhq8q0bz2my0g0n7vrlm98jv8v0";
+       version = "0.1.1.0";
+       sha256 = "1sq2s20vwhm0avdzqg2vb5ck6rj7aw16kcfkdyhda0dl6s2l5q15";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -21412,7 +21468,7 @@ self: {
          mixed-types-num QuickCheck stm transformers
        ];
        executableHaskellDepends = [
-         aern2-mp base elm-bridge mixed-types-num QuickCheck random
+         aern2-mp base mixed-types-num QuickCheck random
        ];
        testHaskellDepends = [ base hspec QuickCheck ];
        homepage = "https://github.com/michalkonecny/aern2";
@@ -22603,7 +22659,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "airship_0_9_1" = callPackage
+  "airship_0_9_2" = callPackage
     ({ mkDerivation, attoparsec, base, base64-bytestring, blaze-builder
      , bytestring, bytestring-trie, case-insensitive, containers
      , cryptohash, directory, either, filepath, http-date, http-media
@@ -22614,8 +22670,8 @@ self: {
      }:
      mkDerivation {
        pname = "airship";
-       version = "0.9.1";
-       sha256 = "09kjgb3zv03n0h1brw61xccrs37219pdphah3cwa397vhlncmlgq";
+       version = "0.9.2";
+       sha256 = "02r607yqvr5w6i6hba0ifbc02fshxijd4g46ygird9lsarcr2svp";
        libraryHaskellDepends = [
          attoparsec base base64-bytestring blaze-builder bytestring
          bytestring-trie case-insensitive containers cryptohash directory
@@ -22778,8 +22834,8 @@ self: {
      }:
      mkDerivation {
        pname = "aivika-gpss";
-       version = "0.4";
-       sha256 = "0yrpbq0ppck1z9d7whzfknia16sac6jpr80mi8bw6g65hjcg3z1g";
+       version = "0.5";
+       sha256 = "1szf6xaq7lk3l473rm8pls5s23nk08dwdzf875hx96i0m7kxmp6p";
        libraryHaskellDepends = [
          aivika aivika-transformers base containers hashable mtl
          unordered-containers
@@ -27928,6 +27984,7 @@ self: {
        homepage = "https://github.com/jxv/animate#readme";
        description = "Animation for sprites";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "anki-tools" = callPackage
@@ -28025,6 +28082,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "ansi-escape-codes" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "ansi-escape-codes";
+       version = "0.3.0.0";
+       sha256 = "1aj7p937c48laz5kkhil45lgkjiivcidky6vxxp3q5yvkymsijvb";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/joegesualdo/ansi-escape-codes";
+       description = "Haskell package to generate ANSI escape codes for styling strings in the terminal";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ansi-pretty" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, array, base, bytestring
      , containers, generics-sop, nats, scientific, semigroups, tagged
@@ -28377,8 +28447,8 @@ self: {
      }:
      mkDerivation {
        pname = "apecs";
-       version = "0.2.4.6";
-       sha256 = "0alf0sxsnsr1a2g7wv08jm1vh3s2kbvkn0s4a0h9ya2rjyz7dp7f";
+       version = "0.2.4.7";
+       sha256 = "0hqx0q52688zd7hdy6bcmbhycscy1laxggy8fvswglbfdm9m9n8s";
        libraryHaskellDepends = [
          async base containers mtl template-haskell vector
        ];
@@ -29693,8 +29763,8 @@ self: {
        pname = "arithmoi";
        version = "0.6.0.0";
        sha256 = "14kcv5n9rm48f9vac333cbazy4hlpb0wqgb4fbv97ivxnjs7g22m";
-       revision = "1";
-       editedCabalFile = "0408asx3296s0rwpzjmsllfjavdnh9h2rnmbvz908xs7qc5njixd";
+       revision = "2";
+       editedCabalFile = "1n2aqkcz2glzcmpiv6wi29pgvgkhqp5gwv134slhz9v3jj4ji1j3";
        configureFlags = [ "-f-llvm" ];
        libraryHaskellDepends = [
          array base containers exact-pi ghc-prim integer-gmp
@@ -30997,6 +31067,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "atomic-primops_0_8_1_1" = callPackage
+    ({ mkDerivation, base, ghc-prim, primitive }:
+     mkDerivation {
+       pname = "atomic-primops";
+       version = "0.8.1.1";
+       sha256 = "0wi18i3k5mjmyd13n1kly7021084rjm4wfpcf70zzzss1z37kxch";
+       libraryHaskellDepends = [ base ghc-prim primitive ];
+       homepage = "https://github.com/rrnewton/haskell-lockfree/wiki";
+       description = "A safe approach to CAS and other atomic ops in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "atomic-primops-foreign" = callPackage
     ({ mkDerivation, base, bits-atomic, HUnit, test-framework
      , test-framework-hunit, time
@@ -31161,6 +31244,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "attomail" = callPackage
+    ({ mkDerivation, base, bytestring, ConfigFile, directory, doctest
+     , email-validate, Glob, hsemail-ns, MissingH, mtl, network
+     , optparse-applicative, parsec, QuickCheck, random, text, time
+     , transformers, unix, unix-time
+     }:
+     mkDerivation {
+       pname = "attomail";
+       version = "0.1.0.2";
+       sha256 = "0yryvw8qcp0vgal4dn48xi7x42wl9b1bwfbh0chnvbi5rwnwspyr";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base bytestring ConfigFile directory email-validate hsemail-ns
+         MissingH mtl network optparse-applicative parsec random text time
+         transformers unix unix-time
+       ];
+       testHaskellDepends = [ base doctest Glob QuickCheck ];
+       description = "Minimal mail delivery agent (MDA) for local mail with maildir support";
+       license = stdenv.lib.licenses.bsd2;
+     }) {};
+
   "attoparsec" = callPackage
     ({ mkDerivation, array, base, bytestring, case-insensitive
      , containers, criterion, deepseq, directory, filepath, ghc-prim
@@ -33541,12 +33646,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "base_4_10_0_0" = callPackage
+  "base_4_10_1_0" = callPackage
     ({ mkDerivation, ghc-prim, invalid-cabal-flag-settings, rts }:
      mkDerivation {
        pname = "base";
-       version = "4.10.0.0";
-       sha256 = "06sgjlf3v3yyp0rdyi3f7qlp5iqw7kg0zrwml9lmccdy93pahclv";
+       version = "4.10.1.0";
+       sha256 = "0hnzhqdf2bxz9slia67sym6s0hi5szh8596kcckighchs9jzl9wx";
        libraryHaskellDepends = [
          ghc-prim invalid-cabal-flag-settings rts
        ];
@@ -33919,6 +34024,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "basic-prelude_0_7_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, filepath, hashable
+     , text, transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "basic-prelude";
+       version = "0.7.0";
+       sha256 = "0yckmnvm6i4vw0mykj4fzl4ldsf67v8d2h0vp1bakyj84n4myx8h";
+       libraryHaskellDepends = [
+         base bytestring containers filepath hashable text transformers
+         unordered-containers vector
+       ];
+       homepage = "https://github.com/snoyberg/basic-prelude#readme";
+       description = "An enhanced core prelude; a common foundation for alternate preludes";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "basic-sop" = callPackage
     ({ mkDerivation, base, deepseq, generics-sop, QuickCheck, text }:
      mkDerivation {
@@ -34083,14 +34206,15 @@ self: {
      }) {};
 
   "bbdb" = callPackage
-    ({ mkDerivation, base, mtl, parsec }:
+    ({ mkDerivation, base, hspec, parsec }:
      mkDerivation {
        pname = "bbdb";
-       version = "0.5";
-       sha256 = "13pf760i1iwgfnbh33cgmrri2i87rqlnszcnsq8gwn16h23cr883";
-       libraryHaskellDepends = [ base mtl parsec ];
-       homepage = "http://www.nadineloveshenry.com/haskell/database-bbdb.html";
-       description = "Ability to read, write, and examine BBDB files";
+       version = "0.8";
+       sha256 = "0p1aphzp55h4zlh3h8xnm6mxvsxyrab98ms8f07iqvp4p267kryw";
+       libraryHaskellDepends = [ base parsec ];
+       testHaskellDepends = [ base hspec parsec ];
+       homepage = "https://github.com/henrylaxen/bbdb";
+       description = "Ability to read, write, and modify BBDB files";
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
@@ -34235,12 +34359,14 @@ self: {
      }) {};
 
   "bearriver" = callPackage
-    ({ mkDerivation, base, dunai, mtl, transformers }:
+    ({ mkDerivation, base, dunai, MonadRandom, mtl, transformers }:
      mkDerivation {
        pname = "bearriver";
-       version = "0.10.4.1";
-       sha256 = "19jq8azrknjir2zd97graa7qx8i0gxw0wyhfcq00y33w1qq6172c";
-       libraryHaskellDepends = [ base dunai mtl transformers ];
+       version = "0.10.4.2";
+       sha256 = "1y8ha8kllp0s6v89q8kyzhmlchrldf9rahdk3sx9qygwbq36fg09";
+       libraryHaskellDepends = [
+         base dunai MonadRandom mtl transformers
+       ];
        homepage = "keera.co.uk";
        description = "A replacement of Yampa based on Monadic Stream Functions";
        license = stdenv.lib.licenses.bsd3;
@@ -34331,24 +34457,6 @@ self: {
      }) {};
 
   "bench" = callPackage
-    ({ mkDerivation, base, criterion, optparse-applicative, silently
-     , text, turtle
-     }:
-     mkDerivation {
-       pname = "bench";
-       version = "1.0.6";
-       sha256 = "0ss5liap1f71i7igpszdpb6himl30gibydlknx9ka44dsrh7dhq9";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         base criterion optparse-applicative silently text turtle
-       ];
-       homepage = "http://github.com/Gabriel439/bench";
-       description = "Command-line benchmark tool";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "bench_1_0_7" = callPackage
     ({ mkDerivation, base, criterion, optparse-applicative, process
      , silently, text, turtle
      }:
@@ -34364,7 +34472,6 @@ self: {
        homepage = "http://github.com/Gabriel439/bench";
        description = "Command-line benchmark tool";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "benchmark-function" = callPackage
@@ -34751,6 +34858,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "bifunctors_5_5" = callPackage
+    ({ mkDerivation, base, base-orphans, comonad, containers, hspec
+     , QuickCheck, semigroups, tagged, template-haskell, th-abstraction
+     , transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "bifunctors";
+       version = "5.5";
+       sha256 = "0a5y85p1dhcvkagpdci6ah5kczc2jpwsj7ywkd9cg0nqcyzq3icj";
+       libraryHaskellDepends = [
+         base base-orphans comonad containers semigroups tagged
+         template-haskell th-abstraction transformers transformers-compat
+       ];
+       testHaskellDepends = [
+         base hspec QuickCheck template-haskell transformers
+         transformers-compat
+       ];
+       homepage = "http://github.com/ekmett/bifunctors/";
+       description = "Bifunctors";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "bighugethesaurus" = callPackage
     ({ mkDerivation, base, HTTP, split }:
      mkDerivation {
@@ -35562,8 +35692,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "bindings-DSL";
-       version = "1.0.23";
-       sha256 = "1rqhkk8hn1xjl3705dvakxx93q89vp0fw22v2cbrlapbir27cv7b";
+       version = "1.0.24";
+       sha256 = "03n8z5qxrrq4l6h2f3xyav45f5v2gr112g4l4r4jw8yfvr8qyk93";
        libraryHaskellDepends = [ base ];
        homepage = "https://github.com/jwiegley/bindings-dsl/wiki";
        description = "FFI domain specific language, on top of hsc2hs";
@@ -36660,8 +36790,8 @@ self: {
      }:
      mkDerivation {
        pname = "bisect-binary";
-       version = "0.1";
-       sha256 = "1mqhxxs6jzgizyx0j86y1ha5v7hfrww7rz9sc7vblmld37861dpj";
+       version = "0.1.0.1";
+       sha256 = "000dydglclgk65ryb2n2zdrwp1rnzv7phmh2vi8s1gpp67b5l5ad";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -37897,8 +38027,8 @@ self: {
      }:
      mkDerivation {
        pname = "ble";
-       version = "0.4.1";
-       sha256 = "1ascfscxg24crc2bv1vsgdp72gg3lql2pabg66zhv8vcvqcrlcah";
+       version = "0.4.2";
+       sha256 = "0vpmz66qg4kqkg6rqwpnp21d36yzywxvlcxxfbqrpv2kdy8pm3pb";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -38959,8 +39089,8 @@ self: {
        pname = "bound";
        version = "2.0.1";
        sha256 = "0xmvkwambzmji1czxipl9cms5l3v98765b9spmb3wn5n6dpj0ji9";
-       revision = "1";
-       editedCabalFile = "0hqs7k5xyfpfcrfms342jj81gzrgxkrkvrl68061nkmsc5xrm4ix";
+       revision = "2";
+       editedCabalFile = "1ls2p35png3wjbldvgknkpsg1xsgxzgkb1mmvzjpbbgxhfhk8x68";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base bifunctors binary bytes cereal comonad deepseq hashable mmorph
@@ -39268,7 +39398,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "brick_0_29" = callPackage
+  "brick_0_30" = callPackage
     ({ mkDerivation, base, config-ini, containers, contravariant
      , data-clist, deepseq, dlist, microlens, microlens-mtl
      , microlens-th, stm, template-haskell, text, text-zipper
@@ -39276,8 +39406,8 @@ self: {
      }:
      mkDerivation {
        pname = "brick";
-       version = "0.29";
-       sha256 = "05zwp8rrb9iyfcp36pczxr8l035wsi5nnmc4dwv1d5vn7rcbiipw";
+       version = "0.30";
+       sha256 = "0annvmb68vazmk3cabk01n9i00lifijxmxkbq1280yhack2q0mzz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -39334,35 +39464,35 @@ self: {
 
   "brittany" = callPackage
     ({ mkDerivation, aeson, base, butcher, bytestring, cmdargs
-     , containers, czipwith, data-tree-print, deepseq, directory, either
-     , extra, filepath, ghc, ghc-boot-th, ghc-exactprint, ghc-paths
-     , hspec, monad-memo, mtl, multistate, neat-interpolation, parsec
-     , pretty, safe, semigroups, strict, syb, text, transformers
-     , uniplate, unsafe, yaml
+     , containers, czipwith, data-tree-print, deepseq, directory, extra
+     , filepath, ghc, ghc-boot-th, ghc-exactprint, ghc-paths, hspec
+     , monad-memo, mtl, multistate, neat-interpolation, parsec, pretty
+     , safe, semigroups, strict, syb, text, transformers, uniplate
+     , unsafe, yaml
      }:
      mkDerivation {
        pname = "brittany";
-       version = "0.8.0.3";
-       sha256 = "0a468lq4gnhax4kfrwi2ligc4mjbrs0jqxgh1f4j86ql53k4mpg9";
+       version = "0.9.0.0";
+       sha256 = "0fi87p8ybibwhsmbh35xhipfkdg3kdwqb6n3y5ynql7603kssgc1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson base butcher bytestring cmdargs containers czipwith
-         data-tree-print deepseq directory either extra ghc ghc-boot-th
+         data-tree-print deepseq directory extra ghc ghc-boot-th
          ghc-exactprint ghc-paths monad-memo mtl multistate
          neat-interpolation pretty safe semigroups strict syb text
          transformers uniplate unsafe yaml
        ];
        executableHaskellDepends = [
          aeson base butcher bytestring cmdargs containers czipwith
-         data-tree-print deepseq directory either extra filepath ghc
-         ghc-boot-th ghc-exactprint ghc-paths hspec monad-memo mtl
-         multistate neat-interpolation pretty safe semigroups strict syb
-         text transformers uniplate unsafe yaml
+         data-tree-print deepseq directory extra filepath ghc ghc-boot-th
+         ghc-exactprint ghc-paths hspec monad-memo mtl multistate
+         neat-interpolation pretty safe semigroups strict syb text
+         transformers uniplate unsafe yaml
        ];
        testHaskellDepends = [
          aeson base butcher bytestring cmdargs containers czipwith
-         data-tree-print deepseq directory either extra ghc ghc-boot-th
+         data-tree-print deepseq directory extra filepath ghc ghc-boot-th
          ghc-exactprint ghc-paths hspec monad-memo mtl multistate
          neat-interpolation parsec pretty safe semigroups strict syb text
          transformers uniplate unsafe yaml
@@ -39911,6 +40041,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "bunz" = callPackage
+    ({ mkDerivation, base, cmdargs, doctest, hspec, text, unix }:
+     mkDerivation {
+       pname = "bunz";
+       version = "0.0.2";
+       sha256 = "1n19bsa1sgjjd3c45wvyr9bpdrmj0qjr8nm50h1q4a9lf0fy66wv";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base text ];
+       executableHaskellDepends = [ base cmdargs unix ];
+       testHaskellDepends = [ base doctest hspec ];
+       homepage = "https://github.com/sendyhalim/bunz";
+       description = "CLI tool to beautify JSON string";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "burnt-explorer" = callPackage
     ({ mkDerivation, aeson, base, bitcoin-script, bytestring, process
      , scientific
@@ -40875,19 +41021,26 @@ self: {
      }) {};
 
   "c2hsc" = callPackage
-    ({ mkDerivation, base, cmdargs, containers, directory, filepath
-     , HStringTemplate, language-c, mtl, pretty, split, transformers
+    ({ mkDerivation, base, cmdargs, containers, data-default, directory
+     , filepath, here, hspec, HStringTemplate, language-c, logging
+     , monad-logger, mtl, pretty, split, temporary, text, transformers
      }:
      mkDerivation {
        pname = "c2hsc";
-       version = "0.6.5";
-       sha256 = "0c5hzi4nw9n3ir17swbwymkymnpiw958z8r2hw6656ijwqkxvzgd";
-       isLibrary = false;
+       version = "0.7.1";
+       sha256 = "02z6bfnhsngl5l4shnyw81alhsw9vhl1lbvy04azlg54fgm9sg9x";
+       isLibrary = true;
        isExecutable = true;
+       libraryHaskellDepends = [
+         base containers data-default directory filepath HStringTemplate
+         language-c logging mtl pretty split temporary text transformers
+       ];
        executableHaskellDepends = [
-         base cmdargs containers directory filepath HStringTemplate
-         language-c mtl pretty split transformers
+         base cmdargs containers data-default directory filepath
+         HStringTemplate language-c logging pretty split temporary text
+         transformers
        ];
+       testHaskellDepends = [ base here hspec logging monad-logger text ];
        homepage = "https://github.com/jwiegley/c2hsc";
        description = "Convert C API header files to .hsc and .hsc.helper.c files";
        license = stdenv.lib.licenses.bsd3;
@@ -41123,8 +41276,8 @@ self: {
     ({ mkDerivation, base, Cabal, directory, filepath }:
      mkDerivation {
        pname = "cabal-doctest";
-       version = "1.0.3";
-       sha256 = "1qyqxmw5z1418jda3q5j04pknqirfrfrqigibbxi4n31ajwlfisc";
+       version = "1.0.4";
+       sha256 = "03sawamkp95jycq9sah72iw525pdndb3x4h489zf4s3ir9avds3d";
        libraryHaskellDepends = [ base Cabal directory filepath ];
        homepage = "https://github.com/phadej/cabal-doctest";
        description = "A Setup.hs helper for doctests running";
@@ -41264,8 +41417,8 @@ self: {
        pname = "cabal-install";
        version = "2.0.0.1";
        sha256 = "16ax1lx89jdgf9pqka423h2bf8dblkra48n4y3icg8fs79py74gr";
-       revision = "1";
-       editedCabalFile = "1c2ylvdb808swxwin243bz3ma55mg6q0l767dhwjcjimaz5f4gk7";
+       revision = "3";
+       editedCabalFile = "148rq7hcbl8rq7pkywn1hk3l7lv442flf6b0wamfixxzxk74fwlj";
        isLibrary = false;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath process ];
@@ -43677,10 +43830,10 @@ self: {
     ({ mkDerivation, alg, base }:
      mkDerivation {
        pname = "category";
-       version = "0.1.1.0";
-       sha256 = "1jfwcxbyd12ykfff2113i39d47bp0d5ikj2sj69mxz137d2lqhlq";
+       version = "0.2.0.0";
+       sha256 = "1zl7jsc99wqdw6fibxr9l3zf7xprkh5q1681gx6d5kvj9cfahcav";
        revision = "1";
-       editedCabalFile = "0rv05qfjx61lh2cf1dir3k3w1sjxlcbdypi2bjd35dj19vxg5hvl";
+       editedCabalFile = "0j24ymqy443wx7r5w8xklqsp1x133pwlwfni92qm0im66flfdb44";
        libraryHaskellDepends = [ alg base ];
        description = "Categorical types and classes";
        license = stdenv.lib.licenses.bsd3;
@@ -44833,26 +44986,27 @@ self: {
   "chatwork" = callPackage
     ({ mkDerivation, aeson, aeson-casing, base, bytestring, connection
      , data-default-class, hspec, http-api-data, http-client
-     , http-client-tls, http-types, req, servant-server, text, warp
+     , http-client-tls, http-types, req, retry, servant-server, text
+     , warp
      }:
      mkDerivation {
        pname = "chatwork";
-       version = "0.1.1.5";
-       sha256 = "1r3sayix8lid0hxx8xl424q4zcff89c5gdln7zs17jg3rb9a9x57";
+       version = "0.1.2.0";
+       sha256 = "1qgb5b8y99rh243x1mz0n12lv59l73vnhczxzq8s2h5lzcay3bps";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson aeson-casing base bytestring connection data-default-class
-         http-api-data http-client http-client-tls http-types req text
+         http-api-data http-client http-client-tls http-types req retry text
        ];
        executableHaskellDepends = [
          aeson aeson-casing base bytestring connection data-default-class
-         http-api-data http-client http-client-tls http-types req text
+         http-api-data http-client http-client-tls http-types req retry text
        ];
        testHaskellDepends = [
          aeson aeson-casing base bytestring connection data-default-class
          hspec http-api-data http-client http-client-tls http-types req
-         servant-server text warp
+         retry servant-server text warp
        ];
        homepage = "https://github.com/matsubara0507/chatwork#readme";
        description = "The ChatWork API in Haskell";
@@ -45078,6 +45232,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "chell_0_4_0_2" = callPackage
+    ({ mkDerivation, ansi-terminal, base, bytestring, options, patience
+     , random, template-haskell, text, transformers
+     }:
+     mkDerivation {
+       pname = "chell";
+       version = "0.4.0.2";
+       sha256 = "10ingy9qnbmc8cqh4i9pskcw43l0mzk8f3d76b3qz3fig5ary3j9";
+       libraryHaskellDepends = [
+         ansi-terminal base bytestring options patience random
+         template-haskell text transformers
+       ];
+       homepage = "https://john-millikin.com/software/chell/";
+       description = "A simple and intuitive library for automated testing";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "chell-hunit" = callPackage
     ({ mkDerivation, base, chell, HUnit }:
      mkDerivation {
@@ -45095,8 +45267,8 @@ self: {
     ({ mkDerivation, base, chell, QuickCheck, random }:
      mkDerivation {
        pname = "chell-quickcheck";
-       version = "0.2.5";
-       sha256 = "02bkcnx5k6r5csdnnkvk4wfd0l36nxb87i1463ynw17n7ym9s4cs";
+       version = "0.2.5.1";
+       sha256 = "1iicsys9igx7m7n4l2b8djardmjy2ah5ibzp7kzs758h460fq53a";
        libraryHaskellDepends = [ base chell QuickCheck random ];
        homepage = "https://john-millikin.com/software/chell/";
        description = "QuickCheck support for the Chell testing library";
@@ -46366,7 +46538,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "classy-prelude_1_3_0" = callPackage
+  "classy-prelude_1_3_1" = callPackage
     ({ mkDerivation, async, base, basic-prelude, bifunctors, bytestring
      , chunked-data, containers, deepseq, dlist, exceptions, ghc-prim
      , hashable, hspec, lifted-async, lifted-base, monad-unlift
@@ -46378,8 +46550,8 @@ self: {
      }:
      mkDerivation {
        pname = "classy-prelude";
-       version = "1.3.0";
-       sha256 = "048h2pcp0i2xzd92f6w48hhk5zpic040prmddcf4jp725l1ziid5";
+       version = "1.3.1";
+       sha256 = "0rk1h0kipmpk94ny2i389l6kjv7j4a55vabpm938rxv5clja2wyd";
        libraryHaskellDepends = [
          async base basic-prelude bifunctors bytestring chunked-data
          containers deepseq dlist exceptions ghc-prim hashable lifted-async
@@ -46392,7 +46564,7 @@ self: {
        testHaskellDepends = [
          base containers hspec QuickCheck transformers unordered-containers
        ];
-       homepage = "https://github.com/snoyberg/mono-traversable";
+       homepage = "https://github.com/snoyberg/mono-traversable#readme";
        description = "A typeclass-based Prelude";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -46419,15 +46591,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "classy-prelude-conduit_1_3_0" = callPackage
+  "classy-prelude-conduit_1_3_1" = callPackage
     ({ mkDerivation, base, bytestring, classy-prelude, conduit
      , conduit-combinators, hspec, monad-control, QuickCheck, resourcet
      , transformers, void
      }:
      mkDerivation {
        pname = "classy-prelude-conduit";
-       version = "1.3.0";
-       sha256 = "09ibih4k72j0k9bv8yhs7lwdg1ic3gbwqfml0wnvmykpqcl2ff0g";
+       version = "1.3.1";
+       sha256 = "0n76c6bg45zcvy1jid3lrn6cr4iz3la7dd1ym7nffvqvgrfp0r2j";
        libraryHaskellDepends = [
          base bytestring classy-prelude conduit conduit-combinators
          monad-control resourcet transformers void
@@ -46435,7 +46607,7 @@ self: {
        testHaskellDepends = [
          base bytestring conduit hspec QuickCheck transformers
        ];
-       homepage = "https://github.com/snoyberg/mono-traversable";
+       homepage = "https://github.com/snoyberg/mono-traversable#readme";
        description = "classy-prelude together with conduit functions";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -46460,21 +46632,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "classy-prelude-yesod_1_3_0" = callPackage
+  "classy-prelude-yesod_1_3_1" = callPackage
     ({ mkDerivation, aeson, base, classy-prelude
      , classy-prelude-conduit, data-default, http-conduit, http-types
      , persistent, yesod, yesod-newsfeed, yesod-static
      }:
      mkDerivation {
        pname = "classy-prelude-yesod";
-       version = "1.3.0";
-       sha256 = "1hnb0kfjly8l08v1krmcxgk6pc1xh1lg85mbkbz34pkhjx0rf7s6";
+       version = "1.3.1";
+       sha256 = "1yzkwp4gbl1jqv8r95kvbiqgf2sr9wy5ddkqdz3413y0rvwccr9x";
        libraryHaskellDepends = [
          aeson base classy-prelude classy-prelude-conduit data-default
          http-conduit http-types persistent yesod yesod-newsfeed
          yesod-static
        ];
-       homepage = "https://github.com/snoyberg/mono-traversable";
+       homepage = "https://github.com/snoyberg/mono-traversable#readme";
        description = "Provide a classy prelude including common Yesod functionality";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -46492,6 +46664,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion parallel uniplate ];
        description = "Fuseable type-class based generics";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "clay" = callPackage
@@ -47053,14 +47226,12 @@ self: {
      }) {};
 
   "clist" = callPackage
-    ({ mkDerivation, base, base-unicode-symbols, peano }:
+    ({ mkDerivation, base, natural-induction, peano }:
      mkDerivation {
        pname = "clist";
-       version = "0.1.0.0";
-       sha256 = "1jvkv6dwx2gm59vczmiagpxb0614fz63jzqrqm81bdai8yb0gpzd";
-       revision = "1";
-       editedCabalFile = "00lxh1v7dcylvm62a2bgzncfcla0b4l1nkhx8q1m3201fzwba22m";
-       libraryHaskellDepends = [ base base-unicode-symbols peano ];
+       version = "0.3.0.0";
+       sha256 = "1wicpkc1rxyjnmnlsdh975d58fwfmfqwhkd50v044g4763i36bdr";
+       libraryHaskellDepends = [ base natural-induction peano ];
        homepage = "https://github.com/strake/clist.hs";
        description = "Counted list";
        license = "unknown";
@@ -47190,6 +47361,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "closed" = callPackage
+    ({ mkDerivation, aeson, base, cassava, deepseq, hashable, hspec
+     , markdown-unlit, QuickCheck, vector
+     }:
+     mkDerivation {
+       pname = "closed";
+       version = "0.1.0";
+       sha256 = "0x87s852xfsyxnwj88kw38wmpzrj52hd7r87xx73r4ffv0lp6kh4";
+       libraryHaskellDepends = [
+         aeson base cassava deepseq hashable QuickCheck
+       ];
+       testHaskellDepends = [
+         aeson base cassava deepseq hashable hspec markdown-unlit QuickCheck
+         vector
+       ];
+       homepage = "https://github.com/frontrowed/closed#readme";
+       description = "Integers bounded by a closed interval";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "closure" = callPackage
     ({ mkDerivation, base, hashable, unordered-containers }:
      mkDerivation {
@@ -48646,19 +48837,6 @@ self: {
      }) {};
 
   "colour" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "colour";
-       version = "2.3.3";
-       sha256 = "1qmn1778xzg07jg9nx4k1spdz2llivpblf6wwrps1qpqjhsac5cd";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [ base ];
-       homepage = "http://www.haskell.org/haskellwiki/Colour";
-       description = "A model for human colour/color perception";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "colour_2_3_4" = callPackage
     ({ mkDerivation, base, QuickCheck, random, test-framework
      , test-framework-quickcheck2
      }:
@@ -48674,7 +48852,6 @@ self: {
        homepage = "http://www.haskell.org/haskellwiki/Colour";
        description = "A model for human colour/color perception";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "colour-accelerate" = callPackage
@@ -49802,30 +49979,37 @@ self: {
 
   "computational-algebra" = callPackage
     ({ mkDerivation, algebra, algebraic-prelude, arithmoi, base
-     , constraints, containers, control-monad-loop, convertible
-     , criterion, deepseq, dlist, entropy, equational-reasoning
-     , ghc-typelits-knownnat, hashable, heaps, hmatrix, hspec, HUnit
-     , hybrid-vectors, lazysmallcheck, lens, matrix, monad-loops
-     , MonadRandom, mono-traversable, monomorphic, mtl, parallel, primes
-     , process, QuickCheck, quickcheck-instances, random, reflection
-     , semigroups, singletons, sized, smallcheck, tagged
-     , template-haskell, test-framework, test-framework-hunit, text
-     , transformers, type-natural, unamb, unordered-containers, vector
+     , constraint, constraints, containers, control-monad-loop
+     , convertible, criterion, deepseq, dlist, entropy
+     , equational-reasoning, ghc-typelits-knownnat
+     , ghc-typelits-natnormalise, ghc-typelits-presburger, hashable
+     , heaps, hmatrix, hspec, HUnit, hybrid-vectors, integer-logarithms
+     , lazysmallcheck, lens, ListLike, matrix, monad-loops, MonadRandom
+     , mono-traversable, monomorphic, mtl, parallel, primes, process
+     , QuickCheck, quickcheck-instances, random, reflection, semigroups
+     , singletons, sized, smallcheck, tagged, template-haskell
+     , test-framework, test-framework-hunit, text, transformers
+     , type-natural, unamb, unordered-containers, vector
+     , vector-algorithms
      }:
      mkDerivation {
        pname = "computational-algebra";
-       version = "0.5.0.0";
-       sha256 = "0jfsgzjzg5ci2pr5rsdamz062yjykwkl85z9h81i5vzwgiak3rpw";
+       version = "0.5.1.0";
+       sha256 = "1ivhfw60gv1gxv6fl8z2n3a468dkvrwff8kg1brypaixzwp589gx";
+       revision = "1";
+       editedCabalFile = "1yhxqqrfqdr9dgzxz7rqk2kisg571dplhhyhd0490jbmd4z40ly6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          algebra algebraic-prelude arithmoi base constraints containers
          control-monad-loop convertible deepseq dlist entropy
-         equational-reasoning ghc-typelits-knownnat hashable heaps hmatrix
-         hybrid-vectors lens matrix monad-loops MonadRandom mono-traversable
-         monomorphic mtl parallel primes reflection semigroups singletons
-         sized tagged template-haskell text type-natural unamb
-         unordered-containers vector
+         equational-reasoning ghc-typelits-knownnat
+         ghc-typelits-natnormalise ghc-typelits-presburger hashable heaps
+         hmatrix hybrid-vectors integer-logarithms lens ListLike matrix
+         monad-loops MonadRandom mono-traversable monomorphic mtl parallel
+         primes reflection semigroups singletons sized tagged
+         template-haskell text type-natural unamb unordered-containers
+         vector vector-algorithms
        ];
        executableHaskellDepends = [
          algebra algebraic-prelude base constraints convertible criterion
@@ -49841,13 +50025,13 @@ self: {
          test-framework-hunit text transformers type-natural vector
        ];
        benchmarkHaskellDepends = [
-         algebra base constraints containers criterion deepseq
+         algebra base constraint constraints containers criterion deepseq
          equational-reasoning hspec HUnit lens matrix MonadRandom
          monomorphic parallel process QuickCheck quickcheck-instances random
          reflection singletons sized smallcheck tagged test-framework
          test-framework-hunit transformers type-natural vector
        ];
-       homepage = "https://github.com/konn/computational-algebra";
+       homepage = "https://konn.github.com/computational-algebra";
        description = "Well-kinded computational algebra library, currently supporting Groebner basis";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -50008,36 +50192,43 @@ self: {
      }) {};
 
   "concrete-haskell" = callPackage
-    ({ mkDerivation, base, binary, bytestring, bzlib
-     , concrete-haskell-autogen, containers, directory, filepath
-     , hashable, megaparsec, monad-extras, mtl, network
+    ({ mkDerivation, base, binary, bytestring, bzlib, bzlib-conduit
+     , concrete-haskell-autogen, conduit, conduit-combinators
+     , conduit-extra, containers, cryptohash-conduit, deepseq, directory
+     , filepath, hashable, lens, megaparsec, monad-extras, mtl, network
      , optparse-generic, path, path-io, process, QuickCheck, scientific
-     , stm, tar, text, thrift, time, unordered-containers, uuid, vector
-     , zip, zlib
+     , stm, tar, tar-conduit, text, thrift, time, unordered-containers
+     , uuid, vector, zip, zip-conduit, zlib
      }:
      mkDerivation {
        pname = "concrete-haskell";
-       version = "0.1.0.15";
-       sha256 = "1g6nqr82gr5937irjs2h6ybp024k6gzpmpx1lsri8yw70kxgryjl";
+       version = "0.1.0.16";
+       sha256 = "1bjdbvsi7saqrlxybrzi35x47a08b01nlghvz9r6l04dkikjy2xc";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base binary bytestring bzlib concrete-haskell-autogen containers
-         directory filepath hashable megaparsec monad-extras mtl network
-         optparse-generic path path-io process QuickCheck scientific stm tar
-         text thrift time unordered-containers uuid vector zip zlib
+         base binary bytestring bzlib bzlib-conduit concrete-haskell-autogen
+         conduit conduit-combinators conduit-extra containers
+         cryptohash-conduit deepseq directory filepath hashable lens
+         megaparsec monad-extras mtl network optparse-generic path path-io
+         process QuickCheck scientific stm tar tar-conduit text thrift time
+         unordered-containers uuid vector zip zip-conduit zlib
        ];
        executableHaskellDepends = [
-         base binary bytestring bzlib concrete-haskell-autogen containers
-         directory filepath hashable megaparsec monad-extras mtl network
-         optparse-generic path path-io process QuickCheck scientific stm tar
-         text thrift time unordered-containers uuid vector zip zlib
+         base binary bytestring bzlib bzlib-conduit concrete-haskell-autogen
+         conduit conduit-combinators conduit-extra containers
+         cryptohash-conduit deepseq directory filepath hashable lens
+         megaparsec monad-extras mtl network optparse-generic path path-io
+         process QuickCheck scientific stm tar tar-conduit text thrift time
+         unordered-containers uuid vector zip zip-conduit zlib
        ];
        testHaskellDepends = [
-         base binary bytestring bzlib concrete-haskell-autogen containers
-         directory filepath hashable megaparsec monad-extras mtl network
-         optparse-generic path path-io process QuickCheck scientific stm tar
-         text thrift time unordered-containers uuid vector zip zlib
+         base binary bytestring bzlib bzlib-conduit concrete-haskell-autogen
+         conduit conduit-combinators conduit-extra containers
+         cryptohash-conduit deepseq directory filepath hashable lens
+         megaparsec monad-extras mtl network optparse-generic path path-io
+         process QuickCheck scientific stm tar tar-conduit text thrift time
+         unordered-containers uuid vector zip zip-conduit zlib
        ];
        homepage = "https://github.com/hltcoe";
        description = "Library for the Concrete data format";
@@ -50597,8 +50788,8 @@ self: {
      }:
      mkDerivation {
        pname = "conduit-combinators";
-       version = "1.1.1";
-       sha256 = "0609miq03lq9visfb2dqqsxghmvgzm24pq39mqby1jnnah6yh8m0";
+       version = "1.1.2";
+       sha256 = "0f31iphdi31m7cfd2szq06x3xdag1kkv2vbxh6bm2ax37k9sw2w4";
        libraryHaskellDepends = [
          base base16-bytestring base64-bytestring bytestring chunked-data
          conduit conduit-extra filepath monad-control mono-traversable
@@ -50610,7 +50801,7 @@ self: {
          conduit containers directory filepath hspec mono-traversable mtl
          mwc-random QuickCheck safe silently text transformers vector
        ];
-       homepage = "https://github.com/snoyberg/mono-traversable";
+       homepage = "https://github.com/snoyberg/mono-traversable#readme";
        description = "Commonly used conduit functions, for both chunked and unchunked data";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -50666,21 +50857,22 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "conduit-extra_1_2_0" = callPackage
+  "conduit-extra_1_2_2" = callPackage
     ({ mkDerivation, async, attoparsec, base, blaze-builder, bytestring
      , bytestring-builder, conduit, criterion, directory, exceptions
      , filepath, hspec, monad-control, network, primitive, process
      , QuickCheck, resourcet, stm, streaming-commons, text, transformers
-     , transformers-base
+     , transformers-base, typed-process, unliftio-core
      }:
      mkDerivation {
        pname = "conduit-extra";
-       version = "1.2.0";
-       sha256 = "0f13r6ypch3px7qfh6a2qj2y5yhdzwy53v0f6bxyc9xl0hxf49yq";
+       version = "1.2.2";
+       sha256 = "04bc1vy9giwfdcavrhjbmzm31lrf5360swns38yg6brql4pa2vii";
        libraryHaskellDepends = [
          async attoparsec base blaze-builder bytestring conduit directory
          exceptions filepath monad-control network primitive process
          resourcet stm streaming-commons text transformers transformers-base
+         typed-process unliftio-core
        ];
        testHaskellDepends = [
          async attoparsec base blaze-builder bytestring bytestring-builder
@@ -51484,13 +51676,12 @@ self: {
     ({ mkDerivation, base, category }:
      mkDerivation {
        pname = "constraint";
-       version = "0.1.0.0";
-       sha256 = "0m3hkvilgwmdj3w7x42ypyakbf4p2bnd0rfcwi7kpwqw79rrbvsc";
-       revision = "1";
-       editedCabalFile = "0zy2nyp81dhcqp4n3mqws47ydijhgnxx36av31g6qsdgim9symf9";
+       version = "0.1.1.0";
+       sha256 = "15kkkbqy6vjhbjl1jdqrsazrhv5k2l2vqymdjjdn3l07cfnf9lzj";
        libraryHaskellDepends = [ base category ];
        description = "Reified constraints";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "constraint-classes" = callPackage
@@ -53583,6 +53774,7 @@ self: {
        homepage = "https://github.com/cblp/crdt#readme";
        description = "Conflict-free replicated data types";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "creatur" = callPackage
@@ -53815,7 +54007,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "criterion_1_2_5_0" = callPackage
+  "criterion_1_2_6_0" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, base, base-compat, binary
      , bytestring, cassava, code-page, containers, deepseq, directory
      , exceptions, filepath, Glob, HUnit, js-flot, js-jquery
@@ -53826,8 +54018,8 @@ self: {
      }:
      mkDerivation {
        pname = "criterion";
-       version = "1.2.5.0";
-       sha256 = "15yh0kmxgi8873b3k9ic3gnp594r9bg5zqdbgm7617yrn42ifvi8";
+       version = "1.2.6.0";
+       sha256 = "0a9pjmy74cd3yirihyabavsfa6b9rrrgav86qdagw5nwjw7as1bc";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -55770,12 +55962,19 @@ self: {
      }) {};
 
   "cyclotomic" = callPackage
-    ({ mkDerivation, arithmoi, base, containers }:
+    ({ mkDerivation, arithmoi, base, containers, HUnit, QuickCheck
+     , test-framework, test-framework-hunit, test-framework-quickcheck2
+     , test-framework-smallcheck
+     }:
      mkDerivation {
        pname = "cyclotomic";
-       version = "0.4.4.1";
-       sha256 = "05rbigjqd6cp5g0kivz816vfnvvyn8jbfcds35kk46h8nwwsch2r";
+       version = "0.5.0.0";
+       sha256 = "1r8hsc2x59g5xwch417iaxd8cldm0bg00wvhjb48cb7d53lx3zf8";
        libraryHaskellDepends = [ arithmoi base containers ];
+       testHaskellDepends = [
+         base HUnit QuickCheck test-framework test-framework-hunit
+         test-framework-quickcheck2 test-framework-smallcheck
+       ];
        description = "A subfield of the complex numbers for exact calculation";
        license = stdenv.lib.licenses.gpl3;
      }) {};
@@ -55825,8 +56024,8 @@ self: {
      }:
      mkDerivation {
        pname = "d-bus";
-       version = "0.1.7";
-       sha256 = "00bd001hxh68cwrv2597qg8rpcdz0n96nn31qkqgyhbc4lni72af";
+       version = "0.1.8";
+       sha256 = "1s9md4865mzal0n69mmfbrd2xifhs8j40dl3vjympifw4li25l8q";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -56048,6 +56247,8 @@ self: {
        pname = "darcs";
        version = "2.12.5";
        sha256 = "0lrm0sal5pl453mkqn8b9fc9l7lwinc140iqihya9g17bk408nrm";
+       revision = "1";
+       editedCabalFile = "0if3ww0xhi8k5c8a9yb687gjjdp2k4q2896qn7vgwwzg360slx8n";
        configureFlags = [ "-fforce-char8-encoding" "-flibrary" ];
        isLibrary = true;
        isExecutable = true;
@@ -57911,14 +58112,14 @@ self: {
 
   "data-serializer" = callPackage
     ({ mkDerivation, base, binary, bytestring, cereal, data-endian
-     , parsers, semigroups, tasty, tasty-quickcheck
+     , parsers, semigroups, split, tasty, tasty-quickcheck
      }:
      mkDerivation {
        pname = "data-serializer";
-       version = "0.3";
-       sha256 = "0bjya0x10y55vaa86da89d5svwcckv8h10dzcyiv14q2rxxgmgn8";
+       version = "0.3.2";
+       sha256 = "055a4kqwg6cqx9a58i7m59jp70s4mmm2q73wa78jzp87lnh2646l";
        libraryHaskellDepends = [
-         base binary bytestring cereal data-endian parsers semigroups
+         base binary bytestring cereal data-endian parsers semigroups split
        ];
        testHaskellDepends = [
          base binary bytestring cereal tasty tasty-quickcheck
@@ -59737,14 +59938,14 @@ self: {
        hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
      }) {};
 
-  "dejafu_0_9_1_0" = callPackage
+  "dejafu_0_9_1_2" = callPackage
     ({ mkDerivation, base, concurrency, containers, deepseq, exceptions
      , leancheck, random, ref-fd, transformers, transformers-base
      }:
      mkDerivation {
        pname = "dejafu";
-       version = "0.9.1.0";
-       sha256 = "0s3acf1dggp6bc5140k0hbbfcwrbhl35g80qfs33nbjdbjjsfakj";
+       version = "0.9.1.2";
+       sha256 = "1cxskfl2wg3m9hja97yc0sjghskhs442l2jqwcynlhjr308g84as";
        libraryHaskellDepends = [
          base concurrency containers deepseq exceptions leancheck random
          ref-fd transformers transformers-base
@@ -60308,6 +60509,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "deriving-compat_0_4" = callPackage
+    ({ mkDerivation, base, base-compat, base-orphans, containers
+     , ghc-boot-th, ghc-prim, hspec, QuickCheck, tagged
+     , template-haskell, th-abstraction, transformers
+     , transformers-compat
+     }:
+     mkDerivation {
+       pname = "deriving-compat";
+       version = "0.4";
+       sha256 = "1jza92p1x3dbm4gx891miaihq3ly30mlz20ddwdsz0xyk7c1wk15";
+       libraryHaskellDepends = [
+         base containers ghc-boot-th ghc-prim template-haskell
+         th-abstraction transformers transformers-compat
+       ];
+       testHaskellDepends = [
+         base base-compat base-orphans hspec QuickCheck tagged
+         template-haskell transformers transformers-compat
+       ];
+       homepage = "https://github.com/haskell-compat/deriving-compat";
+       description = "Backports of GHC deriving extensions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "derp" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -60559,8 +60784,8 @@ self: {
      }:
      mkDerivation {
        pname = "dhall";
-       version = "1.8.1";
-       sha256 = "1ysvk36vq6gciayxspq7vmb0apnclyhfv4q7p933j25k01ys9gkg";
+       version = "1.8.2";
+       sha256 = "1llr12rwnd39xs51faxxvrf9n9scwsz3j2ywqdfsrr3hiasq80aj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -61182,8 +61407,8 @@ self: {
      }:
      mkDerivation {
        pname = "diagrams-rubiks-cube";
-       version = "0.2.0.1";
-       sha256 = "14l5qc74hp9ngjh9ndz7ily1nhf5z0swv8brv5yp77a80dzlxxgq";
+       version = "0.3.0.0";
+       sha256 = "10j9zag6b5mlhhmd3j0p2vxpm26rhm74ihs8xjcwh77xkywbfi7z";
        libraryHaskellDepends = [
          adjunctions base data-default-class diagrams-lib distributive lens
        ];
@@ -62440,19 +62665,21 @@ self: {
 
   "disjoint-containers" = callPackage
     ({ mkDerivation, aeson, base, containers, doctest, QuickCheck
-     , quickcheck-classes, transformers
+     , quickcheck-classes, semigroups, transformers
      }:
      mkDerivation {
        pname = "disjoint-containers";
-       version = "0.2.2";
-       sha256 = "1g1rgmgjan7zwzm38iga5hn4yri54jvmlpzkjn4c57vgjm6wbl6p";
+       version = "0.2.3";
+       sha256 = "0a6y1m0jq3lxj5vwgn4j4ij8xgkrkxb4nr7n3ba98sv8iaf1q8gw";
        libraryHaskellDepends = [ aeson base containers transformers ];
        testHaskellDepends = [
          aeson base containers doctest QuickCheck quickcheck-classes
+         semigroups
        ];
        homepage = "https://github.com/andrewthad/disjoint-containers#readme";
        description = "Disjoint containers";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "disjoint-set" = callPackage
@@ -63235,8 +63462,8 @@ self: {
        pname = "distributive";
        version = "0.5.3";
        sha256 = "0y566r97sfyvhsmd4yxiz4ns2mqgwf5bdbp56wgxl6wlkidq0wwi";
-       revision = "1";
-       editedCabalFile = "0hsq03i0qa0jvw7kaaqic40zvfkzhkd25dgvbdg6hjzylf1k1gax";
+       revision = "2";
+       editedCabalFile = "02j27xvlj0jw3b2jpfg6wbysj0blllin792wj6qnrgnrvd4haj7v";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base base-orphans tagged transformers transformers-compat
@@ -63731,21 +63958,21 @@ self: {
      }) {};
 
   "docker-build-cacher" = callPackage
-    ({ mkDerivation, base, containers, foldl, language-dockerfile
+    ({ mkDerivation, base, containers, foldl, language-docker
      , system-filepath, text, turtle
      }:
      mkDerivation {
        pname = "docker-build-cacher";
-       version = "1.7.1";
-       sha256 = "0b10irbr75y0hl9mzpp6ws72gk3vqzpy5axdqa7f45zaxam8iim9";
+       version = "1.8.2";
+       sha256 = "0kmr7b0i5wbcn6r2f2pi4ndnzr4kdi3yj2v1pxwqyv8v0d6h55gi";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base containers foldl language-dockerfile system-filepath text
-         turtle
+         base containers foldl language-docker system-filepath text turtle
        ];
        description = "Builds a services with docker and caches all of its intermediate stages";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "dockercook" = callPackage
@@ -64824,6 +65051,40 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "drifter-postgresql_0_2_0" = callPackage
+    ({ mkDerivation, base, containers, drifter, either, mtl
+     , postgresql-simple, tasty, tasty-hunit, text, time, transformers
+     }:
+     mkDerivation {
+       pname = "drifter-postgresql";
+       version = "0.2.0";
+       sha256 = "0nl26zzvj3wvz13xgjn1j70br69wlaj1ddaz10d9ib6n1brn6hcd";
+       libraryHaskellDepends = [
+         base containers drifter either mtl postgresql-simple time
+         transformers
+       ];
+       testHaskellDepends = [
+         base drifter either postgresql-simple tasty tasty-hunit text
+       ];
+       homepage = "http://github.com/michaelxavier/drifter-postgresql";
+       description = "PostgreSQL support for the drifter schema migration tool";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "drinkery" = callPackage
+    ({ mkDerivation, base, criterion, mtl, transformers }:
+     mkDerivation {
+       pname = "drinkery";
+       version = "0";
+       sha256 = "06ad33l3xv9paspb5ymr97zzb4dkdfq9sg40b3i62nf52gpjfdly";
+       libraryHaskellDepends = [ base mtl transformers ];
+       benchmarkHaskellDepends = [ base criterion ];
+       homepage = "https://github.com/fumieval/drinkery#readme";
+       description = "Boozy streaming library";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "drmaa" = callPackage
     ({ mkDerivation, base, directory, drmaa, inline-c }:
      mkDerivation {
@@ -65231,8 +65492,8 @@ self: {
      }:
      mkDerivation {
        pname = "dumb-cas";
-       version = "0.1.1.1";
-       sha256 = "0pimlspgrfv04hwz91krbcq0g01fhrp9vgi2sj1kc7wz9hcd1pva";
+       version = "0.1.2.0";
+       sha256 = "03zyv1p69lhxg3z86rlyywzh305kpld3a79kr6c5swsm3pw8mnh5";
        libraryHaskellDepends = [
          base containers decimal-literals hashable template-haskell
          unordered-containers
@@ -65283,12 +65544,15 @@ self: {
      }) {};
 
   "dunai" = callPackage
-    ({ mkDerivation, base, transformers, transformers-base }:
+    ({ mkDerivation, base, MonadRandom, transformers, transformers-base
+     }:
      mkDerivation {
        pname = "dunai";
-       version = "0.3.0.0";
-       sha256 = "0ncznc3khbanqsq4ab0n246sx30slq13awclafln5bjxvi1cx3yl";
-       libraryHaskellDepends = [ base transformers transformers-base ];
+       version = "0.4.0.0";
+       sha256 = "05xqhbz0x7wzfka4wl2wvfhzr242nx4ci4r3zvm89mcyxn9q7x6n";
+       libraryHaskellDepends = [
+         base MonadRandom transformers transformers-base
+       ];
        homepage = "https://github.com/ivanperez-keera/dunai";
        description = "Generalised reactive framework supporting classic, arrowized and monadic FRP";
        license = stdenv.lib.licenses.bsd3;
@@ -65972,18 +66236,15 @@ self: {
      }) {};
 
   "easyrender" = callPackage
-    ({ mkDerivation, base, bytestring, containers, mtl, superdoc, zlib
+    ({ mkDerivation, base, bytestring, Cabal, containers, mtl, superdoc
+     , zlib
      }:
      mkDerivation {
        pname = "easyrender";
-       version = "0.1.1.2";
-       sha256 = "05m65ap055kayi9jj6c0z6csh0kq9pzk889q4zyrmgh504qmyg9h";
-       revision = "1";
-       editedCabalFile = "0gpx9gx2swmvkgddsnqncyy80gqjvnl9hwkqzmv72gc0dswkkki6";
-       setupHaskellDepends = [ base superdoc ];
-       libraryHaskellDepends = [
-         base bytestring containers mtl superdoc zlib
-       ];
+       version = "0.1.1.3";
+       sha256 = "105s3d5yz7qz9cv5jq005kzd7jfdn2fccnc4s1xgkszk46y83qbx";
+       setupHaskellDepends = [ base Cabal superdoc ];
+       libraryHaskellDepends = [ base bytestring containers mtl zlib ];
        homepage = "http://www.mathstat.dal.ca/~selinger/easyrender/";
        description = "User-friendly creation of EPS, PostScript, and PDF files";
        license = stdenv.lib.licenses.gpl3;
@@ -66986,6 +67247,7 @@ self: {
        homepage = "https://github.com/adinapoli/ekg-prometheus-adapter#readme";
        description = "Easily expose your EKG metrics to Prometheus";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ekg-push" = callPackage
@@ -68057,6 +68319,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "engine-io-wai_1_0_7" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, either, engine-io
+     , http-types, mtl, text, transformers, transformers-compat
+     , unordered-containers, wai, wai-websockets, websockets
+     }:
+     mkDerivation {
+       pname = "engine-io-wai";
+       version = "1.0.7";
+       sha256 = "13aa7x94z32c2gfzwjxh9808alcwqhxmxgn42r4jyqfylis2p73a";
+       libraryHaskellDepends = [
+         attoparsec base bytestring either engine-io http-types mtl text
+         transformers transformers-compat unordered-containers wai
+         wai-websockets websockets
+       ];
+       homepage = "http://github.com/ocharles/engine.io";
+       description = "An @engine-io@ @ServerAPI@ that is compatible with @Wai@";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "engine-io-yesod" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-extra
      , engine-io, http-types, text, unordered-containers, wai
@@ -68852,15 +69134,21 @@ self: {
      }) {};
 
   "errors-ext" = callPackage
-    ({ mkDerivation, base, errors, exceptions, HUnit, transformers }:
+    ({ mkDerivation, base, errors, exceptions, HUnit, monad-control
+     , mtl, transformers
+     }:
      mkDerivation {
        pname = "errors-ext";
-       version = "0.2.1";
-       sha256 = "0qdx8km48zzwwhzz0ah15299klmlmbjk7bp2xwbm4jb0nspkdxgx";
-       libraryHaskellDepends = [ base errors exceptions transformers ];
-       testHaskellDepends = [ base errors exceptions HUnit transformers ];
+       version = "0.4.1";
+       sha256 = "1xly8pgkbqkm4mb1zg9bga08gx5fj4nrmidzj5p8anqdksq7ib5h";
+       libraryHaskellDepends = [
+         base errors exceptions monad-control mtl transformers
+       ];
+       testHaskellDepends = [
+         base errors exceptions HUnit monad-control mtl transformers
+       ];
        homepage = "https://github.com/A1-Triard/errors-ext#readme";
-       description = "Bracket-like functions for ExceptT over IO monad";
+       description = "`bracket`-like functions for `ExceptT` over `IO` monad";
        license = stdenv.lib.licenses.asl20;
      }) {};
 
@@ -71060,20 +71348,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "extra_1_6_1" = callPackage
+  "extra_1_6_2" = callPackage
     ({ mkDerivation, base, clock, directory, filepath, process
      , QuickCheck, time, unix
      }:
      mkDerivation {
        pname = "extra";
-       version = "1.6.1";
-       sha256 = "0x2byc1k8lznrq226pg1xrd48q6x9l7id6b2cdah0b6xigr0mya2";
+       version = "1.6.2";
+       sha256 = "1l8l8724g3kd3f01pq429y7czr1bnhbrq2y0lii1hi767sjxgnz4";
        libraryHaskellDepends = [
          base clock directory filepath process time unix
        ];
-       testHaskellDepends = [
-         base clock directory filepath QuickCheck unix
-       ];
+       testHaskellDepends = [ base directory filepath QuickCheck unix ];
        homepage = "https://github.com/ndmitchell/extra#readme";
        description = "Extra functions I use";
        license = stdenv.lib.licenses.bsd3;
@@ -71154,8 +71440,8 @@ self: {
     ({ mkDerivation, base, leancheck, speculate, template-haskell }:
      mkDerivation {
        pname = "extrapolate";
-       version = "0.2.4";
-       sha256 = "14i1kb4l1wnc47fp2if95yk5jrb4s0p81c8bgda7lwihas9x8h9r";
+       version = "0.3.0";
+       sha256 = "1mqhn515mq730frzcadw4m0zsizk1vkhcygazy6y03533mai0z2g";
        libraryHaskellDepends = [
          base leancheck speculate template-haskell
        ];
@@ -72252,6 +72538,23 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "fedora-haskell-tools_0_4" = callPackage
+    ({ mkDerivation, base, directory, filepath, process, time, unix }:
+     mkDerivation {
+       pname = "fedora-haskell-tools";
+       version = "0.4";
+       sha256 = "0105i1klks1f0gcq9fyv1pbfrm3mfiwp14pdac0xb8hm1fbhbs70";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base directory filepath process time unix
+       ];
+       homepage = "https://github.com/fedora-haskell/fedora-haskell-tools";
+       description = "Building and managing tools for Fedora Haskell";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "fedora-packages" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, hlint
      , HsOpenSSL, hspec, http-streams, io-streams, lens, text
@@ -72276,6 +72579,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "fee-estimate" = callPackage
+    ({ mkDerivation, base, QuickCheck }:
+     mkDerivation {
+       pname = "fee-estimate";
+       version = "0.1.0.0";
+       sha256 = "06qfc18dhkhxpy0rhs20kw83bf1mzq94wy6azv3zj2ik8shq501r";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base QuickCheck ];
+       executableHaskellDepends = [ base QuickCheck ];
+       testHaskellDepends = [ base QuickCheck ];
+       homepage = "https://github.com/sahabi/fee-estimate#readme";
+       description = "Short description of your package";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "feed" = callPackage
     ({ mkDerivation, base, HUnit, old-locale, old-time, test-framework
      , test-framework-hunit, time, time-locale-compat, utf8-string, xml
@@ -73624,6 +73943,7 @@ self: {
        homepage = "https://github.com/ChrisPenner/Firefly#readme";
        description = "A simple example using Firefly";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "first-and-last" = callPackage
@@ -73734,15 +74054,13 @@ self: {
      }:
      mkDerivation {
        pname = "fitspec";
-       version = "0.4.3";
-       sha256 = "0kbv2bz4cf8bvv8i5ypcldcyxd6l7f6wwsb85vfmjqrq7kn2apr2";
+       version = "0.4.4";
+       sha256 = "15vmdipw3pz6x4x2c1ywf0h0jbiy14p557mx3hm2zhdpxn1bdwyr";
        libraryHaskellDepends = [
          base cmdargs leancheck template-haskell
        ];
-       testHaskellDepends = [ base cmdargs leancheck template-haskell ];
-       benchmarkHaskellDepends = [
-         base cmdargs leancheck pretty template-haskell
-       ];
+       testHaskellDepends = [ base leancheck ];
+       benchmarkHaskellDepends = [ base pretty ];
        homepage = "https://github.com/rudymatela/fitspec#readme";
        description = "refining property sets for testing Haskell programs";
        license = stdenv.lib.licenses.bsd3;
@@ -74354,15 +74672,17 @@ self: {
      }) {};
 
   "flay" = callPackage
-    ({ mkDerivation, base, constraints, tasty, tasty-quickcheck }:
+    ({ mkDerivation, base, constraints, ghc-prim, tasty
+     , tasty-quickcheck
+     }:
      mkDerivation {
        pname = "flay";
-       version = "0.1";
-       sha256 = "18wdvidn1d4cnxcl11nfabqjqx5dpgvijim46wvp3dfvh8lc8kn4";
-       libraryHaskellDepends = [ base constraints ];
+       version = "0.2";
+       sha256 = "1sdwcjjsgq0ba84474pdnvppg66vmqsqn6frb97ricdnyy78lg11";
+       libraryHaskellDepends = [ base constraints ghc-prim ];
        testHaskellDepends = [ base tasty tasty-quickcheck ];
        homepage = "https://github.com/k0001/flay";
-       description = "Work on your datatype without knowing its shape nor its contents";
+       description = "Work generically on your datatype without knowing its shape nor its contents";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -74912,6 +75232,7 @@ self: {
        ];
        description = "A simple web application as a online practice website for XDU SE 2017 fall SPM";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "fluffy-parser" = callPackage
@@ -74927,6 +75248,7 @@ self: {
        ];
        description = "The parser for fluffy to parsec the question bank in .docx type";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "fluid-idl" = callPackage
@@ -76695,6 +77017,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "freer-simple" = callPackage
+    ({ mkDerivation, base, criterion, extensible-effects, free, mtl
+     , natural-transformation, QuickCheck, tasty, tasty-hunit
+     , tasty-quickcheck, transformers-base
+     }:
+     mkDerivation {
+       pname = "freer-simple";
+       version = "1.0.0.0";
+       sha256 = "11nh0majlmn6aw5qzv5jfs6jx9vxk7jn72568frmryvymn2aqax8";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base natural-transformation transformers-base
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         base QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       benchmarkHaskellDepends = [
+         base criterion extensible-effects free mtl
+       ];
+       homepage = "https://github.com/lexi-lambda/freer-simple#readme";
+       description = "Implementation of a friendly effect system for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "freesect" = callPackage
     ({ mkDerivation, array, base, cpphs, directory, mtl, parallel
      , pretty, random, syb
@@ -76855,8 +77203,8 @@ self: {
      }:
      mkDerivation {
        pname = "friday-juicypixels";
-       version = "0.1.2.1";
-       sha256 = "1x0s4m4zmmaz9sa000pwip6cagjza6c8w7i9zikpb8z7xn21i1na";
+       version = "0.1.2.2";
+       sha256 = "1sci0whrkjlm731z1qk7p7sg7vaw61brcb167w9f6fbkagn2f67l";
        libraryHaskellDepends = [ base friday JuicyPixels vector ];
        testHaskellDepends = [
          base bytestring file-embed friday hspec JuicyPixels
@@ -78846,8 +79194,8 @@ self: {
        pname = "generic-aeson";
        version = "0.2.0.9";
        sha256 = "1jw4rmfsky8r8551ddjy0i3va3dj37flzf23gxniyam7zy8kzh9l";
-       revision = "1";
-       editedCabalFile = "10dy6kdn48pfl6njdhv7zwfkb3qkwazl9238n2sz9gmw575gqnjn";
+       revision = "2";
+       editedCabalFile = "05hn4bjqrx1fimlwwbv9358806m4q1dkbfw886lpkkhbflr7jmn9";
        libraryHaskellDepends = [
          aeson attoparsec base generic-deriving mtl tagged text
          unordered-containers vector
@@ -78940,6 +79288,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "generic-deriving_1_12" = callPackage
+    ({ mkDerivation, base, containers, ghc-prim, hspec
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "generic-deriving";
+       version = "1.12";
+       sha256 = "09nl2c2b54ngqv4rgv3avvallyvfnv5jfld0wk2v90srl3x6p5vk";
+       libraryHaskellDepends = [
+         base containers ghc-prim template-haskell
+       ];
+       testHaskellDepends = [ base hspec template-haskell ];
+       homepage = "https://github.com/dreixel/generic-deriving";
+       description = "Generic programming library for generalised deriving";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "generic-enum" = callPackage
     ({ mkDerivation, array, base, bytestring, hspec }:
      mkDerivation {
@@ -78953,15 +79319,15 @@ self: {
      }) {};
 
   "generic-lens" = callPackage
-    ({ mkDerivation, base, criterion, deepseq, inspection-testing, lens
-     , profunctors, QuickCheck
+    ({ mkDerivation, base, criterion, deepseq, doctest
+     , inspection-testing, lens, profunctors, QuickCheck, tagged
      }:
      mkDerivation {
        pname = "generic-lens";
-       version = "0.4.1.0";
-       sha256 = "1nlizrgnfivabc35199aizahv0za9wvp7dhsqmvhafkjj0sr5113";
-       libraryHaskellDepends = [ base profunctors ];
-       testHaskellDepends = [ base inspection-testing ];
+       version = "0.5.0.0";
+       sha256 = "0jp6qy45j7cg251pxq5x4ygg6m7gc6v57nd8ky26r18g9wn9f7w3";
+       libraryHaskellDepends = [ base profunctors tagged ];
+       testHaskellDepends = [ base doctest inspection-testing ];
        benchmarkHaskellDepends = [
          base criterion deepseq lens QuickCheck
        ];
@@ -79137,8 +79503,8 @@ self: {
        pname = "generic-xmlpickler";
        version = "0.1.0.5";
        sha256 = "1brnlgnbys811qy64aps2j03ks2p0rkihaqzaszfwl80cpsn05ym";
-       revision = "3";
-       editedCabalFile = "17z1kfyshlqr8ayljs5f2jbahvc58kqyd272afcpqvs7kq1c0aja";
+       revision = "5";
+       editedCabalFile = "18hs5adb6wfasazdlv2wf92xszyjw94i3v20w8058hl7q1ax9dv0";
        libraryHaskellDepends = [ base generic-deriving hxt text ];
        testHaskellDepends = [
          base hxt hxt-pickle-utils tasty tasty-hunit tasty-th
@@ -80107,16 +80473,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghc-boot_8_2_1" = callPackage
+  "ghc-boot_8_2_2" = callPackage
     ({ mkDerivation, base, binary, bytestring, directory, filepath
      , ghc-boot-th
      }:
      mkDerivation {
        pname = "ghc-boot";
-       version = "8.2.1";
-       sha256 = "1v9cdbhxsx7pbig4c3gq5gdp46fwq0blq6zn89x4fpq1vl1kcr6h";
-       revision = "1";
-       editedCabalFile = "0826xd0ccr77v7zqjml266g067qj2bd3mb7d7d8mipqv42j7cy8y";
+       version = "8.2.2";
+       sha256 = "0fwpfsdx584mcvavj1m961rnaryif9a0yibhlw0b2i59g3ca8f6g";
        libraryHaskellDepends = [
          base binary bytestring directory filepath ghc-boot-th
        ];
@@ -80125,12 +80489,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghc-boot-th_8_2_1" = callPackage
+  "ghc-boot-th_8_2_2" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "ghc-boot-th";
-       version = "8.2.1";
-       sha256 = "18gmrfxyqqv0gchpn35bqsk66if1q8yy4amajdz2kh9v8jz4yfz4";
+       version = "8.2.2";
+       sha256 = "0pdgimqqn1w04qw504bgcji74wj5wmxpwgj5w3wdrid47sr2d3kc";
        libraryHaskellDepends = [ base ];
        description = "Shared functionality between GHC and the @template-haskell@ library";
        license = stdenv.lib.licenses.bsd3;
@@ -80669,6 +81033,30 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ghc-prof_1_4_0_4" = callPackage
+    ({ mkDerivation, attoparsec, base, containers, directory, filepath
+     , process, scientific, tasty, tasty-hunit, temporary, text, time
+     }:
+     mkDerivation {
+       pname = "ghc-prof";
+       version = "1.4.0.4";
+       sha256 = "037g6ianbij9gx1324fbdmamqjkn6mmw9nvqh5bwpz33srf30lpn";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         attoparsec base containers scientific text time
+       ];
+       executableHaskellDepends = [ base containers scientific text ];
+       testHaskellDepends = [
+         attoparsec base containers directory filepath process tasty
+         tasty-hunit temporary text
+       ];
+       homepage = "https://github.com/maoe/ghc-prof";
+       description = "Library for parsing GHC time and allocation profiling reports";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "ghc-prof-flamegraph" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -80969,15 +81357,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghci_8_2_1" = callPackage
+  "ghci_8_2_2" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
      , deepseq, filepath, ghc-boot, ghc-boot-th, template-haskell
      , transformers, unix
      }:
      mkDerivation {
        pname = "ghci";
-       version = "8.2.1";
-       sha256 = "1nxcqnfnggpg8a04496nk59p4jmvxsjqi7425g6h970cinh2lm5f";
+       version = "8.2.2";
+       sha256 = "0j6aq2scjv0fpr5b60ac46r1n2hrcgbkrhv31yfnallwlwyqz5zn";
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq filepath ghc-boot
          ghc-boot-th template-haskell transformers unix
@@ -81606,27 +81994,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-glib";
-       version = "2.0.14";
-       sha256 = "09bmrrppbjcy90f66qdhsj2hz3x7ci80mrdgryajzqrin4zs7aqx";
-       setupHaskellDepends = [ base Cabal haskell-gi ];
-       libraryHaskellDepends = [
-         base bytestring containers haskell-gi haskell-gi-base
-         haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ glib ];
-       doHaddock = false;
-       homepage = "https://github.com/haskell-gi/haskell-gi";
-       description = "GLib bindings";
-       license = stdenv.lib.licenses.lgpl21;
-     }) {inherit (pkgs) glib;};
-
-  "gi-glib_2_0_15" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, glib
-     , haskell-gi, haskell-gi-base, haskell-gi-overloading, text
-     , transformers
-     }:
-     mkDerivation {
-       pname = "gi-glib";
        version = "2.0.15";
        sha256 = "1gfkqvw2m5i5cg9c3y33l1wqxcr8s80w0sx8kdnnfial0c4ba6cz";
        setupHaskellDepends = [ base Cabal haskell-gi ];
@@ -81639,7 +82006,6 @@ self: {
        homepage = "https://github.com/haskell-gi/haskell-gi";
        description = "GLib bindings";
        license = stdenv.lib.licenses.lgpl21;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) glib;};
 
   "gi-gobject" = callPackage
@@ -81801,8 +82167,8 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gtk";
-       version = "3.0.17";
-       sha256 = "1rplvhn3lbss66yps6jrhd9f9m6znj8ybss0rpik3dxwgmac3rw3";
+       version = "3.0.18";
+       sha256 = "1fp84dba8hg6pvkdy0mip2pz9npx0kwp492gx8p1bgf119rqqfl1";
        setupHaskellDepends = [ base Cabal haskell-gi ];
        libraryHaskellDepends = [
          base bytestring containers gi-atk gi-cairo gi-gdk gi-gdkpixbuf
@@ -82437,6 +82803,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "git_0_2_1" = callPackage
+    ({ mkDerivation, base, byteable, bytedump, bytestring, containers
+     , cryptonite, hourglass, memory, patience, random, system-fileio
+     , system-filepath, tasty, tasty-quickcheck, unix-compat
+     , utf8-string, vector, zlib, zlib-bindings
+     }:
+     mkDerivation {
+       pname = "git";
+       version = "0.2.1";
+       sha256 = "0j0hzlxb58g0q8fibg09ppag6bnhk7ym3nyzmqpwjbr6hxkdidsz";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base byteable bytestring containers cryptonite hourglass memory
+         patience random system-fileio system-filepath unix-compat
+         utf8-string vector zlib zlib-bindings
+       ];
+       testHaskellDepends = [
+         base bytedump bytestring hourglass tasty tasty-quickcheck
+       ];
+       doCheck = false;
+       homepage = "https://github.com/vincenthz/hs-git";
+       description = "Git operations in haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "git-all" = callPackage
     ({ mkDerivation, base, cmdargs, hslogger, parallel-io, regex-posix
      , shelly, system-fileio, system-filepath, text, transformers, unix
@@ -82471,15 +82863,15 @@ self: {
      , persistent, persistent-sqlite, persistent-template, process
      , QuickCheck, random, regex-tdfa, resourcet, rsync, SafeSemaphore
      , sandi, securemem, shakespeare, socks, split, stm, stm-chans
-     , template-haskell, text, time, torrent, transformers, unix
-     , unix-compat, unordered-containers, utf8-string, uuid, wai
+     , tagsoup, template-haskell, text, time, torrent, transformers
+     , unix, unix-compat, unordered-containers, utf8-string, uuid, wai
      , wai-extra, warp, warp-tls, wget, which, yesod, yesod-core
-     , yesod-default, yesod-form, yesod-static
+     , yesod-form, yesod-static
      }:
      mkDerivation {
        pname = "git-annex";
-       version = "6.20171124";
-       sha256 = "066m5s0wp1sw5ngjwgvd4cq1nxnm6jybb4qsyjwm828k4mcwywp7";
+       version = "6.20171214";
+       sha256 = "06nmsibpb1ng058gkfdspwkmv8psgd144qrxchwf3d8lfdphpkih";
        configureFlags = [
          "-fassistant" "-fcryptonite" "-fdbus" "-fdesktopnotify" "-fdns"
          "-ffeed" "-finotify" "-fpairing" "-fproduction" "-fquvi" "-fs3"
@@ -82499,10 +82891,10 @@ self: {
          network-multicast network-uri old-locale optparse-applicative
          path-pieces persistent persistent-sqlite persistent-template
          process QuickCheck random regex-tdfa resourcet SafeSemaphore sandi
-         securemem shakespeare socks split stm stm-chans template-haskell
-         text time torrent transformers unix unix-compat
+         securemem shakespeare socks split stm stm-chans tagsoup
+         template-haskell text time torrent transformers unix unix-compat
          unordered-containers utf8-string uuid wai wai-extra warp warp-tls
-         yesod yesod-core yesod-default yesod-form yesod-static
+         yesod yesod-core yesod-form yesod-static
        ];
        executableSystemDepends = [
          bup curl git gnupg lsof openssh perl rsync wget which
@@ -82913,6 +83305,8 @@ self: {
        pname = "github";
        version = "0.18";
        sha256 = "0i4cs6d95ik5c8zs2508nmhjh2v30a0qjyxfqyxhjsz48p9h5p1i";
+       revision = "1";
+       editedCabalFile = "1krz0plxhm1q1k7bb0wzl969zd5fqkgqcgfr6rmqw60njpwrdsrp";
        libraryHaskellDepends = [
          aeson aeson-compat base base-compat base16-bytestring binary
          binary-orphans byteable bytestring containers cryptohash deepseq
@@ -82998,6 +83392,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "github-release_1_1_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, http-client
+     , http-client-tls, http-types, mime-types, optparse-generic, text
+     , unordered-containers, uri-templater
+     }:
+     mkDerivation {
+       pname = "github-release";
+       version = "1.1.0";
+       sha256 = "1a3a7pil5k0danybcfk19b4rql5s4alrlbprgq9053npb2369js2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring http-client http-client-tls http-types
+         mime-types optparse-generic text unordered-containers uri-templater
+       ];
+       executableHaskellDepends = [ base ];
+       homepage = "https://github.com/tfausak/github-release#readme";
+       description = "Upload files to GitHub releases";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "github-tools" = callPackage
     ({ mkDerivation, base, bytestring, containers, exceptions, github
      , groom, html, http-client, http-client-tls, monad-parallel
@@ -84363,8 +84779,8 @@ self: {
      }:
      mkDerivation {
        pname = "gnss-converters";
-       version = "0.3.24";
-       sha256 = "18m2mw0pzry3hkq0w3gcky45na5z600wkni856k3fc97w050qym3";
+       version = "0.3.25";
+       sha256 = "1ps3jjlf9igqmllyapqznzxjkf7291i7zv8w86p2fnm6wxsd73q9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -84633,6 +85049,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "goggles" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring, binary
+     , bytestring, containers, cryptonite, exceptions, filepath, hspec
+     , http-client, http-client-tls, http-types, memory, mtl, pem
+     , QuickCheck, req, scientific, stm, text, time, transformers
+     , unix-time, x509, x509-store
+     }:
+     mkDerivation {
+       pname = "goggles";
+       version = "0.1.0.3";
+       sha256 = "0if045sxm1xss91hx2hi4hcjy2b4w7q0sas8h9ra75vmzxfn6hjz";
+       libraryHaskellDepends = [
+         aeson attoparsec base base64-bytestring binary bytestring
+         containers cryptonite exceptions filepath hspec http-client
+         http-client-tls http-types memory mtl pem QuickCheck req scientific
+         stm text time transformers unix-time x509 x509-store
+       ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       homepage = "https://github.com/ocramz/goggles";
+       description = "Interface to Google Cloud APIs";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "gogol" = callPackage
     ({ mkDerivation, aeson, base, bytestring, case-insensitive, conduit
      , conduit-extra, cryptonite, directory, exceptions, filepath
@@ -87888,8 +88327,8 @@ self: {
      }:
      mkDerivation {
        pname = "groundhog-th";
-       version = "0.8.0.1";
-       sha256 = "00vk26qa7r6znyz848rh66nn4blybprpqvvyh53h22i9ibrk2b1s";
+       version = "0.8.0.2";
+       sha256 = "13rxdmnbmsivp608xclkvjnab0dzhzyqc8zjrpm7ml9d5yc8v596";
        libraryHaskellDepends = [
          aeson base bytestring containers groundhog template-haskell text
          time unordered-containers yaml
@@ -87952,6 +88391,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "grouped-list_0_2_1_4" = callPackage
+    ({ mkDerivation, base, containers, criterion, deepseq, pointed
+     , QuickCheck, tasty, tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "grouped-list";
+       version = "0.2.1.4";
+       sha256 = "171n9mc7y3sxkcg1yx02c3snag13rkzf8n06fbc5ny7g15a8p79h";
+       libraryHaskellDepends = [ base containers deepseq pointed ];
+       testHaskellDepends = [ base QuickCheck tasty tasty-quickcheck ];
+       benchmarkHaskellDepends = [ base criterion ];
+       homepage = "https://github.com/Daniel-Diaz/grouped-list/blob/master/README.md";
+       description = "Grouped lists. Equal consecutive elements are grouped.";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "groupoid" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -88738,6 +89194,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "gym-http-api" = callPackage
+    ({ mkDerivation, aeson, base, exceptions, http-client, servant
+     , servant-client, servant-lucid, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "gym-http-api";
+       version = "0.1.0.0";
+       sha256 = "0id8npw9ziqibm0j5fqkjw7r75la2cd4zlyzsk90rpx2xf5xy20p";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base servant servant-client servant-lucid text
+         unordered-containers
+       ];
+       executableHaskellDepends = [
+         base exceptions http-client servant-client
+       ];
+       homepage = "https://github.com/stites/gym-http-api#readme";
+       description = "REST client to the gym-http-api project";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "h-booru" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
      , http-conduit, hxt, mtl, stm, template-haskell, transformers
@@ -89082,26 +89560,6 @@ self: {
      }:
      mkDerivation {
        pname = "hPDB";
-       version = "1.2.0.9";
-       sha256 = "1kcfizpsvs4nsq8yrqk6syvr9kbbff1krlc4azkpmw4s3r68hjs4";
-       libraryHaskellDepends = [
-         AC-Vector base bytestring containers deepseq directory ghc-prim
-         iterable mmap mtl Octree parallel QuickCheck tagged
-         template-haskell text unordered-containers vector zlib
-       ];
-       homepage = "https://github.com/BioHaskell/hPDB";
-       description = "Protein Databank file format library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hPDB_1_2_0_10" = callPackage
-    ({ mkDerivation, AC-Vector, base, bytestring, containers, deepseq
-     , directory, ghc-prim, iterable, mmap, mtl, Octree, parallel
-     , QuickCheck, tagged, template-haskell, text, unordered-containers
-     , vector, zlib
-     }:
-     mkDerivation {
-       pname = "hPDB";
        version = "1.2.0.10";
        sha256 = "10a5995872n6y849nhs9yl7zwp7ywfma3mabgywq7acmpppl5ka0";
        libraryHaskellDepends = [
@@ -89112,7 +89570,6 @@ self: {
        homepage = "https://github.com/BioHaskell/hPDB";
        description = "Protein Databank file format library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hPDB-examples" = callPackage
@@ -89123,32 +89580,6 @@ self: {
      }:
      mkDerivation {
        pname = "hPDB-examples";
-       version = "1.2.0.7";
-       sha256 = "06wqvr7msvvymkbzfc16zpk4klymhpgw95r8hvxaqrwph80y0c1k";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         AC-Vector base bytestring containers deepseq directory ghc-prim
-         GLUT hPDB iterable mtl Octree OpenGL QuickCheck template-haskell
-         text text-format vector
-       ];
-       testHaskellDepends = [
-         AC-Vector base bytestring containers deepseq directory ghc-prim
-         hPDB IfElse iterable mtl process template-haskell text time vector
-       ];
-       homepage = "https://github.com/BioHaskell/hPDB-examples";
-       description = "Examples for hPDB library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hPDB-examples_1_2_0_8" = callPackage
-    ({ mkDerivation, AC-Vector, base, bytestring, containers, deepseq
-     , directory, ghc-prim, GLUT, hPDB, IfElse, iterable, mtl, Octree
-     , OpenGL, process, QuickCheck, template-haskell, text, text-format
-     , time, vector
-     }:
-     mkDerivation {
-       pname = "hPDB-examples";
        version = "1.2.0.8";
        sha256 = "0zyfh2693cirr69qcmiwsmk4p8w8v6yacidcs22jcisay95v4qf6";
        isLibrary = false;
@@ -89165,7 +89596,6 @@ self: {
        homepage = "https://github.com/BioHaskell/hPDB-examples";
        description = "Examples for hPDB library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hPushover" = callPackage
@@ -91980,8 +92410,8 @@ self: {
      }:
      mkDerivation {
        pname = "hapistrano";
-       version = "0.3.4.0";
-       sha256 = "04wfaaj4qr9ysincnvcghm3bpi8l0z7a7b18zg674qaq3rsr3rn6";
+       version = "0.3.5.0";
+       sha256 = "15cjssws55awwq8j0xz8f4dd0y826f99zdv6mpxfxq97fah7zlcc";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -93756,14 +94186,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "haskeline_0_7_4_1" = callPackage
+  "haskeline_0_7_4_2" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
      , process, stm, terminfo, transformers, unix
      }:
      mkDerivation {
        pname = "haskeline";
-       version = "0.7.4.1";
-       sha256 = "0ck87j20314m8rq9is96r012h377r6rdlnw0g741sb3vcypada2a";
+       version = "0.7.4.2";
+       sha256 = "1sxhdhy9asinxn0gvd4zandbk6xkb04vy1y7lmh66f9jv66fqhsm";
        configureFlags = [ "-fterminfo" ];
        libraryHaskellDepends = [
          base bytestring containers directory filepath process stm terminfo
@@ -94220,19 +94650,6 @@ self: {
     ({ mkDerivation, base, bytestring, containers, glib, text }:
      mkDerivation {
        pname = "haskell-gi-base";
-       version = "0.20.5";
-       sha256 = "1854v6z8ragc5bbv4jc1qwbn85pw7z9gsqd17qizps6zmpx3gm9a";
-       libraryHaskellDepends = [ base bytestring containers text ];
-       libraryPkgconfigDepends = [ glib ];
-       homepage = "https://github.com/haskell-gi/haskell-gi-base";
-       description = "Foundation for libraries generated by haskell-gi";
-       license = stdenv.lib.licenses.lgpl21;
-     }) {inherit (pkgs) glib;};
-
-  "haskell-gi-base_0_20_7" = callPackage
-    ({ mkDerivation, base, bytestring, containers, glib, text }:
-     mkDerivation {
-       pname = "haskell-gi-base";
        version = "0.20.7";
        sha256 = "1w44ag3kvfhba3az11h15fg4xyx8a6zq3bj9d41afcv9rqmr2a7c";
        libraryHaskellDepends = [ base bytestring containers text ];
@@ -94240,7 +94657,6 @@ self: {
        homepage = "https://github.com/haskell-gi/haskell-gi-base";
        description = "Foundation for libraries generated by haskell-gi";
        license = stdenv.lib.licenses.lgpl21;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) glib;};
 
   "haskell-gi-overloading_0_0" = callPackage
@@ -94301,6 +94717,18 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "haskell-holes-th" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "haskell-holes-th";
+       version = "1.0.0.0";
+       sha256 = "13xyxck9f15mwi641zs9zw77cnrgh30p2771f66haby96k8wx9jf";
+       libraryHaskellDepends = [ base template-haskell ];
+       homepage = "https://github.com/8084/haskell-holes-th";
+       description = "Infer haskell code by given type";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "haskell-igraph" = callPackage
     ({ mkDerivation, base, binary, bytestring, bytestring-lexing, c2hs
      , colour, data-default-class, data-ordlist, hashable, hxt, igraph
@@ -94455,6 +94883,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-lsp-client" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , haskell-lsp, lens, process, text, unix
+     }:
+     mkDerivation {
+       pname = "haskell-lsp-client";
+       version = "1.0.0.0";
+       sha256 = "1c4zjq5vh46gxw3jrfh1f3hk1cbjqg8j2dlz6axb75ir14kxgky1";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers haskell-lsp lens process text
+       ];
+       executableHaskellDepends = [
+         base directory haskell-lsp lens process text unix
+       ];
+       homepage = "https://github.com/noughtmare/haskell-lsp-client#readme";
+       description = "A haskell package to build your own Language Server client";
+       license = stdenv.lib.licenses.gpl2;
+     }) {};
+
   "haskell-menu" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -94846,6 +95295,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-src-exts_1_20_1" = callPackage
+    ({ mkDerivation, array, base, containers, cpphs, directory
+     , filepath, ghc-prim, happy, mtl, pretty, pretty-show, smallcheck
+     , tasty, tasty-golden, tasty-smallcheck
+     }:
+     mkDerivation {
+       pname = "haskell-src-exts";
+       version = "1.20.1";
+       sha256 = "1jsjl9hja2dpcfq4mzlfpwyr6axwnwgacfb7aa070kz4lbygzaa8";
+       libraryHaskellDepends = [ array base cpphs ghc-prim pretty ];
+       libraryToolDepends = [ happy ];
+       testHaskellDepends = [
+         base containers directory filepath mtl pretty-show smallcheck tasty
+         tasty-golden tasty-smallcheck
+       ];
+       doCheck = false;
+       homepage = "https://github.com/haskell-suite/haskell-src-exts";
+       description = "Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-src-exts-observe" = callPackage
     ({ mkDerivation, base, haskell-src-exts, Hoed }:
      mkDerivation {
@@ -95012,14 +95483,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-ast_1_0_0_0" = callPackage
+  "haskell-tools-ast_1_0_0_2" = callPackage
     ({ mkDerivation, base, ghc, mtl, references, template-haskell
      , uniplate
      }:
      mkDerivation {
        pname = "haskell-tools-ast";
-       version = "1.0.0.0";
-       sha256 = "174xh6a0p43kb0cia3z1n18kqhpsnbf51299l0rbn2makvn68zk4";
+       version = "1.0.0.2";
+       sha256 = "02g90k13yif22dpil39icx95xfm4ac13b8xc6n40wglci8fmy8pz";
        libraryHaskellDepends = [
          base ghc mtl references template-haskell uniplate
        ];
@@ -95101,15 +95572,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-backend-ghc_1_0_0_0" = callPackage
+  "haskell-tools-backend-ghc_1_0_0_2" = callPackage
     ({ mkDerivation, base, bytestring, containers, ghc, ghc-boot-th
      , haskell-tools-ast, mtl, references, safe, split, template-haskell
      , transformers, uniplate
      }:
      mkDerivation {
        pname = "haskell-tools-backend-ghc";
-       version = "1.0.0.0";
-       sha256 = "09jhc2i7ypfcgpdmjfg7bacf9a0nlxrvbz99zh86kgbrjh1xjr8f";
+       version = "1.0.0.2";
+       sha256 = "1h1ccqng5w25d0k0iw8w7jpdww3gnm4mzs8gzr0amlbw8azar29d";
        libraryHaskellDepends = [
          base bytestring containers ghc ghc-boot-th haskell-tools-ast mtl
          references safe split template-haskell transformers uniplate
@@ -95130,8 +95601,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-tools-builtin-refactorings";
-       version = "1.0.0.0";
-       sha256 = "0mhigqzivx1r04gi9v4jb7cvzirly8bbm3nckib170yws884gcba";
+       version = "1.0.0.2";
+       sha256 = "0ysn8fgyj89f7bnmijb1vcp9qckc7w7zjj209rlg2cx5qfs75dhn";
        libraryHaskellDepends = [
          base Cabal containers directory filepath ghc ghc-paths
          haskell-tools-ast haskell-tools-backend-ghc
@@ -95182,7 +95653,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "haskell-tools-cli_1_0_0_0" = callPackage
+  "haskell-tools-cli_1_0_0_2" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, criterion
      , directory, filepath, ghc, ghc-paths, Glob
      , haskell-tools-builtin-refactorings, haskell-tools-daemon
@@ -95191,8 +95662,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-tools-cli";
-       version = "1.0.0.0";
-       sha256 = "1y0jlgp3b8bxgrs406c32drdphblnn5c7rsqj2n9gvmhmdj01iwc";
+       version = "1.0.0.2";
+       sha256 = "11x0b85jixdpf1jps6y35v3gsh5yrnr1qvdwim75rzhkd73fxrwn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -95246,7 +95717,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-daemon_1_0_0_0" = callPackage
+  "haskell-tools-daemon_1_0_0_2" = callPackage
     ({ mkDerivation, aeson, base, bytestring, Cabal, containers
      , deepseq, Diff, directory, filepath, fswatch, ghc, ghc-paths, Glob
      , haskell-tools-builtin-refactorings, haskell-tools-prettyprint
@@ -95256,8 +95727,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-tools-daemon";
-       version = "1.0.0.0";
-       sha256 = "0pgpir9p693wym1krw2pyk17aq0dv10xbypw44ik6syzmy8j1zla";
+       version = "1.0.0.2";
+       sha256 = "0sczrldcby64cghivmd8ks9srdg84xk1h9rxxp1ywysjah86ir6x";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -95303,7 +95774,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-debug_1_0_0_0" = callPackage
+  "haskell-tools-debug_1_0_0_2" = callPackage
     ({ mkDerivation, base, filepath, ghc, ghc-paths, haskell-tools-ast
      , haskell-tools-backend-ghc, haskell-tools-builtin-refactorings
      , haskell-tools-prettyprint, haskell-tools-refactor, references
@@ -95311,8 +95782,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-tools-debug";
-       version = "1.0.0.0";
-       sha256 = "0jbiid1plb2y2sfpi5m46kl6waap8xhk8bqk5q9km2w7np0fv5dc";
+       version = "1.0.0.2";
+       sha256 = "1shgm21g0s0f0amlf42imfb2s6279s6aqfnb7gqkh22q8pamsvhj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -95358,7 +95829,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-demo_1_0_0_0" = callPackage
+  "haskell-tools-demo_1_0_0_2" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , filepath, ghc, ghc-paths, haskell-tools-ast
      , haskell-tools-backend-ghc, haskell-tools-builtin-refactorings
@@ -95368,8 +95839,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-tools-demo";
-       version = "1.0.0.0";
-       sha256 = "0kyf83wg514yl795k63wlklrdlz3fnnxl9qjkcwv5fxkxxixxf07";
+       version = "1.0.0.2";
+       sha256 = "1hmpjm5z7k4qbq3q1gl2qmqrprx3kd8n980gsmwk53i5lj17h7dp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -95400,8 +95871,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-tools-experimental-refactorings";
-       version = "1.0.0.0";
-       sha256 = "1k3grr8jca4samw0hqm1yrq8yjg4nw0z4gwx366anjpvwb1chr9a";
+       version = "1.0.0.2";
+       sha256 = "0avxnp5zdc3rafqg5arvnfljyhp3v2ass96z39458b4zmrxf2mgd";
        libraryHaskellDepends = [
          base Cabal containers directory filepath ghc ghc-paths
          haskell-tools-ast haskell-tools-backend-ghc
@@ -95439,14 +95910,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-prettyprint_1_0_0_0" = callPackage
+  "haskell-tools-prettyprint_1_0_0_2" = callPackage
     ({ mkDerivation, base, containers, ghc, haskell-tools-ast, mtl
      , references, split, text, uniplate
      }:
      mkDerivation {
        pname = "haskell-tools-prettyprint";
-       version = "1.0.0.0";
-       sha256 = "1f27xziimiz81sjns8hia6xsk94zm3yjpcdvihaqr0g0dq1mkfwl";
+       version = "1.0.0.2";
+       sha256 = "00r76y11l7sj8w76svxnjr4rxb99s47m6lv4jp0k1jdzyybzsjjf";
        libraryHaskellDepends = [
          base containers ghc haskell-tools-ast mtl references split text
          uniplate
@@ -95487,7 +95958,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-refactor_1_0_0_0" = callPackage
+  "haskell-tools-refactor_1_0_0_2" = callPackage
     ({ mkDerivation, base, Cabal, containers, directory, filepath, ghc
      , ghc-paths, haskell-tools-ast, haskell-tools-backend-ghc
      , haskell-tools-prettyprint, haskell-tools-rewrite, mtl, references
@@ -95495,8 +95966,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-tools-refactor";
-       version = "1.0.0.0";
-       sha256 = "0s3mdwpsla79ppcsl7n3r1yjbi0db0w6yk2zf143p5ngbhj08rs4";
+       version = "1.0.0.2";
+       sha256 = "03pvjgwz9w79zk7rkx0pm09arbpijnljp3q2aykjpblh7lh6va95";
        libraryHaskellDepends = [
          base Cabal containers directory filepath ghc ghc-paths
          haskell-tools-ast haskell-tools-backend-ghc
@@ -95531,15 +96002,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "haskell-tools-rewrite_1_0_0_0" = callPackage
+  "haskell-tools-rewrite_1_0_0_2" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, ghc
      , haskell-tools-ast, haskell-tools-prettyprint, mtl, references
      , tasty, tasty-hunit
      }:
      mkDerivation {
        pname = "haskell-tools-rewrite";
-       version = "1.0.0.0";
-       sha256 = "0zm7bdlfda29md86s0bz40y3ml1pb6x8fvp4br8gxj7r3j1l8852";
+       version = "1.0.0.2";
+       sha256 = "1lq5xxsplr6w0jrwwih86jl8alvzlzg3dqfb0pimdi0z23jyqq4f";
        libraryHaskellDepends = [
          base containers ghc haskell-tools-ast haskell-tools-prettyprint mtl
          references
@@ -97147,8 +97618,8 @@ self: {
      }:
      mkDerivation {
        pname = "hasql-optparse-applicative";
-       version = "0.2.4";
-       sha256 = "0gdbwhzcfjriq2yah5kfn9r1anc77f1iyay86zsdgq4z8qi6asvr";
+       version = "0.3";
+       sha256 = "05i9hij1z67l1sc53swwcmd88544dypc3qkzkh8f4n6nlmv82190";
        libraryHaskellDepends = [
          base-prelude hasql hasql-pool optparse-applicative
        ];
@@ -98975,10 +99446,8 @@ self: {
      }:
      mkDerivation {
        pname = "hedgehog";
-       version = "0.5";
-       sha256 = "02dy5fmwmrjgwj6p8rvr53rg362qayavbc184gf2f9q196rgijpk";
-       revision = "1";
-       editedCabalFile = "13079sdirdzch3r199lyxa7xrcq4xpaayxhdvg8v0d27w9z1chln";
+       version = "0.5.1";
+       sha256 = "0fx3dq45azxrhihhq6hlb89zkj3y8fmnfdrsz1wbvih9a3dhiwx7";
        libraryHaskellDepends = [
          ansi-terminal async base bytestring concurrent-output containers
          directory exceptions lifted-async mmorph monad-control mtl
@@ -98994,6 +99463,34 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hedgehog-checkers" = callPackage
+    ({ mkDerivation, base, containers, either, hedgehog, semigroupoids
+     , semigroups
+     }:
+     mkDerivation {
+       pname = "hedgehog-checkers";
+       version = "0.1.0.0";
+       sha256 = "0fr0jmvh3c6a1mvdppbjxxc1ps94p4kc1crxwdmw1487jlg2z8ps";
+       libraryHaskellDepends = [
+         base containers hedgehog semigroupoids semigroups
+       ];
+       testHaskellDepends = [ base either hedgehog ];
+       homepage = "https://github.com/bitemyapp/hedgehog-checkers#readme";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "hedgehog-checkers-lens" = callPackage
+    ({ mkDerivation, base, hedgehog, hedgehog-checkers, lens }:
+     mkDerivation {
+       pname = "hedgehog-checkers-lens";
+       version = "0.1.0.0";
+       sha256 = "0zfk967xzpwfh3y3ys8d0c3zcz251dnp41xha11613ji3yfk0wff";
+       libraryHaskellDepends = [ base hedgehog hedgehog-checkers lens ];
+       testHaskellDepends = [ base hedgehog hedgehog-checkers lens ];
+       homepage = "https://github.com/bitemyapp/hedgehog-checkers#readme";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hedgehog-quickcheck" = callPackage
     ({ mkDerivation, base, hedgehog, QuickCheck, transformers }:
      mkDerivation {
@@ -100101,14 +100598,13 @@ self: {
     ({ mkDerivation, base, containers }:
      mkDerivation {
        pname = "hexchat";
-       version = "0.0.1.0";
-       sha256 = "15wzndvxc0v187gl0bwhlfqfwxs0l3p6wqwf9zx0acfw4471yn4v";
-       revision = "1";
-       editedCabalFile = "0jfnmiyp2lzs3msh479h0bdsqzhjra998bwmgwybk60p83nlvw1p";
+       version = "0.0.2.0";
+       sha256 = "1bx49z3ycc24bsn0x0617x0gmgapan6qnwnwq6v0w06gjrahr4r4";
        libraryHaskellDepends = [ base containers ];
        homepage = "https://github.com/mniip/hexchat-haskell";
        description = "Haskell scripting interface for HexChat";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hexdump" = callPackage
@@ -100366,8 +100862,8 @@ self: {
      }:
      mkDerivation {
        pname = "heyefi";
-       version = "2.0.0.0";
-       sha256 = "1m1r9fnjf2i60nwqwcbyqm6nrmyipwn4nm7klgq0ykaghpag3kw8";
+       version = "2.0.0.1";
+       sha256 = "08lry3bxppnxr1mqpsbplq041nf2c5aaaim4iqhrapvqwwca7n5v";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -100447,10 +100943,8 @@ self: {
     ({ mkDerivation, base, containers, template-haskell, text }:
      mkDerivation {
        pname = "hflags";
-       version = "0.4.2";
-       sha256 = "1i9c1xszaymiqxh3ss7601cw8m8zpzvzg3k92jvdj4a0gxihvlrc";
-       revision = "1";
-       editedCabalFile = "1kasg8y0ia3q2iy6vmjvwwn9dyxzy59s6s9chwxhdgsvncx38ra1";
+       version = "0.4.3";
+       sha256 = "0lmjgwgfp1s2ag2fbi6n8yryafb5qz87yb0p122lxzm3487sf98h";
        libraryHaskellDepends = [ base containers template-haskell text ];
        homepage = "http://github.com/errge/hflags";
        description = "Command line flag parser, very similar to Google's gflags";
@@ -102624,8 +103118,8 @@ self: {
        pname = "hledger-iadd";
        version = "1.2.6";
        sha256 = "1l5vzhyya5h6sc3l74iy0mnys8bcjp6m5z0m3lqabk37ik31ld36";
-       revision = "6";
-       editedCabalFile = "06bk66lcd6ps370nwqns0dn00vxivg27hhln5bz57syjqlamfd0j";
+       revision = "7";
+       editedCabalFile = "1scbsb4y3b61bzc4m8qym9164i77ds2xgmmf4a15kpar9585chnv";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -102733,8 +103227,8 @@ self: {
        pname = "hledger-ui";
        version = "1.4";
        sha256 = "0rm6091nlpijhi6k74dg35g38a7ly22mqfnb0mvjp8pyxb4phq33";
-       revision = "5";
-       editedCabalFile = "0lplgg7xffpjk6qjzvjp2klmb178bc06wnyq0qlh6fm29g8d18yp";
+       revision = "6";
+       editedCabalFile = "0diprhzbql32yvbby4fz9lx4i8khd553s18vsfk537zkjrcsalbc";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -102917,6 +103411,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hlint_2_0_12" = callPackage
+    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, cmdargs
+     , containers, cpphs, data-default, directory, extra, filepath
+     , haskell-src-exts, haskell-src-exts-util, hscolour, process
+     , refact, text, transformers, uniplate, unordered-containers
+     , vector, yaml
+     }:
+     mkDerivation {
+       pname = "hlint";
+       version = "2.0.12";
+       sha256 = "1cfq4g1h5c47nxqn7433jd40hajv5pq30p5rb132fc5sp68vx0by";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson ansi-terminal base bytestring cmdargs containers cpphs
+         data-default directory extra filepath haskell-src-exts
+         haskell-src-exts-util hscolour process refact text transformers
+         uniplate unordered-containers vector yaml
+       ];
+       executableHaskellDepends = [ base ];
+       homepage = "https://github.com/ndmitchell/hlint#readme";
+       description = "Source code suggestions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hlogger" = callPackage
     ({ mkDerivation, base, old-locale, time }:
      mkDerivation {
@@ -103670,8 +104191,8 @@ self: {
      }:
      mkDerivation {
        pname = "hnormalise";
-       version = "0.5.0.0";
-       sha256 = "01xiqkm94amm7kdwvdgcm3f4slylmvc04qxkbddh2xsm8wz4c9a2";
+       version = "0.5.1.0";
+       sha256 = "11p207fmkfkc6jimnq9y30xj3l1msc5r090qvg1klmyvmhjkh702";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -103911,6 +104432,7 @@ self: {
        homepage = "https://github.com/awakesecurity/hocker#readme";
        description = "Interact with the docker registry and generate nix build instructions";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hodatime" = callPackage
@@ -104563,15 +105085,15 @@ self: {
     ({ mkDerivation, aeson, base, binary, bytestring, cmdargs, conduit
      , conduit-extra, connection, containers, deepseq, directory, extra
      , filepath, haskell-src-exts, http-conduit, http-types, js-flot
-     , js-jquery, mmap, network, network-uri, old-locale, process
-     , process-extras, QuickCheck, resourcet, storable-tuple, tar
-     , template-haskell, text, time, transformers, uniplate, utf8-string
-     , vector, wai, wai-logger, warp, warp-tls, zlib
+     , js-jquery, mmap, network, network-uri, old-locale, process-extras
+     , QuickCheck, resourcet, storable-tuple, tar, template-haskell
+     , text, time, transformers, uniplate, utf8-string, vector, wai
+     , wai-logger, warp, warp-tls, zlib
      }:
      mkDerivation {
        pname = "hoogle";
-       version = "5.0.14";
-       sha256 = "1y5vjwp60s35h13bnhjh4ga731m3vz004dbg8w5s7mwnfk5akkz7";
+       version = "5.0.15";
+       sha256 = "0bfb3y4rasl8dzcivvhhpq6ijspn37i53rhzxc9gx4yvdnai57sb";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -104579,10 +105101,9 @@ self: {
          aeson base binary bytestring cmdargs conduit conduit-extra
          connection containers deepseq directory extra filepath
          haskell-src-exts http-conduit http-types js-flot js-jquery mmap
-         network network-uri old-locale process process-extras QuickCheck
-         resourcet storable-tuple tar template-haskell text time
-         transformers uniplate utf8-string vector wai wai-logger warp
-         warp-tls zlib
+         network network-uri old-locale process-extras QuickCheck resourcet
+         storable-tuple tar template-haskell text time transformers uniplate
+         utf8-string vector wai wai-logger warp warp-tls zlib
        ];
        executableHaskellDepends = [ base ];
        testTarget = "--test-option=--no-net";
@@ -105419,6 +105940,40 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hpack_0_21_2" = callPackage
+    ({ mkDerivation, aeson, base, bifunctors, bytestring, Cabal
+     , containers, cryptonite, deepseq, directory, filepath, Glob, hspec
+     , HUnit, interpolate, mockery, pretty, QuickCheck, scientific
+     , temporary, text, transformers, unordered-containers, yaml
+     }:
+     mkDerivation {
+       pname = "hpack";
+       version = "0.21.2";
+       sha256 = "1grsr2418z42bcvqnr788n3lpfbscqvvfcnglba9v95nl8lpfm0c";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bifunctors bytestring Cabal containers cryptonite
+         deepseq directory filepath Glob pretty scientific text transformers
+         unordered-containers yaml
+       ];
+       executableHaskellDepends = [
+         aeson base bifunctors bytestring Cabal containers cryptonite
+         deepseq directory filepath Glob pretty scientific text transformers
+         unordered-containers yaml
+       ];
+       testHaskellDepends = [
+         aeson base bifunctors bytestring Cabal containers cryptonite
+         deepseq directory filepath Glob hspec HUnit interpolate mockery
+         pretty QuickCheck scientific temporary text transformers
+         unordered-containers yaml
+       ];
+       homepage = "https://github.com/sol/hpack#readme";
+       description = "An alternative format for Haskell packages";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hpack-convert" = callPackage
     ({ mkDerivation, aeson, aeson-qq, base, base-compat, bytestring
      , Cabal, containers, deepseq, directory, filepath, Glob, hspec
@@ -105838,6 +106393,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hpp_0_5_1" = callPackage
+    ({ mkDerivation, base, bytestring, bytestring-trie, directory
+     , filepath, ghc-prim, time, transformers
+     }:
+     mkDerivation {
+       pname = "hpp";
+       version = "0.5.1";
+       sha256 = "0bdx85k9c9cb5wkp91fi1sb0dahg6f4fknyddfh92wcywa485q9b";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring bytestring-trie directory filepath ghc-prim time
+         transformers
+       ];
+       executableHaskellDepends = [ base directory filepath time ];
+       testHaskellDepends = [ base bytestring transformers ];
+       homepage = "https://github.com/acowley/hpp";
+       description = "A Haskell pre-processor";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hpqtypes" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers
      , data-default-class, exceptions, HUnit, lifted-base, monad-control
@@ -105877,8 +106454,8 @@ self: {
      }:
      mkDerivation {
        pname = "hpqtypes-extras";
-       version = "1.4.0.0";
-       sha256 = "0hfs4i1h2pfy8hd2c24ig4zd1fw6v9wmm39616a0ipb7vgalra6b";
+       version = "1.5.0.0";
+       sha256 = "1hp9nn49a8kg58y8cywsiwcy64zq65c1hnsn2xi5ajk71hag8b8c";
        libraryHaskellDepends = [
          base base16-bytestring bytestring containers cryptohash exceptions
          fields-json hpqtypes lifted-base log-base monad-control mtl safe
@@ -105901,8 +106478,10 @@ self: {
      }:
      mkDerivation {
        pname = "hprotoc";
-       version = "2.4.5";
-       sha256 = "0f4h9b5c6s523967hkqg6wz57g350awa26r2y2wlfr4f39qgjwx3";
+       version = "2.4.6";
+       sha256 = "05n8mgrbskdx2r78kvl1q8zzgha9jsds7gvajkc54wcgprfhv42z";
+       revision = "1";
+       editedCabalFile = "0bs5h6mq6yrwiwfq0l20b4an73myxq6gbaxjffdifscqzq8pdk94";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -106217,6 +106796,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) ruby;};
 
+  "hruby_0_3_5" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, QuickCheck
+     , ruby, scientific, stm, text, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "hruby";
+       version = "0.3.5";
+       sha256 = "0ngl6irnbkrjs7mq8gz3v6gh98l724595vyibw5chzikjl183fj8";
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring scientific stm text
+         unordered-containers vector
+       ];
+       librarySystemDepends = [ ruby ];
+       testHaskellDepends = [
+         aeson attoparsec base QuickCheck text vector
+       ];
+       description = "Embed a Ruby intepreter in your Haskell program !";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) ruby;};
+
   "hs-GeoIP" = callPackage
     ({ mkDerivation, base, bytestring, deepseq, GeoIP }:
      mkDerivation {
@@ -107227,6 +107827,7 @@ self: {
        homepage = "http://rd.slavepianos.org/t/hsc3-auditor";
        description = "Haskell SuperCollider Auditor";
        license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hsc3-cairo" = callPackage
@@ -107923,14 +108524,14 @@ self: {
      }) {};
 
   "hsemail-ns" = callPackage
-    ({ mkDerivation, base, mtl, old-time, parsec }:
+    ({ mkDerivation, base, doctest, hspec, mtl, old-time, parsec }:
      mkDerivation {
        pname = "hsemail-ns";
-       version = "1.3.2";
-       sha256 = "03d0pnsba7yj5x7zrg8b80kxsnqn5g40vd2i717s1dnn3bd3vz4s";
-       enableSeparateDataOutput = true;
+       version = "1.7.7";
+       sha256 = "01vnlcv5gj7zj33b6m8mc4n6n8d15casywgicn1lr699hkh287hg";
        libraryHaskellDepends = [ base mtl old-time parsec ];
-       homepage = "http://patch-tag.com/r/hsemail-ns/home";
+       testHaskellDepends = [ base doctest hspec old-time parsec ];
+       homepage = "https://github.com/phlummox/hsemail-ns/tree/hsemail-ns";
        description = "Internet Message Parsers";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -108379,15 +108980,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {inherit (pkgs) lua5_1;};
 
-  "hslua_0_9_2" = callPackage
+  "hslua_0_9_3" = callPackage
     ({ mkDerivation, base, bytestring, containers, exceptions, fail
      , lua5_1, mtl, QuickCheck, quickcheck-instances, tasty
      , tasty-expected-failure, tasty-hunit, tasty-quickcheck, text
      }:
      mkDerivation {
        pname = "hslua";
-       version = "0.9.2";
-       sha256 = "1n1fw2ak3xk4llv3d3bbpcayjd6h2a83n06i96m2k30lzanbg0ys";
+       version = "0.9.3";
+       sha256 = "1ml64f8faz17qfp0wm9fqgribcf8fvyhazjk9a1385fsjy96ks8m";
        configureFlags = [ "-fsystem-lua" ];
        libraryHaskellDepends = [
          base bytestring containers exceptions fail mtl text
@@ -109027,15 +109628,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hspec-golden-aeson_0_3_1_0" = callPackage
+  "hspec-golden-aeson_0_4_0_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, directory
      , filepath, hspec, hspec-core, QuickCheck, quickcheck-arbitrary-adt
      , random, silently, transformers
      }:
      mkDerivation {
        pname = "hspec-golden-aeson";
-       version = "0.3.1.0";
-       sha256 = "13f8cchzgnwijx91frcvg3vj1cqvs8flng0xxjaszffnbysh52fr";
+       version = "0.4.0.0";
+       sha256 = "03gsw9jamkjwj5vhlhg9xz7214d71py94qx0daym7gjiq4zpw1gk";
        libraryHaskellDepends = [
          aeson aeson-pretty base bytestring directory filepath hspec
          QuickCheck quickcheck-arbitrary-adt random transformers
@@ -109266,6 +109867,7 @@ self: {
        homepage = "https://github.com/yamadapc/haskell-hspec-setup";
        description = "Add an hspec test-suite in one command";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hspec-shouldbe" = callPackage
@@ -109893,8 +110495,8 @@ self: {
     ({ mkDerivation, base, c2hs, directory, parsec, random, unix }:
      mkDerivation {
        pname = "hsshellscript";
-       version = "3.4.2";
-       sha256 = "04ihi45pi92ykhcn66ni6zybmzvmbl467yfr1dgidvj56xns33jw";
+       version = "3.4.5";
+       sha256 = "0d66gsm7s2j4f60cjca6fsddg4i1m3l6rcyq29ywskifhfaxbgvx";
        libraryHaskellDepends = [ base directory parsec random unix ];
        libraryToolDepends = [ c2hs ];
        homepage = "http://www.volker-wysk.de/hsshellscript/";
@@ -109903,20 +110505,6 @@ self: {
        hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
      }) {};
 
-  "hsshellscript_3_4_4" = callPackage
-    ({ mkDerivation, base, c2hs, directory, parsec, random, unix }:
-     mkDerivation {
-       pname = "hsshellscript";
-       version = "3.4.4";
-       sha256 = "0093zl8lfyldn8r1mi53glf286606m36fmxj6nc0pak68ibmkdwv";
-       libraryHaskellDepends = [ base directory parsec random unix ];
-       libraryToolDepends = [ c2hs ];
-       homepage = "http://www.volker-wysk.de/hsshellscript/";
-       description = "Haskell for Unix shell scripting tasks";
-       license = "LGPL";
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
   "hssourceinfo" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, regexpr }:
      mkDerivation {
@@ -110353,8 +110941,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsyslog-tcp";
-       version = "0.2.0.0";
-       sha256 = "1zbp8l5lj2xb6yczijd76dhdbxfzxpl7han1b01bc8qfw7pkj4g9";
+       version = "0.2.1.0";
+       sha256 = "09kr9mcjd41xl5an8ddfrcyx8dc1fgfq70mkw6m96dvcmhryf0gv";
        libraryHaskellDepends = [
          base bytestring hsyslog hsyslog-udp network text time
        ];
@@ -110370,8 +110958,8 @@ self: {
      }:
      mkDerivation {
        pname = "hsyslog-udp";
-       version = "0.1.2";
-       sha256 = "1bm4pbvyqjpfr55l0rzfdq76bsfx1g2bzd83c01scl4i0cc1svhs";
+       version = "0.2.0";
+       sha256 = "0z4jpgdp5brfpzw5xawwxx7i239xjxgr1rjvrv2fyd6d6ixg3gwl";
        libraryHaskellDepends = [
          base bytestring hsyslog network text time unix
        ];
@@ -111186,8 +111774,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-conduit";
-       version = "2.2.3.2";
-       sha256 = "1f0yqka43gp7vhv7yr4q6pqr8qw0qq2yh4y2lnayhc876zpw6ng3";
+       version = "2.2.4";
+       sha256 = "1wcl3lpg4v1ylq9j77j9fmf6l9qbmp8dmj3a9829q19q6bbgza7l";
        libraryHaskellDepends = [
          aeson base bytestring conduit conduit-extra exceptions http-client
          http-client-tls http-types lifted-base monad-control mtl resourcet
@@ -111701,10 +112289,10 @@ self: {
      }:
      mkDerivation {
        pname = "http-streams";
-       version = "0.8.5.3";
-       sha256 = "1qz55rxzd98d00qdp5hp60i5cc8f0hfir6dhq15z2jzj5bsz9nna";
+       version = "0.8.5.5";
+       sha256 = "1g2ygxyfq2x923df5q83wkrwhy2631r33zvffgj3fn0zwr024hhf";
        revision = "1";
-       editedCabalFile = "0ki3gv5lhs69hj17ng4asyqaw4wcjjpwqda79az9wkizxyvbc0ay";
+       editedCabalFile = "0mgj62khq2abq53y03qww66k74pxhnid8yiqrlhggj9cjv7m2my5";
        setupHaskellDepends = [ base Cabal ];
        libraryHaskellDepends = [
          aeson attoparsec base base64-bytestring blaze-builder bytestring
@@ -112930,8 +113518,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-kafka-client";
-       version = "2.1.3";
-       sha256 = "006lkyjwjsn1npznzv9ysqsap2f7w3gsxn8rimlpv0manvk8h5bg";
+       version = "2.2.0";
+       sha256 = "1wc6vngnjgpmkhiq4zfn1plqf0q636nsr5nkvmq20rzlg35w8az9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -114936,6 +115524,7 @@ self: {
        homepage = "http://www.idris-lang.org/";
        description = "Functional Programming Language with Dependent Types";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) gmp;};
 
   "ieee" = callPackage
@@ -116558,8 +117147,8 @@ self: {
      }:
      mkDerivation {
        pname = "influxdb";
-       version = "1.2.2.1";
-       sha256 = "1dsrj11vcf7jn1xwhjz7jz6fnpxc3k614na0hy5xxfnhib0mvm8r";
+       version = "1.2.2.2";
+       sha256 = "18aijaz7lv64zqkpydmny8nga48fg5lsbmphlk7b92hcfbp8vw4f";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -116815,15 +117404,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "inline-java_0_7_0" = callPackage
+  "inline-java_0_7_1" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, directory, filepath, ghc
      , hspec, jni, jvm, language-java, mtl, process, template-haskell
      , temporary, text
      }:
      mkDerivation {
        pname = "inline-java";
-       version = "0.7.0";
-       sha256 = "12lzh63wg0nk1lcn9627mbyf251ijlcc65iasmmnwljkxg0qrkf7";
+       version = "0.7.1";
+       sha256 = "000qzhjg2qah379dlhshgxqzm4mslcv6d5cwqycvx8q3hxginv08";
        libraryHaskellDepends = [
          base bytestring Cabal directory filepath ghc jni jvm language-java
          mtl process template-haskell temporary text
@@ -117168,14 +117757,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "integer-gmp_1_0_0_1" = callPackage
+  "integer-gmp_1_0_1_0" = callPackage
     ({ mkDerivation, ghc-prim }:
      mkDerivation {
        pname = "integer-gmp";
-       version = "1.0.0.1";
-       sha256 = "08f1qcp57aj5mjy26dl3bi3lcg0p8ylm0qw4c6zbc1vhgnmxl4gg";
+       version = "1.0.1.0";
+       sha256 = "1xrdqksharn0jg8m1d7zm8nhbsq3abw2k25kzw0z7m0zm14n1nlw";
        revision = "1";
-       editedCabalFile = "1mfl651b2v82qhm5h279mjhq4ilzf6x1yydi3npa10ja6isifvb1";
+       editedCabalFile = "02xp5ldq3xxx1qdxg7gbs2zcqpf1dxbdrvrzizxnjwhpiqxcigy3";
        libraryHaskellDepends = [ ghc-prim ];
        description = "Integer library based on GMP";
        license = stdenv.lib.licenses.bsd3;
@@ -117602,8 +118191,8 @@ self: {
      }:
      mkDerivation {
        pname = "intrinsic-superclasses";
-       version = "0.1.0.0";
-       sha256 = "0vvkh65fdm6sgx3m5irk6l96krg99f14h3z45lz19z6xj57627y5";
+       version = "0.2.0.0";
+       sha256 = "0bx8igqwpyhs1q8rhyxhc5389nx49ynfq08bis30x9gdq209dqih";
        libraryHaskellDepends = [
          base containers haskell-src-meta mtl template-haskell
        ];
@@ -117741,6 +118330,30 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "invariant_0_5" = callPackage
+    ({ mkDerivation, array, base, bifunctors, comonad, containers
+     , contravariant, ghc-prim, hspec, profunctors, QuickCheck
+     , semigroups, StateVar, stm, tagged, template-haskell
+     , th-abstraction, transformers, transformers-compat
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "invariant";
+       version = "0.5";
+       sha256 = "1zz9a5irmpma5qchvvp7qin1s7cfnhvpg3b452xxysgbxvmcmfw0";
+       libraryHaskellDepends = [
+         array base bifunctors comonad containers contravariant ghc-prim
+         profunctors semigroups StateVar stm tagged template-haskell
+         th-abstraction transformers transformers-compat
+         unordered-containers
+       ];
+       testHaskellDepends = [ base hspec QuickCheck template-haskell ];
+       homepage = "https://github.com/nfrisby/invariant-functors";
+       description = "Haskell98 invariant functors";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "invertible" = callPackage
     ({ mkDerivation, base, haskell-src-meta, invariant, lens
      , partial-isomorphisms, QuickCheck, semigroupoids, template-haskell
@@ -120314,15 +120927,17 @@ self: {
   "jose-jwt" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, cereal
      , containers, criterion, cryptonite, doctest, either, hspec, HUnit
-     , memory, mtl, QuickCheck, text, time, unordered-containers, vector
+     , memory, mtl, QuickCheck, text, time, transformers
+     , transformers-compat, unordered-containers, vector
      }:
      mkDerivation {
        pname = "jose-jwt";
-       version = "0.7.7";
-       sha256 = "07mq4w4gvak8gahxdx3rwykwqqisxma8faxi4k0xfk6jcpai0snl";
+       version = "0.7.8";
+       sha256 = "0azkqllqc35hp2d2q50cwk472amhf0q5fkqs04a4kpnj50z6kqfk";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring cereal containers cryptonite
-         either memory mtl text time unordered-containers vector
+         either memory mtl text time transformers transformers-compat
+         unordered-containers vector
        ];
        testHaskellDepends = [
          aeson base bytestring cryptonite doctest either hspec HUnit memory
@@ -121093,8 +121708,8 @@ self: {
        pname = "json-schema";
        version = "0.7.4.1";
        sha256 = "15kwgpkryd865nls9zm6ya6jzmiygsb537ij7ps39dzasqbnl3an";
-       revision = "9";
-       editedCabalFile = "0g7hyapnlzid4ix7nrw3rxgn1vcd63hb34blyj5ldmzwz76qqp0b";
+       revision = "11";
+       editedCabalFile = "0jnlgkr1dikkcy4ln942c14lmpj49287b74dqcc5rd6sgxcm7xq2";
        libraryHaskellDepends = [
          aeson base containers generic-aeson generic-deriving mtl scientific
          text time unordered-containers vector
@@ -121551,8 +122166,8 @@ self: {
      }:
      mkDerivation {
        pname = "jukebox";
-       version = "0.3";
-       sha256 = "0fpzbijv73drgk79rf8qyr2w4kfvxbpysbi9y9v2qx5na9y3krci";
+       version = "0.3.1";
+       sha256 = "0dg54vbn9cxcskyc92grz39zp863ki6da8kwdz0nfkfm5xzsxlrs";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -121658,15 +122273,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "jvm_0_3_0" = callPackage
+  "jvm_0_4_0_1" = callPackage
     ({ mkDerivation, base, bytestring, choice, constraints, criterion
      , deepseq, distributed-closure, exceptions, hspec, jni, singletons
      , text, vector
      }:
      mkDerivation {
        pname = "jvm";
-       version = "0.3.0";
-       sha256 = "1fjaanz7h3z5py71kq880wc140jp48khs18chx3gzwas22cpw9ap";
+       version = "0.4.0.1";
+       sha256 = "0zazz893fxzh8hdc2k2irg0l5ic2v2h7z2cb60ngiarvrr07hpvl";
        libraryHaskellDepends = [
          base bytestring choice constraints distributed-closure exceptions
          jni singletons text vector
@@ -121736,14 +122351,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "jvm-streaming_0_2_1" = callPackage
+  "jvm-streaming_0_2_2" = callPackage
     ({ mkDerivation, base, distributed-closure, hspec, inline-java, jni
      , jvm, singletons, streaming
      }:
      mkDerivation {
        pname = "jvm-streaming";
-       version = "0.2.1";
-       sha256 = "06n660fa5xbmw20064gyjp2sx3mvqs1cx12s77w7wn1cfk0ckair";
+       version = "0.2.2";
+       sha256 = "1s0bla6yhw1ic637h2ss8f3aihc26ca5bndhsi5g02fn0gzw644m";
        libraryHaskellDepends = [
          base distributed-closure inline-java jni jvm singletons streaming
        ];
@@ -124866,6 +125481,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "language-docker" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, directory, filepath, free
+     , Glob, hspec, HUnit, mtl, parsec, pretty, process, QuickCheck
+     , split, template-haskell, text, th-lift, th-lift-instances
+     , transformers, unordered-containers, yaml
+     }:
+     mkDerivation {
+       pname = "language-docker";
+       version = "1.0.0";
+       sha256 = "023gahxcy27rg03fyk87h4yirba2c23qv4fww9fwzi4f4m8inf81";
+       libraryHaskellDepends = [
+         aeson base bytestring directory filepath free Glob mtl parsec
+         pretty split template-haskell text th-lift th-lift-instances
+         transformers unordered-containers yaml
+       ];
+       testHaskellDepends = [
+         aeson base bytestring directory filepath free Glob hspec HUnit mtl
+         parsec pretty process QuickCheck split template-haskell text
+         th-lift th-lift-instances transformers unordered-containers yaml
+       ];
+       homepage = "https://github.com/hadolint/language-docker#readme";
+       description = "Dockerfile parser, pretty-printer and embedded DSL";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "language-dockerfile" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, filepath, free
      , Glob, hspec, HUnit, mtl, parsec, pretty, process, QuickCheck
@@ -124898,6 +125538,7 @@ self: {
        homepage = "https://github.com/beijaflor-io/language-dockerfile#readme";
        description = "Dockerfile linter, parser, pretty-printer and embedded DSL";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "language-dot" = callPackage
@@ -125435,33 +126076,35 @@ self: {
        hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
      }) {};
 
-  "language-puppet_1_3_12_1" = callPackage
+  "language-puppet_1_3_13" = callPackage
     ({ mkDerivation, aeson, ansi-wl-pprint, attoparsec, base
      , base16-bytestring, bytestring, case-insensitive, containers
-     , cryptonite, directory, exceptions, filecache, formatting, Glob
-     , hashable, hruby, hslogger, hspec, hspec-megaparsec, http-api-data
-     , http-client, HUnit, lens, lens-aeson, megaparsec, memory, mtl
+     , cryptonite, directory, exceptions, filecache, filepath
+     , formatting, Glob, hashable, hruby, hslogger, hspec
+     , hspec-megaparsec, http-api-data, http-client, HUnit, lens
+     , lens-aeson, megaparsec, memory, mtl, neat-interpolation
      , operational, optparse-applicative, parallel-io, parsec
-     , pcre-utils, process, random, regex-pcre-builtin, scientific
-     , semigroups, servant, servant-client, split, stm
+     , pcre-utils, process, protolude, random, regex-pcre-builtin
+     , scientific, semigroups, servant, servant-client, split, stm
      , strict-base-types, temporary, text, time, transformers, unix
      , unordered-containers, vector, yaml
      }:
      mkDerivation {
        pname = "language-puppet";
-       version = "1.3.12.1";
-       sha256 = "1nznlw81qnnrvfpwrliyz88f1i6wmsg8kksjnwk5zv69q9nxg3z1";
+       version = "1.3.13";
+       sha256 = "1qngbjpyxd7m4jawc40095v84a8bgk4xk7an9lb1yzp739nvcln1";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson ansi-wl-pprint attoparsec base base16-bytestring bytestring
          case-insensitive containers cryptonite directory exceptions
-         filecache formatting hashable hruby hslogger hspec http-api-data
-         http-client lens lens-aeson megaparsec memory mtl operational
-         parsec pcre-utils process random regex-pcre-builtin scientific
-         semigroups servant servant-client split stm strict-base-types text
-         time transformers unix unordered-containers vector yaml
+         filecache filepath formatting hashable hruby hslogger hspec
+         http-api-data http-client lens lens-aeson megaparsec memory mtl
+         operational parsec pcre-utils process protolude random
+         regex-pcre-builtin scientific semigroups servant servant-client
+         split stm strict-base-types text time transformers unix
+         unordered-containers vector yaml
        ];
        executableHaskellDepends = [
          aeson ansi-wl-pprint base bytestring containers Glob hslogger
@@ -125471,8 +126114,9 @@ self: {
        ];
        testHaskellDepends = [
          ansi-wl-pprint base Glob hslogger hspec hspec-megaparsec HUnit lens
-         megaparsec mtl scientific strict-base-types temporary text
-         transformers unix unordered-containers vector
+         megaparsec mtl neat-interpolation protolude scientific
+         strict-base-types temporary text transformers unix
+         unordered-containers vector
        ];
        homepage = "http://lpuppet.banquise.net/";
        description = "Tools to parse and evaluate the Puppet DSL";
@@ -126394,6 +127038,20 @@ self: {
        hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
      }) {};
 
+  "leancheck_0_7_0" = callPackage
+    ({ mkDerivation, base, template-haskell }:
+     mkDerivation {
+       pname = "leancheck";
+       version = "0.7.0";
+       sha256 = "1mz6fwh3rbwkfx514imh044v1ng7065sd5bivcd94xw0cb530p3f";
+       libraryHaskellDepends = [ base template-haskell ];
+       testHaskellDepends = [ base ];
+       homepage = "https://github.com/rudymatela/leancheck#readme";
+       description = "Cholesterol-free property-based testing";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "leankit-api" = callPackage
     ({ mkDerivation, aeson, base, bytestring, colour, curl, split }:
      mkDerivation {
@@ -127129,6 +127787,34 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "lentil_1_0_9_1" = callPackage
+    ({ mkDerivation, ansi-wl-pprint, base, csv, directory, filemanip
+     , filepath, hspec, natural-sort, optparse-applicative, parsec
+     , pipes, regex-tdfa, semigroups, terminal-progress-bar, text
+     , transformers
+     }:
+     mkDerivation {
+       pname = "lentil";
+       version = "1.0.9.1";
+       sha256 = "10a0y0n62n8indkhapscws3lj95riaxxdq04bcfah8ljvqy1b61r";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         ansi-wl-pprint base csv directory filemanip filepath natural-sort
+         optparse-applicative parsec pipes regex-tdfa semigroups
+         terminal-progress-bar text transformers
+       ];
+       testHaskellDepends = [
+         ansi-wl-pprint base csv directory filemanip filepath hspec
+         natural-sort optparse-applicative parsec pipes regex-tdfa
+         semigroups terminal-progress-bar text transformers
+       ];
+       homepage = "http://www.ariis.it/static/articles/lentil/page.html";
+       description = "frugal issue tracker";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lenz" = callPackage
     ({ mkDerivation, base, base-unicode-symbols, hs-functors
      , transformers
@@ -127144,6 +127830,7 @@ self: {
        ];
        description = "Van Laarhoven lenses";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "lenz-template" = callPackage
@@ -128269,10 +128956,8 @@ self: {
      }:
      mkDerivation {
        pname = "lift-generics";
-       version = "0.1.1";
-       sha256 = "1jrh74a1c95cd70xr371fslqsjar8jb8mnlmapjb1dvg8722rkq7";
-       revision = "1";
-       editedCabalFile = "03vpmdgarz41zx1q51a4bx3x3qfvs7wfnqym8xiv4i9sxdr82yy8";
+       version = "0.1.2";
+       sha256 = "0kk05dp6n93jgxq4x1lrckjrca6lrwa7qklr3vpzc6iyrlbvv7qf";
        libraryHaskellDepends = [
          base generic-deriving ghc-prim template-haskell
        ];
@@ -128306,6 +128991,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "lifted-async_0_9_3_2" = callPackage
+    ({ mkDerivation, async, base, constraints, criterion, deepseq
+     , HUnit, lifted-base, monad-control, mtl, tasty, tasty-hunit
+     , tasty-th, transformers-base
+     }:
+     mkDerivation {
+       pname = "lifted-async";
+       version = "0.9.3.2";
+       sha256 = "0c8y6m1kpkviq2zi1d2889hbzh7k46rly4mvmfkrzam45fqggrcj";
+       libraryHaskellDepends = [
+         async base constraints lifted-base monad-control transformers-base
+       ];
+       testHaskellDepends = [
+         async base HUnit lifted-base monad-control mtl tasty tasty-hunit
+         tasty-th
+       ];
+       benchmarkHaskellDepends = [ async base criterion deepseq ];
+       homepage = "https://github.com/maoe/lifted-async";
+       description = "Run lifted IO operations asynchronously and wait for their results";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lifted-base" = callPackage
     ({ mkDerivation, base, criterion, HUnit, monad-control, monad-peel
      , test-framework, test-framework-hunit, transformers
@@ -130278,6 +130986,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {llvm-config = null;};
 
+  "llvm-hs-pretty" = callPackage
+    ({ mkDerivation, array, base, bytestring, directory, filepath
+     , llvm-hs, llvm-hs-pure, mtl, pretty-show, tasty, tasty-golden
+     , tasty-hspec, tasty-hunit, text, transformers, wl-pprint-text
+     }:
+     mkDerivation {
+       pname = "llvm-hs-pretty";
+       version = "0.1.0.0";
+       sha256 = "1p16vhxx7w1hdb130c9mls45rwyq8hix1grnwdj92rbrqbjwk7l3";
+       libraryHaskellDepends = [
+         array base bytestring llvm-hs-pure text wl-pprint-text
+       ];
+       testHaskellDepends = [
+         base directory filepath llvm-hs llvm-hs-pure mtl pretty-show tasty
+         tasty-golden tasty-hspec tasty-hunit text transformers
+       ];
+       homepage = "https://github.com/llvm-hs/llvm-hs-pretty";
+       description = "Pretty printer for LLVM IR";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "llvm-hs-pure" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers, mtl
      , tasty, tasty-hunit, tasty-quickcheck, template-haskell
@@ -130495,7 +131225,7 @@ self: {
        homepage = "https://github.com/verement/lmdb-simple#readme";
        description = "Simple API for LMDB";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "lmonad" = callPackage
@@ -130993,8 +131723,8 @@ self: {
      }:
      mkDerivation {
        pname = "log-warper";
-       version = "1.7.2";
-       sha256 = "1qf1686wbad3hr908spd1g5q7n00dg3z8ql4aradkl4lb965dn02";
+       version = "1.8.0";
+       sha256 = "0b5kgni47ahvh4jkqkbhz3bd43frdqxvgz2x2d7f61848bqp80ip";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -133130,6 +133860,37 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "magicbane_0_1_4" = callPackage
+    ({ mkDerivation, aeson, aeson-qq, attoparsec, base, classy-prelude
+     , conduit, conduit-combinators, data-default, data-has, ekg-core
+     , ekg-wai, envy, errors, fast-logger, http-api-data, http-client
+     , http-client-tls, http-conduit, http-date, http-link-header
+     , http-media, http-types, lifted-async, mime-types, monad-control
+     , monad-logger, monad-metrics, mtl, network, network-uri
+     , raw-strings-qq, refined, servant, servant-server, split
+     , string-conversions, text, transformers, unordered-containers, wai
+     , wai-cli, wai-middleware-metrics
+     }:
+     mkDerivation {
+       pname = "magicbane";
+       version = "0.1.4";
+       sha256 = "1zfj188iw6g0ym88p69wrf5avbipjxvijklphki5bj3rc7h8cyx0";
+       libraryHaskellDepends = [
+         aeson aeson-qq attoparsec base classy-prelude conduit
+         conduit-combinators data-default data-has ekg-core ekg-wai envy
+         errors fast-logger http-api-data http-client http-client-tls
+         http-conduit http-date http-link-header http-media http-types
+         lifted-async mime-types monad-control monad-logger monad-metrics
+         mtl network network-uri raw-strings-qq refined servant
+         servant-server split string-conversions text transformers
+         unordered-containers wai wai-cli wai-middleware-metrics
+       ];
+       homepage = "https://github.com/myfreeweb/magicbane#readme";
+       description = "A web framework that integrates Servant, ClassyPrelude, EKG, fast-logger, wai-cli…";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "magico" = callPackage
     ({ mkDerivation, base, hmatrix, transformers, utility-ht }:
      mkDerivation {
@@ -135641,8 +136402,8 @@ self: {
      }:
      mkDerivation {
        pname = "mega-sdist";
-       version = "0.3.0.4";
-       sha256 = "1qf7lhk2063lpkg2bm7x7sxxxf87laxjwsr4rw46hvjj2m8frh41";
+       version = "0.3.0.5";
+       sha256 = "1rdx74bxiwrcp0k8h8028b65nbcmgcbpg7jnzli91y8nzr2qql6c";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -136055,17 +136816,19 @@ self: {
      }) {};
 
   "memory" = callPackage
-    ({ mkDerivation, base, basement, bytestring, deepseq, ghc-prim
-     , tasty, tasty-hunit, tasty-quickcheck
+    ({ mkDerivation, base, basement, bytestring, deepseq, foundation
+     , ghc-prim, tasty, tasty-hunit, tasty-quickcheck
      }:
      mkDerivation {
        pname = "memory";
-       version = "0.14.9";
-       sha256 = "1v8fjw0dgnyw6jhrpzfyxf63ky1lyrfapb8x28lj25q2xw6zx8s5";
+       version = "0.14.10";
+       sha256 = "01i1nx83n5lspwdhkhhjxxcp9agf9y70547dzs5m8zl043jmd0z4";
        libraryHaskellDepends = [
-         base basement bytestring deepseq ghc-prim
+         base basement bytestring deepseq foundation ghc-prim
+       ];
+       testHaskellDepends = [
+         base foundation tasty tasty-hunit tasty-quickcheck
        ];
-       testHaskellDepends = [ base tasty tasty-hunit tasty-quickcheck ];
        homepage = "https://github.com/vincenthz/hs-memory";
        description = "memory and related abstraction stuff";
        license = stdenv.lib.licenses.bsd3;
@@ -136178,6 +136941,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "merkle-tree" = callPackage
+    ({ mkDerivation, base, bytestring, cereal, cryptonite, memory
+     , protolude, QuickCheck, random, tasty, tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "merkle-tree";
+       version = "0.1.0";
+       sha256 = "0k9ifkl8ywp0svn83rlczrq2s1aamwri2vx25cs42f64bgxr7ics";
+       revision = "1";
+       editedCabalFile = "1ibsr79qmzykn2i7p8zvzp8v79lsr54gc3zdqmfgk2cjx1x8k6dz";
+       libraryHaskellDepends = [
+         base bytestring cereal cryptonite memory protolude random
+       ];
+       testHaskellDepends = [
+         base bytestring cereal cryptonite memory protolude QuickCheck
+         random tasty tasty-quickcheck
+       ];
+       homepage = "https://github.com/adjoint-io/merkle-tree#readme";
+       description = "An implementation of a Merkle Tree and merkle tree proofs";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mersenne-random" = callPackage
     ({ mkDerivation, base, old-time }:
      mkDerivation {
@@ -136744,6 +137530,7 @@ self: {
        ];
        description = "Bindings to the Microsoft Translator API";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "microspec" = callPackage
@@ -136960,8 +137747,8 @@ self: {
      }:
      mkDerivation {
        pname = "midimory";
-       version = "0.0.1";
-       sha256 = "051zk3k1qiap75xf4s50jcn9sr030mxrhdrpiv12swdqqm9brk3h";
+       version = "0.0.2.1";
+       sha256 = "07p0f7a0nm7h8li8rl6adrszrz7hhzn19mfy0vgkw8axdaira66r";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -137797,14 +138584,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "mixed-types-num_0_3_1_3" = callPackage
+  "mixed-types-num_0_3_1_4" = callPackage
     ({ mkDerivation, base, convertible, hspec, hspec-smallcheck
      , QuickCheck, smallcheck, template-haskell
      }:
      mkDerivation {
        pname = "mixed-types-num";
-       version = "0.3.1.3";
-       sha256 = "0945zl9g1lpvpgqmaqm168zx6l1zydw9waivh7nm4alfr8awys60";
+       version = "0.3.1.4";
+       sha256 = "0061in4wv9hs5d8bvq5ycv8x176z3fz8fcfymwghmbjybbmgzzy4";
        libraryHaskellDepends = [
          base convertible hspec hspec-smallcheck QuickCheck smallcheck
          template-haskell
@@ -137923,8 +138710,8 @@ self: {
      }:
      mkDerivation {
        pname = "mmark";
-       version = "0.0.1.1";
-       sha256 = "06i95kjr7vhab5g6m8rypm31yxqk9lim5117n100cc19vk85fyqp";
+       version = "0.0.2.1";
+       sha256 = "0fadjmzdccmsysndi2khwyp5iycmxdk2caxqdnqrbn9c3pdcg4l7";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base containers data-default-class deepseq email-validate
@@ -137947,8 +138734,8 @@ self: {
      }:
      mkDerivation {
        pname = "mmark-ext";
-       version = "0.0.1.0";
-       sha256 = "0psjpz22brhav2qpp3vwiai0hnp9i0rlhmpilqll8c467sk4lysl";
+       version = "0.0.1.1";
+       sha256 = "0wsilw9mlh77qvxgpzay09b8xfsjz3dbrabd1wvw0whwf2cnzpp7";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base data-default-class foldl lucid mmark modern-uri text
@@ -138120,15 +138907,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "model_0_4_2" = callPackage
+  "model_0_4_4" = callPackage
     ({ mkDerivation, base, containers, convertible, deepseq, doctest
      , either, filemanip, ghc-prim, pretty, tasty, tasty-hunit
      , tasty-quickcheck, transformers
      }:
      mkDerivation {
        pname = "model";
-       version = "0.4.2";
-       sha256 = "0ynv6fwns4ix0nhz8b3aqsw6q9avn7n60spakhpa30lya9asinjb";
+       version = "0.4.4";
+       sha256 = "1mmv1m78ychgqp0mblm56fszfmnxap3jwvxviy0h06s6wl2adq24";
        libraryHaskellDepends = [
          base containers convertible deepseq either pretty transformers
        ];
@@ -138167,8 +138954,8 @@ self: {
      }:
      mkDerivation {
        pname = "modern-uri";
-       version = "0.1.1.1";
-       sha256 = "1nh0h1libpiw7lkh66almgh2r0gfa5mb9fancqy039rpyqkkfv1w";
+       version = "0.1.2.0";
+       sha256 = "0n8ihy43mc3m0j70nbr86bd1kgzbkcb0dx9g3ql40v66i66kfb29";
        libraryHaskellDepends = [
          base bytestring containers contravariant deepseq exceptions
          megaparsec profunctors QuickCheck template-haskell text
@@ -138459,16 +139246,16 @@ self: {
      }) {};
 
   "monad-abort-fd" = callPackage
-    ({ mkDerivation, base, monad-control, mtl, transformers
-     , transformers-abort, transformers-base
+    ({ mkDerivation, base, mtl, transformers, transformers-abort
+     , transformers-base, transformers-compat
      }:
      mkDerivation {
        pname = "monad-abort-fd";
-       version = "0.5";
-       sha256 = "1yyqbs2zq6rkz0rk36k1c4p7d4f2r6jkf1pzg3a0wbjdqk01ayb7";
+       version = "0.6";
+       sha256 = "0a9ykj8cp817qlzvz7l5502zmwhiqa5236xvnsf93x38h34xwx5m";
        libraryHaskellDepends = [
-         base monad-control mtl transformers transformers-abort
-         transformers-base
+         base mtl transformers transformers-abort transformers-base
+         transformers-compat
        ];
        homepage = "https://github.com/mvv/monad-abort-fd";
        description = "A better error monad transformer";
@@ -138743,8 +139530,8 @@ self: {
        pname = "monad-http";
        version = "0.1.0.0";
        sha256 = "14ki66l60la1mmm544vvzn930liaygj6zrql10nr192shf3v0cx3";
-       revision = "6";
-       editedCabalFile = "0xnh69yfpgz1i43x2695gyrxar1582m02cwrzmvfymzvvqbkcwld";
+       revision = "7";
+       editedCabalFile = "19qsjwcdg39is6ipwl6hgr42c7gyc7p1cs5f8isxy90hb4xjghrh";
        libraryHaskellDepends = [
          base base-compat bytestring exceptions http-client http-client-tls
          http-types monad-logger monadcryptorandom MonadRandom mtl text
@@ -138896,6 +139683,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "monad-logger_0_3_26" = callPackage
+    ({ mkDerivation, base, blaze-builder, bytestring, conduit
+     , conduit-extra, exceptions, fast-logger, lifted-base
+     , monad-control, monad-loops, mtl, resourcet, stm, stm-chans
+     , template-haskell, text, transformers, transformers-base
+     , transformers-compat, unliftio-core
+     }:
+     mkDerivation {
+       pname = "monad-logger";
+       version = "0.3.26";
+       sha256 = "0p7mdiv0n4wizcam2lw143szs584yzs0bq9lfrn90pgvz0q7k1ia";
+       libraryHaskellDepends = [
+         base blaze-builder bytestring conduit conduit-extra exceptions
+         fast-logger lifted-base monad-control monad-loops mtl resourcet stm
+         stm-chans template-haskell text transformers transformers-base
+         transformers-compat unliftio-core
+       ];
+       homepage = "https://github.com/kazu-yamamoto/logger";
+       description = "A class of monads which can log messages";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "monad-logger-json" = callPackage
     ({ mkDerivation, aeson, base, monad-logger, template-haskell, text
      }:
@@ -139536,8 +140346,8 @@ self: {
     ({ mkDerivation, base, stm, transformers }:
      mkDerivation {
        pname = "monad-var";
-       version = "0.1.1.1";
-       sha256 = "1j9ydl29a4cqhkackcpzlp7amiwk0ifvyxdcmi2vka7m1d98jc6z";
+       version = "0.1.2.0";
+       sha256 = "1nj10lhijwvim7js2vl9b9qq7x55dx7bk6q4jmvpz99c2vqfhyy5";
        libraryHaskellDepends = [ base stm transformers ];
        homepage = "https://github.com/effectfully/monad-var#readme";
        description = "Generic operations over variables";
@@ -140033,8 +140843,8 @@ self: {
      }:
      mkDerivation {
        pname = "mono-traversable";
-       version = "1.0.4.0";
-       sha256 = "0qwmzjf25gradzajr4f9zw3a48m4hw26qvqnb134daqkyxpkzf13";
+       version = "1.0.5.0";
+       sha256 = "1zrn7wp938di4mdc8q0z4imgg2hky7ap98ralzf8rdgqfrrvfpa6";
        libraryHaskellDepends = [
          base bytestring containers hashable split text transformers
          unordered-containers vector vector-algorithms
@@ -140044,7 +140854,7 @@ self: {
          text transformers unordered-containers vector
        ];
        benchmarkHaskellDepends = [ base criterion mwc-random vector ];
-       homepage = "https://github.com/snoyberg/mono-traversable";
+       homepage = "https://github.com/snoyberg/mono-traversable#readme";
        description = "Type classes for mapping, folding, and traversing monomorphic containers";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -140455,8 +141265,8 @@ self: {
      }:
      mkDerivation {
        pname = "morte";
-       version = "1.6.11";
-       sha256 = "10zwdf82hxjgxh7zs7wlnvyzjpaqalwj7rlg454jjlml59ifzvmw";
+       version = "1.6.12";
+       sha256 = "0g3nbh2ba1nqa8y7hnqdk149xsayyz46jrw749mdqlrcklxhvk9l";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -140478,7 +141288,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "morte_1_6_12" = callPackage
+  "morte_1_6_13" = callPackage
     ({ mkDerivation, alex, array, base, binary, code-page, containers
      , criterion, deepseq, Earley, http-client, http-client-tls
      , microlens, microlens-mtl, mtl, optparse-applicative, pipes
@@ -140487,8 +141297,8 @@ self: {
      }:
      mkDerivation {
        pname = "morte";
-       version = "1.6.12";
-       sha256 = "0g3nbh2ba1nqa8y7hnqdk149xsayyz46jrw749mdqlrcklxhvk9l";
+       version = "1.6.13";
+       sha256 = "03vjkp3ngbdhv5ib7jwdwx23bklm32m3gmvq63r2cxagydl1267m";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -140620,20 +141430,22 @@ self: {
      }) {};
 
   "movie-monad" = callPackage
-    ({ mkDerivation, base, gi-gdk, gi-gdkx11, gi-glib, gi-gobject
-     , gi-gst, gi-gstvideo, gi-gtk, gi-xlib, haskell-gi-base, MissingH
-     , process, text
+    ({ mkDerivation, base, filepath, gi-gdk, gi-gdkpixbuf, gi-glib
+     , gi-gobject, gi-gst, gi-gstvideo, gi-gtk, haskell-gi-base
+     , MissingH, network-uri, process, system-fileio, system-filepath
+     , text, time
      }:
      mkDerivation {
        pname = "movie-monad";
-       version = "0.0.1.0";
-       sha256 = "02sj8x49lw80nhzlwsnddj7r9w6xfv1vks4rpgds89pmkr4b5bvn";
+       version = "0.0.2.0";
+       sha256 = "0cf4hrakz6cw1c3izrrckhjjhn8hd8cn9gfh41v2xi8kcn6bbciw";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
-         base gi-gdk gi-gdkx11 gi-glib gi-gobject gi-gst gi-gstvideo gi-gtk
-         gi-xlib haskell-gi-base MissingH process text
+         base filepath gi-gdk gi-gdkpixbuf gi-glib gi-gobject gi-gst
+         gi-gstvideo gi-gtk haskell-gi-base MissingH network-uri process
+         system-fileio system-filepath text time
        ];
        homepage = "https://github.com/lettier/movie-monad";
        description = "Plays videos using GStreamer and GTK+";
@@ -142624,6 +143436,8 @@ self: {
        pname = "myanimelist-export";
        version = "0.2.0.0";
        sha256 = "1d9fqna5qavp1lzpsg8yg816m3smybdsx25gafqr9wc2555rj1gg";
+       revision = "1";
+       editedCabalFile = "1ni5bmhfra2rlxlv55iah865shyibz7bwl2zz6161v4s35bs68dj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -143520,6 +144334,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "natural-induction" = callPackage
+    ({ mkDerivation, base, peano }:
+     mkDerivation {
+       pname = "natural-induction";
+       version = "0.2.0.0";
+       sha256 = "1brkmvkwpgqsxra210h8fkb9bpvawmbdwwvvhsd58kzmkd599alr";
+       libraryHaskellDepends = [ base peano ];
+       description = "Induction over natural numbers";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "natural-number" = callPackage
     ({ mkDerivation, base, type-equality, type-level-natural-number
      , type-level-natural-number-induction
@@ -144751,17 +145576,22 @@ self: {
      }) {};
 
   "network-dns" = callPackage
-    ({ mkDerivation, base, binary, bytestring, cereal, containers
-     , data-textual, hashable, network-ip, parsers, tagged, text-latin1
-     , text-printer
+    ({ mkDerivation, base, bytestring, containers, data-serializer
+     , data-textual, hashable, network-ip, parsers, posix-socket
+     , text-latin1, text-printer, type-hint
      }:
      mkDerivation {
        pname = "network-dns";
-       version = "1.0.0.1";
-       sha256 = "0gg1g1gnbi6dzw5anz3dam2gh09q948d3k7q84agkswa64c0azn8";
+       version = "1.1.0.1";
+       sha256 = "0q709qfhph93k8yni6047yr2zhswmc3cvizyyk63vmh3h2dwfmgs";
+       isLibrary = true;
+       isExecutable = true;
        libraryHaskellDepends = [
-         base binary bytestring cereal containers data-textual hashable
-         network-ip parsers tagged text-latin1 text-printer
+         base bytestring containers data-serializer data-textual hashable
+         network-ip parsers text-latin1 text-printer type-hint
+       ];
+       executableHaskellDepends = [
+         base data-serializer data-textual network-ip posix-socket
        ];
        homepage = "https://github.com/mvv/network-dns";
        description = "Domain Name System data structures";
@@ -144825,8 +145655,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "network-info";
-       version = "0.2.0.8";
-       sha256 = "0xndvg776241fgjmynxfpy81f1csjmh8dg33yf0c8m71ychz3pzc";
+       version = "0.2.0.9";
+       sha256 = "0rmajccwhkf0p4inb8jjj0dzsksgn663w90km00xvf4mq3pkjab3";
        libraryHaskellDepends = [ base ];
        homepage = "http://github.com/jystic/network-info";
        description = "Access the local computer's basic network configuration";
@@ -145419,6 +146249,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "network-voicetext" = callPackage
+    ({ mkDerivation, base, bytestring, exceptions, http-client-tls
+     , http-conduit, http-types, resourcet, transformers, utf8-string
+     }:
+     mkDerivation {
+       pname = "network-voicetext";
+       version = "0.0.0.1";
+       sha256 = "0fhmrif3liw61f17kl6208m4bhvdy57h9cpzdnv0af0rjnxgr7ki";
+       libraryHaskellDepends = [
+         base bytestring exceptions http-client-tls http-conduit http-types
+         resourcet transformers utf8-string
+       ];
+       homepage = "https://github.com/zaneli/network-voicetext";
+       description = "VoiceText Web API wrapper";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "network-wai-router" = callPackage
     ({ mkDerivation, base, wai }:
      mkDerivation {
@@ -146039,20 +146886,18 @@ self: {
      }) {};
 
   "nix-paths" = callPackage
-    ({ mkDerivation, base, nix, process }:
+    ({ mkDerivation, base, nix, nix-hash, process }:
      mkDerivation {
        pname = "nix-paths";
-       version = "1.0.0.1";
-       sha256 = "05gkx79p532zciqjrsq16231pmzb5rixxip9j0vdc85a5h2a4bbl";
-       revision = "1";
-       editedCabalFile = "17l6x5azdiklwmiwkk05zxg50gqgdq9n5a1nyfywy05b6h7m33il";
+       version = "1.0.1";
+       sha256 = "1y09wl1ihxmc9p926g595f70pdcsx78r3q5n5rna23lpq8xicdxb";
        libraryHaskellDepends = [ base process ];
-       libraryToolDepends = [ nix ];
+       libraryToolDepends = [ nix nix-hash ];
        homepage = "https://github.com/peti/nix-paths";
        description = "Knowledge of Nix's installation directories";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
-     }) {inherit (pkgs) nix;};
+     }) {inherit (pkgs) nix; nix-hash = null;};
 
   "nixfromnpm" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base, bytestring
@@ -146518,14 +147363,15 @@ self: {
 
   "nonce" = callPackage
     ({ mkDerivation, base, base64-bytestring, bytestring, entropy, text
-     , transformers
+     , transformers, unliftio, unliftio-core
      }:
      mkDerivation {
        pname = "nonce";
-       version = "1.0.4";
-       sha256 = "1xkf107sbcm3pvm6r4xk4719sccaq2kzja6nf8bky9m7vpiilrji";
+       version = "1.0.5";
+       sha256 = "15gbgfmby1mlk95c1q7qd38yc5xr4z7l58b3y59aixlsp4qspind";
        libraryHaskellDepends = [
          base base64-bytestring bytestring entropy text transformers
+         unliftio unliftio-core
        ];
        homepage = "https://github.com/prowdsponsor/nonce";
        description = "Generate cryptographic nonces";
@@ -147808,6 +148654,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "ochintin-daicho" = callPackage
+    ({ mkDerivation, base, bookkeeping, doctest, Glob, text }:
+     mkDerivation {
+       pname = "ochintin-daicho";
+       version = "0.1.0.0";
+       sha256 = "1fpchynm5pigskyk9gm2hy9kxidqvims832dq0x6lsxiaz0a3dzv";
+       libraryHaskellDepends = [ base bookkeeping text ];
+       testHaskellDepends = [ base doctest Glob ];
+       homepage = "https://github.com/arowM/haskell-ochintin-daicho#readme";
+       description = "A module to manage payroll books for Japanese companies";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "octane" = callPackage
     ({ mkDerivation, aeson, base, bimap, binary, bytestring, containers
      , data-default-class, file-embed, http-client, http-client-tls
@@ -149719,10 +150578,10 @@ self: {
      }:
      mkDerivation {
        pname = "optparse-applicative-simple";
-       version = "1.0.1";
-       sha256 = "05zr4wcqln1vq2v1vaq4bfjiz5b7fmmjmzbnm6drplr5scsy9igm";
+       version = "1.0.2";
+       sha256 = "0kn740shja07mpaj9hy5blw1bcgy6ncpfyz3rqy3cglh2fzswsk2";
        libraryHaskellDepends = [
-         attoparsec base-prelude optparse-applicative text
+         attoparsec attoparsec-data base-prelude optparse-applicative text
        ];
        testHaskellDepends = [ attoparsec-data rerebase ];
        homepage = "https://github.com/nikita-volkov/optparse-applicative-simple";
@@ -150953,7 +151812,7 @@ self: {
        maintainers = with stdenv.lib.maintainers; [ peti ];
      }) {};
 
-  "pandoc_2_0_4" = callPackage
+  "pandoc_2_0_5" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, base64-bytestring
      , binary, blaze-html, blaze-markup, bytestring, Cabal
      , case-insensitive, cmark-gfm, containers, criterion, data-default
@@ -150968,8 +151827,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "2.0.4";
-       sha256 = "0zpcl7k405dyh83ng3ffch8bi1fjh7n53aycql07fmw84kbnc180";
+       version = "2.0.5";
+       sha256 = "0670fzvlgzcw9prswjyms49nlgbwbd2bj4xvhlr8had3yklml94i";
        configureFlags = [ "-fhttps" "-f-trypandoc" ];
        isLibrary = true;
        isExecutable = true;
@@ -151097,13 +151956,14 @@ self: {
   "pandoc-crossref" = callPackage
     ({ mkDerivation, base, containers, data-accessor
      , data-accessor-template, data-accessor-transformers, data-default
-     , directory, filepath, hspec, mtl, pandoc, pandoc-types
-     , roman-numerals, syb, template-haskell, text, utility-ht
+     , deepseq, directory, filepath, hspec, mtl, open-browser
+     , optparse-applicative, pandoc, pandoc-types, roman-numerals, syb
+     , template-haskell, temporary, text, utility-ht
      }:
      mkDerivation {
        pname = "pandoc-crossref";
-       version = "0.2.7.0";
-       sha256 = "1nh9yi2p7i8ms45rfd5859639f8rh5vxnvdqrdi399rmnp74vj9k";
+       version = "0.3.0.0";
+       sha256 = "0fgds8i9fwxmfprbp4giv7qi4gzx373p07smfm7arpbimv239d6n";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -151115,9 +151975,9 @@ self: {
        ];
        executableHaskellDepends = [
          base containers data-accessor data-accessor-template
-         data-accessor-transformers data-default directory filepath mtl
-         pandoc pandoc-types roman-numerals syb template-haskell text
-         utility-ht
+         data-accessor-transformers data-default deepseq directory filepath
+         mtl open-browser optparse-applicative pandoc pandoc-types
+         roman-numerals syb template-haskell temporary text utility-ht
        ];
        testHaskellDepends = [
          base containers data-accessor data-accessor-template
@@ -151127,7 +151987,7 @@ self: {
        ];
        homepage = "https://github.com/lierdakil/pandoc-crossref#readme";
        description = "Pandoc filter for cross-references";
-       license = stdenv.lib.licenses.gpl2;
+       license = "GPL";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
@@ -152561,12 +153421,12 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "parser-combinators_0_2_0" = callPackage
+  "parser-combinators_0_2_1" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "parser-combinators";
-       version = "0.2.0";
-       sha256 = "1gz3kh56471924y12vvmrc5w4bx85a53qrp2j8fp33nn78bvx8v8";
+       version = "0.2.1";
+       sha256 = "1iai2i4kr7f8fbvvm4xw4hqcwnv26g0gaglpcim9r36jmzhf2yna";
        libraryHaskellDepends = [ base ];
        homepage = "https://github.com/mrkkrp/parser-combinators";
        description = "Lightweight package providing commonly useful parser combinators";
@@ -152871,6 +153731,32 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "passman-core" = callPackage
+    ({ mkDerivation, aeson, async, base, bcrypt, bytestring, conduit
+     , conduit-extra, containers, cryptohash-md5, csv-conduit
+     , data-ordlist, directory, filepath, int-cast, memory
+     , passman-core-internal, QuickCheck, quickcheck-unicode, resourcet
+     , template-haskell, temporary, text, unix-compat, yaml
+     }:
+     mkDerivation {
+       pname = "passman-core";
+       version = "0.1.0.0";
+       sha256 = "1197mz7d2x84b2madpq1xgl241qhh47yfnwxpksad7dqc05k48da";
+       libraryHaskellDepends = [
+         aeson base bcrypt bytestring conduit conduit-extra containers
+         cryptohash-md5 csv-conduit data-ordlist directory filepath int-cast
+         memory passman-core-internal resourcet text unix-compat yaml
+       ];
+       testHaskellDepends = [
+         async base conduit filepath passman-core-internal QuickCheck
+         quickcheck-unicode template-haskell temporary text yaml
+       ];
+       homepage = "https://github.com/PasswordManager/passman-core#readme";
+       description = "Deterministic password generator core";
+       license = stdenv.lib.licenses.gpl3;
+       broken = true;
+     }) {passman-core-internal = null;};
+
   "passwords" = callPackage
     ({ mkDerivation, base, containers, MonadRandom, random }:
      mkDerivation {
@@ -153119,12 +154005,14 @@ self: {
     ({ mkDerivation, base, bytestring, path, safe-exceptions, text }:
      mkDerivation {
        pname = "path-text-utf8";
-       version = "0.0.0.2";
-       sha256 = "0m1rmzyjsiwb1k1rpj7mwjmbg6y9rmbv69bxqm0pbc6ylkh678ja";
+       version = "0.0.1.0";
+       sha256 = "0z7k6wj4p9192blrxnnmq79km4f6sm8lagp01vznc1gmy1p0w4cg";
+       revision = "1";
+       editedCabalFile = "1m04dyqqamh9lkkmcbf2dg7ivd5kb2dxqh9b844lr7mk5qganar6";
        libraryHaskellDepends = [
          base bytestring path safe-exceptions text
        ];
-       homepage = "https://github.com/chris-martin/path-text-utf8#readme";
+       homepage = "https://github.com/chris-martin/path-text-utf8";
        description = "Read and write UTF-8 text files";
        license = stdenv.lib.licenses.asl20;
      }) {};
@@ -153933,6 +154821,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pedersen-commitment" = callPackage
+    ({ mkDerivation, base, bytestring, containers, cryptonite, memory
+     , mtl, protolude, QuickCheck, tasty, tasty-hunit, tasty-quickcheck
+     , text
+     }:
+     mkDerivation {
+       pname = "pedersen-commitment";
+       version = "0.1.0";
+       sha256 = "10flwinxxs1vg2giqqyazcgxrykqsj6m0kgd62b8f4wzmygws4r1";
+       libraryHaskellDepends = [
+         base bytestring containers cryptonite memory mtl protolude text
+       ];
+       testHaskellDepends = [
+         base bytestring containers cryptonite memory mtl protolude
+         QuickCheck tasty tasty-hunit tasty-quickcheck text
+       ];
+       homepage = "https://github.com/adjoint-io/pedersen-commitment#readme";
+       description = "An implementation of Pedersen commitment schemes";
+       license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "peg" = callPackage
     ({ mkDerivation, base, containers, filepath, haskeline, logict, mtl
      , parsec
@@ -155188,8 +156098,8 @@ self: {
      }:
      mkDerivation {
        pname = "pg-store";
-       version = "0.4.3";
-       sha256 = "1qqy79yqhwjw094p8i4qanmjwlvym7lndnqiw10mgp0xn63rznid";
+       version = "0.5.0";
+       sha256 = "0f81jqs5k6gb2rnpqhawc5g2z3dziksjxrncjc844xlq3ybmr5an";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-builder bytestring hashable
          haskell-src-meta mtl postgresql-libpq scientific tagged
@@ -159034,12 +159944,29 @@ self: {
        hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
      }) {};
 
+  "posix-socket" = callPackage
+    ({ mkDerivation, base, bytestring, data-default-class, data-flags
+     , network-ip, transformers-base, unix
+     }:
+     mkDerivation {
+       pname = "posix-socket";
+       version = "0.2";
+       sha256 = "0ivgvpdjwiwniw7xbmlab7myhy5a631liq4864plhkrkm3hcp44y";
+       libraryHaskellDepends = [
+         base bytestring data-default-class data-flags network-ip
+         transformers-base unix
+       ];
+       homepage = "https://github.com/mvv/posix-socket";
+       description = "Bindings to the POSIX socket API";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "posix-timer" = callPackage
     ({ mkDerivation, base, transformers-base, unix }:
      mkDerivation {
        pname = "posix-timer";
-       version = "0.3";
-       sha256 = "0z4j98pb46gzhi5i5pvxxm7an7am5i757p43cp2jv8pirx33k8zd";
+       version = "0.3.0.1";
+       sha256 = "01s9hd23xcgdnryi72vj635435ccryv98a911l0zipxmvq4d8ri8";
        libraryHaskellDepends = [ base transformers-base unix ];
        homepage = "https://github.com/mvv/posix-timer";
        description = "Bindings to POSIX clock and timer functions";
@@ -159163,6 +160090,7 @@ self: {
        homepage = "https://github.com/diogob/postgres-websockets#readme";
        description = "Middleware to map LISTEN/NOTIFY messages to Websockets";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "postgresql-binary" = callPackage
@@ -159364,8 +160292,8 @@ self: {
      }:
      mkDerivation {
        pname = "postgresql-schema";
-       version = "0.1.13";
-       sha256 = "03f4hfdp632wyhygh72c6k8xwpqy2ijv51zkx3d176pb1429l0fi";
+       version = "0.1.14";
+       sha256 = "0wnmhh8pzs9hzsmqkvr89jbdbbd1j87fnly2c80rsd7wr5qcrpkk";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -159819,6 +160747,68 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "potoki" = callPackage
+    ({ mkDerivation, attoparsec, base, base-prelude, bug, bytestring
+     , directory, foldl, hashable, potoki-core, profunctors, QuickCheck
+     , quickcheck-instances, random, rerebase, tasty, tasty-hunit
+     , tasty-quickcheck, text, unagi-chan, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "potoki";
+       version = "0.6.2";
+       sha256 = "12smxfa1s0i018cg8py9q8yzkirnvpfzygkzc8ck9d464gm82psv";
+       libraryHaskellDepends = [
+         attoparsec base base-prelude bug bytestring directory foldl
+         hashable potoki-core profunctors text unagi-chan
+         unordered-containers vector
+       ];
+       testHaskellDepends = [
+         attoparsec QuickCheck quickcheck-instances random rerebase tasty
+         tasty-hunit tasty-quickcheck
+       ];
+       homepage = "https://github.com/nikita-volkov/potoki";
+       description = "Simple streaming in IO";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "potoki-cereal" = callPackage
+    ({ mkDerivation, base, base-prelude, bytestring, cereal, potoki
+     , potoki-core, text
+     }:
+     mkDerivation {
+       pname = "potoki-cereal";
+       version = "0.1";
+       sha256 = "04qfs8j2kgvavacpz7x9zdza0yfl4yw56g0bca28wh7q837y073y";
+       libraryHaskellDepends = [
+         base base-prelude bytestring cereal potoki potoki-core text
+       ];
+       homepage = "https://github.com/nikita-volkov/potoki-cereal";
+       description = "Streaming serialization";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "potoki-core" = callPackage
+    ({ mkDerivation, base, deque, profunctors, QuickCheck
+     , quickcheck-instances, rerebase, stm, tasty, tasty-hunit
+     , tasty-quickcheck
+     }:
+     mkDerivation {
+       pname = "potoki-core";
+       version = "1.2";
+       sha256 = "06d9hs15r6gr5yj9rcpw4klj3lxfjdd09nc0zwvmg1h3klqrqfxy";
+       libraryHaskellDepends = [ base deque profunctors stm ];
+       testHaskellDepends = [
+         QuickCheck quickcheck-instances rerebase tasty tasty-hunit
+         tasty-quickcheck
+       ];
+       homepage = "https://github.com/nikita-volkov/potoki-core";
+       description = "Low-level components of \"potoki\"";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "potrace" = callPackage
     ({ mkDerivation, base, bindings-potrace, bytestring, containers
      , data-default, JuicyPixels, vector
@@ -160089,20 +161079,20 @@ self: {
 
   "preamble" = callPackage
     ({ mkDerivation, aeson, base, basic-prelude, exceptions
-     , fast-logger, lens, monad-control, monad-logger, MonadRandom, mtl
-     , network, resourcet, safe, shakers, template-haskell, text
-     , text-manipulate, time, transformers-base, unordered-containers
-     , uuid
+     , fast-logger, lens, lifted-base, monad-control, monad-logger
+     , MonadRandom, mtl, network, resourcet, safe, shakers
+     , template-haskell, text, text-manipulate, time, transformers-base
+     , unordered-containers, uuid
      }:
      mkDerivation {
        pname = "preamble";
-       version = "0.0.56";
-       sha256 = "0bwn4ixhgfrbjf12ahvw2hnkvx4p3818775wxnqfh72r50q54c0l";
+       version = "0.0.57";
+       sha256 = "04hc8cywmwwjxcgj0h26ahlnxj56awq9jnvpdgxgw5rvw4q4qqb3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson base basic-prelude exceptions fast-logger lens monad-control
-         monad-logger MonadRandom mtl network resourcet safe
+         aeson base basic-prelude exceptions fast-logger lens lifted-base
+         monad-control monad-logger MonadRandom mtl network resourcet safe
          template-haskell text text-manipulate time transformers-base
          unordered-containers uuid
        ];
@@ -160670,8 +161660,29 @@ self: {
      }:
      mkDerivation {
        pname = "pretty-show";
-       version = "1.6.13";
-       sha256 = "1kbx72ybrpw0kh5zsd2kdw143qykbmd9lgmsvj57659y0k5l7fjm";
+       version = "1.6.14";
+       sha256 = "1izjjcf185hdl1fsh9j6idcdghan6dzgd8a5x0k5xqx1i24yrpb2";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array base filepath ghc-prim haskell-lexer pretty
+       ];
+       libraryToolDepends = [ happy ];
+       executableHaskellDepends = [ base ];
+       homepage = "http://wiki.github.com/yav/pretty-show";
+       description = "Tools for working with derived `Show` instances and generic inspection of values";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "pretty-show_1_6_15" = callPackage
+    ({ mkDerivation, array, base, filepath, ghc-prim, happy
+     , haskell-lexer, pretty
+     }:
+     mkDerivation {
+       pname = "pretty-show";
+       version = "1.6.15";
+       sha256 = "16ik7dhagyr3is5dmkihw109l4d0500vi55z46p8lhigmfwqpn2n";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -160683,6 +161694,7 @@ self: {
        homepage = "http://wiki.github.com/yav/pretty-show";
        description = "Tools for working with derived `Show` instances and generic inspection of values";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "pretty-simple" = callPackage
@@ -161207,15 +162219,15 @@ self: {
      }) {};
 
   "privileged-concurrency" = callPackage
-    ({ mkDerivation, base, contravariant, lifted-base, monad-control
-     , stm, transformers-base
+    ({ mkDerivation, base, contravariant, lifted-base, stm, unliftio
+     , unliftio-core
      }:
      mkDerivation {
        pname = "privileged-concurrency";
-       version = "0.6.2";
-       sha256 = "10s1xnh523aibphb895wpigg6pl97c98n48ax346d27ji5w3m3dv";
+       version = "0.7.0";
+       sha256 = "0yapp7imds78rqb59rdr8bx82c6iifabf3x59n937srxiws55dik";
        libraryHaskellDepends = [
-         base contravariant lifted-base monad-control stm transformers-base
+         base contravariant lifted-base stm unliftio unliftio-core
        ];
        description = "Provides privilege separated versions of the concurrency primitives";
        license = stdenv.lib.licenses.bsd3;
@@ -161617,6 +162629,7 @@ self: {
        libraryHaskellDepends = [ base category ];
        description = "Product category";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "product-isomorphic" = callPackage
@@ -162081,6 +163094,7 @@ self: {
        homepage = "http://github.com/bitnomial/prometheus";
        description = "Prometheus Haskell Client";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "prometheus-client" = callPackage
@@ -162689,6 +163703,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "protocol-buffers_2_4_6" = callPackage
+    ({ mkDerivation, array, base, binary, bytestring, containers
+     , directory, filepath, mtl, parsec, syb, utf8-string
+     }:
+     mkDerivation {
+       pname = "protocol-buffers";
+       version = "2.4.6";
+       sha256 = "19709wgz0vcc01hjiyxdf71v9dsz9v910l1328dixpkpjh6iqxls";
+       libraryHaskellDepends = [
+         array base binary bytestring containers directory filepath mtl
+         parsec syb utf8-string
+       ];
+       homepage = "https://github.com/k-bx/protocol-buffers";
+       description = "Parse Google Protocol Buffer specifications";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "protocol-buffers-descriptor" = callPackage
     ({ mkDerivation, base, bytestring, containers, protocol-buffers }:
      mkDerivation {
@@ -162704,6 +163736,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "protocol-buffers-descriptor_2_4_6" = callPackage
+    ({ mkDerivation, base, bytestring, containers, protocol-buffers }:
+     mkDerivation {
+       pname = "protocol-buffers-descriptor";
+       version = "2.4.6";
+       sha256 = "1jxjahr10wfsywv4g17i6a1x775zrmmahqjd8lqzggy5axisvx79";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base bytestring containers protocol-buffers
+       ];
+       homepage = "https://github.com/k-bx/protocol-buffers";
+       description = "Text.DescriptorProto.Options and code generated from the Google Protocol Buffer specification";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "protocol-buffers-descriptor-fork" = callPackage
     ({ mkDerivation, base, bytestring, containers
      , protocol-buffers-fork
@@ -162870,6 +163918,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "proxy-mapping" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "proxy-mapping";
+       version = "0.1.0.1";
+       sha256 = "12lwn64znci7l5l7sa3g7hm0rmnjvykci7k65mz5c2zdwx3zgvdd";
+       libraryHaskellDepends = [ base ];
+       description = "Mapping of Proxy Types";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "psc-ide" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , edit-distance, either, filepath, fsnotify, hspec, http-client
@@ -163609,6 +164668,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "purescript-bridge_0_11_1_2" = callPackage
+    ({ mkDerivation, base, containers, directory, filepath
+     , generic-deriving, hspec, hspec-expectations-pretty-diff, lens
+     , mtl, text, transformers
+     }:
+     mkDerivation {
+       pname = "purescript-bridge";
+       version = "0.11.1.2";
+       sha256 = "1ihm5x42aa0qda5k96i7m43cx3j8ywcxgm13y7dasll697zwl04w";
+       libraryHaskellDepends = [
+         base containers directory filepath generic-deriving lens mtl text
+         transformers
+       ];
+       testHaskellDepends = [
+         base containers hspec hspec-expectations-pretty-diff text
+       ];
+       description = "Generate PureScript data types from Haskell data types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "purescript-bundle-fast" = callPackage
     ({ mkDerivation, base, containers, directory, filepath
      , optparse-applicative, text, vector
@@ -164146,6 +165226,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "q4c12-twofinger" = callPackage
+    ({ mkDerivation, base, bifunctors, Cabal, cabal-doctest, deepseq
+     , doctest, lens, QuickCheck, semigroupoids, streams
+     , template-haskell
+     }:
+     mkDerivation {
+       pname = "q4c12-twofinger";
+       version = "0.0.0.2";
+       sha256 = "036c02x5vph24a43vr58acrwny9vidmmv7536sw5b9fiynfkd343";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         base bifunctors deepseq QuickCheck semigroupoids streams
+       ];
+       testHaskellDepends = [
+         base doctest lens QuickCheck streams template-haskell
+       ];
+       homepage = "https://github.com/quasicomputational/mega/tree/master/packages/twofinger";
+       description = "Efficient alternating finger trees";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "qc-oi-testgenerator" = callPackage
     ({ mkDerivation, base, fclabels, QuickCheck, template-haskell }:
      mkDerivation {
@@ -164498,15 +165600,16 @@ self: {
      }) {};
 
   "quantification" = callPackage
-    ({ mkDerivation, aeson, base, ghc-prim, hashable, path-pieces, text
-     , vector
+    ({ mkDerivation, aeson, base, containers, ghc-prim, hashable
+     , path-pieces, text, unordered-containers, vector
      }:
      mkDerivation {
        pname = "quantification";
-       version = "0.2";
-       sha256 = "13mvhhg7j47ff741zrbnr11f5x2bv4gqdz02g2h8rr116shb31ia";
+       version = "0.3";
+       sha256 = "0hljd4m55254kmcrp3iar8ya7ky5a73vk3vrmgandmb15fsp2wvy";
        libraryHaskellDepends = [
-         aeson base ghc-prim hashable path-pieces text vector
+         aeson base containers ghc-prim hashable path-pieces text
+         unordered-containers vector
        ];
        homepage = "https://github.com/andrewthad/quantification#readme";
        description = "Rage against the quantification";
@@ -164778,18 +165881,21 @@ self: {
      }) {};
 
   "quickcheck-classes" = callPackage
-    ({ mkDerivation, aeson, base, prim-array, primitive, QuickCheck }:
+    ({ mkDerivation, aeson, base, prim-array, primitive, QuickCheck
+     , transformers, vector
+     }:
      mkDerivation {
        pname = "quickcheck-classes";
-       version = "0.1";
-       sha256 = "0fjr4fagl9wblw6998675pljhgwr554kxfahpjfk46kiknghqic1";
+       version = "0.3.1";
+       sha256 = "0xcjm55aprds4x1jlrj3izgwxpqv8z19sbiqfn8lvx6b8yc61f7f";
        libraryHaskellDepends = [
-         aeson base prim-array primitive QuickCheck
+         aeson base prim-array primitive QuickCheck transformers
        ];
-       testHaskellDepends = [ aeson base primitive QuickCheck ];
+       testHaskellDepends = [ aeson base primitive QuickCheck vector ];
        homepage = "https://github.com/andrewthad/quickcheck-classes#readme";
        description = "QuickCheck common typeclasses";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "quickcheck-combinators" = callPackage
@@ -165742,20 +166848,22 @@ self: {
      }) {};
 
   "rails-session" = callPackage
-    ({ mkDerivation, base, base-compat, base64-bytestring, bytestring
-     , cryptonite, filepath, http-types, pbkdf, ruby-marshal
-     , string-conv, tasty, tasty-hspec, transformers, vector
+    ({ mkDerivation, base, base-compat, base16-bytestring
+     , base64-bytestring, bytestring, containers, cryptonite, filepath
+     , http-types, pbkdf, ruby-marshal, semigroups, string-conv, tasty
+     , tasty-hspec, transformers, vector
      }:
      mkDerivation {
        pname = "rails-session";
-       version = "0.1.1.0";
-       sha256 = "1y4822g316wx04nsjc3pai1zmgy5c961jwqjc7c3c6glcvscd6qx";
+       version = "0.1.2.0";
+       sha256 = "0r1jiy7x7497zk1gvg1zbpqx2vh2i0j9x7gzscgx6gylkjkkppir";
        libraryHaskellDepends = [
-         base base-compat base64-bytestring bytestring cryptonite http-types
-         pbkdf ruby-marshal string-conv vector
+         base base-compat base16-bytestring base64-bytestring bytestring
+         containers cryptonite http-types pbkdf ruby-marshal string-conv
+         vector
        ];
        testHaskellDepends = [
-         base bytestring filepath ruby-marshal tasty tasty-hspec
+         base bytestring filepath ruby-marshal semigroups tasty tasty-hspec
          transformers vector
        ];
        homepage = "http://github.com/iconnect/rails-session#readme";
@@ -165891,8 +166999,8 @@ self: {
      }:
      mkDerivation {
        pname = "rakuten";
-       version = "0.1.0.3";
-       sha256 = "1l09lw0cr32vizzad7rgmwgfz7yy535n4fawikdr8lm8yzs0nr6d";
+       version = "0.1.0.4";
+       sha256 = "0nxnw5b0qhjzb0zwak74x84f081p1giyzbvpinhx527ph4j96aqf";
        libraryHaskellDepends = [
          aeson base bytestring connection constraints data-default-class
          extensible http-api-data http-client http-client-tls http-types
@@ -166045,6 +167153,17 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "random-class" = callPackage
+    ({ mkDerivation, base, primitive, transformers, util }:
+     mkDerivation {
+       pname = "random-class";
+       version = "0.2.0.2";
+       sha256 = "11nda6dgi0f3b3bzy2wahdsadf382c06xrz1dx2gnq89ym7k7qbp";
+       libraryHaskellDepends = [ base primitive transformers util ];
+       description = "Class of random value generation";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "random-derive" = callPackage
     ({ mkDerivation, base, random, template-haskell }:
      mkDerivation {
@@ -166725,12 +167844,12 @@ self: {
      }) {};
 
   "rate-limit" = callPackage
-    ({ mkDerivation, base, stm, time-units }:
+    ({ mkDerivation, base, stm, time, time-units }:
      mkDerivation {
        pname = "rate-limit";
-       version = "1.2.0";
-       sha256 = "0djjs18ca41z1mx7a6j2cbaryq895qa7wjhyqpzl38l9d2a54p7f";
-       libraryHaskellDepends = [ base stm time-units ];
+       version = "1.4.0";
+       sha256 = "0p0bnfnn790kkpgj6v6646fbczznf28a65zsf92xyiab00jw6ilb";
+       libraryHaskellDepends = [ base stm time time-units ];
        homepage = "http://github.com/acw/rate-limit";
        description = "A basic library for rate-limiting IO actions";
        license = stdenv.lib.licenses.bsd3;
@@ -166835,7 +167954,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "rattletrap_3_1_0" = callPackage
+  "rattletrap_3_1_2" = callPackage
     ({ mkDerivation, aeson, base, bimap, binary, binary-bits
      , bytestring, containers, data-binary-ieee754, filepath, hspec
      , http-client, http-client-tls, template-haskell, temporary, text
@@ -166843,8 +167962,8 @@ self: {
      }:
      mkDerivation {
        pname = "rattletrap";
-       version = "3.1.0";
-       sha256 = "1yv24p76w6zz91qjx5xhrcp7r72lqijfh32gzyjavvs6p1rnq61w";
+       version = "3.1.2";
+       sha256 = "0b0f5lkh8m96qg3m8wgnhpamqjndspa6ysf0lq013qbk9nvlvla8";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -167876,7 +168995,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "rebase_1_2_1" = callPackage
+  "rebase_1_2_2" = callPackage
     ({ mkDerivation, base, base-prelude, bifunctors, bytestring
      , containers, contravariant, contravariant-extras, deepseq, dlist
      , either, fail, hashable, mtl, profunctors, scientific
@@ -167885,8 +169004,8 @@ self: {
      }:
      mkDerivation {
        pname = "rebase";
-       version = "1.2.1";
-       sha256 = "12qnx9psnq9ici4k58mwlf3g976gyhy53csllihxji71hsfjsaj3";
+       version = "1.2.2";
+       sha256 = "11p4wg2xissj4xzw80dww2srj2ylgw3wlnapykizy2fwjl1az9k4";
        libraryHaskellDepends = [
          base base-prelude bifunctors bytestring containers contravariant
          contravariant-extras deepseq dlist either fail hashable mtl
@@ -170031,8 +171150,8 @@ self: {
      }:
      mkDerivation {
        pname = "relational-record-examples";
-       version = "0.4.1.0";
-       sha256 = "121qd6l167mm90wfzf9x4hvxflkzjq3m7k11ijaii89rb61496wj";
+       version = "0.5.0.0";
+       sha256 = "0p49sb8ssvhbhmq4wicj7b46q53vibw686rr3xfy6iz82j64mklb";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -170472,8 +171591,8 @@ self: {
      }:
      mkDerivation {
        pname = "repa-convert";
-       version = "4.2.3.1";
-       sha256 = "19b5z4al37vkxqnyn9a80ij3lj9vfr8fl06j15fkqc3nrkya7i48";
+       version = "4.2.3.2";
+       sha256 = "10fx1sa85na4xs31c5b3w4dih3xp4kzy68whpg91227ic5ah17ag";
        libraryHaskellDepends = [
          base bytestring double-conversion primitive repa-scalar text vector
        ];
@@ -170626,8 +171745,8 @@ self: {
      }:
      mkDerivation {
        pname = "repa-scalar";
-       version = "4.2.3.1";
-       sha256 = "1xwk583hvyssalc2y2n1a2pkmz2k2qsaawnghbh1d3n2ma6ncbfc";
+       version = "4.2.3.2";
+       sha256 = "1w5q7b38zy08s13nllwjisxx6mxx9pnqhh3v5ydi1b32hrkyfk7c";
        libraryHaskellDepends = [
          base bytestring double-conversion primitive time vector
        ];
@@ -170890,16 +172009,16 @@ self: {
      }) {};
 
   "reprinter" = callPackage
-    ({ mkDerivation, base, bytestring, mtl, syb, syz, transformers
-     , uniplate
+    ({ mkDerivation, base, mtl, syb, syz, text, transformers, uniplate
      }:
      mkDerivation {
        pname = "reprinter";
-       version = "0.1.0.0";
-       sha256 = "0l2vz9h5y9p10kqlg2fm5fvkg5vmrs4d8kyz8ami978ic9fv6fig";
+       version = "0.2.0.0";
+       sha256 = "1b3hdz7qq9qk7pbx0ny4ziagjm9hi9wfi9rl0aq0b8p70zzyjiq1";
        libraryHaskellDepends = [
-         base bytestring mtl syb syz transformers uniplate
+         base mtl syb syz text transformers uniplate
        ];
+       homepage = "https://github.com/camfort/reprinter#readme";
        description = "Scrap Your Reprinter";
        license = stdenv.lib.licenses.asl20;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -171072,12 +172191,12 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "rerebase_1_2" = callPackage
+  "rerebase_1_2_1" = callPackage
     ({ mkDerivation, rebase }:
      mkDerivation {
        pname = "rerebase";
-       version = "1.2";
-       sha256 = "1plmy1fcvkx621cnn6dg6k61nkzsg9wrb9vf0jhc2s1vd4yfn3kw";
+       version = "1.2.1";
+       sha256 = "02j119pabivn2x23mvvmzlkypxwi31p7s2fpakavhqfs6bmbnb2a";
        libraryHaskellDepends = [ rebase ];
        homepage = "https://github.com/nikita-volkov/rerebase";
        description = "Reexports from \"base\" with a bunch of other standard libraries";
@@ -171340,6 +172459,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "resourcet_1_1_10" = callPackage
+    ({ mkDerivation, base, containers, exceptions, hspec, lifted-base
+     , mmorph, monad-control, mtl, transformers, transformers-base
+     , transformers-compat, unliftio-core
+     }:
+     mkDerivation {
+       pname = "resourcet";
+       version = "1.1.10";
+       sha256 = "1hhw9w85nj8i2azzj5sxixffdvciq96b0jhl0zz24038bij66cyl";
+       libraryHaskellDepends = [
+         base containers exceptions lifted-base mmorph monad-control mtl
+         transformers transformers-base transformers-compat unliftio-core
+       ];
+       testHaskellDepends = [ base hspec lifted-base transformers ];
+       homepage = "http://github.com/snoyberg/conduit";
+       description = "Deterministic allocation and freeing of scarce resources";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "respond" = callPackage
     ({ mkDerivation, aeson, base, bifunctors, bytestring, containers
      , data-default-class, exceptions, fast-logger, formatting, HList
@@ -171780,8 +172919,28 @@ self: {
      }:
      mkDerivation {
        pname = "retry";
-       version = "0.7.4.3";
-       sha256 = "0i47gmlljz00fwf2qwkrh24hgsyw5sz2npaighx4wxvykf00d390";
+       version = "0.7.5.0";
+       sha256 = "1rganxc2lhbg5pch58bi29cv4m7zsddgwnkkjry8spwp3y8sh46p";
+       libraryHaskellDepends = [
+         base data-default-class exceptions ghc-prim random transformers
+       ];
+       testHaskellDepends = [
+         base data-default-class exceptions ghc-prim hspec HUnit mtl
+         QuickCheck random stm time transformers
+       ];
+       homepage = "http://github.com/Soostone/retry";
+       description = "Retry combinators for monadic actions that may fail";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "retry_0_7_5_1" = callPackage
+    ({ mkDerivation, base, data-default-class, exceptions, ghc-prim
+     , hspec, HUnit, mtl, QuickCheck, random, stm, time, transformers
+     }:
+     mkDerivation {
+       pname = "retry";
+       version = "0.7.5.1";
+       sha256 = "116fjfxdyqrk3079hqcil0dv7r2fw6x64pjwfxhckpxqavxza7sk";
        libraryHaskellDepends = [
          base data-default-class exceptions ghc-prim random transformers
        ];
@@ -171792,6 +172951,7 @@ self: {
        homepage = "http://github.com/Soostone/retry";
        description = "Retry combinators for monadic actions that may fail";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "retryer" = callPackage
@@ -171968,8 +173128,8 @@ self: {
      }:
      mkDerivation {
        pname = "rfc";
-       version = "0.0.0.3";
-       sha256 = "0068sckjcgcacjlj7xp0z02q60qghkji9l4frjagjsxxsskkksvc";
+       version = "0.0.0.4";
+       sha256 = "1zsbgq8f2a0sr575lkz6r5n0vq8jyn32q1sjxkw7d1zqkmzx1f0b";
        libraryHaskellDepends = [
          aeson aeson-diff async base blaze-html classy-prelude containers
          data-default exceptions hedis http-api-data http-client-tls
@@ -172034,13 +173194,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "rgb-color-model" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "rgb-color-model";
+       version = "0.2.0.0";
+       sha256 = "0vhqw2hylv0228g48b4q81fs0pjgmv68rzlasnz39g6yqddws97c";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/joegesualdo/rgb-color-model";
+       description = "Haskell types for working with RGB colors";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "rhine" = callPackage
     ({ mkDerivation, base, containers, dunai, free, time, transformers
      }:
      mkDerivation {
        pname = "rhine";
-       version = "0.3.0.0";
-       sha256 = "0isah99dzklp8igmapygwy39la03brjvvz2sqw4l3fbja6arpw3l";
+       version = "0.4.0.0";
+       sha256 = "18fav38bd2ysk8y5s24xxc6v381mag3g2lqpb9qayvcfj2zndx1x";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -172056,12 +173228,13 @@ self: {
     ({ mkDerivation, base, dunai, gloss, rhine }:
      mkDerivation {
        pname = "rhine-gloss";
-       version = "0.3.0.0";
-       sha256 = "048f9azvkd1jqak3514h9b8jsrqxnig0xpxqhan7hy4bryfnfhdb";
+       version = "0.4.0.0";
+       sha256 = "1sidp1f3is889g0kgdcbzpjrqndrvwvq6k713daqlkzarg9wngnj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base dunai gloss rhine ];
        executableHaskellDepends = [ base ];
+       description = "Wrapper to run reactive programs written in Rhine with Gloss as backend";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
@@ -172097,8 +173270,8 @@ self: {
      }:
      mkDerivation {
        pname = "riak";
-       version = "1.1.2.1";
-       sha256 = "090cvjskm7s2r2999x56ddi1iq4dcib6axqsym6v9xaii60r7qg7";
+       version = "1.1.2.3";
+       sha256 = "1s1ivg8l2k7mg3qd5hvgdbqp7mhczfkrwcmsnybh1yq276hhj15n";
        libraryHaskellDepends = [
          aeson async attoparsec base bifunctors binary blaze-builder
          bytestring containers data-default-class deepseq
@@ -172125,12 +173298,12 @@ self: {
      }:
      mkDerivation {
        pname = "riak-protobuf";
-       version = "0.22.0.0";
-       sha256 = "06b9b9xv9y5kjrzkbycmzq9xyqxynk45qvl000ccrgwpjql7dd9j";
+       version = "0.23.0.0";
+       sha256 = "0cyarnp2yqlj98zdbd51krpz3ls75vcl8am6h4wf98b6vdmx1jsx";
        libraryHaskellDepends = [
          array base parsec protocol-buffers protocol-buffers-descriptor
        ];
-       homepage = "http://github.com/markhibberd/riak-haskell-client";
+       homepage = "http://github.com/riak-haskell-client/riak-haskell-client";
        description = "Haskell types for the Riak protocol buffer API";
        license = "unknown";
      }) {};
@@ -172141,8 +173314,8 @@ self: {
      }:
      mkDerivation {
        pname = "riak-protobuf-lens";
-       version = "0.22.0.0";
-       sha256 = "1skb7yinin9brd55g4kwywrqhln7g32pharad3pfwjjp3xyz7qx1";
+       version = "0.23.0.0";
+       sha256 = "0i01p6ix5304hd9alahq5bpmcf1rzc9k2qqy6n7c002fmnwsw2zw";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -172673,6 +173846,7 @@ self: {
        homepage = "https://github.com/gianlucaguarini/rob#readme";
        description = "Simple projects generator";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "robin" = callPackage
@@ -175747,8 +176921,8 @@ self: {
        pname = "scientific";
        version = "0.3.5.2";
        sha256 = "0msnjz7ml0zycw9bssslxbg0nigziw7vs5km4q3vjbs8jpzpkr2w";
-       revision = "1";
-       editedCabalFile = "1gnz52yrd9bnq4qvd4v9kd00clx0sfbh64phafdq5g2hbk9yrg0v";
+       revision = "2";
+       editedCabalFile = "0wsrd213480p3pqrd6i650fr092yv7dhla7a85p8154pn5gvbr0a";
        libraryHaskellDepends = [
          base binary bytestring containers deepseq hashable integer-gmp
          integer-logarithms primitive text
@@ -176995,6 +178169,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "selda_0_1_11_2" = callPackage
+    ({ mkDerivation, base, bytestring, exceptions, hashable, mtl
+     , psqueues, text, time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "selda";
+       version = "0.1.11.2";
+       sha256 = "0ahh54sz40d4gcfgx6fb0cy1447b3qlk9kir89wk3brzfaglyyn9";
+       libraryHaskellDepends = [
+         base bytestring exceptions hashable mtl psqueues text time
+         unordered-containers
+       ];
+       homepage = "https://selda.link";
+       description = "Type-safe, high-level EDSL for interacting with relational databases";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "selda-postgresql" = callPackage
     ({ mkDerivation, base, bytestring, exceptions, postgresql-libpq
      , selda, text
@@ -177003,6 +178195,8 @@ self: {
        pname = "selda-postgresql";
        version = "0.1.7.0";
        sha256 = "0smx2hvpdxjcw58zchwmzcqz4xr5m1idv5y5rrj20df190r4l3l2";
+       revision = "1";
+       editedCabalFile = "0icxqqb4n1qbfpjlngs3lypnvjanwqrw3l8298my7b1wzj3iyw2m";
        libraryHaskellDepends = [
          base bytestring exceptions postgresql-libpq selda text
        ];
@@ -177213,8 +178407,8 @@ self: {
        pname = "semigroupoids";
        version = "5.2.1";
        sha256 = "006jys6kvckkmbnhf4jc51sh64hamkz464mr8ciiakybrfvixr3r";
-       revision = "2";
-       editedCabalFile = "049j2jl6f5mxqnavi1aadx37j4bk5xksvkxsl43hp4rg7n53p11z";
+       revision = "3";
+       editedCabalFile = "0wzcnpz8pyjk823vqnq5s8krsb8i6cw573hcschpd9x5ynq4li70";
        setupHaskellDepends = [ base Cabal cabal-doctest ];
        libraryHaskellDepends = [
          base base-orphans bifunctors comonad containers contravariant
@@ -177467,15 +178661,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "sensu-run_0_4_0_2" = callPackage
+  "sensu-run_0_4_0_3" = callPackage
     ({ mkDerivation, aeson, base, bytestring, filepath, http-client
      , http-types, lens, network, optparse-applicative, process
      , temporary, text, time, unix, unix-compat, vector, wreq
      }:
      mkDerivation {
        pname = "sensu-run";
-       version = "0.4.0.2";
-       sha256 = "1hsl9p9gzbjlalnrlbia7bvi2rs159d3h5mv5zzi81c20y5ybkjk";
+       version = "0.4.0.3";
+       sha256 = "05gl6dannlfx49f24lhspyygq8j37wmsyp8nrlcpcsqbrbd3k82g";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -178063,8 +179257,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-aeson-specs";
-       version = "0.5.2.0";
-       sha256 = "1pgj44hi9akj7irrbzr6f96pih7g9pb35jrhnwx4483rgj4ywa17";
+       version = "0.5.3.0";
+       sha256 = "13xakmbr0qykff695cj631g97nlcjmmzki68c2gg5sn9jl63yq1q";
        libraryHaskellDepends = [
          aeson aeson-pretty base bytestring directory filepath hspec
          hspec-golden-aeson QuickCheck quickcheck-arbitrary-adt random
@@ -178840,13 +180034,17 @@ self: {
      }) {};
 
   "servant-generic" = callPackage
-    ({ mkDerivation, base, servant, servant-server, text, warp }:
+    ({ mkDerivation, base, network-uri, servant, servant-server, text
+     , warp
+     }:
      mkDerivation {
        pname = "servant-generic";
-       version = "0.1.0.0";
-       sha256 = "03gh879j9qdm666lvl2j2xiqyrgclfg2k4f1l4lslby5y81r4lv6";
+       version = "0.1.0.1";
+       sha256 = "1zgw5j3wx4fyb9nhifslzsbfla3iagkvix86vb1x3d9fyz117wif";
        libraryHaskellDepends = [ base servant servant-server ];
-       testHaskellDepends = [ base servant servant-server text warp ];
+       testHaskellDepends = [
+         base network-uri servant servant-server text warp
+       ];
        description = "Specify Servant APIs with records";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -178934,6 +180132,8 @@ self: {
        pname = "servant-iCalendar";
        version = "0.1.0.1";
        sha256 = "15gqlb60r8msn3k1j8wjxq89qg6d790lnb751wabg2lsxybmdzas";
+       revision = "1";
+       editedCabalFile = "07jib9s2kg6srr1dj3l1bz0sp3fyikkvv7z0v2a62zl1c9z9xapx";
        libraryHaskellDepends = [
          base data-default http-media iCalendar servant
        ];
@@ -179001,8 +180201,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-kotlin";
-       version = "0.1.0.1";
-       sha256 = "1bv6chggrpil6332nal8blnchnn6ahiblcf5q7syray7wkkmgpjk";
+       version = "0.1.0.2";
+       sha256 = "0dwm9aia14hr2gblcak7vyh7jgs1mnfwqq131rxyygf9d11wpx41";
        libraryHaskellDepends = [
          base containers directory formatting lens servant servant-foreign
          text time wl-pprint-text
@@ -179034,6 +180234,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "servant-match" = callPackage
+    ({ mkDerivation, base, bytestring, hspec, http-types, network-uri
+     , servant, text, utf8-string
+     }:
+     mkDerivation {
+       pname = "servant-match";
+       version = "0.1.1";
+       sha256 = "1jh817sflbkqmv38rpd20jfz5nbpyxz1n0gqx7446n745jnc2ga0";
+       libraryHaskellDepends = [
+         base bytestring http-types network-uri servant text utf8-string
+       ];
+       testHaskellDepends = [ base hspec network-uri servant text ];
+       homepage = "https://github.com/cocreature/servant-match#readme";
+       description = "Standalone implementation of servant’s dispatching mechanism";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "servant-matrix-param" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, doctest
      , hspec, http-client, http-types, servant, servant-aeson-specs
@@ -179216,7 +180434,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "servant-purescript_0_9_0_1" = callPackage
+  "servant-purescript_0_9_0_2" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , filepath, http-types, lens, mainland-pretty, purescript-bridge
      , servant, servant-foreign, servant-server, servant-subscriber
@@ -179224,8 +180442,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-purescript";
-       version = "0.9.0.1";
-       sha256 = "11jpgqk1nmwjihghxbfv05fsb6n351822ryh6w08wdz3alsv4zk6";
+       version = "0.9.0.2";
+       sha256 = "1axj4rar4ncy20xiwa231hc67vpz6yi2vzddq8m6nswmdg6kja7p";
        libraryHaskellDepends = [
          aeson base bytestring containers directory filepath http-types lens
          mainland-pretty purescript-bridge servant servant-foreign
@@ -180912,16 +182130,16 @@ self: {
 
   "shakers" = callPackage
     ({ mkDerivation, base, basic-prelude, deepseq, directory
-     , regex-compat, shake
+     , lifted-base, regex-compat, shake
      }:
      mkDerivation {
        pname = "shakers";
-       version = "0.0.36";
-       sha256 = "1l2dn9s1pijh84l0difw7sb2b3id49p64fn235lj5qybww60ijhw";
+       version = "0.0.38";
+       sha256 = "08wnf9cv4qsrnx2m3l1nfh74q6i14ng2js4h7gj3z5dv1ki3xwm9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base basic-prelude deepseq directory regex-compat shake
+         base basic-prelude deepseq directory lifted-base regex-compat shake
        ];
        executableHaskellDepends = [ base ];
        homepage = "https://github.com/swift-nav/shakers";
@@ -181387,7 +182605,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "shelly_1_6_8_7" = callPackage
+  "shelly_1_7_0" = callPackage
     ({ mkDerivation, async, base, bytestring, containers, directory
      , enclosed-exceptions, exceptions, hspec, HUnit, lifted-async
      , lifted-base, monad-control, mtl, process, system-fileio
@@ -181396,8 +182614,8 @@ self: {
      }:
      mkDerivation {
        pname = "shelly";
-       version = "1.6.8.7";
-       sha256 = "10i9n4mmrfn6v02i320f4g3wak7yyjgijaj5kf9m2qpvw6wf95mj";
+       version = "1.7.0";
+       sha256 = "0jscygg381hzb4mjknrwsfw0q3j4sf1w4qrz1mf4k38794axx21q";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -182599,6 +183817,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "simple-sendfile_0_2_26" = callPackage
+    ({ mkDerivation, base, bytestring, conduit, conduit-extra
+     , directory, hspec, HUnit, network, process, resourcet, unix
+     }:
+     mkDerivation {
+       pname = "simple-sendfile";
+       version = "0.2.26";
+       sha256 = "0z2r971bjy9wwv9rhnzh0ldd0z9zvqwyrq9yhz7m4lnf0k0wqq6z";
+       libraryHaskellDepends = [ base bytestring network unix ];
+       testHaskellDepends = [
+         base bytestring conduit conduit-extra directory hspec HUnit network
+         process resourcet unix
+       ];
+       description = "Cross platform library for the sendfile system call";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "simple-server" = callPackage
     ({ mkDerivation, base, bytestring, concurrent-extra, containers
      , hashtables, network, time, unbounded-delays
@@ -182835,6 +184071,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "simplemesh" = callPackage
+    ({ mkDerivation, base, linear }:
+     mkDerivation {
+       pname = "simplemesh";
+       version = "0.1.0.0";
+       sha256 = "1cq8h96kr1qnxqma7if3pmxcw05nrirpnw703r4cba75xwgwlqcl";
+       libraryHaskellDepends = [ base linear ];
+       homepage = "https://github.com/jonascarpay/simplemesh#readme";
+       description = "Generators for primitive meshes";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "simplenote" = callPackage
     ({ mkDerivation, base, bytestring, curl, dataenc, download-curl
      , HTTP, json, time, utf8-string
@@ -183060,6 +184308,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "singleton-typelits" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "singleton-typelits";
+       version = "0.0.0.0";
+       sha256 = "00f2nvs4avl3kxijcl7wb17ip1mcnb4fzqq5ckcz0a247qvv4yig";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/mniip/singleton-typelits";
+       description = "Singletons and induction over GHC TypeLits";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "singletons" = callPackage
     ({ mkDerivation, base, Cabal, containers, directory, filepath, mtl
      , process, syb, tasty, tasty-golden, template-haskell, th-desugar
@@ -183271,6 +184531,8 @@ self: {
        pname = "size-based";
        version = "0.1.0.0";
        sha256 = "1h791s39nr057w5f2fr4v7p1czw9jm0dk5qrhr26qyw97j4ysngx";
+       revision = "1";
+       editedCabalFile = "089942604ikg40v4nl25c4j856bylmmm06py4k2spz3y2z4k49rb";
        libraryHaskellDepends = [
          base dictionary-sharing template-haskell testing-type-modifiers
        ];
@@ -183559,7 +184821,7 @@ self: {
        license = stdenv.lib.licenses.gpl2;
      }) {};
 
-  "skylighting_0_4_4_1" = callPackage
+  "skylighting_0_5" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base64-bytestring, binary
      , blaze-html, bytestring, case-insensitive, containers, criterion
      , Diff, directory, filepath, HUnit, hxt, mtl, pretty-show, random
@@ -183568,8 +184830,8 @@ self: {
      }:
      mkDerivation {
        pname = "skylighting";
-       version = "0.4.4.1";
-       sha256 = "1zvq31nbswidkr52fx91z5g326h4wnfk5sij3przgha117pl3v2j";
+       version = "0.5";
+       sha256 = "1as4rdzn69jyn3lmzk257j6q208a8z695jsc82jwmlsdyva1m3ic";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -185995,6 +187257,8 @@ self: {
        pname = "soap";
        version = "0.2.3.5";
        sha256 = "01xprcrgy0galalh27by3csbm8m2m9dxlw3y83s4qnassv8zf2xs";
+       revision = "1";
+       editedCabalFile = "0ki4g5520i7bam1gmammbb0nh8ibmjskqfv7kw2qjzzg4i9q3x95";
        libraryHaskellDepends = [
          base bytestring conduit configurator data-default exceptions
          http-client http-types iconv mtl resourcet text
@@ -186017,6 +187281,8 @@ self: {
        pname = "soap-openssl";
        version = "0.1.0.2";
        sha256 = "03w389yhybzvc06gpxigibqga9mr7m41rkg1ki3n686j9xzm8210";
+       revision = "1";
+       editedCabalFile = "1b3aivn9jfaax00id7x4cqvpmd6lgynslchlry0qsmq1lj466cdf";
        libraryHaskellDepends = [
          base configurator data-default HsOpenSSL http-client
          http-client-openssl soap text
@@ -186035,6 +187301,8 @@ self: {
        pname = "soap-tls";
        version = "0.1.1.2";
        sha256 = "0xnzwzmhh2i5nci7xbnkr28hxm376fbmgjcwz7svk46k1vxvlfp4";
+       revision = "1";
+       editedCabalFile = "0h6jgiifrphdphxfvgk95and4a86xp6afxi90v0b93cs2zyi0vsy";
        libraryHaskellDepends = [
          base configurator connection data-default http-client
          http-client-tls soap text tls x509 x509-store x509-validation
@@ -186775,7 +188043,7 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "sparkle_0_6" = callPackage
+  "sparkle_0_7_1" = callPackage
     ({ mkDerivation, base, binary, bytestring, Cabal, choice
      , distributed-closure, filepath, inline-java, jni, jvm
      , jvm-streaming, process, regex-tdfa, singletons, streaming, text
@@ -186783,8 +188051,8 @@ self: {
      }:
      mkDerivation {
        pname = "sparkle";
-       version = "0.6";
-       sha256 = "11i0bk9yl8ba84xm2hfxlnspygfafdannafg42iqfg1q6f8h2y7w";
+       version = "0.7.1";
+       sha256 = "1494c6zwn8q3aj9x07r2iikkbnxf8r3aw823dip47sygc95wy39w";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -187077,8 +188345,8 @@ self: {
     ({ mkDerivation, base, cmdargs, containers, leancheck }:
      mkDerivation {
        pname = "speculate";
-       version = "0.3.1";
-       sha256 = "01w44hd53n770fm49x70k3c4pwvsvp641x7kdnafg6czy8500s2k";
+       version = "0.3.2";
+       sha256 = "0cf8121hfmyj1jrklf2i1bp2q4517627vgaz1flf363n93jnckfk";
        libraryHaskellDepends = [ base cmdargs containers leancheck ];
        testHaskellDepends = [ base leancheck ];
        benchmarkHaskellDepends = [ base leancheck ];
@@ -187594,6 +188862,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "spreadsheet_0_1_3_7" = callPackage
+    ({ mkDerivation, base, explicit-exception, transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "spreadsheet";
+       version = "0.1.3.7";
+       sha256 = "180vv2bka5b97gl1g6vdsri2yrfyy6ivdq4jw98qiw50pz66c2l4";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base explicit-exception transformers utility-ht
+       ];
+       homepage = "http://www.haskell.org/haskellwiki/Spreadsheet";
+       description = "Read and write spreadsheets from and to CSV files in a lazy way";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "sprinkles" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, array, base, bytestring
      , Cabal, case-insensitive, cereal, classy-prelude, containers, curl
@@ -188500,69 +189786,86 @@ self: {
 
   "stack" = callPackage
     ({ mkDerivation, aeson, annotated-wl-pprint, ansi-terminal, async
-     , attoparsec, base, base-compat, base64-bytestring, binary
-     , binary-tagged, blaze-builder, bytestring, Cabal, clock, conduit
-     , conduit-extra, containers, cryptonite, cryptonite-conduit
-     , deepseq, directory, echo, either, errors, exceptions, extra
-     , fast-logger, file-embed, filelock, filepath, fsnotify
-     , generic-deriving, ghc-prim, gitrev, hackage-security, hashable
-     , hastache, hpack, hpc, hspec, http-client, http-client-tls
-     , http-conduit, http-types, lifted-async, lifted-base, memory
-     , microlens, microlens-mtl, mintty, monad-control, monad-logger
-     , monad-unlift, mono-traversable, mtl, neat-interpolation
-     , network-uri, open-browser, optparse-applicative, optparse-simple
-     , path, path-io, persistent, persistent-sqlite, persistent-template
-     , pid1, pretty, process, project-template, QuickCheck
-     , regex-applicative-text, resourcet, retry, safe, safe-exceptions
-     , semigroups, smallcheck, split, stm, store, store-core
-     , streaming-commons, tar, template-haskell, temporary, text
-     , text-binary, text-metrics, th-reify-many, time, tls, transformers
-     , transformers-base, unicode-transforms, unix, unix-compat
-     , unordered-containers, vector, vector-binary-instances, yaml
-     , zip-archive, zlib
+     , attoparsec, base, base64-bytestring, bindings-uname
+     , blaze-builder, bytestring, Cabal, clock, conduit, conduit-extra
+     , containers, cryptonite, cryptonite-conduit, deepseq, directory
+     , echo, exceptions, extra, fast-logger, file-embed, filelock
+     , filepath, fsnotify, generic-deriving, gitrev, hackage-security
+     , hashable, hastache, hpack, hpc, hspec, http-client
+     , http-client-tls, http-conduit, http-types, memory, microlens
+     , microlens-mtl, mintty, monad-logger, mono-traversable, mtl
+     , neat-interpolation, network-uri, open-browser
+     , optparse-applicative, optparse-simple, path, path-io, persistent
+     , persistent-sqlite, persistent-template, pid1, pretty, primitive
+     , process, project-template, QuickCheck, regex-applicative-text
+     , resourcet, retry, semigroups, smallcheck, split, stm, store
+     , store-core, streaming-commons, tar, template-haskell, temporary
+     , text, text-metrics, th-reify-many, time, tls, transformers
+     , unicode-transforms, unix, unix-compat, unliftio
+     , unordered-containers, vector, yaml, zip-archive, zlib
      }:
      mkDerivation {
        pname = "stack";
-       version = "1.5.1";
-       sha256 = "1hw8lwk4dxfzw27l64g2z7gscpnp7adw5cc8kplldazj0y2cnf6x";
+       version = "1.6.1";
+       sha256 = "0mf95h83qrgidkfvwm47w262fprsh8g5rf9mzkc1v2ifbn9b93v9";
        revision = "1";
-       editedCabalFile = "1ywghpdjnwzk1m67fg5hzz16hxf7pqf5wayyzk1xjbnnl989gll6";
+       editedCabalFile = "103w999pac6337idj241iil52rssjp4vn5r5bvgl72sn64wxkm4x";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
        libraryHaskellDepends = [
          aeson annotated-wl-pprint ansi-terminal async attoparsec base
-         base-compat base64-bytestring binary binary-tagged blaze-builder
-         bytestring Cabal clock conduit conduit-extra containers cryptonite
-         cryptonite-conduit deepseq directory echo either errors exceptions
-         extra fast-logger file-embed filelock filepath fsnotify
-         generic-deriving ghc-prim hackage-security hashable hastache hpack
-         hpc http-client http-client-tls http-conduit http-types
-         lifted-async lifted-base memory microlens microlens-mtl mintty
-         monad-control monad-logger monad-unlift mtl network-uri
-         open-browser optparse-applicative path path-io persistent
-         persistent-sqlite persistent-template pid1 pretty process
-         project-template regex-applicative-text resourcet retry safe
-         safe-exceptions semigroups split stm store store-core
-         streaming-commons tar template-haskell temporary text text-binary
-         text-metrics time tls transformers transformers-base
-         unicode-transforms unix unix-compat unordered-containers vector
-         vector-binary-instances yaml zip-archive zlib
-       ];
-       executableHaskellDepends = [
-         base bytestring Cabal conduit containers directory either filelock
-         filepath gitrev hpack http-client lifted-base microlens
-         monad-control monad-logger mtl optparse-applicative optparse-simple
-         path path-io split text transformers
-       ];
-       testHaskellDepends = [
-         async attoparsec base bytestring Cabal conduit conduit-extra
-         containers cryptonite directory exceptions filepath hashable hspec
-         http-client-tls http-conduit monad-logger mono-traversable
-         neat-interpolation optparse-applicative path path-io process
-         QuickCheck resourcet retry smallcheck store template-haskell
-         temporary text th-reify-many transformers unix-compat
-         unordered-containers vector yaml
+         base64-bytestring bindings-uname blaze-builder bytestring Cabal
+         clock conduit conduit-extra containers cryptonite
+         cryptonite-conduit deepseq directory echo exceptions extra
+         fast-logger file-embed filelock filepath fsnotify generic-deriving
+         hackage-security hashable hastache hpack hpc http-client
+         http-client-tls http-conduit http-types memory microlens
+         microlens-mtl mintty monad-logger mono-traversable mtl
+         neat-interpolation network-uri open-browser optparse-applicative
+         path path-io persistent persistent-sqlite persistent-template pid1
+         pretty primitive process project-template regex-applicative-text
+         resourcet retry semigroups split stm store store-core
+         streaming-commons tar template-haskell temporary text text-metrics
+         th-reify-many time tls transformers unicode-transforms unix
+         unix-compat unliftio unordered-containers vector yaml zip-archive
+         zlib
+       ];
+       executableHaskellDepends = [
+         aeson annotated-wl-pprint ansi-terminal async attoparsec base
+         base64-bytestring bindings-uname blaze-builder bytestring Cabal
+         clock conduit conduit-extra containers cryptonite
+         cryptonite-conduit deepseq directory echo exceptions extra
+         fast-logger file-embed filelock filepath fsnotify generic-deriving
+         gitrev hackage-security hashable hastache hpack hpc http-client
+         http-client-tls http-conduit http-types memory microlens
+         microlens-mtl mintty monad-logger mono-traversable mtl
+         neat-interpolation network-uri open-browser optparse-applicative
+         optparse-simple path path-io persistent persistent-sqlite
+         persistent-template pid1 pretty primitive process project-template
+         regex-applicative-text resourcet retry semigroups split stm store
+         store-core streaming-commons tar template-haskell temporary text
+         text-metrics th-reify-many time tls transformers unicode-transforms
+         unix unix-compat unliftio unordered-containers vector yaml
+         zip-archive zlib
+       ];
+       testHaskellDepends = [
+         aeson annotated-wl-pprint ansi-terminal async attoparsec base
+         base64-bytestring bindings-uname blaze-builder bytestring Cabal
+         clock conduit conduit-extra containers cryptonite
+         cryptonite-conduit deepseq directory echo exceptions extra
+         fast-logger file-embed filelock filepath fsnotify generic-deriving
+         hackage-security hashable hastache hpack hpc hspec http-client
+         http-client-tls http-conduit http-types memory microlens
+         microlens-mtl mintty monad-logger mono-traversable mtl
+         neat-interpolation network-uri open-browser optparse-applicative
+         path path-io persistent persistent-sqlite persistent-template pid1
+         pretty primitive process project-template QuickCheck
+         regex-applicative-text resourcet retry semigroups smallcheck split
+         stm store store-core streaming-commons tar template-haskell
+         temporary text text-metrics th-reify-many time tls transformers
+         unicode-transforms unix unix-compat unliftio unordered-containers
+         vector yaml zip-archive zlib
        ];
        doCheck = false;
        preCheck = "export HOME=$TMPDIR";
@@ -188707,6 +190010,23 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "stack-yaml" = callPackage
+    ({ mkDerivation, base, bytestring, directory, doctest, filepath
+     , Glob, text, yaml
+     }:
+     mkDerivation {
+       pname = "stack-yaml";
+       version = "0.1.0.0";
+       sha256 = "14cs9mds6xfy39nzyariisqxkzpkzi0r86ldb0kw60g4wgy9m6m5";
+       libraryHaskellDepends = [
+         base bytestring directory filepath text yaml
+       ];
+       testHaskellDepends = [ base doctest Glob ];
+       homepage = "https://github.com/phlummox/stack-yaml";
+       description = "Parse a stack.yaml file";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "stack2nix" = callPackage
     ({ mkDerivation, async, base, bytestring, Cabal, containers
      , data-fix, directory, filepath, Glob, hnix, monad-parallel
@@ -190619,15 +191939,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "stratosphere_0_13_0" = callPackage
+  "stratosphere_0_14_0" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring, hashable
      , hspec, hspec-discover, lens, template-haskell, text
      , unordered-containers
      }:
      mkDerivation {
        pname = "stratosphere";
-       version = "0.13.0";
-       sha256 = "15b7s0jgsqrpsjh4l4i39k45qx9m0k4xsbhhm6ffzxlqi2ivkayz";
+       version = "0.14.0";
+       sha256 = "11y97l0qsyab8hk126qi4lj8a8d13wp8zhk2qsqwy31rcmjipr0s";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -190842,6 +192162,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "streaming_0_2_0_0" = callPackage
+    ({ mkDerivation, base, containers, exceptions, ghc-prim, mmorph
+     , mtl, transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "streaming";
+       version = "0.2.0.0";
+       sha256 = "08l7x3cbska45pv754nnkms1m6jmgi0qv4apsvdmc2mni4cb5jkn";
+       libraryHaskellDepends = [
+         base containers exceptions ghc-prim mmorph mtl transformers
+         transformers-base
+       ];
+       homepage = "https://github.com/haskell-streaming/streaming";
+       description = "an elementary streaming prelude and general stream type";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "streaming-binary" = callPackage
     ({ mkDerivation, base, binary, bytestring, hspec, streaming
      , streaming-bytestring
@@ -190883,6 +192221,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "streaming-bytestring_0_1_5" = callPackage
+    ({ mkDerivation, base, bytestring, deepseq, exceptions, mmorph, mtl
+     , resourcet, smallcheck, streaming, tasty, tasty-smallcheck
+     , transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "streaming-bytestring";
+       version = "0.1.5";
+       sha256 = "0ih7ngqbign834i7z1hlqb0g0f3gphgrz6n8sdj81h36vmm6yd8j";
+       libraryHaskellDepends = [
+         base bytestring deepseq exceptions mmorph mtl resourcet streaming
+         transformers transformers-base
+       ];
+       testHaskellDepends = [
+         base bytestring smallcheck streaming tasty tasty-smallcheck
+         transformers
+       ];
+       homepage = "https://github.com/haskell-streaming/streaming-bytestring";
+       description = "effectful byte steams, or: bytestring io done right";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "streaming-cassava" = callPackage
     ({ mkDerivation, base, bytestring, cassava, hspec, mtl, QuickCheck
      , quickcheck-instances, streaming, streaming-bytestring, text
@@ -191145,6 +192506,30 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "streamly" = callPackage
+    ({ mkDerivation, atomic-primops, base, containers, criterion
+     , exceptions, hspec, lifted-base, lockfree-queue, monad-control
+     , mtl, stm, transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "streamly";
+       version = "0.1.0";
+       sha256 = "1apw961n69rix4vvb7bsdald0w1qnal1vawi66nw64cyn696sbzi";
+       revision = "1";
+       editedCabalFile = "0cx4s17r2nn6xwa9lpcn7scvbqqxi6ihxyb20axhj5rim8iz94hm";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         atomic-primops base containers exceptions lifted-base
+         lockfree-queue monad-control mtl stm transformers transformers-base
+       ];
+       testHaskellDepends = [ base containers hspec ];
+       benchmarkHaskellDepends = [ atomic-primops base criterion mtl ];
+       homepage = "https://github.com/composewell/streamly";
+       description = "Beautiful Streaming, Concurrent and Reactive Composition";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "streamproc" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -191183,8 +192568,8 @@ self: {
      }:
      mkDerivation {
        pname = "strelka";
-       version = "2.0.1";
-       sha256 = "12bmfbsrgplyd42scppp74d5zck0a7vakc5jjz07lpvw0qahvxr4";
+       version = "2.0.2";
+       sha256 = "1lrp6llvl0g469gjgl7rl67qj8zn1ssbg61n6qwkb8lqqqpq03mq";
        libraryHaskellDepends = [
          attoparsec attoparsec-data base base-prelude base64-bytestring
          bifunctors bytestring bytestring-tree-builder hashable http-media
@@ -192304,13 +193689,13 @@ self: {
      }) {};
 
   "subzero" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, containers, hspec }:
      mkDerivation {
        pname = "subzero";
-       version = "0.1.0.3";
-       sha256 = "0va9j5vh3a4rsj7hcgq38ij7dsi08rhm43s3jsymx38q8kxhv6f8";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base ];
+       version = "0.1.0.8";
+       sha256 = "0vf5crr60nixklxndpay1lp9yvhxjzmza8g5b5gz97hkyqicaid7";
+       libraryHaskellDepends = [ base containers ];
+       testHaskellDepends = [ base containers hspec ];
        homepage = "https://github.com/code5hot/subzero#readme";
        description = "Helps when going \"seed values\" -> alternatives and optional -> answers";
        license = stdenv.lib.licenses.gpl2;
@@ -195485,8 +196870,8 @@ self: {
      }:
      mkDerivation {
        pname = "tart";
-       version = "0.1.1";
-       sha256 = "1a1nh093lklih1hq7lhkqp9l48wf66axlf1hsb8h2zmkv09z517h";
+       version = "0.1.2";
+       sha256 = "1ik86xbai9513gr9k60m55xf5pj5bdw3wbjc0gd260j9k9j4p73k";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -196052,8 +197437,8 @@ self: {
      }:
      mkDerivation {
        pname = "tasty-rerun";
-       version = "1.1.7";
-       sha256 = "18hz1xqinf59mzvd68ygj9333v0a32qxfcas7crn4iniq5zv71kj";
+       version = "1.1.8";
+       sha256 = "0yg8cicfn3qaazvp4rbanzy3dyk95k3y1kkd4bykvkl9v4076788";
        libraryHaskellDepends = [
          base containers mtl optparse-applicative reducers split stm tagged
          tasty transformers
@@ -196592,8 +197977,8 @@ self: {
      }:
      mkDerivation {
        pname = "telegram-api";
-       version = "0.6.3.0";
-       sha256 = "0fp8ryh9pdpfycyknd9d1r9z1v0p06r87nf19x7azv4i1yl5msia";
+       version = "0.7.0.0";
+       sha256 = "0y9kscqn5pg99q9672l6axcnkbxjxahr7azlcw8mjwix46g5chsn";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base bytestring http-api-data http-client http-media
@@ -197947,6 +199332,8 @@ self: {
        pname = "testing-feat";
        version = "0.4.0.3";
        sha256 = "1kh7ak9qlxsr34hxccfgyz1ga90xxiaxqndk3jaln1f495w9rjil";
+       revision = "1";
+       editedCabalFile = "05j5i1sfg1k94prhwmg6z50w0flb9k181nhabwr3m9gkrrqzb4b4";
        libraryHaskellDepends = [
          base mtl QuickCheck tagshare template-haskell
        ];
@@ -198072,8 +199459,8 @@ self: {
      }:
      mkDerivation {
        pname = "texbuilder";
-       version = "0.1.1.3";
-       sha256 = "06ms5ffkrb0ray3mfix12wd2kxyh9g8dwqfzh68fxsg3r4n17gpw";
+       version = "0.1.2.0";
+       sha256 = "076im75jx1g37cvhvfc6a7my6m81rcgdww6y97p0ldwjbv88gsk3";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -198798,7 +200185,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "text-show_3_6_2" = callPackage
+  "text-show_3_7" = callPackage
     ({ mkDerivation, array, base, base-compat, base-orphans, bifunctors
      , bytestring, bytestring-builder, containers, contravariant
      , criterion, deepseq, deriving-compat, generic-deriving
@@ -198808,8 +200195,8 @@ self: {
      }:
      mkDerivation {
        pname = "text-show";
-       version = "3.6.2";
-       sha256 = "1wqzdpa7wxnqaa62mmw9fqklg12i9gyiaahj6xqy2h3rdw7r5qz2";
+       version = "3.7";
+       sha256 = "11wnvnc87rrzg949b00vbx3pbcxskrapdy9dklh6szq6pcc38irr";
        libraryHaskellDepends = [
          array base base-compat bifunctors bytestring bytestring-builder
          containers contravariant generic-deriving ghc-boot-th ghc-prim
@@ -199882,8 +201269,8 @@ self: {
        pname = "these";
        version = "0.7.4";
        sha256 = "0jl8ippnsy5zmy52cvpn252hm2g7xqp1zb1xcrbgr00pmdxpvwyw";
-       revision = "1";
-       editedCabalFile = "15vrym6g4vh4fbji8zxy1kxajnickmg6bq83m4hcy5bfv7rf9y39";
+       revision = "2";
+       editedCabalFile = "0mxl547dy7pp95kh3bvmdhsfcrmxcx8rzc94nnmcs3ahrbyw1nl1";
        libraryHaskellDepends = [
          aeson base bifunctors binary containers data-default-class deepseq
          hashable keys mtl profunctors QuickCheck semigroupoids transformers
@@ -200562,8 +201949,27 @@ self: {
      }:
      mkDerivation {
        pname = "tidal";
-       version = "0.9.4";
-       sha256 = "1i290r4invm7haw1pcq2v60iz7wr73c6qfxkghx6kfgawyl0v3pn";
+       version = "0.9.5";
+       sha256 = "1p288qc8g6jxf8l1d1wkcq4aqgyx2wpv7fn7ff9mikgj1xjixhqc";
+       libraryHaskellDepends = [
+         base colour containers hashable hosc mersenne-random-pure64 mtl
+         parsec safe text time websockets
+       ];
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       homepage = "http://tidalcycles.org/";
+       description = "Pattern language for improvised music";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
+  "tidal_0_9_6" = callPackage
+    ({ mkDerivation, base, colour, containers, hashable, hosc
+     , mersenne-random-pure64, mtl, parsec, safe, tasty, tasty-hunit
+     , text, time, websockets
+     }:
+     mkDerivation {
+       pname = "tidal";
+       version = "0.9.6";
+       sha256 = "1bldi0ygfn695x3an3qlsfzrbhmqcyhznkmsm5dsjmmh27zs1sx6";
        libraryHaskellDepends = [
          base colour containers hashable hosc mersenne-random-pure64 mtl
          parsec safe text time websockets
@@ -200572,6 +201978,7 @@ self: {
        homepage = "http://tidalcycles.org/";
        description = "Pattern language for improvised music";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tidal-midi" = callPackage
@@ -200580,8 +201987,8 @@ self: {
      }:
      mkDerivation {
        pname = "tidal-midi";
-       version = "0.9.4";
-       sha256 = "09np70rmkm75g246bm5wl2f52618ri3kd66hqhwawq586mmjj1hv";
+       version = "0.9.5.2";
+       sha256 = "0yjbrsg2lwj6x32ly0j6b4ms6i1s447jk2b7c6qp85pblaanmzqc";
        libraryHaskellDepends = [
          base containers PortMidi tidal time transformers
        ];
@@ -200932,6 +202339,7 @@ self: {
        homepage = "https://github.com/y-taka-23/time-machine#readme";
        description = "A library to mock the current time";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "time-out" = callPackage
@@ -201960,10 +203368,8 @@ self: {
     ({ mkDerivation, auto-update, base, clock, psqueues, tls }:
      mkDerivation {
        pname = "tls-session-manager";
-       version = "0.0.0.1";
-       sha256 = "0bqv6wh771j7n8qqsh02v8c4byybfkr1027k6cz03mszvnz1q9k8";
-       revision = "1";
-       editedCabalFile = "0hnhxfqmvkkhf37rr2ir52xyd59070jjm6s6al0alsanid2m4p01";
+       version = "0.0.0.2";
+       sha256 = "0rvmln545vghsx8zhxp44f0f6pzma8cylarmfhhysy55ipywr1n5";
        libraryHaskellDepends = [ auto-update base clock psqueues tls ];
        description = "In-memory TLS session manager";
        license = stdenv.lib.licenses.bsd3;
@@ -202397,8 +203803,8 @@ self: {
      }:
      mkDerivation {
        pname = "top";
-       version = "0.2.2";
-       sha256 = "1j97n3a66983pxnajk11c4jm4ccckvmf4xjvfxbmqj23ixl6isfp";
+       version = "0.2.4";
+       sha256 = "0kqyhcd407jyxpb487bx5jqnzaycycp5i8yxasgl37g45cdgb4gr";
        libraryHaskellDepends = [
          acid-state async base bytestring containers data-default-class
          deepseq extra filepath flat hslogger mtl pipes pretty safecopy
@@ -205610,8 +207016,8 @@ self: {
      }:
      mkDerivation {
        pname = "type-of-html";
-       version = "1.2.0.0";
-       sha256 = "0mnpa297x8ikgarr7wf8lllkyif240fsjzjigs9rx86r65vfszgy";
+       version = "1.3.0.1";
+       sha256 = "1f6np6m3bqiigwq2859j7d4fiyzkmlyxv5gg11f53lx92f1qfaz2";
        libraryHaskellDepends = [
          base bytestring double-conversion ghc-prim text
        ];
@@ -205622,7 +207028,6 @@ self: {
        homepage = "https://github.com/knupfer/type-of-html";
        description = "High performance type driven html generation";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "type-operators" = callPackage
@@ -205846,6 +207251,27 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "typed-process_0_2_0_0" = callPackage
+    ({ mkDerivation, async, base, base64-bytestring, bytestring, hspec
+     , process, stm, temporary, transformers
+     }:
+     mkDerivation {
+       pname = "typed-process";
+       version = "0.2.0.0";
+       sha256 = "1vc6ig5r5ajdr9d28fk1q0cb4p7nahbknn9fkzli4n9l9bk4xhdf";
+       libraryHaskellDepends = [
+         async base bytestring process stm transformers
+       ];
+       testHaskellDepends = [
+         async base base64-bytestring bytestring hspec process stm temporary
+         transformers
+       ];
+       homepage = "https://haskell-lang.org/library/typed-process";
+       description = "Run external processes, with strong typing of streams";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "typed-spreadsheet" = callPackage
     ({ mkDerivation, async, base, diagrams-cairo, diagrams-gtk
      , diagrams-lib, foldl, gtk, microlens, stm, text, transformers
@@ -207197,8 +208623,8 @@ self: {
        pname = "union";
        version = "0.1.1.2";
        sha256 = "10nkcmql6ryh3vp02yxk3i1f6fbxdcsjk6s5ani89qa05448xqkw";
-       revision = "1";
-       editedCabalFile = "17n6f3bpw7zwa9kgfpk6sa9bwg0gsi840kkzifwmp9lakykjf0cw";
+       revision = "2";
+       editedCabalFile = "088dcgyg9bzm5qczcddssjfwywk9lsj10lq7byh4f9rnsf0jppna";
        libraryHaskellDepends = [ base deepseq profunctors tagged vinyl ];
        benchmarkHaskellDepends = [ base criterion deepseq lens ];
        description = "Extensible type-safe unions";
@@ -207623,8 +209049,8 @@ self: {
      }:
      mkDerivation {
        pname = "universum";
-       version = "0.8.0";
-       sha256 = "058c9fhf5lysswch8gwicpjjpqh6l03iz861vm913r3a8lam777f";
+       version = "0.9.1";
+       sha256 = "0hag6fk3dq06vhqprj7p1fzxjjb5iymdvmqv35pzjrj371phc8h0";
        libraryHaskellDepends = [
          base bytestring containers deepseq exceptions ghc-prim hashable
          microlens microlens-mtl mtl safe safe-exceptions stm text
@@ -207679,12 +209105,12 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "unix-compat_0_5" = callPackage
+  "unix-compat_0_5_0_1" = callPackage
     ({ mkDerivation, base, unix }:
      mkDerivation {
        pname = "unix-compat";
-       version = "0.5";
-       sha256 = "0jx7r35q83sx0h46khl39azjg3zplpvgf3aiz4r4qmp3x50hwy98";
+       version = "0.5.0.1";
+       sha256 = "1gdf3h2knbymkivm784vq51mbcyj5y91r480awyxj5cw8gh9kwn2";
        libraryHaskellDepends = [ base unix ];
        homepage = "http://github.com/jystic/unix-compat";
        description = "Portable POSIX-compatibility layer";
@@ -207853,6 +209279,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "unliftio_0_2_0_0" = callPackage
+    ({ mkDerivation, async, base, deepseq, directory, filepath
+     , transformers, unix, unliftio-core
+     }:
+     mkDerivation {
+       pname = "unliftio";
+       version = "0.2.0.0";
+       sha256 = "03bbhm91n0xlc207n8zzlnxp2cifr1zrcnqdys6884l062bh1xig";
+       libraryHaskellDepends = [
+         async base deepseq directory filepath transformers unix
+         unliftio-core
+       ];
+       homepage = "https://github.com/fpco/unliftio/tree/master/unliftio#readme";
+       description = "The MonadUnliftIO typeclass for unlifting monads to IO (batteries included)";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "unliftio-core" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
@@ -209037,8 +210481,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "util";
-       version = "0.1.0.0";
-       sha256 = "10n0c7yxvyzf7j4i3mlkxcz1xpc7vdll80rd4pwrs7rhqmd94viw";
+       version = "0.1.4.0";
+       sha256 = "1b4s199qwsb1yz8wjpqybi8na20b44kkjqq09kzqky6198nmqqd8";
        libraryHaskellDepends = [ base ];
        description = "Utilities";
        license = stdenv.lib.licenses.bsd3;
@@ -210036,8 +211480,8 @@ self: {
      }:
      mkDerivation {
        pname = "vault-tool";
-       version = "0.0.0.1";
-       sha256 = "1s7q6xsq5y0hkxkb47hgnxhgy6545fvxdwsziybcsz9fbvhv7qvb";
+       version = "0.0.0.3";
+       sha256 = "0gs6qjahb3xl59cpbwcaqxsbzg28yw80fjyziqfd0s3vca4c9abm";
        libraryHaskellDepends = [
          aeson base bytestring http-client http-client-tls http-types text
          unordered-containers
@@ -210053,8 +211497,8 @@ self: {
      }:
      mkDerivation {
        pname = "vault-tool-server";
-       version = "0.0.0.1";
-       sha256 = "03gmjna82v1ir2iafchvkc32gndcfnw3skvyl7s5cilc75igrrnd";
+       version = "0.0.0.3";
+       sha256 = "07j25ksqk5fnyp3gnp79jj4l3ax3y5wf29s2kwkq9r2pjb8577g4";
        libraryHaskellDepends = [
          aeson async base bytestring filepath http-client process temporary
          text vault-tool
@@ -211034,6 +212478,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "viewprof_0_0_0_12" = callPackage
+    ({ mkDerivation, base, brick, containers, ghc-prof, lens
+     , scientific, text, vector, vector-algorithms, vty
+     }:
+     mkDerivation {
+       pname = "viewprof";
+       version = "0.0.0.12";
+       sha256 = "0a9bf8smqjjwz4m0gqac9zf9qp6ka3dhy2qrflbg1k5spd0dqqh5";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base brick containers ghc-prof lens scientific text vector
+         vector-algorithms vty
+       ];
+       homepage = "https://github.com/maoe/viewprof";
+       description = "Text-based interactive GHC .prof viewer";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "views" = callPackage
     ({ mkDerivation, base, mtl }:
      mkDerivation {
@@ -211111,6 +212575,7 @@ self: {
        homepage = "http://github.com/pjones/vimeta";
        description = "Frontend for video metadata tagging tools";
        license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "vimus" = callPackage
@@ -211182,15 +212647,15 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "vinyl_0_6_0" = callPackage
+  "vinyl_0_7_0" = callPackage
     ({ mkDerivation, base, criterion, doctest, ghc-prim, hspec, lens
      , linear, mwc-random, primitive, should-not-typecheck, singletons
      , vector
      }:
      mkDerivation {
        pname = "vinyl";
-       version = "0.6.0";
-       sha256 = "1gig8ki9v4spxy4x8irhfvjb55shsd9a7a9g37v2r0hfl6k3yc4b";
+       version = "0.7.0";
+       sha256 = "1gch1cx10466j2cyj7q4x0s3g9sjy35l5j9mvq4sfnf4sql1cfps";
        libraryHaskellDepends = [ base ghc-prim ];
        testHaskellDepends = [
          base doctest hspec lens should-not-typecheck singletons
@@ -211210,8 +212675,8 @@ self: {
      }:
      mkDerivation {
        pname = "vinyl-gl";
-       version = "0.3.1";
-       sha256 = "0rnwsz9ad7sxpk68qfmav05d6pkv8w2wg7ax31v090nd9bgwhv6a";
+       version = "0.3.2";
+       sha256 = "1g81dbcarbllij1h197j0g1x65jb4pcd8qwfwza9i4jn4sfmgps1";
        libraryHaskellDepends = [
          base containers GLUtil linear OpenGL tagged transformers vector
          vinyl
@@ -212014,31 +213479,6 @@ self: {
      }:
      mkDerivation {
        pname = "wai-cors";
-       version = "0.2.5";
-       sha256 = "0vkn5nws9vcjn809qv2jfhf9ckfcgvfhs1v3xx1b03iy0j59n215";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         attoparsec base base-unicode-symbols bytestring case-insensitive
-         http-types mtl transformers wai
-       ];
-       testHaskellDepends = [
-         base base-unicode-symbols directory filepath http-types network
-         process tasty tasty-hunit text wai wai-extra wai-websockets warp
-         websockets
-       ];
-       homepage = "https://github.com/larskuhtz/wai-cors";
-       description = "CORS for WAI";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "wai-cors_0_2_6" = callPackage
-    ({ mkDerivation, attoparsec, base, base-unicode-symbols, bytestring
-     , case-insensitive, directory, filepath, http-types, mtl, network
-     , process, tasty, tasty-hunit, text, transformers, wai, wai-extra
-     , wai-websockets, warp, websockets
-     }:
-     mkDerivation {
-       pname = "wai-cors";
        version = "0.2.6";
        sha256 = "11m9d8hn9pb9brprz0kglldmcqj83kjkjdwdpxdbl12430ii1ina";
        enableSeparateDataOutput = true;
@@ -212054,7 +213494,6 @@ self: {
        homepage = "https://github.com/larskuhtz/wai-cors";
        description = "CORS for WAI";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "wai-devel" = callPackage
@@ -212903,7 +214342,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "wai-middleware-rollbar_0_6_0" = callPackage
+  "wai-middleware-rollbar_0_8_0" = callPackage
     ({ mkDerivation, aeson, base, bytestring, case-insensitive
      , containers, hostname, hspec, hspec-golden-aeson, http-client
      , http-conduit, http-types, lens, lens-aeson, network, QuickCheck
@@ -212911,8 +214350,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-middleware-rollbar";
-       version = "0.6.0";
-       sha256 = "1vfykph1vszap8gbv3jr5a2mr8n0hhf2v2r39f27dg9yh8f6hq4q";
+       version = "0.8.0";
+       sha256 = "07fms55rpa099hlmr02dsbij8pr81r9h4m7ll1bxq06zgyi7ajzd";
        libraryHaskellDepends = [
          aeson base bytestring case-insensitive hostname http-client
          http-conduit http-types network text time unordered-containers uuid
@@ -213341,8 +214780,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-session-postgresql";
-       version = "0.2.1.1";
-       sha256 = "0yab46s0xyd49s46skrgm9hk4pvzqv3sr8mzr58231jvn7lijyf9";
+       version = "0.2.1.2";
+       sha256 = "10xc34a1l6g2lr8b4grvv17281689gdb8q1vh3kkip5lk7fp1m9r";
        libraryHaskellDepends = [
          base bytestring cereal cookie data-default entropy
          postgresql-simple resource-pool text time transformers wai
@@ -215002,8 +216441,8 @@ self: {
      }:
      mkDerivation {
        pname = "weeder";
-       version = "0.1.7";
-       sha256 = "0mvpy2qzwjdl204k3qfi1cjz44rknzyrc187wp9lvxv40mb2kyd6";
+       version = "0.1.9";
+       sha256 = "1k5q34zyw2ajy7k5imxygs86q0a245ax5ch4kgff12pfpyz0jmz7";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -216373,8 +217812,8 @@ self: {
      }:
      mkDerivation {
        pname = "wrecker";
-       version = "1.2.2.0";
-       sha256 = "03iw04jg3lmar97l9mhgd5kabfjps1dh84s7r5p9cbc6rsy5knsh";
+       version = "1.2.3.0";
+       sha256 = "138a8az5500ys2yvwif17vbmsmisd0r3q4yc8azfrd09y359ndlq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -218619,6 +220058,7 @@ self: {
        homepage = "https://gitlab.com/k0001/xmlbf";
        description = "xeno backend support for the xmlbf library";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "xmlbf-xmlhtml" = callPackage
@@ -218641,6 +220081,7 @@ self: {
        homepage = "https://gitlab.com/k0001/xmlbf";
        description = "xmlhtml backend support for the xmlbf library";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "xmlgen" = callPackage
@@ -220157,8 +221598,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth";
-       version = "1.4.20";
-       sha256 = "1p6kcx9g04x8vng12dc7kywxwnm74kpp5q4adcjcbzhgrvhrnvbj";
+       version = "1.4.21";
+       sha256 = "1qqwg9l65m9q3l8z0r1bnihqb5rbbp2c2w6gbk49kx9127rf4488";
        libraryHaskellDepends = [
          aeson authenticate base base16-bytestring base64-bytestring binary
          blaze-builder blaze-html blaze-markup byteable bytestring conduit
@@ -222948,6 +224389,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "yoga_0_0_0_2" = callPackage
+    ({ mkDerivation, base, bindings-DSL, ieee754 }:
+     mkDerivation {
+       pname = "yoga";
+       version = "0.0.0.2";
+       sha256 = "1gkql9c7dd7h0wfq98mfhgjmqlxkdf4b66qympc7r8vyx38jps1c";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base bindings-DSL ieee754 ];
+       executableHaskellDepends = [ base ];
+       description = "Bindings to Facebook's Yoga layout library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yoko" = callPackage
     ({ mkDerivation, base, bifunctors, containers, invariant, kinds
      , mtl, records, semigroups, template-haskell, th-sccs, type-cereal
@@ -223076,6 +224532,7 @@ self: {
        homepage = "https://github.com/Qinka/Yu";
        description = "The core of Yu";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yu-launch" = callPackage
@@ -223092,6 +224549,7 @@ self: {
        homepage = "https://github.com/Qinka/Yu";
        description = "The launcher for Yu";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yu-tool" = callPackage
@@ -223502,6 +224960,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {inherit (pkgs) zeromq;};
 
+  "zeromq4-haskell_0_7_0" = callPackage
+    ({ mkDerivation, async, base, bytestring, containers, exceptions
+     , monad-control, QuickCheck, semigroups, tasty, tasty-hunit
+     , tasty-quickcheck, transformers, transformers-base, zeromq
+     }:
+     mkDerivation {
+       pname = "zeromq4-haskell";
+       version = "0.7.0";
+       sha256 = "17q756mldxx9b8a2nx9lvjrgvbmgjbnp896sqcgnijq7wr751m2q";
+       libraryHaskellDepends = [
+         async base bytestring containers exceptions monad-control
+         semigroups transformers transformers-base
+       ];
+       libraryPkgconfigDepends = [ zeromq ];
+       testHaskellDepends = [
+         async base bytestring QuickCheck tasty tasty-hunit tasty-quickcheck
+       ];
+       homepage = "https://gitlab.com/twittner/zeromq-haskell/";
+       description = "Bindings to ZeroMQ 4.x";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) zeromq;};
+
   "zeroth" = callPackage
     ({ mkDerivation, base, Cabal, derive, directory, filepath
      , haskell-src-exts, hskeleton, monoid-record, process, syb
@@ -224041,19 +225522,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "zm_0_3_1" = callPackage
+  "zm_0_3_2" = callPackage
     ({ mkDerivation, base, bytestring, containers, convertible
      , cryptonite, deepseq, doctest, either, filemanip, flat, memory
-     , model, mtl, pretty, tasty, tasty-hunit, tasty-quickcheck, text
-     , timeit, transformers
+     , model, pretty, tasty, tasty-hunit, tasty-quickcheck, text, timeit
+     , transformers
      }:
      mkDerivation {
        pname = "zm";
-       version = "0.3.1";
-       sha256 = "0cdggfyzb0h3xfjm91l3rx28yq1ksxfprn1wp1mdj1zm7y0paiiv";
+       version = "0.3.2";
+       sha256 = "02f7qm3l3xmdpv6w0hxhnzimxc1pab921c0rzprj4l5mvv69adx0";
        libraryHaskellDepends = [
          base bytestring containers convertible cryptonite deepseq either
-         flat memory model mtl pretty text transformers
+         flat memory model pretty text transformers
        ];
        testHaskellDepends = [
          base bytestring containers doctest filemanip flat model pretty
diff --git a/pkgs/development/interpreters/clojure/default.nix b/pkgs/development/interpreters/clojure/default.nix
index ed2c4db20f7c..5aaa18e5ac68 100644
--- a/pkgs/development/interpreters/clojure/default.nix
+++ b/pkgs/development/interpreters/clojure/default.nix
@@ -1,23 +1,25 @@
-{ stdenv, fetchurl, unzip, ant, jdk, makeWrapper }:
+{ stdenv, fetchurl, jdk, makeWrapper }:
 
-let version = "1.8.0"; in
+let version = "1.9.0.273"; in
 
 stdenv.mkDerivation {
   name = "clojure-${version}";
 
   src = fetchurl {
-    url = "http://repo1.maven.org/maven2/org/clojure/clojure/${version}/clojure-${version}.zip";
-    sha256 = "1nip095fz5c492sw15skril60i1vd21ibg6szin4jcvyy3xr6cym";
+    url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz";
+    sha256 = "0xmrq3xvr002jgq8m1j0y5ld0rcr49608g3gqxgyxzjqswacglb4";
   };
 
-  buildInputs = [ unzip ant jdk makeWrapper ];
-
-  buildPhase = "ant jar";
+  buildInputs = [ jdk makeWrapper ];
 
   installPhase = ''
-    mkdir -p $out/share/java $out/bin
-    install -t $out/share/java clojure.jar
-    makeWrapper ${jdk.jre}/bin/java $out/bin/clojure --add-flags "-cp $out/share/java/clojure.jar clojure.main"
+    pwd
+    ls -la
+    mkdir -p $out/libexec $out/bin
+    cp -f deps.edn example-deps.edn $out
+    cp -f clojure-tools-${version}.jar $out/libexec
+    sed -i -e "s@PREFIX@$out@g" clojure
+    cp -f clj clojure $out/bin
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/interpreters/perl/default.nix b/pkgs/development/interpreters/perl/default.nix
index d2fff13e2ee4..7b0ecee1922d 100644
--- a/pkgs/development/interpreters/perl/default.nix
+++ b/pkgs/development/interpreters/perl/default.nix
@@ -35,6 +35,12 @@ let
       [ # Do not look in /usr etc. for dependencies.
         ./no-sys-dirs.patch
       ]
+      ++ optional (versionAtLeast version "5.24") (
+        # Fix parallel building: https://rt.perl.org/Public/Bug/Display.html?id=132360
+        fetchurlBoot {
+          url = "https://rt.perl.org/Public/Ticket/Attachment/1502646/807252/0001-Fix-missing-build-dependency-for-pods.patch";
+          sha256 = "1bb4mldfp8kq1scv480wm64n2jdsqa3ar46cjp1mjpby8h5dr2r0";
+        })
       ++ optional stdenv.isSunOS ./ld-shared.patch
       ++ optional stdenv.isDarwin ./cpp-precomp.patch
       ++ optional (stdenv.isDarwin && versionAtLeast version "5.24") ./sw_vers.patch;
diff --git a/pkgs/development/libraries/at-spi2-atk/default.nix b/pkgs/development/libraries/at-spi2-atk/default.nix
index e2350cf2cd13..52c3a5f8c076 100644
--- a/pkgs/development/libraries/at-spi2-atk/default.nix
+++ b/pkgs/development/libraries/at-spi2-atk/default.nix
@@ -3,18 +3,18 @@
 
 stdenv.mkDerivation rec {
   versionMajor = "2.26";
-  versionMinor = "0";
+  versionMinor = "1";
   moduleName   = "at-spi2-atk";
   name = "${moduleName}-${versionMajor}.${versionMinor}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
-    sha256 = "d25e528e1406a10c7d9b675aa15e638bcbf0a122ca3681f655a30cce83272fb9";
+    sha256 = "0x9vc99ni46fg5dzlx67vbw0zqffr24gz8jvbdxbmzyvc5xw5w5l";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig intltool ];
   buildInputs = [ python popt atk libX11 libICE xorg.libXtst libXi
-                  intltool dbus_glib at_spi2_core libSM ];
+                  dbus_glib at_spi2_core libSM ];
 
   meta = with stdenv.lib; {
     platforms = platforms.unix;
diff --git a/pkgs/development/libraries/at-spi2-core/default.nix b/pkgs/development/libraries/at-spi2-core/default.nix
index 95de186a29a3..1743faafa687 100644
--- a/pkgs/development/libraries/at-spi2-core/default.nix
+++ b/pkgs/development/libraries/at-spi2-core/default.nix
@@ -1,24 +1,23 @@
-{ stdenv, fetchurl, python, pkgconfig, popt, intltool, dbus_glib
+{ stdenv, fetchurl, python, pkgconfig, popt, gettext, dbus_glib
 , libX11, xextproto, libSM, libICE, libXtst, libXi, gobjectIntrospection }:
 
 stdenv.mkDerivation rec {
   versionMajor = "2.26";
-  versionMinor = "0";
+  versionMinor = "2";
   moduleName   = "at-spi2-core";
   name = "${moduleName}-${versionMajor}.${versionMinor}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz";
-    sha256 = "511568a65fda11fdd5ba5d4adfd48d5d76810d0e6ba4f7460f1b2ec0dbbbc337";
+    sha256 = "0596ghkamkxgv08r4a1pdhm06qd5zzgcfqsv64038w9xbvghq3n8";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ pkgconfig gettext gobjectIntrospection ];
   buildInputs = [
-    python popt  intltool dbus_glib
+    python popt dbus_glib
     libX11 xextproto libSM libICE libXtst libXi
-    gobjectIntrospection
   ];
 
   # ToDo: on non-NixOS we create a symlink from there?
diff --git a/pkgs/development/libraries/atk/default.nix b/pkgs/development/libraries/atk/default.nix
index 1574d8d037c7..61c18837782d 100644
--- a/pkgs/development/libraries/atk/default.nix
+++ b/pkgs/development/libraries/atk/default.nix
@@ -2,14 +2,14 @@
 
 let
   ver_maj = "2.26";
-  ver_min = "0";
+  ver_min = "1";
 in
 stdenv.mkDerivation rec {
   name = "atk-${ver_maj}.${ver_min}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/atk/${ver_maj}/${name}.tar.xz";
-    sha256 = "eafe49d5c4546cb723ec98053290d7e0b8d85b3fdb123938213acb7bb4178827";
+    sha256 = "1jwpx8az0iifw176dc2hl4mmg6gvxzxdkd1qvg4ds7c5hdmzy07g";
   };
 
   enableParallelBuilding = true;
@@ -20,9 +20,14 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig perl ];
 
-  propagatedBuildInputs = [ glib gobjectIntrospection /*ToDo: why propagate*/ ];
+  propagatedBuildInputs = [
+    # Required by atk.pc
+    glib
+    # TODO: Why propagate?
+    gobjectIntrospection
+  ];
 
-  #doCheck = true; # no checks in there (2.22.0)
+  doCheck = true;
 
   meta = {
     description = "Accessibility toolkit";
diff --git a/pkgs/development/libraries/audio/lv2/unstable.nix b/pkgs/development/libraries/audio/lv2/unstable.nix
index 595dd9e0a536..4a632d07006b 100644
--- a/pkgs/development/libraries/audio/lv2/unstable.nix
+++ b/pkgs/development/libraries/audio/lv2/unstable.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "lv2-unstable-${version}";
-  version = "2016-10-23";
+  version = "2017-07-08";
 
   src = fetchgit {
     url = "http://lv2plug.in/git/cgit.cgi/lv2.git";
-    rev = "b36868f3b96a436961c0c51b5b2dd71d05da9b12";
-    sha256 = "1sx39j0gary2nayzv7xgqcra7z1rcw9hrafkji05aksdwf7q0pdm";
+    rev = "39c7c726cd52b2863fcea356cafe1bcab2ba7f37";
+    sha256 = "1gp2rd99dfmpibvpixrqn115mrhybzf3if3h8bssf6siyi13f29r";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/audio/raul/default.nix b/pkgs/development/libraries/audio/raul/default.nix
index b0b0c6bc59af..63e3ae36028b 100644
--- a/pkgs/development/libraries/audio/raul/default.nix
+++ b/pkgs/development/libraries/audio/raul/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "raul-unstable-${rev}";
-  rev = "2016-09-20";
+  rev = "2017-07-23";
 
   src = fetchgit {
     url = "http://git.drobilla.net/cgit.cgi/raul.git";
-    rev = "f8bf77d3c3b77830aedafb9ebb5cdadfea7ed07a";
-    sha256 = "1lby508fb0n8ks6iz959sh18fc37br39d6pbapwvbcw5nckdrxwj";
+    rev = "4db870b2b20b0a608ec0283139056b836c5b1624";
+    sha256 = "04fajrass3ymr72flx5js5vxc601ccrmx8ny8scp0rw7j0igyjdr";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix
index fe06bcfab6d3..40df40480f3c 100644
--- a/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -14,13 +14,13 @@ let
         else throw "Unsupported system!";
 in stdenv.mkDerivation rec {
   name = "aws-sdk-cpp-${version}";
-  version = "1.1.18";
+  version = "1.3.22";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-sdk-cpp";
     rev = version;
-    sha256 = "1i85zpns3gj5by45ppg4rfk9csix8mjazpyj6dqic40b2wshnw8c";
+    sha256 = "0sdgy8kqhxnw7n0sw4m3p3ay7yic3rhad5ab8m5lbx61ad9bq3c2";
   };
 
   # FIXME: might be nice to put different APIs in different outputs
diff --git a/pkgs/development/libraries/babl/default.nix b/pkgs/development/libraries/babl/default.nix
index 133b39d07974..04e714f886ef 100644
--- a/pkgs/development/libraries/babl/default.nix
+++ b/pkgs/development/libraries/babl/default.nix
@@ -1,17 +1,20 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "babl-0.1.34";
+  name = "babl-0.1.38";
 
   src = fetchurl {
     url = "http://ftp.gtk.org/pub/babl/0.1/${name}.tar.bz2";
-    sha256 = "0nwakj313l2dh5npx18avkg4z17i2prkxbl6vj547a08n6ry1gsy";
+    sha256 = "11pfbyzq20596p9sgwraxspg3djg1jzz6wvz4bapf0yyr97jiyd0";
   };
 
-  meta = with stdenv.lib; { 
+  doCheck = true;
+
+  meta = with stdenv.lib; {
     description = "Image pixel format conversion library";
     homepage = http://gegl.org/babl/;
     license = licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ jtojnar ];
     platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/bootil/default.nix b/pkgs/development/libraries/bootil/default.nix
index 727c6bfc4f3f..160f62305945 100644
--- a/pkgs/development/libraries/bootil/default.nix
+++ b/pkgs/development/libraries/bootil/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
   platform =
     if stdenv.isLinux then "linux"
     else if stdenv.isDarwin then "macosx"
-    else abort "unrecognized platform";
+    else throw "unrecognized system ${stdenv.system}";
 
   buildInputs = [ premake4 ];
 
diff --git a/pkgs/development/libraries/cairomm/default.nix b/pkgs/development/libraries/cairomm/default.nix
index b1ee0b8d2736..09d162db8532 100644
--- a/pkgs/development/libraries/cairomm/default.nix
+++ b/pkgs/development/libraries/cairomm/default.nix
@@ -1,16 +1,16 @@
 { fetchurl, stdenv, pkgconfig, darwin, cairo, xlibsWrapper, fontconfig, freetype, libsigcxx }:
 let
   ver_maj = "1.12";
-  ver_min = "0";
+  ver_min = "2";
 in
 stdenv.mkDerivation rec {
   name = "cairomm-${ver_maj}.${ver_min}";
 
   src = fetchurl {
-    #url = "http://www.cairographics.org/releases/${name}.tar.gz";
+    url = "http://www.cairographics.org/releases/${name}.tar.gz";
     # gnome doesn't have the latest version ATM; beware: same name but different hash
-    url = "mirror://gnome/sources/cairomm/${ver_maj}/${name}.tar.xz";
-    sha256 = "a54ada8394a86182525c0762e6f50db6b9212a2109280d13ec6a0b29bfd1afe6";
+    # url = "mirror://gnome/sources/cairomm/${ver_maj}/${name}.tar.xz";
+    sha256 = "16fmigxsaz85c3lgcls7biwyz8zy8c8h3jndfm54cxxas3a7zi25";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/fftw/default.nix b/pkgs/development/libraries/fftw/default.nix
index 5cf83752aa70..36c824c75287 100644
--- a/pkgs/development/libraries/fftw/default.nix
+++ b/pkgs/development/libraries/fftw/default.nix
@@ -5,7 +5,7 @@ with lib;
 assert elem precision [ "single" "double" "long-double" "quad-precision" ];
 
 let
-  version = "3.3.6-pl1";
+  version = "3.3.7";
   withDoc = stdenv.cc.isGNU;
 in
 
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "ftp://ftp.fftw.org/pub/fftw/fftw-${version}.tar.gz";
-    sha256 = "0g8qk98lgq770ixdf7n36yd5xjsgm2v3wzvnphwmhy6r4y2amx0y";
+    sha256 = "0wsms8narnbhfsa8chdflv2j9hzspvflblnqdn7hw8x5xdzrnq1v";
   };
 
   outputs = [ "out" "dev" "man" ]
diff --git a/pkgs/development/libraries/gegl/3.0.nix b/pkgs/development/libraries/gegl/3.0.nix
index 48b1e47e0edc..4acb6047f8a1 100644
--- a/pkgs/development/libraries/gegl/3.0.nix
+++ b/pkgs/development/libraries/gegl/3.0.nix
@@ -1,12 +1,13 @@
 { stdenv, fetchurl, pkgconfig, glib, babl, libpng, cairo, libjpeg, which
-, librsvg, pango, gtk, bzip2, json_glib, intltool, autoreconfHook, libraw }:
+, librsvg, pango, gtk, bzip2, json_glib, intltool, autoreconfHook, libraw
+, libwebp, gnome3 }:
 
 stdenv.mkDerivation rec {
-  name = "gegl-0.3.18";
+  name = "gegl-0.3.24";
 
   src = fetchurl {
     url = "http://download.gimp.org/pub/gegl/0.3/${name}.tar.bz2";
-    sha256 = "1ywihjav9yhmsvbrdyx9c5q71rqdkjg8l66ywca6s4yydvr8x1fp";
+    sha256 = "0x4xjca05fbncy49vjs5nq3ria6j8wlpiq6yldkv0r6qcb18p80s";
   };
 
   hardeningDisable = [ "format" ];
@@ -14,17 +15,22 @@ stdenv.mkDerivation rec {
   # needs fonts otherwise  don't know how to pass them
   configureFlags = "--disable-docs";
 
+  enableParallelBuilding = true;
+
+  doCheck = true;
+
   buildInputs = [
-    babl libpng cairo libjpeg librsvg pango gtk bzip2 which json_glib intltool
-    libraw
+    babl libpng cairo libjpeg librsvg pango gtk bzip2 json_glib
+    libraw libwebp gnome3.gexiv2
   ];
 
-  nativeBuildInputs = [ pkgconfig autoreconfHook ];
+  nativeBuildInputs = [ pkgconfig intltool which autoreconfHook ];
 
   meta = {
     description = "Graph-based image processing framework";
     homepage = http://www.gegl.org;
     license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ jtojnar ];
     platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/glib-networking/default.nix b/pkgs/development/libraries/glib-networking/default.nix
index fd8055fd0b39..87f3c78a82e8 100644
--- a/pkgs/development/libraries/glib-networking/default.nix
+++ b/pkgs/development/libraries/glib-networking/default.nix
@@ -3,14 +3,14 @@
 
 let
   ver_maj = "2.54";
-  ver_min = "0";
+  ver_min = "1";
 in
 stdenv.mkDerivation rec {
   name = "glib-networking-${ver_maj}.${ver_min}";
 
   src = fetchurl {
     url = "mirror://gnome/sources/glib-networking/${ver_maj}/${name}.tar.xz";
-    sha256 = "5961b3779080b72314b373ff5d4790eb7e41b75ca91816ad7a81ef32922f7096";
+    sha256 = "0bq16m9nh3gcz9x2fvygr0iwxd2pxcbrm3lj3kihsnh1afv8g9za";
   };
 
   outputs = [ "out" "dev" ]; # to deal with propagatedBuildInputs
diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix
index 9773ef8b896e..1e59e8f1d65a 100644
--- a/pkgs/development/libraries/gpgme/default.nix
+++ b/pkgs/development/libraries/gpgme/default.nix
@@ -4,21 +4,13 @@
 let inherit (stdenv) lib system; in
 
 stdenv.mkDerivation rec {
-  name = "gpgme-1.9.0";
+  name = "gpgme-1.10.0";
 
   src = fetchurl {
     url = "mirror://gnupg/gpgme/${name}.tar.bz2";
-    sha256 = "1ssc0gs02r4fasabk7c6v6r865k2j02mpb5g1vkpbmzsigdzwa8v";
+    sha256 = "14q619lxbk64vz7lih5gjb928qm28jrnn1h3yhsrrff3jw8yv3qs";
   };
 
-  patches = [
-    (fetchpatch {
-      url = "https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=commitdiff_plain;h=5d4f977dac542340c877fdd4b1304fa8f6e058e6";
-      sha256 = "0swpxzd3x3b6h2ry2py9j8l0xp3vdw8rixxhgfavzia5p869qyyx";
-      name = "qgpgme-format-security.patch";
-    })
-  ];
-
   outputs = [ "out" "dev" "info" ];
   outputBin = "dev"; # gpgme-config; not so sure about gpgme-tool
 
diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index c68c7a50cc48..c033140d8dc3 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -23,7 +23,7 @@ let
 
 in
 stdenv.mkDerivation rec {
-  name = "gst-plugins-bad-1.12.2";
+  name = "gst-plugins-bad-1.12.3";
 
   meta = with stdenv.lib; {
     description = "Gstreamer Bad Plugins";
@@ -39,12 +39,12 @@ stdenv.mkDerivation rec {
   };
 
   patchPhase = ''
-    sed -i 's/openjpeg-2.1/openjpeg-${openJpegVersion}/' ext/openjpeg/*
+    sed -i 's/openjpeg-2.2/openjpeg-${openJpegVersion}/' ext/openjpeg/*
   '';
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz";
-    sha256 = "0dwyq03g2m0p16dwx8q5qvjn5x9ia72h21sf87mp97gmwkfpwb4w";
+    sha256 = "1v5z3i5ha20gmbb3r9dwsaaspv5fm1jfzlzwlzqx1gjj31v5kl1n";
   };
 
   outputs = [ "out" "dev" ];
@@ -70,4 +70,6 @@ stdenv.mkDerivation rec {
     ++ optional (!stdenv.isDarwin) wildmidi;
 
   LDFLAGS = optionalString stdenv.isDarwin "-lintl";
+
+  enableParallelBuilding = true;
 }
diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix
index 2ff429179642..2cd0c14c1f34 100644
--- a/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/pkgs/development/libraries/gstreamer/base/default.nix
@@ -4,7 +4,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-plugins-base-1.12.2";
+  name = "gst-plugins-base-1.12.3";
 
   meta = {
     description = "Base plugins and helper libraries";
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz";
-    sha256 = "0x86a7aph0y6gyq178plvwvbbyhkfb3hf0gadx9sk5z1mzixqrsh";
+    sha256 = "19ffwdch7m777ragmwpy6prqmfb742ym1n3ki40s0zyki627plyk";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix
index fa69d358394c..ee9438d3c29b 100644
--- a/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/pkgs/development/libraries/gstreamer/core/default.nix
@@ -4,7 +4,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gstreamer-1.12.2";
+  name = "gstreamer-1.12.3";
 
   meta = {
     description = "Open source multimedia framework";
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gstreamer/${name}.tar.xz";
-    sha256 = "1fllz7n58lavyy4nh64xc7izd4ffhl12a2ff0yg4z67al8wkzplz";
+    sha256 = "0vi1g8rmmsnd630ds3jwv2iph46ll8y07fzf04mz15q88j9g926k";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/ges/default.nix b/pkgs/development/libraries/gstreamer/ges/default.nix
index e206f317d4ba..c38ab12ec964 100644
--- a/pkgs/development/libraries/gstreamer/ges/default.nix
+++ b/pkgs/development/libraries/gstreamer/ges/default.nix
@@ -3,7 +3,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gstreamer-editing-services-1.12.2";
+  name = "gstreamer-editing-services-1.12.3";
 
   meta = with stdenv.lib; {
     description = "Library for creation of audio/video non-linear editors";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gstreamer-editing-services/${name}.tar.xz";
-    sha256 = "0bi0f487949k9xnl1r6ngysgaibmmswwgdqcrchg0dixnnbm9isr";
+    sha256 = "0xjz8r0wbzc0kwi9q8akv7w71ii1n2y2dmb0q2p5k4h78382ybh3";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix
index 1c7f7951e916..e4e4f3b394db 100644
--- a/pkgs/development/libraries/gstreamer/good/default.nix
+++ b/pkgs/development/libraries/gstreamer/good/default.nix
@@ -11,7 +11,7 @@ let
   inherit (stdenv.lib) optionals optionalString;
 in
 stdenv.mkDerivation rec {
-  name = "gst-plugins-good-1.12.2";
+  name = "gst-plugins-good-1.12.3";
 
   meta = with stdenv.lib; {
     description = "Gstreamer Good Plugins";
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz";
-    sha256 = "15pfw54fsh9s9xwrnbap4z4njwgqdfvq52k562d2hc5b11rfx4am";
+    sha256 = "00sznj1sl97fqpn6j8ngps04clvxp8h8yhw6lvszx4b855wz9rqk";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/libav/default.nix b/pkgs/development/libraries/gstreamer/libav/default.nix
index 7c0a05f8202b..9969c5e604ff 100644
--- a/pkgs/development/libraries/gstreamer/libav/default.nix
+++ b/pkgs/development/libraries/gstreamer/libav/default.nix
@@ -9,7 +9,7 @@
 assert withSystemLibav -> libav != null;
 
 stdenv.mkDerivation rec {
-  name = "gst-libav-1.12.2";
+  name = "gst-libav-1.12.3";
 
   meta = {
     homepage = https://gstreamer.freedesktop.org;
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-libav/${name}.tar.xz";
-    sha256 = "1crdahkjm23byg1awcrjkmgfbalfpvvac7h7whm6b2r1pfwkbdsv";
+    sha256 = "0l4nc6ikdx49l7bdrk3bd9p3pzry8a328r22zg48gyzpnv5ghph1";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix
index 610f10075a8d..3aa8eb886d79 100644
--- a/pkgs/development/libraries/gstreamer/ugly/default.nix
+++ b/pkgs/development/libraries/gstreamer/ugly/default.nix
@@ -5,7 +5,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-plugins-ugly-1.12.2";
+  name = "gst-plugins-ugly-1.12.3";
 
   meta = with stdenv.lib; {
     description = "Gstreamer Ugly Plugins";
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz";
-    sha256 = "0rplyp1qk359c97ig9i2vc1v34g92khd8dslwfipva1ypwmr9hqw";
+    sha256 = "0lh00rg26iy5lr5al23lxsyncjqkgzph1bzkrgp8x9sfr62ab378";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/vaapi/default.nix b/pkgs/development/libraries/gstreamer/vaapi/default.nix
index becd4cf0d921..2ccf3b2f6f6c 100644
--- a/pkgs/development/libraries/gstreamer/vaapi/default.nix
+++ b/pkgs/development/libraries/gstreamer/vaapi/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "gst-vaapi-${version}";
-  version = "1.12.2";
+  version = "1.12.3";
 
   src = fetchurl {
     url = "${meta.homepage}/src/gstreamer-vaapi/gstreamer-vaapi-${version}.tar.xz";
-    sha256 = "0fhncs27hcdcnb9a4prkxlyvr883hnzsx148zzk7lg2b8zh19ir3";
+    sha256 = "0kbl2c4zv004qwhm9mc0jlhz2pc3dqrng2vwj68a81lnzpcazkgl";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gstreamer/validate/default.nix b/pkgs/development/libraries/gstreamer/validate/default.nix
index 9704ca1d743c..47eeb3d32843 100644
--- a/pkgs/development/libraries/gstreamer/validate/default.nix
+++ b/pkgs/development/libraries/gstreamer/validate/default.nix
@@ -3,7 +3,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-validate-1.12.2";
+  name = "gst-validate-1.12.3";
 
   meta = {
     description = "Integration testing infrastructure for the GStreamer framework";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-validate/${name}.tar.xz";
-    sha256 = "1pgycs35bwmp4aicyxwyzlfy1i5l2rzmh2a8ivhgy21azp8jaykb";
+    sha256 = "17j812pkzgbyn9ys3b305yl5mrf9nbm8whwj4iqdskr742fr8fai";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/hwloc/default.nix b/pkgs/development/libraries/hwloc/default.nix
index e1acacc328cc..4d6af866990b 100644
--- a/pkgs/development/libraries/hwloc/default.nix
+++ b/pkgs/development/libraries/hwloc/default.nix
@@ -1,16 +1,24 @@
-{ stdenv, fetchurl, pkgconfig, cairo, expat, ncurses, libX11
-, pciutils, numactl }:
+{ stdenv, fetchurl, pkgconfig, expat, ncurses, pciutils, numactl
+, cairo, libX11
+, x11Support ? (!stdenv.isCygwin)
+}:
 
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "hwloc-1.11.6";
+  name = "hwloc-1.11.8";
 
   src = fetchurl {
     url = "http://www.open-mpi.org/software/hwloc/v1.11/downloads/${name}.tar.bz2";
-    sha256 = "1yl7dm2qplwmnidd712zy12qfvxk28k8ccs694n42ybwdjwzg1bn";
+    sha256 = "0karxv4r1r8sa7ki5aamlxdvyvz0bvzq4gdhq0yi5nc4a0k11vzc";
   };
 
+  hardeningDisable = [ "format" ];
+
+  configureFlags = [
+    "--localstatedir=/var"
+  ];
+
   # XXX: libX11 is not directly needed, but needed as a propagated dep of Cairo.
   nativeBuildInputs = [ pkgconfig ];
 
@@ -18,7 +26,7 @@ stdenv.mkDerivation rec {
   # derivation and set optional dependencies to `null'.
   buildInputs = stdenv.lib.filter (x: x != null)
    ([ expat ncurses ]
-     ++  (optionals (!stdenv.isCygwin) [ cairo libX11 ])
+     ++  (optionals x11Support [ cairo libX11 ])
      ++  (optionals stdenv.isLinux [ numactl ]));
 
   propagatedBuildInputs =
@@ -37,7 +45,7 @@ stdenv.mkDerivation rec {
              test -d "$numalibdir"
          fi
 
-         sed -i "$out/lib/libhwloc.la" \
+         sed -i "$lib/lib/libhwloc.la" \
              -e "s|-lnuma|-L$numalibdir -lnuma|g"
       '';
 
@@ -45,6 +53,8 @@ stdenv.mkDerivation rec {
   # fail on some build machines.
   doCheck = false;
 
+  outputs = [ "out" "lib" "dev" "doc" "man" ];
+
   meta = {
     description = "Portable abstraction of hierarchical architectures for high-performance computing";
     longDescription = ''
diff --git a/pkgs/development/libraries/java/saxon/default.nix b/pkgs/development/libraries/java/saxon/default.nix
index fcd884f0a419..ca9aa8fc36e8 100644
--- a/pkgs/development/libraries/java/saxon/default.nix
+++ b/pkgs/development/libraries/java/saxon/default.nix
@@ -1,22 +1,83 @@
-{ stdenv, fetchurl, unzip }:
-
-stdenv.mkDerivation {
-  name = "saxon-6.5.3";
-  builder = ./unzip-builder.sh;
-  src = fetchurl {
-    url = mirror://sourceforge/saxon/saxon6_5_3.zip;
-    sha256 = "0l5y3y2z4wqgh80f26dwwxwncs8v3nkz3nidv14z024lmk730vs3";
+{ stdenv, fetchurl, unzip, jre }:
+
+let
+  common = { pname, version, src, description
+           , prog ? null, jar ? null, license ? stdenv.lib.licenses.mpl20 }:
+    stdenv.mkDerivation {
+      name = "${pname}-${version}";
+      inherit pname version src;
+
+      nativeBuildInputs = [ unzip ];
+
+      buildCommand = let
+        prog' = if prog == null then pname else prog;
+        jar' = if jar == null then pname else jar;
+      in ''
+        unzip $src -d $out
+        mkdir -p $out/bin $out/share $out/share/java
+        cp -s "$out"/*.jar "$out/share/java/"  # */
+        rm -rf $out/notices
+        mv $out/doc $out/share
+        cat > $out/bin/${prog'} <<EOF
+        #! $shell
+        export JAVA_HOME=${jre}
+        exec ${jre}/bin/java -jar $out/${jar'}.jar "\$@"
+        EOF
+        chmod a+x $out/bin/${prog'}
+      '';
+
+      meta = with stdenv.lib; {
+        inherit description license;
+        homepage = http://saxon.sourceforge.net/;
+        maintainers = with maintainers; [ rvl ];
+        platforms = platforms.all;
+      };
+    };
+
+in {
+  saxon = common {
+    pname = "saxon";
+    version = "6.5.3";
+    src = fetchurl {
+      url = mirror://sourceforge/saxon/saxon6_5_3.zip;
+      sha256 = "0l5y3y2z4wqgh80f26dwwxwncs8v3nkz3nidv14z024lmk730vs3";
+    };
+    description = "XSLT 1.0 processor";
+    # http://saxon.sourceforge.net/saxon6.5.3/conditions.html
+    license = stdenv.lib.licenses.mpl10;
   };
 
-  nativeBuildInputs = [ unzip ];
+  saxonb_8_8 = common {
+    pname = "saxonb";
+    version = "8.8";
+    jar = "saxon8";
+    src = fetchurl {
+      url = mirror://sourceforge/saxon/saxonb8-8j.zip;
+      sha256 = "15bzrfyd2f1045rsp9dp4znyhmizh1pm97q8ji2bc0b43q23xsb8";
+    };
+    description = "Complete and conformant processor of XSLT 2.0, XQuery 1.0, and XPath 2.0";
+  };
 
-  # still leaving in root as well, in case someone is relying on that
-  preFixup = ''
-    mkdir -p "$out/share/java"
-    cp -s "$out"/*.jar "$out/share/java/"
-  '';
+  saxonb_9_1 = common {
+    pname = "saxonb";
+    version = "9.1.0.8";
+    jar = "saxon9";
+    src = fetchurl {
+      url = mirror://sourceforge/saxon/Saxon-B/9.1.0.8/saxonb9-1-0-8j.zip;
+      sha256 = "1d39jdnwr3v3pzswm81zry6yikqlqy9dp2l2wmpqdiw00r5drg4j";
+    };
+    description = "Complete and conformant processor of XSLT 2.0, XQuery 1.0, and XPath 2.0";
+  };
 
-  meta = {
-    platforms = stdenv.lib.platforms.unix;
+  saxon-he = common {
+    pname = "saxon-he";
+    version = "9.8.0.6";
+    prog = "saxon-he";
+    jar = "saxon9he";
+    src = fetchurl {
+      url = mirror://sourceforge/saxon/Saxon-HE/9.8/SaxonHE9-8-0-6J.zip;
+      sha256 = "03r4djm298rxz8q7jph63h9niglrl3rifxskq1b3bclx5rgxi2lk";
+    };
+    description = "Processor for XSLT 3.0, XPath 2.0 and 3.1, and XQuery 3.1";
   };
 }
diff --git a/pkgs/development/libraries/java/saxon/default8.nix b/pkgs/development/libraries/java/saxon/default8.nix
deleted file mode 100644
index 7728737977c2..000000000000
--- a/pkgs/development/libraries/java/saxon/default8.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{stdenv, fetchurl, unzip, jre}:
-
-stdenv.mkDerivation {
-  name = "saxonb-8.8";
-  src = fetchurl {
-    url = mirror://sourceforge/saxon/saxonb8-8j.zip;
-    sha256 = "15bzrfyd2f1045rsp9dp4znyhmizh1pm97q8ji2bc0b43q23xsb8";
-  };
-
-  buildInputs = [unzip];
-
-  buildCommand = "
-    unzip $src -d $out
-    mkdir -p $out/bin
-    cat > $out/bin/saxon8 <<EOF
-#! $shell
-export JAVA_HOME=${jre}
-exec ${jre}/bin/java -jar $out/saxon8.jar \"\\$@\"
-EOF
-    chmod a+x $out/bin/saxon8
-  ";
-
-  meta = {
-    platforms = stdenv.lib.platforms.unix;
-  };
-}
diff --git a/pkgs/development/libraries/java/saxon/unzip-builder.sh b/pkgs/development/libraries/java/saxon/unzip-builder.sh
deleted file mode 100755
index 8ac35568f0b9..000000000000
--- a/pkgs/development/libraries/java/saxon/unzip-builder.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-source $stdenv/setup
-
-unzip $src -d $out
-
-fixupPhase
-
diff --git a/pkgs/development/libraries/kde-frameworks/fetch.sh b/pkgs/development/libraries/kde-frameworks/fetch.sh
index 6453252b1612..b9f6d0925715 100644
--- a/pkgs/development/libraries/kde-frameworks/fetch.sh
+++ b/pkgs/development/libraries/kde-frameworks/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/frameworks/5.40/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/frameworks/5.41/ -A '*.tar.xz' )
diff --git a/pkgs/development/libraries/kde-frameworks/srcs.nix b/pkgs/development/libraries/kde-frameworks/srcs.nix
index f87d632af0c6..d99c723082f1 100644
--- a/pkgs/development/libraries/kde-frameworks/srcs.nix
+++ b/pkgs/development/libraries/kde-frameworks/srcs.nix
@@ -3,611 +3,611 @@
 
 {
   attica = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/attica-5.40.0.tar.xz";
-      sha256 = "1ng76yhljl1ny0wvb7yckiivwqn3llmhk0h4j82zag5965q906iz";
-      name = "attica-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/attica-5.41.0.tar.xz";
+      sha256 = "1l97qhf053z7grl8d77p9zajdvaw3zicllwna9p2vyzbb6n6qyq7";
+      name = "attica-5.41.0.tar.xz";
     };
   };
   baloo = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/baloo-5.40.0.tar.xz";
-      sha256 = "09hqw8xl34galpiv6rwnq2rrbdp6z9nkx9j71jf87ia22sclz55a";
-      name = "baloo-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/baloo-5.41.0.tar.xz";
+      sha256 = "1kl4xs09r21bi11b5dzjkmc8igh5iv8nvq0gxd00n7qjghpxa399";
+      name = "baloo-5.41.0.tar.xz";
     };
   };
   bluez-qt = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/bluez-qt-5.40.0.tar.xz";
-      sha256 = "0js212bi7h09bcbd2lr7ic10fy3z09w3v0d0r5210p989qd42a5a";
-      name = "bluez-qt-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/bluez-qt-5.41.0.tar.xz";
+      sha256 = "08wlsmr12n3whqr65zm3l9hmzbaca2jkkhb1wwq5ilqm3gvxxz0n";
+      name = "bluez-qt-5.41.0.tar.xz";
     };
   };
   breeze-icons = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/breeze-icons-5.40.0.tar.xz";
-      sha256 = "1gdpv6w9a6bhr0dgaldi9pj24a2qvz1ax4jya8i4ck7dl9cgkq96";
-      name = "breeze-icons-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/breeze-icons-5.41.0.tar.xz";
+      sha256 = "1k06ms48cnnwnlrh9wdabsms581jy70nz5narwg1zpzb6clf9p4w";
+      name = "breeze-icons-5.41.0.tar.xz";
     };
   };
   extra-cmake-modules = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/extra-cmake-modules-5.40.0.tar.xz";
-      sha256 = "02k3dr4w12l9rdgl3l1v3d8zhaf51km4w3p1c3sy8x24r24qir43";
-      name = "extra-cmake-modules-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/extra-cmake-modules-5.41.0.tar.xz";
+      sha256 = "0rwz2rdyxr424z0mra29p8i6gf0b1402ifi94qrq7y4z1fa61bxs";
+      name = "extra-cmake-modules-5.41.0.tar.xz";
     };
   };
   frameworkintegration = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/frameworkintegration-5.40.0.tar.xz";
-      sha256 = "1r480hx18irycaygbxbxsgf1qrk6cdj0ccfi4rqcygxkv52gcxxj";
-      name = "frameworkintegration-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/frameworkintegration-5.41.0.tar.xz";
+      sha256 = "1k67hkzc2jw5im7vc8j64fqsxz5m8fnlq696hm5dh4fbclyckh5s";
+      name = "frameworkintegration-5.41.0.tar.xz";
     };
   };
   kactivities = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kactivities-5.40.0.tar.xz";
-      sha256 = "0c6dgmzs6l33kr4a7aivs8ijf6yw616pz5gmh7sdjw2ny4gxdzab";
-      name = "kactivities-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kactivities-5.41.0.tar.xz";
+      sha256 = "1zxwmizq48kk6pd9y350gzszqi87wjbqni8z4mxa1kmw9lq01xlc";
+      name = "kactivities-5.41.0.tar.xz";
     };
   };
   kactivities-stats = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kactivities-stats-5.40.0.tar.xz";
-      sha256 = "0cdnq2nh3p7baxcag0f1sid5mrmmidfpsd77bb9s0xj11jvs95bx";
-      name = "kactivities-stats-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kactivities-stats-5.41.0.tar.xz";
+      sha256 = "1nm34ln222x6mm4zpmvn8prqk9fr3jxyppn18kwlv0nfw16qmppq";
+      name = "kactivities-stats-5.41.0.tar.xz";
     };
   };
   kapidox = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kapidox-5.40.0.tar.xz";
-      sha256 = "1wvnbmxjxmrm0z1digbfbf5ssf6klzdmzf5lbw7ilf5mkah1bdpy";
-      name = "kapidox-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kapidox-5.41.0.tar.xz";
+      sha256 = "0jdphs536ymaj5f9gh5ycfgq1d41sas6bx4dzzjg13y26w6afyy6";
+      name = "kapidox-5.41.0.tar.xz";
     };
   };
   karchive = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/karchive-5.40.0.tar.xz";
-      sha256 = "1cbvv6rdrnag2vjbrzdg59csmqi247d594xan7r319qb76ai860y";
-      name = "karchive-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/karchive-5.41.0.tar.xz";
+      sha256 = "0hd7jy9517m53ijvprl9ci97kjx7nd42ga33af71kqx5x030zi23";
+      name = "karchive-5.41.0.tar.xz";
     };
   };
   kauth = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kauth-5.40.0.tar.xz";
-      sha256 = "072wjhvscyyh2q61knxm8ipqr9r01dzhqd8dihp6c5zmbbpz29ss";
-      name = "kauth-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kauth-5.41.0.tar.xz";
+      sha256 = "1hkaf83p3xwcwkhlfbrdbg7b7nhw0gh0yw4lv8y3vpryn7pcd32l";
+      name = "kauth-5.41.0.tar.xz";
     };
   };
   kbookmarks = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kbookmarks-5.40.0.tar.xz";
-      sha256 = "1i28pic968llggh24hn84kiq9nhdcv3pn4hbhb0lqb4chrmm322i";
-      name = "kbookmarks-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kbookmarks-5.41.0.tar.xz";
+      sha256 = "173rf85msrp1awmf2zsxwv6jjfkz7yc2pbh4jq0hfcgnqk46s9v0";
+      name = "kbookmarks-5.41.0.tar.xz";
     };
   };
   kcmutils = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kcmutils-5.40.0.tar.xz";
-      sha256 = "1pjvjidv9nx8kg5wvkmxanp9y6ins9f43cn933q6g9gczy2hfcbl";
-      name = "kcmutils-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kcmutils-5.41.0.tar.xz";
+      sha256 = "165b5hk0cv769kk9dqqggc6ji6gzln8zns5k6rv12rz825aysnhs";
+      name = "kcmutils-5.41.0.tar.xz";
     };
   };
   kcodecs = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kcodecs-5.40.0.tar.xz";
-      sha256 = "0zq9d5006zhp0v31ydc7q0i117l6f8b04l5jgqcl719q1a2hk1x4";
-      name = "kcodecs-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kcodecs-5.41.0.tar.xz";
+      sha256 = "0y96mbp9j083kwkqxk0qgrjyhylp8f7f0ngcqcvhh8s6sgpb8xq9";
+      name = "kcodecs-5.41.0.tar.xz";
     };
   };
   kcompletion = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kcompletion-5.40.0.tar.xz";
-      sha256 = "17dzal655xdxdsifk2dmgyj2hja03pcvdqvzpsyq259qbm42cal4";
-      name = "kcompletion-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kcompletion-5.41.0.tar.xz";
+      sha256 = "0b6bh5l4s5q8yi6vls11c8b8dpscykh138kydfi925nxkrms7yv3";
+      name = "kcompletion-5.41.0.tar.xz";
     };
   };
   kconfig = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kconfig-5.40.0.tar.xz";
-      sha256 = "0pr9ammqgbz3gkg6iczp3v9s36cfzzh40kbz2bz29qaxa966b5kb";
-      name = "kconfig-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kconfig-5.41.0.tar.xz";
+      sha256 = "1jch9bpqshigwvc2qs46qa0mclr1hdn0sqlkxbl4b2xb5xj28nzn";
+      name = "kconfig-5.41.0.tar.xz";
     };
   };
   kconfigwidgets = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kconfigwidgets-5.40.0.tar.xz";
-      sha256 = "0g5xm3fm3d6a63hbdq1xxiv539z15bhrs36ariq93flc4f912pbz";
-      name = "kconfigwidgets-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kconfigwidgets-5.41.0.tar.xz";
+      sha256 = "1lbpjkhxmpah32ig1wlxkr1v1l3fqicnnvj6lhwpk0bxys8cdnd2";
+      name = "kconfigwidgets-5.41.0.tar.xz";
     };
   };
   kcoreaddons = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kcoreaddons-5.40.0.tar.xz";
-      sha256 = "0n4gvfayaiahvavrx1y3ass6anz30965zm81iczi2749hva9s415";
-      name = "kcoreaddons-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kcoreaddons-5.41.0.tar.xz";
+      sha256 = "1f45x4adql708903x4g27x1wbzvbwd809ibiqa5kiijayaqkjxqf";
+      name = "kcoreaddons-5.41.0.tar.xz";
     };
   };
   kcrash = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kcrash-5.40.0.tar.xz";
-      sha256 = "01h41zz3x0m5hc3zm2v0mifzc42akp5bwxwjzaaryl8pcg8v5lln";
-      name = "kcrash-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kcrash-5.41.0.tar.xz";
+      sha256 = "1jp06hz33mpcy2y93w4j3yqcvkphigiwq6j89mvgi9h21pahpjvy";
+      name = "kcrash-5.41.0.tar.xz";
     };
   };
   kdbusaddons = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kdbusaddons-5.40.0.tar.xz";
-      sha256 = "09zbdy8lzhq6lvd9j9667r90k6p6a882bxans6am1yxx4y0jd9i4";
-      name = "kdbusaddons-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kdbusaddons-5.41.0.tar.xz";
+      sha256 = "02d6zv43vpz5h8si100zlsf5yfgjajsgwldcxblckyjr0qn42xny";
+      name = "kdbusaddons-5.41.0.tar.xz";
     };
   };
   kdeclarative = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kdeclarative-5.40.0.tar.xz";
-      sha256 = "10yp7g9awv4mdf5zl6ljxplfy50jzmixp45vdqcmcixiq72440d6";
-      name = "kdeclarative-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kdeclarative-5.41.0.tar.xz";
+      sha256 = "1hxfrz4d7xjm63b9kawhf382gz1xykvdi9q4syhkjfbpyacxfjga";
+      name = "kdeclarative-5.41.0.tar.xz";
     };
   };
   kded = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kded-5.40.0.tar.xz";
-      sha256 = "0jf4xahsz86hiv50vs9yhwd2g410d5wjds8mdm5hi8085f7dcf84";
-      name = "kded-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kded-5.41.0.tar.xz";
+      sha256 = "10wmj3nb8vn90h1j0s5kfr8iydk7k853gg9v6hxivm92v6zr6l9g";
+      name = "kded-5.41.0.tar.xz";
     };
   };
   kdelibs4support = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/portingAids/kdelibs4support-5.40.0.tar.xz";
-      sha256 = "1pwmi490hwnijpwjm80zdvbwanlslhnfh8nrlxmiham7ls551mzr";
-      name = "kdelibs4support-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/portingAids/kdelibs4support-5.41.0.tar.xz";
+      sha256 = "1mkp3w8h8cyskbfxcwsl72v87376x66n20ig7b3b6ply36578br4";
+      name = "kdelibs4support-5.41.0.tar.xz";
     };
   };
   kdesignerplugin = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kdesignerplugin-5.40.0.tar.xz";
-      sha256 = "00wl4d001ix0ql2hzp818cvhyyr52g06b7zz92qhcyi4x1cf2mqd";
-      name = "kdesignerplugin-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kdesignerplugin-5.41.0.tar.xz";
+      sha256 = "1c1pnjgp9nifynwvsyjp7c45j40i111xnmjp89bb1jk9fv9g2f99";
+      name = "kdesignerplugin-5.41.0.tar.xz";
     };
   };
   kdesu = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kdesu-5.40.0.tar.xz";
-      sha256 = "13dv54c9cw6a2zcn7arrqnda08r3rw2q3nqagrrn013xd3dlrac7";
-      name = "kdesu-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kdesu-5.41.0.tar.xz";
+      sha256 = "126m7by50zzkmk0r778xlkqfbfpihwd6d3wzd4hbqkh9km18l1rb";
+      name = "kdesu-5.41.0.tar.xz";
     };
   };
   kdewebkit = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kdewebkit-5.40.0.tar.xz";
-      sha256 = "1n7cn3yg8ianfk9ymd7hgf1yr2qcck5pg2mcp2bam0zfk4clbcgf";
-      name = "kdewebkit-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kdewebkit-5.41.0.tar.xz";
+      sha256 = "1rnixlm37x5k4cdwckml2zdmm30k938nklkd7qnbaal230dzvj6d";
+      name = "kdewebkit-5.41.0.tar.xz";
     };
   };
   kdnssd = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kdnssd-5.40.0.tar.xz";
-      sha256 = "10la98wshran4my7s50w85ifvdibvbw3mb4007x8znz92x1ikdfj";
-      name = "kdnssd-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kdnssd-5.41.0.tar.xz";
+      sha256 = "042dmh50rxvipb5pqz0csb3y7cvzc2ga2a5qcvd1vw84ii1mmjbh";
+      name = "kdnssd-5.41.0.tar.xz";
     };
   };
   kdoctools = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kdoctools-5.40.0.tar.xz";
-      sha256 = "1zzgnqkysdvqc7dkb37gcmxfhwik0bkmd23c4y2av00ra6nzymim";
-      name = "kdoctools-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kdoctools-5.41.0.tar.xz";
+      sha256 = "06v63br6m5nhvsdsynhb7i825yrry94s7zrk20k0xw4yahpvkjcs";
+      name = "kdoctools-5.41.0.tar.xz";
     };
   };
   kemoticons = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kemoticons-5.40.0.tar.xz";
-      sha256 = "1jqifvqbj441jif79j5jqrpksyajarill01v625l30kvd584042c";
-      name = "kemoticons-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kemoticons-5.41.0.tar.xz";
+      sha256 = "1lj6c6k8dh2rgj1128ms2xv7dk1v9li5rcy2djqfynqdrvg5iy3g";
+      name = "kemoticons-5.41.0.tar.xz";
     };
   };
   kfilemetadata = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kfilemetadata-5.40.0.tar.xz";
-      sha256 = "1yivydc32y4q6kd1myv529lhcs66j0y388g7qv4zjz4plv6kyxvb";
-      name = "kfilemetadata-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kfilemetadata-5.41.0.tar.xz";
+      sha256 = "0y9ya18bqa8sfi2c10y2q0dkwdry0wfq5s2sb53q0fh2fph7hjvi";
+      name = "kfilemetadata-5.41.0.tar.xz";
     };
   };
   kglobalaccel = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kglobalaccel-5.40.0.tar.xz";
-      sha256 = "1qslksbln3yhhzal88b04zyi4iibffv687gbsm07i4f68pyp0sgn";
-      name = "kglobalaccel-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kglobalaccel-5.41.0.tar.xz";
+      sha256 = "0i8aw0jbsh26asjmhs0lax1yv9qalpr82cd8m0nbyqn2s3f4jyaf";
+      name = "kglobalaccel-5.41.0.tar.xz";
     };
   };
   kguiaddons = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kguiaddons-5.40.0.tar.xz";
-      sha256 = "02hln4pafph1zny4jnmblydc4wnx66pjj4g6dqxafz6hpvdmncp1";
-      name = "kguiaddons-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kguiaddons-5.41.0.tar.xz";
+      sha256 = "0cva0qy946srqay9nmh97mjv7kf2lr51nipx9qx2jd21d8cvz8p1";
+      name = "kguiaddons-5.41.0.tar.xz";
     };
   };
   khtml = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/portingAids/khtml-5.40.0.tar.xz";
-      sha256 = "0v73ia4dgpx5d7h3lpl54cy7p3qavgahj5h2x5vah7fb2gysy7z0";
-      name = "khtml-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/portingAids/khtml-5.41.0.tar.xz";
+      sha256 = "0gbs63d7izb8kaf4k8ssp2lkcps9fqk32czjpmzx3fq1gnaczry3";
+      name = "khtml-5.41.0.tar.xz";
     };
   };
   ki18n = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/ki18n-5.40.0.tar.xz";
-      sha256 = "1nv89yi0f2wnb3lc929zfl6bjwznm2q3p449rp3yzp43lx00sym9";
-      name = "ki18n-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/ki18n-5.41.0.tar.xz";
+      sha256 = "12ylqsi7lsxvdcg9a1p9hkd6lpcj971k77zly6vpb4yb3s6z0jqd";
+      name = "ki18n-5.41.0.tar.xz";
     };
   };
   kiconthemes = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kiconthemes-5.40.0.tar.xz";
-      sha256 = "0i6yjx5fvpbh4hd15wbm69v2qqgxbyfhn1cqp7w7ghgb262b90vx";
-      name = "kiconthemes-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kiconthemes-5.41.0.tar.xz";
+      sha256 = "1ywg7b3vy3p7vmd055a72hmpnwp0l0yvf6cnb6nvmpnp3pm737g1";
+      name = "kiconthemes-5.41.0.tar.xz";
     };
   };
   kidletime = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kidletime-5.40.0.tar.xz";
-      sha256 = "0q6s73vpasfvzxis5br01k2xl8hnxymq8i1k8l60i8b1v46abr99";
-      name = "kidletime-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kidletime-5.41.0.tar.xz";
+      sha256 = "0k4q8ssqfbgfqvjq1rpills16nz4fi92mc754644by3s0czh409w";
+      name = "kidletime-5.41.0.tar.xz";
     };
   };
   kimageformats = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kimageformats-5.40.0.tar.xz";
-      sha256 = "1ld47qkb26gzwvr6bmqa16p4rwf3avi4fm15rpmmxjlbc9pm9n51";
-      name = "kimageformats-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kimageformats-5.41.0.tar.xz";
+      sha256 = "11df264s3n192pggdmql2pklnflc8fn9v8zrjpn38f99hs46bq8s";
+      name = "kimageformats-5.41.0.tar.xz";
     };
   };
   kinit = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kinit-5.40.0.tar.xz";
-      sha256 = "1296dr1iln5g55j75fb1l5b8c1lj32lsccb82qvpaf57h22fp5ya";
-      name = "kinit-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kinit-5.41.0.tar.xz";
+      sha256 = "05jqsnj33gwxp4lc81378kb58idnmcmn84smy3hkqwlakisnwgy9";
+      name = "kinit-5.41.0.tar.xz";
     };
   };
   kio = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kio-5.40.0.tar.xz";
-      sha256 = "16rqmh0mdncyyq2vidfpyml94n7vmz7rx71v53salpwr3cihpsih";
-      name = "kio-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kio-5.41.0.tar.xz";
+      sha256 = "17k4pfbhkv1inx5c3wqm388c02cdf3wnqgnhky271v7gb5ww5i4h";
+      name = "kio-5.41.0.tar.xz";
     };
   };
   kirigami2 = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kirigami2-5.40.0.tar.xz";
-      sha256 = "0a22cwxfrkp0hd5isisaz9bnx2sjixi2cm9l35yvbzdnlmm6qjrb";
-      name = "kirigami2-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kirigami2-5.41.0.tar.xz";
+      sha256 = "04l7b86fs7s80dfrznc2c0zh6phpgirwsinykrzfqg792gmbvx2h";
+      name = "kirigami2-5.41.0.tar.xz";
     };
   };
   kitemmodels = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kitemmodels-5.40.0.tar.xz";
-      sha256 = "0ij5q0g0cq793znslb7sz6qcrmcdlcx706an8ciznidlwayh9fx9";
-      name = "kitemmodels-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kitemmodels-5.41.0.tar.xz";
+      sha256 = "13kngcj8ifnhbp0jsrjwhw49my8pnw493g11y11cw17hw7sqg55k";
+      name = "kitemmodels-5.41.0.tar.xz";
     };
   };
   kitemviews = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kitemviews-5.40.0.tar.xz";
-      sha256 = "0347nx4n5sr0dz2zjzdp7s1ca5gnmcr9d881raj50knsgcwgb3m3";
-      name = "kitemviews-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kitemviews-5.41.0.tar.xz";
+      sha256 = "0147pm5p03w1b71mrr5rssmh2n80q54ghfpbjpq3spjdkjg1f26f";
+      name = "kitemviews-5.41.0.tar.xz";
     };
   };
   kjobwidgets = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kjobwidgets-5.40.0.tar.xz";
-      sha256 = "0m2bfa397mzifgxvpw8hpks95yx5krak0285qk14innr21n62qnk";
-      name = "kjobwidgets-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kjobwidgets-5.41.0.tar.xz";
+      sha256 = "1fbdk6l8rbnyqn0cz2dm9cagn7x89zpy3wczj1cdvnc7k7wg75qv";
+      name = "kjobwidgets-5.41.0.tar.xz";
     };
   };
   kjs = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/portingAids/kjs-5.40.0.tar.xz";
-      sha256 = "0nkddm9zjjnsmky71112n8ik6f0am52dmhlarcym2i08zy05chdm";
-      name = "kjs-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/portingAids/kjs-5.41.0.tar.xz";
+      sha256 = "1a263cng8i304yh66iq45hwpgnl8ng6wvjrsl11hhqmyv07h2kk0";
+      name = "kjs-5.41.0.tar.xz";
     };
   };
   kjsembed = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/portingAids/kjsembed-5.40.0.tar.xz";
-      sha256 = "0fc3454almq5llhwmkhrwpcl2m1nfjyyhvpnmm879yhrbjf7vnid";
-      name = "kjsembed-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/portingAids/kjsembed-5.41.0.tar.xz";
+      sha256 = "1vxbh5rd9rdj3m7sag48c4cns443j479mlfbwxgnpm92z67ka7x7";
+      name = "kjsembed-5.41.0.tar.xz";
     };
   };
   kmediaplayer = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/portingAids/kmediaplayer-5.40.0.tar.xz";
-      sha256 = "13pykc6zvcv6p0k6m9cqf1fx93jb39ilgn1zlvkws7s1jq4ifkpl";
-      name = "kmediaplayer-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/portingAids/kmediaplayer-5.41.0.tar.xz";
+      sha256 = "03420i82p984w6iqdiam2xam7b9khh76pll4ffn0c5k4wf1ba2z4";
+      name = "kmediaplayer-5.41.0.tar.xz";
     };
   };
   knewstuff = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/knewstuff-5.40.0.tar.xz";
-      sha256 = "0i4ybzx165js2pl85k8si1waywn4yp47gj16szdx7snlrzvhmq3i";
-      name = "knewstuff-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/knewstuff-5.41.0.tar.xz";
+      sha256 = "0j9qgswiacv7yj8c28q343falaglh5zc4wwcflwy1zvrp59bjcz4";
+      name = "knewstuff-5.41.0.tar.xz";
     };
   };
   knotifications = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/knotifications-5.40.0.tar.xz";
-      sha256 = "013r52a6wl9ayp42mvzrq7s8r5mx73bk1j56zxk3yz45xv6gsm0v";
-      name = "knotifications-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/knotifications-5.41.0.tar.xz";
+      sha256 = "1dsiigmzmhmg3x6y5nf2i9zq3hc4nca2gg2dvl0bz1lm438ddy84";
+      name = "knotifications-5.41.0.tar.xz";
     };
   };
   knotifyconfig = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/knotifyconfig-5.40.0.tar.xz";
-      sha256 = "1c89k1qnbqyq7d9dsccd9645cq7n6vfyn10sh9f7zraqybi75k3k";
-      name = "knotifyconfig-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/knotifyconfig-5.41.0.tar.xz";
+      sha256 = "0hrdjh76php34wkcswnh5rfnkajf0g9n8mpqsdj4djxja39vi6vs";
+      name = "knotifyconfig-5.41.0.tar.xz";
     };
   };
   kpackage = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kpackage-5.40.0.tar.xz";
-      sha256 = "17hhj8x5r3cpb6cx32f1chg6mklxvcwgmw16c3h2sh4p6bgmibmq";
-      name = "kpackage-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kpackage-5.41.0.tar.xz";
+      sha256 = "1663sshy52my9qbrj8ny1a6sipl94l2paxss4k5977fyyax15zdm";
+      name = "kpackage-5.41.0.tar.xz";
     };
   };
   kparts = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kparts-5.40.0.tar.xz";
-      sha256 = "1vvmgsqwgics6q86c413wx2yk9mgwvj4wm3fk6my0pi3l166djrl";
-      name = "kparts-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kparts-5.41.0.tar.xz";
+      sha256 = "09ddh7n8jj8zisdm90lbmc4xk4axsibhx1cjbpaigzcfcvnj1b71";
+      name = "kparts-5.41.0.tar.xz";
     };
   };
   kpeople = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kpeople-5.40.0.tar.xz";
-      sha256 = "1yfs0k3pwcgkzyf0x568jmmjb5gb757c7qdwmz7g0s3gdnhm1mbr";
-      name = "kpeople-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kpeople-5.41.0.tar.xz";
+      sha256 = "1k72br66mnvkripzdq2wcchlrg6p7mxfqa0rbq0rq3q7npw1zzw5";
+      name = "kpeople-5.41.0.tar.xz";
     };
   };
   kplotting = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kplotting-5.40.0.tar.xz";
-      sha256 = "1hnnvxvz74s7ir5bgqrvd0iv6fl7d18rqi6yjxy5j8b0f8bgrp7i";
-      name = "kplotting-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kplotting-5.41.0.tar.xz";
+      sha256 = "197n2m3q9b588j56m30i12z55nbymbj4wgpgrkbsci7162jjjj1z";
+      name = "kplotting-5.41.0.tar.xz";
     };
   };
   kpty = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kpty-5.40.0.tar.xz";
-      sha256 = "1r5lddjhr6g3gzwfmcs7mkc585mz4j6ngnn2m5mlgz2cf8bgf277";
-      name = "kpty-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kpty-5.41.0.tar.xz";
+      sha256 = "04xg5pn65nvk1bdh6bfznbsmlra6gzph72i7m28h9idnz143lr12";
+      name = "kpty-5.41.0.tar.xz";
     };
   };
   kross = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/portingAids/kross-5.40.0.tar.xz";
-      sha256 = "1y89sksha028rxdf534kc3ljnccm2zy111lfnb36vq22wzi7198p";
-      name = "kross-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/portingAids/kross-5.41.0.tar.xz";
+      sha256 = "0xsfgwb3ihgby6r6wycxnqkd9d7zrj6w3h9bxw8n4asjfri7lgwi";
+      name = "kross-5.41.0.tar.xz";
     };
   };
   krunner = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/krunner-5.40.0.tar.xz";
-      sha256 = "19g02k7g2i92fv68gssyqrc1gwlhh924glmzhswp52rkwz4rqf2c";
-      name = "krunner-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/krunner-5.41.0.tar.xz";
+      sha256 = "0vyxijs0vnpa19z7avd1438q1c7s4ka17hbsdq2r0jza3iwkfx83";
+      name = "krunner-5.41.0.tar.xz";
     };
   };
   kservice = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kservice-5.40.0.tar.xz";
-      sha256 = "0dpd7zpw6x4iqb27a13aazbk9rgbngrdkxz76pq4x32ynzrzzhzc";
-      name = "kservice-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kservice-5.41.0.tar.xz";
+      sha256 = "0k3ch3vbdy9rm82d9n6mf6ir3qm7l2fddp98jy4jmsr0qynqn50q";
+      name = "kservice-5.41.0.tar.xz";
     };
   };
   ktexteditor = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/ktexteditor-5.40.0.tar.xz";
-      sha256 = "0xlhxgsj1cyvxrhj4d0ydcns1p18x51igh9bda66rp5p3wx8xm5n";
-      name = "ktexteditor-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/ktexteditor-5.41.0.tar.xz";
+      sha256 = "1idvldchfbnvimvcrizigmmam62q7rpam06xprcizywyxq53yw7z";
+      name = "ktexteditor-5.41.0.tar.xz";
     };
   };
   ktextwidgets = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/ktextwidgets-5.40.0.tar.xz";
-      sha256 = "0dm2nka8vyazz10hi55d1imi49ip2lfns1dimwnwbi15j3a14m6r";
-      name = "ktextwidgets-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/ktextwidgets-5.41.0.tar.xz";
+      sha256 = "0m6n4v0njvcaky87f0ga47iwq12hsvghadj8pngjrksankvaj23n";
+      name = "ktextwidgets-5.41.0.tar.xz";
     };
   };
   kunitconversion = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kunitconversion-5.40.0.tar.xz";
-      sha256 = "1qp0jcds7khbdxbi025ngz62xbw0k35psy204yz95wrmg302hvnw";
-      name = "kunitconversion-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kunitconversion-5.41.0.tar.xz";
+      sha256 = "1kn6lw58b9w6f38mra2hizbnik64ka3gvgqk1xqp0mspqmr498rw";
+      name = "kunitconversion-5.41.0.tar.xz";
     };
   };
   kwallet = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kwallet-5.40.0.tar.xz";
-      sha256 = "0lyx3vdql9n2bwr37wjk6l0k9n2si16gx74vmn1f4r7vqyhij8nd";
-      name = "kwallet-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kwallet-5.41.0.tar.xz";
+      sha256 = "1gdzfp3gbr5qp821pkhaj6v8zg3q21xz6j11frjww8fn5nmp3v3l";
+      name = "kwallet-5.41.0.tar.xz";
     };
   };
   kwayland = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kwayland-5.40.0.tar.xz";
-      sha256 = "00x4df45d80p1nvb0pjbg4y2vmcsghy9hnsr6mwyrhbkdrqdwkid";
-      name = "kwayland-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kwayland-5.41.0.tar.xz";
+      sha256 = "1dw2g6wwj7hhxlgzrjqk39ywpzh6ijwfjnzqjp6s8s5274fvjqbn";
+      name = "kwayland-5.41.0.tar.xz";
     };
   };
   kwidgetsaddons = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kwidgetsaddons-5.40.0.tar.xz";
-      sha256 = "16h65q1ibmwc5rmwf9jixxrawcd3jvrb5z4z2pcmh8242n1hyhk8";
-      name = "kwidgetsaddons-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kwidgetsaddons-5.41.0.tar.xz";
+      sha256 = "15fm7gni22wb64pski3fn5myrn9z22h077hzzcc34c3af21yh5s5";
+      name = "kwidgetsaddons-5.41.0.tar.xz";
     };
   };
   kwindowsystem = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kwindowsystem-5.40.0.tar.xz";
-      sha256 = "0cw062m9phy7z5yg75yg7qwg2lpz8270mwbmmwcbw9bl6qqkbwzz";
-      name = "kwindowsystem-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kwindowsystem-5.41.0.tar.xz";
+      sha256 = "0x4jz9qkvxs5dlzk860f8vhlczgxg6di614y8ji6afra760nk17l";
+      name = "kwindowsystem-5.41.0.tar.xz";
     };
   };
   kxmlgui = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kxmlgui-5.40.0.tar.xz";
-      sha256 = "07a7h9l0qwsnlwkh7pf50wmq21939mwynplm2zzzv3hkhfj89v6v";
-      name = "kxmlgui-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kxmlgui-5.41.0.tar.xz";
+      sha256 = "0cgwx3lhnn982gvl2yv5272bs3il05ssfpjlkgmqgnrnz2qxlhlr";
+      name = "kxmlgui-5.41.0.tar.xz";
     };
   };
   kxmlrpcclient = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/kxmlrpcclient-5.40.0.tar.xz";
-      sha256 = "01zbgnqf2sfjgmx8nn6ljzpvqjg777j2yh2jm55rc4yh15qvvn0l";
-      name = "kxmlrpcclient-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/kxmlrpcclient-5.41.0.tar.xz";
+      sha256 = "0y7n6xk18a6zci36ka426h7ar8r7kkr80jn47mc6jw3qdk4nvri7";
+      name = "kxmlrpcclient-5.41.0.tar.xz";
     };
   };
   modemmanager-qt = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/modemmanager-qt-5.40.0.tar.xz";
-      sha256 = "0i0jpcy4c8zak9vv5jzcp4m78vk8mcv27dqi464jh9vaz9z7znfj";
-      name = "modemmanager-qt-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/modemmanager-qt-5.41.0.tar.xz";
+      sha256 = "1bp9mllzgvqr3dsjg9a81yv487whf26vfxiyim8hr42b9j8v8wj0";
+      name = "modemmanager-qt-5.41.0.tar.xz";
     };
   };
   networkmanager-qt = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/networkmanager-qt-5.40.0.tar.xz";
-      sha256 = "178rm4c3304fn2h1jbfvf9zji8kkvnzkmnpnk0nkjh9dyqa80jvp";
-      name = "networkmanager-qt-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/networkmanager-qt-5.41.0.tar.xz";
+      sha256 = "0vdrbfwamk5p6mm0i05bxvmrlqxm9c5d373pn7qrm0kzs916xhlv";
+      name = "networkmanager-qt-5.41.0.tar.xz";
     };
   };
   oxygen-icons5 = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/oxygen-icons5-5.40.0.tar.xz";
-      sha256 = "057v69r3rvrw2qjqmb93k0m29ssgifb4sgm8xbfqx17b5iqms9f3";
-      name = "oxygen-icons5-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/oxygen-icons5-5.41.0.tar.xz";
+      sha256 = "1zpcjfzw4pv73ms8pc1w4fpvxcbpasl2av0g4y6sj7rshzdgrj31";
+      name = "oxygen-icons5-5.41.0.tar.xz";
     };
   };
   plasma-framework = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/plasma-framework-5.40.0.tar.xz";
-      sha256 = "1mjgy3116pdzvmw43yqhrqz74nyw200yhnnynxk569krgymvalvg";
-      name = "plasma-framework-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/plasma-framework-5.41.0.tar.xz";
+      sha256 = "1risn810pyncfpn01xiqsb5j8pwsnmx60lfajnx7qygny6b69pl4";
+      name = "plasma-framework-5.41.0.tar.xz";
     };
   };
   prison = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/prison-5.40.0.tar.xz";
-      sha256 = "18drqs6j1dx76224hlrp3xmk1hxq6q8638wpf5vmn6vqw8q304vw";
-      name = "prison-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/prison-5.41.0.tar.xz";
+      sha256 = "0q3r1a3047yxhsd3qfwzwsw261zrfdmsklnyq5d2ayflchcj5vxi";
+      name = "prison-5.41.0.tar.xz";
     };
   };
   qqc2-desktop-style = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/qqc2-desktop-style-5.40.0.tar.xz";
-      sha256 = "0jpdnsq8yf58p4a7qsgvn3pp7ms7q1pgy4rwrlviyjdrlfc1pv49";
-      name = "qqc2-desktop-style-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/qqc2-desktop-style-5.41.0.tar.xz";
+      sha256 = "166cjfaly8fzzchq8pk2s7f5mm63cwmayw3qc0p7amy5d0nykm0w";
+      name = "qqc2-desktop-style-5.41.0.tar.xz";
     };
   };
   solid = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/solid-5.40.0.tar.xz";
-      sha256 = "1kj2rs771hyrbbn8qykbrj5fvdv8g7niajbrf6mydbdvqc96zj8x";
-      name = "solid-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/solid-5.41.0.tar.xz";
+      sha256 = "0i2qxps26rg2x1576m35k4kj018i9jpsnlayzsk4fcj44kvsq9z3";
+      name = "solid-5.41.0.tar.xz";
     };
   };
   sonnet = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/sonnet-5.40.0.tar.xz";
-      sha256 = "1a947kgnx5dp7lv63dwzzlxm331c6h0cycv1lcdfcskan1wsmwk8";
-      name = "sonnet-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/sonnet-5.41.0.tar.xz";
+      sha256 = "1jhpl0ajqlln88fmzbwjxn0illbas4s0hbzwd3w56s9wg8j18s76";
+      name = "sonnet-5.41.0.tar.xz";
     };
   };
   syntax-highlighting = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/syntax-highlighting-5.40.0.tar.xz";
-      sha256 = "0xc06nd95q1mqw41pwrgh798jp9p994qylncabimxbcis39x138l";
-      name = "syntax-highlighting-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/syntax-highlighting-5.41.0.tar.xz";
+      sha256 = "0hmcb9f162hyvfb0mfkm69avgrbl146l7lyfzb93z1hk6f2gpxqc";
+      name = "syntax-highlighting-5.41.0.tar.xz";
     };
   };
   threadweaver = {
-    version = "5.40.0";
+    version = "5.41.0";
     src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.40/threadweaver-5.40.0.tar.xz";
-      sha256 = "0in3cp75n6nxlc38fr2pycfgh4k0azi70cnyzc8glyf3f2rw8d9g";
-      name = "threadweaver-5.40.0.tar.xz";
+      url = "${mirror}/stable/frameworks/5.41/threadweaver-5.41.0.tar.xz";
+      sha256 = "08nlskhdds13wplv4lwy4xshimkhl8jvzkz1h1qks6wggbwxf11m";
+      name = "threadweaver-5.41.0.tar.xz";
     };
   };
 }
diff --git a/pkgs/development/libraries/libaccounts-glib/default.nix b/pkgs/development/libraries/libaccounts-glib/default.nix
index e410b6d4aa52..70d0e9faf845 100644
--- a/pkgs/development/libraries/libaccounts-glib/default.nix
+++ b/pkgs/development/libraries/libaccounts-glib/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchFromGitLab, autoconf, automake, glib
 , gtk_doc, libtool, libxml2, libxslt, pkgconfig, sqlite }:
 
-let version = "1.18"; in
+let version = "1.23"; in
 stdenv.mkDerivation rec {
   name = "libaccounts-glib-${version}";
 
   src = fetchFromGitLab {
-    sha256 = "02p23vrqhw2l2w6nrwlk4bqxf7z9kplkc2d43716x9xakxr291km";
-    rev = version;
+    sha256 = "11cvl3ch0y93756k90mw1swqv0ylr8qgalmvcn5yari8z4sg6cgg";
+    rev = "VERSION_${version}";
     repo = "libaccounts-glib";
     owner = "accounts-sso";
   };
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index 9bf54a115ffd..db4c0c7738de 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -16,11 +16,11 @@ in
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "libinput-${version}";
-  version = "1.9.2";
+  version = "1.9.3";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/libinput/${name}.tar.xz";
-    sha256 = "0fyy050hzk47g7305lx5pgyh2abvq7qs4xd3nn1is7zy3wj56s6x";
+    sha256 = "09wkc5qqk1k2a68cwfy4x853z8z35wf2qkijh66kacsvc2fjq394";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/liblscp/default.nix b/pkgs/development/libraries/liblscp/default.nix
index 36f1b7bd532b..1a5a4baf8086 100644
--- a/pkgs/development/libraries/liblscp/default.nix
+++ b/pkgs/development/libraries/liblscp/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "liblscp-${version}";
-  version = "0.5.8";
+  version = "0.6.0";
 
   src = fetchurl {
-    url = "http://download.linuxsampler.org/packages/${name}.tar.gz";
-    sha256 = "00cfafkw1n80sdjwm9zdsg5vx287wqpgpbajd3zmiz415wzr84dn";
+    url = "https://download.linuxsampler.org/packages/${name}.tar.gz";
+    sha256 = "1rl7ssdzj0z3658yvdijmb27n2lcwmplx4qxg5mwrm07pvs7i75k";
   };
 
   nativeBuildInputs = [ autoconf automake libtool pkgconfig ];
diff --git a/pkgs/development/libraries/libmicrohttpd/default.nix b/pkgs/development/libraries/libmicrohttpd/default.nix
index fe3f40ece737..35928e6dbf96 100644
--- a/pkgs/development/libraries/libmicrohttpd/default.nix
+++ b/pkgs/development/libraries/libmicrohttpd/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "libmicrohttpd-${version}";
-  version = "0.9.57";
+  version = "0.9.58";
 
   src = fetchurl {
     url = "mirror://gnu/libmicrohttpd/${name}.tar.gz";
-    sha256 = "0kmgkk9sjg1n3q7rbzw5y4qmgh51zn5qi2j69gbqmr6phxjaghfy";
+    sha256 = "1wq17qvizis7bsyvyw1gnfycvivssncngziddnyrbzv2dhvy24bs";
   };
 
   outputs = [ "out" "dev" "devdoc" "info" ];
diff --git a/pkgs/development/libraries/libre/default.nix b/pkgs/development/libraries/libre/default.nix
index 8bef305a0ecc..d65fdc833960 100644
--- a/pkgs/development/libraries/libre/default.nix
+++ b/pkgs/development/libraries/libre/default.nix
@@ -1,16 +1,13 @@
 {stdenv, fetchurl, zlib, openssl}:
 stdenv.mkDerivation rec {
-  version = "0.5.1";
+  version = "0.5.6";
   name = "libre-${version}";
-  src=fetchurl {
+  src = fetchurl {
     url = "http://www.creytiv.com/pub/re-${version}.tar.gz";
-    sha256 = "1qs6gpflgwic2pp1nplhhyl585h9q0kf74h5z29ajr5ij0j65rsa";
+    sha256 = "0sfz5c7b05crahblanrrvwca092qaqzhjkbkva58jbqnmlk9h4d3";
   };
-  buildInputs = [zlib openssl];
-  makeFlags = [
-    "USE_ZLIB=1" "USE_OPENSSL=1" 
-    ''PREFIX=$(out)''
-  ]
+  buildInputs = [ zlib openssl ];
+  makeFlags = [ "USE_ZLIB=1" "USE_OPENSSL=1" "PREFIX=$(out)" ]
   ++ stdenv.lib.optional (stdenv.cc.cc != null) "SYSROOT_ALT=${stdenv.cc.cc}"
   ++ stdenv.lib.optional (stdenv.cc.libc != null) "SYSROOT=${stdenv.lib.getDev stdenv.cc.libc}"
   ;
diff --git a/pkgs/development/libraries/librem/default.nix b/pkgs/development/libraries/librem/default.nix
index a3e98d260cea..f6e041e57322 100644
--- a/pkgs/development/libraries/librem/default.nix
+++ b/pkgs/development/libraries/librem/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, zlib, openssl, libre}:
 stdenv.mkDerivation rec {
-  version = "0.5.0";
+  version = "0.5.2";
   name = "librem-${version}";
   src=fetchurl {
     url = "http://www.creytiv.com/pub/rem-${version}.tar.gz";
-    sha256 = "1n1ajy1ccw0xw6bndad4js2pnj977s2angzs7lawadh7x5wnalbb";
+    sha256 = "1sv4986yyq42irk9alwp20gc3r5y0r6kix15sl8qmljgxn0lxigv";
   };
   buildInputs = [zlib openssl libre];
   makeFlags = [
diff --git a/pkgs/development/libraries/libvirt-glib/default.nix b/pkgs/development/libraries/libvirt-glib/default.nix
index e41ab5fe5a33..83b2983d9c4b 100644
--- a/pkgs/development/libraries/libvirt-glib/default.nix
+++ b/pkgs/development/libraries/libvirt-glib/default.nix
@@ -16,7 +16,9 @@ in stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [
     libvirt glib libxml2 intltool libtool yajl nettle libgcrypt
-    python pygobject2 gobjectIntrospection libcap_ng numactl xen libapparmor
+    python pygobject2 gobjectIntrospection libcap_ng numactl libapparmor
+  ] ++ stdenv.lib.optionals stdenv.isx86_64 [
+    xen
   ];
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index f2710435c00c..754588504160 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -27,9 +27,11 @@ stdenv.mkDerivation rec {
     libxslt xhtml1 perlPackages.XMLXPath curl libpcap
   ] ++ optionals stdenv.isLinux [
     libpciaccess devicemapper lvm2 utillinux systemd libnl numad zfs
-    libapparmor libcap_ng numactl xen attr parted
+    libapparmor libcap_ng numactl attr parted
+  ] ++ optionals (stdenv.isLinux && stdenv.isx86_64) [
+    xen
   ] ++ optionals stdenv.isDarwin [
-     libiconv gmp
+    libiconv gmp
   ];
 
   preConfigure = optionalString stdenv.isLinux ''
diff --git a/pkgs/development/libraries/openexr/default.nix b/pkgs/development/libraries/openexr/default.nix
index 27a9860c8683..d2d8b686f35c 100644
--- a/pkgs/development/libraries/openexr/default.nix
+++ b/pkgs/development/libraries/openexr/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, zlib, ilmbase }:
+{ lib, stdenv, fetchurl, fetchpatch, autoconf, automake, libtool, pkgconfig, zlib, ilmbase }:
 
 stdenv.mkDerivation rec {
   name = "openexr-${lib.getVersion ilmbase}";
@@ -8,6 +8,18 @@ stdenv.mkDerivation rec {
     sha256 = "0ca2j526n4wlamrxb85y2jrgcv0gf21b3a19rr0gh4rjqkv1581n";
   };
 
+  patches = [
+    ./bootstrap.patch
+    (fetchpatch {
+      # https://github.com/openexr/openexr/issues/232
+      # https://github.com/openexr/openexr/issues/238
+      name = "CVE-2017-12596.patch";
+      url = "https://github.com/openexr/openexr/commit/f09f5f26c1924.patch";
+      sha256 = "1d014da7c8cgbak5rgr4mq6wzm7kwznb921pr7nlb52vlfvqp4rs";
+      stripLen = 1;
+    })
+  ];
+
   outputs = [ "bin" "dev" "out" "doc" ];
 
   preConfigure = ''
@@ -20,8 +32,6 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
-  patches = [ ./bootstrap.patch ];
-
   meta = with stdenv.lib; {
     homepage = http://www.openexr.com/;
     license = licenses.bsd3;
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 68e88cc57d06..78792e5b8dc4 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -107,8 +107,8 @@ let
 in {
 
   openssl_1_0_2 = common {
-    version = "1.0.2m";
-    sha256 = "03vvlfnxx4lhxc83ikfdl6jqph4h52y7lb7li03va6dkqrgg2vwc";
+    version = "1.0.2n";
+    sha256 = "1zm82pyq5a9jm10q6iv7d3dih3xwjds4x30fqph3k317byvsn2rp";
   };
 
   openssl_1_1_0 = common {
diff --git a/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh b/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh
index bf716a72d0fc..f288e99dd12a 100644
--- a/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh
+++ b/pkgs/development/libraries/qt-4.x/4.8/qmake-hook.sh
@@ -3,6 +3,11 @@ qmakeConfigurePhase() {
 
     $QMAKE PREFIX=$out $qmakeFlags
 
+    if ! [[ -v enableParallelBuilding ]]; then
+        enableParallelBuilding=1
+        echo "qmake4Hook: enabled parallel building"
+    fi
+
     runHook postConfigure
 }
 
diff --git a/pkgs/development/libraries/qt-5/5.9/default.nix b/pkgs/development/libraries/qt-5/5.9/default.nix
index 879f7f198c92..0582a9f3f825 100644
--- a/pkgs/development/libraries/qt-5/5.9/default.nix
+++ b/pkgs/development/libraries/qt-5/5.9/default.nix
@@ -6,9 +6,9 @@ Before a major version update, make a copy of this directory. (We like to
 keep the old version around for a short time after major updates.) Add a
 top-level attribute to `top-level/all-packages.nix`.
 
-1. Update the URL in `maintainers/scripts/generate-qt.sh`.
+1. Update the URL in `pkgs/development/libraries/qt-5/$VERSION/fetch.sh`.
 2. From the top of the Nixpkgs tree, run
-   `./maintainers/scripts/generate-qt.sh > pkgs/development/libraries/qt-5/$VERSION/srcs.nix`.
+   `./maintainers/scripts/fetch-kde-qt.sh > pkgs/development/libraries/qt-5/$VERSION/srcs.nix`.
 3. Update `qtCompatVersion` below if the minor version number changes.
 4. Check that the new packages build correctly.
 5. Commit the changes and open a pull request.
diff --git a/pkgs/development/libraries/qt-5/5.9/fetch.sh b/pkgs/development/libraries/qt-5/5.9/fetch.sh
index 2ae85bba391d..103fa4e09abc 100644
--- a/pkgs/development/libraries/qt-5/5.9/fetch.sh
+++ b/pkgs/development/libraries/qt-5/5.9/fetch.sh
@@ -1,2 +1,2 @@
-WGET_ARGS=( http://download.qt.io/official_releases/qt/5.9/5.9.1/submodules/ \
+WGET_ARGS=( http://download.qt.io/official_releases/qt/5.9/5.9.3/submodules/ \
             -A '*.tar.xz' )
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase.patch b/pkgs/development/libraries/qt-5/5.9/qtbase.patch
index 96c9b029312a..69e389a5a6d4 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtbase.patch
+++ b/pkgs/development/libraries/qt-5/5.9/qtbase.patch
@@ -101,7 +101,7 @@ index bb5083c925..da8e2cb386 100644
  # We are generating cmake files. Most developers of Qt are not aware of cmake,
  # so we require automatic tests to be available. The only module which should
 diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-index 17da8b979e..d648ab4058 100644
+index 55c74aad66..0bbc8718eb 100644
 --- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
 +++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
 @@ -9,30 +9,6 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0)
@@ -261,10 +261,10 @@ index 17da8b979e..d648ab4058 100644
          set_target_properties(Qt5::${Plugin} PROPERTIES
              \"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
 diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf
-index 395ac34001..a0e5c68b7e 100644
+index e645ba5803..a0e5c68b7e 100644
 --- a/mkspecs/features/mac/default_post.prf
 +++ b/mkspecs/features/mac/default_post.prf
-@@ -24,165 +24,3 @@ qt {
+@@ -24,166 +24,3 @@ qt {
          }
      }
  }
@@ -427,17 +427,18 @@ index 395ac34001..a0e5c68b7e 100644
 -}
 -
 -cache(QMAKE_XCODE_DEVELOPER_PATH, stash)
--cache(QMAKE_XCODE_VERSION, stash)
+-!isEmpty(QMAKE_XCODE_VERSION): \
+-    cache(QMAKE_XCODE_VERSION, stash)
 -
 -QMAKE_XCODE_LIBRARY_SUFFIX = $$qtPlatformTargetSuffix()
 diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf
-index e21e749ee9..3b01424e67 100644
+index 44636f2288..61ed486a76 100644
 --- a/mkspecs/features/mac/default_pre.prf
 +++ b/mkspecs/features/mac/default_pre.prf
-@@ -1,51 +1,2 @@
+@@ -1,56 +1,3 @@
  CONFIG = asset_catalogs rez $$CONFIG
  load(default_pre)
--
+ 
 -isEmpty(QMAKE_XCODE_DEVELOPER_PATH) {
 -    # Get path of Xcode's Developer directory
 -    QMAKE_XCODE_DEVELOPER_PATH = $$system("/usr/bin/xcode-select --print-path 2>/dev/null")
@@ -447,18 +448,23 @@ index e21e749ee9..3b01424e67 100644
 -    # Make sure Xcode path is valid
 -    !exists($$QMAKE_XCODE_DEVELOPER_PATH): \
 -        error("Xcode is not installed in $${QMAKE_XCODE_DEVELOPER_PATH}. Please use xcode-select to choose Xcode installation path.")
+-}
+-
+-isEmpty(QMAKE_XCODEBUILD_PATH): \
+-    QMAKE_XCODEBUILD_PATH = $$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null")
 -
+-!isEmpty(QMAKE_XCODEBUILD_PATH) {
 -    # Make sure Xcode is set up properly
--    isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null"))): \
--        error("Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild.")
--}
+-    !system("/usr/bin/xcrun xcodebuild -license check 2>/dev/null"): \
+-        error("Xcode not set up properly. You need to confirm the license agreement by running 'sudo xcrun xcodebuild -license accept'.")
 -
--isEmpty(QMAKE_XCODE_VERSION) {
--    # Extract Xcode version using xcodebuild
--    xcode_version = $$system("/usr/bin/xcodebuild -version")
--    QMAKE_XCODE_VERSION = $$member(xcode_version, 1)
--    isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.")
--    unset(xcode_version)
+-    isEmpty(QMAKE_XCODE_VERSION) {
+-        # Extract Xcode version using xcodebuild
+-        xcode_version = $$system("/usr/bin/xcrun xcodebuild -version")
+-        QMAKE_XCODE_VERSION = $$member(xcode_version, 1)
+-        isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.")
+-        unset(xcode_version)
+-    }
 -}
 -
 -isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) {
@@ -487,11 +493,11 @@ index e21e749ee9..3b01424e67 100644
 -# at build time, depending on the current Xcode SDK and configuration.
 -QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX
 diff --git a/mkspecs/features/mac/sdk.prf b/mkspecs/features/mac/sdk.prf
-index 68ab7e4053..e69de29bb2 100644
+index 3f6dc076ca..8b13789179 100644
 --- a/mkspecs/features/mac/sdk.prf
 +++ b/mkspecs/features/mac/sdk.prf
-@@ -1,49 +0,0 @@
--
+@@ -1,58 +1 @@
+ 
 -isEmpty(QMAKE_MAC_SDK): \
 -    error("QMAKE_MAC_SDK must be set when using CONFIG += sdk.")
 -
@@ -500,13 +506,22 @@ index 68ab7e4053..e69de29bb2 100644
 -
 -defineReplace(xcodeSDKInfo) {
 -    info = $$1
+-    equals(info, "Path"): \
+-        info = --show-sdk-path
+-    equals(info, "PlatformPath"): \
+-        info = --show-sdk-platform-path
+-    equals(info, "SDKVersion"): \
+-        info = --show-sdk-version
 -    sdk = $$2
 -    isEmpty(sdk): \
 -        sdk = $$QMAKE_MAC_SDK
 -
 -    isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}) {
--        QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcodebuild -sdk $$sdk -version $$info 2>/dev/null")
--        isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}): error("Could not resolve SDK $$info for \'$$sdk\'")
+-        QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcrun --sdk $$sdk $$info 2>/dev/null")
+-        # --show-sdk-platform-path won't work for Command Line Tools; this is fine
+-        # only used by the XCTest backend to testlib
+-        isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}):if(!isEmpty(QMAKE_XCODEBUILD_PATH)|!equals(info, "--show-sdk-platform-path")): \
+-            error("Could not resolve SDK $$info for \'$$sdk\'")
 -        cache(QMAKE_MAC_SDK.$${sdk}.$${info}, set stash, QMAKE_MAC_SDK.$${sdk}.$${info})
 -    }
 -
@@ -581,10 +596,10 @@ index d49f4c49c1..097dcd7d39 100644
  target.path = $$instbase/$$TARGETPATH
  INSTALLS += target
 diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf
-index cb84ae0da8..45e16f4302 100644
+index 883f8ca215..81db8eb2d4 100644
 --- a/mkspecs/features/qt_app.prf
 +++ b/mkspecs/features/qt_app.prf
-@@ -29,7 +29,7 @@ host_build:force_bootstrap {
+@@ -33,7 +33,7 @@ host_build:force_bootstrap {
      target.path = $$[QT_HOST_BINS]
  } else {
      !build_pass:qtConfig(debug_and_release): CONFIG += release
@@ -607,7 +622,7 @@ index 1848f00e90..2af93675c5 100644
 +    MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT
  }
 diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf
-index 1e138730b3..b7ba74dc3f 100644
+index fb96d1b6a0..508ed17d30 100644
 --- a/mkspecs/features/qt_common.prf
 +++ b/mkspecs/features/qt_common.prf
 @@ -32,8 +32,8 @@ contains(TEMPLATE, .*lib) {
@@ -661,20 +676,32 @@ index 72dde61a40..f891a2baed 100644
      INSTALLS += inst_qch_docs
  
 diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf
-index 0a008374e5..5e7cd92f6f 100644
+index 668669e4cd..30f7fbac41 100644
 --- a/mkspecs/features/qt_example_installs.prf
 +++ b/mkspecs/features/qt_example_installs.prf
-@@ -73,7 +73,7 @@ probase = $$relative_path($$_PRO_FILE_PWD_, $$dirname(_QMAKE_CONF_)/examples)
-         $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \
-         $$DBUS_ADAPTORS $$DBUS_INTERFACES
-     addInstallFiles(sources.files, $$sourcefiles)
--    sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase
+@@ -77,13 +77,13 @@ for(extra, extras): \
+ # Just for Qt Creator
+ OTHER_FILES += $$sourcefiles
+ 
+-sourcefiles += \
+-    $$_PRO_FILE_ $$RC_FILE $$DEF_FILE \
+-    $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \
+-    $$DBUS_ADAPTORS $$DBUS_INTERFACES
+-addInstallFiles(sources.files, $$sourcefiles)
+-sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase
+-INSTALLS += sources
++    sourcefiles += \
++        $$_PRO_FILE_ $$RC_FILE $$DEF_FILE \
++        $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \
++        $$DBUS_ADAPTORS $$DBUS_INTERFACES
++    addInstallFiles(sources.files, $$sourcefiles)
 +    sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase
-     INSTALLS += sources
++    INSTALLS += sources
  
-     check_examples {
+ check_examples {
+     srcfiles = $$sources.files
 diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
-index c00fdb73f8..5789cd0c06 100644
+index 1903e509c8..ae7b585989 100644
 --- a/mkspecs/features/qt_functions.prf
 +++ b/mkspecs/features/qt_functions.prf
 @@ -69,7 +69,7 @@ defineTest(qtHaveModule) {
@@ -836,7 +863,7 @@ index 706304cf34..546420f6ad 100644
  set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
  !!ENDIF
 diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
-index 39e7c71a9c..dced1f2811 100644
+index cba279c184..5ae3fd62e5 100644
 --- a/src/corelib/kernel/qcoreapplication.cpp
 +++ b/src/corelib/kernel/qcoreapplication.cpp
 @@ -2533,6 +2533,15 @@ QStringList QCoreApplication::libraryPaths()
@@ -856,7 +883,7 @@ index 39e7c71a9c..dced1f2811 100644
          if (!libPathEnv.isEmpty()) {
              QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts);
 diff --git a/src/corelib/tools/qtimezoneprivate_tz.cpp b/src/corelib/tools/qtimezoneprivate_tz.cpp
-index 1714c9802f..fd2ebb1336 100644
+index 4fdc2e36ac..d3ec222543 100644
 --- a/src/corelib/tools/qtimezoneprivate_tz.cpp
 +++ b/src/corelib/tools/qtimezoneprivate_tz.cpp
 @@ -70,7 +70,11 @@ typedef QHash<QByteArray, QTzTimeZone> QTzTimeZoneHash;
@@ -872,7 +899,7 @@ index 1714c9802f..fd2ebb1336 100644
      if (!QFile::exists(path))
          path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
  
-@@ -643,12 +647,16 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId)
+@@ -645,12 +649,16 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId)
          if (!tzif.open(QIODevice::ReadOnly))
              return;
      } else {
@@ -967,7 +994,7 @@ index 1da00813ce..0bf877afcb 100644
              return false;
      }
 diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp
-index cf08a15f96..2310488298 100644
+index 9a24938284..74962b4ae2 100644
 --- a/src/network/kernel/qhostinfo_unix.cpp
 +++ b/src/network/kernel/qhostinfo_unix.cpp
 @@ -102,7 +102,7 @@ static bool resolveLibraryInternal()
@@ -1024,7 +1051,7 @@ index 341d3bccf2..3368234c26 100644
              scanThread->interfaceName = QString::fromNSString(ifName);
              scanThread->start();
 diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
-index ca9f7af127..a337ad73bf 100644
+index b5a0a5bbeb..6c20305f4d 100644
 --- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
 +++ b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
 @@ -265,12 +265,9 @@ void TableGenerator::initPossibleLocations()
@@ -1042,7 +1069,7 @@ index ca9f7af127..a337ad73bf 100644
  
  QString TableGenerator::findComposeFile()
 diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
-index 59b76370ae..b91139ded9 100644
+index 5cd4beb4f0..84919e6d6a 100644
 --- a/src/plugins/platforms/cocoa/qcocoawindow.mm
 +++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
 @@ -320,7 +320,7 @@ static void qt_closePopups()
@@ -1055,7 +1082,7 @@ index 59b76370ae..b91139ded9 100644
  
  #if QT_MACOS_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_10_12)
 diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
-index 7640a711a9..ef9a14d38b 100644
+index e2e573f0e1..1c8289f81e 100644
 --- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
 +++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
 @@ -580,7 +580,14 @@ QFunctionPointer QGLXContext::getProcAddress(const char *procName)
@@ -1074,11 +1101,11 @@ index 7640a711a9..ef9a14d38b 100644
  #endif
              }
 diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp
-index d257ab1242..75853af4e4 100644
+index 7c62c2e2b3..fefa40e0f6 100644
 --- a/src/plugins/platforms/xcb/qxcbcursor.cpp
 +++ b/src/plugins/platforms/xcb/qxcbcursor.cpp
 @@ -311,10 +311,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen)
- #if defined(XCB_USE_XLIB) && QT_CONFIG(library)
+ #if QT_CONFIG(xcb_xlib) && QT_CONFIG(library)
      static bool function_ptrs_not_initialized = true;
      if (function_ptrs_not_initialized) {
 -        QLibrary xcursorLib(QLatin1String("Xcursor"), 1);
diff --git a/pkgs/development/libraries/qt-5/5.9/srcs.nix b/pkgs/development/libraries/qt-5/5.9/srcs.nix
index 247800b75780..df7846ca3866 100644
--- a/pkgs/development/libraries/qt-5/5.9/srcs.nix
+++ b/pkgs/development/libraries/qt-5/5.9/srcs.nix
@@ -3,275 +3,275 @@
 
 {
   qt3d = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qt3d-opensource-src-5.9.1.tar.xz";
-      sha256 = "15j9znfnxch1n6fwz9ngi30msdzh0wlpykl53cs8g2fp2awfa7sg";
-      name = "qt3d-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qt3d-opensource-src-5.9.3.tar.xz";
+      sha256 = "0gr7wvd3p8i2frj9nkfxffxapwqx6i4wh171ymvcsg2qy0r534lp";
+      name = "qt3d-opensource-src-5.9.3.tar.xz";
     };
   };
   qtactiveqt = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtactiveqt-opensource-src-5.9.1.tar.xz";
-      sha256 = "07zq60xg7nnlny7qgj6dk1ibg3fzhbdh78gpd0s6x1n822iyislg";
-      name = "qtactiveqt-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtactiveqt-opensource-src-5.9.3.tar.xz";
+      sha256 = "16aka3y7a6mhs0yfm7vbq8v5gbh2ifmk4v2hl04iacindq9f5v2r";
+      name = "qtactiveqt-opensource-src-5.9.3.tar.xz";
     };
   };
   qtandroidextras = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtandroidextras-opensource-src-5.9.1.tar.xz";
-      sha256 = "0nq879jsa2z1l5q3n0hhiv15mzfm5c6s7zfblcc10sgim90p5mjj";
-      name = "qtandroidextras-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtandroidextras-opensource-src-5.9.3.tar.xz";
+      sha256 = "0f653qmzvr3rjjgipjbcxvp5wq9fbaz1b4bvj7g868s2d9gpqp9n";
+      name = "qtandroidextras-opensource-src-5.9.3.tar.xz";
     };
   };
   qtbase = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtbase-opensource-src-5.9.1.tar.xz";
-      sha256 = "1ikm896jzyfyjv2qv8n3fd81sxb4y24zkygx36865ygzyvlj36mw";
-      name = "qtbase-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtbase-opensource-src-5.9.3.tar.xz";
+      sha256 = "10lrkarvs7dpx9rlj7sjcc0pzi42098x8nqnhmydr4bnbq048z4y";
+      name = "qtbase-opensource-src-5.9.3.tar.xz";
     };
   };
   qtcanvas3d = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtcanvas3d-opensource-src-5.9.1.tar.xz";
-      sha256 = "10fy8wqfw2yhha6lyky5g1a72137aj8pji7mk0wjnggh629z12sb";
-      name = "qtcanvas3d-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtcanvas3d-opensource-src-5.9.3.tar.xz";
+      sha256 = "1g0a606fgal4x17ly0qrj05pb0k8riwh7nj4g3jip05g8iwb2f2y";
+      name = "qtcanvas3d-opensource-src-5.9.3.tar.xz";
     };
   };
   qtcharts = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtcharts-opensource-src-5.9.1.tar.xz";
-      sha256 = "180df5v7i1ki8hc3lgi6jcfdyz7f19pb73dvfkw402wa2gfcna3k";
-      name = "qtcharts-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtcharts-opensource-src-5.9.3.tar.xz";
+      sha256 = "1sb99ncmh84bz0xzq55chgic7jk61awnfvi7ld4gq5ap3nl865zc";
+      name = "qtcharts-opensource-src-5.9.3.tar.xz";
     };
   };
   qtconnectivity = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtconnectivity-opensource-src-5.9.1.tar.xz";
-      sha256 = "1mbzmqix0388iq20a1ljd1pgdq259rm1xzp9kx8gigqpamqqnqs0";
-      name = "qtconnectivity-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtconnectivity-opensource-src-5.9.3.tar.xz";
+      sha256 = "0j86rspn4xgwq1ddc1mpq1kq0ib2c0ag6rsn9ly2xs4iimp1x2g2";
+      name = "qtconnectivity-opensource-src-5.9.3.tar.xz";
     };
   };
   qtdatavis3d = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtdatavis3d-opensource-src-5.9.1.tar.xz";
-      sha256 = "14d1q07winh6n1bkc616dapwfnsfkcjyg5zngdqjdj9mza8ang13";
-      name = "qtdatavis3d-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtdatavis3d-opensource-src-5.9.3.tar.xz";
+      sha256 = "0s636ix44akrjx47gv9qj2ac02q8clnwj3acfr28p6pagm46k7vh";
+      name = "qtdatavis3d-opensource-src-5.9.3.tar.xz";
     };
   };
   qtdeclarative = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtdeclarative-opensource-src-5.9.1.tar.xz";
-      sha256 = "1zwlxrgraxhlsdkwsai3pjbz7f3a6rsnsg2mjrpay6cz3af6rznj";
-      name = "qtdeclarative-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtdeclarative-opensource-src-5.9.3.tar.xz";
+      sha256 = "01wlk17zf47yzx7cc3cp617gj70yadllj2rsfk78879c0v96cpsh";
+      name = "qtdeclarative-opensource-src-5.9.3.tar.xz";
     };
   };
   qtdoc = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtdoc-opensource-src-5.9.1.tar.xz";
-      sha256 = "1d2kk9wzm2261ap87nyf743a4662gll03gz5yh5qi7k620lk372x";
-      name = "qtdoc-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtdoc-opensource-src-5.9.3.tar.xz";
+      sha256 = "0aki592arm3r08y9cq8863jp9zzkvgx7sc48426n30m6q9valsg5";
+      name = "qtdoc-opensource-src-5.9.3.tar.xz";
     };
   };
   qtgamepad = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtgamepad-opensource-src-5.9.1.tar.xz";
-      sha256 = "055w4649zi93q1sl32ngqwgnl2vxw1idnm040s9gjgjb67gi81zi";
-      name = "qtgamepad-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtgamepad-opensource-src-5.9.3.tar.xz";
+      sha256 = "14vari5cq10a0z02559l2m1v78g7ygnyqf1ilkmy2f0kr36wm7y6";
+      name = "qtgamepad-opensource-src-5.9.3.tar.xz";
     };
   };
   qtgraphicaleffects = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtgraphicaleffects-opensource-src-5.9.1.tar.xz";
-      sha256 = "1zsr3a5dsmpvrb5h4m4h42wqmkvkks3d8mmyrx4k0mfr6s7c71jz";
-      name = "qtgraphicaleffects-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtgraphicaleffects-opensource-src-5.9.3.tar.xz";
+      sha256 = "1nghl39sqsjamjn6pfmxmgga6z9vwzv2zbgc92amrfxxr2dh42vr";
+      name = "qtgraphicaleffects-opensource-src-5.9.3.tar.xz";
     };
   };
   qtimageformats = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtimageformats-opensource-src-5.9.1.tar.xz";
-      sha256 = "0iwa3dys5rv706cpxwhmgircv783pmlyl1yrsc5i0rha643y7zkr";
-      name = "qtimageformats-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtimageformats-opensource-src-5.9.3.tar.xz";
+      sha256 = "1p95wzm46j49c5br45g0pmlz3n3fl93j1ipzmnpmq9y2pbfhkcyl";
+      name = "qtimageformats-opensource-src-5.9.3.tar.xz";
     };
   };
   qtlocation = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtlocation-opensource-src-5.9.1.tar.xz";
-      sha256 = "058mgvlaml9rkfhkpr1n3avhi12zlva131sqhbwj4lwwyqfkri2b";
-      name = "qtlocation-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtlocation-opensource-src-5.9.3.tar.xz";
+      sha256 = "1qacqz6l7zljqszblhgzg5y1v4mgki59k45ag7yc2iw7vrf45zc0";
+      name = "qtlocation-opensource-src-5.9.3.tar.xz";
     };
   };
   qtmacextras = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtmacextras-opensource-src-5.9.1.tar.xz";
-      sha256 = "0096g9l2hwsiwlzfjkw7rhkdnyvb5gzjzyjjg9kqfnsagbwscv11";
-      name = "qtmacextras-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtmacextras-opensource-src-5.9.3.tar.xz";
+      sha256 = "0piv3q49vhpjxafdicizcw13am49h0ybfhb37vai0x1wbrlvhdiy";
+      name = "qtmacextras-opensource-src-5.9.3.tar.xz";
     };
   };
   qtmultimedia = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtmultimedia-opensource-src-5.9.1.tar.xz";
-      sha256 = "1r76zvbv6wwb7lgw9jwlx382iyw34i1amxaypb5bg3j1niqvx3z4";
-      name = "qtmultimedia-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtmultimedia-opensource-src-5.9.3.tar.xz";
+      sha256 = "19iqh8xpspzlmpzh05bx5rchlslbfy2pp00xv52496yf9b95i5g7";
+      name = "qtmultimedia-opensource-src-5.9.3.tar.xz";
     };
   };
   qtnetworkauth = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtnetworkauth-opensource-src-5.9.1.tar.xz";
-      sha256 = "1fgax3p7lqcz29z2n1qxnfpkj3wxq1x9bfx61q6nss1fs74pxzra";
-      name = "qtnetworkauth-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtnetworkauth-opensource-src-5.9.3.tar.xz";
+      sha256 = "0fdz5q47xbiij3mi5lzhvxpq4jp9fm929v9kyvcyadz86mp3f8nz";
+      name = "qtnetworkauth-opensource-src-5.9.3.tar.xz";
     };
   };
   qtpurchasing = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtpurchasing-opensource-src-5.9.1.tar.xz";
-      sha256 = "0b1hlaq6rb7d6b6h8kqd26klcpzf9vcdjrv610kdj0drb00jg3ss";
-      name = "qtpurchasing-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtpurchasing-opensource-src-5.9.3.tar.xz";
+      sha256 = "00yfdd00frgf7fs9s0vyn1c6c4abxgld5rfgkzms3y6n6lcphs0j";
+      name = "qtpurchasing-opensource-src-5.9.3.tar.xz";
     };
   };
   qtquickcontrols = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtquickcontrols-opensource-src-5.9.1.tar.xz";
-      sha256 = "0bpc465q822phw3dcbddn70wj1fjlc2hxskkp1z9gl7r23hx03jj";
-      name = "qtquickcontrols-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtquickcontrols-opensource-src-5.9.3.tar.xz";
+      sha256 = "09p2q3max4xrlw5svbhn11y9cgrvcjsj88xw4c0kq91cgnyyw3ih";
+      name = "qtquickcontrols-opensource-src-5.9.3.tar.xz";
     };
   };
   qtquickcontrols2 = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtquickcontrols2-opensource-src-5.9.1.tar.xz";
-      sha256 = "1zq86kqz85wm3n84jcxkxw5x1mrhkqzldkigf8xm3l8j24rf0fr0";
-      name = "qtquickcontrols2-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtquickcontrols2-opensource-src-5.9.3.tar.xz";
+      sha256 = "0hq888qq8q7dglpyzif64pplqjxfrqjpkvbcx0ycq35darls5ai1";
+      name = "qtquickcontrols2-opensource-src-5.9.3.tar.xz";
     };
   };
   qtremoteobjects = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtremoteobjects-opensource-src-5.9.1.tar.xz";
-      sha256 = "10kwq0fgmi6zsqhb6s1nkcydpyl8d8flzdpgmyj50c4h2xhg2km0";
-      name = "qtremoteobjects-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtremoteobjects-opensource-src-5.9.3.tar.xz";
+      sha256 = "0z6qd381r6a7gdrsknlkkbhq9mmdqi040kfrvgm6mfa69336f4dk";
+      name = "qtremoteobjects-opensource-src-5.9.3.tar.xz";
     };
   };
   qtscript = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtscript-opensource-src-5.9.1.tar.xz";
-      sha256 = "13qq2mjfhqdcvkmzrgxg1gr5kww1ygbwb7r71xxl6rjzbn30hshp";
-      name = "qtscript-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtscript-opensource-src-5.9.3.tar.xz";
+      sha256 = "0rjm6nph1nssfpknp4i682bvk7363y4a2f74060vcm7ib2pzl2xq";
+      name = "qtscript-opensource-src-5.9.3.tar.xz";
     };
   };
   qtscxml = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtscxml-opensource-src-5.9.1.tar.xz";
-      sha256 = "1m3b6wg5hqasdfc5igpj9bq3czql5kkvvn3rx1ig508kdlh5i5s0";
-      name = "qtscxml-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtscxml-opensource-src-5.9.3.tar.xz";
+      sha256 = "06x8hs3p7bfgnl6b2fjld4s41acw1rbnxbcgkprgw2fxxnl1zxfq";
+      name = "qtscxml-opensource-src-5.9.3.tar.xz";
     };
   };
   qtsensors = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtsensors-opensource-src-5.9.1.tar.xz";
-      sha256 = "1772x7r6y9xv2sv0w2dfz2yhagsq5bpa9kdpzg0qikccmabr7was";
-      name = "qtsensors-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtsensors-opensource-src-5.9.3.tar.xz";
+      sha256 = "1hfsih5iy4fi6mnpw2shf1lzx9hxcdc1arspad1mark17l5s4pmr";
+      name = "qtsensors-opensource-src-5.9.3.tar.xz";
     };
   };
   qtserialbus = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtserialbus-opensource-src-5.9.1.tar.xz";
-      sha256 = "1hzk377c3zl4dm5hxwvpxg2w096m160448y9df6v6l8xpzpzxafa";
-      name = "qtserialbus-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtserialbus-opensource-src-5.9.3.tar.xz";
+      sha256 = "0f39qh05mp54frpn5sy9k5vfw5zb2gg72qaqz81mwlck2xg78qpg";
+      name = "qtserialbus-opensource-src-5.9.3.tar.xz";
     };
   };
   qtserialport = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtserialport-opensource-src-5.9.1.tar.xz";
-      sha256 = "0sbsc7n701kxl16r247a907zg2afmbx1xlml5jkc6a9956zqbzp1";
-      name = "qtserialport-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtserialport-opensource-src-5.9.3.tar.xz";
+      sha256 = "1pxb679cx77vk39ik7j0k91a57wqa63d4g4riw3r2gpcay8kxpac";
+      name = "qtserialport-opensource-src-5.9.3.tar.xz";
     };
   };
   qtspeech = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtspeech-opensource-src-5.9.1.tar.xz";
-      sha256 = "00daxkf8iwf6n9rhkkv3isv5qa8wijwzb0zy1f6zlm3vcc8fz75c";
-      name = "qtspeech-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtspeech-opensource-src-5.9.3.tar.xz";
+      sha256 = "1c4rpf3by620fx8lrvmc38r60cikqczqh2rfcm7ixz3x8cj60lh1";
+      name = "qtspeech-opensource-src-5.9.3.tar.xz";
     };
   };
   qtsvg = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtsvg-opensource-src-5.9.1.tar.xz";
-      sha256 = "1rg2q4snh2g4n93zmk995swwkl0ab1jr9ka9xpj56ddifkw99wlr";
-      name = "qtsvg-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtsvg-opensource-src-5.9.3.tar.xz";
+      sha256 = "1wjx9ymk2h19l9kk76jh87bnhhj955f9a93akvwwzfwg1jk2hrnz";
+      name = "qtsvg-opensource-src-5.9.3.tar.xz";
     };
   };
   qttools = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qttools-opensource-src-5.9.1.tar.xz";
-      sha256 = "1s50kh3sg5wc5gqhwwznnibh7jcnfginnmkv66w62mm74k7mdsy4";
-      name = "qttools-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qttools-opensource-src-5.9.3.tar.xz";
+      sha256 = "1zw4j8ymwcpn7dx1dlbxpmx5lfp26rag7pysap1xry9m7vg3hb24";
+      name = "qttools-opensource-src-5.9.3.tar.xz";
     };
   };
   qttranslations = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qttranslations-opensource-src-5.9.1.tar.xz";
-      sha256 = "0sdjiqli15fmkbqvhhgjfavff906sg56jx5xf8bg6xzd2j5544ja";
-      name = "qttranslations-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qttranslations-opensource-src-5.9.3.tar.xz";
+      sha256 = "1ncvj1qlcgrm0zqdlq2bkb0hc8dyisz8m7bszxyx4kyxg7n5gb20";
+      name = "qttranslations-opensource-src-5.9.3.tar.xz";
     };
   };
   qtvirtualkeyboard = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtvirtualkeyboard-opensource-src-5.9.1.tar.xz";
-      sha256 = "0k79sqa8bg6gkbsk16320gnila1iiwpnl3vx03rysm5bqdnnlx3b";
-      name = "qtvirtualkeyboard-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtvirtualkeyboard-opensource-src-5.9.3.tar.xz";
+      sha256 = "1zrj4pjy98dskzycjswbkm4m2j6k1j4150h0w7vdrw1681s3ycdr";
+      name = "qtvirtualkeyboard-opensource-src-5.9.3.tar.xz";
     };
   };
   qtwayland = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwayland-opensource-src-5.9.1.tar.xz";
-      sha256 = "1yizvbmh26mx1ffq0qaci02g2wihy68ld0y7r3z8nx3v5acb236g";
-      name = "qtwayland-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtwayland-opensource-src-5.9.3.tar.xz";
+      sha256 = "0vazcmpqdka3llmyg7m99lw0ngrydmw74p9nd04544xdn128r3ih";
+      name = "qtwayland-opensource-src-5.9.3.tar.xz";
     };
   };
   qtwebchannel = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebchannel-opensource-src-5.9.1.tar.xz";
-      sha256 = "003h09mla82f2znb8jjigx13ivc68ikgv7w04594yy7qdmd5yhl0";
-      name = "qtwebchannel-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtwebchannel-opensource-src-5.9.3.tar.xz";
+      sha256 = "0n438mk01sh2bbqakc1m3s65qqmi75m4n4hymad8wcgijfr9a9v3";
+      name = "qtwebchannel-opensource-src-5.9.3.tar.xz";
     };
   };
   qtwebengine = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebengine-opensource-src-5.9.1.tar.xz";
-      sha256 = "00b4d18m54pbxa1hm6ijh2mrd4wmrs7lkplys8b4liw8j7mpx8zn";
-      name = "qtwebengine-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtwebengine-opensource-src-5.9.3.tar.xz";
+      sha256 = "0dqxawc9vfffz6ygdn5mdpl79rrqfx18jy2d1w81q9w7zm113bj5";
+      name = "qtwebengine-opensource-src-5.9.3.tar.xz";
     };
   };
   qtwebkit = {
@@ -291,43 +291,43 @@
     };
   };
   qtwebsockets = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebsockets-opensource-src-5.9.1.tar.xz";
-      sha256 = "0r1lya2jj3wfci82zfn0vk6vr8sk9k7xiphnkb0panhb8di769q1";
-      name = "qtwebsockets-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtwebsockets-opensource-src-5.9.3.tar.xz";
+      sha256 = "1phic630ah85ajxp6iqrw9bpg0y8s88y45ygkc1wcasmbgzrs1nf";
+      name = "qtwebsockets-opensource-src-5.9.3.tar.xz";
     };
   };
   qtwebview = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebview-opensource-src-5.9.1.tar.xz";
-      sha256 = "0qmxrh4y3i9n8x6yhrlnahcn75cc2xwlc8mi4g8n2d83c3x7pxyn";
-      name = "qtwebview-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtwebview-opensource-src-5.9.3.tar.xz";
+      sha256 = "1i99fy86gydpfsfc4my5d9vxjywfrzbqxk66cb3yf2ac57j66mpf";
+      name = "qtwebview-opensource-src-5.9.3.tar.xz";
     };
   };
   qtwinextras = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwinextras-opensource-src-5.9.1.tar.xz";
-      sha256 = "1x7f944f3g2ml3mm594qv6jlvl5dzzsxq86yinp7av0lhnyrxk0s";
-      name = "qtwinextras-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtwinextras-opensource-src-5.9.3.tar.xz";
+      sha256 = "1lj4qa51ymhpvk0bdp6xf6b3n1k39kihns5lvp6xq1w2mljn6phl";
+      name = "qtwinextras-opensource-src-5.9.3.tar.xz";
     };
   };
   qtx11extras = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtx11extras-opensource-src-5.9.1.tar.xz";
-      sha256 = "00fn3bps48gjyw0pdqvvl9scknxdpmacby6hvdrdccc3jll0wgd6";
-      name = "qtx11extras-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtx11extras-opensource-src-5.9.3.tar.xz";
+      sha256 = "1gpjgca4xvyy0r743kh2ys128r14fh6j8bdphnmmi5v2pf6bzq74";
+      name = "qtx11extras-opensource-src-5.9.3.tar.xz";
     };
   };
   qtxmlpatterns = {
-    version = "5.9.1";
+    version = "5.9.3";
     src = fetchurl {
-      url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtxmlpatterns-opensource-src-5.9.1.tar.xz";
-      sha256 = "094wwap2fsl23cys6rxh2ciw0gxbbiqbshnn4qs1n6xdjrj6i15m";
-      name = "qtxmlpatterns-opensource-src-5.9.1.tar.xz";
+      url = "${mirror}/official_releases/qt/5.9/5.9.3/submodules/qtxmlpatterns-opensource-src-5.9.3.tar.xz";
+      sha256 = "1fphhqr3v3vzjp2vbv16bc1vs879wn7aqlabgcpkhqx92ak6d76g";
+      name = "qtxmlpatterns-opensource-src-5.9.3.tar.xz";
     };
   };
 }
diff --git a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
index 17d3db65849e..eef2c7d24dfc 100644
--- a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
+++ b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
@@ -10,6 +10,11 @@ qmakeConfigurePhase() {
           NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?} \
           $qmakeFlags
 
+    if ! [[ -v enableParallelBuilding ]]; then
+        enableParallelBuilding=1
+        echo "qmake: enabled parallel building"
+    fi
+
     runHook postConfigure
 }
 
diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix
index 36238b5faddf..172b20bc51bb 100644
--- a/pkgs/development/libraries/qt-5/modules/qtbase.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix
@@ -3,7 +3,7 @@
   src, patches, version, qtCompatVersion,
 
   coreutils, bison, flex, gdb, gperf, lndir, patchelf, perl, pkgconfig, python2,
-  ruby,
+  ruby, which,
   # darwin support
   darwin, libiconv, libcxx,
 
@@ -84,7 +84,7 @@ stdenv.mkDerivation {
     ++ lib.optional (postgresql != null) postgresql;
 
   nativeBuildInputs =
-    [ bison flex gperf lndir perl pkgconfig python2 ]
+    [ bison flex gperf lndir perl pkgconfig python2 which ]
     ++ lib.optional (!stdenv.isDarwin) patchelf;
 
   propagatedNativeBuildInputs = [ lndir ];
diff --git a/pkgs/development/libraries/science/math/openblas/default.nix b/pkgs/development/libraries/science/math/openblas/default.nix
index 7edc39c11f5c..82f51bffa8e8 100644
--- a/pkgs/development/libraries/science/math/openblas/default.nix
+++ b/pkgs/development/libraries/science/math/openblas/default.nix
@@ -20,6 +20,14 @@ let
       USE_OPENMP = "1";
     };
 
+    aarch64-linux = {
+      BINARY = "64";
+      TARGET = "ARMV8";
+      DYNAMIC_ARCH = "1";
+      CC = "gcc";
+      USE_OPENMP = "1";
+    };
+
     i686-linux = {
       BINARY = "32";
       TARGET = "P2";
diff --git a/pkgs/development/libraries/taglib/1.9.nix b/pkgs/development/libraries/taglib/1.9.nix
index 71b8a764eed1..1caa8a376fb1 100644
--- a/pkgs/development/libraries/taglib/1.9.nix
+++ b/pkgs/development/libraries/taglib/1.9.nix
@@ -8,10 +8,9 @@ stdenv.mkDerivation rec {
     sha256 = "06n7gnbcqa3r6c9gv00y0y1r48dyyazm6yj403i7ma0r2k6p3lvj";
   };
 
-  cmakeFlags = "-DWITH_ASF=ON -DWITH_MP4=ON";
+  nativeBuildInputs = [ cmake ];
 
   buildInputs = [ zlib ];
-  nativeBuildInputs = [ cmake ];
 
   meta = {
     homepage = http://developer.kde.org/~wheeler/taglib.html;
diff --git a/pkgs/development/libraries/taglib/default.nix b/pkgs/development/libraries/taglib/default.nix
index 602aab852ccc..e4d7b426854c 100644
--- a/pkgs/development/libraries/taglib/default.nix
+++ b/pkgs/development/libraries/taglib/default.nix
@@ -1,24 +1,31 @@
 {stdenv, fetchurl, zlib, cmake}:
 
 stdenv.mkDerivation rec {
-  name = "taglib-1.10";
+  name = "taglib-1.11.1";
 
   src = fetchurl {
-    url = "http://taglib.github.io/releases/${name}.tar.gz";
-    sha256 = "1alv6vp72p0x9i9yscmz2a71anjwqy53y9pbcbqxvc1c0i82vhr4";
+    url = "http://taglib.org/releases/${name}.tar.gz";
+    sha256 = "0ssjcdjv4qf9liph5ry1kngam1y7zp8fzr9xv4wzzrma22kabldn";
   };
 
-  cmakeFlags = "-DWITH_ASF=ON -DWITH_MP4=ON";
+  nativeBuildInputs = [ cmake ];
 
   buildInputs = [ zlib ];
-  nativeBuildInputs = [ cmake ];
 
-  meta = {
-    homepage = http://developer.kde.org/~wheeler/taglib.html;
-    repositories.git = git://github.com/taglib/taglib.git;
+  cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
 
-    description = "A library for reading and editing the meta-data of several popular audio formats";
+  meta = with stdenv.lib; {
+    homepage = http://taglib.org/;
+    repositories.git = git://github.com/taglib/taglib.git;
+    description = "A library for reading and editing audio file metadata.";
+    longDescription = ''
+      TagLib is a library for reading and editing the meta-data of several
+      popular audio formats. Currently it supports both ID3v1 and ID3v2 for MP3
+      files, Ogg Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC,
+      Speex, WavPack, TrueAudio, WAV, AIFF, MP4 and ASF files.
+    '';
+    license = with licenses; [ lgpl3 mpl11 ];
     inherit (cmake.meta) platforms;
-    maintainers = [ ];
+    maintainers = with maintainers; [ ttuegel ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/alcotest/default.nix b/pkgs/development/ocaml-modules/alcotest/default.nix
index 90ee8d905a6e..80e34ecd06ac 100644
--- a/pkgs/development/ocaml-modules/alcotest/default.nix
+++ b/pkgs/development/ocaml-modules/alcotest/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, opam, jbuilder
+{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, jbuilder
 , cmdliner, astring, fmt, result
 }:
 
@@ -12,7 +12,7 @@ let param =
   } else {
     version = "0.7.2";
     sha256 = "1qgsz2zz5ky6s5pf3j3shc4fjc36rqnjflk8x0wl1fcpvvkr52md";
-    buildInputs = [ ocamlbuild opam topkg ];
+    buildInputs = [ ocamlbuild topkg ];
     inherit (topkg) buildPhase installPhase;
   };
 in
diff --git a/pkgs/development/ocaml-modules/asn1-combinators/default.nix b/pkgs/development/ocaml-modules/asn1-combinators/default.nix
index feeb94a5c462..65a310c9cf04 100644
--- a/pkgs/development/ocaml-modules/asn1-combinators/default.nix
+++ b/pkgs/development/ocaml-modules/asn1-combinators/default.nix
@@ -1,6 +1,4 @@
-{ stdenv, buildOcaml, fetchFromGitHub, ocaml, findlib, cstruct, zarith, ounit, result, topkg, opam }:
-
-let ocamlFlags = "-I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/"; in
+{ stdenv, buildOcaml, fetchFromGitHub, ocaml, findlib, cstruct, zarith, ounit, result, topkg }:
 
 buildOcaml rec {
   name = "asn1-combinators";
@@ -15,20 +13,17 @@ buildOcaml rec {
     sha256 = "0hpn049i46sdnv2i6m7r6m6ch0jz8argybh71wykbvcqdby08zxj";
   };
 
-  buildInputs = [ ocaml findlib ounit topkg opam ];
+  buildInputs = [ ocaml findlib ounit topkg ];
   propagatedBuildInputs = [ result cstruct zarith ];
 
   createFindlibDestdir = true;
 
-  buildPhase = "ocaml ${ocamlFlags} pkg/pkg.ml build --tests true";
+  buildPhase = "${topkg.run} build --tests true";
 
-  installPhase = ''
-    opam-installer --script --prefix=$out | sh
-    ln -s $out/lib/asn1-combinators $out/lib/ocaml/${ocaml.version}/site-lib
-  '';
+  inherit (topkg) installPhase;
 
   doCheck = true;
-  checkPhase = "ocaml ${ocamlFlags} pkg/pkg.ml test";
+  checkPhase = "${topkg.run} test";
 
   meta = {
     homepage = https://github.com/mirleft/ocaml-asn1-combinators;
diff --git a/pkgs/development/ocaml-modules/astring/default.nix b/pkgs/development/ocaml-modules/astring/default.nix
index d172b0f74639..97c59d8581fb 100644
--- a/pkgs/development/ocaml-modules/astring/default.nix
+++ b/pkgs/development/ocaml-modules/astring/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg, opam}:
+{ stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg }:
 
 buildOcaml rec {
   version = "0.8.3";
@@ -11,16 +11,9 @@ buildOcaml rec {
 
   unpackCmd = "tar -xf $curSrc";
 
-  buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
-  buildPhase = ''
-    ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build
-  '';
-
-  installPhase = ''
-    opam-installer --script --prefix=$out astring.install | sh
-    ln -s $out/lib/astring $out/lib/ocaml/${ocaml.version}/site-lib/
-  '';
+  inherit (topkg) buildPhase installPhase;
 
   meta = {
     homepage = http://erratique.ch/software/astring;
diff --git a/pkgs/development/ocaml-modules/bos/default.nix b/pkgs/development/ocaml-modules/bos/default.nix
index f8590de2b155..3cb9b405d5a2 100644
--- a/pkgs/development/ocaml-modules/bos/default.nix
+++ b/pkgs/development/ocaml-modules/bos/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg
 , astring, fmt, fpath, logs, rresult
 }:
 
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
 	unpackCmd = "tar xjf $src";
 
-	buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+	buildInputs = [ ocaml findlib ocamlbuild topkg ];
 	propagatedBuildInputs = [ astring fmt fpath logs rresult ];
 
 	inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/ocaml-cairo2/default.nix b/pkgs/development/ocaml-modules/cairo2/default.nix
index d9cab2a759da..b37dd413f693 100644
--- a/pkgs/development/ocaml-modules/ocaml-cairo2/default.nix
+++ b/pkgs/development/ocaml-modules/cairo2/default.nix
@@ -6,17 +6,16 @@
 
 let
   inherit (stdenv.lib) optionals;
-  pname = "ocaml-cairo2";
-  version = "0.4.6";
+  version = "0.5";
 in
 
 stdenv.mkDerivation {
 
-  name = "${pname}-${version}";
+  name = "ocaml${ocaml.version}-cairo2-${version}";
 
   src = fetchurl {
-    url = "http://forge.ocamlcore.org/frs/download.php/1279/cairo2-0.4.6.tar.gz";
-    sha256 = "1lc1iv5yz49avbc0wbrw9nrx8dn0c35r7cykivjln1zc2fwscf7w";
+    url = "https://github.com/Chris00/ocaml-cairo/releases/download/${version}/cairo2-${version}.tar.gz";
+    sha256 = "1559df74rzh4v7c9hr6phymq1f5121s83q0xy3r83x4apj74dchj";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -39,7 +38,7 @@ stdenv.mkDerivation {
   installPhase = "ocaml setup.ml -install";
 
   meta = with stdenv.lib; {
-    homepage = http://forge.ocamlcore.org/projects/cairo;
+    homepage = "https://github.com/Chris00/ocaml-cairo";
     description = "Binding to Cairo, a 2D Vector Graphics Library";
     longDescription = ''
       This is a binding to Cairo, a 2D graphics library with support for
diff --git a/pkgs/development/ocaml-modules/cmdliner/default.nix b/pkgs/development/ocaml-modules/cmdliner/default.nix
index 2e2abe897e0f..4b055a130fd2 100644
--- a/pkgs/development/ocaml-modules/cmdliner/default.nix
+++ b/pkgs/development/ocaml-modules/cmdliner/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, result }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, result }:
 
 let
   pname = "cmdliner";
@@ -17,20 +17,11 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  nativeBuildInputs = [ ocamlbuild opam topkg ];
+  nativeBuildInputs = [ ocamlbuild topkg ];
   buildInputs = [ ocaml findlib ];
   propagatedBuildInputs = [ result ];
 
-  createFindlibDestdir = true;
-
-  buildPhase = ''
-    ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib pkg/pkg.ml build
-  '';
-
-  installPhase = ''
-    opam-installer --script --prefix=$out | sh
-    ln -s $out/lib/${pname} $out/lib/ocaml/${ocaml.version}/site-lib/
-  '';
+  inherit (topkg) buildPhase installPhase;
 
   meta = with stdenv.lib; {
     homepage = http://erratique.ch/software/cmdliner;
diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix
index 3e571dd791ad..ef92a005c773 100644
--- a/pkgs/development/ocaml-modules/cohttp/default.nix
+++ b/pkgs/development/ocaml-modules/cohttp/default.nix
@@ -4,14 +4,14 @@
 }:
 
 stdenv.mkDerivation rec {
-	version = "0.99.0";
+	version = "1.0.0";
 	name = "ocaml${ocaml.version}-cohttp-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
 		repo = "ocaml-cohttp";
 		rev = "v${version}";
-		sha256 = "0y8qhzfwrc6486apmp2rsj822cnfhnz4w8rsb52w5wqmsgjxx1bj";
+		sha256 = "0h9ak2bvhmcdxickvybpg45il33xszh2ksacpjgqrnnslxnh81ig";
 	};
 
 	buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ];
diff --git a/pkgs/development/ocaml-modules/cow/default.nix b/pkgs/development/ocaml-modules/cow/default.nix
index eaf07818aeb9..4832f5c39af3 100644
--- a/pkgs/development/ocaml-modules/cow/default.nix
+++ b/pkgs/development/ocaml-modules/cow/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, ocaml, findlib
-, ocamlbuild, topkg, opam
+, ocamlbuild, topkg
 , uri, xmlm, omd, ezjsonm }:
 
 stdenv.mkDerivation rec {
@@ -13,9 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "0snhabg7rfrrcq2ksr3qghiawd61cw3y4kp6rl7vs87j4cnk3kr2";
   };
 
-  createFindlibDestdir = true;
-
-  buildInputs = [ ocaml opam ocamlbuild findlib topkg ];
+  buildInputs = [ ocaml ocamlbuild findlib topkg ];
   propagatedBuildInputs = [ xmlm uri ezjsonm omd ];
 
   inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/cpuid/default.nix b/pkgs/development/ocaml-modules/cpuid/default.nix
index 1bdf70e86c5a..37400856f1ae 100644
--- a/pkgs/development/ocaml-modules/cpuid/default.nix
+++ b/pkgs/development/ocaml-modules/cpuid/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, ocb-stubblr }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ocb-stubblr }:
 
 stdenv.mkDerivation {
   name = "ocaml${ocaml.version}-cpuid-0.1.0";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg ocb-stubblr ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ];
 
   inherit (topkg) buildPhase installPhase;
 
diff --git a/pkgs/development/ocaml-modules/decompress/default.nix b/pkgs/development/ocaml-modules/decompress/default.nix
index 389a136aae6b..70ec7fd34ae1 100644
--- a/pkgs/development/ocaml-modules/decompress/default.nix
+++ b/pkgs/development/ocaml-modules/decompress/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg, opam
+{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg
 }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.03"
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
 		sha256 = "0hfs5zrvimzvjwdg57vrxx9bb7irvlm07dk2yv3s5qhj30zimd08";
 	};
 
-	buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
+	buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
 	inherit (topkg) buildPhase installPhase;
 
diff --git a/pkgs/development/ocaml-modules/fmt/default.nix b/pkgs/development/ocaml-modules/fmt/default.nix
index 0d6ab72fadee..2e7996f55d9d 100644
--- a/pkgs/development/ocaml-modules/fmt/default.nix
+++ b/pkgs/development/ocaml-modules/fmt/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, cmdliner, result, uchar }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, cmdliner, result, uchar }:
 
 stdenv.mkDerivation {
   name = "ocaml${ocaml.version}-fmt-0.8.4";
@@ -10,13 +10,11 @@ stdenv.mkDerivation {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg cmdliner ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
   propagatedBuildInputs = [ result uchar ];
 
   inherit (topkg) buildPhase installPhase;
 
-  createFindlibDestdir = true;
-
   meta = {
     homepage = http://erratique.ch/software/fmt;
     license = stdenv.lib.licenses.isc;
diff --git a/pkgs/development/ocaml-modules/fpath/default.nix b/pkgs/development/ocaml-modules/fpath/default.nix
index c5382ddd2656..f812ab1d48c0 100644
--- a/pkgs/development/ocaml-modules/fpath/default.nix
+++ b/pkgs/development/ocaml-modules/fpath/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, astring }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, astring }:
 
 stdenv.mkDerivation {
   name = "ocaml${ocaml.version}-fpath-0.7.2";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
   propagatedBuildInputs = [ astring ];
 
diff --git a/pkgs/development/ocaml-modules/functoria/default.nix b/pkgs/development/ocaml-modules/functoria/default.nix
index 2d8c00c72383..150d8db16a04 100644
--- a/pkgs/development/ocaml-modules/functoria/default.nix
+++ b/pkgs/development/ocaml-modules/functoria/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg
 , bos, cmdliner, ocamlgraph
 }:
 
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
 	unpackCmd = "tar xjf $src";
 
-	buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+	buildInputs = [ ocaml findlib ocamlbuild topkg ];
 	propagatedBuildInputs = [ bos cmdliner ocamlgraph ];
 
 	inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/git-http/default.nix b/pkgs/development/ocaml-modules/git-http/default.nix
index 5b93b9607658..fc5591483d2b 100644
--- a/pkgs/development/ocaml-modules/git-http/default.nix
+++ b/pkgs/development/ocaml-modules/git-http/default.nix
@@ -15,5 +15,6 @@ stdenv.mkDerivation rec {
 	meta = {
 		description = "Client implementation of the “Smart” HTTP Git protocol in pure OCaml";
 		inherit (git.meta) homepage license maintainers platforms;
+		broken = true;
 	};
 }
diff --git a/pkgs/development/ocaml-modules/integers/default.nix b/pkgs/development/ocaml-modules/integers/default.nix
index e76c3aadc039..f7d22baf3e9e 100644
--- a/pkgs/development/ocaml-modules/integers/default.nix
+++ b/pkgs/development/ocaml-modules/integers/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
 
 stdenv.mkDerivation {
 	name = "ocaml${ocaml.version}-integers-0.2.2";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
 	unpackCmd = "tar xjf $src";
 
-	buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
+	buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
 	inherit (topkg) buildPhase installPhase;
 
diff --git a/pkgs/development/ocaml-modules/jsonm/default.nix b/pkgs/development/ocaml-modules/jsonm/default.nix
index 2bdaf6556486..0599a5f19fec 100644
--- a/pkgs/development/ocaml-modules/jsonm/default.nix
+++ b/pkgs/development/ocaml-modules/jsonm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam, uutf }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uutf }:
 
 let version = "1.0.1"; in
 
@@ -10,13 +10,11 @@ stdenv.mkDerivation {
     sha256 = "1176dcmxb11fnw49b7yysvkjh0kpzx4s48lmdn5psq9vshp5c29w";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg ];
   propagatedBuildInputs = [ uutf ];
 
   unpackCmd = "tar xjf $src";
 
-  createFindlibDestdir = true;
-
   inherit (topkg) buildPhase installPhase;
 
   meta = {
diff --git a/pkgs/development/ocaml-modules/logs/default.nix b/pkgs/development/ocaml-modules/logs/default.nix
index ab0b6c8579bd..aead4b4756f3 100644
--- a/pkgs/development/ocaml-modules/logs/default.nix
+++ b/pkgs/development/ocaml-modules/logs/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild
 , topkg, result, lwt, cmdliner, fmt }:
 let
   pname = "logs";
@@ -18,18 +18,13 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg fmt cmdliner lwt ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg fmt cmdliner lwt ];
   propagatedBuildInputs = [ result ];
 
-  buildPhase = ''
-    ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build \
-      --with-js_of_ocaml false
-    '';
+  buildPhase = "${topkg.run} build --with-js_of_ocaml false";
 
   inherit (topkg) installPhase;
 
-  createFindlibDestdir = true;
-
   meta = with stdenv.lib; {
     description = "Logging infrastructure for OCaml";
     homepage = "${webpage}";
diff --git a/pkgs/development/ocaml-modules/mtime/default.nix b/pkgs/development/ocaml-modules/mtime/default.nix
index 534bb4de48ca..69921537f5b5 100644
--- a/pkgs/development/ocaml-modules/mtime/default.nix
+++ b/pkgs/development/ocaml-modules/mtime/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam, js_of_ocaml
+{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, topkg, js_of_ocaml
 , jsooSupport ? true
 }:
 
@@ -25,7 +25,7 @@ stdenv.mkDerivation {
 
   unpackCmd = "tar xjf $src";
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg ]
+  buildInputs = [ ocaml findlib ocamlbuild topkg ]
   ++ stdenv.lib.optional jsooSupport js_of_ocaml;
 
   buildPhase = "${topkg.buildPhase} --with-js_of_ocaml ${boolToString jsooSupport}";
diff --git a/pkgs/development/ocaml-modules/nocrypto/default.nix b/pkgs/development/ocaml-modules/nocrypto/default.nix
index a7fa59e14469..cfe3f37800de 100644
--- a/pkgs/development/ocaml-modules/nocrypto/default.nix
+++ b/pkgs/development/ocaml-modules/nocrypto/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, opam, topkg
+{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg
 , cpuid, ocb-stubblr
 , cstruct, zarith, ppx_sexp_conv, sexplib
 , cstruct-lwt ? null
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
     sha256 = "0nhnlpbqh3mf9y2cxivlvfb70yfbdpvg6jslzq64xblpgjyg443p";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild topkg opam cpuid ocb-stubblr
+  buildInputs = [ ocaml findlib ocamlbuild topkg cpuid ocb-stubblr
     ppx_sexp_conv ];
   propagatedBuildInputs = [ cstruct zarith sexplib ] ++ optional withLwt cstruct-lwt;
 
@@ -28,8 +28,6 @@ stdenv.mkDerivation rec {
   '';
   inherit (topkg) installPhase;
 
-  createFindlibDestdir = true;
-
   meta = {
     homepage = https://github.com/mirleft/ocaml-nocrypto;
     description = "Simplest possible crypto to support TLS";
diff --git a/pkgs/development/ocaml-modules/notty/default.nix b/pkgs/development/ocaml-modules/notty/default.nix
index 950395bd7eaa..dcc57fddaf68 100644
--- a/pkgs/development/ocaml-modules/notty/default.nix
+++ b/pkgs/development/ocaml-modules/notty/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildOcaml, fetchpatch, fetchFromGitHub, findlib, topkg, opam, ocb-stubblr
+{ stdenv, buildOcaml, fetchpatch, fetchFromGitHub, findlib, topkg, ocb-stubblr
 , result, uucp, uuseg, uutf
 , lwt     ? null }:
 
@@ -24,7 +24,7 @@ buildOcaml rec {
     sha256 = "0pklplbnjbsjriqj73pc8fsadg404px534w7zknz2617zb44m6x6";
   })];
 
-  buildInputs = [ findlib opam topkg ocb-stubblr ];
+  buildInputs = [ findlib topkg ocb-stubblr ];
   propagatedBuildInputs = [ result uucp uuseg uutf ] ++
                           optional withLwt lwt;
 
diff --git a/pkgs/development/ocaml-modules/ocb-stubblr/default.nix b/pkgs/development/ocaml-modules/ocb-stubblr/default.nix
index bb4b24cec67d..4071cb8a639d 100644
--- a/pkgs/development/ocaml-modules/ocb-stubblr/default.nix
+++ b/pkgs/development/ocaml-modules/ocb-stubblr/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, opam, topkg, astring }:
+{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, astring }:
 
 stdenv.mkDerivation {
   name = "ocaml${ocaml.version}-ocb-stubblr-0.1.0";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   patches = [ ./pkg-config.patch ];
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
   propagatedBuildInputs = [ astring ];
 
diff --git a/pkgs/development/ocaml-modules/octavius/default.nix b/pkgs/development/ocaml-modules/octavius/default.nix
index f1668160df19..57e3c9bfa745 100644
--- a/pkgs/development/ocaml-modules/octavius/default.nix
+++ b/pkgs/development/ocaml-modules/octavius/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.03"
 then throw "octavius is not available for OCaml ${ocaml.version}" else
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
 	unpackCmd = "tar xjf $src";
 
-	buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
+	buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
 	inherit (topkg) buildPhase installPhase;
 
diff --git a/pkgs/development/ocaml-modules/otfm/default.nix b/pkgs/development/ocaml-modules/otfm/default.nix
index 5deef60520bd..05c25c81d5a0 100644
--- a/pkgs/development/ocaml-modules/otfm/default.nix
+++ b/pkgs/development/ocaml-modules/otfm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, uutf, result }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uutf, result }:
 
 let
   pname = "otfm";
@@ -17,12 +17,10 @@ stdenv.mkDerivation rec {
     sha256 = "054s82539k3kc9na6s47g3scsl04icjahpas7pv5351jmsgqcq3k";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
   propagatedBuildInputs = [ uutf result ];
 
-  createFindlibDestdir = true;
-
   unpackCmd = "tar xjf $src";
 
   inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/otr/default.nix b/pkgs/development/ocaml-modules/otr/default.nix
index 39e7ce754d27..189b3adf8739 100644
--- a/pkgs/development/ocaml-modules/otr/default.nix
+++ b/pkgs/development/ocaml-modules/otr/default.nix
@@ -1,7 +1,6 @@
-{stdenv, buildOcaml, fetchFromGitHub, ocamlbuild, findlib, topkg, ocaml, opam,
- ppx_tools, ppx_sexp_conv, cstruct, ppx_cstruct, sexplib, result, nocrypto, astring}:
-
-let ocamlFlags = "-I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/"; in
+{ stdenv, buildOcaml, fetchFromGitHub, ocamlbuild, findlib, topkg, ocaml
+, ppx_tools, ppx_sexp_conv, cstruct, ppx_cstruct, sexplib, result, nocrypto, astring
+}:
 
 buildOcaml rec {
   name = "otr";
@@ -16,23 +15,15 @@ buildOcaml rec {
     sha256 = "07zzix5mfsasqpqdx811m0x04gp8mq1ayf4b64998k98027v01rr";
   };
 
-  buildInputs = [ ocamlbuild findlib topkg ppx_tools ppx_sexp_conv opam ppx_cstruct ];
+  buildInputs = [ ocamlbuild findlib topkg ppx_tools ppx_sexp_conv ppx_cstruct ];
   propagatedBuildInputs = [ cstruct sexplib result nocrypto astring ];
 
-  buildPhase = ''
-    ocaml ${ocamlFlags} pkg/pkg.ml build \
-      --tests true
-  '';
+  buildPhase = "${topkg.run} build --tests true";
 
-  installPhase = ''
-    opam-installer --prefix=$out --script | sh
-    ln -s $out/lib/otr $out/lib/ocaml/${ocaml.version}/site-lib
-  '';
+  inherit (topkg) installPhase;
 
   doCheck = true;
-  checkPhase = "ocaml ${ocamlFlags} pkg/pkg.ml test";
-
-  createFindlibDestdir = true;
+  checkPhase = "${topkg.run} test";
 
   meta = with stdenv.lib; {
     homepage = https://github.com/hannesm/ocaml-otr;
diff --git a/pkgs/development/ocaml-modules/ppx_deriving_yojson/default.nix b/pkgs/development/ocaml-modules/ppx_deriving_yojson/default.nix
index 10f9df04f38c..fb06fd7f935f 100644
--- a/pkgs/development/ocaml-modules/ppx_deriving_yojson/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_deriving_yojson/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, opam, topkg, cppo
+{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg, cppo
 , ppx_import, ppx_deriving, yojson, ounit
 }:
 
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "1pwfnq7z60nchba4gnf58918ll11w3gj5i88qhz1p2jm45hxqgnw";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam cppo ounit ppx_import ];
+  buildInputs = [ ocaml findlib ocamlbuild cppo ounit ppx_import ];
 
   propagatedBuildInputs = [ ppx_deriving yojson ];
 
diff --git a/pkgs/development/ocaml-modules/ptime/default.nix b/pkgs/development/ocaml-modules/ptime/default.nix
index bb4bbef516c8..2e3a627a3d1c 100644
--- a/pkgs/development/ocaml-modules/ptime/default.nix
+++ b/pkgs/development/ocaml-modules/ptime/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg, result, opam, js_of_ocaml }:
+{ stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg, result, js_of_ocaml }:
 
 buildOcaml rec {
   version = "0.8.3";
@@ -11,13 +11,11 @@ buildOcaml rec {
 
   unpackCmd = "tar -xf $curSrc";
 
-  buildInputs = [ ocaml findlib ocamlbuild topkg opam js_of_ocaml ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg js_of_ocaml ];
 
   propagatedBuildInputs = [ result ];
 
-  buildPhase = ''
-    ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build --with-js_of_ocaml true
-  '';
+  buildPhase = "${topkg.run} build --with-js_of_ocaml true";
 
   inherit (topkg) installPhase;
 
diff --git a/pkgs/development/ocaml-modules/react/default.nix b/pkgs/development/ocaml-modules/react/default.nix
index 5a720aead806..920ee05244a1 100644
--- a/pkgs/development/ocaml-modules/react/default.nix
+++ b/pkgs/development/ocaml-modules/react/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild, opam }:
+{ stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild }:
 
 stdenv.mkDerivation {
   name = "ocaml-react-1.2.1";
@@ -9,9 +9,7 @@ stdenv.mkDerivation {
   };
 
   unpackCmd = "tar xjf $src";
-  buildInputs = [ ocaml findlib topkg ocamlbuild opam ];
-
-  createFindlibDestdir = true;
+  buildInputs = [ ocaml findlib topkg ocamlbuild ];
 
   inherit (topkg) buildPhase installPhase;
 
diff --git a/pkgs/development/ocaml-modules/rresult/default.nix b/pkgs/development/ocaml-modules/rresult/default.nix
index f9951b56da2d..d1a796a58e51 100644
--- a/pkgs/development/ocaml-modules/rresult/default.nix
+++ b/pkgs/development/ocaml-modules/rresult/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
 
 stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-rresult-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
 
 	unpackCmd = "tar xjf $src";
 
-	buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
+	buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
 	inherit (topkg) buildPhase installPhase;
 
diff --git a/pkgs/development/ocaml-modules/topkg/default.nix b/pkgs/development/ocaml-modules/topkg/default.nix
index ecd806ecadc9..9a655e055131 100644
--- a/pkgs/development/ocaml-modules/topkg/default.nix
+++ b/pkgs/development/ocaml-modules/topkg/default.nix
@@ -1,9 +1,25 @@
+/* Topkg is a packager for distributing OCaml software. This derivation
+provides facilities to describe derivations for OCaml libraries
+using topkg.
+The `buildPhase` and `installPhase` attributes can be reused directly
+in many cases. When more fine-grained control on how to run the “topkg”
+build system is required, the attribute `run` can be used.
+*/
 { stdenv, fetchurl, ocaml, findlib, ocamlbuild, result, opam }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.01"
 then throw "topkg is not available for OCaml ${ocaml.version}"
 else
 
+let
+/* This command allows to run the “topkg” build system.
+ * It is usually called with `build` or `test` as argument.
+ * Packages that use `topkg` may call this command as part of
+ *  their `buildPhase` or `checkPhase`.
+*/
+  run = "ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml";
+in
+
 stdenv.mkDerivation rec {
   name = "ocaml${ocaml.version}-topkg-${version}";
   version = "0.9.1";
@@ -13,14 +29,15 @@ stdenv.mkDerivation rec {
     sha256 = "1slrzbmyp81xhgsfwwqs2d6gxzvqx0gcp34rq00h5iblhcq7myx6";
   };
 
-  nativeBuildInputs = [ opam ];
   buildInputs = [ ocaml findlib ocamlbuild ];
   propagatedBuildInputs = [ result ];
 
   unpackCmd = "tar xjf ${src}";
-  buildPhase = "ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build";
+  buildPhase = "${run} build";
   createFindlibDestdir = true;
-  installPhase = "opam-installer -i --prefix=$out --libdir=$OCAMLFIND_DESTDIR";
+  installPhase = "${opam}/bin/opam-installer -i --prefix=$out --libdir=$OCAMLFIND_DESTDIR";
+
+  passthru = { inherit run; };
 
   meta = {
     homepage = http://erratique.ch/software/topkg;
diff --git a/pkgs/development/ocaml-modules/tsdl/default.nix b/pkgs/development/ocaml-modules/tsdl/default.nix
index 1b90a539ac8c..4230d098e0da 100644
--- a/pkgs/development/ocaml-modules/tsdl/default.nix
+++ b/pkgs/development/ocaml-modules/tsdl/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ctypes, result, SDL2, pkgconfig, opam, ocb-stubblr }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ctypes, result, SDL2, pkgconfig, ocb-stubblr }:
 
 if !stdenv.lib.versionAtLeast ocaml.version "4.02"
 then throw "tsdl is not available for OCaml ${ocaml.version}"
@@ -19,11 +19,9 @@ stdenv.mkDerivation {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ocaml findlib ocamlbuild topkg result opam ocb-stubblr ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg result ocb-stubblr ];
   propagatedBuildInputs = [ SDL2 ctypes ];
 
-  createFindlibDestdir = true;
-
   unpackCmd = "tar xjf $src";
 
   preConfigure = ''
diff --git a/pkgs/development/ocaml-modules/uucd/default.nix b/pkgs/development/ocaml-modules/uucd/default.nix
index 89d9d545e57d..60429ca4b401 100644
--- a/pkgs/development/ocaml-modules/uucd/default.nix
+++ b/pkgs/development/ocaml-modules/uucd/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, xmlm, topkg }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, xmlm, topkg }:
 
 let
   pname = "uucd";
@@ -13,9 +13,7 @@ stdenv.mkDerivation rec {
     sha256 = "0cdyg6vaic4n58w80qriwvaq1c40ng3fh74ilxrwajbq163k055q";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
-
-  createFindlibDestdir = true;
+  buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
   unpackCmd = "tar xjf $src";
 
diff --git a/pkgs/development/ocaml-modules/uucp/default.nix b/pkgs/development/ocaml-modules/uucp/default.nix
index cf5b05492330..66f1ebeba949 100644
--- a/pkgs/development/ocaml-modules/uucp/default.nix
+++ b/pkgs/development/ocaml-modules/uucp/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, uchar, uutf, uunf }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uchar, uutf, uunf }:
 
 let
   pname = "uucp";
@@ -17,12 +17,10 @@ stdenv.mkDerivation {
     sha256 = "0qgbrx3lnrzii8a9f0hv4kp73y57q6fr79hskxxxs70q68j2xpfm";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg uutf uunf ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg uutf uunf ];
 
   propagatedBuildInputs = [ uchar ];
 
-  createFindlibDestdir = true;
-
   unpackCmd = "tar xjf $src";
 
   buildPhase = "${topkg.buildPhase} --with-cmdliner false";
diff --git a/pkgs/development/ocaml-modules/uuidm/default.nix b/pkgs/development/ocaml-modules/uuidm/default.nix
index 5a1689eaeebd..b295143c0bc3 100644
--- a/pkgs/development/ocaml-modules/uuidm/default.nix
+++ b/pkgs/development/ocaml-modules/uuidm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam, cmdliner }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, cmdliner }:
 
 stdenv.mkDerivation rec {
   version = "0.9.6";
@@ -10,12 +10,10 @@ stdenv.mkDerivation rec {
 
   unpackCmd = "tar -xf $curSrc";
 
-  buildInputs = [ ocaml findlib ocamlbuild topkg opam cmdliner ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
 
   inherit (topkg) buildPhase installPhase;
 
-  createFindlibDestdir = true;
-
   meta = with stdenv.lib; {
     description = "An OCaml module implementing 128 bits universally unique identifiers version 3, 5 (name based with MD5, SHA-1 hashing) and 4 (random based) according to RFC 4122";
     homepage = http://erratique.ch/software/uuidm;
diff --git a/pkgs/development/ocaml-modules/uunf/default.nix b/pkgs/development/ocaml-modules/uunf/default.nix
index d65f002ebef3..e70a539302f0 100644
--- a/pkgs/development/ocaml-modules/uunf/default.nix
+++ b/pkgs/development/ocaml-modules/uunf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, uchar, uutf, cmdliner }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uchar, uutf, cmdliner }:
 let
   pname = "uunf";
   webpage = "http://erratique.ch/software/${pname}";
@@ -15,12 +15,10 @@ stdenv.mkDerivation rec {
     sha256 = "0c5lwica5668ybsffllk6x4p921nw4pljimgqikhf17k5hvyjsbr";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg uutf cmdliner ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg uutf cmdliner ];
 
   propagatedBuildInputs = [ uchar ];
 
-  createFindlibDestdir = true;
-
   unpackCmd = "tar xjf $src";
 
   inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/uuseg/default.nix b/pkgs/development/ocaml-modules/uuseg/default.nix
index f55b757eb268..f27612510c38 100644
--- a/pkgs/development/ocaml-modules/uuseg/default.nix
+++ b/pkgs/development/ocaml-modules/uuseg/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, uchar, uucp, uutf, cmdliner }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uchar, uucp, uutf, cmdliner }:
 
 let
   pname = "uuseg";
@@ -15,11 +15,9 @@ stdenv.mkDerivation rec {
     sha256 = "01q8ljjgi7d73x7ms489b5my83xds4jax1vbjhwwjdai01friscc";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam cmdliner topkg uutf ];
+  buildInputs = [ ocaml findlib ocamlbuild cmdliner topkg uutf ];
   propagatedBuildInputs = [ uucp uchar ];
 
-  createFindlibDestdir = true;
-
   unpackCmd = "tar xjf $src";
 
   inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/uutf/default.nix b/pkgs/development/ocaml-modules/uutf/default.nix
index 93e3fd9c9d2e..95ec93d8584b 100644
--- a/pkgs/development/ocaml-modules/uutf/default.nix
+++ b/pkgs/development/ocaml-modules/uutf/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, cmdliner , topkg, uchar }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, cmdliner , topkg, uchar }:
 let
   pname = "uutf";
   webpage = "http://erratique.ch/software/${pname}";
@@ -13,11 +13,9 @@ stdenv.mkDerivation rec {
     sha256 = "1gp96dcggq7s84934vimxh89caaxa77lqiff1yywbwkilkkjcfqj";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild topkg opam cmdliner ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
   propagatedBuildInputs = [ uchar ];
 
-  createFindlibDestdir = true;
-
   unpackCmd = "tar xjf $src";
 
   inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/vg/default.nix b/pkgs/development/ocaml-modules/vg/default.nix
index 0ef3ef4939b9..8a8668df74ee 100644
--- a/pkgs/development/ocaml-modules/vg/default.nix
+++ b/pkgs/development/ocaml-modules/vg/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
+{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, topkg
 , uchar, result, gg, uutf, otfm
 , js_of_ocaml, js_of_ocaml-ocamlbuild, js_of_ocaml-ppx,
   pdfBackend ? true, # depends on uutf and otfm
@@ -26,14 +26,12 @@ stdenv.mkDerivation rec {
     sha256 = "1czd2fq85hy24w5pllarsq4pvbx9rda5zdikxfxdng8s9kff2h3f";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
+  buildInputs = [ ocaml findlib ocamlbuild topkg ];
 
   propagatedBuildInputs = [ uchar result gg ]
                           ++ optionals pdfBackend [ uutf otfm ]
                           ++ optionals htmlcBackend [ js_of_ocaml js_of_ocaml-ocamlbuild js_of_ocaml-ppx ];
 
-  createFindlibDestdir = true;
-
   unpackCmd = "tar xjf $src";
 
   buildPhase = topkg.buildPhase
diff --git a/pkgs/development/ocaml-modules/xmlm/default.nix b/pkgs/development/ocaml-modules/xmlm/default.nix
index 7f5bcb03ad6c..9d3a0b1bb4d0 100644
--- a/pkgs/development/ocaml-modules/xmlm/default.nix
+++ b/pkgs/development/ocaml-modules/xmlm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
 let
   pname = "xmlm";
   webpage = "http://erratique.ch/software/${pname}";
@@ -30,19 +30,12 @@ stdenv.mkDerivation rec {
     inherit (param) sha256;
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild opam ] ++ param.buildInputs;
-
-  createFindlibDestdir = true;
+  buildInputs = [ ocaml findlib ocamlbuild ] ++ param.buildInputs;
 
   unpackCmd = "tar xjf $src";
 
   inherit (param) buildPhase;
-
-  installPhase = ''
-    opam-installer --script --prefix=$out ${pname}.install > install.sh
-    sh install.sh
-    ln -s $out/lib/${pname} $out/lib/ocaml/${ocaml.version}/site-lib/
-  '';
+  inherit (topkg) installPhase;
 
   meta = with stdenv.lib; {
     description = "An OCaml streaming codec to decode and encode the XML data format";
diff --git a/pkgs/development/python-modules/TurboCheetah/default.nix b/pkgs/development/python-modules/TurboCheetah/default.nix
new file mode 100644
index 000000000000..45c42a7b43f9
--- /dev/null
+++ b/pkgs/development/python-modules/TurboCheetah/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, cheetah
+, nose
+}:
+
+buildPythonPackage rec {
+  pname = "TurboCheetah";
+  version = "1.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "9e4c7ecb0d061bfb58281363ee1b09337083f013a8b4d0355326a5d8668f450c";
+  };
+
+  propagatedBuildInputs = [ cheetah ];
+
+  checkInputs = [ nose ];
+
+  meta = {
+    description = "TurboGears plugin to support use of Cheetah templates";
+    homepage = http://docs.turbogears.org/TurboCheetah;
+    license = lib.licenses.mit;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/backports_shutil_get_terminal_size/default.nix b/pkgs/development/python-modules/backports_shutil_get_terminal_size/default.nix
new file mode 100644
index 000000000000..7f4faa8a8b47
--- /dev/null
+++ b/pkgs/development/python-modules/backports_shutil_get_terminal_size/default.nix
@@ -0,0 +1,26 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, pytest
+, pythonOlder
+}:
+
+if !(pythonOlder "3.3") then null else buildPythonPackage rec {
+  pname = "backports.shutil_get_terminal_size";
+  version = "1.0.0";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "713e7a8228ae80341c70586d1cc0a8caa5207346927e23d09dcbcaf18eadec80";
+  };
+
+  checkInputs = [
+    pytest
+  ];
+
+  meta = {
+    description = "A backport of the get_terminal_size function from Python 3.3’s shutil.";
+    homepage = https://github.com/chrippa/backports.shutil_get_terminal_size;
+    license = with lib.licenses; [ mit ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/blessed/default.nix b/pkgs/development/python-modules/blessed/default.nix
index 2d1ac11f3b54..d3ea1f151d34 100644
--- a/pkgs/development/python-modules/blessed/default.nix
+++ b/pkgs/development/python-modules/blessed/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, buildPythonPackage, fetchPypi, six, wcwidth }:
+{ stdenv, buildPythonPackage, fetchPypi, six, wcwidth, pytest, mock
+, glibcLocales }:
 
 buildPythonPackage rec {
   name = "${pname}-${version}";
@@ -10,6 +11,12 @@ buildPythonPackage rec {
     sha256 = "0fv9f0074kxy1849h0kwwxw12sifpq3bv63pcz900zzjsigi4hi3";
   };
 
+  checkInputs = [ pytest mock glibcLocales ];
+
+  checkPhase = ''
+    LANG=en_US.utf-8 py.test blessed/tests
+  '';
+
   propagatedBuildInputs = [ wcwidth six ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/bootstrapped-pip/default.nix b/pkgs/development/python-modules/bootstrapped-pip/default.nix
index 9ff0b144f100..ef12e39f23bc 100644
--- a/pkgs/development/python-modules/bootstrapped-pip/default.nix
+++ b/pkgs/development/python-modules/bootstrapped-pip/default.nix
@@ -9,9 +9,9 @@ let
   };
   setuptools_source = fetchPypi {
     pname = "setuptools";
-    version = "36.7.1";
+    version = "38.2.3";
     format = "wheel";
-    sha256 = "eaacfa35eb11199d0b017df416421781a75209817bff3f94820556e36c49bd77";
+    sha256 = "0c4j3jiiwc0h1bdv4xklinp90spgvgiv5fsxp119hif9934nfxfs";
   };
 
   # TODO: Shouldn't be necessary anymore for pip > 9.0.1!
diff --git a/pkgs/development/python-modules/cheetah/default.nix b/pkgs/development/python-modules/cheetah/default.nix
new file mode 100644
index 000000000000..98af2f10a0bb
--- /dev/null
+++ b/pkgs/development/python-modules/cheetah/default.nix
@@ -0,0 +1,33 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, markdown
+, isPy3k
+, TurboCheetah
+}:
+
+buildPythonPackage rec {
+  pname = "cheetah";
+  version = "2.4.4";
+
+  disabled = isPy3k;
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "be308229f0c1e5e5af4f27d7ee06d90bb19e6af3059794e5fd536a6f29a9b550";
+  };
+
+  propagatedBuildInputs = [ markdown ];
+
+  doCheck = false; # Circular dependency
+
+  checkInputs = [
+    TurboCheetah
+  ];
+
+  meta = {
+    homepage = http://www.cheetahtemplate.org/;
+    description = "A template engine and code generation tool";
+    license = lib.licenses.mit;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/contextlib2/default.nix b/pkgs/development/python-modules/contextlib2/default.nix
index cadaa8914b21..a056ba450a88 100644
--- a/pkgs/development/python-modules/contextlib2/default.nix
+++ b/pkgs/development/python-modules/contextlib2/default.nix
@@ -1,6 +1,7 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, unittest2
 }:
 
 buildPythonPackage rec {
@@ -13,9 +14,11 @@ buildPythonPackage rec {
     sha256 = "509f9419ee91cdd00ba34443217d5ca51f5a364a404e1dce9e8979cea969ca48";
   };
 
+  checkInputs = [ unittest2 ];
+
   meta = {
     description = "Backports and enhancements for the contextlib module";
     homepage = http://contextlib2.readthedocs.org/;
     license = lib.licenses.psfl;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/python-modules/dateparser/default.nix b/pkgs/development/python-modules/dateparser/default.nix
new file mode 100644
index 000000000000..b73a1e9ec7fc
--- /dev/null
+++ b/pkgs/development/python-modules/dateparser/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchFromGitHub, buildPythonPackage, isPy3k
+, nose
+, nose-parameterized
+, mock
+, glibcLocales
+, six
+, jdatetime
+, pyyaml
+, dateutil
+, umalqurra
+, pytz
+, tzlocal
+, regex
+, ruamel_yaml }:
+buildPythonPackage rec {
+  pname = "dateparser";
+  version = "0.6.0";
+
+  src = fetchFromGitHub {
+    owner = "scrapinghub";
+    repo = pname;
+    rev = "refs/tags/v${version}";
+    sha256 = "0q2vyzvlj46r6pr0s6m1a0md1cpg9nv1n3xw286l4x2cc7fj2g3y";
+  };
+
+  # Upstream Issue: https://github.com/scrapinghub/dateparser/issues/364
+  disabled = isPy3k;
+
+  checkInputs = [ nose nose-parameterized mock glibcLocales ];
+  preCheck =''
+    # skip because of missing convertdate module, which is an extra requirement
+    rm tests/test_jalali.py
+  '';
+
+  propagatedBuildInputs = [ six jdatetime pyyaml dateutil
+            umalqurra pytz tzlocal regex ruamel_yaml ];
+
+  meta = with stdenv.lib;{
+    description = "Date parsing library designed to parse dates from HTML pages";
+    homepage = https://github.com/scrapinghub/dateparser;
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/development/python-modules/fix_swiftclient_mocking.patch b/pkgs/development/python-modules/fix_swiftclient_mocking.patch
deleted file mode 100644
index 027ef56b317c..000000000000
--- a/pkgs/development/python-modules/fix_swiftclient_mocking.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From f37947a7e083532676a9f2ed079dff6bdc19a8e9 Mon Sep 17 00:00:00 2001
-From: Sabari Kumar Murugesan <smurugesan@vmware.com>
-Date: Tue, 15 Sep 2015 14:22:11 -0700
-Subject: [PATCH] Fix swift store tests for latest swiftclient
-
-The latest swiftclient (2.6.0) breaks some of the swift store
-tests as a mock function's parameters got changed.
-
-Change-Id: I36512fbe642f4f12cf1382fdf0e37eccbf1acba4
----
- glance_store/tests/unit/test_swift_store.py | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/glance_store/tests/unit/test_swift_store.py b/glance_store/tests/unit/test_swift_store.py
-index f738cf9..3fe4699 100644
---- a/glance_store/tests/unit/test_swift_store.py
-+++ b/glance_store/tests/unit/test_swift_store.py
-@@ -92,7 +92,7 @@ def fake_head_container(url, token, container, **kwargs):
-     def fake_put_container(url, token, container, **kwargs):
-         fixture_containers.append(container)
- 
--    def fake_post_container(url, token, container, headers, http_conn=None):
-+    def fake_post_container(url, token, container, headers, **kwargs):
-         for key, value in six.iteritems(headers):
-             fixture_container_headers[key] = value
- 
diff --git a/pkgs/development/python-modules/gssapi/default.nix b/pkgs/development/python-modules/gssapi/default.nix
new file mode 100644
index 000000000000..7b90f10338cb
--- /dev/null
+++ b/pkgs/development/python-modules/gssapi/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, pkgs, lib, buildPythonPackage, fetchPypi, six, enum34, decorator,
+nose, shouldbe, gss, krb5Full, which, darwin }:
+
+buildPythonPackage rec {
+  pname = "gssapi";
+  version = "1.2.0";
+  name = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1q6ccpz6anl9vggwxdq32wp6xjh2lyfbf7av6jqnmvmyqdfwh3b9";
+  };
+
+  LD_LIBRARY_PATH="${pkgs.krb5Full}/lib";
+
+  buildInputs = [ krb5Full which nose shouldbe ]
+  ++ ( if stdenv.isDarwin then [ darwin.apple_sdk.frameworks.GSS ] else [ gss ] );
+
+  propagatedBuildInputs =  [ decorator enum34 six ];
+
+  doCheck = false; # No such file or directory: '/usr/sbin/kadmin.local'
+
+  meta = with stdenv.lib; {
+    homepage = https://pypi.python.org/pypi/gssapi;
+    description = "Python GSSAPI Wrapper";
+    license = licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/gst-python/default.nix b/pkgs/development/python-modules/gst-python/default.nix
index 71d77c283b84..393d00a8176a 100644
--- a/pkgs/development/python-modules/gst-python/default.nix
+++ b/pkgs/development/python-modules/gst-python/default.nix
@@ -4,7 +4,7 @@
 
 stdenv.mkDerivation rec {
   pname = "gst-python";
-  version = "1.12.2";
+  version = "1.12.3";
   name = "${pname}-${version}";
 
   src = fetchurl {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
       "${meta.homepage}/src/gst-python/${name}.tar.xz"
       "mirror://gentoo/distfiles/${name}.tar.xz"
       ];
-    sha256 = "0iwy0v2k27wd3957ich6j5f0f04b0wb2mb175ypf2lx68snk5k7l";
+    sha256 = "19rb06x2m7103zwfm0plxx95gb8bp01ng04h4q9k6ii9q7g2kxf3";
   };
 
   patches = [ ./different-path-with-pygobject.patch ];
diff --git a/pkgs/development/python-modules/inflection/default.nix b/pkgs/development/python-modules/inflection/default.nix
new file mode 100644
index 000000000000..bccf49c56adf
--- /dev/null
+++ b/pkgs/development/python-modules/inflection/default.nix
@@ -0,0 +1,23 @@
+{ lib, fetchPypi, buildPythonPackage, pytest } :
+
+buildPythonPackage rec {
+  pname = "inflection";
+  version = "0.3.1";
+
+  src = fetchPypi {
+   inherit pname version;
+   sha256 = "1jhnxgnw8y3mbzjssixh6qkc7a3afc4fygajhqrqalnilyvpzshq";
+  };
+
+  checkInputs = [ pytest ];
+  # Suppress overly verbose output if tests run successfully
+  checkPhase = ''pytest >/dev/null || pytest'';
+
+  meta = {
+   homepage = https://github.com/jpvanhal/inflection;
+   description = "A port of Ruby on Rails inflector to Python";
+   maintainers = with lib.maintainers; [ NikolaMandic ilya-kolpakov ];
+   license = lib.licenses.mit;
+  };
+}
+
diff --git a/pkgs/development/python-modules/jsondate/default.nix b/pkgs/development/python-modules/jsondate/default.nix
new file mode 100644
index 000000000000..7888a6df23cc
--- /dev/null
+++ b/pkgs/development/python-modules/jsondate/default.nix
@@ -0,0 +1,22 @@
+{ lib, fetchFromGitHub, buildPythonPackage, six }:
+
+buildPythonPackage rec {
+  version = "0.1.3";
+  pname = "jsondate";
+
+  src = fetchFromGitHub {
+    owner = "ilya-kolpakov";
+    repo = "jsondate";
+    rev = "refs/tags/v${version}";
+    sha256 = "0nhvi48nc0bmad5ncyn6c9yc338krs3xf10bvv55xgz25c5gdgwy";
+    fetchSubmodules = true; # Fetching by tag does not work otherwise
+  };
+
+  propagatedBuildInputs = [ six ];
+
+  meta = {
+    homepage = "https://github.com/ilya-kolpakov/jsondate";
+    description = "JSON with datetime handling";
+    license = lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/jsonrpclib-pelix/default.nix b/pkgs/development/python-modules/jsonrpclib-pelix/default.nix
new file mode 100644
index 000000000000..b331279042c0
--- /dev/null
+++ b/pkgs/development/python-modules/jsonrpclib-pelix/default.nix
@@ -0,0 +1,22 @@
+{ buildPythonPackage
+, fetchPypi
+, lib
+}:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  pname = "jsonrpclib-pelix";
+  version = "0.3.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1qs95vxplxwspbrqy8bvc195s58iy43qkf75yrjfql2sim8b25sl";
+  };
+
+  meta = with lib; {
+    description = "JSON RPC client library - Pelix compatible fork";
+    homepage = https://pypi.python.org/pypi/jsonrpclib-pelix/;
+    license = lib.licenses.asl20;
+    maintainers = with maintainers; [ moredread ];
+  };
+}
diff --git a/pkgs/development/python-modules/kafka-python/default.nix b/pkgs/development/python-modules/kafka-python/default.nix
new file mode 100644
index 000000000000..f5392202d4da
--- /dev/null
+++ b/pkgs/development/python-modules/kafka-python/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, buildPythonPackage, fetchPypi, pytest, six, mock }:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  version = "1.3.5";
+  pname = "kafka-python";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "19m9fdckxqngrgh0www7g8rgi7z0kq13wkhcqy1r8aa4sxad0f5j";
+  };
+
+  checkInputs = [ pytest six mock ];
+
+  checkPhase = ''
+    py.test
+  '';
+
+  # Upstream uses tox but we don't on Nix. Running tests manually produces however
+  #     from . import unittest
+  # E   ImportError: cannot import name 'unittest'
+  doCheck = false;
+
+  meta = with stdenv.lib; {
+    description = "Pure Python client for Apache Kafka";
+    homepage = https://github.com/dpkp/kafka-python;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ ];
+  };
+}
diff --git a/pkgs/development/python-modules/keystoneauth1/default.nix b/pkgs/development/python-modules/keystoneauth1/default.nix
deleted file mode 100644
index 7405f7f74cd5..000000000000
--- a/pkgs/development/python-modules/keystoneauth1/default.nix
+++ /dev/null
@@ -1,37 +0,0 @@
-{ buildPythonPackage, isPyPy, fetchPypi, python
-, pbr, testtools, testresources, testrepository, mock
-, pep8, fixtures, mox3, requests-mock
-, iso8601, requests, six, stevedore, webob, oslo-config
-, pyyaml, betamax, oauthlib
-}:
-
-buildPythonPackage rec {
-  pname = "keystoneauth1";
-  version = "3.2.0";
-  name = "${pname}-${version}";
-  disabled = isPyPy; # a test fails
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "0rg3harfyvai34lrjiqnl1crmvswjvj8nsviasnz4b9pcvp3d03n";
-  };
-
-  buildInputs = [ pbr  ];
-  checkInputs = [ pyyaml betamax oauthlib testtools testresources
-                  testrepository mock pep8 fixtures mox3 requests-mock ];
-  propagatedBuildInputs = [ iso8601 requests six stevedore webob ];
-
-  doCheck = true;
-  # 1. oslo-config
-  # 2. oslo-utils
-  # 3. requests-kerberos
-  preCheck = ''
-    rm keystoneauth1/tests/unit/loading/test_{session,conf,adapter}.py
-    rm keystoneauth1/tests/unit/access/test_v{2,3}_access.py
-    rm keystoneauth1/tests/unit/extras/kerberos/test_fedkerb_loading.py
-  '';
-  postPatch = ''
-    sed -i 's@python@${python.interpreter}@' .testr.conf
-    substituteInPlace requirements.txt --replace "argparse" ""
-  '';
-}
diff --git a/pkgs/development/python-modules/keystoneclient/default.nix b/pkgs/development/python-modules/keystoneclient/default.nix
deleted file mode 100644
index a856f4db793f..000000000000
--- a/pkgs/development/python-modules/keystoneclient/default.nix
+++ /dev/null
@@ -1,53 +0,0 @@
-{ stdenv, buildPythonPackage, fetchFromGitHub, python
-
-, pbr, testtools, testresources, testrepository
-, requests-mock, fixtures, openssl, oslotest, pep8
-
-, oslo-serialization, oslo-config, oslo-i18n, oslo-utils
-, Babel, prettytable, requests, six, iso8601, stevedore
-, netaddr, debtcollector, bandit, webob, mock, pycrypto
-}:
-
-buildPythonPackage rec {
-  pname = "keystoneclient";
-  version = "1.8.1";
-  name = pname + "-" + version;
-
-  src = fetchFromGitHub {
-    owner = "openstack";
-    repo = "python-keystoneclient";
-    rev = version;
-    sha256 = "0yayn1hb3mncqb0isy8vy6d519xya7mhf5pcbn60fzdqjrkj2prq";
-  };
-
-  PBR_VERSION = "${version}";
-
-  buildInputs = [
-    pbr testtools testresources testrepository requests-mock fixtures openssl
-    oslotest pep8
-  ];
-  propagatedBuildInputs = [
-    oslo-serialization oslo-config oslo-i18n oslo-utils
-    Babel prettytable requests six iso8601 stevedore
-    netaddr debtcollector bandit webob mock pycrypto
-  ];
-
-  postPatch = ''
-    sed -i 's@python@${python.interpreter}@' .testr.conf
-    sed -ie '/argparse/d' requirements.txt
-    '';
-
-  doCheck = false; # The checkPhase below is broken
-
-  checkPhase = ''
-    patchShebangs run_tests.sh
-    ./run_tests.sh
-  '';
-
-  meta = with stdenv.lib; {
-    homepage = https://github.com/openstack/python-novaclient/;
-    description = "Client library and command line tool for the OpenStack Nova API";
-    license = licenses.asl20;
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/development/python-modules/lark-parser/default.nix b/pkgs/development/python-modules/lark-parser/default.nix
new file mode 100644
index 000000000000..b81cc132a2d3
--- /dev/null
+++ b/pkgs/development/python-modules/lark-parser/default.nix
@@ -0,0 +1,30 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, python
+}:
+
+buildPythonPackage rec {
+  pname = "lark-parser"; # PyPI name
+  version = "2017-12-10";
+
+  src = fetchFromGitHub {
+    owner = "erezsh";
+    repo = "lark";
+    rev = "852607b978584ecdec68ac115dd8554cdb0a2305";
+    sha256 = "1clzmvbp1b4zamcm6ldak0hkw46n3lhw4b28qq9xdl0n4va6zig7";
+  };
+
+  checkPhase = ''
+    ${python.interpreter} -m unittest
+  '';
+
+  doCheck = false; # Requires js2py
+
+  meta = {
+    description = "A modern parsing library for Python, implementing Earley & LALR(1) and an easy interface";
+    homepage = https://github.com/erezsh/lark;
+    license = lib.licenses.mit;
+    maintainers = with lib.maintainers; [ fridh ];
+  };
+}
diff --git a/pkgs/development/python-modules/os-testr/default.nix b/pkgs/development/python-modules/os-testr/default.nix
deleted file mode 100644
index baafc44d10d3..000000000000
--- a/pkgs/development/python-modules/os-testr/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ stdenv, buildPythonPackage, fetchPypi, python,
-  pbr, Babel, testrepository, subunit, testtools,
-  coverage, oslosphinx, oslotest, testscenarios, six, ddt 
-}:
-buildPythonPackage rec {
-  version = "0.8.2";
-  pname = "os-testr";
-  name = "${pname}-${version}";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "d8a60bd56c541714a5cab4d1996c8ddfdb5c7c35393d55be617803048c170837";
-  };
-
-  patchPhase = ''
-    sed -i 's@python@${python.interpreter}@' .testr.conf
-    sed -i 's@python@${python.interpreter}@' os_testr/tests/files/testr-conf
-  '';
-
-  checkPhase = ''
-    export PATH=$PATH:$out/bin
-    ${python.interpreter} setup.py test
-  '';
-
-  propagatedBuildInputs = [ pbr Babel testrepository subunit testtools ];
-  buildInputs = [ coverage oslosphinx oslotest testscenarios six ddt ];
-
-  meta = with stdenv.lib; {
-    description = "A testr wrapper to provide functionality for OpenStack projects";
-    homepage  = http://docs.openstack.org/developer/os-testr/;
-    license = licenses.asl20;
-  };
-}
diff --git a/pkgs/development/python-modules/oslo-config/default.nix b/pkgs/development/python-modules/oslo-config/default.nix
deleted file mode 100644
index de91a507f179..000000000000
--- a/pkgs/development/python-modules/oslo-config/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ lib, buildPythonPackage, fetchPypi, pbr, six, netaddr, stevedore, mock,
-debtcollector, rfc3986, pyyaml, oslo-i18n }:
-
-buildPythonPackage rec {
-  pname = "oslo.config";
-  version = "4.13.2";
-  name = "${pname}-${version}";
-
-  src = fetchPypi {
-    inherit pname version;
-    sha256 = "882e5f1dcc0e5b0d7af877b2df0e2692113c5975db8cbbbf0dd3d2b905aefc0b";
-  };
-
-  propagatedBuildInputs = [ pbr six netaddr stevedore debtcollector rfc3986 pyyaml oslo-i18n ];
-  buildInputs = [ mock ];
-
-  # TODO: circular import on oslo-i18n
-  doCheck = false;
-
-  postPatch = ''
-    substituteInPlace requirements.txt --replace "argparse" ""
-  '';
-
-  meta = with lib; {
-    description = "Oslo Configuration API";
-    homepage = "https://docs.openstack.org/oslo.config/latest/";
-    license = licenses.asl20;
-    maintainers = with maintainers; [ makefu ];
-  };
-
-
-}
diff --git a/pkgs/development/python-modules/pathlib2/default.nix b/pkgs/development/python-modules/pathlib2/default.nix
new file mode 100644
index 000000000000..62d5c43a4b3b
--- /dev/null
+++ b/pkgs/development/python-modules/pathlib2/default.nix
@@ -0,0 +1,31 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, six
+, pythonOlder
+, scandir
+, glibcLocales
+}:
+
+if !(pythonOlder "3.4") then null else buildPythonPackage rec {
+  pname = "pathlib2";
+  version = "2.2.1";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "ce9007df617ef6b7bd8a31cd2089ed0c1fed1f7c23cf2bf1ba140b3dd563175d";
+  };
+
+  propagatedBuildInputs = [ six ] ++ lib.optional (pythonOlder "3.5") scandir;
+  checkInputs = [ glibcLocales ];
+
+  preCheck = ''
+    export LC_ALL="en_US.UTF-8"
+  '';
+
+  meta = {
+    description = "This module offers classes representing filesystem paths with semantics appropriate for different operating systems.";
+    homepage = https://pypi.python.org/pypi/pathlib2/;
+    license = with lib.licenses; [ mit ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/python-modules/pyrax/default.nix b/pkgs/development/python-modules/pyrax/default.nix
deleted file mode 100644
index 1337b3c32ada..000000000000
--- a/pkgs/development/python-modules/pyrax/default.nix
+++ /dev/null
@@ -1,35 +0,0 @@
-{ lib, buildPythonPackage, fetchurl, requests, novaclient, keyring,
-  rackspace-novaclient, six, isPy3k, pytest, glibcLocales }:
-buildPythonPackage rec {
-  pname = "pyrax";
-  version = "1.9.8";
-  name = "${pname}-${version}";
-
-  src = fetchurl {
-    url = "mirror://pypi/p/pyrax/${name}.tar.gz";
-    sha256 = "1x98jzyxnvha81pgx3jpfixljhs7zik89yfp8q06kwpx8ws99nz9";
-  };
-
-  # no good reason given in commit why limited, and seems to work
-  patchPhase = ''
-      substituteInPlace "setup.py"                                     \
-              --replace "python-novaclient==2.27.0" "python-novaclient"
-    '';
-
-  disabled = isPy3k;
-  propagatedBuildInputs = [ requests novaclient keyring rackspace-novaclient six ];
-
-  LC_ALL = "en_US.UTF-8";
-  buildInputs = [ pytest glibcLocales ];
-
-  checkPhase = ''
-    py.test tests/unit
-  '';
-
-  meta = {
-    homepage = https://github.com/rackspace/pyrax;
-    license = lib.licenses.asl20;
-    description = "Python API to interface with Rackspace";
-    maintainers = with lib.maintainers; [ teh ];
-  };
-}
diff --git a/pkgs/development/python-modules/quandl/allow-requests-v2.18.patch b/pkgs/development/python-modules/quandl/allow-requests-v2.18.patch
new file mode 100644
index 000000000000..c4d14319a8b6
--- /dev/null
+++ b/pkgs/development/python-modules/quandl/allow-requests-v2.18.patch
@@ -0,0 +1,12 @@
+diff --git a/setup.py b/setup.py
+--- a/setup.py
++++ b/setup.py
+@@ -18,7 +18,7 @@ from version import VERSION  # NOQA
+ install_requires = [
+     'pandas >= 0.14',
+     'numpy >= 1.8',
+-    'requests >= 2.7.0, < 2.18',  # Version 2.18 appears to break pulling data.
++    'requests >= 2.7.0', # Works fine
+     'inflection >= 0.3.1',
+     'python-dateutil',
+     'six',
diff --git a/pkgs/development/python-modules/quandl/default.nix b/pkgs/development/python-modules/quandl/default.nix
new file mode 100644
index 000000000000..e85e9c4e0f8c
--- /dev/null
+++ b/pkgs/development/python-modules/quandl/default.nix
@@ -0,0 +1,59 @@
+{
+  lib, fetchFromGitHub, buildPythonPackage, isPy3k,
+  # runtime dependencies
+  pandas, numpy, requests, inflection, python-dateutil, six, more-itertools,
+  # test suite dependencies
+  nose, unittest2, flake8, httpretty, mock, factory_boy, jsondate,
+  # additional runtime dependencies are required on Python 2.x
+  pyOpenSSL ? null, ndg-httpsclient ? null, pyasn1 ? null
+}:
+
+buildPythonPackage rec {
+  pname = "quandl";
+  version = "3.2.1";
+  sha256 = "0vc0pzs2px9yaqkqcmd2m1b2bq1iils8fs0xbl0989hjq791a4jr";
+
+  patches = [ ./allow-requests-v2.18.patch ];
+
+  # Tests do not work with fetchPypi
+  src = fetchFromGitHub {
+    owner = pname;
+    repo = "quandl-python";
+    rev = "refs/tags/v${version}";
+    inherit sha256;
+    fetchSubmodules = true; # Fetching by tag does not work otherwise
+  };
+
+  doCheck = true;
+
+  checkInputs = [
+    nose
+    unittest2
+    flake8
+    httpretty
+    mock
+    factory_boy
+    jsondate
+  ];
+
+  propagatedBuildInputs = [
+    pandas
+    numpy
+    requests
+    inflection
+    python-dateutil
+    six
+    more-itertools
+  ] ++ lib.optional (!isPy3k) [
+    pyOpenSSL
+    ndg-httpsclient
+    pyasn1
+  ];
+
+  meta = {
+    homepage = "https://github.com/quandl/quandl-python";
+    description = "Quandl Python client library";
+    maintainers = [ lib.maintainers.ilya-kolpakov ];
+    license = lib.licenses.mit;
+  };
+}
diff --git a/pkgs/development/python-modules/rackspace-novaclient/default.nix b/pkgs/development/python-modules/rackspace-novaclient/default.nix
deleted file mode 100644
index 3993503e9562..000000000000
--- a/pkgs/development/python-modules/rackspace-novaclient/default.nix
+++ /dev/null
@@ -1,166 +0,0 @@
-{ buildPythonPackage, fetchurl, isPy3k, requests, novaclient, six, lib }:
-let
-os-virtual-interfacesv2-python-novaclient-ext = buildPythonPackage rec {
-  pname = "os_virtual_interfacesv2_python_novaclient_ext";
-  version = "0.20";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/o/os-virtual-interfacesv2-python-novaclient-ext/${name}.tar.gz";
-    sha256 = "17a4r8psxmfikgmzh709absbn5jsh1005whibmwhysj9fi0zyfbd";
-  };
-
-  propagatedBuildInputs = [ six novaclient ];
-
-  meta = {
-    homepage = https://github.com/rackerlabs/os_virtual_interfacesv2_ext;
-    license = lib.licenses.asl20;
-    description = "Adds Virtual Interfaces support to python-novaclient";
-  };
-};
-
-ip-associations-python-novaclient-ext = buildPythonPackage rec {
-  pname = "ip_associations_python_novaclient_ext";
-  version = "0.2";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/i/ip_associations_python_novaclient_ext/${name}.tar.gz";
-    sha256 = "0dxfkfjhzskafmb01y8hzbcpvc4cd6fas1s50dzcmg29w4z6qmz4";
-  };
-
-  propagatedBuildInputs = [ six novaclient ];
-
-  meta = {
-    homepage = https://github.com/rackerlabs/ip_associations_python_novaclient_ext;
-    license = lib.licenses.asl20;
-    description = "Adds Rackspace ip_associations support to python-novaclient";
-  };
-};
-
-rackspace-auth-openstack = buildPythonPackage rec {
-  pname = "rackspace-auth-openstack";
-  version = "1.3";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/r/rackspace-auth-openstack/${name}.tar.gz";
-    sha256 = "1kaiyvgwmavw2mh0s32yjk70xsziynjdhi01qn9a8kljn7p6kh64";
-  };
-
-  propagatedBuildInputs = [ six novaclient ];
-
-  meta = {
-    homepage = https://pypi.python.org/pypi/rackspace-auth-openstack;
-    license = lib.licenses.asl20;
-    description = "Rackspace Auth Plugin for OpenStack Clients.";
-  };
-};
-rax-default-network-flags-python-novaclient-ext = buildPythonPackage rec {
-  pname = "rax_default_network_flags_python_novaclient_ext";
-  version = "0.4.0";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/r/rax_default_network_flags_python_novaclient_ext/${name}.tar.gz";
-    sha256 = "00b0csb58k6rr1is68bkkw358mms8mmb898bm8bbr8g7j2fz8aw5";
-  };
-
-  propagatedBuildInputs = [ six novaclient ];
-
-  meta = {
-    homepage = https://pypi.python.org/simple/rax-default-network-flags-python-novaclient-ext;
-    license = lib.licenses.asl20;
-    description = "Novaclient Extension for Instance Default Network Flags";
-  };
-};
-os-networksv2-python-novaclient-ext = buildPythonPackage rec {
-  pname = "os_networksv2_python_novaclient_ext";
-  version = "0.26";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/o/os_networksv2_python_novaclient_ext/${name}.tar.gz";
-    sha256 = "06dzqmyrwlq7hla6dk699z18c8v27qr1gxqknimwxlwqdlhpafk1";
-  };
-
-  propagatedBuildInputs = [ six novaclient ];
-
-  meta = {
-    homepage = https://pypi.python.org/pypi/os_networksv2_python_novaclient_ext;
-    license = lib.licenses.asl20;
-    description = "Adds rackspace networks support to python-novaclient";
-  };
-};
-
-rax-scheduled-images-python-novaclient-ext = buildPythonPackage rec {
-  pname = "rax_scheduled_images_python_novaclient_ext";
-  version = "0.3.1";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/r/rax_scheduled_images_python_novaclient_ext/${name}.tar.gz";
-    sha256 = "1nvwjgrkp1p1d27an393qf49pszm1nvqa2ychhbqmp0bnabwyw7i";
-  };
-
-  propagatedBuildInputs = [ six novaclient ];
-
-  meta = {
-    homepage = https://pypi.python.org/pypi/rax_scheduled_images_python_novaclient_ext;
-    license = lib.licenses.asl20;
-    description = "Extends python-novaclient to use RAX-SI, the Rackspace Nova API Scheduled Images extension";
-  };
-};
-
-os-diskconfig-python-novaclient-ext = buildPythonPackage rec {
-  pname = "os_diskconfig_python_novaclient_ext";
-  version = "0.1.3";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/o/os_diskconfig_python_novaclient_ext/${name}.tar.gz";
-    sha256 = "0xayy5nlkgl9yr0inqkwirlmar8pv1id29r59lj70g5plwrr5lg7";
-  };
-
-  propagatedBuildInputs = [ six novaclient ];
-
-  meta = {
-    homepage = https://pypi.python.org/pypi/os_diskconfig_python_novaclient_ext;
-    license = lib.licenses.asl20;
-    description = "Disk Config extension for python-novaclient";
-  };
-};
-
-in
-buildPythonPackage rec {
-  pname = "rackspace-novaclient";
-  version = "2.1";
-  name = pname + "-" + version;
-
-  src = fetchurl {
-    url = "mirror://pypi/r/rackspace-novaclient/${name}.tar.gz";
-    sha256 = "1rzaa328hzm8hs9q99gvjr64x47fmcq4dv4656rzxq5s4gv49z12";
-  };
-
-  disabled = isPy3k;
-  propagatedBuildInputs = [
-    requests
-    novaclient
-    six
-    # extensions
-    ip-associations-python-novaclient-ext
-    os-diskconfig-python-novaclient-ext
-    os-networksv2-python-novaclient-ext
-    os-virtual-interfacesv2-python-novaclient-ext
-    rackspace-auth-openstack
-    rax-default-network-flags-python-novaclient-ext
-    rax-scheduled-images-python-novaclient-ext
-  ];
-
-  meta = {
-    homepage = https://pypi.python.org/pypi/rackspace-novaclient/;
-    license = lib.licenses.asl20;
-    description = "Metapackage to install python-novaclient and Rackspace extensions";
-    maintainers = with lib.maintainers; [ teh ];
-  };
-}
diff --git a/pkgs/development/python-modules/raven/default.nix b/pkgs/development/python-modules/raven/default.nix
index e7b56cb3f350..66e2595f8d2f 100644
--- a/pkgs/development/python-modules/raven/default.nix
+++ b/pkgs/development/python-modules/raven/default.nix
@@ -2,12 +2,12 @@
 
 buildPythonPackage rec {
   pname = "raven";
-  version = "6.3.0";
+  version = "6.4.0";
   name = pname + "-" + version;
 
   src = fetchurl {
     url = "mirror://pypi/r/raven/${name}.tar.gz";
-    sha256 = "1wgddbd092vih6k6mknp68vvm1pp12fikjqzglw6mnyw8njnbr7k";
+    sha256 = "00m985w9fja2jf8dpvdhygcr26rwabxkgvcc2v5j6v7d6lrvpvdq";
   };
 
   # way too many dependencies to run tests
diff --git a/pkgs/development/python-modules/setuptools/default.nix b/pkgs/development/python-modules/setuptools/default.nix
index 3c919db42f4a..1c53f3cd4372 100644
--- a/pkgs/development/python-modules/setuptools/default.nix
+++ b/pkgs/development/python-modules/setuptools/default.nix
@@ -8,13 +8,13 @@
 # Should use buildPythonPackage here somehow
 stdenv.mkDerivation rec {
   pname = "setuptools";
-  version = "36.7.1";
+  version = "38.2.3";
   name = "${python.libPrefix}-${pname}-${version}";
 
   src = fetchPypi {
     inherit pname version;
     extension = "zip";
-    sha256 = "543becf5d33d8989dc5222403997488e9dc3872bdecdabb0f57184ca253ec1e8";
+    sha256 = "124jlg72bbk2xxv5wqbwcl4h5cdslslzk92rxjxiplg79l499hv3";
   };
 
   buildInputs = [ python wrapPython unzip ];
diff --git a/pkgs/development/python-modules/sqlalchemy-migrate/default.nix b/pkgs/development/python-modules/sqlalchemy-migrate/default.nix
index 258f84e8c72a..c2e454d08cda 100644
--- a/pkgs/development/python-modules/sqlalchemy-migrate/default.nix
+++ b/pkgs/development/python-modules/sqlalchemy-migrate/default.nix
@@ -1,20 +1,25 @@
-{ stdenv, buildPythonPackage, fetchurl, python,
-  unittest2, scripttest, pytz, pylint, tempest-lib, mock, testtools,
-  pbr, tempita, decorator, sqlalchemy, six, sqlparse 
+{ stdenv, buildPythonPackage, fetchPypi, python
+, unittest2, scripttest, pytz, pylint, mock
+, testtools, pbr, tempita, decorator, sqlalchemy
+, six, sqlparse, testrepository
 }:
 buildPythonPackage rec {
   pname = "sqlalchemy-migrate";
-  name = "${pname}-${version}";
   version = "0.11.0";
 
-  src = fetchurl {
-    url = "mirror://pypi/s/sqlalchemy-migrate/${name}.tar.gz";
+  src = fetchPypi {
+    inherit pname version;
     sha256 = "0ld2bihp9kmf57ykgzrfgxs4j9kxlw79sgdj9sfn47snw3izb2p6";
   };
 
-  checkInputs = [ unittest2 scripttest pytz pylint mock testtools tempest-lib ];
+  checkInputs = [ unittest2 scripttest pytz pylint mock testtools testrepository ];
   propagatedBuildInputs = [ pbr tempita decorator sqlalchemy six sqlparse ];
 
+  prePatch = ''
+    sed -i -e /tempest-lib/d \
+           -e /testtools/d \
+      test-requirements.txt
+  '';
   checkPhase = ''
     export PATH=$PATH:$out/bin
     echo sqlite:///__tmp__ > test_db.cfg
diff --git a/pkgs/development/python-modules/stevedore/default.nix b/pkgs/development/python-modules/stevedore/default.nix
index 1955320fd266..326282a39c3d 100644
--- a/pkgs/development/python-modules/stevedore/default.nix
+++ b/pkgs/development/python-modules/stevedore/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, buildPythonPackage, fetchPypi, oslosphinx, pbr, six, argparse }:
+{ stdenv, buildPythonPackage, fetchPypi, pbr, six, argparse }:
 
 buildPythonPackage rec {
   pname = "stevedore";
@@ -12,7 +12,6 @@ buildPythonPackage rec {
 
   doCheck = false;
 
-  buildInputs = [ oslosphinx ];
   propagatedBuildInputs = [ pbr six argparse ];
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/analysis/retdec/default.nix b/pkgs/development/tools/analysis/retdec/default.nix
new file mode 100644
index 000000000000..adcda4c83241
--- /dev/null
+++ b/pkgs/development/tools/analysis/retdec/default.nix
@@ -0,0 +1,113 @@
+{ stdenv, fetchFromGitHub, fetchurl,
+# Native build inputs
+cmake,
+autoconf, automake, libtool,
+pkgconfig,
+bison, flex,
+groff,
+perl,
+python,
+# Runtime tools
+time,
+upx,
+# Build inputs
+ncurses,
+libffi,
+libxml2,
+zlib,
+}:
+
+let
+  release = "3.0";
+
+  rapidjson = fetchFromGitHub {
+    owner = "Tencent";
+    repo = "rapidjson";
+    rev = "v1.1.0";
+    sha256 = "1jixgb8w97l9gdh3inihz7avz7i770gy2j2irvvlyrq3wi41f5ab";
+  };
+  jsoncpp = fetchFromGitHub {
+    owner = "open-source-parsers";
+    repo = "jsoncpp";
+    rev = "1.8.3";
+    sha256 = "05gkmg6r94q8a0qdymarcjlnlvmy9s365m9jhz3ysvi71cr31lkz";
+  };
+  googletest = fetchFromGitHub {
+    owner = "google";
+    repo = "googletest";
+    rev = "release-1.8.0";
+    sha256 = "0bjlljmbf8glnd9qjabx73w6pd7ibv43yiyngqvmvgxsabzr8399";
+  };
+  tinyxml2 = fetchFromGitHub {
+    owner = "leethomason";
+    repo = "tinyxml2";
+    rev = "5.0.1";
+    sha256 = "015g8520a0c55gwmv7pfdsgfz2rpdmh3d1nq5n9bd65n35492s3q";
+  };
+  yara = fetchurl {
+     url = "https://github.com/avast-tl/yara/archive/v1.0-retdec.zip";
+     sha256 = "1bjrkgp1sgld2y7gvwrlrz5fs16521ink6xyq72v7yxj3vfa9gps";
+  };
+  openssl = fetchurl {
+    url = "https://www.openssl.org/source/openssl-1.1.0f.tar.gz";
+    sha256 = "0r97n4n552ns571diz54qsgarihrxvbn7kvyv8wjyfs9ybrldxqj";
+  };
+
+  retdec-support = fetchurl {
+    url = "https://github.com/avast-tl/retdec-support/releases/download/2017-12-12/retdec-support_2017-12-12.tar.xz";
+    sha256 = "6376af57a77147f1363896963d8c1b3745ddb9a6bcec83d63a5846c3f78aeef9";
+  };
+in stdenv.mkDerivation rec {
+  name = "retdec-${version}";
+  version = "${release}.0";
+
+  src = fetchFromGitHub {
+    owner = "avast-tl";
+    repo = "retdec";
+    name = "retdec-${release}";
+    rev = "refs/tags/v${release}";
+    sha256 = "0cpc5lxg8qphdzl3gg9dx992ar35r8ik8wyysr91l2qvfhx93wks";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ cmake autoconf automake libtool pkgconfig bison flex groff perl python ];
+
+  buildInputs = [ ncurses libffi libxml2 zlib ];
+
+  prePatch = ''
+    find . -wholename "*/deps/rapidjson/CMakeLists.txt" -print0 | \
+      xargs -0 sed -i -e 's|GIT_REPOSITORY.*|URL ${rapidjson}|'
+    find . -wholename "*/deps/jsoncpp/CMakeLists.txt" -print0 | \
+      xargs -0 sed -i -e 's|GIT_REPOSITORY.*|URL ${jsoncpp}|'
+    find . -wholename "*/deps/googletest/CMakeLists.txt" -print0 | \
+      xargs -0 sed -i -e 's|GIT_REPOSITORY.*|URL ${googletest}|'
+    find . -wholename "*/deps/tinyxml2/CMakeLists.txt" -print0 | \
+      xargs -0 sed -i -e 's|GIT_REPOSITORY.*|URL ${tinyxml2}|'
+
+    find . -wholename "*/yaracpp/deps/CMakeLists.txt" -print0 | \
+      xargs -0 sed -i -e 's|URL .*|URL ${yara}|'
+
+    find . -wholename "*/deps/openssl/CMakeLists.txt" -print0 | \
+      xargs -0 sed -i -e 's|OPENSSL_URL .*)|OPENSSL_URL ${openssl})|'
+
+    chmod +x cmake/*.sh
+    patchShebangs cmake/*.sh
+
+    sed -i cmake/install-share.sh \
+      -e 's|WGET_PARAMS.*|cp ${retdec-support} "$INSTALL_PATH/$ARCH_NAME"|' \
+      -e '/echo "RUN: wget/,+7d'
+
+    substituteInPlace scripts/unpack.sh --replace '	upx -d' '	${upx}/bin/upx -d'
+    substituteInPlace scripts/config.sh --replace /usr/bin/time ${time}/bin/time
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "A retargetable machine-code decompiler based on LLVM";
+    inherit (src.meta) homepage;
+    license = licenses.mit;
+    maintainers = with maintainers; [ dtzWill ];
+  };
+}
+
diff --git a/pkgs/development/tools/build-managers/cmake/setup-hook.sh b/pkgs/development/tools/build-managers/cmake/setup-hook.sh
index 331f907ae612..614e00314212 100755
--- a/pkgs/development/tools/build-managers/cmake/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/cmake/setup-hook.sh
@@ -51,10 +51,19 @@ cmakeConfigurePhase() {
     # And build always Release, to ensure optimisation flags
     cmakeFlags="-DCMAKE_BUILD_TYPE=${cmakeBuildType:-Release} -DCMAKE_SKIP_BUILD_RPATH=ON $cmakeFlags"
 
+    if [ "$buildPhase" = ninjaBuildPhase ]; then
+        cmakeFlags="-GNinja $cmakeFlags"
+    fi
+
     echo "cmake flags: $cmakeFlags ${cmakeFlagsArray[@]}"
 
     cmake ${cmakeDir:-.} $cmakeFlags "${cmakeFlagsArray[@]}"
 
+    if ! [[ -v enableParallelBuilding ]]; then
+        enableParallelBuilding=1
+        echo "cmake: enabled parallel building"
+    fi
+
     runHook postConfigure
 }
 
diff --git a/pkgs/development/tools/build-managers/meson/setup-hook.sh b/pkgs/development/tools/build-managers/meson/setup-hook.sh
index dacad017ede0..25e2e69ef315 100644
--- a/pkgs/development/tools/build-managers/meson/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/meson/setup-hook.sh
@@ -13,6 +13,11 @@ mesonConfigurePhase() {
     meson build $mesonFlags "${mesonFlagsArray[@]}"
     cd build
 
+    if ! [[ -v enableParallelBuilding ]]; then
+        enableParallelBuilding=1
+        echo "meson: enabled parallel building"
+    fi
+
     runHook postConfigure
 }
 
diff --git a/pkgs/development/tools/build-managers/ninja/setup-hook.sh b/pkgs/development/tools/build-managers/ninja/setup-hook.sh
index 9ea6549a8243..d9ad74609316 100644
--- a/pkgs/development/tools/build-managers/ninja/setup-hook.sh
+++ b/pkgs/development/tools/build-managers/ninja/setup-hook.sh
@@ -4,9 +4,16 @@ ninjaBuildPhase() {
     if [[ -z "$ninjaFlags" && ! ( -e build.ninja ) ]]; then
         echo "no build.ninja, doing nothing"
     else
+        local buildCores=1
+
+        # Parallel building is enabled by default.
+        if [ "${enableParallelBuilding-1}" ]; then
+            buildCores="$NIX_BUILD_CORES"
+        fi
+
         # shellcheck disable=SC2086
         local flagsArray=( \
-            ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \
+            -j"$buildCores" -l"$NIX_BUILD_CORES" \
             $ninjaFlags "${ninjaFlagsArray[@]}" \
             $buildFlags "${buildFlagsArray[@]}")
 
diff --git a/pkgs/development/tools/continuous-integration/jenkins/default.nix b/pkgs/development/tools/continuous-integration/jenkins/default.nix
index 5f6e35fc75f8..f44187a0ac16 100644
--- a/pkgs/development/tools/continuous-integration/jenkins/default.nix
+++ b/pkgs/development/tools/continuous-integration/jenkins/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "jenkins-${version}";
-  version = "2.93";
+  version = "2.95";
 
   src = fetchurl {
     url = "http://mirrors.jenkins-ci.org/war/${version}/jenkins.war";
-    sha256 = "1wk62lmll0abbgl3drmrf5kg8hya3glkwx7h0gfhcna3vjb95ll1";
+    sha256 = "08pmsxsk5qbs7h3m1ya7xbik95n58ak8m4p01y97l49kc70bj2hv";
   };
 
   buildCommand = ''
diff --git a/pkgs/development/tools/coursier/default.nix b/pkgs/development/tools/coursier/default.nix
index 874f8dcd96a3..2f2200010709 100644
--- a/pkgs/development/tools/coursier/default.nix
+++ b/pkgs/development/tools/coursier/default.nix
@@ -11,13 +11,13 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper ];
 
-  phases = "installPhase";
+  unpackPhase = ":";
 
   installPhase = ''
     mkdir -p $out/bin
     cp ${src} $out/bin/coursier
     chmod +x $out/bin/coursier
-    wrapProgram $out/bin/coursier --prefix PATH ":" ${jre}/bin ;
+    wrapProgram $out/bin/coursier --prefix PATH ":" ${jre}/bin
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/tools/misc/editorconfig-core-c/default.nix b/pkgs/development/tools/misc/editorconfig-core-c/default.nix
index 5509ededb070..a0d6e49c0258 100644
--- a/pkgs/development/tools/misc/editorconfig-core-c/default.nix
+++ b/pkgs/development/tools/misc/editorconfig-core-c/default.nix
@@ -14,6 +14,10 @@ stdenv.mkDerivation rec {
   buildInputs = [ pcre ];
   nativeBuildInputs = [ cmake doxygen ];
 
+  # Multiple doxygen can not generate man pages in the same base directory in
+  # parallel: https://bugzilla.gnome.org/show_bug.cgi?id=791153
+  enableParallelBuilding = false;
+
   meta = with stdenv.lib; {
     homepage = http://editorconfig.org/;
     description = "EditorConfig core library written in C";
diff --git a/pkgs/development/tools/misc/epm/default.nix b/pkgs/development/tools/misc/epm/default.nix
index 9d84011e3657..8d2e67859005 100644
--- a/pkgs/development/tools/misc/epm/default.nix
+++ b/pkgs/development/tools/misc/epm/default.nix
@@ -1,16 +1,22 @@
-{stdenv, fetchurl, rpm}:
+{stdenv, fetchFromGitHub, rpm}:
 
 stdenv.mkDerivation rec {
   name = "epm-${version}";
-  version = "4.2";
+  version = "4.4";
 
-  src = fetchurl {
-    url = "http://www.msweet.org/files/project2/epm-4.2-source.tar.bz2";
-    sha256 = "13imglm1fgd7p5y9lc0xsl6x4cdjsk5lnan5sn8f7m4jwbx8kik6";
+  src = fetchFromGitHub {
+    repo = "epm";
+    owner = "michaelrsweet";
+    rev = "v${version}";
+    sha256 = "0kaw7v2m20qirapkps4dna6nf9xibnwljvvv0l9vpvi920kw7j7p";
   };
 
   buildInputs = [ rpm ];
 
+  preInstall = ''
+    sed -i 's/README/README.md/' Makefile
+  '';
+
   meta = with stdenv.lib; {
     description = "The ESP Package Manager generates distribution archives for a variety of platforms";
     homepage = http://www.msweet.org/projects.php?Z2;
diff --git a/pkgs/development/tools/misc/iozone/default.nix b/pkgs/development/tools/misc/iozone/default.nix
index 0bbab096c73f..31d70d280e32 100644
--- a/pkgs/development/tools/misc/iozone/default.nix
+++ b/pkgs/development/tools/misc/iozone/default.nix
@@ -9,7 +9,7 @@ let
     "macosx"
   else if stdenv.system == "aarch64-linux" then
     "linux-arm"
-  else abort "Platform ${stdenv.system} not yet supported.";
+  else throw "Platform ${stdenv.system} not yet supported.";
 in
 
 stdenv.mkDerivation rec {
diff --git a/pkgs/development/tools/misc/saleae-logic/default.nix b/pkgs/development/tools/misc/saleae-logic/default.nix
index 86be86cb6d63..de2d6c5b7bfd 100644
--- a/pkgs/development/tools/misc/saleae-logic/default.nix
+++ b/pkgs/development/tools/misc/saleae-logic/default.nix
@@ -42,7 +42,7 @@ stdenv.mkDerivation rec {
         sha256 = "1skx2pfnic7pyss7c69qb7kg2xvflpxf112xkf9awk516dw1w4h7";
       }
     else
-      abort "Saleae Logic software requires i686-linux or x86_64-linux";
+      throw "Saleae Logic software requires i686-linux or x86_64-linux";
 
   desktopItem = makeDesktopItem {
     name = "saleae-logic";
diff --git a/pkgs/development/tools/ocaml/merlin/default.nix b/pkgs/development/tools/ocaml/merlin/default.nix
index 904e070e5115..d09f06623a7e 100644
--- a/pkgs/development/tools/ocaml/merlin/default.nix
+++ b/pkgs/development/tools/ocaml/merlin/default.nix
@@ -4,7 +4,7 @@
 assert stdenv.lib.versionAtLeast ocaml.version "4.02";
 
 let
-  version = "3.0.3";
+  version = "3.0.5";
 in
 
 stdenv.mkDerivation {
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   src = fetchzip {
     url = "https://github.com/ocaml/merlin/archive/v${version}.tar.gz";
-    sha256 = "19gz9vcdna84xcm2b53m6b5g4c7ppb61j05fnvry3shvjiz2p58p";
+    sha256 = "06h0klzzvb62rzb6m0pq8aa207fz7z54mjr05vky4wv8195bbjiy";
   };
 
   buildInputs = [ ocaml findlib yojson ]
diff --git a/pkgs/development/tools/ocaml/ocp-indent/default.nix b/pkgs/development/tools/ocaml/ocp-indent/default.nix
index f96b7888db0f..d11278f4d29c 100644
--- a/pkgs/development/tools/ocaml/ocp-indent/default.nix
+++ b/pkgs/development/tools/ocaml/ocp-indent/default.nix
@@ -9,11 +9,11 @@ assert versionAtLeast (getVersion ocpBuild) "1.99.6-beta";
 stdenv.mkDerivation rec {
 
   name = "ocp-indent-${version}";
-  version = "1.6.0";
+  version = "1.6.1";
 
   src = fetchzip {
     url = "https://github.com/OCamlPro/ocp-indent/archive/${version}.tar.gz";
-    sha256 = "1h9y597s3ag8w1z32zzv4dfk3ppq557s55bnlfw5a5wqwvia911f";
+    sha256 = "0rcaa11mjqka032g94wgw9llqpflyk3ywr3lr6jyxbh1rjvnipnw";
   };
 
   nativeBuildInputs = [ ocpBuild opam ];
diff --git a/pkgs/development/tools/scalafmt/default.nix b/pkgs/development/tools/scalafmt/default.nix
index 391c653b98ab..6c30768d900c 100644
--- a/pkgs/development/tools/scalafmt/default.nix
+++ b/pkgs/development/tools/scalafmt/default.nix
@@ -1,29 +1,37 @@
-{ stdenv, fetchurl, unzip, jre }:
+{ stdenv, jdk, jre, coursier, makeWrapper }:
 
-stdenv.mkDerivation rec {
-  version = "0.6.8";
+let
   baseName = "scalafmt";
-  name = "${baseName}-${version}";
-
-  src = fetchurl {
-    url = "https://github.com/scalameta/scalafmt/releases/download/v${version}/${baseName}.tar.gz";
-    sha256 = "1iaanrxk5lhxx1zj9gbxzgqbnyy1azfrab984mga7di5z1hs02s2";
+  version = "1.3.0";
+  deps = stdenv.mkDerivation {
+    name = "${baseName}-deps-${version}";
+    buildCommand = ''
+      export COURSIER_CACHE=$(pwd)
+      ${coursier}/bin/coursier fetch com.geirsson:scalafmt-cli_2.12:${version} > deps
+      mkdir -p $out/share/java
+      cp $(< deps) $out/share/java/
+    '';
+    outputHashMode = "recursive";
+    outputHashAlgo = "sha256";
+    outputHash     = "0q1vw6drpdrfifbm3266igpml0phdk6pl0gd3b5amysigx83m251";
   };
+in
+stdenv.mkDerivation rec {
+  name = "${baseName}-${version}";
 
-  unpackPhase = "tar xvzf $src";
+  buildInputs = [ jdk makeWrapper deps ];
 
-  installPhase = ''
-    mkdir -p "$out/bin"
-    mkdir -p "$out/lib"
+  doCheck = true;
 
-    cp cli/target/scala-2.11/scalafmt.jar "$out/lib/${name}.jar"
+  phases = [ "installPhase" "checkPhase" ];
 
-    cat > "$out/bin/${baseName}" << EOF
-    #!${stdenv.shell}
-    exec ${jre}/bin/java -jar "$out/lib/${name}.jar" "\$@"
-    EOF
+  installPhase = ''
+    makeWrapper ${jre}/bin/java $out/bin/${baseName} \
+      --add-flags "-cp $CLASSPATH org.scalafmt.cli.Cli"
+  '';
 
-    chmod a+x "$out/bin/${baseName}"
+  checkPhase = ''
+    $out/bin/${baseName} --version | grep -q "${version}"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/games/chessx/default.nix b/pkgs/games/chessx/default.nix
index e8daca26ef7d..b8a4d4e06dc0 100644
--- a/pkgs/games/chessx/default.nix
+++ b/pkgs/games/chessx/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig qmake ];
 
   # RCC: Error in 'resources.qrc': Cannot find file 'i18n/chessx_da.qm'
-  #enableParallelBuilding = true;
+  enableParallelBuilding = false;
 
   installPhase = ''
       runHook preInstall
diff --git a/pkgs/games/cutemaze/default.nix b/pkgs/games/cutemaze/default.nix
new file mode 100644
index 000000000000..19fcbb2443d2
--- /dev/null
+++ b/pkgs/games/cutemaze/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, qmake, qttools, qtsvg }:
+
+stdenv.mkDerivation rec {
+  name = "cutemaze-${version}";
+  version = "1.2.1";
+
+  src = fetchurl {
+    url = "https://gottcode.org/cutemaze/${name}-src.tar.bz2";
+    sha256 = "841f2a208770c9de6009fed64e24a059a878686c444c4b572c56b564e4cfa66e";
+  };
+
+  nativeBuildInputs = [ qmake qttools ];
+
+  buildInputs = [ qtsvg ];
+
+  postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
+    mkdir -p $out/Applications
+    mv CuteMaze.app $out/Applications
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://gottcode.org/cutemaze/;
+    description = "Simple, top-down game in which mazes are randomly generated";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dotlambda ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/games/dwarf-fortress/dfhack/default.nix b/pkgs/games/dwarf-fortress/dfhack/default.nix
index dbb3e7c32e25..698d2924bfec 100644
--- a/pkgs/games/dwarf-fortress/dfhack/default.nix
+++ b/pkgs/games/dwarf-fortress/dfhack/default.nix
@@ -4,13 +4,13 @@
 }:
 
 let
-  dfVersion = "0.43.05";
-  version = "${dfVersion}-r2";
+  dfVersion = "0.44.02";
+  version = "${dfVersion}-alpha1";
   rev = "refs/tags/${version}";
-  sha256 = "18zbxri5rch750m431pdmlk4xi7nc14iif3i7glxrgy2h5nfaw5c";
+  sha256 = "1cdp2jwhxl54ym92jm58xyrz942ajp6idl31qrmzcqzawp2fl620";
 
   # revision of library/xml submodule
-  xmlRev = "3322beb2e7f4b28ff8e573e9bec738c77026b8e9";
+  xmlRev = "e2e256066cc4a5c427172d9d27db25b7823e4e86";
 
   arch =
     if stdenv.system == "x86_64-linux" then "64"
diff --git a/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix b/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix
index e7ef9a02eb70..c330471f430c 100644
--- a/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix
+++ b/pkgs/games/dwarf-fortress/dwarf-therapist/default.nix
@@ -2,15 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "dwarf-therapist-original-${version}";
-  version = "37.0.0-Hello71";
+  version = "39.0.0";
 
   src = fetchFromGitHub {
-    ## We use `Hello71`'s fork for 43.05 support
-    # owner = "splintermind";
-    owner = "Hello71";
+    owner = "Dwarf-Therapist";
     repo = "Dwarf-Therapist";
-    rev = "42ccaa71f6077ebdd41543255a360c3470812b97";
-    sha256 = "0f6mlfck7q31jl5cb6d6blf5sb7cigvvs2rn31k16xc93hsdgxaz";
+    rev = "8ae293a6b45333bbf30644d11d1987651e53a307";
+    sha256 = "0p1127agr2a97gp5chgdkaa0wf02hqgx82yid1cvqpyj8amal6yg";
   };
 
   outputs = [ "out" "layouts" ];
@@ -33,9 +31,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Tool to manage dwarves in in a running game of Dwarf Fortress";
-    maintainers = with maintainers; [ the-kenny abbradar ];
+    maintainers = with maintainers; [ the-kenny abbradar bendlas ];
     license = licenses.mit;
     platforms = platforms.linux;
-    homepage = https://github.com/splintermind/Dwarf-Therapist;
+    homepage = https://github.com/Dwarf-Therapist/Dwarf-Therapist;
   };
 }
diff --git a/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix b/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix
index 3a1a52d44cdb..6debf0bb0b2b 100644
--- a/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix
+++ b/pkgs/games/dwarf-fortress/dwarf-therapist/wrapper.nix
@@ -1,9 +1,11 @@
-{ symlinkJoin, lib, dwarf-therapist-original, dwarf-fortress-original, makeWrapper }:
+{ stdenv, symlinkJoin, lib, dwarf-therapist-original, dwarf-fortress-original, makeWrapper }:
 
 let
   df = dwarf-fortress-original;
   dt = dwarf-therapist-original;
-  inifile = "linux/v0.${df.baseVersion}.${df.patchVersion}.ini";
+  platformSlug = if stdenv.targetPlatform.is32bit then
+    "linux32" else "linux64";
+  inifile = "linux/v0.${df.baseVersion}.${df.patchVersion}_${platformSlug}.ini";
   dfHashFile = "${df}/hash.md5";
 
 in symlinkJoin {
diff --git a/pkgs/games/dwarf-fortress/game.nix b/pkgs/games/dwarf-fortress/game.nix
index 740125bf4426..54666e86cc14 100644
--- a/pkgs/games/dwarf-fortress/game.nix
+++ b/pkgs/games/dwarf-fortress/game.nix
@@ -3,8 +3,8 @@
 }:
 
 let
-  baseVersion = "43";
-  patchVersion = "05";
+  baseVersion = "44";
+  patchVersion = "02";
   dfVersion = "0.${baseVersion}.${patchVersion}";
   libpath = lib.makeLibraryPath [ stdenv.cc.cc stdenv.glibc dwarf-fortress-unfuck SDL ];
   platform =
@@ -12,8 +12,8 @@ let
     else if stdenv.system == "i686-linux" then "linux32"
     else throw "Unsupported platform";
   sha256 =
-    if stdenv.system == "x86_64-linux" then "1r0b96yrdf24m9476k5x7rmp3faxr0kfwwdf35agpvlb1qbi6v45"
-    else if stdenv.system == "i686-linux" then "16l1lydpkbnl3zhz4i2snmjk7pps8vmw3zv0bjgr8dncbsrycd03"
+    if stdenv.system == "x86_64-linux" then "1w2b6sxjxb5cvmv15fxmzfkxvby4kdcf4kj4w35687filyg0skah"
+    else if stdenv.system == "i686-linux" then "1yqzkgyl1adwysqskc2v4wlp1nkgxc7w6m37nwllghgwfzaiqwnh"
     else throw "Unsupported platform";
 
 in
diff --git a/pkgs/games/dwarf-fortress/soundsense.nix b/pkgs/games/dwarf-fortress/soundsense.nix
index c87f42d58c0f..17448d87f407 100644
--- a/pkgs/games/dwarf-fortress/soundsense.nix
+++ b/pkgs/games/dwarf-fortress/soundsense.nix
@@ -12,7 +12,7 @@
 
 stdenv.mkDerivation rec {
   version = "2016-1_196";
-  dfVersion = "0.43.05";
+  dfVersion = "0.44.02";
   inherit soundPack;
   name = "soundsense-${version}";
   src = fetchzip {
diff --git a/pkgs/games/dwarf-fortress/themes/cla.nix b/pkgs/games/dwarf-fortress/themes/cla.nix
index 7d1f26e9aabc..78ebd4307272 100644
--- a/pkgs/games/dwarf-fortress/themes/cla.nix
+++ b/pkgs/games/dwarf-fortress/themes/cla.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "cla-theme-${version}";
-  version = "43.05-v23";
+  version = "44.01-v24";
 
   src = fetchFromGitHub {
     owner = "DFgraphics";
     repo = "CLA";
     rev = version;
-    sha256 = "1i74lyz7mpfrvh5g7rajxldhw7zddc2kp8f6bgfr3hl5l8ym5ci9";
+    sha256 = "1lyazrls2vr8z58vfk5nvaffyv048j5xkr4wjvp6vrqxxvrxyrfd";
   };
 
   installPhase = ''
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     cp -r data raw $out
   '';
 
-  passthru.dfVersion = "0.43.05";
+  passthru.dfVersion = "0.44.02";
 
   preferLocalBuild = true;
 
diff --git a/pkgs/games/dwarf-fortress/themes/phoebus.nix b/pkgs/games/dwarf-fortress/themes/phoebus.nix
index 07bbde9f1480..57881686eaa9 100644
--- a/pkgs/games/dwarf-fortress/themes/phoebus.nix
+++ b/pkgs/games/dwarf-fortress/themes/phoebus.nix
@@ -5,13 +5,13 @@
 
 stdenv.mkDerivation rec {
   name = "phoebus-theme-${version}";
-  version = "43.05c";
+  version = "44.02a";
 
   src = fetchFromGitHub {
     owner = "DFgraphics";
     repo = "Phoebus";
     rev = version;
-    sha256 = "0wiz9rd5ypibgh8854h5n2xwksfxylaziyjpbp3p1rkm3r7kr4fd";
+    sha256 = "10qd8fbn75fvhkyxqljn4w52kbhfp9xh1ybanjzc57bz79sdzvfp";
   };
 
   installPhase = ''
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
     cp -r data raw $out
   '';
 
-  passthru.dfVersion = "0.43.05";
+  passthru.dfVersion = "0.44.02";
 
   preferLocalBuild = true;
 
diff --git a/pkgs/games/dwarf-fortress/unfuck.nix b/pkgs/games/dwarf-fortress/unfuck.nix
index 105da5a5731b..3b0df3ce28cf 100644
--- a/pkgs/games/dwarf-fortress/unfuck.nix
+++ b/pkgs/games/dwarf-fortress/unfuck.nix
@@ -3,14 +3,16 @@
 , ncurses, glib, gtk2, libsndfile, zlib
 }:
 
+let dfVersion = "0.44.02"; in
+
 stdenv.mkDerivation {
-  name = "dwarf_fortress_unfuck-2016-07-13";
+  name = "dwarf_fortress_unfuck-${dfVersion}";
 
   src = fetchFromGitHub {
     owner = "svenstaro";
     repo = "dwarf_fortress_unfuck";
-    rev = "d6a4ee67e7b41bec1caa87548640643db35a6080";
-    sha256 = "17p7jzmwd5z54wn6bxmic0i8y8mma3q359zcy3r9x2mp2wv1yd7p";
+    rev = dfVersion;
+    sha256 = "0gfchfqrzx0h59mdv01hik8q2a2yx170q578agfck0nv39yhi6i5";
   };
 
   cmakeFlags = [
@@ -33,7 +35,7 @@ stdenv.mkDerivation {
   # Breaks dfhack because of inlining.
   hardeningDisable = [ "fortify" ];
 
-  passthru.dfVersion = "0.43.05";
+  passthru = { inherit dfVersion; };
 
   meta = with stdenv.lib; {
     description = "Unfucked multimedia layer for Dwarf Fortress";
diff --git a/pkgs/games/dwarf-fortress/wrapper/default.nix b/pkgs/games/dwarf-fortress/wrapper/default.nix
index 05e851db6f85..3d904d006e46 100644
--- a/pkgs/games/dwarf-fortress/wrapper/default.nix
+++ b/pkgs/games/dwarf-fortress/wrapper/default.nix
@@ -38,11 +38,11 @@ let
   };
 in
 
-assert lib.all (x: x.dfVersion == dwarf-fortress-original.dfVersion) pkgs;
-
 stdenv.mkDerivation rec {
   name = "dwarf-fortress-${dwarf-fortress-original.dfVersion}";
 
+  compatible = lib.all (x: assert (x.dfVersion == dwarf-fortress-original.dfVersion); true) pkgs;
+
   dfInit = substituteAll {
     name = "dwarf-fortress-init";
     src = ./dwarf-fortress-init.in;
diff --git a/pkgs/games/nethack/default.nix b/pkgs/games/nethack/default.nix
index 92d87697fb16..d9ab3ee833b2 100644
--- a/pkgs/games/nethack/default.nix
+++ b/pkgs/games/nethack/default.nix
@@ -3,7 +3,7 @@
 let
   platform =
     if lib.elem stdenv.system lib.platforms.unix then "unix"
-    else abort "Unknown platform for NetHack";
+    else throw "Unknown platform for NetHack: ${stdenv.system}";
   unixHint =
     if stdenv.isLinux then "linux"
     else if stdenv.isDarwin then "macosx10.10"
diff --git a/pkgs/games/steam/default.nix b/pkgs/games/steam/default.nix
index 54805e91b2bd..6a6485d43319 100644
--- a/pkgs/games/steam/default.nix
+++ b/pkgs/games/steam/default.nix
@@ -6,7 +6,7 @@ let
   self = rec {
     steamArch = if pkgs.stdenv.system == "x86_64-linux" then "amd64"
                 else if pkgs.stdenv.system == "i686-linux" then "i386"
-                else abort "Unsupported platform";
+                else throw "Unsupported platform: ${pkgs.stdenv.system}";
 
     steam-runtime = callPackage ./runtime.nix { };
     steam-runtime-wrapped = callPackage ./runtime-wrapped.nix { };
diff --git a/pkgs/misc/cups/default.nix b/pkgs/misc/cups/default.nix
index d005f6becadb..db344b32d218 100644
--- a/pkgs/misc/cups/default.nix
+++ b/pkgs/misc/cups/default.nix
@@ -1,5 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, zlib, libjpeg, libpng, libtiff, pam
-, dbus, systemd, acl, gmp, darwin
+{ stdenv, fetchurl, fetchpatch, pkgconfig, removeReferencesTo
+, zlib, libjpeg, libpng, libtiff, pam, dbus, systemd, acl, gmp, darwin
 , libusb ? null, gnutls ? null, avahi ? null, libpaper ? null
 }:
 
@@ -9,18 +9,26 @@
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "cups-${version}";
-  version = "2.2.2";
+  version = "2.2.6";
 
   passthru = { inherit version; };
 
   src = fetchurl {
     url = "https://github.com/apple/cups/releases/download/v${version}/cups-${version}-source.tar.gz";
-    sha256 = "1xp4ji4rz3xffsz6w6nd60ajxvvihn02pkyp2l4smhqxbmyvp2gm";
+    sha256 = "16qn41b84xz6khrr2pa2wdwlqxr29rrrkjfi618gbgdkq9w5ff20";
   };
 
   outputs = [ "out" "lib" "dev" "man" ];
 
-  nativeBuildInputs = [ pkgconfig ];
+  patches = [
+    (fetchpatch {
+      url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/cups-systemd-socket.patch?h=packages/cups";
+      sha256 = "1ddgdlg9s0l2ph6l8lx1m1lx6k50gyxqi3qiwr44ppq1rxs80ny5";
+    })
+  ];
+
+  nativeBuildInputs = [ pkgconfig removeReferencesTo ];
+
   buildInputs = [ zlib libjpeg libpng libtiff libusb gnutls libpaper ]
     ++ optionals stdenv.isLinux [ avahi pam dbus systemd acl ]
     ++ optionals stdenv.isDarwin (with darwin; [
@@ -30,16 +38,9 @@ stdenv.mkDerivation rec {
   propagatedBuildInputs = [ gmp ];
 
   configureFlags = [
-    # Put just lib/* and locale into $lib; this didn't work directly.
-    # lib/cups is moved back to $out in postInstall.
-    # Beware: some parts of cups probably don't fully respect these.
-    "--prefix=$(lib)"
-    "--datadir=$(out)/share"
-    "--localedir=$(lib)/share/locale"
-
     "--localstatedir=/var"
     "--sysconfdir=/etc"
-    "--with-systemd=\${out}/lib/systemd/system"
+    "--with-rundir=/run"
     "--enable-raw-printing"
     "--enable-threads"
   ] ++ optionals stdenv.isLinux [
@@ -49,15 +50,24 @@ stdenv.mkDerivation rec {
     ++ optional (gnutls != null) "--enable-ssl"
     ++ optional (avahi != null) "--enable-avahi"
     ++ optional (libpaper != null) "--enable-libpaper"
-    ++ optionals stdenv.isDarwin [
-    "--with-bundledir=$out"
-    "--disable-launchd"
-  ];
+    ++ optional stdenv.isDarwin "--disable-launchd";
+
+  preConfigure = ''
+    configureFlagsArray+=(
+      # Put just lib/* and locale into $lib; this didn't work directly.
+      # lib/cups is moved back to $out in postInstall.
+      # Beware: some parts of cups probably don't fully respect these.
+      "--prefix=$lib"
+      "--datadir=$out/share"
+      "--localedir=$lib/share/locale"
 
-  # XXX: Hackery until https://github.com/NixOS/nixpkgs/issues/24693
-  preBuild = if stdenv.isDarwin then ''
-    export DYLD_FRAMEWORK_PATH=/System/Library/Frameworks
-  '' else null;
+      "--with-systemd=$out/lib/systemd/system"
+
+      ${optionalString stdenv.isDarwin ''
+        "--with-bundledir=$out"
+      ''}
+    )
+  '';
 
   installFlags =
     [ # Don't try to write in /var at build time.
@@ -80,21 +90,26 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   postInstall = ''
-      moveToOutput lib/cups "$out"
+      libexec=${if stdenv.isDarwin then "libexec/cups" else "lib/cups"}
+      moveToOutput $libexec "$out"
+
+      # $lib contains references to $out/share/cups.
+      # CUPS is working without them, so they are not vital.
+      find "$lib" -type f -exec grep -q "$out" {} \; \
+           -printf "removing references from %p\n" \
+           -exec remove-references-to -t "$out" {} +
 
       # Delete obsolete stuff that conflicts with cups-filters.
       rm -rf $out/share/cups/banners $out/share/cups/data/testprint
 
-      # Some outputs in cups-config were unexpanded and some even wrong.
       moveToOutput bin/cups-config "$dev"
-      sed -e "/^cups_serverbin=/s|\$(lib)|$out|" \
-          -e "s|\$(out)|$out|" \
-          -e "s|\$(lib)|$lib|" \
+      sed -e "/^cups_serverbin=/s|$lib|$out|" \
           -i "$dev/bin/cups-config"
 
       # Rename systemd files provided by CUPS
       for f in "$out"/lib/systemd/system/*; do
         substituteInPlace "$f" \
+          --replace "$lib/$libexec" "$out/$libexec" \
           --replace "org.cups.cupsd" "cups" \
           --replace "org.cups." ""
 
diff --git a/pkgs/misc/cups/drivers/cnijfilter_4_00/default.nix b/pkgs/misc/cups/drivers/cnijfilter_4_00/default.nix
index 2856aee4a5d2..b83e84154bbe 100644
--- a/pkgs/misc/cups/drivers/cnijfilter_4_00/default.nix
+++ b/pkgs/misc/cups/drivers/cnijfilter_4_00/default.nix
@@ -9,7 +9,7 @@
 let arch = 
   if stdenv.system == "x86_64-linux" then "64"
     else if stdenv.system == "i686-linux" then "32"
-    else abort "Unsupported architecture";
+    else throw "Unsupported system ${stdenv.system}";
 
 in stdenv.mkDerivation rec {
   name = "cnijfilter-${version}";
diff --git a/pkgs/misc/cups/drivers/kyocera/default.nix b/pkgs/misc/cups/drivers/kyocera/default.nix
index be9d4f837092..17e5b37ed440 100644
--- a/pkgs/misc/cups/drivers/kyocera/default.nix
+++ b/pkgs/misc/cups/drivers/kyocera/default.nix
@@ -4,7 +4,7 @@ let
   platform =
     if stdenv.system == "x86_64-linux" then "64bit"
     else if stdenv.system == "i686-linux" then "32bit"
-         else abort "Unsupported platform";
+         else throw "Unsupported system: ${stdenv.system}";
 
   libPath = lib.makeLibraryPath [ cups ];
 in
diff --git a/pkgs/misc/drivers/sundtek/default.nix b/pkgs/misc/drivers/sundtek/default.nix
index 4dc0f2591d82..35a9bd2e3844 100644
--- a/pkgs/misc/drivers/sundtek/default.nix
+++ b/pkgs/misc/drivers/sundtek/default.nix
@@ -9,7 +9,7 @@ let
     if isx86_64 then "64bit"
     else
     if isi686 then "32bit"
-    else abort "${system} not considered in build derivation. Might still be supported.";
+    else throw "${system} not considered in build derivation. Might still be supported.";
 
 in
   stdenv.mkDerivation {
diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix
index 199e4bd896d7..7580fd9d5bb9 100644
--- a/pkgs/misc/uboot/default.nix
+++ b/pkgs/misc/uboot/default.nix
@@ -21,6 +21,10 @@ let
 
     patches = [
       (fetchpatch {
+        url = https://github.com/dezgeg/u-boot/commit/cbsize-2017-11.patch;
+        sha256 = "08rqsrj78aif8vaxlpwiwwv1jwf0diihbj0h88hc0mlp0kmyqxwm";
+      })
+      (fetchpatch {
         url = https://github.com/dezgeg/u-boot/commit/rpi-2017-11-patch1.patch;
         sha256 = "067yq55vv1slv4xy346px7h329pi14abdn04chg6s1s6hmf6c1x9";
       })
@@ -118,12 +122,24 @@ in rec {
     filesToInstall = ["u-boot-dtb.bin"];
   };
 
+  ubootOrangePiPc = buildUBoot rec {
+    defconfig = "orangepi_pc_defconfig";
+    targetPlatforms = ["armv7l-linux"];
+    filesToInstall = ["u-boot-sunxi-with-spl.bin"];
+  };
+
   ubootPcduino3Nano = buildUBoot rec {
     defconfig = "Linksprite_pcDuino3_Nano_defconfig";
     targetPlatforms = ["armv7l-linux"];
     filesToInstall = ["u-boot-sunxi-with-spl.bin"];
   };
 
+  ubootQemuArm = buildUBoot rec {
+    defconfig = "qemu_arm_defconfig";
+    targetPlatforms = ["armv7l-linux"];
+    filesToInstall = ["u-boot.bin"];
+  };
+
   ubootRaspberryPi = buildUBoot rec {
     defconfig = "rpi_defconfig";
     targetPlatforms = ["armv6l-linux"];
diff --git a/pkgs/misc/vscode-extensions/default.nix b/pkgs/misc/vscode-extensions/default.nix
index 8047e29ad558..16ddb8fd4052 100644
--- a/pkgs/misc/vscode-extensions/default.nix
+++ b/pkgs/misc/vscode-extensions/default.nix
@@ -1,7 +1,8 @@
 { stdenv, lib, fetchurl, callPackage, vscode-utils }:
 
 let
-  inherit (vscode-utils) buildVscodeExtension buildVscodeMarketplaceExtension;
+  inherit (vscode-utils) buildVscodeExtension buildVscodeMarketplaceExtension
+      extensionFromVscodeMarketplace;
 in
 #
 # Unless there is a good reason not to, we attemp to use the same name as the 
@@ -24,4 +25,6 @@ rec {
   };
 
   ms-vscode.cpptools = callPackage ./cpptools {};
+  
+  ms-python.python = callPackage ./python {};
 }
\ No newline at end of file
diff --git a/pkgs/misc/vscode-extensions/python/default.nix b/pkgs/misc/vscode-extensions/python/default.nix
new file mode 100644
index 000000000000..4e28de871b84
--- /dev/null
+++ b/pkgs/misc/vscode-extensions/python/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, lib, vscode-utils
+
+, pythonUseFixed ? false, python  # When `true`, the python default setting will be fixed to specified. 
+                                  # Use version from `PATH` for default setting otherwise.
+                                  # Defaults to `false` as we expect it to be project specific most of the time.
+, ctagsUseFixed ? true, ctags     # When `true`, the ctags default setting will be fixed to specified. 
+                                  # Use version from `PATH` for default setting otherwise.
+                                  # Defaults to `true` as usually not defined on a per projet basis.
+}:
+
+assert pythonUseFixed -> null != python;
+assert ctagsUseFixed -> null != ctags;
+
+let
+  pythonDefaultsTo = if pythonUseFixed then "${python}/bin/python" else "python";
+  ctagsDefaultsTo = if ctagsUseFixed then "${ctags}/bin/ctags" else "ctags";
+in
+
+vscode-utils.buildVscodeMarketplaceExtension {
+  mktplcRef = {
+    name = "python";
+    publisher = "ms-python";
+    version = "0.8.0";
+    sha256 = "0i7s93l5g5lyi6vn77zh3ipj0p267y17fayv6vjrxc2igrs27ik6";
+  };
+
+  postPatch = ''
+    # Patch `packages.json` so that nix's *python* is used as default value for `python.pythonPath`.
+    substituteInPlace "./package.json" \
+      --replace "\"default\": \"python\"" "\"default\": \"${pythonDefaultsTo}\""
+
+    # Patch `packages.json` so that nix's *ctags* is used as default value for `python.workspaceSymbols.ctagsPath`.
+    substituteInPlace "./package.json" \
+      --replace "\"default\": \"ctags\"" "\"default\": \"${ctagsDefaultsTo}\""
+  '';
+
+    meta = with lib; {
+      license = licenses.mit;
+      maintainer = [ maintainers.jraygauthier ];
+    };
+}
\ No newline at end of file
diff --git a/pkgs/misc/vscode-extensions/vscode-utils.nix b/pkgs/misc/vscode-extensions/vscode-utils.nix
index f6e906ab575b..83cb559dca12 100644
--- a/pkgs/misc/vscode-extensions/vscode-utils.nix
+++ b/pkgs/misc/vscode-extensions/vscode-utils.nix
@@ -70,12 +70,14 @@ let
       mktplcRef = ext; 
     }); 
 
+  extensionFromVscodeMarketplace = mktplcExtRefToExtDrv;
   extensionsFromVscodeMarketplace = mktplcExtRefList:
-    builtins.map mktplcExtRefToExtDrv mktplcExtRefList;
+    builtins.map extensionFromVscodeMarketplace mktplcExtRefList;
 
 in
 
 {
   inherit fetchVsixFromVscodeMarketplace buildVscodeExtension 
-          buildVscodeMarketplaceExtension extensionsFromVscodeMarketplace;
+          buildVscodeMarketplaceExtension extensionFromVscodeMarketplace
+          extensionsFromVscodeMarketplace;
 }
\ No newline at end of file
diff --git a/pkgs/os-specific/linux/broadcom-sta/default.nix b/pkgs/os-specific/linux/broadcom-sta/default.nix
index 3143968d75c8..8a42e5a0b262 100644
--- a/pkgs/os-specific/linux/broadcom-sta/default.nix
+++ b/pkgs/os-specific/linux/broadcom-sta/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://docs.broadcom.com/docs-and-downloads/docs/linux_sta/${tarball}";
-    sha256 = hashes."${stdenv.system}";
+    sha256 = hashes.${stdenv.system} or (throw "Unsupported system: ${stdenv.system}");
   };
 
   hardeningDisable = [ "pic" ];
diff --git a/pkgs/os-specific/linux/conky/default.nix b/pkgs/os-specific/linux/conky/default.nix
index fd585515cf02..b7a8dc23a787 100644
--- a/pkgs/os-specific/linux/conky/default.nix
+++ b/pkgs/os-specific/linux/conky/default.nix
@@ -131,6 +131,10 @@ stdenv.mkDerivation rec {
     ++ optional nvidiaSupport       "-DBUILD_NVIDIA=ON"
     ;
 
+  # `make -f src/CMakeFiles/conky.dir/build.make src/CMakeFiles/conky.dir/conky.cc.o`:
+  # src/conky.cc:137:23: fatal error: defconfig.h: No such file or directory
+  enableParallelBuilding = false;
+
   meta = with stdenv.lib; {
     homepage = http://conky.sourceforge.net/;
     description = "Advanced, highly configurable system monitor based on torsmo";
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index b2aa19371126..0044a3f6f4ab 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -2,7 +2,7 @@
 
 stdenv.mkDerivation rec {
   name = "firmware-linux-nonfree-${version}";
-  version = "2017-10-13-${src.iwlRev}";
+  version = "2017-12-06-${src.iwlRev}";
 
   # The src runCommand automates the process of building a merged repository of both
   #
@@ -18,12 +18,12 @@ stdenv.mkDerivation rec {
 
   src = runCommand "firmware-linux-nonfree-src-merged-${version}" {
     shallowSince = "2017-10-01";
-    baseRev = "85313b4aa4ef0c2ce41bbd0ffdb9b03363256f28";
+    baseRev = "7f93c9deb484c0a8f4cf59780e77dc7b0c14abe3";
     iwlRev = "iwlwifi-fw-2017-11-15";
 
     # When updating this, you need to let it run with a wrong hash, in order to find out the desired hash
     # randomly mutate the hash to break out of fixed hash, when updating
-    outputHash = "0kpg1xmx5mjnqxv5n21yvvq4sl59yjpwjv9ficd054544q1v2jly";
+    outputHash = "007ncka33vkyaxnih3a36w5pnhn19wdzjl95ig7lhznzvf1bnc1w";
 
     outputHashAlgo = "sha256";
     outputHashMode = "recursive";
diff --git a/pkgs/os-specific/linux/kernel/linux-4.14.nix b/pkgs/os-specific/linux/kernel/linux-4.14.nix
index 8d07fdb64625..2b1b7e6f82a0 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.14.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.14.nix
@@ -3,7 +3,7 @@
 with stdenv.lib;
 
 import ./generic.nix (args // rec {
-  version = "4.14.5";
+  version = "4.14.6";
 
   # modDirVersion needs to be x.y.z, will automatically add .0 if needed
   modDirVersion = concatStrings (intersperse "." (take 3 (splitString "." "${version}.0")));
@@ -13,6 +13,6 @@ import ./generic.nix (args // rec {
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "1nkm54h6sr9bwhm67iy8jk3vklkgxs1sxjpj9wyxb69l0fya72fm";
+    sha256 = "1k3c6kmb7zwyh1ga3jb1bimqjszmcdihn2ndvvdns57am65nf1q9";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 04fc40638d78..3fa049977cc5 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,11 +1,11 @@
 { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.4.105";
+  version = "4.4.106";
   extraMeta.branch = "4.4";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0h0ivdw74m3s2j9llh0hnigv790jgy6lhcf6jn2csxmvg3ai5sfn";
+    sha256 = "0h7b3mw20hlx2xxmh0xy7ffm9pdnb51qn56xrnds2mjpx47k147y";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 5956d197836c..1db9e3c45235 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,11 +1,11 @@
 { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.9.68";
+  version = "4.9.70";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0462cs1n04mw3df216q4qqxjgrhn76rdrnsdnf8myiccgmin0zyv";
+    sha256 = "02ihsl286wq2fkbsiwmdk4na20nlrq628190libx583ghbrlbbxs";
   };
 } // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix b/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
index 365f6ce54a07..ef40d6e9e43a 100644
--- a/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
+++ b/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
@@ -3,9 +3,9 @@
 with stdenv.lib;
 
 let
-  version = "4.14.4";
+  version = "4.14.6";
   revision = "a";
-  sha256 = "1h99nhm3yd528gj0wg71lzi8v314r6r00m8zh2cw2sz82k7fds4w";
+  sha256 = "1hg44q4vzhnfcd9yj2p9ca89gz7dz0v210scz504fzy4q0rljiz8";
 
   # modVersion needs to be x.y.z, will automatically add .0 if needed
   modVersion = concatStrings (intersperse "." (take 3 (splitString "." "${version}.0")));
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index 7268ed30eff0..c785ad4a4f77 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -1,13 +1,13 @@
 { stdenv, hostPlatform, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.15-rc2";
-  modDirVersion = "4.15.0-rc2";
+  version = "4.15-rc3";
+  modDirVersion = "4.15.0-rc3";
   extraMeta.branch = "4.15";
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "1i79gkjipj1q7w0d4zjz2hj43r12jicgznxk0wz0la2d8a4d3lcq";
+    sha256 = "1rbyh5phx6mfr3wrz3q33gj8bgw2r76hvbzhvq1ya7fw54jjnz98";
   };
 
   # Should the testing kernels ever be built on Hydra?
diff --git a/pkgs/os-specific/linux/prl-tools/default.nix b/pkgs/os-specific/linux/prl-tools/default.nix
index 9fe331e6cb12..12b361e953ea 100644
--- a/pkgs/os-specific/linux/prl-tools/default.nix
+++ b/pkgs/os-specific/linux/prl-tools/default.nix
@@ -10,7 +10,7 @@ let xorgFullVer = (builtins.parseDrvName xorg.xorgserver.name).version;
     xorgVer = lib.concatStringsSep "." (lib.take 2 (lib.splitString "." xorgFullVer));
     x64 = if stdenv.system == "x86_64-linux" then true
           else if stdenv.system == "i686-linux" then false
-          else abort "Parallels Tools for Linux only support {x86-64,i686}-linux targets";
+          else throw "Parallels Tools for Linux only support {x86-64,i686}-linux targets";
 in
 stdenv.mkDerivation rec {
   version = "${prl_major}.2.1-41615";
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
index b2d090fa7ea2..387dc2b7c675 100644
--- a/pkgs/os-specific/linux/spl/default.nix
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -66,10 +66,8 @@ in
   assert buildKernel -> kernel != null;
 {
     splStable = common {
-      version = "0.7.3";
-      sha256 = "0j8mb9ky3pjz9hnz5w6fajpzajl15jq3p0xvxb6lhpqj3rjzsqxb";
-
-      broken = kernel != null && stdenv.lib.versionAtLeast kernel.version "4.14";
+      version = "0.7.4";
+      sha256 = "0vmakqi3zm8ka5cglif45ll2m6ynq7r55mhk8d1rzjkgi191cddh";
     };
 
     splUnstable = common {
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 8d6aa033d898..5ede0a91b291 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -140,9 +140,9 @@ in {
     incompatibleKernelVersion = null;
 
     # this package should point to the latest release.
-    version = "0.7.3";
+    version = "0.7.4";
 
-    sha256 = "1bbajrwfilnmfhn1n69gvsaznyc4q29wi7nkwc0p9r4dli37w28b";
+    sha256 = "1djm97nlipn0fch1vcvpw94bnfvg9ylv9i2hp46dzaxhdh7bm265";
 
     extraPatches = [
       (fetchpatch {
diff --git a/pkgs/servers/dns/knot-resolver/default.nix b/pkgs/servers/dns/knot-resolver/default.nix
index d8aed9b3143f..531d88b78bee 100644
--- a/pkgs/servers/dns/knot-resolver/default.nix
+++ b/pkgs/servers/dns/knot-resolver/default.nix
@@ -10,11 +10,11 @@ let
 in
 stdenv.mkDerivation rec {
   name = "knot-resolver-${version}";
-  version = "1.5.0";
+  version = "1.5.1";
 
   src = fetchurl {
     url = "http://secure.nic.cz/files/knot-resolver/${name}.tar.xz";
-    sha256 = "c032e63a6b922294746e1ab4002860346e7a6d92b8502965a13ba599088fcb42";
+    sha256 = "146dcb24422ef685fb4167e3c536a838cf4101acaa85fcfa0c150eebdba78f81";
   };
 
   outputs = [ "out" "dev" ];
@@ -37,11 +37,10 @@ stdenv.mkDerivation rec {
 
   enableParallelBuilding = true;
 
+  doCheck = true;
   doInstallCheck = true;
-  installCheckTarget = "check";
   preInstallCheck = ''
-    export LD_LIBRARY_PATH="$out/lib"
-    sed '/^\thints$/c #' -i tests/config/test_config.mk
+    patchShebangs tests/config/runtest.sh
   '';
 
   postInstall = ''
diff --git a/pkgs/servers/dns/pdns-recursor/default.nix b/pkgs/servers/dns/pdns-recursor/default.nix
index 9b017249c15e..1750a574af7d 100644
--- a/pkgs/servers/dns/pdns-recursor/default.nix
+++ b/pkgs/servers/dns/pdns-recursor/default.nix
@@ -11,11 +11,11 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "pdns-recursor-${version}";
-  version = "4.0.6";
+  version = "4.0.8";
 
   src = fetchurl {
     url = "https://downloads.powerdns.com/releases/pdns-recursor-${version}.tar.bz2";
-    sha256 = "03fnjiacvhdlkr3a2206mham0p6p24gkawashs5v12r68k32l67j";
+    sha256 = "04v5y6mfdhn8ikigqmm3k5k0zz5l8d3k1a7ih464n1161q7z0vww";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/servers/dns/powerdns/default.nix b/pkgs/servers/dns/powerdns/default.nix
index ff21a9e8f090..d7556a39ee92 100644
--- a/pkgs/servers/dns/powerdns/default.nix
+++ b/pkgs/servers/dns/powerdns/default.nix
@@ -5,11 +5,11 @@
 
 stdenv.mkDerivation rec {
   name = "powerdns-${version}";
-  version = "4.0.4";
+  version = "4.0.5";
 
   src = fetchurl {
     url = "http://downloads.powerdns.com/releases/pdns-${version}.tar.bz2";
-    sha256 = "0qypns1iqlrc5d3iwabrsi1vpb0yffy36chsb1zpqiv9vs4snx6r";
+    sha256 = "097ci4s2c63gl0bil8yh87dsy0sk3fds4w8cpyjh5kns6zazmj2v";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/servers/http/nginx/modules.nix b/pkgs/servers/http/nginx/modules.nix
index de6fd61ee813..b1102ca62b5c 100644
--- a/pkgs/servers/http/nginx/modules.nix
+++ b/pkgs/servers/http/nginx/modules.nix
@@ -1,4 +1,4 @@
-{ fetchFromGitHub, pkgs }:
+{ fetchFromGitHub, fetchurl, lib, pkgs }:
 
 {
   brotli = {
@@ -11,12 +11,12 @@
     };
   };
 
-  rtmp = {
+  rtmp ={
     src = fetchFromGitHub {
       owner = "arut";
       repo = "nginx-rtmp-module";
-      rev = "v1.1.11";
-      sha256 = "09zrnf8lk179mpqnx92zm24xl7m3bq4ca84wc2zwi5hc8kxjbwxc";
+      rev = "v1.2.1";
+      sha256 = "0na1aam176irz6w148hnvamqy1ilbn4abhdzkva0yrm35a3ksbzn";
     };
   };
 
diff --git a/pkgs/servers/mail/postfix/default.nix b/pkgs/servers/mail/postfix/default.nix
index 7b6be5ec39e8..c92507b4167d 100644
--- a/pkgs/servers/mail/postfix/default.nix
+++ b/pkgs/servers/mail/postfix/default.nix
@@ -25,11 +25,11 @@ in stdenv.mkDerivation rec {
 
   name = "postfix-${version}";
 
-  version = "3.2.3";
+  version = "3.2.4";
 
   src = fetchurl {
     url = "ftp://ftp.cs.uu.nl/mirror/postfix/postfix-release/official/${name}.tar.gz";
-    sha256 = "1gs025smgynrlsg44cypjam99ds92mc9q46l5085d9sy0xfrf2sv";
+    sha256 = "1xn782bvzbrdwkz04smkq8ns89wbnqz11vnmz0m7jr545amfnmgc";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/servers/monitoring/grafana/default.nix b/pkgs/servers/monitoring/grafana/default.nix
index fbe49dd634ec..fbb1cf335231 100644
--- a/pkgs/servers/monitoring/grafana/default.nix
+++ b/pkgs/servers/monitoring/grafana/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoPackage, fetchurl, fetchFromGitHub, phantomjs2 }:
 
 buildGoPackage rec {
-  version = "4.6.2";
+  version = "4.6.3";
   name = "grafana-v${version}";
   goPackagePath = "github.com/grafana/grafana";
 
@@ -9,12 +9,12 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "grafana";
     repo = "grafana";
-    sha256 = "0awf00n3rrxjyiza3mga496k1k9c4fkg6rxn9azdab1qvdkzh513";
+    sha256 = "18r35pwarbgamhd7m9z4wpx6x1ymd5qsymvfll58zcgivis6c32j";
   };
 
   srcStatic = fetchurl {
     url = "https://s3-us-west-2.amazonaws.com/grafana-releases/release/grafana-${version}.linux-x64.tar.gz";
-    sha256 = "08svlg190h5nvv701lcl3a2iak2xdmslpdwjv2w5fcdfyp7bd6ld";
+    sha256 = "01f50w57n7p7if37rhj8zy0y0x84qajbxrrdcfrsbi2qi1kzfz03";
   };
 
   preBuild = "export GOPATH=$GOPATH:$NIX_BUILD_TOP/go/src/${goPackagePath}/Godeps/_workspace";
diff --git a/pkgs/servers/nosql/cassandra/3.11.nix b/pkgs/servers/nosql/cassandra/3.11.nix
new file mode 100644
index 000000000000..4647260b1e28
--- /dev/null
+++ b/pkgs/servers/nosql/cassandra/3.11.nix
@@ -0,0 +1,6 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // {
+  version = "3.11.1";
+  sha256 = "1vgh4ysnl4xg8g5v6zm78h3sq308r7s17ppbw0ck4bwyfnbddvkg";
+})
diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix
index b9d77d980a12..cd20c4a3cefc 100644
--- a/pkgs/stdenv/generic/check-meta.nix
+++ b/pkgs/stdenv/generic/check-meta.nix
@@ -125,11 +125,18 @@ let
 
       '';
 
-  throwEvalHelp = { reason , errormsg ? "" }:
-    throw (''
-      Package ‘${attrs.name or "«name-missing»"}’ in ${pos_str} ${errormsg}, refusing to evaluate.
+  handleEvalIssue = { reason , errormsg ? "" }:
+    let
+      msg = ''
+        Package ‘${attrs.name or "«name-missing»"}’ in ${pos_str} ${errormsg}, refusing to evaluate.
+
+      '' + (builtins.getAttr reason remediation) attrs;
+
+      handler = if config ? "handleEvalIssue"
+        then config.handleEvalIssue reason
+        else throw;
+    in handler msg;
 
-      '' + ((builtins.getAttr reason remediation) attrs));
 
   metaTypes = with lib.types; rec {
     # These keys are documented
@@ -146,6 +153,7 @@ let
     broken = bool;
 
     # Weirder stuff that doesn't appear in the documentation?
+    knownVulnerabilities = listOf str;
     version = str;
     tag = str;
     updateWalker = bool;
@@ -192,7 +200,7 @@ let
   validityCondition =
          let v = checkValidity attrs;
          in if !v.valid
-           then throwEvalHelp (removeAttrs v ["valid"])
+           then handleEvalIssue (removeAttrs v ["valid"])
            else true;
 
 in
diff --git a/pkgs/tools/audio/abcmidi/default.nix b/pkgs/tools/audio/abcmidi/default.nix
index dee7d19e8c7b..49647aafc11b 100644
--- a/pkgs/tools/audio/abcmidi/default.nix
+++ b/pkgs/tools/audio/abcmidi/default.nix
@@ -1,17 +1,15 @@
-{ stdenv, fetchurl, unzip }:
+{ stdenv, fetchzip }:
 
 stdenv.mkDerivation rec {
   name = "abcMIDI-${version}";
-  version = "2017.11.27";
+  version = "2017.12.10";
 
   # You can find new releases on http://ifdo.ca/~seymour/runabc/top.html
-  src = fetchurl {
+  src = fetchzip {
     url = "http://ifdo.ca/~seymour/runabc/${name}.zip";
-    sha256 = "095nnyaqnsr3v7hsswpad9g0hxdnr4s6z8yk1bmr3g1j0cfv1xs9";
+    sha256 = "0m6mv6hlpzg14y5vsjicvi6lpmymsi1q4wz8sfliric3n1zb7ygz";
   };
 
-  nativeBuildInputs = [ unzip ];
-
   # There is also a file called "makefile" which seems to be preferred by the standard build phase
   makefile = "Makefile";
 
diff --git a/pkgs/tools/audio/pulsemixer/default.nix b/pkgs/tools/audio/pulsemixer/default.nix
index f07bf7d3fc51..8251c7d5cfc9 100644
--- a/pkgs/tools/audio/pulsemixer/default.nix
+++ b/pkgs/tools/audio/pulsemixer/default.nix
@@ -3,13 +3,13 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "pulsemixer";
-  version = "1.3.0-license";
+  version = "1.4.0";
 
   src = fetchFromGitHub {
     owner = "GeorgeFilipkin";
     repo = pname;
     rev = version;
-    sha256 = "186xbzyn35w2j58l68mccj0cnf0wxj93zb7s0r26zj4cppwszn90";
+    sha256 = "0l5zawv36d46sj3k31k5w6imnnxzyn62r83wdhr7fp5mi3ls1h5x";
   };
 
   inherit libpulseaudio;
diff --git a/pkgs/tools/backup/ugarit-manifest-maker/eggs.nix b/pkgs/tools/backup/ugarit-manifest-maker/eggs.nix
index 182af5328eeb..0af5dd5bfff1 100644
--- a/pkgs/tools/backup/ugarit-manifest-maker/eggs.nix
+++ b/pkgs/tools/backup/ugarit-manifest-maker/eggs.nix
@@ -294,12 +294,12 @@ rec {
   };
 
   ssql = eggDerivation {
-    name = "ssql-0.2.2";
+    name = "ssql-0.2.4";
 
     src = fetchegg {
       name = "ssql";
-      version = "0.2.2";
-      sha256 = "10557ymy0fgvqqazsg2jsbqvng0b91jqcjfgsxkrq8xs3klyd5mf";
+      version = "0.2.4";
+      sha256 = "0qhnghhx1wrvav4s7l780mspwlh8s6kzq4bl0cslwp1km90fx9bk";
     };
 
     buildInputs = [
diff --git a/pkgs/tools/backup/ugarit/eggs.nix b/pkgs/tools/backup/ugarit/eggs.nix
index cd7cde778fa2..9329618887fb 100644
--- a/pkgs/tools/backup/ugarit/eggs.nix
+++ b/pkgs/tools/backup/ugarit/eggs.nix
@@ -294,12 +294,12 @@ rec {
   };
 
   ssql = eggDerivation {
-    name = "ssql-0.2.2";
+    name = "ssql-0.2.4";
 
     src = fetchegg {
       name = "ssql";
-      version = "0.2.2";
-      sha256 = "10557ymy0fgvqqazsg2jsbqvng0b91jqcjfgsxkrq8xs3klyd5mf";
+      version = "0.2.4";
+      sha256 = "0qhnghhx1wrvav4s7l780mspwlh8s6kzq4bl0cslwp1km90fx9bk";
     };
 
     buildInputs = [
diff --git a/pkgs/tools/graphics/graphviz/0001-vimdot-lookup-vim-in-PATH.patch b/pkgs/tools/graphics/graphviz/0001-vimdot-lookup-vim-in-PATH.patch
deleted file mode 100644
index d5f71a4de9e5..000000000000
--- a/pkgs/tools/graphics/graphviz/0001-vimdot-lookup-vim-in-PATH.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From 2008bf62e13ebe41cdad3e16f8b42f46ae393876 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= <bjorn.forsman@gmail.com>
-Date: Tue, 6 Jan 2015 20:39:41 +0100
-Subject: [PATCH] vimdot: lookup 'vim' in $PATH
-
-Instead of hardcoding /usr/bin/vim. Needed for NixOS (http://nixos.org), and is
-probably useful for others too.
----
- plugin/xlib/vimdot.sh | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/plugin/xlib/vimdot.sh b/plugin/xlib/vimdot.sh
-index 749fe6a..4e6dd4b 100755
---- a/plugin/xlib/vimdot.sh
-+++ b/plugin/xlib/vimdot.sh
-@@ -3,9 +3,9 @@
- 
- error() { echo "$0: $*" >&2; exit 1; }
- 
--editor="/usr/bin/vim"
-+editor="vim"
- 
--if ! test -x "$editor"; then error "the \"$editor\" editor not found or not executable"; fi
-+if ! test -x "$(command -v "$editor")"; then error "the \"$editor\" editor not found or not executable"; fi
- 
- default="noname.gv"
- 
--- 
-2.1.3
-
diff --git a/pkgs/tools/graphics/graphviz/2.32.nix b/pkgs/tools/graphics/graphviz/2.32.nix
index fb8f0472ce35..544949f33b71 100644
--- a/pkgs/tools/graphics/graphviz/2.32.nix
+++ b/pkgs/tools/graphics/graphviz/2.32.nix
@@ -1,67 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, libpng, libjpeg, expat, libXaw
-, yacc, libtool, fontconfig, pango, gd, xorg, gts, gettext, cairo
-, ApplicationServices
-}:
-
-stdenv.mkDerivation rec {
+import ./base.nix {
+  rev = "10c3c34c5198beacfba950764f34960c6884a34f";
   version = "2.32.0";
-  name = "graphviz-${version}";
-
-  src = fetchurl {
-    url = "http://www.graphviz.org/pub/graphviz/ARCHIVE/${name}.tar.gz";
-    sha256 = "0ym7lw3xnkcgbk32vfmm3329xymca60gzn90rq6dv8887qqv4lyq";
-  };
-
-  buildInputs =
-    [ pkgconfig libpng libjpeg expat libXaw yacc libtool fontconfig
-      pango gd gts
-    ] ++ stdenv.lib.optionals (xorg != null) [ xorg.xlibsWrapper xorg.libXrender ]
-    ++ stdenv.lib.optionals stdenv.isDarwin [ ApplicationServices gettext ];
-
-  CPPFLAGS = stdenv.lib.optionalString (stdenv.system == "x86_64-darwin") "-I${cairo.dev}/include/cairo";
-
-  configureFlags =
-    [ "--with-pngincludedir=${libpng.dev}/include"
-      "--with-pnglibdir=${libpng.out}/lib"
-      "--with-jpegincludedir=${libjpeg.dev}/include"
-      "--with-jpeglibdir=${libjpeg.out}/lib"
-      "--with-expatincludedir=${expat.dev}/include"
-      "--with-expatlibdir=${expat.out}/lib"
-      "--with-ltdl-include=${libtool}/include"
-      "--with-ltdl-lib=${libtool.lib}/lib"
-      "--with-cgraph=no"
-      "--with-sparse=no"
-    ]
-    ++ stdenv.lib.optional (xorg == null) "--without-x";
-
-  hardeningDisable = [ "fortify" ];
-
-  preBuild = ''
-    sed -e 's@am__append_5 *=.*@am_append_5 =@' -i lib/gvc/Makefile
-  '';
-
-  # "command -v" is POSIX, "which" is not
-  postInstall = ''
-    sed -i 's|`which lefty`|"'$out'/bin/lefty"|' $out/bin/dotty
-    sed -i 's|which|command -v|' $out/bin/vimdot
-  '';
-
-  meta = {
-    homepage = http://www.graphviz.org/;
-    description = "Open source graph visualization software";
-
-    longDescription = ''
-      Graphviz is open source graph visualization software. Graph
-      visualization is a way of representing structural information as
-      diagrams of abstract graphs and networks. It has important
-      applications in networking, bioinformatics, software engineering,
-      database and web design, machine learning, and in visual
-      interfaces for other technical domains.
-    '';
-
-    platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
-    maintainers = with stdenv.lib.maintainers; [ bjornfor raskin ];
-    inherit version;
-    branch = "2.32";
-  };
+  sha256 = "18b2wnz6xk8hndy7dlr1vn9vziyryyflh747n9966778gmh8bick";
 }
diff --git a/pkgs/tools/graphics/graphviz/base.nix b/pkgs/tools/graphics/graphviz/base.nix
new file mode 100644
index 000000000000..8a46b302dcdf
--- /dev/null
+++ b/pkgs/tools/graphics/graphviz/base.nix
@@ -0,0 +1,59 @@
+{ rev, sha256, version }:
+
+{ stdenv, fetchFromGitLab, autoreconfHook, pkgconfig, cairo, expat, flex
+, fontconfig, gd, gettext, gts, libdevil, libjpeg, libpng, libtool, pango
+, yacc, xorg ? null, ApplicationServices ? null }:
+
+assert stdenv.isDarwin -> ApplicationServices != null;
+
+let
+  inherit (stdenv.lib) optional optionals optionalString;
+in
+
+stdenv.mkDerivation rec {
+  name = "graphviz-${version}";
+
+  src = fetchFromGitLab {
+    owner = "graphviz";
+    repo = "graphviz";
+    inherit sha256 rev;
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+
+  buildInputs = [
+    libpng libjpeg expat yacc libtool fontconfig gd gts libdevil flex pango
+  ] ++ optionals (xorg != null) (with xorg; [ libXrender libXaw libXpm ])
+    ++ optionals (stdenv.isDarwin) [ ApplicationServices gettext ];
+
+  hardeningDisable = [ "fortify" ];
+
+  CPPFLAGS = stdenv.lib.optionalString (xorg != null && stdenv.isDarwin)
+    "-I${cairo.dev}/include/cairo";
+
+  configureFlags = optional (xorg == null) "--without-x";
+
+  postPatch = ''
+    for f in $(find . -name Makefile.in); do
+      substituteInPlace $f --replace "-lstdc++" "-lc++"
+    done
+  '';
+
+  preAutoreconf = "./autogen.sh";
+
+  postFixup = optionalString (xorg != null) ''
+    substituteInPlace $out/bin/dotty --replace '`which lefty`' $out/bin/lefty
+    substituteInPlace $out/bin/vimdot \
+      --replace /usr/bin/vi '$(command -v vi)' \
+      --replace /usr/bin/vim '$(command -v vim)' \
+      --replace /usr/bin/vimdot $out/bin/vimdot \
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://graphviz.org;
+    description = "Graph visualization tools";
+    license = licenses.epl10;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ bjornfor raskin ];
+  };
+}
diff --git a/pkgs/tools/graphics/graphviz/cve-2014-9157.patch b/pkgs/tools/graphics/graphviz/cve-2014-9157.patch
deleted file mode 100644
index 66ce496ca748..000000000000
--- a/pkgs/tools/graphics/graphviz/cve-2014-9157.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-From https://lists.debian.org/debian-qa-packages/2014/12/msg00048.html , which
-seems to come from Ubuntu.
-
-Subject: Fix format string vulnerability (CVE-2014-9157) in yyerror() routine
-Origin: https://github.com/ellson/graphviz/commit/99eda421f7ddc27b14e4ac1d2126e5fe41719081
-Author: Emden R. Gansner
-
----
- lib/cgraph/scan.l |    2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-Index: b/lib/cgraph/scan.l
-===================================================================
---- a/lib/cgraph/scan.l
-+++ b/lib/cgraph/scan.l
-@@ -225,7 +225,7 @@
- 	agxbput (&xb, buf);
- 	agxbput (&xb, yytext);
- 	agxbput (&xb,"'\n");
--	agerr(AGERR,agxbuse(&xb));
-+	agerr(AGERR, "%s", agxbuse(&xb));
- 	agxbfree(&xb);
- }
- /* must be here to see flex's macro defns */
diff --git a/pkgs/tools/graphics/graphviz/default.nix b/pkgs/tools/graphics/graphviz/default.nix
index ce864261c8b3..48b1b0764c51 100644
--- a/pkgs/tools/graphics/graphviz/default.nix
+++ b/pkgs/tools/graphics/graphviz/default.nix
@@ -1,69 +1,5 @@
-{ stdenv, fetchurl, pkgconfig, libpng, libjpeg, expat
-, yacc, libtool, fontconfig, pango, gd, xorg, gts, libdevil, gettext, cairo
-, flex
-, ApplicationServices
-}:
-
-stdenv.mkDerivation rec {
+import ./base.nix rec {
+  rev = "stable_release_${version}";
   version = "2.40.1";
-  name = "graphviz-${version}";
-
-  src = fetchurl {
-    url = "http://www.graphviz.org/pub/graphviz/ARCHIVE/${name}.tar.gz";
-    sha256 = "08d4ygkxz2f553bxj6087da56a23kx1khv0j8ycxa102vvx1hlna";
-  };
-
-  hardeningDisable = [ "fortify" ];
-
-  patches = [ ];
-
-  buildInputs =
-    [ pkgconfig libpng libjpeg expat yacc libtool fontconfig gd gts libdevil flex pango
-    ] ++ stdenv.lib.optionals (xorg != null)
-      (with xorg; [ xlibsWrapper libXrender libXaw libXpm ])
-    ++ stdenv.lib.optionals (stdenv.isDarwin) [ ApplicationServices gettext ];
-
-  CPPFLAGS = stdenv.lib.optionalString (xorg != null && stdenv.isDarwin)
-    "-I${cairo.dev}/include/cairo";
-
-  configureFlags = stdenv.lib.optional (xorg == null) "--without-x";
-
-  postPatch = (stdenv.lib.optionalString stdenv.isDarwin ''
-    for foo in cmd/dot/Makefile.in cmd/edgepaint/Makefile.in \
-                    cmd/mingle/Makefile.in plugin/gdiplus/Makefile.in; do
-      substituteInPlace "$foo" --replace "-lstdc++" "-lc++"
-    done
-  '') + ''
-      substituteInPlace "plugin/xlib/vimdot.sh" --replace "/usr/bin/vim" "\$(command -v vim)"
-  '';
-
-  preBuild = ''
-    sed -e 's@am__append_5 *=.*@am_append_5 =@' -i lib/gvc/Makefile
-  '';
-
-  # "command -v" is POSIX, "which" is not
-  postInstall = stdenv.lib.optionalString (xorg != null) ''
-    sed -i 's|`which lefty`|"'$out'/bin/lefty"|' $out/bin/dotty
-    sed -i 's|which|command -v|' $out/bin/vimdot
-  '';
-
-  meta = {
-    homepage = http://www.graphviz.org/;
-    description = "Open source graph visualization software";
-
-    longDescription = ''
-      Graphviz is open source graph visualization software. Graph
-      visualization is a way of representing structural information as
-      diagrams of abstract graphs and networks. It has important
-      applications in networking, bioinformatics, software engineering,
-      database and web design, machine learning, and in visual
-      interfaces for other technical domains.
-    '';
-
-    platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
-    maintainers = with stdenv.lib.maintainers; [ bjornfor raskin ];
-    downloadPage = "http://www.graphviz.org/pub/graphviz/ARCHIVE/";
-    inherit version;
-    updateWalker = true;
-  };
-}
+  sha256 = "1xjqq3g2n6jgwp5xzyvibgrxawlskkpam69fjjz9ksrrjas2qwzj";
+ }
diff --git a/pkgs/tools/graphics/pfstools/default.nix b/pkgs/tools/graphics/pfstools/default.nix
index 7e6b3523ed80..a74d83e9a1e2 100644
--- a/pkgs/tools/graphics/pfstools/default.nix
+++ b/pkgs/tools/graphics/pfstools/default.nix
@@ -1,12 +1,16 @@
-{ stdenv, fetchurl, cmake, pkgconfig, openexr, ilmbase, zlib, imagemagick, mesa, freeglut, fftwFloat, fftw, gsl, libexif, perl, opencv, qt4 }:
+{ stdenv, fetchurl, cmake, pkgconfig
+, openexr, zlib, imagemagick, mesa, freeglut, fftwFloat
+, fftw, gsl, libexif, perl, opencv, qt4
+}:
 
 stdenv.mkDerivation rec {
-  name = "pfstools";
-  version = "2.0.5";
+  name = "${pname}-${version}";
+  pname = "pfstools";
+  version = "2.1.0";
 
   src = fetchurl {
-    url = "mirror://sourceforge/${name}/${version}/${name}-${version}.tgz";
-    sha256 = "1fyc2c7jzr7k797c2dqyyvapzc3szxwcp48r382yxz2yq558xgd9";
+    url = "mirror://sourceforge/${pname}/${version}/${name}.tgz";
+    sha256 = "04rlb705gmdiphcybf9dyr0d5lla2cfs3c308zz37x0vwi445six";
   };
 
   outputs = [ "out" "dev" "man"];
@@ -15,9 +19,11 @@ stdenv.mkDerivation rec {
     -DWITH_MATLAB=false 
   '';
 
-  buildInputs = [ openexr zlib imagemagick mesa freeglut fftwFloat fftw gsl libexif perl opencv qt4 ];
-
   nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = [
+    openexr zlib imagemagick mesa freeglut fftwFloat
+    fftw gsl libexif perl opencv qt4
+  ];
 
   patches = [ ./threads.patch ./pfstools.patch ];
 
diff --git a/pkgs/tools/misc/calamares/default.nix b/pkgs/tools/misc/calamares/default.nix
new file mode 100644
index 000000000000..d4ee1661801f
--- /dev/null
+++ b/pkgs/tools/misc/calamares/default.nix
@@ -0,0 +1,64 @@
+{ stdenv, fetchurl, boost, cmake, extra-cmake-modules, kparts, kpmcore
+, kservice, libatasmart, libxcb, libyamlcpp, parted, polkit-qt, python, qtbase
+, qtquickcontrols, qtsvg, qttools, qtwebengine, utillinux, glibc, tzdata
+, ckbcomp, xkeyboard_config
+}:
+
+stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+  pname = "calamares";
+  version = "3.1.10";
+
+  # release including submodule
+  src = fetchurl {
+    url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${name}.tar.gz";
+    sha256 = "12phmirx0fgvykvkl8frv5agxqi7n04sxf5bpwjwq12mydq2x7kc";
+  };
+
+  buildInputs = [
+    boost cmake extra-cmake-modules kparts.dev kpmcore.out kservice.dev
+    libatasmart libxcb libyamlcpp parted polkit-qt python qtbase
+    qtquickcontrols qtsvg qttools qtwebengine.dev utillinux
+  ];
+
+  enableParallelBuilding = false;
+
+  cmakeFlags = [
+    "-DPYTHON_LIBRARY=${python}/lib/libpython${python.majorVersion}m.so"
+    "-DPYTHON_INCLUDE_DIR=${python}/include/python${python.majorVersion}m"
+    "-DCMAKE_VERBOSE_MAKEFILE=True"
+    "-DCMAKE_BUILD_TYPE=Release"
+    "-DWITH_PYTHONQT:BOOL=ON"
+  ];
+
+  POLKITQT-1_POLICY_FILES_INSTALL_DIR = "$(out)/share/polkit-1/actions";
+
+  patchPhase = ''
+    sed -e "s,/usr/bin/calamares,$out/bin/calamares," \
+        -i calamares.desktop \
+        -i com.github.calamares.calamares.policy
+
+    sed -e 's,/usr/share/zoneinfo,${tzdata}/share/zoneinfo,' \
+        -i src/modules/locale/timezonewidget/localeconst.h \
+        -i src/modules/locale/SetTimezoneJob.cpp
+
+    sed -e 's,/usr/share/i18n/locales,${glibc.out}/share/i18n/locales,' \
+        -i src/modules/locale/timezonewidget/localeconst.h
+
+    sed -e 's,/usr/share/X11/xkb/rules/base.lst,${xkeyboard_config}/share/X11/xkb/rules/base.lst,' \
+        -i src/modules/keyboard/keyboardwidget/keyboardglobal.h
+
+    sed -e 's,"ckbcomp","${ckbcomp}/bin/ckbcomp",' \
+        -i src/modules/keyboard/keyboardwidget/keyboardpreview.cpp
+
+    sed "s,\''${POLKITQT-1_POLICY_FILES_INSTALL_DIR},''${out}/share/polkit-1/actions," \
+        -i CMakeLists.txt
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Distribution-independent installer framework";
+    license = licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ manveru ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/misc/desktop-file-utils/default.nix b/pkgs/tools/misc/desktop-file-utils/default.nix
index e5e3815481f1..6e2f6548722e 100644
--- a/pkgs/tools/misc/desktop-file-utils/default.nix
+++ b/pkgs/tools/misc/desktop-file-utils/default.nix
@@ -3,11 +3,11 @@
 with stdenv.lib;
 
 stdenv.mkDerivation rec {
-  name = "desktop-file-utils-0.22";
+  name = "desktop-file-utils-0.23";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/desktop-file-utils/releases/${name}.tar.xz";
-    sha256 = "1ianvr2a69yjv4rpyv30w7yjsmnsb23crrka5ndqxycj4rkk4dc4";
+    sha256 = "119kj2w0rrxkhg4f9cf5waa55jz1hj8933vh47vcjipcplql02bc";
   };
 
   nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/tools/misc/direnv/default.nix b/pkgs/tools/misc/direnv/default.nix
index 0753c4292e80..b0c0de996e74 100644
--- a/pkgs/tools/misc/direnv/default.nix
+++ b/pkgs/tools/misc/direnv/default.nix
@@ -2,14 +2,14 @@
 
 buildGoPackage rec {
   name = "direnv-${version}";
-  version = "2.13.3";
+  version = "2.14.0";
   goPackagePath = "github.com/direnv/direnv";
 
   src = fetchFromGitHub {
     owner = "direnv";
     repo = "direnv";
     rev = "v${version}";
-    sha256 = "1scj13qg98p838d2jvn0ks893xvrdrlmvrrjqwvqm11xw0v8bzxr";
+    sha256 = "0xgb895dda7q7qyl5lg1jfjfb82daaf133dx0vw8lp7d67xqv9r8";
   };
 
   postConfigure = ''
diff --git a/pkgs/tools/misc/fd/default.nix b/pkgs/tools/misc/fd/default.nix
index 18176ff370d3..6a7c2cc095d8 100644
--- a/pkgs/tools/misc/fd/default.nix
+++ b/pkgs/tools/misc/fd/default.nix
@@ -2,28 +2,23 @@
 
 rustPlatform.buildRustPackage rec {
   name = "fd-${version}";
-  version = "6.0.0";
+  version = "6.1.0";
 
   src = fetchFromGitHub {
     owner = "sharkdp";
     repo = "fd";
     rev = "v${version}";
-    sha256 = "1pzb6ha9c89zq6nxx0zsyv24diix4z23p8lf7113bfili3as3k5q";
+    sha256 = "1md6k531ymsg99zc6y8lni4cpfz4rcklwgibq1i5xdam3hs1n2jg";
   };
 
-  cargoSha256 = "0y4svzv1y94baciiy08byhywwfshdfqn3nx0c4z23i7ashy8yhnf";
-
-  buildPhase = ''
-    # do not pass --frozen
-    cargo build --release
-  '';
+  cargoSha256 = "00n2j0mjmd4lrfygnv90mixv3hfv1z56zyqcm957cwq08qavqzf1";
 
   preFixup = ''
     mkdir -p "$out/man/man1"
     cp "$src/doc/fd.1" "$out/man/man1"
 
     mkdir -p "$out/share/"{bash-completion/completions,fish/completions,zsh/site-functions}
-    cp target/release/build/fd-find-*/out/fd.bash-completion "$out/share/bash-completion/completions/"
+    cp target/release/build/fd-find-*/out/fd.bash "$out/share/bash-completion/completions/"
     cp target/release/build/fd-find-*/out/fd.fish "$out/share/fish/completions/"
     cp target/release/build/fd-find-*/out/_fd "$out/share/zsh/site-functions/"
   '';
diff --git a/pkgs/tools/misc/mprime/default.nix b/pkgs/tools/misc/mprime/default.nix
index 2aea2530057c..3ef039507d4e 100644
--- a/pkgs/tools/misc/mprime/default.nix
+++ b/pkgs/tools/misc/mprime/default.nix
@@ -5,12 +5,13 @@ let
     if stdenv.system == "x86_64-linux" then "linux64"
     else if stdenv.system == "i686-linux" then "linux"
     else if stdenv.system == "x86_64-darwin" then "macosx64"
-    else abort "Unsupported platform";
+    else throwSystem;
+  throwSystem = throw "Unsupported system: ${stdenv.system}";
   gwnum =
     if stdenv.system == "x86_64-linux" then "make64"
     else if stdenv.system == "i686-linux" then "makefile"
     else if stdenv.system == "x86_64-darwin" then "makemac"
-    else abort "Unsupported platform";
+    else throwSystem;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/tools/misc/recoverjpeg/default.nix b/pkgs/tools/misc/recoverjpeg/default.nix
new file mode 100644
index 000000000000..e0fefe85b9fd
--- /dev/null
+++ b/pkgs/tools/misc/recoverjpeg/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchurl, makeWrapper, python2, exif, imagemagick }:
+
+stdenv.mkDerivation rec {
+  name = "recoverjpeg-${version}";
+  version = "2.6.1";
+
+  src = fetchurl {
+    url = "https://www.rfc1149.net/download/recoverjpeg/${name}.tar.gz";
+    sha256 = "00zi23l4nq9nfjg1zzbpsfxf1s47r5w713aws90w13fd19jqn0rj";
+  };
+
+  nativeBuildInputs = [ makeWrapper ];
+
+  buildInputs = [ python2 ];
+
+  postFixup = ''
+    wrapProgram $out/bin/sort-pictures \
+      --prefix PATH : ${stdenv.lib.makeBinPath [ exif imagemagick ]}
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://rfc1149.net/devel/recoverjpeg.html;
+    description = "Recover lost JPEGs and MOV files on a bogus memory card or disk";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ dotlambda ];
+    platforms = with platforms; linux;
+  };
+}
diff --git a/pkgs/tools/misc/rockbox-utility/default.nix b/pkgs/tools/misc/rockbox-utility/default.nix
index 32f5a551dfe3..e9ed5c0450af 100644
--- a/pkgs/tools/misc/rockbox-utility/default.nix
+++ b/pkgs/tools/misc/rockbox-utility/default.nix
@@ -39,6 +39,12 @@ stdenv.mkDerivation  rec {
     runHook postInstall
   '';
 
+  # `make build/rcc/qrc_rbutilqt-lang.cpp` fails with
+  #      RCC: Error in 'rbutilqt-lang.qrc': Cannot find file 'lang/rbutil_cs.qm'
+  # Do not add `lrelease rbutilqt.pro` into preConfigure, otherwise `make lrelease`
+  # may clobber the files read by the parallel `make build/rcc/qrc_rbutilqt-lang.cpp`.
+  enableParallelBuilding = false;
+
   meta = with stdenv.lib; {
     description = "Open source firmware for mp3 players";
     homepage = http://www.rockbox.org;
diff --git a/pkgs/tools/misc/slop/default.nix b/pkgs/tools/misc/slop/default.nix
index f6c4c3548e2a..d1e5a2451a79 100644
--- a/pkgs/tools/misc/slop/default.nix
+++ b/pkgs/tools/misc/slop/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, cmake
+{ stdenv, fetchFromGitHub, cmake, pkgconfig
 , glew, glm, mesa, libX11, libXext, libXrender, cppcheck, icu}:
 
 stdenv.mkDerivation rec {
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     sha256 = "0is3mh2d1jqgvv72v5x92w23yf26n8n384nbr1b6cn883aw8j7jz";
   };
 
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake pkgconfig ];
   buildInputs = [ glew glm mesa libX11 libXext libXrender icu ]
                 ++ stdenv.lib.optional doCheck cppcheck;
 
diff --git a/pkgs/tools/misc/smenu/default.nix b/pkgs/tools/misc/smenu/default.nix
new file mode 100644
index 000000000000..f1493630a2a5
--- /dev/null
+++ b/pkgs/tools/misc/smenu/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, ncurses }:
+
+stdenv.mkDerivation rec {
+  version = "v0.9.10";
+  name = "smenu-${version}";
+
+  src = fetchFromGitHub {
+    owner  = "p-gen";
+    repo   = "smenu";
+    rev    = version;
+    sha256 = "1fh0s5zhx8ps760w0yxjv682lhahz1j63i0gdwvvr5vnvyx6c40d";
+  };
+
+  buildInputs = [ ncurses ];
+
+  meta = with stdenv.lib; {
+    homepage        = https://github.com/p-gen/smenu;
+    description     = "Terminal selection utility";
+    longDescription = ''
+      Terminal utility that allows you to use words coming from the standard
+      input to create a nice selection window just below the cursor. Once done,
+      your selection will be sent to standard output.
+    '';
+    license     = licenses.gpl2;
+    maintainers = [ maintainers.matthiasbeyer ];
+    platforms   = platforms.linux;
+  };
+}
+
diff --git a/pkgs/tools/misc/thefuck/default.nix b/pkgs/tools/misc/thefuck/default.nix
index b399077bc5b4..788529125da5 100644
--- a/pkgs/tools/misc/thefuck/default.nix
+++ b/pkgs/tools/misc/thefuck/default.nix
@@ -1,22 +1,32 @@
-{ fetchurl, stdenv, pkgs, ... }:
+{ stdenv, fetchFromGitHub, buildPythonApplication
+, colorama, decorator, psutil, pyte, six
+, pytest, pytest-mock
+}:
 
-pkgs.pythonPackages.buildPythonPackage rec {
-  name = "${pname}-${version}";
+buildPythonApplication rec {
   pname = "thefuck";
-  version = "3.18";
+  version = "3.25";
 
-  src = fetchurl {
-    url = "https://github.com/nvbn/${pname}/archive/${version}.tar.gz";
-    sha256 = "1xsvkqh89rgxq5w03mnlcfkn9y39nfwhb2pjabjspcc2mi2mq5y6";
+  src = fetchFromGitHub {
+    owner = "nvbn";
+    repo = "${pname}";
+    rev = version;
+    sha256 = "090mg809aac932lgqmjxm4za53lg3bjprj562sp189k47xs4wijv";
   };
 
-  propagatedBuildInputs = with pkgs.pythonPackages; [
-    psutil
-    colorama
-    six
-    decorator
-    pathlib2
-  ];
+  propagatedBuildInputs = [ colorama decorator psutil pyte six ];
+
+  checkInputs = [ pytest pytest-mock ];
+
+  checkPhase = ''
+    export HOME=$TMPDIR
+    export LANG=en_US.UTF-8
+    export XDG_CACHE_HOME=$TMPDIR/cache
+    export XDG_CONFIG_HOME=$TMPDIR/config
+    py.test
+  '';
+
+  doCheck = false; # The above is only enough for tests to pass outside the sandbox.
 
   meta = with stdenv.lib; {
     homepage = https://github.com/nvbn/thefuck;
diff --git a/pkgs/tools/misc/togglesg-download/default.nix b/pkgs/tools/misc/togglesg-download/default.nix
index af56b09da9cc..968ead6131be 100644
--- a/pkgs/tools/misc/togglesg-download/default.nix
+++ b/pkgs/tools/misc/togglesg-download/default.nix
@@ -3,13 +3,13 @@
 pythonPackages.buildPythonApplication rec {
 
   name = "togglesg-download-git-${version}";
-  version = "2016-05-31";
+  version = "2017-12-07";
 
   src = fetchFromGitHub {
-    owner = "0x776b7364";
-    repo = "toggle.sg-download";
-    rev = "7d7c5f4d549360f95e248accd9771949abd94ad2";
-    sha256 = "0xj42khvacwmhbiy2p8rxk7lqg7pvya4zdc2c34lnr3avdp49fjn";
+    owner  = "0x776b7364";
+    repo   = "toggle.sg-download";
+    rev    = "e64959f99ac48920249987a644eefceee923282f";
+    sha256 = "0j317wmyzpwfcixjkybbq2vkg52vij21bs40zg3n1bs61rgmzrn8";
   };
 
   nativeBuildInputs = [ makeWrapper ];
@@ -19,10 +19,16 @@ pythonPackages.buildPythonApplication rec {
   dontStrip = true;
 
   installPhase = ''
-    mkdir -p $out/bin
+    runHook preInstall
+
+    mkdir -p $out/{bin,share/doc/togglesg-download}
     substitute $src/download_toggle_video2.py $out/bin/download_toggle_video2.py \
       --replace "ffmpeg_download_cmd = 'ffmpeg" "ffmpeg_download_cmd = '${lib.getBin ffmpeg_3}/bin/ffmpeg"
     chmod 0755 $out/bin/download_toggle_video2.py
+
+    cp LICENSE README.md $out/share/doc/togglesg-download
+
+    runHook postInstall
   '';
 
   meta = with stdenv.lib; {
@@ -34,7 +40,7 @@ pythonPackages.buildPythonApplication rec {
       on your OS of choice.
     '';
     license = licenses.mit;
+    maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.all;
-    maintainers = [ maintainers.peterhoeg ];
   };
 }
diff --git a/pkgs/tools/misc/yubico-piv-tool/default.nix b/pkgs/tools/misc/yubico-piv-tool/default.nix
index 29e527fe862d..c4a8f3a623be 100644
--- a/pkgs/tools/misc/yubico-piv-tool/default.nix
+++ b/pkgs/tools/misc/yubico-piv-tool/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, pkgconfig, openssl, pcsclite }:
+{ stdenv, fetchurl, pkgconfig, openssl, pcsclite, check }:
 
 stdenv.mkDerivation rec {
-  name = "yubico-piv-tool-1.4.4";
+  name = "yubico-piv-tool-1.5.0";
 
   src = fetchurl {
     url = "https://developers.yubico.com/yubico-piv-tool/Releases/${name}.tar.gz";
-    sha256 = "0s9pib3g4lmxw9rjjd5h3ad401150kb1wqrzf8w1bq79g0zsq3mb";
+    sha256 = "1axa0lnky5gsc8yack6mpfbjh49z0czr1cv52gbgjnx2kcbpb0y1";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ openssl pcsclite ];
+  buildInputs = [ openssl pcsclite check ];
 
   configureFlags = [ "--with-backend=pcsc" ];
 
diff --git a/pkgs/tools/networking/axel/default.nix b/pkgs/tools/networking/axel/default.nix
index b19d4cca315d..c9d689b8b2c1 100644
--- a/pkgs/tools/networking/axel/default.nix
+++ b/pkgs/tools/networking/axel/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, autoreconfHook, gettext, libssl }:
+{ stdenv, fetchurl, autoreconfHook, pkgconfig, gettext, libssl }:
 
 stdenv.mkDerivation rec {
   name = "axel-${version}";
-  version = "2.15";
+  version = "2.16.1";
 
   src = fetchurl {
     url = "mirror://debian/pool/main/a/axel/axel_${version}.orig.tar.gz";
-    sha256 = "0wm16s129615i7rw48422q3x3ixr4v2p9942p0s6qk2fjlc3y8hf";
+    sha256 = "0v3hgqrpqqqkj8ghaky88a0wpnpwqd72vd04ywlbhgfzfkfrllk4";
   };
 
-  nativeBuildInputs = [ autoreconfHook ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
 
   buildInputs = [ gettext libssl ];
 
diff --git a/pkgs/tools/networking/i2p/default.nix b/pkgs/tools/networking/i2p/default.nix
index cf26ec61139b..d66ff70180ac 100644
--- a/pkgs/tools/networking/i2p/default.nix
+++ b/pkgs/tools/networking/i2p/default.nix
@@ -27,10 +27,10 @@ let wrapper = stdenv.mkDerivation rec {
 in
 
 stdenv.mkDerivation rec {
-  name = "i2p-0.9.31";
+  name = "i2p-0.9.32";
   src = fetchurl {
     url = "https://github.com/i2p/i2p.i2p/archive/${name}.tar.gz";
-    sha256 = "1v2my5jqcj8zidxij34h0lpa533rr6ianzz8yld01sxi6gg41w28";
+    sha256 = "1c82yckwzp51wqrr8qhww3sifm1a9nzrymsf9qv99ngsxq4n5l6i";
   };
   buildInputs = [ jdk ant gettext which ];
   patches = [ ./i2p.patch ];
diff --git a/pkgs/tools/networking/logmein-hamachi/default.nix b/pkgs/tools/networking/logmein-hamachi/default.nix
index 6808c5c0a42b..bbee6546b2f4 100644
--- a/pkgs/tools/networking/logmein-hamachi/default.nix
+++ b/pkgs/tools/networking/logmein-hamachi/default.nix
@@ -8,11 +8,12 @@ let
   arch =
     if stdenv.system == "x86_64-linux" then "x64"
     else if stdenv.system == "i686-linux" then "x86"
-    else abort "Unsupported architecture";
+    else throwSystem;
+  throwSystem = throw "Unsupported system: ${stdenv.system}";
   sha256 =
     if stdenv.system == "x86_64-linux" then "011xg1frhjavv6zj1y3da0yh7rl6v1ax6xy2g8fk3sry9bi2p4j3"
     else if stdenv.system == "i686-linux" then "03ml9xv19km99f0z7fpr21b1zkxvw7q39kjzd8wpb2pds51wnc62"
-    else abort "Unsupported architecture";
+    else throwSystem;
   libraries = stdenv.lib.makeLibraryPath [ stdenv.cc.cc ];
 
 in stdenv.mkDerivation rec {
diff --git a/pkgs/tools/networking/network-manager/strongswan.nix b/pkgs/tools/networking/network-manager/strongswan.nix
index 9d26a84d6f2e..f26571874644 100644
--- a/pkgs/tools/networking/network-manager/strongswan.nix
+++ b/pkgs/tools/networking/network-manager/strongswan.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, intltool, pkgconfig, networkmanager, procps
+{ stdenv, fetchurl, intltool, pkgconfig, networkmanager, strongswanNM, procps
 , gnome3, libgnome_keyring, libsecret }:
 
 stdenv.mkDerivation rec {
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
     sed -i "s,nm_libexecdir=.*,nm_libexecdir=$out/libexec," "configure"
   '';
 
-  buildInputs = [ networkmanager libsecret ]
+  buildInputs = [ networkmanager strongswanNM libsecret ]
       ++ (with gnome3; [ gtk libgnome_keyring networkmanagerapplet ]);
 
   nativeBuildInputs = [ intltool pkgconfig ];
@@ -26,9 +26,10 @@ stdenv.mkDerivation rec {
        --replace "/sbin/sysctl" "${procps}/bin/sysctl"
   '';
 
+  configureFlags = [ "--with-charon=${strongswanNM}/libexec/ipsec/charon-nm" ];
+
   meta = {
     description = "NetworkManager's strongswan plugin";
     inherit (networkmanager.meta) platforms;
   };
 }
-
diff --git a/pkgs/tools/networking/strongswan/default.nix b/pkgs/tools/networking/strongswan/default.nix
index 77409f6fc3e9..eff498a174eb 100644
--- a/pkgs/tools/networking/strongswan/default.nix
+++ b/pkgs/tools/networking/strongswan/default.nix
@@ -1,7 +1,14 @@
-{ stdenv, fetchurl, gmp, pkgconfig, python, autoreconfHook
-, curl, trousers, sqlite, iptables, libxml2, openresolv
-, ldns, unbound, pcsclite, openssl, systemd, pam
-, enableTNC ? false }:
+{ stdenv, fetchurl
+, pkgconfig, autoreconfHook
+, gmp, python, iptables, ldns, unbound, openssl, pcsclite
+, openresolv
+, systemd, pam
+
+, enableTNC            ? false, curl, trousers, sqlite, libxml2
+, enableNetworkManager ? false, networkmanager
+}:
+
+with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "strongswan-${version}";
@@ -17,8 +24,9 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig autoreconfHook ];
   buildInputs =
     [ gmp python iptables ldns unbound openssl pcsclite ]
-    ++ stdenv.lib.optionals enableTNC [ curl trousers sqlite libxml2 ]
-    ++ stdenv.lib.optionals stdenv.isLinux [ systemd.dev pam ];
+    ++ optionals enableTNC [ curl trousers sqlite libxml2 ]
+    ++ optionals stdenv.isLinux [ systemd.dev pam ]
+    ++ optionals enableNetworkManager [ networkmanager ];
 
   patches = [
     ./ext_auth-path.patch
@@ -54,9 +62,9 @@ stdenv.mkDerivation rec {
       "--enable-forecast" "--enable-connmark" "--enable-acert"
       "--enable-pkcs11" "--enable-eap-sim-pcsc" "--enable-dnscert" "--enable-unbound"
       "--enable-af-alg" "--enable-xauth-pam" "--enable-chapoly" ]
-    ++ stdenv.lib.optional stdenv.isx86_64 [ "--enable-aesni" "--enable-rdrand" ]
-    ++ stdenv.lib.optional (stdenv.system == "i686-linux") "--enable-padlock"
-    ++ stdenv.lib.optionals enableTNC [
+    ++ optionals stdenv.isx86_64 [ "--enable-aesni" "--enable-rdrand" ]
+    ++ optional (stdenv.system == "i686-linux") "--enable-padlock"
+    ++ optionals enableTNC [
          "--disable-gmp" "--disable-aes" "--disable-md5" "--disable-sha1" "--disable-sha2" "--disable-fips-prf"
          "--enable-curl"
          "--enable-eap-tnc" "--enable-eap-ttls" "--enable-eap-dynamic" "--enable-tnccs-20"
@@ -65,14 +73,15 @@ stdenv.mkDerivation rec {
          "--enable-tnc-ifmap" "--enable-tnc-imc" "--enable-tnc-imv"
          "--with-tss=trousers"
          "--enable-aikgen"
-         "--enable-sqlite" ];
+         "--enable-sqlite" ]
+    ++ optional enableNetworkManager "--enable-nm";
 
   NIX_LDFLAGS = "-lgcc_s" ;
 
   meta = {
     description = "OpenSource IPsec-based VPN Solution";
     homepage = https://www.strongswan.org;
-    license = stdenv.lib.licenses.gpl2Plus;
-    platforms = stdenv.lib.platforms.all;
+    license = licenses.gpl2Plus;
+    platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index ac7aefd16437..33f132ae74f2 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -152,21 +152,21 @@ in rec {
   nix = nixStable;
 
   nixStable = (common rec {
-    name = "nix-1.11.15";
+    name = "nix-1.11.16";
     src = fetchurl {
       url = "http://nixos.org/releases/nix/${name}/${name}.tar.xz";
-      sha256 = "d20f20e45d519f54fae5c61d55eadcf53e6d7cdbde9870eeec80d499f9805165";
+      sha256 = "0ca5782fc37d62238d13a620a7b4bff6a200bab1bd63003709249a776162357c";
     };
   }) // { perl-bindings = nixStable; };
 
   nixUnstable = (lib.lowPrio (common rec {
     name = "nix-unstable-1.12${suffix}";
-    suffix = "pre5788_e3013543";
+    suffix = "pre5810_5d5b931f";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "e3013543d36926ecfe51e9eceab42c88cb40b138";
-      sha256 = "0cj6gc930jbs53dgar3kq7l7z6lnii9ava3pvjk2xvq3007xcx2h";
+      rev = "5d5b931fb178046ba286b8ef2b56a00b3a85c51c";
+      sha256 = "0sspf8np53j335dvgxw03lid0w43wzjkcbx6fqym2kqdcvbzw57j";
     };
     fromGit = true;
   })) // { perl-bindings = perl-bindings { nix = nixUnstable; }; };
diff --git a/pkgs/tools/security/libmodsecurity/default.nix b/pkgs/tools/security/libmodsecurity/default.nix
new file mode 100644
index 000000000000..435b1f151a08
--- /dev/null
+++ b/pkgs/tools/security/libmodsecurity/default.nix
@@ -0,0 +1,47 @@
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
+, doxygen, perl, valgrind
+, curl, geoip, libxml2, lmdb, lua, pcre, yajl }:
+
+stdenv.mkDerivation rec {
+  name = "libmodsecurity-${version}";
+  version = "3.0.0-2017-11-17";
+
+  src = fetchFromGitHub {
+    owner = "SpiderLabs";
+    repo = "ModSecurity";
+    fetchSubmodules = true;
+    rev = "81e1cdced3c0266d4b02a68e5f99c30a9c992303";
+    sha256 = "120bpvjq6ws2lv4vw98rx2s0c9yn0pfhlaphlgfv2rxqm3q7yhrr";
+  };
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig ];
+
+  buildInputs = [ doxygen perl valgrind curl geoip libxml2 lmdb lua pcre yajl];
+
+  configureFlags = [
+    "--enable-static"
+    "--with-curl=${curl.dev}"
+    "--with-libxml=${libxml2.dev}"
+    "--with-pcre=${pcre.dev}"
+    "--with-yajl=${yajl}"
+  ];
+
+  meta = with stdenv.lib; {
+    description = ''
+      Libmodsecurity is one component of the ModSecurity v3 project.
+    '';
+    longDescription = ''
+      Libmodsecurity is one component of the ModSecurity v3 project. The
+      library codebase serves as an interface to ModSecurity Connectors taking
+      in web traffic and applying traditional ModSecurity processing. In
+      general, it provides the capability to load/interpret rules written in
+      the ModSecurity SecRules format and apply them to HTTP content provided
+      by your application via Connectors.
+    '';
+    homepage = https://modsecurity.org/;
+    license = licenses.asl20;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ izorkin ];
+  };
+}
+
diff --git a/pkgs/tools/security/paperkey/default.nix b/pkgs/tools/security/paperkey/default.nix
index def98c9af4de..eba707b7d07c 100644
--- a/pkgs/tools/security/paperkey/default.nix
+++ b/pkgs/tools/security/paperkey/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "paperkey-${version}";
-  version = "1.4";
+  version = "1.5";
 
   src = fetchurl {
     url = "http://www.jabberwocky.com/software/paperkey/${name}.tar.gz";
-    sha256 = "0vrkryxqbsjcmqalsnxvc3pahg6vvyrn139aj8md29sihgnb0az1";
+    sha256 = "1prd2jaf4zjad3xhv160hmi5n408ssljfg7iz90jxs9w111pjwy4";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/tools/security/pinentry/default.nix b/pkgs/tools/security/pinentry/default.nix
index 0d957fc97e08..c551a8161aa2 100644
--- a/pkgs/tools/security/pinentry/default.nix
+++ b/pkgs/tools/security/pinentry/default.nix
@@ -1,5 +1,5 @@
 { fetchurl, fetchpatch, stdenv, lib, pkgconfig
-, libgpgerror, libassuan, libcap ? null, libsecret ? null, ncurses ? null, gtk2 ? null, gcr ? null, qt4 ? null
+, libgpgerror, libassuan, libcap ? null, libsecret ? null, ncurses ? null, gtk2 ? null, gcr ? null, qt ? null
 }:
 
 let
@@ -7,16 +7,15 @@ let
   mkEnable = mkFlag "enable" "disable";
   mkWith = mkFlag "with" "without";
 in
-with stdenv.lib;
 stdenv.mkDerivation rec {
-  name = "pinentry-1.0.0";
+  name = "pinentry-1.1.0";
 
   src = fetchurl {
     url = "mirror://gnupg/pinentry/${name}.tar.bz2";
-    sha256 = "0ni7g4plq6x78p32al7m8h2zsakvg1rhfz0qbc3kdc7yq7nw4whn";
+    sha256 = "0w35ypl960pczg5kp6km3dyr000m1hf0vpwwlh72jjkjza36c1v8";
   };
 
-  buildInputs = [ libgpgerror libassuan libcap libsecret gtk2 gcr ncurses qt4 ];
+  buildInputs = [ libgpgerror libassuan libcap libsecret gtk2 gcr ncurses qt ];
 
   prePatch = ''
     substituteInPlace pinentry/pinentry-curses.c --replace ncursesw ncurses
@@ -24,18 +23,10 @@ stdenv.mkDerivation rec {
 
   patches = lib.optionals (gtk2 != null) [
     (fetchpatch {
-       url = https://anonscm.debian.org/cgit/pkg-gnupg/pinentry.git/plain/debian/patches/0006-gtk2-Fix-a-problem-with-fvwm.patch;
-       sha256 = "1w3y4brqp74hy3fbfxqnqp6jf985bd6667ivy1crz50r3z9zsy09";
-  })(fetchpatch {
-       url = https://anonscm.debian.org/cgit/pkg-gnupg/pinentry.git/plain/debian/patches/0007-gtk2-When-X11-input-grabbing-fails-try-again-over-0..patch;
-       sha256 = "046jy7k0n7fj74s5w1h6sq1ljg8y77i0xwi301kv53bhsp0xsirx";
-  })];
-
-  # configure cannot find moc on its own
-  preConfigure = stdenv.lib.optionalString (qt4 != null) ''
-    export QTDIR="${qt4}"
-    export MOC="${qt4}/bin/moc"
-  '';
+      url = https://anonscm.debian.org/cgit/pkg-gnupg/pinentry.git/plain/debian/patches/0007-gtk2-When-X11-input-grabbing-fails-try-again-over-0..patch;
+      sha256 = "046jy7k0n7fj74s5w1h6sq1ljg8y77i0xwi301kv53bhsp0xsirx";
+    })
+  ];
 
   configureFlags = [
     (mkWith   (libcap != null)    "libcap")
@@ -44,20 +35,20 @@ stdenv.mkDerivation rec {
     (mkEnable true                "pinentry-tty")
     (mkEnable (gtk2 != null)      "pinentry-gtk2")
     (mkEnable (gcr != null)       "pinentry-gnome3")
-    (mkEnable (qt4 != null)       "pinentry-qt")
+    (mkEnable (qt != null)        "pinentry-qt")
   ];
 
   nativeBuildInputs = [ pkgconfig ];
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://gnupg.org/aegypten2/;
-    description = "GnuPG's interface to passphrase input";
-    license = stdenv.lib.licenses.gpl2Plus;
-    platforms = stdenv.lib.platforms.all;
+    description = "GnuPG’s interface to passphrase input";
+    license = licenses.gpl2Plus;
+    platforms = platforms.all;
     longDescription = ''
       Pinentry provides a console and (optional) GTK+ and Qt GUIs allowing users
       to enter a passphrase when `gpg' or `gpg2' is run and needs it.
     '';
-    maintainers = [ stdenv.lib.maintainers.ttuegel ];
+    maintainers = [ maintainers.ttuegel ];
   };
 }
diff --git a/pkgs/tools/security/pinentry/qt5.nix b/pkgs/tools/security/pinentry/qt5.nix
deleted file mode 100644
index 6230529a733a..000000000000
--- a/pkgs/tools/security/pinentry/qt5.nix
+++ /dev/null
@@ -1,49 +0,0 @@
-{ fetchurl, stdenv, pkgconfig
-, libgpgerror, libassuan
-, qtbase
-, libcap ? null
-}:
-
-let
-  mkFlag = pfxTrue: pfxFalse: cond: name: "--${if cond then pfxTrue else pfxFalse}-${name}";
-  mkEnable = mkFlag "enable" "disable";
-  mkWith = mkFlag "with" "without";
-in
-with stdenv.lib;
-stdenv.mkDerivation rec {
-  name = "pinentry-0.9.6";
-
-  src = fetchurl {
-    url = "mirror://gnupg/pinentry/${name}.tar.bz2";
-    sha256 = "0rhyw1vk28kgasjp22myf7m2q8kycw82d65pr9kgh93z17lj849a";
-  };
-
-  buildInputs = [ libgpgerror libassuan libcap qtbase ];
-
-  # configure cannot find moc on its own
-  preConfigure = ''
-    export QTDIR="${qtbase.dev}"
-    export MOC="${qtbase.dev}/bin/moc"
-  '';
-
-  configureFlags = [
-    (mkWith   (libcap != null)  "libcap")
-    (mkEnable true "pinentry-qt")
-  ];
-
-  NIX_CFLAGS_COMPILE = [ "-std=c++11" ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  meta = {
-    homepage = http://gnupg.org/aegypten2/;
-    description = "GnuPG's interface to passphrase input";
-    license = stdenv.lib.licenses.gpl2Plus;
-    platforms = stdenv.lib.platforms.all;
-    longDescription = ''
-      Pinentry provides a console and (optional) GTK+ and Qt GUIs allowing users
-      to enter a passphrase when `gpg' or `gpg2' is run and needs it.
-    '';
-    maintainers = [ stdenv.lib.maintainers.ttuegel ];
-  };
-}
diff --git a/pkgs/tools/typesetting/biber/default.nix b/pkgs/tools/typesetting/biber/default.nix
index f068323e54a7..30ea9896c940 100644
--- a/pkgs/tools/typesetting/biber/default.nix
+++ b/pkgs/tools/typesetting/biber/default.nix
@@ -1,39 +1,41 @@
-{ stdenv, fetchFromGitHub, buildPerlPackage, autovivification, BusinessISBN
+{ stdenv, fetchFromGitHub, buildPerlModule, autovivification, BusinessISBN
 , BusinessISMN, BusinessISSN, ConfigAutoConf, DataCompare, DataDump, DateSimple
+, DateTime, DateTimeFormatBuilder, DateTimeCalendarJulian
 , EncodeEUCJPASCII, EncodeHanExtra, EncodeJIS2K, ExtUtilsLibBuilder
-, FileSlurp, IPCRun3, Log4Perl, LWPProtocolHttps, ListAllUtils, ListMoreUtils
-, ModuleBuild, MozillaCA, ReadonlyXS, RegexpCommon, TextBibTeX, UnicodeCollate
+, FileSlurp, FileWhich, IPCRun3, Log4Perl, LWPProtocolHttps, ListAllUtils, ListMoreUtils
+, MozillaCA, ReadonlyXS, RegexpCommon, TextBibTeX, UnicodeCollate
 , UnicodeLineBreak, URI, XMLLibXMLSimple, XMLLibXSLT, XMLWriter, ClassAccessor
-, TextRoman, DataUniqid, LinguaTranslit, UnicodeNormalize }:
+, TextCSV, TextCSV_XS, TextRoman, DataUniqid, LinguaTranslit, UnicodeNormalize, SortKey
+, TestDifferences }:
 
-let
-  version = "2.5";
-in
-buildPerlPackage {
+buildPerlModule rec {
   name = "biber-${version}";
+  version = "2.7";
   src = fetchFromGitHub {
     owner = "plk";
     repo = "biber";
     rev = "v${version}";
-    sha256 = "1ldkszsr2n11nib4nvmpvsxmvp0qd9w3lxijyqlf01cfaryjdzgr";
+    sha256 = "04jmsh59g2s0b61rm25z0hwb6yliqyh5gjs4y74va93d2b9mrd17";
   };
 
   buildInputs = [
     autovivification BusinessISBN BusinessISMN BusinessISSN ConfigAutoConf
     DataCompare DataDump DateSimple EncodeEUCJPASCII EncodeHanExtra EncodeJIS2K
-    ExtUtilsLibBuilder FileSlurp IPCRun3 Log4Perl LWPProtocolHttps ListAllUtils
-    ListMoreUtils ModuleBuild MozillaCA ReadonlyXS RegexpCommon TextBibTeX
+    DateTime DateTimeFormatBuilder DateTimeCalendarJulian
+    ExtUtilsLibBuilder FileSlurp FileWhich IPCRun3 Log4Perl LWPProtocolHttps ListAllUtils
+    ListMoreUtils MozillaCA ReadonlyXS RegexpCommon TextBibTeX
     UnicodeCollate UnicodeLineBreak URI XMLLibXMLSimple XMLLibXSLT XMLWriter
-    ClassAccessor TextRoman DataUniqid LinguaTranslit UnicodeNormalize
+    ClassAccessor TextCSV TextCSV_XS TextRoman DataUniqid LinguaTranslit UnicodeNormalize SortKey
+    TestDifferences
   ];
-  preConfigure = "touch Makefile.PL";
-  buildPhase = "perl Build.PL --prefix=$out; ./Build build";
-  checkPhase = "./Build test";
-  installPhase = "./Build install";
 
-  # Tests seem to be broken
+  # Tests depend on the precise Unicode-Collate version (expects 1.19, but we have 1.25)
   doCheck = false;
 
+  postUnpack = ''
+    sed '1s/env perl/perl/' -i */bin/biber
+  '';
+
   meta = {
     description = "Backend for BibLaTeX";
     license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
diff --git a/pkgs/tools/typesetting/tex/texlive/bin.nix b/pkgs/tools/typesetting/tex/texlive/bin.nix
index 30979e312fc5..44c2dc163178 100644
--- a/pkgs/tools/typesetting/tex/texlive/bin.nix
+++ b/pkgs/tools/typesetting/tex/texlive/bin.nix
@@ -14,7 +14,7 @@
 let
   withSystemLibs = map (libname: "--with-system-${libname}");
 
-  year = "2016";
+  year = "2017";
   version = year; # keep names simple for now
 
   common = rec {
@@ -22,9 +22,10 @@ let
       url = # "ftp://tug.org/historic/systems/texlive/${year}/"
       #"http://lipa.ms.mff.cuni.cz/~cunav5am/nix/texlive-2016"
       # FIXME: a proper mirror, though tarballs.nixos.org saves this case ATM
-        http://146.185.144.154/texlive-2016
-        + "/texlive-${year}0523b-source.tar.xz";
-      sha256 = "1v91vahxlxkdra0qz3f132vvx5d9cx2jy84yl1hkch0agyj2rcx8";
+      # http://146.185.144.154/texlive-2016
+      # + "/texlive-${year}0523b-source.tar.xz";
+        "http://ftp.math.utah.edu/pub/tex/historic/systems/texlive/${year}/texlive-${year}0524-source.tar.xz";
+      sha256 = "1amjrxyasplv4alfwcxwnw4nrx7dz2ydmddkq16k6hg90i9njq81";
     };
 
     configureFlags = [
@@ -187,7 +188,7 @@ core-big = stdenv.mkDerivation { #TODO: upmendex
   '';
 
   preBuild = "cd texk/web2c";
-  CXXFLAGS = "-std=c++11 -Wno-reserved-user-defined-literal"; # TODO: remove once texlive 2017 is out?
+  CXXFLAGS = "-std=c++11 -Wno-reserved-user-defined-literal"; # TODO: remove once texlive 2018 is out?
   enableParallelBuilding = true;
 
   # now distribute stuff into outputs, roughly as upstream TL
diff --git a/pkgs/tools/typesetting/tex/texlive/combine.nix b/pkgs/tools/typesetting/tex/texlive/combine.nix
index 390b7b9e5e00..35fee64ba54f 100644
--- a/pkgs/tools/typesetting/tex/texlive/combine.nix
+++ b/pkgs/tools/typesetting/tex/texlive/combine.nix
@@ -12,9 +12,11 @@ let
       (bin.core.doc // { pname = "core"; tlType = "doc"; })
     ];
   };
+  partition = builtins.partition or (pred: l:
+    { right = builtins.filter pred l; wrong = builtins.filter (e: !(pred e)) l; });
   pkgList = rec {
     all = lib.filter pkgFilter (combinePkgs pkgSet);
-    splitBin = lib.partition (p: p.tlType == "bin") all;
+    splitBin = partition (p: p.tlType == "bin") all;
     bin = mkUniquePkgs splitBin.right
       ++ lib.optional
           (lib.any (p: p.tlType == "run" && p.pname == "pdfcrop") splitBin.wrong)
@@ -201,7 +203,7 @@ in buildEnv {
 
     perl `type -P mktexlsr.pl` ./share/texmf
     texlinks.sh "$out/bin" && wrapBin
-    perl `type -P fmtutil.pl` --sys --refresh | grep '^fmtutil' # too verbose
+    (perl `type -P fmtutil.pl` --sys --refresh || true) | grep '^fmtutil' # too verbose
     #texlinks.sh "$out/bin" && wrapBin # do we need to regenerate format links?
     perl `type -P updmap.pl` --sys --syncwithtrees --force
     perl `type -P mktexlsr.pl` ./share/texmf-* # to make sure
diff --git a/pkgs/tools/typesetting/tex/texlive/default.nix b/pkgs/tools/typesetting/tex/texlive/default.nix
index 7665d277e38f..68d0c635530f 100644
--- a/pkgs/tools/typesetting/tex/texlive/default.nix
+++ b/pkgs/tools/typesetting/tex/texlive/default.nix
@@ -39,7 +39,8 @@ let
       curl http://mirror.ctan.org/tex-archive/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz \
         | xzcat | uniq -u | sed -rn -f ./tl2nix.sed > ./pkgs.nix */
     orig = import ./pkgs.nix tl; # XXX XXX XXX FIXME: the file is probably too big now XXX XXX XXX XXX XXX XXX
-    clean = orig // {
+    removeSelfDep = lib.mapAttrs (n: p: if p ? deps then p // { deps = lib.filterAttrs (dn: _: n != dn) p.deps; } else p);
+    clean = removeSelfDep (orig // {
       # overrides of texlive.tlpdb
 
       dvidvi = orig.dvidvi // {
@@ -70,7 +71,7 @@ let
       collection-genericextra = orig.collection-genericextra // {
         deps = orig.collection-genericextra.deps // { inherit (tl) xdvi; };
       };
-    }; # overrides
+    }); # overrides
 
     # tl =
     in lib.mapAttrs flatDeps clean;
@@ -109,15 +110,16 @@ let
       tlName = urlName + "-${version}";
       fixedHash = fixedHashes.${tlName} or null; # be graceful about missing hashes
 
-      url = args.url or "${urlPrefix}/${urlName}.tar.xz";
-      urlPrefix = args.urlPrefix or
-        http://146.185.144.154/texlive-2016
-        #http://lipa.ms.mff.cuni.cz/~cunav5am/nix/texlive-2016
-        ;
-      # XXX XXX XXX FIXME: mirror the snapshot XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX XXX
-      #  ("${mirror}/pub/tex/historic/systems/texlive/${bin.texliveYear}/tlnet-final/archive");
-      #mirror = "http://ftp.math.utah.edu";
-      src = fetchurl { inherit url sha512; };
+      urls = args.urls or (if args ? url then [ args.url ] else
+              map (up: "${up}/${urlName}.tar.xz") urlPrefixes
+            );
+      urlPrefixes = args.urlPrefixes or [
+        http://146.185.144.154/texlive-2017
+        # IPFS GW is second, as it doesn't have a good time-outing behavior
+        http://gateway.ipfs.io/ipfs/QmRLK45EC828vGXv5YDaBsJBj2LjMjjA2ReLVrXsasRzy7/texlive-2017
+      ];
+
+      src = fetchurl { inherit urls sha512; };
 
       passthru = {
         inherit pname tlType version;
@@ -131,7 +133,7 @@ let
     in if sha512 == "" then
       # hash stripped from pkgs.nix to save space -> fetch&unpack in a single step
       fetchurl {
-        inherit url;
+        inherit urls;
         sha1 = if fixedHash == null then throw "TeX Live package ${tlName} is missing hash!"
           else fixedHash;
         name = tlName;
@@ -188,9 +190,9 @@ in
             extraName = "combined" + lib.removePrefix "scheme" pname;
           })
         )
-        { inherit (tl) scheme-full
-            scheme-tetex scheme-medium scheme-small scheme-basic scheme-minimal
-            scheme-context scheme-gust scheme-xml;
+        { inherit (tl)
+            scheme-basic scheme-context scheme-full scheme-gust scheme-infraonly
+            scheme-medium scheme-minimal scheme-small scheme-tetex;
         }
     );
   }
diff --git a/pkgs/tools/typesetting/tex/texlive/fixedHashes.nix b/pkgs/tools/typesetting/tex/texlive/fixedHashes.nix
index bb733568c3b7..73a0bc8c523b 100644
--- a/pkgs/tools/typesetting/tex/texlive/fixedHashes.nix
+++ b/pkgs/tools/typesetting/tex/texlive/fixedHashes.nix
@@ -2,171 +2,199 @@
 "amsfonts-3.04"="hi87s0fxrkcq0w2389kwpxd3zzwsk1zf";
 "amsfonts.doc-3.04"="ch872rwfiar58praz8f880rcspy4mjxa";
 "amsfonts.source-3.04"="vjiw3vdxv44nl4yvaxqfy4b78girpjs7";
-"bibtex-0.99d"="h5107qs7dxpz783zvlg5shdd1xg1h2rg";
-"bibtex.doc-0.99d"="g4rf1nry7cy8kgb9h63wr74vqd47b29z";
-"kpathsea-2016"="00bd2w674k1bivwws2fddf6mp7nz2d56";
-"kpathsea.doc-2016"="prd9gb6wqkrjjgr9c68ddh9pr70lmymb";
-"cm-2016"="k9yadr0rfgnh1xfyrzqdbj2whpf7sp63";
-"cm.doc-2016"="36wag31jc0lrgncaxhcspiaqpwnw7xvy";
-"dvipdfmx-2016"="ijnr5k9wvwq8lnd22qjrrjmm962la5f4";
-"dvipdfmx.doc-2016"="zfm6n44ifw9ghdqf0ay6r8ppddm89342";
-"dvipdfmx-def-4.08"="mkrj4ld3lklcb36v1lz44j0hyjlp1qjy";
-"dvipdfmx-def.doc-4.08"="4mnp3gi0pnx3labzxrailx760clflgjg";
-"glyphlist-2016"="vhl454v924vw305d171amcg8r7v83d8l";
-"dvips-2016"="chachpfvhjdfdm7fdhmh3pnji2w5bxza";
-"dvips.doc-2016"="n0vmizfvahsnb53mzf28plbsbjvfid12";
-"enctex-2016"="j6lf040j733q0aj90wvx2vwq0x61zwdm";
-"enctex.doc-2016"="p2pad1ncy8izfag44p0pndyvgckfngvv";
-"etex-2016"="mdrs8yrrjf03pcndsr5azzxz7lvk08jp";
-"etex.doc-2016"="xdmkddsi3lykqy5hm03xamxsmmwplmnb";
-"etex-pkg-2.6"="vk8pfjdwh179fc90h4b3b2r7h928fdls";
-"etex-pkg.doc-2.6"="fh9kjif8hy5dvqnjdx090jani7rym0m4";
+"bibtex-0.99d"="ybimfc49fzmgpy88wagy0z55sdsshr50";
+"bibtex.doc-0.99d"="rix5hf785qgd6bwg3bs74hgaybwrid9h";
+"kpathsea-2017"="kx7y408hdbrbv4cnmdga9qq84xfw5ksj";
+"kpathsea.doc-2017"="718rkxi193kflgk43zpsj1xcjqsmjrq4";
+"cm-2017"="k9yadr0rfgnh1xfyrzqdbj2whpf7sp63";
+"cm.doc-2017"="36wag31jc0lrgncaxhcspiaqpwnw7xvy";
+"dvipdfmx-2017"="ijnr5k9wvwq8lnd22qjrrjmm962la5f4";
+"dvipdfmx.doc-2017"="i3il86rkf4mxg3xn2l458bvs4jy4n1z1";
+"glyphlist-2017"="i4nay4q38l3367hlc93rhkgxvrkcmyjb";
+"dvips-2017"="92wx71n0k4ia02l5m44xkmw5z1q22pbg";
+"dvips.doc-2017"="j3zlksmdvfvna32aa7szw49igpb8ka11";
+"enctex-2017"="j6lf040j733q0aj90wvx2vwq0x61zwdm";
+"enctex.doc-2017"="p2pad1ncy8izfag44p0pndyvgckfngvv";
+"etex-2017"="mdrs8yrrjf03pcndsr5azzxz7lvk08jp";
+"etex.doc-2017"="xdmkddsi3lykqy5hm03xamxsmmwplmnb";
+"etex-pkg-2.7"="2p6j6s4jm1y7k82jhh9lrfgcbph03h1a";
+"etex-pkg.doc-2.7"="0xlalpljqrcinaazh35yv9vc2a925h90";
+"graphics-def-2017"="3x5p0y39f8wk5p2gzs99ji6viwpdcl42";
+"graphics-def.doc-2017"="17p42pr5x7w6a1z05f33svxlalr79caq";
 "gsftopk-1.19.2"="8fc88z3281crv5743qh5rzr0b51a2l8i";
-"gsftopk.doc-1.19.2"="mja92917pl65qmv7f7hg54q289fzkdbx";
-"hyph-utf8-2016"="zwgllwz4xcwlf6k9pz0j3y5kmcknqf3f";
-"hyph-utf8.doc-2016"="qfgv3nid3fg33jfspgwa5sil0s46as9p";
-"hyph-utf8.source-2016"="fkrng47ghjl9gs4a2wfbpd8980h6z8gq";
-"hyphen-base-2016"="0jyixkv4mh5havwqsiazzbrvnp4kxmiq";
+"gsftopk.doc-1.19.2"="x1f1bi58ilz3nyb3bfwmb11wp4l76f70";
+"hyph-utf8-2017"="zwgllwz4xcwlf6k9pz0j3y5kmcknqf3f";
+"hyph-utf8.doc-2017"="civi2dqdgn66lgzj7c64hxh3mmlxdgg8";
+"hyph-utf8.source-2017"="q34xq8l07hihhx9s6wwd930adsk2vaw6";
+"hyphen-base-2017"="rr6asqxv5s1gk9mv9pwimly27hibfgj3";
 "ifluatex-1.4"="ccsyxfkf1qb03cxnkfs6gy7iinz89dwc";
-"ifluatex.doc-1.4"="9k0r0jvfni8g9bvixaban9a33rx1ana8";
+"ifluatex.doc-1.4"="l1inl0smcf6qi7hnlracgq665i63fp2b";
 "ifluatex.source-1.4"="8jqb26x3nmbh05ysd93cjklcsj1y5hw3";
 "ifxetex-0.6"="llq1x3f5fykh5mg6avzb1a21x1vh2mxz";
 "ifxetex.doc-0.6"="1iy2bgx7adrh6dbbrhraskqggr65f7f2";
 "ifxetex.source-0.6"="dl81ang1gw395giysn3vk6lv4v5h9xr2";
-"knuth-lib-2016"="cvjgvw8rwhmr98sz0y3azsyawzswcv3n";
-"knuth-local-2016"="g5vihblw8w8p8k8s14nakk959vpdgnh4";
+"knuth-lib-2017"="cvjgvw8rwhmr98sz0y3azsyawzswcv3n";
+"knuth-local-2017"="g5vihblw8w8p8k8s14nakk959vpdgnh4";
 "lua-alt-getopt-0.7.0"="s2qkgq8dv65ib6chsah4xcargxh26bml";
 "lua-alt-getopt.doc-0.7.0"="xv8zqch612n2ww2pnpfranafcf7jhl96";
-"makeindex-2016"="yzy90d3n087yrdsawabd0bn7iwz3m1i6";
-"makeindex.doc-2016"="wyaqizbq9d01m98696x3l8m3c47ag4cv";
+"makeindex-2017"="yzy90d3n087yrdsawabd0bn7iwz3m1i6";
+"makeindex.doc-2017"="h3ra25m0w19xaxjfdkbspbq8d4m9zn3n";
 "mflogo-2.0"="mnn3p5gn5h9yi4inkllswxn142j31mz4";
 "mflogo.doc-2.0"="rdirf33m53y719b35aby2d98v1i0jhh5";
 "mflogo.source-2.0"="hl5rzcmk83lpc5rxcvy31kzm6qbwx3g5";
-"mfware-2016"="7mwvvyrb9cz2d3k5jl8r1fl238m3gl6n";
-"mfware.doc-2016"="y62ynydxnz5j1y28zbixhiw91krpj81n";
-"pdftex-2016"="s8xr2haf4kzy877b5x4q86hcq4jqg5m4";
-"pdftex.doc-2016"="nma51hqby2lliyhinxn3spjgm79gk7jb";
-"plain-3.141592653"="qnx97q4j70c2gc437zx10ic3pqm24z5z";
-"tetex-3.0"="anc6kg9yvabbkfqy9lr038xaqfik2plf";
-"tetex.doc-3.0"="ic1b3yldangzmdlg422hd00f4vrv131m";
-"tex.doc-3.14159265"="v0v678569k3z5rww2giksg79jsk90ppa";
-"tex-ini-files-2016"="831h7dslin8dnan7llz8mki6zibqfglj";
-"tex-ini-files.doc-2016"="pqfrqdqmlbhmcpjycpf644v4vg0qw7ic";
-"texconfig-2016"="xwh8nsgd940p6fcv28nsfcblp2i81mw3";
-"texconfig.doc-2016"="7ih2f9abksn68yx0anj3bpg2mj6sya6z";
-"texlive-common.doc-2016"="46la74hhzh9wms4mkhkfgbj6nf1f8myb";
-"texlive-docindex-2016"="5j5z0j2qwdlg2v7wxwz8ndmbwql2s0vk";
-"texlive-docindex.doc-2016"="bw11wjaqjjahs4x0hnakfvmvrjmjckkb";
-"texlive-en.doc-2016"="18m0jknm5l0wfdqglvypslhs3zv342g5";
-"texlive-scripts-2016"="w4ly880hav1fda9hli70807c3kxnxkqk";
-"texlive-scripts.doc-2016"="mhsq1adr0vmx595bnaslnh1llisbaaqk";
-"unicode-data-1.4a"="rcy8dpngq6fi7zjxhv5hwqaxrxxnqh4v";
-"unicode-data.doc-1.4a"="000q3h6pnmq019mfxgd0sjp1whwh5v7a";
-"updmap-map-2016"="d3vqw1p8y1n7r7qmc5svxx1r4ci4k3ga";
-"aichej-2016"="rmm8q17dvb470lyarcvgbpgip24a4fxb";
-"ajl-2016"="j0z05x267dbbw5r8s0ybvlj0hwky6sg5";
+"mfware-2017"="7mwvvyrb9cz2d3k5jl8r1fl238m3gl6n";
+"mfware.doc-2017"="mxl274dzrfxsqmkm2p2v9x8wch6xjvqc";
+"pdftex-2017"="s8xr2haf4kzy877b5x4q86hcq4jqg5m4";
+"pdftex.doc-2017"="bsidnb8y2k3r8fpyspdqvlwv007s9v7z";
+"plain-3.141592653"="my32apfgd55b14vf8bsldaqwdd931gcg";
+"tex-ini-files-2017"="831h7dslin8dnan7llz8mki6zibqfglj";
+"tex-ini-files.doc-2017"="pqfrqdqmlbhmcpjycpf644v4vg0qw7ic";
+"tetex-3.0"="3xinwxa1f811sysm8wfkaf3z052afivz";
+"tetex.doc-3.0"="9z45dnk43l3zxqmi2mprdn5iqv6pnk0q";
+"tex.doc-3.14159265"="nrllj8g488wj426rvminkn0bdaa1r6ww";
+"texconfig-2017"="z7p82x6pd48qy343c6h4l55gwap9ixnf";
+"texconfig.doc-2017"="yyqfzy21sz71bc1p1rh14b5bklrji4i4";
+"texlive-common.doc-2017"="q6vk5jghhn6hsiilg3kn1vmmrvqyrx7v";
+"texlive-docindex-2017"="5j5z0j2qwdlg2v7wxwz8ndmbwql2s0vk";
+"texlive-docindex.doc-2017"="bw11wjaqjjahs4x0hnakfvmvrjmjckkb";
+"texlive-en.doc-2017"="d2riani75kpgzcn637nb0s9zxbq8xf9c";
+"texlive-scripts-2017"="w4ly880hav1fda9hli70807c3kxnxkqk";
+"texlive-scripts.doc-2017"="8hzllc3qwpnazqhkxjxz57rvw9fnhdvl";
+"unicode-data-1.6"="j31j4xgdfm2rm6qdi1rxym2bvs6lcv9n";
+"unicode-data.doc-1.6"="vqwxrg50xglwypz60qjcqh8z253d0sdv";
+"updmap-map-2017"="d84i10mpqg1xvkphl5p4gd2p67098j2a";
+"aichej-2017"="rmm8q17dvb470lyarcvgbpgip24a4fxb";
+"ajl-2017"="j0z05x267dbbw5r8s0ybvlj0hwky6sg5";
 "amsrefs-2.14"="crmn3pm2zy2fcr5d82dwwwxjm42na6j3";
 "amsrefs.doc-2.14"="r45n92fihia786v5nsab5vgjvwgmij6d";
 "amsrefs.source-2.14"="k1rzn2d509i2nkfwclpbpir3q6a41ya9";
 "apacite-6.03"="sj9k6bnr8qhfddlzk7wd0daf12458yi9";
 "apacite.doc-6.03"="cbhyw6lwyg7mnx8h421y0hxf3h5m6n4y";
 "apacite.source-6.03"="cby7n3f9rzm83736nm4rn1m77km3lr9y";
-"apalike2-2016"="vf25kvilm8g379d8c5mkzv749nd9p8ap";
-"archaeologie-2.0"="3ic62qbfvnqc6n499z74cjn6rvlkldi8";
-"archaeologie.doc-2.0"="ws713lkjd19incaj1kfy8ijhhhak2c77";
-"beebe-2016"="pc70akrf17d452m1f0sma8g91mwgciix";
-"besjournals-2016"="n3ljrkamca5v9w0rk3m38nqw86s1izc8";
-"besjournals.doc-2016"="3swy1ix6cxbp87hjlaf3x4ws4kg8sz77";
+"apalike2-2017"="vf25kvilm8g379d8c5mkzv749nd9p8ap";
+"archaeologie-2.3.3"="k3hc28ivx310rf8j958xv5x8fc4fx5l3";
+"archaeologie.doc-2.3.3"="70bczdifw3nvxvnsg69p7mcdg593byj0";
+"beebe-2017"="bkviiybam488cbp6b7lckfr89p11fzhl";
+"besjournals-2017"="n3ljrkamca5v9w0rk3m38nqw86s1izc8";
+"besjournals.doc-2017"="3swy1ix6cxbp87hjlaf3x4ws4kg8sz77";
 "bestpapers-1.0"="15nq2m32h0giv41k6dslrw28han015aq";
 "bestpapers.doc-1.0"="mmlnsl83sil5zbdhwq16b6025sxdh9s6";
+"bib2gls-1.0"="c2wjka02kgi250ybbma3qvikfn87x9v5";
+"bib2gls.doc-1.0"="l7vs7jfcipdp6rbg8a53z3x7gz9maj3a";
+"bib2gls.source-1.0"="rrz3pj12r09f95na61lhiwxi64xcrr5i";
 "bibarts-2.1"="a7wcn8rhgh4irszdqk86ls1p8hpdnr7l";
 "bibarts.doc-2.1"="v2ibi8mncd5sf5x50hwj3gs6yilh1znp";
 "bibarts.source-2.1"="x52hqh053yzn25n75z1fr3siqdh7qkwn";
-"biber.doc-2.4"="50hcaaf799k1j01grm9jm7ks4bg3zgyi";
-"biber.source-2.4"="ffkbpnrs26lafa5bq0yzy920mz199cxa";
+"biber.doc-2.7"="i6ilfb9ssnl7879v6vb2awddij1mk4yj";
+"biber.source-2.7"="0z6wkw5hb47klngkf60wsp66y879n047";
 "bibexport-3.02"="6gc6r95ph3rkjzq038zk6w12k733qzwr";
 "bibexport.doc-3.02"="qapijzk1s6y6z02s4wnlw4vr6p96djxv";
 "bibexport.source-3.02"="iqp7q4fagafj6nfclsmj68lxljb8siw7";
 "bibhtml-2.0.2"="b0klmx8rd09znlxg7wz5m8b1f8qpxsjv";
 "bibhtml.doc-2.0.2"="snqyqvgwdwpkyfqfj69zwd478z96mcj4";
-"biblatex-3.4"="arbzg6pxz2wxwmxmzzr4x9906jhjqln1";
-"biblatex.doc-3.4"="jljqrygd6yrf0d3jifsh7fbj3qk6n3j9";
-"biblatex-abnt-1.0.1"="gyv5dqhndv8linj55dmnhfh4a4r8gsd0";
-"biblatex-abnt.doc-1.0.1"="pznmpr6z85w17qpxqprxj1c4ykc0y63q";
-"biblatex-anonymous-2.2.2"="nqbsvml7r11gfs5ffjyn9ilnxnvawymv";
-"biblatex-anonymous.doc-2.2.2"="cvg6v500xanklkzgqrnxrhpxvghxl6q1";
-"biblatex-apa-6.9"="xcbksf4zlh3wm0aa47rkhk8zcvmmb8nh";
-"biblatex-apa.doc-6.9"="9ribqmqzqy6wa5gja0mnjginmqmwmpqz";
+"biblatex-3.7"="3n06c0bzzwy224mv6zfv1qa6nq6y6a01";
+"biblatex.doc-3.7"="y5l1kpba26y26nd3fcr958jmxs4kbnkl";
+"biblatex-abnt-3.1"="cd3izgad0cg1ig2r2jj96y2j7f625jp2";
+"biblatex-abnt.doc-3.1"="vjf0y47pdqamhmijp2vvjl3y6bdlda1j";
+"biblatex-anonymous-2.6.0"="g2f8zlxm48nqp7q50m2mirwcgz48y4s5";
+"biblatex-anonymous.doc-2.6.0"="79c2p5ffqcgcz9la40kz2x6w5scrir0p";
+"biblatex-apa-7.4"="sfc2icw9nci91lm5bczql0fzxhfpr2mv";
+"biblatex-apa.doc-7.4"="1rn4b8hah99j6xjpy6npsrnffwlfd57q";
+"biblatex-archaeology-1.2"="x99izdvnmpmql3dagcx3ddx0d4gajl84";
+"biblatex-archaeology.doc-1.2"="qp7wbplviaml6lfw5vc51xfpmmkxfw6z";
+"biblatex-archaeology.source-1.2"="g5h0l2mij32klmxrc9vl3qfr0nxcjhgn";
+"biblatex-arthistory-bonn-1.0"="na78ygiqfrgs7nm0qiqa3gk37l2pby89";
+"biblatex-arthistory-bonn.doc-1.0"="5mkh0da7ij87pxs7nplzqx6vya8kkvj2";
 "biblatex-bookinarticle-1.3.1a"="bnx6iravlnrkkyqb3ah21p0ikq00ab57";
 "biblatex-bookinarticle.doc-1.3.1a"="6shjhb1lajkivsh3mrr2whli5hcsb8b4";
-"biblatex-bookinother-2.1.1"="a9jsnjckpp8kxw6digf9vri7ypa8562d";
-"biblatex-bookinother.doc-2.1.1"="2sxch4m0ny75h9zvlpx5r85mihilg13a";
+"biblatex-bookinother-2.3.0"="gbzlxmidr5cj07wsivg5rsr0n99pc8rc";
+"biblatex-bookinother.doc-2.3.0"="1zvr6xp7bs3nc63dkj4m65xikc00825y";
 "biblatex-bwl-0.02"="0a11hlav9gsavdisyjckvnrxkkb4134w";
 "biblatex-bwl.doc-0.02"="b7ddxvcabp9qd88mzb6dxvw7sz8dnqfq";
-"biblatex-caspervector-0.2.6"="l1cz3l9hqbf88ff8ihclm5548zmfv8hs";
-"biblatex-caspervector.doc-0.2.6"="s39hsi5vj1bi21v4gk9s9z9byjj3kbj7";
-"biblatex-chem-1.1p"="mwdbl2jcclnkfzvi3f3phwaywl00l8ga";
-"biblatex-chem.doc-1.1p"="ij244309r6klvffyrhgcp0ig69p8yrvv";
-"biblatex-chicago-1.0rc1"="sxwrmsxrm7lf54s9wiqjwxb4dbsz1a80";
-"biblatex-chicago.doc-1.0rc1"="jnnndjzipfnp2ynpbszpqjkg37p8pxk6";
-"biblatex-dw-1.6a"="bspjklyxgav63yy5na9yhzpd7xym44fr";
-"biblatex-dw.doc-1.6a"="2i8x7vwvh5alk2i9dxil9zzhgj9dsc27";
-"biblatex-fiwi-1.5"="p9c24g1nrib6gs9hwaw67gizpvsk8xrr";
-"biblatex-fiwi.doc-1.5"="hfv6hh21vih6avnhyhyj6vkyzcpibmb4";
-"biblatex-gost-1.6"="ry0ydl9hyc60ng2b639y8mxa1ckbh871";
-"biblatex-gost.doc-1.6"="dds7rwsa7lxg7mc1da6lsg44hbyqhpyr";
+"biblatex-caspervector-0.2.7"="sqx24sv7iywy7dljisd4psshq77mvphf";
+"biblatex-caspervector.doc-0.2.7"="f6krv4var945h7c40ml5pqvj202bmzsx";
+"biblatex-chem-1.1t"="pp30qx978jfn3yy7yc53szmvz0gxg9ak";
+"biblatex-chem.doc-1.1t"="ml8yf4k71lbvn4m1mgqlsyxhw00jlknh";
+"biblatex-chicago-1.0rc4"="vkqiha1dxsq5ihfhf458vnf7bq7akjs2";
+"biblatex-chicago.doc-1.0rc4"="x8qzn2a6my6n5w6c45skrdfim8lll75c";
+"biblatex-claves-1.2.0"="yq5s9plvimz4w9san81swl08g2v6pa6q";
+"biblatex-claves.doc-1.2.0"="36qjs0m893389s9wkw5wxai04qp8zxs6";
+"biblatex-dw-1.7"="9nf2hg43q6if3v5hdrfxnpbdww7y06jv";
+"biblatex-dw.doc-1.7"="ppry56vc44c86m47r1z8mq9s7fg77n8m";
+"biblatex-enc-1.0"="ccc2f3rnf7kyavb3r2hmah6pcfl1xivg";
+"biblatex-enc.doc-1.0"="b54x1g0296ln6lkw1zvlbmshhr93vg7y";
+"biblatex-fiwi-1.6c"="82am4z1c20n0n4hway9dr1cq8nis98sv";
+"biblatex-fiwi.doc-1.6c"="bpm6z7lls21qk1czim5v2sbw96qisibx";
+"biblatex-gb7714-2015-1.0h"="7vxdm543rsh3h60d4aka35fldnwd0ksb";
+"biblatex-gb7714-2015.doc-1.0h"="fvhvs3x6vkmkmq0lq2spdv9w51w0y36g";
+"biblatex-gb7714-2015.source-1.0h"="ribwqizim5k9swwfp9w5ny8fq0qrjyr1";
+"biblatex-gost-1.16"="6p4v2qamfrck3k51ilkpil81b45mzrcm";
+"biblatex-gost.doc-1.16"="jcw8mkp5qxyzvcwj0sp18qk7bnygk97w";
 "biblatex-historian-0.4"="xp6r6a37ibm9fhdc95b2v3x5kgyz26c8";
 "biblatex-historian.doc-0.4"="6280kicfk2n0hwp03pyhl29ljdg911hb";
-"biblatex-ieee-1.1n"="ycgl3h3sk3v16ayq79wz1n80k157lfys";
-"biblatex-ieee.doc-1.1n"="4wdh639nn0x8gwq3xq4jw6qrrsvb5j48";
-"biblatex-iso690-0.3.1"="dx9r21d29l5x7r5l0578j58g6l1f60qf";
-"biblatex-iso690.doc-0.3.1"="l5g65n16flf9hshsr8ghcblm4r49zsrh";
+"biblatex-ieee-1.2d"="wsn3q42la76q691q6myrrd4k39dvvf1z";
+"biblatex-ieee.doc-1.2d"="s12127ig2m4gj9fi3syvmr88h5s6q4ap";
+"biblatex-ijsra-0.1"="179hh36v47xfagjwp5vj3hczc18jkrgf";
+"biblatex-ijsra.doc-0.1"="x3js5mb545xapavsqq4phml7zqiswiki";
+"biblatex-iso690-0.3.2"="y5032mfrc8djxnwsawcpa611rpdhmas3";
+"biblatex-iso690.doc-0.3.2"="rsv82pgp6f8prdw2yqw6zw7q94wk1sax";
 "biblatex-juradiss-0.1g"="0smwgi3vg97aiy6w8ya68zmaz711drlp";
 "biblatex-juradiss.doc-0.1g"="d4dp9hld95b70k8b5qxlmvcgcsxpv0g8";
+"biblatex-lni-0.4"="zdvp9ryfiqp1lwpd7wykvf35930m8dgl";
+"biblatex-lni.doc-0.4"="03p51dcn30nzhckd6qhl452f8jv670b3";
 "biblatex-luh-ipw-0.3"="83gar343q3h1h96h8lzs2bmsp1ba82n0";
 "biblatex-luh-ipw.doc-0.3"="yxcknwckw9s58qhrbdd70jz5yrpnyip2";
-"biblatex-manuscripts-philology-1.10.0"="ykpdzd96h4l7yvc3ffyfqfrkamaf6b0l";
-"biblatex-manuscripts-philology.doc-1.10.0"="v2nccq2sfkvgcz6dnmmjmy1siw7yh7lf";
-"biblatex-mla-1.5"="35x2khi3pqi9sgk4l1xlzyy2sn4kkkcr";
-"biblatex-mla.doc-1.5"="3xdx7g47g6swq8h6k3v12mmqdxq1684d";
-"biblatex-morenames-1.1.0"="idn85hlm70nwa1p2riqsqlm8xjhnqbkv";
-"biblatex-morenames.doc-1.1.0"="hmpqyj00xnc623sf919y0k7fh65xqm66";
+"biblatex-manuscripts-philology-1.12.2"="2lhpa7dvfyh0k0zc6rn1vsj3f7ahs6m8";
+"biblatex-manuscripts-philology.doc-1.12.2"="wk9ybwsnxjc3zqxkk0la5kq7x7ccmikh";
+"biblatex-mla-1.9"="1m10jmh42x7qahq16bzi2rwvv7j7biq5";
+"biblatex-mla.doc-1.9"="f6b9nj6xj93vikp4agvkrjddrrgfvjc2";
+"biblatex-morenames-1.3.1"="vbcnaicg2pa0jrqd170cs31wim08yk07";
+"biblatex-morenames.doc-1.3.1"="ksn965q79yv6badima68frbgmycjz9pn";
 "biblatex-multiple-dm-1.0.1"="6c7h8i04ksazrq2lbc6hbpcxkjdvih07";
 "biblatex-multiple-dm.doc-1.0.1"="j1hb0xn9gz6mywx018i4rq4g5xwi7af4";
 "biblatex-musuos-1.0"="dj5nsyf90mbi4dlghyh8aklqr28jvx76";
 "biblatex-musuos.doc-1.0"="ypw7naafkwm22kfq1hd4b0z665g4jz9p";
-"biblatex-nature-1.2g"="kfa1pzqk2wmv5lyyvv4dpj8pw1jn71dm";
-"biblatex-nature.doc-1.2g"="cx5yh23k9rl5v8snlqcrz18fk987scqd";
+"biblatex-nature-1.3b"="y20xyps9q45qlg8yrqr690az3w0kw008";
+"biblatex-nature.doc-1.3b"="7vpc38g1zy7jxw074063x57n1v72h7hw";
 "biblatex-nejm-0.4"="3sb2kazf4ch1yp415iqjnq30ykn7jd35";
 "biblatex-nejm.doc-0.4"="m8km67d5x860465qiwdjxx3vxh8fb7iw";
-"biblatex-opcit-booktitle-1.5.0a"="yp01vwsgsbcfbyyywiwjr3iv5xsg9m67";
-"biblatex-opcit-booktitle.doc-1.5.0a"="yfb5alizf760n7z5xb5cvq1mnmbi7ffb";
-"biblatex-philosophy-1.8"="3af14lxz0vij6z9myf2iaf3bva5p90ls";
-"biblatex-philosophy.doc-1.8"="s91c37yr7b0q86qdpvdc3293zchggkn8";
-"biblatex-philosophy.source-1.8"="iw0ws8yfy5cy09gbg9p5qklzpwr4f1bx";
-"biblatex-phys-1.0a"="j1qihqcyvlzjcnr361c1j7aijr5j33wr";
-"biblatex-phys.doc-1.0a"="ni45y5qnd8kma8z5pppfmk4ckylm5iav";
-"biblatex-publist-1.2"="qxv2694jkv2ki0dz52bz9r6ihbpjc69g";
-"biblatex-publist.doc-1.2"="dp1jbnz404fw35dbvljn1ai0slki410c";
-"biblatex-realauthor-2.5.0"="vm416xgvyqr7lmnrq3k1ripnhsglwg18";
-"biblatex-realauthor.doc-2.5.0"="jivdi043m43cjikym3275kk8ciy6lz5p";
-"biblatex-science-1.1f"="6k9drccf3dz26il0i78xlzpmmf3w5vcz";
-"biblatex-science.doc-1.1f"="mblqxh4vgkc962mnch4jkkvyb0c57lhv";
-"biblatex-source-division-2.4.0"="qp6rqjrn8yx3d0ybyzrxhdvz1a09v7xz";
-"biblatex-source-division.doc-2.4.0"="8zayacsfp5dwafj0f7zqlgwlcz1669zp";
-"biblatex-subseries-1.1.0"="nginsz6gynn9bhra2j74r9zlxsv8vjsd";
-"biblatex-subseries.doc-1.1.0"="bh1nbhzz0h0i1md49lh8bg4lksix5pmb";
+"biblatex-nottsclassic-0.1"="gyisgdfsns506vcbhyr7a20mnbhmldr9";
+"biblatex-nottsclassic.doc-0.1"="mswi2valgb31i1whlspd2mxvfcs1szdh";
+"biblatex-opcit-booktitle-1.8.0"="0lywwxk0m89lf344lhvif3281b8grj31";
+"biblatex-opcit-booktitle.doc-1.8.0"="1l3m97j1dbiy6sbffhivlsqlrhnzkzz9";
+"biblatex-oxref-0.10"="4mr439x90vdc2w03cpidcbwhnhcc8lcr";
+"biblatex-oxref.doc-0.10"="bdj84dpcyh7jpk88xqd2y9mrpp79n2mp";
+"biblatex-oxref.source-0.10"="z6lh0k98qjss3kl3pkvbalc9jjz1sg7x";
+"biblatex-philosophy-1.9.7"="yykxjmirzdm3fkx0j6siwh86frba02im";
+"biblatex-philosophy.doc-1.9.7"="d7706y8iys2jramy0xd72nfgqm8qhg67";
+"biblatex-philosophy.source-1.9.7"="mn31ljxcbl9z40c7hnaa9z3a1bychcng";
+"biblatex-phys-1.0b"="zhp8wd9n07mqvniay7339c6lfv5nhlws";
+"biblatex-phys.doc-1.0b"="pi77vmsc3l3p0y7d17x4rzkz9z6nz1j3";
+"biblatex-publist-1.7"="h1wcwy9gh45hqvwvn937nla5kiw28hx3";
+"biblatex-publist.doc-1.7"="vzdbnrjza5in1n1a3ykqjxqkp3jipmzw";
+"biblatex-realauthor-2.7.0"="lfj0jbnhg8iqc6sv4351sjiz2vx34axk";
+"biblatex-realauthor.doc-2.7.0"="lw2s21r9p9v6x1r5n13djz9xad0isg1s";
+"biblatex-sbl-0.8.1"="425j4iqi1w8ax8han8gyyzayiw0rnr90";
+"biblatex-sbl.doc-0.8.1"="6gbwcv4frd9g9p4r9xy5bv0dgaqymh8k";
+"biblatex-science-1.1g"="a9c3rbxpjgmh94052kn89xfpy9hh5wrb";
+"biblatex-science.doc-1.1g"="yrk1nxnzvwd03ng70al47qvvxfrgc086";
+"biblatex-shortfields-1.0.0"="9k6cvp6v0n8pvl26ikqi1f2db6ga952c";
+"biblatex-shortfields.doc-1.0.0"="2qr31vy4m7dakbni8026gwy76flsbc5b";
+"biblatex-source-division-2.4.2"="kdxm789jnmvyzkx7pi9983jq25p30iib";
+"biblatex-source-division.doc-2.4.2"="4j6h8k98v95n05lzfzp8804gir24vbmc";
+"biblatex-subseries-1.2.0"="v7rfg6wqkqgzm8fwrg0ncwinjzsibcdf";
+"biblatex-subseries.doc-1.2.0"="hgqxbs3qjqya9pxs1spylh2m1clfg5zk";
 "biblatex-swiss-legal-1.1.2a"="lp3jw955jpyfjyn6mp6wna8rqwbhsvfj";
 "biblatex-swiss-legal.doc-1.1.2a"="23bam0vm3zqrcj1cd10g8bml0jsyvmcq";
-"biblatex-trad-0.2"="1d875vm3whrm4yc8n3infk7b1643j32y";
-"biblatex-trad.doc-0.2"="mnwdxsn51rw7s01lkc9cxvgs3rg63xmh";
-"biblatex-true-citepages-omit-1.2.0a"="qk0ysfx4i0bcgxxxj69xqf5q1fl0dj3h";
-"biblatex-true-citepages-omit.doc-1.2.0a"="8n0irgsi94g8b4my3xl1n05l1raap5m3";
-"biblist-2016"="b565jl60ysccd5qkzgidjb188i509y9l";
-"biblist.doc-2016"="50kjqxwhdncn09c7cx0abkcihvhfzzpl";
-"bibtexperllibs-1.1"="hc5iaz4jjqxqzrs1lay101fj952blr12";
-"bibtexperllibs.doc-1.1"="h4qnqdyvcc4kiccbiq0nf9w9mi0f6rxj";
-"bibtexperllibs.source-1.1"="d6d9jqpml7pdjcg3c2n605rwlmnk6b1m";
+"biblatex-trad-0.3"="9dfzfc2ddpyspwrfbxzcqbs4xkgfjr62";
+"biblatex-trad.doc-0.3"="0vm8qcvzk7v92n5ba2i23ky0gm8bqm0w";
+"biblatex-true-citepages-omit-2.0.0"="y7mg4jqb3fl9mzy93xcpxz3y0l5fw3kc";
+"biblatex-true-citepages-omit.doc-2.0.0"="7cxbqdyazdfp0masgk6a31rr3h9606xd";
+"biblist-2017"="b565jl60ysccd5qkzgidjb188i509y9l";
+"biblist.doc-2017"="50kjqxwhdncn09c7cx0abkcihvhfzzpl";
+"bibtexperllibs-1.3"="fybih5rkcy6fagajbry2zqi0xagjv7jk";
+"bibtexperllibs.doc-1.3"="3n5j7spr9bhfzbwk2qnccj2drnxx9ch0";
+"bibtexperllibs.source-1.3"="wk7r3vgq5g4cxlymbx6ck3brk2pml1ai";
 "bibtopic-1.1a"="r3rbv97qik2ikmkp3vx6srw7qf5v704c";
 "bibtopic.doc-1.1a"="anrfs022bvwbfwsm05hxl10zgwckidn6";
 "bibtopic.source-1.1a"="s32v3bwk7a1aqfkmp1scaf812x6ra9rx";
@@ -176,20 +204,22 @@
 "bibunits-2.2"="vkahqz7zjn0g4dkpffvg8rfhjlynvmnf";
 "bibunits.doc-2.2"="d6xcf9xdkabjg3jrnyklla7kpbylrg61";
 "bibunits.source-2.2"="1hxc8yqjpri8pn512pfvcq7b2m9qnwib";
+"biolett-bst-2017"="c2iw962bwa5815qk2sbhhqjd7z4ygmns";
+"biolett-bst.doc-2017"="7w39z3hdps980l2g1yqbzy8384w4vbqr";
 "bookdb-0.2"="b4mqk50dn86zf30w2z8953ms8m8v9lrs";
 "bookdb.doc-0.2"="y5sdn2fijycnyx9is1cqc5vx6zkyav62";
-"breakcites-2016"="cvqm5ljgdl47idyjvfs2hg98xmkscfj9";
-"breakcites.doc-2016"="jjqimy63648q6n4mzlwrd7p723m09cbw";
-"cell-2016"="qlg2sy9fj9cv6c8jbdmwzysadl8fhw8b";
-"cell.doc-2016"="61a0456g9i76nxwhpv18fw532nimk2l4";
+"breakcites-2017"="cvqm5ljgdl47idyjvfs2hg98xmkscfj9";
+"breakcites.doc-2017"="jjqimy63648q6n4mzlwrd7p723m09cbw";
+"cell-2017"="qlg2sy9fj9cv6c8jbdmwzysadl8fhw8b";
+"cell.doc-2017"="61a0456g9i76nxwhpv18fw532nimk2l4";
 "chbibref-1.0"="7d51sy03z9ww5ns8x0mfiplyk00dgb00";
 "chbibref.doc-1.0"="xyypa6w4gx297hpp1ixg8g431rz436qf";
 "chembst-0.2.5"="08b5a38p2x2xgv5nw1ibi0xpc4xqixnn";
 "chembst.doc-0.2.5"="wgbb4bcl51wnixp4rb94qqqn880mxm7f";
 "chembst.source-0.2.5"="360yyds5c6mbcsm60mm3jq8xfxcpnw5v";
-"chicago-2016"="k9y76g5a4nfy88igklw08n27zvnnap2b";
-"chicago-annote-2016"="nyasy7sal5vikd1jysdvhg0ym7hs6q0p";
-"chicago-annote.doc-2016"="8qhd3kj016s9laavhg1wvimy4325zz0g";
+"chicago-2017"="k9y76g5a4nfy88igklw08n27zvnnap2b";
+"chicago-annote-2017"="nyasy7sal5vikd1jysdvhg0ym7hs6q0p";
+"chicago-annote.doc-2017"="8qhd3kj016s9laavhg1wvimy4325zz0g";
 "chscite-2.9999"="yc7v9v66md3dy5k2gjswzh58xzxdhwp4";
 "chscite.doc-2.9999"="fbcykh46rifs4kvn728sav04fnshr6br";
 "chscite.source-2.9999"="vsii846cdlrd9fdmf4npwy8jxh0fcafb";
@@ -198,89 +228,85 @@
 "ae-1.4"="zx6mlxrdhfvp0a5ql61jhlj97pcxazwz";
 "ae.doc-1.4"="pgvyvlql6hncc8bv2wdf8ja6xxqjjqs7";
 "ae.source-1.4"="jzwswwwsb988mvhiiyb7p43g33985n8p";
-"amscls-2016"="ckdbia978nbl0qhcjycgp4gzby2pigp0";
-"amscls.doc-2016"="j6g6qirwzx8ajf08zxgbg8r05hdqjq7g";
-"amscls.source-2016"="im10nfjn3175057rgpplrpka6lbsna0y";
-"amsmath-2.15b"="7nxqn7j9789v8cbki7pr2y3iy60aws1l";
-"amsmath.doc-2.15b"="ijyvzl9n2sqysc6kmsfa9d1vi89dimjx";
-"amsmath.source-2.15b"="g1mjwixbk0zkwqx2paambx9b47i4qjsz";
-"babel-3.9r"="y1jcpy35lrbxxsb5nvfgfl71x2jnlcc5";
-"babel.doc-3.9r"="9k1kf7z5drqb77ndrwzri8962ymqx6n9";
-"babel.source-3.9r"="8qafj8y8srpj5ym7w7c6mi3l5rykww1x";
-"babel-english-3.3p"="5lllx7my4745bs1g4srl2mankxpnvkbi";
-"babel-english.doc-3.3p"="sg3k30f6jrhkm6lfba1s1xm7hpnrbp0p";
-"babel-english.source-3.3p"="qz0n616gcqdbr9db7rfpi7yqns16wbvn";
+"amscls-2017"="ckdbia978nbl0qhcjycgp4gzby2pigp0";
+"amscls.doc-2017"="j6g6qirwzx8ajf08zxgbg8r05hdqjq7g";
+"amscls.source-2017"="im10nfjn3175057rgpplrpka6lbsna0y";
+"amsmath-2017"="ha01if1b84il6v6waq7jb7341v9x9cwk";
+"amsmath.doc-2017"="r8nwf46x2a8fq6zjlllgpbin1cfxzhkn";
+"amsmath.source-2017"="khmk7j3gjbgz4bl4b9j5ws12960qcwqs";
+"babel-3.14"="ds81fjbqn7cdygs1j85svpnd7ndhxdab";
+"babel.doc-3.14"="nmzfx6kdffkf6m606wair11mcgik088c";
+"babel.source-3.14"="8dyncyl8q4syb292s7jqap8k4dhzqv6z";
+"babel-english-3.3q"="lrsz299wwvr17sshfjvsvrzs0s9y2acs";
+"babel-english.doc-3.3q"="y7rp46lrpxsp8z1ridc6msxnbb008k0c";
+"babel-english.source-3.3q"="5sxvprjfcqhw6xb3mv3b0smp2gsckjs9";
 "babelbib-1.31"="amkn9a5k0ggifkz1yczzlgl6lxklb1rn";
 "babelbib.doc-1.31"="82pbrcmmfxzpzb4aid7a7gq4wd4y0d5g";
-"carlisle-2016"="7clk61fdqxyi8cnqz0bzlm46hax9wkaq";
-"carlisle.doc-2016"="wb32qrbz5x1fqcxlkgafnim881cp8rwr";
-"carlisle.source-2016"="bvla3z6fd0m46k365s2fsbpb5ypvb3rv";
+"carlisle-2017"="7clk61fdqxyi8cnqz0bzlm46hax9wkaq";
+"carlisle.doc-2017"="wb32qrbz5x1fqcxlkgafnim881cp8rwr";
+"carlisle.source-2017"="bvla3z6fd0m46k365s2fsbpb5ypvb3rv";
 "colortbl-1.0a"="3l51y7m57n2r8sv2xbz913ljz12pzp28";
 "colortbl.doc-1.0a"="28iv8a0ynfn9p7rvw0y21xyqgj5wfk3w";
 "colortbl.source-1.0a"="djr5cksady9m5764zdpgiy8103vqvqai";
-"dvisvgm-def-1.0a"="mz5qil6yk9ybpbj8zbsgl92b0z0nb3ir";
-"dvisvgm-def.doc-1.0a"="4y938amq5cpr9ypvyw6g4dzlr37mnndp";
-"fancyhdr-3.1"="ryj6n9yrwwc080xfgdszixxk4mc19ra6";
-"fancyhdr.doc-3.1"="4s6j2icyiwrkm8f9h6mzx8bp37141lzf";
+"fancyhdr-3.9a"="idiiqa9l63m9b3fl8pkf684jwfycadbk";
+"fancyhdr.doc-3.9a"="957y2whhqcyyyqrdyn93xrigryh9shjf";
 "fix2col-0.04"="4lr11c6qqbsmm3jixayn7jlyikh65b83";
 "fix2col.doc-0.04"="k9hlwbz12vqc446y1ydy045j7c29yzng";
 "fix2col.source-0.04"="524zn5yfy3zwy70m11vch4ri5xwrgi0p";
 "geometry-5.6"="ja33sy5pvw5lqhmz6yymx7847dacp8vx";
 "geometry.doc-5.6"="90sxq2pb4kh0lrid5wh4l2w5gaka7x13";
 "geometry.source-5.6"="bjk0zlpgr5gk391fk1va0zsg179njnhp";
-"graphics-2016"="j5fqqxfskyn99y2imkrskcjiia021346";
-"graphics.doc-2016"="q7gg1hwl1rgjgjggdspz7jl7jy3cjz2y";
-"graphics.source-2016"="ycp1bi96vyc3kmlm4s6hn0qxprbbwbb1";
-"graphics-cfg-2016"="j73na78ajl4n50wn2is5wvw7mf27da86";
-"graphics-cfg.doc-2016"="nzdjyk00lx0xhflm04d2kmyn5ya2v487";
-"hyperref-6.83p"="y71r0b5j8079amqdn1zn3c58l10jqzb7";
-"hyperref.doc-6.83p"="ngynic9a1v700jzn0140nrxxm8wl8wp2";
-"hyperref.source-6.83p"="pyc7vjlbz37dqvvz0fdjggpd3xwb5j6p";
-"latex-2016"="z9r2lqch03xjzcb4g5a3pn5k2ik9p1a3";
-"latex.doc-2016"="38961gm5rymzib3591k75x3zwm4d04zp";
-"latex.source-2016"="1z8sbxhb5rqipgplvzrig11lcvlyclbv";
-"latex-fonts-2016"="pw97wy7b4hhzm28r0wl44lacn7nx41ia";
-"latex-fonts.doc-2016"="mv9ivpdxgyjj92fq9141bsw5s306mg83";
-"latexconfig-2016"="rpwazy1znnhn7bdbnrcckqkddmxxqzqv";
-"latex-bin.doc-2016"="ma028w20xvkymhif7cic3d9fyjk2jjx6";
-"ltxmisc-2016"="lf6x6jbl1d3i77wb0dg7lmy26qxk7h8x";
-"mfnfss-2016"="vzpxm3f88p7hv6psh8yfq1r1qhv41xr6";
-"mfnfss.doc-2016"="gv9n8rgdvv564s9n4vynspjdjy1bmc71";
-"mfnfss.source-2016"="401lsgd8dr1avkyw3j0pc1hshfkni5qj";
-"mptopdf-2016"="8a9cp2fz1ayhq8x7c3c609fzjd6dxz1x";
-"mptopdf.doc-2016"="js869531y8rpd1ym7h2k5zb3b8abghkh";
+"graphics-2017"="jfrm2r2qi7yrbp33w9dwzdbal2a7lmml";
+"graphics.doc-2017"="icg1z7610n7jzzn4zsc79hyvcc8ldwz3";
+"graphics.source-2017"="qlfmc40zrrkrawvchsfhnrjbalhgiya8";
+"graphics-cfg-2017"="j73na78ajl4n50wn2is5wvw7mf27da86";
+"graphics-cfg.doc-2017"="nzdjyk00lx0xhflm04d2kmyn5ya2v487";
+"hyperref-6.85a"="j0wbz1dxbs10q347ax0i7amsqlj1kr2n";
+"hyperref.doc-6.85a"="q04jxmffbml3gx6rbq2436d76xxmnv5q";
+"hyperref.source-6.85a"="hzlxzrz1845xjmgydbx3dzyz72b9h933";
+"latex-2017-01-01_PL1"="799njrphqhzmlmx1x6p9d7mzanwqhsjq";
+"latex.doc-2017-01-01_PL1"="w42l2d6f80jbh9n6fx9r48dqkfhgpwl6";
+"latex.source-2017-01-01_PL1"="rii8q3wqkaszhk1wky4bv638s9rbhavg";
+"latex-fonts-2017"="pw97wy7b4hhzm28r0wl44lacn7nx41ia";
+"latex-fonts.doc-2017"="mv9ivpdxgyjj92fq9141bsw5s306mg83";
+"latexconfig-2017"="rpwazy1znnhn7bdbnrcckqkddmxxqzqv";
+"latex-bin.doc-2017"="1zd1sh890fh97zg7ng86071j0aa06psx";
+"ltxmisc-2017"="lf6x6jbl1d3i77wb0dg7lmy26qxk7h8x";
+"mfnfss-2017"="vzpxm3f88p7hv6psh8yfq1r1qhv41xr6";
+"mfnfss.doc-2017"="gv9n8rgdvv564s9n4vynspjdjy1bmc71";
+"mfnfss.source-2017"="401lsgd8dr1avkyw3j0pc1hshfkni5qj";
+"mptopdf-2017"="8a9cp2fz1ayhq8x7c3c609fzjd6dxz1x";
+"mptopdf.doc-2017"="8wb8ykq4zb9hq4gls0kimhbs1j1rhd82";
 "natbib-8.31b"="c4fyqph06vxqm37z88r31q84xz5imcnj";
 "natbib.doc-8.31b"="fsg1kcjvbp5hfn9h8lwhygnil9wr7awg";
 "natbib.source-8.31b"="c4b7bqivps74v8286lf4j36p551jhnzj";
-"oberdiek-2016"="pxpyfj21s6w9hl6l4yi9sx9kq28d2fic";
-"oberdiek.doc-2016"="ihi9wnydggyxcgzhni3360srq6558f08";
-"oberdiek.source-2016"="cz7gw13i5kqscv8h5bslqqa0sjjmc2qs";
-"pdftex-def-0.06h"="hiiqw1v0hxbjgnrgafxf12d6yfry02cx";
-"pdftex-def.doc-0.06h"="692ja5pc2h7lasslyvp2xx9m1kyrv1ad";
-"pslatex-2016"="7apd53ad70mr9pf8ja87iz4cfm41qs9p";
-"pslatex.source-2016"="cqc3yah7p9cgbbsj6var19b4xzyqj01l";
+"oberdiek-2017"="h7dvw4590qs3ag8y44vv4j9lwl0w3kni";
+"oberdiek.doc-2017"="zx0h065n3hdy63mykqphfp2hk1pq8a7s";
+"oberdiek.source-2017"="xdf8q6w4n81y87fa0fsf01vf4xii0w21";
+"pslatex-2017"="7apd53ad70mr9pf8ja87iz4cfm41qs9p";
+"pslatex.source-2017"="cqc3yah7p9cgbbsj6var19b4xzyqj01l";
 "psnfss-9.2a"="a4gfps30ywrjdah9m5dknsv5yl80h0gz";
 "psnfss.doc-9.2a"="pbiaqsf1gqrwic9pf499k89aw757wr9m";
 "psnfss.source-9.2a"="vi285d52bbvq01x4yan9md3cck4dc1lh";
-"pspicture-2016"="siqi85kfmyg91cf7nggs71jh38g2aicl";
-"pspicture.doc-2016"="h26v6akzzgg6hn4ay096fvg2qw6l2ww8";
-"pspicture.source-2016"="fclpkng5q7dhd1vfzv2031r4l3f3vh5y";
-"tools-2016"="da72nx807mqdf4ajymfgf4nkd8ngp4dr";
-"tools.doc-2016"="zw1bikxzdl6xvjvpnrhg95cjxhr0aypf";
-"tools.source-2016"="9zqy7rfbh7d4jsxzblx46k5l90n67faf";
+"pspicture-2017"="siqi85kfmyg91cf7nggs71jh38g2aicl";
+"pspicture.doc-2017"="h26v6akzzgg6hn4ay096fvg2qw6l2ww8";
+"pspicture.source-2017"="fclpkng5q7dhd1vfzv2031r4l3f3vh5y";
+"tools-2017"="ix2dwlynqjpfpagpy8mf1n4igcr969jm";
+"tools.doc-2017"="h06m306z56r9if23j4qi4cg6cn7cdv5w";
+"tools.source-2017"="8yf12zh425cjv5wn8mwf387m53wab91h";
 "url-3.4"="vf34zjwlv43kcw53sdla9052x7x0kn7y";
 "url.doc-3.4"="ii3z3l7xkmrkxb8dkgk6lcqyb34niirc";
 "collref-2.0b"="jmwqf978ivqbik8vdkjq374icxs8w84w";
 "collref.doc-2.0b"="1dzrqml74f983hxjvnpznzk5rbfl6745";
 "collref.source-2.0b"="irvbzhsbnifgcacs9sw9142c2b93yqb2";
-"compactbib-2016"="5365y0lxziirnp7rraxwbcksrky9hr1m";
-"crossrefware-2.0"="chq7m59gshllpglg9b65h11lz0nph1yx";
-"crossrefware.doc-2.0"="wnjjp99z9r3x7dhjc6c9imm895jldy2r";
+"compactbib-2017"="5365y0lxziirnp7rraxwbcksrky9hr1m";
+"crossrefware-2.1a"="04infm58pjlq62rkza8gp79xz46yfbck";
+"crossrefware.doc-2.1a"="0f8h460yw6qc5mg1mi5a8bkrpyzv734f";
 "custom-bib-4.33"="9vqjbilzlsqg3f609hnz27pwmrl5gfg5";
 "custom-bib.doc-4.33"="nz1gxi8ixypxpf4cv7nilabq1ivr6fiz";
 "custom-bib.source-4.33"="vmak3xkin0hmg92mmpxj53dgs2f2yihg";
-"din1505-2016"="dc7lv2c8zid1c6pklllsiac390hx0v4c";
-"din1505.doc-2016"="fhdc3badjmz3zylmgahy34fbzjgkss0m";
+"din1505-2017"="dc7lv2c8zid1c6pklllsiac390hx0v4c";
+"din1505.doc-2017"="fhdc3badjmz3zylmgahy34fbzjgkss0m";
 "dk-bib-0.6"="yvbpqypgxkh6i47yvkk0cp7qsfy083gr";
 "dk-bib.doc-0.6"="px69q4pi9444kwmw6fpmajvdwl8ivw9i";
 "dk-bib.source-0.6"="1jmv0pg8x913y6y0xjb888s0zg91iw1l";
@@ -289,31 +315,31 @@
 "doipubmed.source-1.01"="mz2ld43x7sp8np0qmcs86p5lc09nl4dr";
 "ecobiblatex-1.0"="ikxp3jlzlsnc7jh7vcxcfq8wvpd5r8ll";
 "ecobiblatex.doc-1.0"="y5hifg3r0xkgv6zklw7l9j7shl87fnf0";
-"economic-2016"="xw85nd7v6i1d2ma0airnc7bwf1fdsipp";
-"economic.doc-2016"="pv3irnv3gj70q22ac3kr858hac50vrbz";
-"fbs-2016"="h6ghp5i14cqy46hzp9i481c8gvk2ddza";
-"figbib-2016"="imp65i6ddqyw5xck7k6gzb976glq9xj8";
-"figbib.doc-2016"="6v3sj56vg039mrm7kk71wdjhp04h1rf6";
+"economic-2017"="xw85nd7v6i1d2ma0airnc7bwf1fdsipp";
+"economic.doc-2017"="pv3irnv3gj70q22ac3kr858hac50vrbz";
+"fbs-2017"="h6ghp5i14cqy46hzp9i481c8gvk2ddza";
+"figbib-2017"="imp65i6ddqyw5xck7k6gzb976glq9xj8";
+"figbib.doc-2017"="6v3sj56vg039mrm7kk71wdjhp04h1rf6";
 "footbib-2.0.7"="xhrwnw5kvs3rxp32a8awv8ma7098cv6h";
 "footbib.doc-2.0.7"="dzyra0rwf5hl2g6f7c2pw88d78f7yls1";
 "footbib.source-2.0.7"="xj3agjgzfnwnfzzbzk4xjfk90fr1a6fm";
 "francais-bst-1.1"="zz8wcr2ymwd7m721qr94l1k799mi9cia";
 "francais-bst.doc-1.1"="qmq30903zrvvw6bprngklx5pwq9c1cqd";
-"geschichtsfrkl-1.4"="wanhb5jfd1pskmhm3a0mc19y04jbr33w";
-"geschichtsfrkl.doc-1.4"="nilw1mm9li8s71acl2236mpqq681kd25";
-"geschichtsfrkl.source-1.4"="jrlm2xjadsg8w3fxdsqb5q9gfy72q63m";
+"geschichtsfrkl-1.4"="94vlnvvfy0py3ig3mjjizxbnp3xcnpv6";
+"geschichtsfrkl.doc-1.4"="212pcrypha38lk3nri43fvj12fgjlqzm";
+"geschichtsfrkl.source-1.4"="ak3n8j6n1wx9pgawvyr4diklq9971wx1";
 "harvard-2.0.5"="yhk8zvlhgd1knzfdndba31whwj7ixh1j";
 "harvard.doc-2.0.5"="c3jps721d0cndqjqgqkhcz4n7xvaj1f2";
 "harvard.source-2.0.5"="kjg78fvynjjna03hh2xzcrqvsm8d9yjw";
-"harvmac-2016"="30iiq3zikvmyy87j98knxbc9iak232bb";
-"harvmac.doc-2016"="3q1j6s2rdz18fg3hknp7ifyzixgmwr8h";
-"historische-zeitschrift-1.1a"="bsz5pyq1j058apgdwa6x7k2rnin8iy3g";
-"historische-zeitschrift.doc-1.1a"="k758py90dfdvblb6nfcz64i4ljlhirv7";
+"harvmac-2017"="30iiq3zikvmyy87j98knxbc9iak232bb";
+"harvmac.doc-2017"="3q1j6s2rdz18fg3hknp7ifyzixgmwr8h";
+"historische-zeitschrift-1.2"="6zli1x9hz1dsy8p4hpi9rdb0hs35vka9";
+"historische-zeitschrift.doc-1.2"="y76j031x8zym5i6sqr0r67ws0z49q306";
 "ietfbibs.doc-1.0.0"="mqqb9qjrk1lg7w85w8jbhizmh1qh4zqa";
 "ijqc-1.2"="ry2ydiqc71zjfkb46l4fvlxa1h6wnq1c";
 "ijqc.doc-1.2"="zz9ai19qd2rxvpw5kx1k1rd3ndndjv6v";
-"inlinebib-2016"="gkr44f3f9m92bx42gcvwgzclbjya5gdm";
-"inlinebib.doc-2016"="bpfx7h4w0zqr7xdxn51glllzf20qj24y";
+"inlinebib-2017"="gkr44f3f9m92bx42gcvwgzclbjya5gdm";
+"inlinebib.doc-2017"="bpfx7h4w0zqr7xdxn51glllzf20qj24y";
 "iopart-num-2.1"="92jbzj605pi9chj3ymfxm9ii2dh62haz";
 "iopart-num.doc-2.1"="smix69mc1n89q45nw3rl18lasn2c2kwa";
 "jneurosci-1.00"="r5k91lza98jn52s8fmgrbclslb6zps08";
@@ -327,6 +353,12 @@
 "listbib.source-2.2"="266hzszszrdwa0x6hk5xrz9gjs1srsb8";
 "logreq-1.0"="4kl4g8kjy4zch0rdn8aj2mr5yxpssdc0";
 "logreq.doc-1.0"="8s7ly9p9m270mhhh16gv5p71r10cpnzv";
+"ltb2bib-0.01"="mid475rg33jg29rxq0ci49vq4y81j4ng";
+"ltb2bib.doc-0.01"="7k2q8zzzhf5zf71fw0yinyghlb1kwqy7";
+"ltb2bib.source-0.01"="8py2zhz04b0hals44ypv67m2c71b1j0p";
+"luabibentry-0.1a"="lm4x9gqyj8ha0cjwmmy7h4yffnd8wymx";
+"luabibentry.doc-0.1a"="psn62xnv0l494i67jzsc0sbij0r2kcvb";
+"luabibentry.source-0.1a"="9l96kjwd1kwkj7rjcrlq3vcyiylbawrl";
 "margbib-1.0c"="315vswcfl035s528hmj5wvl43iar5d0p";
 "margbib.doc-1.0c"="lix6xbc2in8r6cc1yvdb565nky1f6jq3";
 "margbib.source-1.0c"="gnjk0pwcdim1mnbsyq9mmkmrqw75a771";
@@ -336,8 +368,8 @@
 "multibibliography-1.03"="3svp5l6al4k7adk99d6fcy7m54qbfbqy";
 "multibibliography.doc-1.03"="1bl112qsviy7jzhm1qdvn42x0lvcnjkd";
 "multibibliography.source-1.03"="65bvyr4gr7sdwhsraq9rmbv16d4fi6qc";
-"munich-2016"="0a6hgpvjyd8hzvmrf5bjc6rniwj39bx8";
-"munich.doc-2016"="22c6rhm479c1gg7df9mzza2vl7jgb3ij";
+"munich-2017"="0a6hgpvjyd8hzvmrf5bjc6rniwj39bx8";
+"munich.doc-2017"="22c6rhm479c1gg7df9mzza2vl7jgb3ij";
 "nar-3.19"="iaann8dbnvignc32m1wnlz4j77i7ngx8";
 "nmbib-1.04"="mbz1wjyaxsx3cn4wymvz4w9wf10580da";
 "nmbib.doc-1.04"="s6bbxc8lyp7kbrpsi0i4jrvda00260ks";
@@ -345,23 +377,24 @@
 "notes2bib-2.0k"="q8dvcbf4dla1x8lrpsr6lmd4racfkfps";
 "notes2bib.doc-2.0k"="mw3vsv53vpng36nqwiwdw4aj49gq6rq1";
 "notes2bib.source-2.0k"="zllxh9jj5yakjw8pswdj5mv7cmm99lf8";
-"oscola-1.4"="nxly86hdzdgsa9dx3326p1f4n0awrjmq";
-"oscola.doc-1.4"="a90ssnpb6znbm9xv1lp19j4b0b26q1gd";
-"perception-2016"="pcwr35lpv0zksvw7nw9hk08m81xq6mgx";
-"perception.doc-2016"="2c1l0ffxvmy5ac8h1zilfl381igqi15y";
+"notex-bst-2017"="x4042ry48i6p1qr2l4yv0d52x4wmjarg";
+"oscola-1.5"="v2cq7pnq79yc15iha9mb4q9avcywfga4";
+"oscola.doc-1.5"="0a1yd9jz5snmzjydnawr6d154ad1ylbz";
+"perception-2017"="pcwr35lpv0zksvw7nw9hk08m81xq6mgx";
+"perception.doc-2017"="sn4m1gc1s04h1crw3gbaahbxa6b76npy";
 "pnas2009-1.0"="k4xy9dabg8i4mf18317wf8mp3hrlpmqy";
-"rsc-3.1e"="yar1wy5z37hly20lkp020ghj3d9l922f";
-"rsc.doc-3.1e"="bwykjz238m66pawn9vjx6f2fydqjfrm5";
-"rsc.source-3.1e"="ni4kd6sp7z7zxclbi6vd7pk7wsffpshd";
+"rsc-3.1f"="4hhv7zw4v3w8sslxwj14pk4azil1cdhh";
+"rsc.doc-3.1f"="d20wkd2qw8dabh30gdpasxqacn193f1b";
+"rsc.source-3.1f"="rfsxjn597ylr3m2vl72dh7fa8x2a08yw";
 "showtags-1.05"="hbxk7ijniaffjnk02hkjwgw8gwgnx5qb";
 "showtags.doc-1.05"="q22k5ckq0q4228ssvqnz9n139x32a5iq";
-"sort-by-letters-2016"="4m8cm6rnhgsc40liy2yhfc4r76zpdnsq";
-"sort-by-letters.doc-2016"="3z4kw7hvnjmp7hlfjw2gchraw69zyx09";
+"sort-by-letters-2017"="4m8cm6rnhgsc40liy2yhfc4r76zpdnsq";
+"sort-by-letters.doc-2017"="3z4kw7hvnjmp7hlfjw2gchraw69zyx09";
 "splitbib-1.17"="az1n021wdajs8dc0q93wgfb1r0jcr2h2";
 "splitbib.doc-1.17"="qsb89h2ch89qhbxir7f90xx5sqvgm1px";
 "splitbib.source-1.17"="c9m7hp7fh86qj53qwaqxh8xj8yf3gxdy";
-"turabian-formatting-2016"="6ilq7k0bf1kyphx469dmy0mbbnnsn3yj";
-"turabian-formatting.doc-2016"="c7sjd5z1kgkw3gm3kklzqg5s7drjh45x";
+"turabian-formatting-2017"="95gqjzlj1hq9cz8g33a8l93hkzchjylb";
+"turabian-formatting.doc-2017"="gmxadhwnw5qpc00ajwqgl84w023kvqaf";
 "uni-wtal-ger-0.2"="i4nr7hq5gym5rcs2pc43qclci7jy9y4m";
 "uni-wtal-ger.doc-0.2"="a4r7w5m71h1kfgzxgpmb84hndnhrxhhy";
 "uni-wtal-lin-0.2"="8cdd4qcy3i5bvf25nn89kdaqph3a6fan";
@@ -372,79 +405,85 @@
 "usebib-1.0a"="4b8sv3fknxfaz9cgnvn3l5wf9c8c76wx";
 "usebib.doc-1.0a"="ba1nqv90zkfzi8n17xlk7rkx2s92lkd9";
 "usebib.source-1.0a"="967j287dsb1j4wa5k9sxsv4xp7194q3b";
-"vak-2016"="7ar45am5q9mhv8liz1zvix9wgcwqgjhl";
-"vak.doc-2016"="sr1gi7csll74iw13j24r1hdwn3gql9ak";
+"vak-2017"="7ar45am5q9mhv8liz1zvix9wgcwqgjhl";
+"vak.doc-2017"="sr1gi7csll74iw13j24r1hdwn3gql9ak";
 "xcite-1.0"="fpgsqqg3rliap6chn99xzlj676ll25hd";
 "xcite.doc-1.0"="wvhx1d2wkws7fcrplh55v9fsq1r8a3hw";
 "xcite.source-1.0"="8n5kfjr7xfjicd1hw6hlhcrn8dzicp5q";
-"a2ping-2016"="srb9jfjnp85rzq42m6wvi0nkp1wk78s3";
-"a2ping.doc-2016"="ycdwjcmhp91ciqfcvhgyg3sw6aprvwmz";
-"adhocfilelist-2016"="l8ayz7mqaa5lma2bvqb2brc879y0viij";
-"adhocfilelist.doc-2016"="gm20nhwq88s1cmch3pcgkqnyahb5gnri";
-"adhocfilelist.source-2016"="3qx23im0z07cnk2bd5vrskl153zxy6ff";
-"arara-3.0"="hmvlrlz9l47n1qq648bdz6dr3vm1w48l";
-"arara.doc-3.0"="syfx2srkh3cjylv4d08dcs6fz98mkqlr";
-"arara.source-3.0"="2si87nvpwmkk0jk0ysk60dydrc7ncrcw";
-"asymptote-2.38"="7g9mhb1jgg5pxh58wnd7yr1a7rjq7yfd";
-"asymptote.doc-2.38"="i06yz2sf464xpn38l8crmsb67x8ns475";
+"a2ping-2017"="srb9jfjnp85rzq42m6wvi0nkp1wk78s3";
+"a2ping.doc-2017"="ycdwjcmhp91ciqfcvhgyg3sw6aprvwmz";
+"adhocfilelist-2017"="l8ayz7mqaa5lma2bvqb2brc879y0viij";
+"adhocfilelist.doc-2017"="gm20nhwq88s1cmch3pcgkqnyahb5gnri";
+"adhocfilelist.source-2017"="3qx23im0z07cnk2bd5vrskl153zxy6ff";
+"arara-3.0a"="4knq382wxz5prqpyk95wmipv6rj8ds2b";
+"arara.doc-3.0a"="kdm1mx8kx9zp13j782ir5mm6d09a2q9c";
+"arara.source-3.0a"="wbarmjwzncvjvkdz07yvspa318r7m3kw";
+"asymptote-2.41"="qcwqjls6lb6k68skkxxr29ri363lz53h";
+"asymptote.doc-2.41"="g4plldqchmzpfygf9sarlcrn3mxzfbwj";
 "bibtex8-3.71"="sri58vnydvfpv947gmlxd1s3c2056fp1";
 "bibtex8.doc-3.71"="glkl9d9h57q9q6dpyszcqc3axcxbw888";
-"bibtexu.doc-2016"="yppzw0banxngki9dzgm7dlm8cr9vnxya";
+"bibtexu.doc-2017"="yppzw0banxngki9dzgm7dlm8cr9vnxya";
 "bundledoc-3.2"="k3x1sdf7244dr1zi3san9xmvislq7k8x";
 "bundledoc.doc-3.2"="fkw0kw3wzyrl2gs3rdq5hrrk8yjsjznd";
 "checklistings-1.0"="a2gvh85pcmrc82wq4h6n9ycqj86z9f8d";
 "checklistings.doc-1.0"="ymkplhp7331fs0kq4qcpmh9la0wxj5lq";
 "checklistings.source-1.0"="8ya9yd2by50zppk7rrqjkc34ans6ffb0";
-"chktex-1.7.5"="8a92aw3pmfm3jwyjyx4w67igj60hnyr3";
-"chktex.doc-1.7.5"="wg15dgnb4kmqyzdkcvni7ab6vlgwvd6d";
+"chktex-1.7.6"="4khiza97qvhdbzdlz7pacnr16zmi9b9d";
+"chktex.doc-1.7.6"="0ffsh4bndkm9drzpzknzyd7zd3a0sgnp";
 "ctan_chk.doc-1.0"="m4i1vj19h48zyk9pxadfq1qrwmvqy3i1";
-"ctanify-1.8.2"="fxspqr86acczkl6wvdy93agsswbf684k";
-"ctanify.doc-1.8.2"="rx9lxz858882x18iz99aqnnbczri9kdk";
+"ctanify-1.9.1"="y939628500ks8apq2qdzcbj490y0c4bb";
+"ctanify.doc-1.9.1"="dfah3y6kn3r18mjj39p13mq7y6zpalqb";
 "ctanupload-1.2c"="jmvh3rrdy0hyvdxz55gydlgsh7xzp4vv";
 "ctanupload.doc-1.2c"="38wlhcxvvpbk01sj6vhwjs9mccw1xs14";
-"ctie.doc-1.1"="08rlrf1l28ycdrp03g25j2kpxqk5wfyy";
-"cweb-3.64af"="qfn7marr781bq5vy496zicz3imjg24b2";
-"cweb.doc-3.64af"="3xg96jicc1240g0chvlx5wry2cwdkbss";
+"ctie.doc-1.1"="2w328many5w4sk7cvm67s98sxgsd4ynh";
+"cweb-3.64b"="dn4jxisghqqp3skrd0f8s6wm57n6cakn";
+"cweb.doc-3.64b"="si9039yvfh8zw3wspssjpm9biyrgxgly";
 "de-macro-1.3"="mscrdz5y4zdxszz37dnh6kw4hmwm185q";
 "de-macro.doc-1.3"="hdmn9ds4kiqsalhx5r2l4adv19ijf5f2";
-"detex.doc-2016"="j41jppc49fya3fwafmq57d0cay765a3n";
-"dtl.doc-0.6.1"="8vwjgqqsp0s1bwhphrv8n61kria31s4s";
+"detex.doc-2017"="459gxrcdkp05jaqhzw124idzyhhyb26r";
+"dtl.doc-0.6.1"="dbhwn4gqav1lb668ab2s9f28qys7aln4";
 "dtxgen-1.07"="nl5dq5v54hww8rwyxrq6l6vrimzh352q";
 "dtxgen.doc-1.07"="n9c7x9ga79p3gvgb6g3mhn3j3xxy63zw";
-"dvi2tty.doc-6.0.0"="d3hmmzg8cnk02cldkrgqd7brj2436qbd";
-"dviasm-2016"="pz59qa1ljm0cgwzi1q7im03s3c31kd9d";
-"dviasm.doc-2016"="wj8a3skfwd5i6d1hb8v3dghijlgmbmdc";
-"dvicopy.doc-1.5"="2wif61ghjgkbkhrzs02ccfbxqyki9avj";
-"dvidvi.doc-2016"="yr9n3isdhnyy09kz8126znxaxvng7816";
-"dviljk.doc-2016"="4lv3bh32ph3vj6xp4lrqrwhs4q47hpvr";
-"dvipng.doc-1.15"="p1dq8vzamrf597d1fsbby57954ci2ccw";
-"dvipos.doc-2016"="l03yrdyj7hkidr86wmjdmg6j3fmra4js";
-"dvisvgm.doc-1.15.1"="qsrmvbj87di5rpalvbd97csyb2jyahh5";
+"dvi2tty.doc-6.0.0"="fk7i1hmrh59c35sn75ac3rszdg5q5a4x";
+"dviasm-2017"="pz59qa1ljm0cgwzi1q7im03s3c31kd9d";
+"dviasm.doc-2017"="wj8a3skfwd5i6d1hb8v3dghijlgmbmdc";
+"dvicopy.doc-1.5"="05smd46wjm51qhv8fcli1xckvcw61dhf";
+"dvidvi.doc-2017"="gijxnmfql8qbfmwnm3f4fnv88qbkaqs1";
+"dviinfox-1.04"="zjbfw4kzwfqnvlwzvjibsgim855fc30c";
+"dviinfox.doc-1.04"="1n52la52nchv27j82lisrh8q7wygx6lp";
+"dviljk.doc-2017"="yi82grx6xf3fs8lzq2f8sgwnq7fb78gr";
+"dvipng.doc-1.15"="al9qswqhylbmx8yiys2987fq8ls74kg7";
+"dvipos.doc-2017"="mlcjd10k7j9da0d4scbpxnyz7a0hwn7g";
+"dvisvgm.doc-2.1.3"="qsrmvbj87di5rpalvbd97csyb2jyahh5";
 "findhyph-3.4"="4kc8qj2hs4hf7h25xb031fy5m9j8jygv";
 "findhyph.doc-3.4"="zm08ngcn8q60iyajq11iqyw14304lq11";
 "fragmaster-1.6"="r6wbba0qjxr5shfrf5ia8984dcrijpir";
 "fragmaster.doc-1.6"="vwmmc7jmhxfvblz3fpdj0saxjs75bgia";
 "hook-pre-commit-pkg.doc-1.1.2"="0rf4zqwdix7npi9g6nlcpp95mdpxana5";
-"hyphenex-2016"="1ak1ymbmsfx7z8kh09jzkr3a4dvkrfjw";
-"hyphenex.source-2016"="n4rvv61jcw6s91mydy65qq90clva5zrs";
+"hyphenex-2017"="1ak1ymbmsfx7z8kh09jzkr3a4dvkrfjw";
+"hyphenex.source-2017"="n4rvv61jcw6s91mydy65qq90clva5zrs";
 "installfont-1.7"="ds2zbs2f6kasda98jn1k8i0ym5168ax8";
 "installfont.doc-1.7"="jmwwjkliwr7wl1gyx8fzpyslscsnlqlx";
-"lacheck.doc-2016"="s8b9z7glzz22bfs97nwa55k5852aq0mi";
+"lacheck.doc-2017"="4fd90j89kvc2bhcq0jpzbgwxzj9zfd91";
 "latex-git-log-0.9"="samiv870lgj4smwh80l5ck8q6q8m1yqm";
 "latex-git-log.doc-0.9"="1hjp3dx0d0yhj2c3n02cdk4fdg6iv6nc";
-"latex2man-1.24"="2k736vyphfpggvfa8p8knx6hh3jh3hj0";
-"latex2man.doc-1.24"="gfmjl0zxh8djqza5bxgnbz2a3hgnnp6m";
-"latexdiff-1.1.1"="c7lagi437g7k223h8jk2alkw9y69dsjb";
-"latexdiff.doc-1.1.1"="7j4wax3ijxzfq1m3fdb7h9wzdg7r63zg";
+"latex-papersize-1.62"="c2qx25bgknw9350pi7vr5hdnnj3i2ak6";
+"latex-papersize.doc-1.62"="8w0cczb884w53zzv3dwra31zcvjh4jzf";
+"latex2man-1.26"="42pz4w3p49xlwkkydrkhj2n3f4k919sc";
+"latex2man.doc-1.26"="skad8nf2kni95jx1q0af78g3bi8hpnpk";
+"latex2nemeth-1.0"="6lm0m47d60zzq67xcdh5yh6i7s7m66a1";
+"latex2nemeth.doc-1.0"="23zq3c3z098dzbc2j4mji2hsyqf1kq2a";
+"latexdiff-1.2.1"="ifd6bq1ndzrcrx21rv9xrx0556z3zav5";
+"latexdiff.doc-1.2.1"="gr2r3r3s4aaldg8ghxpcbz0pn3585k5w";
 "latexfileversion-0.3"="79yrcgv4lj33pavgn48ycvsd9a1x49s3";
 "latexfileversion.doc-0.3"="c6n7z8c3lzrhk2g1fn4v05l2y6299sr8";
-"latexindent-2.1R"="vpwykpks3flh8dxkp8wlp1iqgc709nhi";
-"latexindent.doc-2.1R"="8ba0c2md6qv0cq15f7gchmg27w60ppga";
-"latexmk-4.45"="0a2mxkbd84iqbfw9i09fjnfj13sm4bwx";
-"latexmk.doc-4.45"="r90hvlxjnkbq4din73wbbsfv86qi8lqs";
-"latexmk.source-4.45"="m32pbzkr0my5gv38jw54bancbk66r15c";
-"latexpand-1.2"="g5a9hla9v09jrj4c6cvk72w3ghdpzfs7";
-"latexpand.doc-1.2"="kkqdsfzlbrr90118b9v8i87218x05m1g";
+"latexindent-3.3"="8n5qiqlmqk3y7mahhn8lrg5kfsk0v02c";
+"latexindent.doc-3.3"="vfkyx6xrf5mmylkiqm4ankn6qcc91xmi";
+"latexmk-4.52c"="k0bndjcxbrsq6bqcybfhc5l015gphqa9";
+"latexmk.doc-4.52c"="413lavmrs2i1znbp6glmhfdri22w22ip";
+"latexmk.source-4.52c"="v506lymxp4vk76hsfk90r3m1bipp9ffq";
+"latexpand-1.3"="zhwgsn4b1b4vhp6d22g8x47wpznc4gpp";
+"latexpand.doc-1.3"="kcyvwzar8pvv9b3178pn1wkdkam1g4bp";
 "listings-ext-67"="zbinp0czaglig761svs0s13np81qpsr6";
 "listings-ext.doc-67"="slcbwzsy505nhjriszn993pgqlmdlfib";
 "listings-ext.source-67"="95y2zv6bcfkvqmwf6cpa4piaydlkjwz5";
@@ -452,27 +491,29 @@
 "ltxfileinfo.doc-2.04"="rbqwgb89q514rih3hf5bv613xqw1gbci";
 "ltximg-1.2"="rsnmw4ck0cw4xwfk8pcyp7jk27c1mx3j";
 "ltximg.doc-1.2"="0micalj6rgcxqv6kj4wa5xz0g9mdx19q";
-"make4ht-0.1b"="h7qwybbp89dsyp9jmlzbi2miwn109xf1";
-"make4ht.doc-0.1b"="8jrsi5q919cc6wracgqgbhngn9mbm5wq";
+"make4ht-0.1c"="75l8zv99hzai5ibd5p5mlbs52vgb5lh9";
+"make4ht.doc-0.1c"="hjcd4ghm9kmxa2i2jv4xqclhfq900qhz";
 "match_parens-1.43"="hahwx0ca506ykknc9plsnrfg6fsb5rs4";
 "match_parens.doc-1.43"="1h445p7nl5n70rskvq4d10b15kb8058k";
-"mflua-2016"="m43zjnf3p7aygr3cmhcwm7hg2cprd32d";
-"luatex-2016"="ggq2cynx3zmyvh3cfyb1nrga09idwilw";
-"luatex.doc-2016"="7afsbb0xpfx72sjy6j20f0kkavvjb8cd";
+"mflua-2017"="5l61gh5fwi3kqilawfhzp77y8qq9zb9r";
+"luatex-2017"="vhr825nzdmkqlca1x89b6mwnq3znfq99";
+"luatex.doc-2017"="svm2wr0hxpfw5dm61zrn84a3id31jwkf";
 "metafont-2.7182818"="sxdr5v17hpv8g1562g06lhn26c1wbs8f";
-"metafont.doc-2.7182818"="8b75fzwgmf7jlsk7ayi9nk9py0y5lxl2";
+"metafont.doc-2.7182818"="f1mmyxxy0jfn0jc2pxxzlsva8kq7zq17";
 "mkjobtexmf-0.8"="raq7ql17c3fdqqpaqbd53r0dg7kjrvh2";
 "mkjobtexmf.doc-0.8"="3cgxbgxpha9139jfz4v3478ny7yv3xm1";
 "mkjobtexmf.source-0.8"="dky5rv3xrbjqj7pg8spdjsllggpq61k9";
-"patgen.doc-2.3"="g8ydfaymp0adr7h5ww21qvfa6lynlzfh";
+"patgen.doc-2.3"="lncanhqr5czrpcm9i3c50wbah5xli13n";
 "pdfbook2-1.2"="nkfll8ynix954j2rplv72avzq9pw93f1";
 "pdfbook2.doc-1.2"="7wi87df5sfhk1pxk3i8kkk3w1ym3z2pd";
 "pdfcrop-1.37"="mr2zg2ji7gqm14zq5xsf8wk081fbdwdn";
 "pdfcrop.doc-1.37"="28jgvjwk6v7dvldqgqd4ry32ccd8avgn";
 "pdfjam-2.02"="p9l1q18vqf1yjaxxdyizz9b9rgr1kv4w";
 "pdfjam.doc-2.02"="c6aawcwvnijzmjakmlnlzbnhq0yx2vmx";
+"pdflatexpicscale-0.31"="qsf9dh0wc62qp7wviqn926hyhwqm8d9z";
+"pdflatexpicscale.doc-0.31"="j6llqi6vma6ph4zf94iiyvjh7hl6mdfw";
 "pdftools-0.86"="a8nv2mqs26gb1dinymxa9kwk4baqch7l";
-"pdftools.doc-0.86"="cahyyj76ssk42sjfq1k8skz8kc56w6l9";
+"pdftools.doc-0.86"="cpmnjq5f9lm3cl982qy7lndp10vzm3yh";
 "pdfxup-1.30"="r29ka6pw53vdscrpxbaar5g8x171c0l2";
 "pdfxup.doc-1.30"="kc5qc6a8q4f8yn2xa7cbabidk9gxg6sh";
 "pfarrei-r36"="n351xhnwd12vvy4b4zv2r9cqx1crd435";
@@ -484,144 +525,155 @@
 "pkfix-helper.doc-1.4"="gljfwywrvwin5fl5szfnpa095cr2r0m5";
 "purifyeps-1.1"="qmwy8zk8h0kzpsknp0430gdxq0zqj4hf";
 "purifyeps.doc-1.1"="4fj0jj42mjldhg90pkvj7bsd1b682x0c";
-"pythontex-0.13"="clnfvxaxa33sfdxd87kwddph57wwy50l";
-"pythontex.doc-0.13"="s4npxmwi4qnrhp6szvv41waqcj5lwlyr";
-"pythontex.source-0.13"="x70cyckwy1gjwq99is6sx55m8af729v3";
-"seetexk.doc-2016"="fadjwbzngmk4pgs6gkl8k7hyvi4hmf4w";
+"pythontex-0.16"="pzh8qkl7j7s5431cvifd70r5lywhzrqc";
+"pythontex.doc-0.16"="ifnkz8rfy2mb0hff6rv6ngp8fivr6v73";
+"pythontex.source-0.16"="wnszvmjiwgfppnxw5aq0lxd3mfdwi6l7";
+"seetexk.doc-2017"="7axhlb5pj0vj5hfldpqmsk3azdvlwc6n";
 "srcredact-1.0"="dzxdwnn9l06gngyvaarf10h6ws8aa73y";
 "srcredact.doc-1.0"="m028dd5fqv2x9xcxq7vhdsaz2xcyxwl1";
 "sty2dtx-2.3"="irvwyxk3ggfbc8p4b8s70v5704lqmsib";
 "sty2dtx.doc-2.3"="s9qzsp01129wgi8qfh0ljxkaj9jvdr65";
-"synctex.doc-2016"="vq6lvvy33vhgkv39rcp1g7x9jj9mpl9d";
-"tex4ebook-0.1d"="ziac161s7pb1pr00a0z9p4sxn371whmm";
-"tex4ebook.doc-0.1d"="0j25czpd19iigfdhajqwixb0rlbn0r92";
-"texcount-3.0"="6hqqsgp87bj4s58ggcm5v9mgi2lih33j";
-"texcount.doc-3.0"="0q7fyfhkvfz0q64648xjr540gmid6f19";
-"texdef-1.7b"="2jkmi5xiakxd9hvd9dibgnvgn9xxixj5";
+"synctex.doc-2017"="5bwnhhgg7cgirdzp2zy1nafkf3jdk851";
+"tex4ebook-0.1e"="ymrsjbisr5s0h84cg5a5fqmdsfdswcwc";
+"tex4ebook.doc-0.1e"="4b9f6d9s34xdn804crny20d747nw0v7z";
+"texcount-3.1"="1aqqrw4nhnqimpfnbfypadfny68v9mbm";
+"texcount.doc-3.1"="ip2s9f7ifgrdnr2mfa37mx5wl15ich26";
+"texdef-1.7b"="ap417mmrki8dys1li7sky5g830zjdfhv";
 "texdef.doc-1.7b"="1x0bfw080n35j4vm7qw166x19342s9nx";
 "texdef.source-1.7b"="f4jg6vw88fzww1c8v7qq6cjihysp6w24";
 "texdiff-0.4"="83vghxcac89m0kji1rr4ry3fy55im9sa";
 "texdiff.doc-0.4"="r9wsmivjyiwdnav7qc35kydk9b8pbcz8";
-"texdirflatten-1.1"="dr02ipy52xafic3zsayng64gr5n4dvvl";
-"texdirflatten.doc-1.1"="wpbapbq0kbw4r6565rq09c92pkv6i355";
-"texdoc-2016"="fk9fxxj10bkv6c4b2mclg7jdvg9q677v";
-"texdoc.doc-2016"="2kgq8xjj3yxwjdxlzg12iw4nlmb8ydac";
-"texfot-1.32"="wkgm3qch76zqwka8149a8snn9qg352qc";
-"texfot.doc-1.32"="hqqs56irih2h6gipzwk69yqkyql6pk4s";
-"texliveonfly-2016"="8csnp69s8i4bs18r18qqr2cmkqhgx437";
-"texliveonfly.doc-2016"="ic6vdfmbvl34zjqrn0lvp59armsin54n";
+"texdirflatten-1.3"="135358h2mb608wg3ni93rrsvvqgxm4ya";
+"texdirflatten.doc-1.3"="n9jxdwjiylvwy6n55vgci9a32qi10xhl";
+"texdoc-2017"="fksji7awh16r8pqi50j4yhdz7wdgsq23";
+"texdoc.doc-2017"="631py6mvsh9i9krxsa3xvn4zl6fzwxdp";
+"texfot-1.37"="fbpbc24dbh8wvzyybjwb3vgc6w7mhlxw";
+"texfot.doc-1.37"="7vdbypvsmllg0frxh59rsb4iig3lvg5l";
+"texliveonfly-2017"="8csnp69s8i4bs18r18qqr2cmkqhgx437";
+"texliveonfly.doc-2017"="ic6vdfmbvl34zjqrn0lvp59armsin54n";
 "texloganalyser-0.9"="8dlsnkjvsic0xyaxjwixrgm4pf40snpz";
 "texloganalyser.doc-0.9"="yh3y429s0fbkjai3kmh3z1q4f1pja6g3";
-"texware.doc-2016"="xdvklav90mbqvc1vhhcs2v0d5raryjs8";
-"tie.doc-2.4"="s0izfaivkm6r134sif1z3ar3m3s99cgc";
-"tpic2pdftex.doc-2016"="vipa4nyqs18ajq1pn2306xgnv90q24sn";
+"texosquery-1.6"="8f8lapbim73bxwfmzgi07jl5qg5d0n6g";
+"texosquery.doc-1.6"="rph058iy26cxdk6n0i7kbgxv43rkmfx7";
+"texosquery.source-1.6"="6r8grnnhqr2jcmns2vrcxq6gai939nhb";
+"texware.doc-2017"="6w4s19cbzpcyh8vmqhh2q4mq0bg89sdy";
+"tie.doc-2.4"="rgh26xw8mkkr9ka7if47m62wrzgqd9gc";
+"tlcockpit-2017"="4m39d7vdwnqbhmclk6by5dxmy8bgc4v6";
+"tlcockpit.doc-2017"="grnf976zra1n804l293hyixhbbqx8s27";
+"tlcockpit.source-2017"="s26ybabzbpf5rqn4smq2pmy16ik3adcp";
+"tlshell-2017"="y5kamcjrmp87wxzmk6gjclzw40nirbmk";
+"tlshell.doc-2017"="bfk5yhh81yyhdim9pjj8kp3x2z9j7xi7";
+"tpic2pdftex.doc-2017"="aa27lpifw428qjn3vwwar246dnz5k2i3";
 "typeoutfileinfo-0.31"="vjs333wmdxb9s1vd215af0vryplvb8hl";
 "typeoutfileinfo.doc-0.31"="qdrwm9hi7qk7hxzcz0grv7cfl4r9k4v6";
-"web.doc-4.5"="h1dsslv4cv5f6rw8rgva5ywy1ipc38nz";
-"xindy-2.5.1"="wjrg2d83y422lr1y5f5nk1jy1fkgj819";
+"web.doc-4.5"="w90y1dgqrbq4zvfnlflfincymbvz7kyl";
+"xindy-2.5.1"="rp60v85lrsbllzkwvhhz5sprxalf6kxp";
 "xindy.doc-2.5.1"="akx5bx8m387zsaxd7v6xh97nglbzd9k6";
-"context-2016"="j3wd8n0yxqlpfnfx7d3888p1idvk76ms";
-"context.doc-2016"="b39pl7vgjalcv4xpmmmsasz4p8k1cr95";
+"context-2017"="k39kcxd8cv8r7by9p9svkv5f6ar0f9jb";
+"context.doc-2017"="mlydklf44c027f7gyrii910bzw5ll7na";
 "lm-2.004"="ci5dpznkzlal3bkn0dcd2m5i05aws66g";
 "lm.doc-2.004"="w3g5xn4pfqhri4glpbh66rs8d6nbrd02";
 "lm.source-2.004"="bw69srvx8mprnj8d5f48bq3mg1ysfk1n";
 "lm-math-1.959"="j995x0y357lac8mn1kzn9v8p3v995bz7";
 "lm-math.doc-1.959"="bgfq2c4l1shm9453822cnmq7yq6hlknq";
-"manfnt-font-2016"="isk7hkf6lfg41mjli9sgn77kvn6fkl96";
-"metapost-2016"="jl9jq1d4q6713wf0grl3wm0s6ynr5gig";
-"metapost.doc-2016"="vjm5yax9ll20cn0xqwyimmyvmznc13vc";
+"manfnt-font-2017"="isk7hkf6lfg41mjli9sgn77kvn6fkl96";
+"metapost-2017"="jl9jq1d4q6713wf0grl3wm0s6ynr5gig";
+"metapost.doc-2017"="j6wspd5l31i9ii0wiz2v4vjix9zs4q38";
 "mflogo-font-1.002"="m5lb3rhr5yighsixjb0k6zp2hx8fxvr9";
 "mflogo-font.doc-1.002"="va6f9qjbh5ah4zvlmc4wi9m395x3bhpr";
-"stmaryrd-2016"="shivgpyz8sa63sqkmpgqvw1v1iyc0g35";
-"stmaryrd.doc-2016"="r91xmqmmm6i6jka78qyaiilas94xc5hi";
-"stmaryrd.source-2016"="ch2gj89jxrqysjsl24s40za3y5z03yan";
-"xetex-2016"="yyxc5gpk71kycmbzz1dmx4rn57sp6glz";
-"xetex.doc-2016"="pgjl5nnfbbsjmy1g6agvyd44v4y7whqa";
-"xetexconfig-2016"="2wjm3wl2975pd1d3ql2qd3yhhdh3gvmp";
-"context-account-2016"="85lpl8g1by9mvqnmxy6v9iasvgmjnazr";
-"context-account.doc-2016"="aapc2j5rv491xlvd6dc39n958g4zx0dg";
-"context-algorithmic-2016"="zvjfp5dzy3saz67hcfl2n1haxjdkavml";
-"context-animation-2016"="lg4cn50cshxd9qg2i7hd54lcgsy8zwyz";
-"context-animation.doc-2016"="qkn6afd3l4qv2wzwp40ak1jx9vgiv5p1";
-"context-annotation-2016"="vgnpr8wv2l93qcwifsyslyanyd9hp1vz";
-"context-annotation.doc-2016"="4c24xshvmvm0n52jn9h75yskzm9xib03";
-"context-bnf-2016"="pzpk8q0zc179zbpj2l9w5fw3r8gmhq82";
-"context-bnf.doc-2016"="mv3l2if454kaysry03g8l8i9nb7dakjd";
-"context-chromato-2016"="721l06z298fqfaj6rcz9sh66jshq447s";
-"context-chromato.doc-2016"="2alifsrasv86j0nmki6n7db9bkvy2ql1";
-"context-construction-plan-2016"="b42ncfcmywfwwnvzy2z58pig0spz39g2";
-"context-construction-plan.doc-2016"="75fsq59xl9p59srgc37zr73cgb9argnb";
-"context-cyrillicnumbers-2016"="iwzzhbrrkf377k54rfbna7zfbhdal6g6";
-"context-cyrillicnumbers.doc-2016"="ciqzhpl4kj13b589bfk62j8pafv2fpry";
-"context-degrade-2016"="d7fvjlrj0gya4ycpy01b3xw96cqpgmw7";
-"context-degrade.doc-2016"="r0pkaf0g56fp06d9wh64h4fwfchfj8na";
-"context-fancybreak-2016"="dkqfx16sjcxdl8a50al6x87rhwbrz61z";
-"context-fancybreak.doc-2016"="qd9bzk1r7ck0c4vzixzjl5vr6wlvb3r0";
-"context-filter-2016"="ibgpvqsjlvbww998alidwhgbfpiarfpk";
-"context-filter.doc-2016"="hr5rvq043d1r9ffy92c8cr1ny5ydgq0w";
-"context-fixme-2016"="api4qw16hz3dij83w76f3ng8chwjih7j";
-"context-french-2016"="f44vj4in9b4kry17a7cw7ad11ygmnvkr";
-"context-french.doc-2016"="b90ks4xkxf4505q57bbx2lhr3c20xlr1";
-"context-fullpage-2016"="ilgp4dafzi7qm1lwlz2znrwrp850i9dj";
-"context-fullpage.doc-2016"="jxv7mcyjkc7rjhg2rxm3bx680g9ldq94";
-"context-games-2016"="s4r0cl65hpvy01v1ng6fqxs1b0bh6ahv";
-"context-games.doc-2016"="5fbf4rq0f76k6bfhlzh9lqr3ks31f2wi";
-"skaknew-2016"="8by6yv9rgn4zbzlq0szcm4yvg8pqfaf6";
-"skaknew.doc-2016"="0p383qca6f0f56skhgvjcwprpb04gldj";
-"context-gantt-2016"="v50p405xz9ddwlqb0q1hi9m8wbx0c01g";
-"context-gantt.doc-2016"="bm6n0qa3h5s3lp8z5x5093f994vk8zz6";
+"stmaryrd-2017"="shivgpyz8sa63sqkmpgqvw1v1iyc0g35";
+"stmaryrd.doc-2017"="r91xmqmmm6i6jka78qyaiilas94xc5hi";
+"stmaryrd.source-2017"="ch2gj89jxrqysjsl24s40za3y5z03yan";
+"xetex-2017"="yyxc5gpk71kycmbzz1dmx4rn57sp6glz";
+"xetex.doc-2017"="pgjl5nnfbbsjmy1g6agvyd44v4y7whqa";
+"xetexconfig-2017"="2wjm3wl2975pd1d3ql2qd3yhhdh3gvmp";
+"context-account-2017"="85lpl8g1by9mvqnmxy6v9iasvgmjnazr";
+"context-account.doc-2017"="aapc2j5rv491xlvd6dc39n958g4zx0dg";
+"context-algorithmic-2017"="zvjfp5dzy3saz67hcfl2n1haxjdkavml";
+"context-animation-2017"="lg4cn50cshxd9qg2i7hd54lcgsy8zwyz";
+"context-animation.doc-2017"="qkn6afd3l4qv2wzwp40ak1jx9vgiv5p1";
+"context-annotation-2017"="vgnpr8wv2l93qcwifsyslyanyd9hp1vz";
+"context-annotation.doc-2017"="4c24xshvmvm0n52jn9h75yskzm9xib03";
+"context-bnf-2017"="pzpk8q0zc179zbpj2l9w5fw3r8gmhq82";
+"context-bnf.doc-2017"="mv3l2if454kaysry03g8l8i9nb7dakjd";
+"context-chromato-2017"="721l06z298fqfaj6rcz9sh66jshq447s";
+"context-chromato.doc-2017"="2alifsrasv86j0nmki6n7db9bkvy2ql1";
+"context-cmscbf-2017"="nwk7dqb2kxbj9y6ijlpa3ack1an9d5f8";
+"context-cmscbf.doc-2017"="2lylyv07hbmc63vjrqchz4w2zvpccgf0";
+"context-cmttbf-2017"="dgrblidva7k2q8yvmkdb0kg2n4bzln1k";
+"context-cmttbf.doc-2017"="pazl5rnlnr48lsm7w2n7l5s365hb9dx9";
+"context-construction-plan-2017"="b42ncfcmywfwwnvzy2z58pig0spz39g2";
+"context-construction-plan.doc-2017"="75fsq59xl9p59srgc37zr73cgb9argnb";
+"context-cyrillicnumbers-2017"="iwzzhbrrkf377k54rfbna7zfbhdal6g6";
+"context-cyrillicnumbers.doc-2017"="ciqzhpl4kj13b589bfk62j8pafv2fpry";
+"context-degrade-2017"="d7fvjlrj0gya4ycpy01b3xw96cqpgmw7";
+"context-degrade.doc-2017"="r0pkaf0g56fp06d9wh64h4fwfchfj8na";
+"context-fancybreak-2017"="dkqfx16sjcxdl8a50al6x87rhwbrz61z";
+"context-fancybreak.doc-2017"="qd9bzk1r7ck0c4vzixzjl5vr6wlvb3r0";
+"context-filter-2017"="h17pg4jm2wxs1hazc83mm831rvjv1mw2";
+"context-filter.doc-2017"="i64i4p350fvp8a8lh5kryf1faymkhsps";
+"context-french-2017"="f44vj4in9b4kry17a7cw7ad11ygmnvkr";
+"context-french.doc-2017"="b90ks4xkxf4505q57bbx2lhr3c20xlr1";
+"context-fullpage-2017"="ilgp4dafzi7qm1lwlz2znrwrp850i9dj";
+"context-fullpage.doc-2017"="jxv7mcyjkc7rjhg2rxm3bx680g9ldq94";
+"context-gantt-2017"="v50p405xz9ddwlqb0q1hi9m8wbx0c01g";
+"context-gantt.doc-2017"="bm6n0qa3h5s3lp8z5x5093f994vk8zz6";
 "hatching-0.11"="kngng0rbi2q99417zr3vv3jl0zzjwh6l";
 "hatching.doc-0.11"="5c0n8fhchwpa3vgby9v6dzcg9v834xgr";
-"context-gnuplot-2016"="21gc0nq12aps3d3333yxll6xllnlw0x2";
-"context-gnuplot.doc-2016"="jmvmp62hyky011xfpp8b4ydxrzgd2ag8";
-"context-letter-2016"="yfvrgw5xnzp7g56fvnzyvqv5ccy9m8a3";
-"context-letter.doc-2016"="ma7bfvxzv0ibcz906fgz82cjld7mvw8s";
-"context-lettrine-2016"="wmfy4c9c13jj525hmrf742kzkiqqmwgk";
-"context-lettrine.doc-2016"="h392gy06m6d8x3cjxsha4z0r7p5vmmb2";
-"context-lilypond-2016"="nkrpscdv626ciy4fcank0vc7w823l8dr";
-"context-lilypond.doc-2016"="pdw3wfwd12k7xkx7h4cg9ihnx9frq4ak";
-"context-mathsets-2016"="5gxx8rbkp1znjh8ycd0k8nflhjcm25kw";
-"context-mathsets.doc-2016"="bvwf1q4azmbbh74dqa89hs5x3yb9zksb";
-"context-notes-zh-cn.doc-2016"="x85l6d8ydz6nw51z8ak3a7cvpc6c45lz";
+"context-gnuplot-2017"="21gc0nq12aps3d3333yxll6xllnlw0x2";
+"context-gnuplot.doc-2017"="jmvmp62hyky011xfpp8b4ydxrzgd2ag8";
+"context-inifile-2017"="fmf14m6wz9ya4lxy3w6mxjzqk491jdd4";
+"context-inifile.doc-2017"="nkbvqhcmry12h8ffpz8d0sikifh8pxhd";
+"context-layout-2017"="438mv86y37wbxdv9js2s3clnkl7866ff";
+"context-layout.doc-2017"="7qqmwwhin466y4ksyq73lzfsc93s2z0s";
+"context-letter-2017"="yfvrgw5xnzp7g56fvnzyvqv5ccy9m8a3";
+"context-letter.doc-2017"="ma7bfvxzv0ibcz906fgz82cjld7mvw8s";
+"context-lettrine-2017"="wmfy4c9c13jj525hmrf742kzkiqqmwgk";
+"context-lettrine.doc-2017"="h392gy06m6d8x3cjxsha4z0r7p5vmmb2";
+"context-mathsets-2017"="5gxx8rbkp1znjh8ycd0k8nflhjcm25kw";
+"context-mathsets.doc-2017"="bvwf1q4azmbbh74dqa89hs5x3yb9zksb";
+"context-notes-zh-cn.doc-2017"="x85l6d8ydz6nw51z8ak3a7cvpc6c45lz";
 "context-rst-0.6c"="5mwhydc35iywmkdz759sdpz53wkqa64x";
 "context-rst.doc-0.6c"="dml4y9nr6yb8f5kwjm3mm8l8s5rjxxkr";
-"context-ruby-2016"="jrwrrwhcvb4bbia0g2lnl6rr0yydh6ix";
-"context-ruby.doc-2016"="sja43p8lpcarwnnqpahd0zr2k82sf8pj";
-"context-simplefonts-2016"="5h1qrkcjlkdbd5rc888xrp2nfksyf7x5";
-"context-simplefonts.doc-2016"="6vcxb9xxs5sd8i7f6rqqcysiz4dwjhxh";
-"context-simpleslides-2016"="idd4q63cvh7qqiv5wzkq3xgrxwhm9z87";
-"context-simpleslides.doc-2016"="y0q5pl3chzcn7fp2kjm4bshfcj5x10g2";
-"context-title-2016"="df6skzmz548nvbdxsf57ch48jxgfbhpa";
-"context-title.doc-2016"="6v51cy1zng7rjb1137n8kvxxdkz8asfv";
-"context-transliterator-2016"="q0klk1fqlky9drg0ak4xlcn3xpsi4kyr";
-"context-transliterator.doc-2016"="l1zwqsqb4rg9iafzkzhxmi4hy28six20";
-"context-typearea-2016"="ck1fbjmlyq93id8a15nrn81cd10jlcib";
-"context-typearea.doc-2016"="8w38fwqaysqyxmlzdf4slv48yrhjgmx1";
-"context-typescripts-2016"="q33whgk69qflc06i9q8jpb5lnwvdbhr5";
-"context-typescripts.doc-2016"="yk83aari9jj7xw58blrh1nxx4m6ga7lc";
-"context-vim-2016"="5ij37c36xww5l8g1kaafq15783fxk460";
-"context-vim.doc-2016"="jjh0l20lkwbnahdr6k7minycm9fpc03p";
-"context-visualcounter-2016"="sh6jnhkfbi4rpw34zw489148rgwsb14r";
-"context-visualcounter.doc-2016"="2zllwd7h5f7ja9877vyiznvw5prbgh8k";
-"context-visualcounter.source-2016"="7wbyascsdwh2m9hpwm3c7sd0q5940fd1";
-"jmn-2016"="sxkb92pakb4lx5d9pjpang6mhfrgm4b5";
+"context-ruby-2017"="jrwrrwhcvb4bbia0g2lnl6rr0yydh6ix";
+"context-ruby.doc-2017"="sja43p8lpcarwnnqpahd0zr2k82sf8pj";
+"context-simplefonts-2017"="5h1qrkcjlkdbd5rc888xrp2nfksyf7x5";
+"context-simplefonts.doc-2017"="6vcxb9xxs5sd8i7f6rqqcysiz4dwjhxh";
+"context-simpleslides-2017"="idd4q63cvh7qqiv5wzkq3xgrxwhm9z87";
+"context-simpleslides.doc-2017"="y0q5pl3chzcn7fp2kjm4bshfcj5x10g2";
+"context-title-2017"="df6skzmz548nvbdxsf57ch48jxgfbhpa";
+"context-title.doc-2017"="6v51cy1zng7rjb1137n8kvxxdkz8asfv";
+"context-transliterator-2017"="q0klk1fqlky9drg0ak4xlcn3xpsi4kyr";
+"context-transliterator.doc-2017"="l1zwqsqb4rg9iafzkzhxmi4hy28six20";
+"context-typearea-2017"="ck1fbjmlyq93id8a15nrn81cd10jlcib";
+"context-typearea.doc-2017"="8w38fwqaysqyxmlzdf4slv48yrhjgmx1";
+"context-typescripts-2017"="q33whgk69qflc06i9q8jpb5lnwvdbhr5";
+"context-typescripts.doc-2017"="yk83aari9jj7xw58blrh1nxx4m6ga7lc";
+"context-vim-2017"="5ij37c36xww5l8g1kaafq15783fxk460";
+"context-vim.doc-2017"="jjh0l20lkwbnahdr6k7minycm9fpc03p";
+"context-visualcounter-2017"="sh6jnhkfbi4rpw34zw489148rgwsb14r";
+"context-visualcounter.doc-2017"="2zllwd7h5f7ja9877vyiznvw5prbgh8k";
+"context-visualcounter.source-2017"="7wbyascsdwh2m9hpwm3c7sd0q5940fd1";
+"jmn-2017"="sxkb92pakb4lx5d9pjpang6mhfrgm4b5";
 "Asana-Math-000.955"="qvk5bdn6hq6ci0v4l45rbwd3s4nazmsd";
 "Asana-Math.doc-000.955"="q0c7d8fs11sqdxs0drjd9g6l0bkbnvln";
-"academicons-1.7.2"="4inj52lgqpaaadhrp5jh2wwzb5rmz3kk";
-"academicons.doc-1.7.2"="imsvcdprhhks92409gdr26sxk1fv3dpr";
-"accanthis-2016"="3ai0zz1fwlq9v25dsfz63if6i7wgrhp3";
-"accanthis.doc-2016"="zlxlfbawiicbkminjw2laximsn07zpi0";
+"academicons-1.8.0"="4g6rhkw9mnyqzv2cx7iyi9wcl2jlndng";
+"academicons.doc-1.8.0"="lfrrz9a5h50gr2b1n5cqyfmq4azlb1yd";
+"accanthis-2017"="3ai0zz1fwlq9v25dsfz63if6i7wgrhp3";
+"accanthis.doc-2017"="zlxlfbawiicbkminjw2laximsn07zpi0";
 "adforn-1.001-b-2"="ykyh10gfssql3zh4845gw8g8ayijvlla";
 "adforn.doc-1.001-b-2"="idfbpikb68y2n424xjdf3nppbz5cziib";
 "adfsymbols-1.001"="ijgwy7svr9pn69r2vwi5pzkdbc7q0p3h";
 "adfsymbols.doc-1.001"="kb61cwldva4ziv006ja9y66a27926508";
 "aecc-1.0"="0vpb9yz2qx0sc15kxzhgqadkcjyr27c5";
 "aecc.doc-1.0"="mn7j1f7j3z5d6pnss9mlhvbw4ahn94ka";
-"alegreya-2016"="7vin6alzrxrhk9prd23r50g4zqc7z0ll";
-"alegreya.doc-2016"="bpwxcgjn1lqbnl8mmgj4nb65paji6kjg";
-"allrunes-2.1"="nsgbhsp0jhh0iydnzlx3r893pcw0y8lj";
-"allrunes.doc-2.1"="5ng2q004dra8c729sldlq2vkghjwcrzi";
-"allrunes.source-2.1"="fkw8hdml9rz7qzrshpardwxr0f8z853p";
+"alegreya-2017"="21905bvl7i0m166hfl1jdvrk0wj1m64m";
+"alegreya.doc-2017"="ib2mm08hhh7lyqlh6kls6f8mvkzrg04l";
+"algolrevived-1.01"="81kfc6aj2fg7db11sxb5w3a0zw2p25f8";
+"algolrevived.doc-1.01"="yxd16nwxlz4jlcqbim2w1kvhdfs9145b";
+"allrunes-2.1.1"="yxijvmvgjl2q05v667fmqisbyd7xsjpr";
+"allrunes.doc-2.1.1"="b0sc4d9kla5sg792zvwqjzszz17w19iv";
+"allrunes.source-2.1.1"="n986ppx466mparm30mlv7cn5mmjh74sy";
 "almfixed-0.92"="kcaraz14gg5k8ws8zkrjfvvn22njv759";
 "almfixed.doc-0.92"="34f4a82gsr0vq47bp9wbdd4wkhhr984j";
 "anonymouspro-2.1"="5396jmzi4ihjdiwpgm8ghi669ipk6dzd";
@@ -631,12 +683,14 @@
 "antiqua.doc-001.003"="36kkp06c9grcgz7py0k7fnr5a56cvsgk";
 "antt-2.08"="ln7vvpz0p5lz4sikwky7f7zmkg08zmcv";
 "antt.doc-2.08"="2449s2gpspkwfmyhvvl8g5h1dqn8bg72";
-"archaic-2016"="jvj1s2dcgkwgi9ywg48vw7i14gmlmq7n";
-"archaic.doc-2016"="mb0z3xq325y48yv0bx4xsz8x5f790c60";
-"archaic.source-2016"="j05dan5d8xxzg43iay4v76vbcdscc6zn";
-"arev-2016"="xc3i2264d5w0ijv10n6ka53311bgnib0";
-"arev.doc-2016"="s39jgnizjbpnh1czr3ck5yd32bxks476";
-"arev.source-2016"="msk58av5fwg6hi4mzpz8abgzigqyskf2";
+"archaic-2017"="jvj1s2dcgkwgi9ywg48vw7i14gmlmq7n";
+"archaic.doc-2017"="mb0z3xq325y48yv0bx4xsz8x5f790c60";
+"archaic.source-2017"="j05dan5d8xxzg43iay4v76vbcdscc6zn";
+"arev-2017"="xc3i2264d5w0ijv10n6ka53311bgnib0";
+"arev.doc-2017"="s39jgnizjbpnh1czr3ck5yd32bxks476";
+"arev.source-2017"="msk58av5fwg6hi4mzpz8abgzigqyskf2";
+"arimo-2017"="1z5ij30qfbd4y2c0292aai2dsg87n1rm";
+"arimo.doc-2017"="2fr1vjv5386lvixzs8idr0wyf9ghlg1f";
 "asapsym-1.0"="gbn04lk9k66wj689vna4kgxq8gddhwca";
 "asapsym.doc-1.0"="qfbaary485cs3q5azl6d650z53kd9s73";
 "asapsym.source-1.0"="g9m2vwmd438fwfczm8xwhv4wdp2aj114";
@@ -647,8 +701,8 @@
 "aspectratio.doc-2.0"="xv7z3aa40dn6fzchrhqwg03356r2znjf";
 "astro-2.20"="isnx9q009wchs33xq4bphi4cp4cnb2m9";
 "astro.doc-2.20"="xa1szbc33k2yyahgwy294mgiiyi5yiy4";
-"augie-2016"="w863x04n1ks9jkmaw8fm4hd6a1390s3x";
-"augie.doc-2016"="dlmy9i2fh0db4aghd8dqsv9227cqk4d9";
+"augie-2017"="w863x04n1ks9jkmaw8fm4hd6a1390s3x";
+"augie.doc-2017"="dlmy9i2fh0db4aghd8dqsv9227cqk4d9";
 "auncial-new-2.0"="nnaar0yvi6r1fynyzxmqhw7mnify474d";
 "auncial-new.doc-2.0"="jvyica87kxg5gm3zb8kmka9ja87f28si";
 "auncial-new.source-2.0"="hfdl71c7lx3lpb9rkwfz5vpaq0s19bh6";
@@ -657,66 +711,70 @@
 "b1encoding-1.0"="cxsgg97c3bsw9dl2aj9c9rb8vlpyn4s4";
 "b1encoding.doc-1.0"="mcm5yr55av0rj342bxdljkdid5qxyv97";
 "b1encoding.source-1.0"="jdnzzki5929xpzvpfvx5a9z51dk40pvs";
-"barcodes-2016"="8j88bc82j5a0xhm46671mj0k439zm5da";
-"barcodes.doc-2016"="7729a4f9hn4qzx2cndyxv04wwpchpjax";
-"barcodes.source-2016"="yh5ci4axi82ps6hbm6f0a08alrnapxiv";
+"barcodes-2017"="8j88bc82j5a0xhm46671mj0k439zm5da";
+"barcodes.doc-2017"="7729a4f9hn4qzx2cndyxv04wwpchpjax";
+"barcodes.source-2017"="yh5ci4axi82ps6hbm6f0a08alrnapxiv";
 "baskervald-1.016"="igfnj3pwvb6443c531va9kzylizxm9vs";
 "baskervald.doc-1.016"="mq8ms68crhv6afh9ld6scyx2xn2ik6jk";
 "baskervald.source-1.016"="7y8d5vqbd1bp3gri0rhzk3cb12cwchr1";
-"baskervaldx-1.07"="dy6c3y2jb46ni9hw84ckcva5s9q0c7dp";
-"baskervaldx.doc-1.07"="1cf6q6a3g0vhfmwar0icsz0kbw0zwafc";
+"baskervaldx-1.072"="jjwb2m99l3vwzcpr7dzd8z360cv4qib6";
+"baskervaldx.doc-1.072"="bprkagqwmczadxymgadg1d98d6g2l4xq";
+"baskervillef-1.043"="l51z3yp3s1pxw1lvxw6n9kyr1smfmhlg";
+"baskervillef.doc-1.043"="3pydf77gbsi6xaphq3cbhxigfpb9bn2g";
 "bbding-1.01"="8kh5c0chlw1f2pqzh9pc7zx8y2jcgh0g";
 "bbding.doc-1.01"="zjngi582jrb99j6w1amwbyvjmfvsk40d";
 "bbding.source-1.01"="axvp8f0zag6bkr9v3fg22j4h5gcbcgzx";
-"bbm-2016"="ayg703c4frfpv9mhahz36f9zs11y9vxc";
-"bbm.doc-2016"="bzfab62k5j167p5qzs79gps14hbpq7nq";
-"bbm-macros-2016"="lbvpxxa0rzhl0z0081s6wfdvmx3vlhv4";
-"bbm-macros.doc-2016"="ncijdxbxfk9xkrnvvsk937ji5nd60z1s";
-"bbm-macros.source-2016"="39wj6mqzn9qcvavqr8p5ny4ajjxm9m8w";
+"bbm-2017"="ayg703c4frfpv9mhahz36f9zs11y9vxc";
+"bbm.doc-2017"="bzfab62k5j167p5qzs79gps14hbpq7nq";
+"bbm-macros-2017"="lbvpxxa0rzhl0z0081s6wfdvmx3vlhv4";
+"bbm-macros.doc-2017"="ncijdxbxfk9xkrnvvsk937ji5nd60z1s";
+"bbm-macros.source-2017"="39wj6mqzn9qcvavqr8p5ny4ajjxm9m8w";
 "bbold-1.01"="s88rwky3f2jjcg6w00g7s5lkvviqkwpm";
 "bbold.doc-1.01"="sa83x4g1n5b2lafj9n61cggkyk7h1z5v";
 "bbold.source-1.01"="ki3gxl970iirhkckqblr490jlznl0kc7";
-"bbold-type1-2016"="00rizb6fky3rsyn1id4p1dik8963bhwr";
-"bbold-type1.doc-2016"="lnpyln41q3qdsmzdkini0q1wqx7v2n7h";
-"belleek-2016"="8y1nbwn46cgyzfyd3and8aws7mqclsfa";
-"belleek.doc-2016"="8d258516ak2b5va5smkfc87ipyj329f9";
-"belleek.source-2016"="n6fypvkn7cq1c1l7jqvjb6cfjyqrq0wv";
-"bera-2016"="mq0j1sn7fg1qk7qd7x1l4ixqddyp3rjg";
-"bera.doc-2016"="6iv3gc8kfqcw909sa4x7msc7dsxndy8i";
+"bbold-type1-2017"="00rizb6fky3rsyn1id4p1dik8963bhwr";
+"bbold-type1.doc-2017"="lnpyln41q3qdsmzdkini0q1wqx7v2n7h";
+"belleek-2017"="8y1nbwn46cgyzfyd3and8aws7mqclsfa";
+"belleek.doc-2017"="8d258516ak2b5va5smkfc87ipyj329f9";
+"belleek.source-2017"="n6fypvkn7cq1c1l7jqvjb6cfjyqrq0wv";
+"bera-2017"="mq0j1sn7fg1qk7qd7x1l4ixqddyp3rjg";
+"bera.doc-2017"="6iv3gc8kfqcw909sa4x7msc7dsxndy8i";
 "berenisadf-1.004"="2ci0vxfqyc18anpy68r6anbdz76nrf2b";
 "berenisadf.doc-1.004"="00vx76lkvv0vf68a7sck05ls3l5va5gj";
+"beuron-1.1"="x2n8gb04pajxc79v23c13l98vchv64jh";
+"beuron.doc-1.1"="g7yj4gnd92y0kivxby605idbk733wn89";
 "bguq-0.4"="cgq4fhairknzbp65cmhv0m19zn0cnkgp";
 "bguq.doc-0.4"="9rwhzxijcyl4zzrc88dg8730p11hkm4q";
 "bguq.source-0.4"="7856n14czw3z30maxv7m4xz6js47rkbj";
-"blacklettert1-2016"="hzd441k3wi58rrysk0h48yklnp5i776p";
-"blacklettert1.doc-2016"="8n61621w6273ik991i2asvsm4w8xlimx";
-"blacklettert1.source-2016"="ir0cn80nw9jgchx4kisv9j27gpgykhvc";
+"blacklettert1-2017"="hzd441k3wi58rrysk0h48yklnp5i776p";
+"blacklettert1.doc-2017"="8n61621w6273ik991i2asvsm4w8xlimx";
+"blacklettert1.source-2017"="ir0cn80nw9jgchx4kisv9j27gpgykhvc";
 "boisik-0.5"="xz0hk8fwnrwnydy9dglm93c4gzrqpz87";
 "boisik.doc-0.5"="wsssy9bh8wi35x67ifgnj9wrjx0vpmvy";
-"bookhands-2016"="n9nmpfa24pgwgc9faxb5s882p1sbd3lf";
-"bookhands.doc-2016"="kg72nkz71vwhzbv6hw0r7zr3qr3njh9k";
-"bookhands.source-2016"="l4d2zzfsd39mzww0ssa79wc76abd60l4";
-"boondox-1.0"="x091nq80imrxdgz9p3jg50vsv5rlnszi";
-"boondox.doc-1.0"="vw6g6d8w9jq1aw722s6512dywp91ycnk";
-"braille-2016"="slk0qzcahb3qkmq91jcrm5gakcwa7czv";
-"braille.doc-2016"="00dv14s64fm8g5jy8b30dx813a304nlh";
-"brushscr-2016"="342p5p6h8v377mnbrv1f56kicbbjfcdx";
-"brushscr.doc-2016"="hikb5s9iv60pfq2kjdbfiq1216d3rabk";
-"cabin-2016"="fhxddnhlqmc7r2bi25widryyc3jpp59j";
-"cabin.doc-2016"="15l49blfqvd2rqm91f1zdi9hq5s53x3p";
-"caladea-2016"="1rb8sq2yh4hizlcjp8zd68ayb7cx6275";
-"caladea.doc-2016"="9qr79slzxmnnvvh2iy310ypqj9g11s4b";
-"calligra-2016"="cisw7fvdys863szqvsxzm164vina8al3";
-"calligra.doc-2016"="36bzakyiw9awp36v7c6dyb3vwl01shb0";
+"bookhands-2017"="n9nmpfa24pgwgc9faxb5s882p1sbd3lf";
+"bookhands.doc-2017"="kg72nkz71vwhzbv6hw0r7zr3qr3njh9k";
+"bookhands.source-2017"="l4d2zzfsd39mzww0ssa79wc76abd60l4";
+"boondox-1.02d"="i1hwfxc7ji83724177ir5hdgfn6cbcqr";
+"boondox.doc-1.02d"="wwa8ar557myv3rfjkw9jlw1pxs26vwbh";
+"braille-2017"="slk0qzcahb3qkmq91jcrm5gakcwa7czv";
+"braille.doc-2017"="00dv14s64fm8g5jy8b30dx813a304nlh";
+"brushscr-2017"="342p5p6h8v377mnbrv1f56kicbbjfcdx";
+"brushscr.doc-2017"="hikb5s9iv60pfq2kjdbfiq1216d3rabk";
+"cabin-2017"="ah9gwv11siszsnk4fabc7kpxk5h1wsb8";
+"cabin.doc-2017"="amjf9c0qjqydklx5yfdv50pgzkp2szmh";
+"caladea-2017"="1rb8sq2yh4hizlcjp8zd68ayb7cx6275";
+"caladea.doc-2017"="9qr79slzxmnnvvh2iy310ypqj9g11s4b";
+"calligra-2017"="cisw7fvdys863szqvsxzm164vina8al3";
+"calligra.doc-2017"="36bzakyiw9awp36v7c6dyb3vwl01shb0";
 "calligra-type1-001.000"="2bl0g899jhyspyhyzh45xdkkis88ja46";
 "calligra-type1.doc-001.000"="3zza4sgsnvcg2asdv27gd7y6jmab5j4y";
 "cantarell-2.4"="sy4spxn3hfp0wqs5imhnm5bkw42qfnxn";
 "cantarell.doc-2.4"="dwd1ndl5ghz9rcgmjrl6zmaxzbaxr3rd";
 "cantarell.source-2.4"="vdz4m82y34lb60vx066j68l0kgc2clvc";
-"carlito-2016"="7v0571swhiw0pbsqcb1a4sj7izdincb0";
-"carlito.doc-2016"="bs67zjydc9fcigiaaf9y9lm05lkgw68a";
-"carolmin-ps-2016"="rx6y9nb8l3cslla44c422jzwjlqw7ilz";
-"carolmin-ps.doc-2016"="hq8477r3q2cg2laafi8ryvjan90wxjcg";
+"carlito-2017"="7v0571swhiw0pbsqcb1a4sj7izdincb0";
+"carlito.doc-2017"="bs67zjydc9fcigiaaf9y9lm05lkgw68a";
+"carolmin-ps-2017"="rx6y9nb8l3cslla44c422jzwjlqw7ilz";
+"carolmin-ps.doc-2017"="hq8477r3q2cg2laafi8ryvjan90wxjcg";
 "ccicons-1.5"="xjc6brxlg7976hpqdap76i6db6zq8zhw";
 "ccicons.doc-1.5"="lh9qj4y5nfw77vb9rv24ygz3rq9lhqcg";
 "ccicons.source-1.5"="ymfaakz19k4s32c2fh2qgvr1c537skrj";
@@ -725,15 +783,15 @@
 "cfr-lm-1.5"="7y9qg3jnq6xnlq0f1wqm6493qax92cc3";
 "cfr-lm.doc-1.5"="cfshavfcmpkig5p9kypglmrs55rl5lsb";
 "cfr-lm.source-1.5"="nglav2q22aybb23snhm6x17dxz3976sc";
-"cherokee-2016"="hmmaav3k7vd1rh6rm26l2nal48r1wxz3";
-"cherokee.doc-2016"="zaq092r56asdcf62a7zscfp4zp7a5lwq";
+"cherokee-2017"="hmmaav3k7vd1rh6rm26l2nal48r1wxz3";
+"cherokee.doc-2017"="zaq092r56asdcf62a7zscfp4zp7a5lwq";
 "chivo-1.0"="96gxnm243xbkrhx8mcs4vip8qaj1q5f5";
 "chivo.doc-1.0"="f9ibwq6r1y2i5n5bp9s5v91mw32hkl5m";
 "chivo.source-1.0"="ssqn1c68z13ap31rahx8c0m00n2jwbs6";
-"cinzel-2016"="zd9fzvkabmdz25gmi2zj0aj0c7fp89kf";
-"cinzel.doc-2016"="82f080qw29yir7z12zjx6ibjfrfgnm9b";
-"clearsans-2016"="x3dasd6qdqjdw2v99kkh00srz44pz6ma";
-"clearsans.doc-2016"="bbfm2zw5czzwm3msr112wzlg686bh8jj";
+"cinzel-2017"="zd9fzvkabmdz25gmi2zj0aj0c7fp89kf";
+"cinzel.doc-2017"="82f080qw29yir7z12zjx6ibjfrfgnm9b";
+"clearsans-2017"="x3dasd6qdqjdw2v99kkh00srz44pz6ma";
+"clearsans.doc-2017"="bbfm2zw5czzwm3msr112wzlg686bh8jj";
 "cm-lgc-0.5"="wnmmrhnlldps15r2v360bdvlfyjd1fpn";
 "cm-lgc.doc-0.5"="wb18g3w86wfb7fv2iaaxm0j2amrws9yf";
 "cm-unicode-0.7.0"="wmmgwafdisxnkgdh571y2mlcybjlnvf6";
@@ -741,97 +799,103 @@
 "cmbright-8.1"="rjlqiwya67ispglypa4gmix8hyk6f2h3";
 "cmbright.doc-8.1"="wsjakpl6b7zyv3j9yx50v9hjm3sgx317";
 "cmbright.source-8.1"="vwgnzs47an6mjgw898scvdp8dc3m1w0w";
-"cmexb-2016"="jxb62ixs1vqaqscv1ixg27vv1p7na0p1";
-"cmexb.doc-2016"="92888gd06jfx2q4xd01n45c1yyhnp03l";
-"cmll-2016"="bipbbgh6jc5r1imk467r5pvj4m62a85k";
-"cmll.doc-2016"="k2sshj6rp40m29fm29jd7jy492gcrwcf";
-"cmll.source-2016"="lbaw2209cz5ymklza36486jzfpq1cqc5";
-"cmpica-2016"="z5mc7yl40mzwk5bcjs3lb1ifqsr7x4s1";
-"cmpica.doc-2016"="9bl7bhpb9dhp58p9hxay8xka0nz2cg2l";
+"cmexb-2017"="jxb62ixs1vqaqscv1ixg27vv1p7na0p1";
+"cmexb.doc-2017"="92888gd06jfx2q4xd01n45c1yyhnp03l";
+"cmll-2017"="bipbbgh6jc5r1imk467r5pvj4m62a85k";
+"cmll.doc-2017"="k2sshj6rp40m29fm29jd7jy492gcrwcf";
+"cmll.source-2017"="lbaw2209cz5ymklza36486jzfpq1cqc5";
+"cmpica-2017"="z5mc7yl40mzwk5bcjs3lb1ifqsr7x4s1";
+"cmpica.doc-2017"="9bl7bhpb9dhp58p9hxay8xka0nz2cg2l";
 "cmtiup-2.1"="k6sk5isdzms460hm17lkx5b6p6p9wz1g";
 "cmtiup.doc-2.1"="ycj4il7cxfnigs8sxxwga045g9v8rv8h";
-"cochineal-1.03a"="zrimqkfr3hxgwbwj5gcljj5iddk10j5c";
-"cochineal.doc-1.03a"="pglyv21ajzinr8mxmv90radc0ap465ym";
+"cochineal-1.042"="xvglmqsbra4z61gf33bw4rj8ghdf4ybr";
+"cochineal.doc-1.042"="nznyb19j6gly4wq00jx64kr5dfknxah1";
+"coelacanth-2017"="98nhwkyx82x0q39b7d4f9bq8g8hmhjzs";
+"coelacanth.doc-2017"="2v7chnqn5pw6h9x9k01h218cwp0z9lyw";
 "comfortaa-2.3"="k4w8lzk1lbd0hlrvkr83p4s737410vk3";
 "comfortaa.doc-2.3"="cmh2d3939a515h60ajmhbivqmbn2xmw4";
 "comfortaa.source-2.3"="jp7dh6r0zcpz3mkfkgafjays8jx9hbqf";
-"comicneue-1.0"="pq9gcdw39hs9ss82386m7szb07xldh1q";
-"comicneue.doc-1.0"="nixs57zgzkz7smr4rybz4gg2ln4rv0p9";
-"concmath-fonts-2016"="875viaxzrrljcarkg11cb830fmq5321f";
-"concmath-fonts.doc-2016"="q2wyl5cw03rbk4602vg18jrxg3j133lj";
+"comicneue-1.1"="zsv445k74adkzqnas2g8p3i6c49bccqf";
+"comicneue.doc-1.1"="9il2nyy63bx62n603j1kwaagvplwndps";
+"concmath-fonts-2017"="875viaxzrrljcarkg11cb830fmq5321f";
+"concmath-fonts.doc-2017"="q2wyl5cw03rbk4602vg18jrxg3j133lj";
 "cookingsymbols-1.1"="qhjzkivpxbk3rk6pricxsxpdk7c40rxc";
 "cookingsymbols.doc-1.1"="8l7yii9vvmaxfnf0h2snis7476k18mlc";
 "cookingsymbols.source-1.1"="z7r8n2lhgaqzgpx0jz8xq4sd4zzigbs9";
+"cormorantgaramond-3.00"="n1zswym4jgqhsj65z8kngkfad1djyba5";
+"cormorantgaramond.doc-3.00"="ph1qspmc6h6axlhvw5rb4c1kb6znigzk";
 "countriesofeurope-0.21"="va17md98pqibrig3nznlipv9rypqm6bg";
 "countriesofeurope.doc-0.21"="2hbp9xshmfm0k2izqbds1h2835yldznh";
-"courier-scaled-2016"="qrm6a468azlw2s89v7j992wxs2mkqfv9";
-"courier-scaled.doc-2016"="1bwlrdxpl1fj4f9ml688ybimig5ylxwv";
-"crimson-2016"="z2l4gyq1ikxclxf3i8lrk8liqvpdi3mx";
-"crimson.doc-2016"="k212a6khl2yg8p4n1bvl3shcg8rcaaf2";
-"cryst-2016"="56jlp0hk9vrfxbhlfjnpim398ggxccjg";
-"cryst.doc-2016"="qazhz2hzgpqlghbg67fnmf8adba1wl5d";
+"courier-scaled-2017"="qrm6a468azlw2s89v7j992wxs2mkqfv9";
+"courier-scaled.doc-2017"="1bwlrdxpl1fj4f9ml688ybimig5ylxwv";
+"crimson-2017"="wwvxgknvkd3ycswpp9wnlp9dlkilj7wz";
+"crimson.doc-2017"="wnxfzc5llkk38ky7bf8hkn7zsdawpr2x";
+"cryst-2017"="56jlp0hk9vrfxbhlfjnpim398ggxccjg";
+"cryst.doc-2017"="qazhz2hzgpqlghbg67fnmf8adba1wl5d";
 "cyklop-0.915"="5ksv3v36mc6557jckr5gk22pbqr30wnr";
 "cyklop.doc-0.915"="d85643zgnh0r0j53gfpi84qsx4694xpv";
-"dancers-2016"="qlpshkppzr84rr3smqpwch5j11klm3a7";
+"dancers-2017"="qlpshkppzr84rr3smqpwch5j11klm3a7";
 "dantelogo-0.03"="iiqbbimigxpj8kg628sj694xha98q0fw";
 "dantelogo.doc-0.03"="d42k8bqdvp20af1wzilbcjfd1b7ywim5";
 "dejavu-2.34"="90lkxdpj8ihrs68355fal0h0a1dp3v67";
 "dejavu.doc-2.34"="2v6nhxrkny5haczrpvqjzcal7bixngas";
-"dice-2016"="916yfiq60a1qz7d0jn1jd9slck7rjwy1";
-"dice.doc-2016"="rfkm493k3g4slyjsy6bcgljxjsy88z76";
-"dictsym-2016"="lc5sz8d50hirk5yqg9baj2vhj4f7cf8x";
-"dictsym.doc-2016"="d13rhwg29k9gd4ymlipbp5ink908sdnn";
+"dejavu-otf-0.02"="nxlgcc7pdqf1ckzrsqbzqm1pd5yfs1hn";
+"dejavu-otf.doc-0.02"="1s0fc2f1p945k6baig6iifbawx00v73d";
+"dice-2017"="916yfiq60a1qz7d0jn1jd9slck7rjwy1";
+"dice.doc-2017"="rfkm493k3g4slyjsy6bcgljxjsy88z76";
+"dictsym-2017"="lc5sz8d50hirk5yqg9baj2vhj4f7cf8x";
+"dictsym.doc-2017"="d13rhwg29k9gd4ymlipbp5ink908sdnn";
 "dingbat-1.0"="9yc0zy6qlxi9zmpyi3wd5irgq89shanr";
 "dingbat.doc-1.0"="z4km9f9xrw1n44ylh16872lzq8r4zvy4";
 "dingbat.source-1.0"="rq7v2cny05d4f8bkxbs2z6kj36q5bwfd";
 "doublestroke-1.111"="z58ah73655dsas48b432ahkkags5n8wv";
 "doublestroke.doc-1.111"="403diym6rx34bwmrh63zaka3xdhzs2dp";
-"dozenal-6.0"="liizjwlab7x8mc2f9c78yifhmb5rpcj1";
-"dozenal.doc-6.0"="icglr7fpvm1i8fgrdp2qps57wsgmjvjg";
-"dozenal.source-6.0"="7dzlsiy3x0s95226zlyzn188jg6d9fdx";
+"dozenal-7.1"="s3saa5scxgcbsbwc8hma6xkgf7qzgxvh";
+"dozenal.doc-7.1"="46zl1f91v0jsw5a7xn6w6h6rk67g552z";
+"dozenal.source-7.1"="2sw48xy7hmpgmn1wi0vj40hs9m8kcgfh";
 "drm-4.4"="i8782x71pbzgag927fqjqgw2w7zdisvj";
 "drm.doc-4.4"="vs4rq0w6c2yyyzv4g4qk1pn25z0czs8l";
 "drm.source-4.4"="g1n0k02ma60mrb12cdq20qfw8khgdpmm";
 "droid-2.1"="0l4lmkxp92l2a36n7hy75hsl3iafdxjd";
 "droid.doc-2.1"="0pd2n8l6rsxv4m3ni74q5xzqiaiph133";
 "droid.source-2.1"="mfz3ac4jrl5x53ak5473ri39srd9gvkr";
-"duerer-2016"="vbldf1vbzs3if3mp2lcl65afgiqa54j4";
-"duerer.doc-2016"="75dd80vmi5wx804zkrq48z12y3alihqc";
+"duerer-2017"="vbldf1vbzs3if3mp2lcl65afgiqa54j4";
+"duerer.doc-2017"="75dd80vmi5wx804zkrq48z12y3alihqc";
 "duerer-latex-1.1"="nwigxc3gb4phmv584bma819dcrrafsmx";
 "duerer-latex.doc-1.1"="9nkvhaa662x9la2spm3iwmni9bj86kll";
 "dutchcal-1.0"="6gpi804yy8xyiznzwyy2nqg7qvq6q2rd";
 "dutchcal.doc-1.0"="s0m4n06xg8h0jmlj31w27la569vkl1im";
-"ean-2016"="m0gkapni85n6zw1armbn1y770n8aj0rm";
-"ean.doc-2016"="1b7rkp30r8k0dgk9clz71jp8dlsvhrqc";
+"ean-2017"="m0gkapni85n6zw1armbn1y770n8aj0rm";
+"ean.doc-2017"="1b7rkp30r8k0dgk9clz71jp8dlsvhrqc";
 "ebgaramond-0.16"="dxr5fag5sy6nyy492cw8w8cld7ac00cb";
 "ebgaramond.doc-0.16"="99fx6j9qd77xi16z6rh4hd174jmniahi";
 "ebgaramond-maths-1.1"="gkmdw2r9w43z1yfl1gp0cbsm0s2wi4a0";
 "ebgaramond-maths.doc-1.1"="x80h1zs21mnipvpzkcg72g2sjvib1zvz";
-"ecc-2016"="0g013kqml9jfkqq94v7zi46mhrwdzdck";
-"ecc.doc-2016"="v9al4v4j1qlrc9w7ph6ww1h1mc6flqsz";
+"ecc-2017"="0g013kqml9jfkqq94v7zi46mhrwdzdck";
+"ecc.doc-2017"="v9al4v4j1qlrc9w7ph6ww1h1mc6flqsz";
 "eco-1.3"="7ycccps2kab77rr3cpwsbpi2cpl40kl7";
 "eco.doc-1.3"="1r1jxijx9wk6q2124xjwrmsjps7446fp";
 "eco.source-1.3"="4kcml0rm4pkg827qpfvhywnzrrx5p7dz";
-"eiad-2016"="m3n9a3rawxsj5gm64vggw7xvrq4cy4ry";
-"eiad.doc-2016"="z3wss8sc5vnawaqkz7kagwm1gv4l1czv";
+"eiad-2017"="m3n9a3rawxsj5gm64vggw7xvrq4cy4ry";
+"eiad.doc-2017"="z3wss8sc5vnawaqkz7kagwm1gv4l1czv";
 "eiad-ltx-1.0"="0zq83567n75h8zxlag2qas2q8li6vyqn";
 "eiad-ltx.doc-1.0"="7kymr597yg8j8291gy7jz16a89aqmqny";
 "eiad-ltx.source-1.0"="illi6i1hp4lmx7ylxazrmmzi89ymh9cs";
 "electrum-1.005-b"="6hdyjv1dakcj5zxn6p8rrksdvc7jl0sb";
 "electrum.doc-1.005-b"="c11jl0zjq8nva5nl96p9qyq3nrvgx0zn";
 "electrum.source-1.005-b"="67i1gwyiwwarncpbnj47fmws4dc42bii";
-"elvish-2016"="wp858zclk17yrhpf1yrgd3c4srh07vcj";
-"elvish.doc-2016"="mwgvj8fzb806dsjcx01zs6lhdygx35r8";
+"elvish-2017"="wp858zclk17yrhpf1yrgd3c4srh07vcj";
+"elvish.doc-2017"="mwgvj8fzb806dsjcx01zs6lhdygx35r8";
 "epigrafica-1.01"="mc08k5ajn2lr4k30lzhsn2si922frq9c";
 "epigrafica.doc-1.01"="vv1fqij6w2fir3myffcafyyrdckvvi4q";
 "epsdice-2.1"="xbz7jkdzzsqrskdi4vhb0ra7m62hk9q1";
 "epsdice.doc-2.1"="7lc7wwfxwxnjfgf13br3wa6n8j25ml6w";
 "epsdice.source-2.1"="6px6gazxv7pr9cagfrg7mzx1w3z2nxn3";
-"erewhon-1.06"="s1fg77dkhx889z6znnh0ks42r5yf2gci";
-"erewhon.doc-1.06"="glapqkilkl35sxnka8nmvrj2kk9lkfs7";
-"esrelation-2016"="zhs9fa75r0wr060cfsk4gmmvn06mywmy";
-"esrelation.doc-2016"="08i1bczpz8sccj5lf32axfl3c5ix1sri";
-"esrelation.source-2016"="r1ylhybcbbxjkyvs07m6csmqgz14rrcv";
+"erewhon-1.08"="sg3iqrvlrxlqkvpziyibhm45yxy2x815";
+"erewhon.doc-1.08"="c1x91p3ydy3yw9q32x13idpwds8rfjrv";
+"esrelation-2017"="zhs9fa75r0wr060cfsk4gmmvn06mywmy";
+"esrelation.doc-2017"="08i1bczpz8sccj5lf32axfl3c5ix1sri";
+"esrelation.source-2017"="r1ylhybcbbxjkyvs07m6csmqgz14rrcv";
 "esstix-1.0"="0ddmfrgh39pwcd2n8rggma4pqwgamp7s";
 "esstix.doc-1.0"="5pf3r0xhssrgkp779n06a63yjb5cdg6a";
 "esvect-1.3"="dd9wb3zgs99s93z0jig2z5pwccxh3vvk";
@@ -840,42 +904,44 @@
 "eulervm-4.0"="ica20j8a3ljzxrmp03k60y6f4kpcbiy2";
 "eulervm.doc-4.0"="g5fxzw7dvnff2w9ys2gpgnvr2x8dabx6";
 "eulervm.source-4.0"="ifvn5n0dvcr4qpcv1yp4xvnx9lj26krg";
-"euxm-2016"="pb3kg627b3skhbi0prgik6y9n9zgk8s0";
-"fbb-1.11"="3nn4lab2cf4d8ahv5fm0dy8x443vy5x1";
-"fbb.doc-1.11"="w74f97zdb73f4y02dylkfvlkxhrzfnbf";
+"euxm-2017"="pb3kg627b3skhbi0prgik6y9n9zgk8s0";
+"fbb-1.14"="ai9024x530swbm9r2lnfps5qijy0rvsq";
+"fbb.doc-1.14"="34dvrfj52ylz45x9kj80p1i61iyyffvc";
 "fdsymbol-0.8"="hx8wp66hsznj0sj8jkz0vdah0bp9vvyb";
 "fdsymbol.doc-0.8"="n457nji3718qh1nrjr9wbj9zqj21nkw0";
 "fdsymbol.source-0.8"="3n6d2j9wh5cxakdmxg087mznnrdkjw27";
-"fetamont-1.6"="b1jqkg3ms7gl1i2xx1gz7i2v988h2qqj";
-"fetamont.doc-1.6"="mvwfb10r72m4xggvlya8g5b9r7yz13pp";
-"fetamont.source-1.6"="5nc615ggwa9s5x313csql70id28j1k7b";
+"fetamont-2017"="4b0n4awl8k1zz1pn0pnc2hic5shsyb2h";
+"fetamont.doc-2017"="vq97fpky2mf9p09zwqvk6vkl5k9swkbb";
+"fetamont.source-2017"="j6zizdhly6lam1y4f37sy8py5ibaz4xz";
 "feyn-0.3.3"="8dj19lvi2c2vna95mdw689d1h44l6ym3";
 "feyn.doc-0.3.3"="6s6vyfbq3zb83fm0b8l7xb3pq335lhza";
 "feyn.source-0.3.3"="ncnbfggbsqdr418s53908b8k33ka9iby";
 "fge-1.25"="59jqqyl11vinxa29f6gmalv30q6zfbzi";
 "fge.doc-1.25"="49bgdsclk4zlpdfj9pimffpr4qkd2z7q";
 "fge.source-1.25"="ak2gj4nk82ya7dfbi2vwp60lvnqlvnzl";
-"fira-4.1"="2xmp3d4vbb30qhm6n303n585dmz9n8i0";
-"fira.doc-4.1"="rih92f4p5fy8wv0iaxib2q8bkzjjbjrd";
-"foekfont-2016"="wha0shrvr3lv9ll9d3gv60mcav605vcc";
-"foekfont.doc-2016"="n91sl0xzglqfbdyb9mzv7wav3y4zv9sx";
-"fonetika-2016"="firgrcsksy4jdk632aqfwlaki3xxgmak";
-"fonetika.doc-2016"="ahz61pg6qnn2dpi3c9iz2kh2f4fvywbl";
+"fira-4.2"="jmhwqnxchiqkk076c498ck9h7vgi4vba";
+"fira.doc-4.2"="0j3hpld29a4098kl2q32m2lmxm90s3ym";
+"foekfont-2017"="wha0shrvr3lv9ll9d3gv60mcav605vcc";
+"foekfont.doc-2017"="n91sl0xzglqfbdyb9mzv7wav3y4zv9sx";
+"fonetika-2017"="firgrcsksy4jdk632aqfwlaki3xxgmak";
+"fonetika.doc-2017"="ahz61pg6qnn2dpi3c9iz2kh2f4fvywbl";
 "fontawesome-4.6.3.2"="0n13dha58d0w511pzzckcq51fal6zxgl";
 "fontawesome.doc-4.6.3.2"="x7hzlyxv5k2zjz5lk8hy15pnvbhhhijj";
-"fontmfizz-2016"="c8k7306gjkypslf6micsyfcx9n5zh4js";
-"fontmfizz.doc-2016"="4rnghy9z5azspczc1hxman3305k5wdn4";
-"fonts-churchslavonic-1.0"="hb1bzipyz5wcqnska4q5rjf0hy0w658j";
-"fonts-churchslavonic.doc-1.0"="nwv56rckkxza8n1mv5wxk6bpkgw3cdx2";
+"fontmfizz-2017"="rkf93c9imj2wd7aps85m6450zbd9p3yl";
+"fontmfizz.doc-2017"="y70dshapwj7xp7h9b6sbjipv6v9k02wg";
+"fonts-churchslavonic-1.1"="3d67nxsgrrv480997rlbrzz5siyb2gvj";
+"fonts-churchslavonic.doc-1.1"="arcilr5n1w0rg97zkxy162kx21ygns31";
 "fourier-1.3"="rl6alzjlkyyhhk0gbra08b99fb3aax85";
 "fourier.doc-1.3"="6b2bnjvp45lqxmjbp0pj5yd4m39kgg6y";
 "fourier.source-1.3"="dcl6cw6vfsd0xjpic29161iswkv52gm4";
-"fouriernc-2016"="9pxp21fllg7yh9jfa8nzpy6ifa3w6y18";
-"fouriernc.doc-2016"="dn9wfy53asfp1bbxnfa9nxvnfy3z9nn1";
-"frcursive-2016"="fs9aw12gfd5gs55fhqxg2p06c50i9s1v";
-"frcursive.doc-2016"="r0bj4g91m2w3yl8q8kim6ldm4d8lyziy";
-"genealogy-2016"="hdl046d3paihjmlkh2q3crfj1n88fsyv";
-"genealogy.doc-2016"="7115cwa2l6nsnyijcdik7kw513q3a41h";
+"fouriernc-2017"="9pxp21fllg7yh9jfa8nzpy6ifa3w6y18";
+"fouriernc.doc-2017"="dn9wfy53asfp1bbxnfa9nxvnfy3z9nn1";
+"frcursive-2017"="fs9aw12gfd5gs55fhqxg2p06c50i9s1v";
+"frcursive.doc-2017"="r0bj4g91m2w3yl8q8kim6ldm4d8lyziy";
+"frederika2016-1.000_2016_initial_release"="bl8g27dfv6xsqfwlr2i6w9yar7916qnn";
+"frederika2016.doc-1.000_2016_initial_release"="ncd2plzgwdwcv1many94alkvbjh7xjf6";
+"genealogy-2017"="hdl046d3paihjmlkh2q3crfj1n88fsyv";
+"genealogy.doc-2017"="7115cwa2l6nsnyijcdik7kw513q3a41h";
 "gentium-tug-1.1"="icijmw31g5lsgqlkam4d6z33fzprpxi8";
 "gentium-tug.doc-1.1"="i9l2xy7kwymvrzhzd1p17qgq3n3s4ay0";
 "gentium-tug.source-1.1"="fjd2j35fn1jbl3zw6nix2hz6mbbcr6m5";
@@ -885,97 +951,98 @@
 "gfsbodoni.doc-1.01"="cbw698q7jmg09k301zwbnnqig853c14i";
 "gfscomplutum-1.0"="bic1cr1c3dii9nlfmhlgsm6rpj3g0im7";
 "gfscomplutum.doc-1.0"="ddz279xl7glgi201dizr2gdkcgiy77qz";
-"gfsdidot-2016"="haagb5h8bpqyjh2pp4bxqz664rfafmq2";
-"gfsdidot.doc-2016"="y69qjiffbc2vmy8rzbfrg0d9nc6nq9ca";
-"gfsneohellenic-2016"="az5rq4d44zysnvcqlky0hr5qb7bh3nza";
-"gfsneohellenic.doc-2016"="04y313wjm59sgg4xlnili0kfw3dwljp9";
+"gfsdidot-2017"="haagb5h8bpqyjh2pp4bxqz664rfafmq2";
+"gfsdidot.doc-2017"="y69qjiffbc2vmy8rzbfrg0d9nc6nq9ca";
+"gfsneohellenic-2017"="az5rq4d44zysnvcqlky0hr5qb7bh3nza";
+"gfsneohellenic.doc-2017"="04y313wjm59sgg4xlnili0kfw3dwljp9";
 "gfssolomos-1.0"="wq24prphxxnn94n0nd4xmrf23f5yqchp";
 "gfssolomos.doc-1.0"="rq87k1bymgyb837k103ps50w9krmxca8";
 "gillcm-1.1"="42vc5sx8shjzqkc10qv7gyq9689bzlgq";
 "gillcm.doc-1.1"="4rmm7nn5z0bw3qgn8gfkl86bblkvkh6g";
-"gillius-2016"="fw49hi1cvp9zknv23xccgffkxyqwimqv";
-"gillius.doc-2016"="dhkvy2y5v117xzm4lan27k7q2rcdvs5p";
-"gnu-freefont-2016"="1zqn27grz5h290g4fk4q8kd9pf4l05ag";
-"gnu-freefont.doc-2016"="3saxb0d0h7dn8a1f7l8ax0dj5ic8piib";
-"gnu-freefont.source-2016"="716drmmfwyq7pabpgagk0zwkj77lrhda";
-"gothic-2016"="6wx2xl7wrgnai3wwqgpggwyggyg5hid1";
-"gothic.doc-2016"="1cpvmj3vn26ji5cl1sfxvdh6qv7ix92f";
-"gothic.source-2016"="6gh7hma17066gk20ri4qjvml8d424c1h";
-"greenpoint-2016"="qlqfkgcn8gc1hy7gmfajqliriilf68ck";
-"greenpoint.doc-2016"="xf889ii8gmck30vlpwkfp7d9242ivffr";
-"grotesq-2016"="rqv47whzwig31vfd8581ncd87ja7pb82";
-"grotesq.doc-2016"="rim68sz4x0r1m6j69zryv98gfgvpkbz0";
+"gillius-2017"="fw49hi1cvp9zknv23xccgffkxyqwimqv";
+"gillius.doc-2017"="dhkvy2y5v117xzm4lan27k7q2rcdvs5p";
+"gnu-freefont-2017"="1zqn27grz5h290g4fk4q8kd9pf4l05ag";
+"gnu-freefont.doc-2017"="3saxb0d0h7dn8a1f7l8ax0dj5ic8piib";
+"gnu-freefont.source-2017"="716drmmfwyq7pabpgagk0zwkj77lrhda";
+"gofonts-2017"="zpgjyb4435mfsjdk5n2c1c2nyqqix88f";
+"gofonts.doc-2017"="dzy2jb8iyr227sil5wj14sxv5v1w95bc";
+"gothic-2017"="6wx2xl7wrgnai3wwqgpggwyggyg5hid1";
+"gothic.doc-2017"="1cpvmj3vn26ji5cl1sfxvdh6qv7ix92f";
+"gothic.source-2017"="6gh7hma17066gk20ri4qjvml8d424c1h";
+"greenpoint-2017"="qlqfkgcn8gc1hy7gmfajqliriilf68ck";
+"greenpoint.doc-2017"="xf889ii8gmck30vlpwkfp7d9242ivffr";
+"grotesq-2017"="rqv47whzwig31vfd8581ncd87ja7pb82";
+"grotesq.doc-2017"="rim68sz4x0r1m6j69zryv98gfgvpkbz0";
 "hacm-0.1"="jvhbypj31pcc0imgwlmzpv8nmb1n9dxk";
 "hacm.doc-0.1"="0dys4q83mfgxlwrz16fsm2cx2vgcn5ly";
-"hands-2016"="570kl4m7mximvq87lfqa6fim30hmjjqz";
-"heuristica-1.08"="fdwjz528185ff5gq6fwgxpf67w81q1hs";
-"heuristica.doc-1.08"="bawl4m510k3mzvxcf6vwq6id91fs21xj";
-"hfbright-2016"="j8vk71r5c8iyhfmfwqspj1c4iczl2p0f";
-"hfbright.doc-2016"="wqqxw523sh1yjl0hnh31902wap7xcjwm";
+"hands-2017"="570kl4m7mximvq87lfqa6fim30hmjjqz";
+"heuristica-1.09"="s1khk82w1g5q53iaj29viqgi1bssfvx2";
+"heuristica.doc-1.09"="vlm8a9a4g4vbqiana67r4dfyv3g1fk0b";
+"hfbright-2017"="j8vk71r5c8iyhfmfwqspj1c4iczl2p0f";
+"hfbright.doc-2017"="wqqxw523sh1yjl0hnh31902wap7xcjwm";
 "hfoldsty-1.15"="79zmah1m2xg56m7cvfybzw68kbfcf5c5";
 "hfoldsty.doc-1.15"="16gmfqd9kwg0isf4wp1nlndfwn5132ph";
 "hfoldsty.source-1.15"="vyly65j4d7wl49gmm8wgpxrnv1s2ygq2";
-"ifsym-2016"="qy3w8h8slb44vg4s7q7ddb9db2fd9s06";
-"ifsym.doc-2016"="wpnp4ykxz7qa1ycwzkfpp5sjrs49np12";
-"imfellenglish-2016"="y1vkapnwlqxwb3via4yhpszgfmlyqa9q";
-"imfellenglish.doc-2016"="g7r6rv584d412gqassqba30jfg3i1490";
-"inconsolata-1.10"="ym7yy9m5m8jghqchkng5112fd5knsgx4";
-"inconsolata.doc-1.10"="kp397xs358bc6d0ir50063js699iqh77";
-"initials-2016"="sd0v18xidrmnllf1ihmgk02jz3v2qw8j";
-"initials.doc-2016"="6nhvprdk8nd8gxmhq2hb8s41rpjwmv4g";
-"ipaex-type1-0.3b"="zvrlkrnny2f16db0vkl5aw4bv575h4lw";
-"ipaex-type1.doc-0.3b"="3z3qbzn77nw7lmdknl8j3w9qqf3qqaah";
+"ifsym-2017"="qy3w8h8slb44vg4s7q7ddb9db2fd9s06";
+"ifsym.doc-2017"="wpnp4ykxz7qa1ycwzkfpp5sjrs49np12";
+"imfellenglish-2017"="y1vkapnwlqxwb3via4yhpszgfmlyqa9q";
+"imfellenglish.doc-2017"="g7r6rv584d412gqassqba30jfg3i1490";
+"inconsolata-1.113"="68gy7gcs8vcd9ch65lgywqi8hg4ww6ad";
+"inconsolata.doc-1.113"="xn6cdxhg6wk7h5w135ba9ak72vyddail";
+"initials-2017"="sd0v18xidrmnllf1ihmgk02jz3v2qw8j";
+"initials.doc-2017"="6nhvprdk8nd8gxmhq2hb8s41rpjwmv4g";
+"ipaex-type1-0.4a"="9grlfg36zanjfrnaw0f2hb3cp4jpbpab";
+"ipaex-type1.doc-0.4a"="wpskfd5mjp5a7k2210m8x9fw7y5zdgkn";
 "iwona-0.995b"="l8pylg2zq5pvxs7czq17b3v1xpar4qkr";
 "iwona.doc-0.995b"="piyd7fk40bqwdb3fxshkcwwrdi8gra32";
-"jablantile-2016"="7fh0mnp320r5b8740vs3z19dg1l0i4ds";
-"jablantile.doc-2016"="yml29hq7xcawh3zkd6b32dbsk0aj024q";
+"jablantile-2017"="7fh0mnp320r5b8740vs3z19dg1l0i4ds";
+"jablantile.doc-2017"="yml29hq7xcawh3zkd6b32dbsk0aj024q";
 "jamtimes-1.12"="mdyyd5fy4hhi74rpc5hb7bmrxwdsk9k9";
 "jamtimes.doc-1.12"="c9849k8v23lrfrchf00yvrvq5q7g1gq0";
 "junicode-0.7.7"="s9grb6y7k5mxsfaxxyp1aj8c289cdb2r";
 "junicode.doc-0.7.7"="b66ag5n2apfdkwlhqsvg6aq1p8pdbiyn";
-"kixfont-2016"="b9z3zajxsqs84zh5k15rx3jgkwwgwa40";
-"kixfont.doc-2016"="xp8ai67z856fmkzcssavksidg7n7j2yj";
-"knuthotherfonts-2016"="cglkahxrv3ai8ia8gh59wcf8wiz6p671";
+"kixfont-2017"="b9z3zajxsqs84zh5k15rx3jgkwwgwa40";
+"kixfont.doc-2017"="xp8ai67z856fmkzcssavksidg7n7j2yj";
+"knuthotherfonts-2017"="cglkahxrv3ai8ia8gh59wcf8wiz6p671";
 "kpfonts-3.31"="6bkrblgqpv8vn18vfjqlqq7g7q8df2an";
 "kpfonts.doc-3.31"="9ss49c1srgdxc4z0q94jdjyrfd9lyxmq";
 "kurier-0.995b"="dadp8vkzvblj60424k75bchravcr0338";
 "kurier.doc-0.995b"="a4hw3w7qg492qnf4kivjsdfxqyrq669b";
-"lato-2.2"="y4f5785drk1k6khnx3wjzymjavl34pkv";
-"lato.doc-2.2"="7rj3h5khq16b49s50nh8lkqql1wq3qv9";
-"lato.source-2.2"="pss3k4q1z1d91nv6wqmd4s6d6dxd0i4s";
+"lato-3.0"="cay4x21jfm7mzs18f21ymwaa3gbqpdiz";
+"lato.doc-3.0"="kh4a3qzwkrvx3my0qx0vxk4c5ixfz3ag";
 "lfb-1.0"="kqspj6w9i4bzbxcngqdfk8rnw33j0yyd";
 "lfb.doc-1.0"="ikbhi6ahzxlplvizphmpimf9ah2ninqg";
-"libertine-5.3.0"="s5zba27ij7ixsaw4c94q2c3qvnzlblkm";
-"libertine.doc-5.3.0"="pz9mx44zjcwhimj9qn1wqw9c9hfk2rm4";
-"libertinegc-1.00"="2z6bzrh2cp8rvvp5ywbd9c46ng2v4l8c";
-"libertinegc.doc-1.00"="vqwmf4b2gm8m1g5qmmq2ws9hkdr6qy2k";
-"libertinus-6.2"="dfi1hiv622j0z116whfxdlmprgxqv1an";
-"libertinus.doc-6.2"="cfn8l7zq50m0v39z5g2h2ny05691zlw0";
-"libertinust1math-1.00"="fh7vadpk9183v23a2i46976gvl8lf145";
-"libertinust1math.doc-1.00"="j0a0wy3f5znn1bsgfsl1grzk1anpd5yi";
-"librebaskerville-2016"="2dc8cilcgmmp0wrla8ayyyh4khhh7lfl";
-"librebaskerville.doc-2016"="5yargvzlnq9sckyy629jzsmi17gb8h7n";
-"librebodoni-2016"="1znd7g37rmm1qsv35dd9kvkmkfj4d3w5";
-"librebodoni.doc-2016"="hzihx71p9ggdp2pxrjvck7lhx2mrgdmj";
-"librecaslon-2016"="rpnd5xnxi48r8xy7jiqaw0z62j2bgnsr";
-"librecaslon.doc-2016"="6n2yvfsmqybr3baq7njvdk4hv0rgwfll";
+"libertine-5.3.0"="pjygmbrr2rarji49h49mckqjshc7ikvy";
+"libertine.doc-5.3.0"="nf0ydl0wv6m4vlc9bbcn186krs7cjmzw";
+"libertinegc-1.01"="jmz5hjyld04g175sgg322lrlazcbmbz7";
+"libertinegc.doc-1.01"="qf8q9c30ljq44kqh8l855xdkq9i4w857";
+"libertinus-6.4"="fcxj427j1s2j7hk6ph4s07v2kfkrljkb";
+"libertinus.doc-6.4"="hjmsbr1p7xwwjwdiamhldp3mb0igkqmd";
+"libertinust1math-1.1.4"="qjy1v4162pqfv3yszb4vwvjkmq55m21q";
+"libertinust1math.doc-1.1.4"="yn7nspw8k3qi75jaaplf4zy00nm2xiyj";
+"librebaskerville-2017"="2dc8cilcgmmp0wrla8ayyyh4khhh7lfl";
+"librebaskerville.doc-2017"="5yargvzlnq9sckyy629jzsmi17gb8h7n";
+"librebodoni-2017"="1znd7g37rmm1qsv35dd9kvkmkfj4d3w5";
+"librebodoni.doc-2017"="hzihx71p9ggdp2pxrjvck7lhx2mrgdmj";
+"librecaslon-2017"="rpnd5xnxi48r8xy7jiqaw0z62j2bgnsr";
+"librecaslon.doc-2017"="6n2yvfsmqybr3baq7njvdk4hv0rgwfll";
 "libris-1.007"="fi5cn5ag6zgprgc0iqgk4iln6kb8knv8";
 "libris.doc-1.007"="82p29lh7cbavrshdx4s0pvqpgbvb21d4";
 "libris.source-1.007"="gd4aiv3pxy5as8cwfy9m1f4a8jp7v6d1";
-"linearA-2016"="fs5s95s31qczmlr0m3dk16c7gl4kpn3z";
-"linearA.doc-2016"="6b5jz6pfmv5f88gkwj5642jvd35ga3gm";
-"linearA.source-2016"="zdfpl9gwgrxwvs9ymj3vngfxdc23vv0q";
-"lobster2-2016"="lx95j46k68gz8jbcxam8a3xy4jgxy9jk";
-"lobster2.doc-2016"="psr2bid2fjynzfvwb4s86biamv1r6q9l";
+"linearA-2017"="fs5s95s31qczmlr0m3dk16c7gl4kpn3z";
+"linearA.doc-2017"="6b5jz6pfmv5f88gkwj5642jvd35ga3gm";
+"linearA.source-2017"="zdfpl9gwgrxwvs9ymj3vngfxdc23vv0q";
+"lobster2-2017"="lx95j46k68gz8jbcxam8a3xy4jgxy9jk";
+"lobster2.doc-2017"="psr2bid2fjynzfvwb4s86biamv1r6q9l";
 "lxfonts-2.0b"="3s303f06r7561x3x38sy3c9nr80x8gdq";
 "lxfonts.doc-2.0b"="swgvazf325j99kjrcb94r8611fs6jmqv";
 "lxfonts.source-2.0b"="sxn1hl96bsg6ai8fafskxj8palg8vpk7";
-"ly1-2016"="vikl1r4353fvx09h3iiq5r9r6wnhj57g";
-"ly1.doc-2016"="iw3amhkw5vjcmrq43cwqg653nyc3ks1p";
-"mathabx-2016"="qgy1qqn1bk43nk938d7bvbyj75v4fz57";
-"mathabx.doc-2016"="q0n88v61h3bqf0vvldd1lb03d6i1z8mc";
-"mathabx-type1-2016"="z96jirmwabbav354qlyphhjvxnsgjqxl";
-"mathabx-type1.doc-2016"="yq8n84cpw8kqvqivham4pqxq1740z36w";
+"ly1-2017"="vikl1r4353fvx09h3iiq5r9r6wnhj57g";
+"ly1.doc-2017"="iw3amhkw5vjcmrq43cwqg653nyc3ks1p";
+"mathabx-2017"="qgy1qqn1bk43nk938d7bvbyj75v4fz57";
+"mathabx.doc-2017"="q0n88v61h3bqf0vvldd1lb03d6i1z8mc";
+"mathabx-type1-2017"="z96jirmwabbav354qlyphhjvxnsgjqxl";
+"mathabx-type1.doc-2017"="yq8n84cpw8kqvqivham4pqxq1740z36w";
 "mathdesign-2.31"="30x7w3a7v1654a9n5mcj5kdak8i2qxw2";
 "mathdesign.doc-2.31"="sgp7bi4m5480jvsdj9n2pq933cfjkiqr";
 "mdputu-1.2"="6wr48jgiyfprwwrla53qshm2817zrmm2";
@@ -983,95 +1050,103 @@
 "mdsymbol-0.5"="hjaz8ph3zrnl7x0545k3937yl5a0ghqh";
 "mdsymbol.doc-0.5"="g8m1964gq8gnn3cc3ij1iqhc4akwmc3q";
 "mdsymbol.source-0.5"="7hy2zpaw41c46i7kd4m65lhzgbpkn5xv";
-"merriweather-2016"="57d530k5j2lngknni5abyzls4nlaadpk";
-"merriweather.doc-2016"="wfsrrdn7gfh7ih5fqsd4lxy55hmc9wwh";
+"merriweather-2017"="57d530k5j2lngknni5abyzls4nlaadpk";
+"merriweather.doc-2017"="wfsrrdn7gfh7ih5fqsd4lxy55hmc9wwh";
 "miama-1.0"="v8l2d3rkr08hpxbvb1yw18afbcr3mqb3";
 "miama.doc-1.0"="xwqi0jxadac5vxcv1zcn8irfmfi3c34r";
 "miama.source-1.0"="9qf3ffnir6bn31gcdzrp00bryijrmw5l";
-"mintspirit-2016"="wc4wyi1dfc7ql5sdcyycyqxjfir4g97r";
-"mintspirit.doc-2016"="w1ld9009591p4inkky5jfppjaiy0ja8s";
+"mintspirit-2017"="wc4wyi1dfc7ql5sdcyycyqxjfir4g97r";
+"mintspirit.doc-2017"="w1ld9009591p4inkky5jfppjaiy0ja8s";
+"missaali-1.004"="yv5k1an5kf5fygdjphwyg34k7yxzhvfm";
+"missaali.doc-1.004"="dwrqnc25398agbnc9nqmmiviray9fgw3";
 "mnsymbol-1.4"="gmjs2ra3yb01bxw90gjdri3p6n7kbc6l";
 "mnsymbol.doc-1.4"="7ngazrr147x9gdadm651fv9hjr1f87i2";
 "mnsymbol.source-1.4"="7bf82bljx9w783jg3kibc5rn2l9j0ym2";
-"mweights-2016"="prx1hbwa7bmr92ihxylmp49g7b4farwq";
-"mweights.doc-2016"="nigr91h85nl0ykivaxl33qi8s8sx6gsw";
-"newpx-1.295"="y86mz7l525jhx1pbi8bpdkypv4hswgng";
-"newpx.doc-1.295"="8zs8077x8pkjfk9w8561pjw8kxdx8pi1";
-"newtx-1.466"="a56lf6psqy42gqxi9as7c3zggacdgp9i";
-"newtx.doc-1.466"="8am97hv3vjj383xdz6rbzlv742wi6g8c";
-"newtxsf-1.04"="38365p5pmaxqm1wa4b8iz4fhl404f66w";
-"newtxsf.doc-1.04"="c5xd5vqh6b9jn6fa0jfp3snkcs2kqvlr";
-"newtxtt-1.052"="asl7klidnx8cf7p0ms9ia0kyc9j4zs4i";
-"newtxtt.doc-1.052"="3g7k3zxj66xwpn095a3h2z4pgqm5giax";
+"montserrat-1.01"="69sgwbg4w8kxgl2sixbx2p5l8x09m95i";
+"montserrat.doc-1.01"="qs93cxc3d97zzny9702zm5gydz9p45f9";
+"mweights-2017"="6rwqdlv6x82pskdga8yzzz61yfxgvzpq";
+"mweights.doc-2017"="w719n3h6cg10izpzgcqd4n0i5gbm644a";
+"newpx-1.321"="d12yaqn9jk8z82rl50z1i2q507snsdvs";
+"newpx.doc-1.321"="4q8cyg65h9biyizjszazbyb8j6fyfgwc";
+"newtx-1.527"="qz5r1mwyyaxqyp03nhc1xf003pabrqpw";
+"newtx.doc-1.527"="1aszp7mxbsh17097nw2v4p0n5ch0hrsw";
+"kastrup-2017"="qdr5cacl37ans3zd5jlzwr2356xxgswy";
+"kastrup.doc-2017"="mvq3abnsjmzb3kv4c2z116apbzgfh2dw";
+"kastrup.source-2017"="13vj32k48f0ahs5694zrsvk953kxjrwc";
+"newtxsf-1.05"="p5i2031dbbv3nn7djsw2p6hxrck6bfpx";
+"newtxsf.doc-1.05"="jhm8sl1nbrp1xnn32ilqgjsq30dh774j";
+"newtxtt-1.055"="7v1rd11ryiynfmwzrmwywd2m9qc5i3fh";
+"newtxtt.doc-1.055"="zblj8j85biikhm989slz2hwbvkhq5yf2";
+"niceframe-type1-2017"="0kr9sg5vnawjrd2aw8vbf8mg975sifl1";
+"niceframe-type1.doc-2017"="12bn96xfs68zy9sfxi5q67mnaqkl1v2a";
 "nimbus15-1.00"="wrnw56g5wf7g0443fwdbv05cca3yr9gl";
 "nimbus15.doc-1.00"="q2qwgrdmc69r2yq7kf8nak62smz536ay";
 "nkarta-0.2"="g55hn51ys8zd7in6c6z46mwva577s6qd";
 "nkarta.doc-0.2"="59na8icxp6l11jk6nsp53c1y5gqyjsff";
 "nkarta.source-0.2"="jqh4ghyi8ry5w9x909w3kscg9p6m1279";
-"noto-2016"="x9dqxjy2zfmq4m521glh2pr04ckz35jr";
-"noto.doc-2016"="39s1yf547yqhm9r4wvsyq0ynqzs8igb7";
+"noto-2017"="jbjzwfv0gm2ik3j267gfcrq34h1aab5y";
+"noto.doc-2017"="0iqwpxg6ph4z08470dfp04g3rq9dbgdy";
 "obnov-0.11"="49j5a74f298hw84np3ih4xd0hnh6r1wh";
 "obnov.doc-0.11"="m9c4z3ckj08ai2cdb3hhiv040y6n1bfl";
-"ocherokee-2016"="1fg65c5gpjsx8vv9vsdg8szagf1xmg6a";
-"ocherokee.doc-2016"="p9lx15xl112908b004y0y6nlfxzgam24";
-"ocr-b-2016"="q1id788vglvlc7lsfr35gvzf0xmgr22n";
-"ocr-b.doc-2016"="lgwx91waimda6cdr05fi2jdwh4x18fqf";
-"ocr-b-outline-2016"="b8hhnggqxzs8285f55ixpwcpd7hb2dym";
-"ocr-b-outline.doc-2016"="bl1m2hny1zvs3wy4i4pndd2vxq7jhd9j";
-"ocr-b-outline.source-2016"="pf5dql2llykwb6x5a2s3scg4kc5r2f77";
-"ogham-2016"="22q1nc2fd6vv7hr7l4iryxi5bp6hqfnb";
-"ogham.doc-2016"="awnlhhzp2ch289lpnwybhz1k3zqwqq5d";
-"oinuit-2016"="n4di43fhkw1zcmy9xgxn7g4wl23qinyi";
-"oinuit.doc-2016"="s5hi4bk5yc19fb5lhmnc2vvxpr3ahd2k";
-"oinuit.source-2016"="caij5pbyylnhlhx149kl2h5sj4qda57z";
-"old-arrows-1.2"="phrvizrvr5iwqb1f3w4ymn8wcafm85z9";
-"old-arrows.doc-1.2"="91c6am0jj3jhdzfncc2cj24phb4xkji8";
+"ocherokee-2017"="1fg65c5gpjsx8vv9vsdg8szagf1xmg6a";
+"ocherokee.doc-2017"="p9lx15xl112908b004y0y6nlfxzgam24";
+"ocr-b-2017"="q1id788vglvlc7lsfr35gvzf0xmgr22n";
+"ocr-b.doc-2017"="lgwx91waimda6cdr05fi2jdwh4x18fqf";
+"ocr-b-outline-2017"="b8hhnggqxzs8285f55ixpwcpd7hb2dym";
+"ocr-b-outline.doc-2017"="bl1m2hny1zvs3wy4i4pndd2vxq7jhd9j";
+"ocr-b-outline.source-2017"="pf5dql2llykwb6x5a2s3scg4kc5r2f77";
+"ogham-2017"="22q1nc2fd6vv7hr7l4iryxi5bp6hqfnb";
+"ogham.doc-2017"="awnlhhzp2ch289lpnwybhz1k3zqwqq5d";
+"oinuit-2017"="n4di43fhkw1zcmy9xgxn7g4wl23qinyi";
+"oinuit.doc-2017"="s5hi4bk5yc19fb5lhmnc2vvxpr3ahd2k";
+"oinuit.source-2017"="caij5pbyylnhlhx149kl2h5sj4qda57z";
+"old-arrows-2.0"="7s0s5g2vif8hkzj768a0zgg46xjh57y6";
+"old-arrows.doc-2.0"="n9ly98pmz304gymkiafs3fncs9qq29mb";
 "oldlatin-1.00"="dw53za52apri5agrh2jpxrw0qvnk1mbd";
 "oldlatin.doc-1.00"="ngf614psg11qa2gmda30c6an4f371lda";
-"oldstandard-2.0.2"="qxmy4i2hxk7nxpy22yjcwz9mblsfr940";
-"oldstandard.doc-2.0.2"="8c13b9w1g3yfmadcyrh1cgclb8r7kkk8";
-"oldstandard.source-2.0.2"="zldfvfqaph84h7i1gjjziqmfsv7kxyq1";
+"oldstandard-2.2"="iqi5gsgi0n4hzwaxwz00vz2wq43xhfgk";
+"oldstandard.doc-2.2"="vh7gsp5wf33yzfmdklh41nl0dlrn9vwb";
 "opensans-1.2"="96p8jrsz9bp7lmyvi1yyq8k6g8x7041h";
 "opensans.doc-1.2"="6wh2f3idlc9s717la12bhj92xwniyd1j";
 "opensans.source-1.2"="4idpv3dnr2p81jrbdfxqxanyyzgaxbrc";
-"orkhun-2016"="fmazxvhmc0r0m96ms6a234wj139g00iy";
-"orkhun.doc-2016"="mgamvmayvdi43vxfqmxgbgzfahpn3d2l";
-"overlock-2016"="xnfcanjszrd5bdrdszdy0lj4d73wb7jg";
-"overlock.doc-2016"="08zkifgzjdfcb9q85dz0xi7q5q558aq0";
-"pacioli-2016"="ka7a174yd3q3mymkbfyqbi7hhzpbhgvv";
-"pacioli.doc-2016"="5pzk9mjcdlzcnxwfkba4hzn23bzlhfh9";
-"pacioli.source-2016"="wwvfswngg0rrng6f3xck0f4qyg5m3shk";
-"paratype-2016"="877hrpz9vdgw6hsi6zf9d44bwnqjd6cb";
-"paratype.doc-2016"="12a3wq98sk2sb66rd08sx3f3vqvyqsr3";
+"orkhun-2017"="fmazxvhmc0r0m96ms6a234wj139g00iy";
+"orkhun.doc-2017"="mgamvmayvdi43vxfqmxgbgzfahpn3d2l";
+"overlock-2017"="xnfcanjszrd5bdrdszdy0lj4d73wb7jg";
+"overlock.doc-2017"="08zkifgzjdfcb9q85dz0xi7q5q558aq0";
+"pacioli-2017"="ka7a174yd3q3mymkbfyqbi7hhzpbhgvv";
+"pacioli.doc-2017"="5pzk9mjcdlzcnxwfkba4hzn23bzlhfh9";
+"pacioli.source-2017"="wwvfswngg0rrng6f3xck0f4qyg5m3shk";
+"paratype-2017"="877hrpz9vdgw6hsi6zf9d44bwnqjd6cb";
+"paratype.doc-2017"="12a3wq98sk2sb66rd08sx3f3vqvyqsr3";
 "phaistos-1.0"="5vv58ibkgjmpih67p2qgm9vdiqh4ag6m";
 "phaistos.doc-1.0"="z69jyiz7nm44yg9qy5vfhrzwby903g3s";
 "phaistos.source-1.0"="clhmyfpd5l1zx29352smmnyhal3lpa5q";
-"phonetic-2016"="1ha5wc46jqc3r9ziq7wmx0va8svybyjk";
-"phonetic.doc-2016"="xa7kxz7lh1sqmb6x9n4sh7bjpr9mvzqp";
+"phonetic-2017"="1ha5wc46jqc3r9ziq7wmx0va8svybyjk";
+"phonetic.doc-2017"="xa7kxz7lh1sqmb6x9n4sh7bjpr9mvzqp";
 "pigpen-0.2"="d6rr06gpzr27134dqh8rv6h6g4i9hg4x";
 "pigpen.doc-0.2"="gqnp68lkhnnyh1ib0sa34cxjg52jj0rs";
-"playfair-2016"="1rmwab0wdfbivgzkjkdlnkm57bvccgw7";
-"playfair.doc-2016"="2aaqnm4gmjl2g1v4a046hlx90xjwb8jf";
+"playfair-2017"="1rmwab0wdfbivgzkjkdlnkm57bvccgw7";
+"playfair.doc-2017"="2aaqnm4gmjl2g1v4a046hlx90xjwb8jf";
 "poltawski-1.101"="ipqjw12syp38hj1pw4b9g03kx07l40vn";
 "poltawski.doc-1.101"="g3shi2lp499x96az1f77y5bf8mhrgzl2";
-"prodint-2016"="vgqm1rmgqqvn7d4akab3x7jqz89kb0hq";
-"prodint.doc-2016"="fclf35r9hmfq76bvxwz5df0q18zms1sm";
-"punk-2016"="1bqwz8g3apk49mhg7m63qsynrxjxg76x";
-"punk.doc-2016"="1gc59v1xvh9sls0nr2ypmifripdspd1l";
+"prodint-2017"="vgqm1rmgqqvn7d4akab3x7jqz89kb0hq";
+"prodint.doc-2017"="fclf35r9hmfq76bvxwz5df0q18zms1sm";
+"punk-2017"="1bqwz8g3apk49mhg7m63qsynrxjxg76x";
+"punk.doc-2017"="1gc59v1xvh9sls0nr2ypmifripdspd1l";
 "punk-latex-1.1"="i1gqgbivxd8yl1rwjbssf2g0ib9nvb57";
 "punk-latex.doc-1.1"="8nzibnm4247rapxb9kfkyv5i49w19ipk";
 "punknova-1.003"="0q3dx65cyb1kh2iwbs9if8p6943m3gw8";
 "punknova.doc-1.003"="hjlldk6yr4hjh4chwcxmzq761h1ygwnq";
 "pxtxalfa-1"="rapvsla1cgyinabn1w9cshpm3y5af13r";
 "pxtxalfa.doc-1"="fg8arijrsm7gc3liyf3036pj014w0243";
-"quattrocento-2016"="49ifrqysm27xbwqmy4k0h7k65gxk4c9w";
-"quattrocento.doc-2016"="3rbp50ihgm2bhv78xa7839j99m4q45qr";
-"raleway-1.3"="5z34lhbcmxzqf0pyfmckcl3g5xqj348k";
-"raleway.doc-1.3"="w2dwii6y5sjm5wqahfhvmwwc723snayk";
-"recycle-2016"="4fgfdk09nzljd5a6vz52nvv8b23xk8rw";
-"recycle.doc-2016"="3wazkwncn9gh1lpcax4hb8x38jr6ynxd";
-"roboto-2016"="i7m39dj9qxjlyjgs0zypcamn1lz9bi2k";
-"roboto.doc-2016"="f4mpzazg7x4bjsmq9wja9hd7i4pbv2hj";
+"quattrocento-2017"="49ifrqysm27xbwqmy4k0h7k65gxk4c9w";
+"quattrocento.doc-2017"="3rbp50ihgm2bhv78xa7839j99m4q45qr";
+"raleway-1.4"="qyqkxw2r0kjdc5ccq6ixlsjgv75gcmhv";
+"raleway.doc-1.4"="kw13y1533fwj7lgjc986ydb97plij1vh";
+"recycle-2017"="4fgfdk09nzljd5a6vz52nvv8b23xk8rw";
+"recycle.doc-2017"="3wazkwncn9gh1lpcax4hb8x38jr6ynxd";
+"roboto-2017"="i7m39dj9qxjlyjgs0zypcamn1lz9bi2k";
+"roboto.doc-2017"="f4mpzazg7x4bjsmq9wja9hd7i4pbv2hj";
 "romande-1.008-v7-sc"="v5sf9cqkvd7wmbrrb48dffi59m048kal";
 "romande.doc-1.008-v7-sc"="bf5a3jzcqr74l7qp2im80r9x73rk3asy";
 "romande.source-1.008-v7-sc"="g2p0didwlqqf9gsdzrhmh0f9543wdwwz";
@@ -1080,31 +1155,33 @@
 "rosario.source-1.0"="zy5bkfdxj9j0gca23hk0d0vmbrnwv8h2";
 "rsfso-1.02"="3n75qwpji7z995wb2r3dqwrszkw6m61m";
 "rsfso.doc-1.02"="vga3jyv3s730mgx97mqw92igvvypbyb4";
-"sansmathaccent-2016"="i74c6yiwx5g1ilgjw2i0wsf2ip5ym9dp";
-"sansmathaccent.doc-2016"="dxbr7vs0j710wz9ym4n7wb3930kcrccj";
-"sansmathfonts-1"="s66jmw29jdnkk79lbl970a2d2qkcn2bl";
-"sansmathfonts.doc-1"="1f6bxfc97jzd4j663cbkzdx9dxs9m0ya";
+"sansmathaccent-2017"="i74c6yiwx5g1ilgjw2i0wsf2ip5ym9dp";
+"sansmathaccent.doc-2017"="dxbr7vs0j710wz9ym4n7wb3930kcrccj";
+"sansmathfonts-2017"="27328mjiv4hp1d24c3yf9bw02602x3r2";
+"sansmathfonts.doc-2017"="wbkv1hkr1l7gdk3kxfjx4dxmzgjjin38";
 "sauter-2.4"="flw49y2l5355jpvq7f3q3vannwcfni3f";
-"sauterfonts-2016"="kciqmij0w173na214ix5yhngc18likch";
-"sauterfonts.doc-2016"="x2lc53r2wnwrjfainmngafdsg39zyf48";
-"sauterfonts.source-2016"="kfi5301zd7pwmnr1fhqc6kfni0nr5d4m";
+"sauterfonts-2017"="kciqmij0w173na214ix5yhngc18likch";
+"sauterfonts.doc-2017"="x2lc53r2wnwrjfainmngafdsg39zyf48";
+"sauterfonts.source-2017"="kfi5301zd7pwmnr1fhqc6kfni0nr5d4m";
 "schulschriften-4"="3g5c3l5mnpp3a6472ayj0iykriini807";
 "schulschriften.doc-4"="ad6v7vnksqfglwb18via23p45xm2hr81";
-"semaphor-2016"="rb37ln7zq51ck9k6g0wj1cx1q02x2i35";
-"semaphor.doc-2016"="5lc0796kh9slmk1hrm3720mcnqjlqrcv";
+"semaphor-2017"="rb37ln7zq51ck9k6g0wj1cx1q02x2i35";
+"semaphor.doc-2017"="5lc0796kh9slmk1hrm3720mcnqjlqrcv";
+"shobhika-1.04"="1iqj5p7vljw0yv43i6y54s4ghbx3f662";
+"shobhika.doc-1.04"="5kn3dz79s0z5mr9k6an01j2p14bpfms2";
 "skull-0.1"="hv1lxixs6dv2sagmj4rnjpkhc4s2i3mj";
 "skull.source-0.1"="szzd5b98j04aj4f4aq5av7fs7316156m";
 "sourcecodepro-2.6"="md57f5a305c6w98036ll1lpi7qh84qq1";
 "sourcecodepro.doc-2.6"="bksqxgy7iax59nisn8zs6a1b5ig76r7q";
-"sourcesanspro-2.5"="k9plmdm99gncpdl368kd41qik8cdvhi7";
-"sourcesanspro.doc-2.5"="wvcnbyvqip64x46vwp2xdijzwrxrnrfp";
+"sourcesanspro-2.6"="z54yjkharb2lcq260in8q07d2d1s5w8n";
+"sourcesanspro.doc-2.6"="cwyk6i4sdl4iag4ggdxm0c3l8ndz7cd7";
 "sourceserifpro-1.2"="zjimb4v67h1nf7rcnxxxwzjc5906ik8d";
 "sourceserifpro.doc-1.2"="p92ynwbxnbij2s8nr12p4hvyycvfy405";
 "starfont-1.2"="phdad9yy6nvcxi7ym1chdvz0vvb309ag";
 "starfont.doc-1.2"="96h183mv5rmxmnkgy6766519cz5nff6g";
-"staves-2016"="9vcnfl7q4czfhyl3zxadig3nzdxg900r";
-"staves.doc-2016"="rn25a0syl0d0n89jp09906y30679mr7v";
-"staves.source-2016"="2vby0srv43ikzb1br9wgnsyxmgqpfrv3";
+"staves-2017"="9vcnfl7q4czfhyl3zxadig3nzdxg900r";
+"staves.doc-2017"="rn25a0syl0d0n89jp09906y30679mr7v";
+"staves.source-2017"="2vby0srv43ikzb1br9wgnsyxmgqpfrv3";
 "stix-1.1.2"="cmrg4yppj3k7ybbnszq2hhijw5ilzz8l";
 "stix.doc-1.1.2"="52plvj0qamq4mxx5f7hh5dkacdk3izdb";
 "stix.source-1.1.2"="vyhrjinlcay2vv5qq23ys653xcc35ya9";
@@ -1123,6 +1200,8 @@
 "tfrupee-1.02"="2srhr23mwajngahy1hcihhivix7x6af3";
 "tfrupee.doc-1.02"="pvmd0anqdv38a904hhafsr9mq5hy7f5d";
 "tfrupee.source-1.02"="sz4z2j5kzk9431pvdhj2l11b8qsw3mlv";
+"tinos-2017"="c1b84zg78hqp8fm15cgr59qrksqd5prp";
+"tinos.doc-2017"="09w8iyqc8538x1d7cm8jcwk1mkmv93vx";
 "tpslifonts-0.6"="6d6zngl99bgbzqidn4249bv3p3ykz5pb";
 "tpslifonts.doc-0.6"="64fr89dkcr0zzxcmshmhpczvbc4byp22";
 "tpslifonts.source-0.6"="0267nah6ffiwph29ay6cpfl9zqm4vgbh";
@@ -1132,23 +1211,27 @@
 "txfontsb-1.1"="lspmvs805a2sjf5my3py4dkai740n05k";
 "txfontsb.doc-1.1"="cgi4jnv4ks21p7m4y4ry4wajzcgkws8g";
 "txfontsb.source-1.1"="4zypgg4dchni1zh8sx4wh4sb5fdh8x98";
+"txuprcal-1.00"="8yk9lvdxj1ap0lcnywllxhzdz8hplk78";
+"txuprcal.doc-1.00"="pmlz2hhjd7a2q3bdbz01yd61w3hf2i79";
 "typicons-2.0.7"="0mmcwr2xcx7hdb4yllndrzq7bxava3yb";
 "typicons.doc-2.0.7"="6bcmldiywvwfhknmdvpj8fdz0fmdizkp";
 "umtypewriter-001.002"="4k8n89mabkcc3pyc6vhj47hvxncz40zm";
 "universa-2.0"="m43cqqy103c1rh5yb8i756mm4nrmrizp";
 "universa.doc-2.0"="a5nmwpyz7v6zbk7s1pq883nb9mhn6ann";
 "universa.source-2.0"="5h127gz30jy4plcbhz11zk2az782v629";
-"universalis-2016"="fwhl8bzgbw53ka6j71zbpc2fxsb20896";
-"universalis.doc-2016"="4w17vpjjhk2wwmc4m6z2n67814fdlrdx";
+"universalis-2017"="fwhl8bzgbw53ka6j71zbpc2fxsb20896";
+"universalis.doc-2017"="4w17vpjjhk2wwmc4m6z2n67814fdlrdx";
+"uppunctlm-0.1"="snyyw4gj0736fqykkf94fhkp9d31ml9q";
+"uppunctlm.doc-0.1"="h6cblhxd6xb6nnp3szb0fwv1r7pdwg99";
 "urwchancal-1"="kk9r6rk48qqq9s8l4k42fgj6c84912bw";
 "urwchancal.doc-1"="z0p6cn21n3cxi4mjijy39z9hacfhkk5l";
 "venturisadf-1.005"="nnn3pq2sx0rayjhhsh2pyavkf7c4i7jw";
 "venturisadf.doc-1.005"="gjzclw11zah2cpmgjdpknflrfsaahq9h";
 "venturisadf.source-1.005"="6yz4vcq9mzzm52ca19kcvgj8fg7js28g";
-"wsuipa-2016"="h05k2wwr89dak3ifgvjgjw0zyvlkyyjz";
-"wsuipa.doc-2016"="nrlpxbqgccmccncqa3xx8l3zlbalkcvm";
-"xcharter-1.078a"="6vzrjx6lylcqiyqjjh8sykggfw9mg94q";
-"xcharter.doc-1.078a"="szak9v5061d04k12fqg71xn9pl9cci98";
+"wsuipa-2017"="h05k2wwr89dak3ifgvjgjw0zyvlkyyjz";
+"wsuipa.doc-2017"="nrlpxbqgccmccncqa3xx8l3zlbalkcvm";
+"xcharter-1.1"="qp5cisn9qldwv26vg4hd50px5fq81acy";
+"xcharter.doc-1.1"="0bq5bm1zcygyijqkw7p3rgi3k9j04g5c";
 "xits-1.108"="dgkldqj163pdlfy3gmjza6hb8lcanzbn";
 "xits.doc-1.108"="bnvwmf9q9r8z9f1w338xadknd9hpywcm";
 "xits.source-1.108"="zpy513c9qwxjdk7rg0qqkq69j719fx35";
@@ -1161,14 +1244,14 @@
 "yinit-otf.doc-1.0"="7rhfxzlfdwl3g0bdlxwsyzzf83f24xx2";
 "zlmtt-1.01"="s9fvrrpb7d5d0590p37xzkky0x9536vd";
 "zlmtt.doc-1.01"="psz0nrmif6hfl96kjmqi0mpbdw1i710v";
-"avantgar-2016"="6x48hsg7wdw4qmf0pyqvb7zmqpn6izqr";
-"bookman-2016"="r9bkd40g0hwcbjhfa2n637i0qyk6ahyf";
-"charter-2016"="1iha6fak3i1mwa6pa6fps80vzik65a4c";
-"charter.doc-2016"="fvn827jh9gfdbs6gnnm83s2yialawz7l";
-"cm-super-2016"="wqamwks565frzn4nf6pq9skasdx5jbmy";
-"cm-super.doc-2016"="246p6vn62gq68n7bnxh1iz258gn3wi85";
-"cmextra-2016"="kqywbrwmg5w0xj0r0qffh1y9z9hlvlaf";
-"courier-2016"="f3rhv0jy01gfhn1rdnai7693y2xy90d4";
+"avantgar-2017"="6x48hsg7wdw4qmf0pyqvb7zmqpn6izqr";
+"bookman-2017"="r9bkd40g0hwcbjhfa2n637i0qyk6ahyf";
+"charter-2017"="1iha6fak3i1mwa6pa6fps80vzik65a4c";
+"charter.doc-2017"="fvn827jh9gfdbs6gnnm83s2yialawz7l";
+"cm-super-2017"="wqamwks565frzn4nf6pq9skasdx5jbmy";
+"cm-super.doc-2017"="246p6vn62gq68n7bnxh1iz258gn3wi85";
+"cmextra-2017"="kqywbrwmg5w0xj0r0qffh1y9z9hlvlaf";
+"courier-2017"="f3rhv0jy01gfhn1rdnai7693y2xy90d4";
 "ec-1.0"="kjq23jms9m9h5af2ri4bxd65w82lli3v";
 "ec.doc-1.0"="a8mvwdx6s8swxhagcc1p36dsy335fhby";
 "euro-1.1"="mpzw5yyqlyb864cqx4wczdnbln4sv4b2";
@@ -1181,79 +1264,103 @@
 "fpl-1.002"="4005wr24r6a2n90469fzz547kid3271a";
 "fpl.doc-1.002"="d7577p5pki08lnv8w6qrcw5qq6kq28hp";
 "fpl.source-1.002"="62kfl70bai91q9zl65pgcpbcmf45nibv";
-"helvetic-2016"="q4xi3bdpp7195sqlkbfgnnccq879v86f";
+"helvetic-2017"="q4xi3bdpp7195sqlkbfgnnccq879v86f";
 "marvosym-2.2a"="pn8zahcj87ab0rgiz9inp97randgz890";
 "marvosym.doc-2.2a"="wqd4660d0s4kxgasi3gv09fbjnbqmwsq";
 "marvosym.source-2.2a"="zygnnzkxxsfxvhnkvkq4v6gis1k7lc6h";
 "mathpazo-1.003"="d950j9d7ywwx0air9b1awwxr0a7486qz";
 "mathpazo.doc-1.003"="zna30q1bzd255h9yjnf35ldaiql0b142";
 "mathpazo.source-1.003"="0ly3fqq1s2sf0zva0jx3llbwkqjm0jv4";
-"ncntrsbk-2016"="r2sgybivplsnj8iqwd62wr0ixhlc8x13";
-"palatino-2016"="xp5kg58y1lzsqba3bv9dz4f8rqi3xysd";
-"pxfonts-2016"="9lxhr2mzcx8qkbhqgqx3y8a4pyhfad5a";
-"pxfonts.doc-2016"="q0zqikbb5d4d8wma6xspga1k20bjx8dz";
-"rsfs-2016"="c6wq6zd58x1dqi2l6p4ljkj3p30lfh1y";
-"rsfs.doc-2016"="2rq51dizzivym4mjl4x7lhw7mg6xmcgy";
-"symbol-2016"="3w7a6aib8mdrap257pxjw8x39lck4nyc";
+"ncntrsbk-2017"="r2sgybivplsnj8iqwd62wr0ixhlc8x13";
+"palatino-2017"="xp5kg58y1lzsqba3bv9dz4f8rqi3xysd";
+"pxfonts-2017"="9lxhr2mzcx8qkbhqgqx3y8a4pyhfad5a";
+"pxfonts.doc-2017"="q0zqikbb5d4d8wma6xspga1k20bjx8dz";
+"rsfs-2017"="c6wq6zd58x1dqi2l6p4ljkj3p30lfh1y";
+"rsfs.doc-2017"="2rq51dizzivym4mjl4x7lhw7mg6xmcgy";
+"symbol-2017"="3w7a6aib8mdrap257pxjw8x39lck4nyc";
 "tex-gyre-2.004"="85dj8qn0i080sa68i5r60y3xd8an1g91";
 "tex-gyre.doc-2.004"="vkzy18djxwbw86msmpw66r5jqp4qm738";
-"tex-gyre-math-2016"="z84v3wzsjwjx7b6wnwnpqmz7xy5v2bic";
-"tex-gyre-math.doc-2016"="41g7sn49g1kxa1dmy5vrv0fzk3rd4915";
-"tex-gyre-math.source-2016"="0wkvmjwxy9ws1h9j1rn0j57dah6z9jvm";
-"times-2016"="jjlr4lksbyjb8z2v21yy9ig0w6x246vk";
+"tex-gyre-math-2017"="z84v3wzsjwjx7b6wnwnpqmz7xy5v2bic";
+"tex-gyre-math.doc-2017"="41g7sn49g1kxa1dmy5vrv0fzk3rd4915";
+"tex-gyre-math.source-2017"="0wkvmjwxy9ws1h9j1rn0j57dah6z9jvm";
+"times-2017"="jjlr4lksbyjb8z2v21yy9ig0w6x246vk";
 "tipa-1.3"="h92fnvz5cv34vdyrpq52pn79z9lq6s0l";
 "tipa.doc-1.3"="s923q6n8h73f74y77cf171xj9w3mrd69";
-"txfonts-2016"="5fbs9mb86nll7k3j9d37p0bfa08b8nb1";
-"txfonts.doc-2016"="80fli8zzv88yh6rbv99dzsihxbrhmxkp";
-"utopia-2016"="cq5h07i2v6n1d5l4x2gjb0qn7594w5f9";
-"utopia.doc-2016"="sla3qhf9ks0020wq82iv1d3mivpbx79v";
-"wasy-2016"="m5fy0m7fkc0rb3alrvy7hv72659szlsi";
-"wasy.doc-2016"="ig05zmll75wy50l3cwpz51cl8p6prpba";
-"wasy2-ps-2016"="rfx65vba7w8kqvmf0ld02ydr7flyl17f";
-"wasy2-ps.doc-2016"="1ac408160y6br39063cswn8ahp2c9rq4";
+"txfonts-2017"="5fbs9mb86nll7k3j9d37p0bfa08b8nb1";
+"txfonts.doc-2017"="80fli8zzv88yh6rbv99dzsihxbrhmxkp";
+"utopia-2017"="cq5h07i2v6n1d5l4x2gjb0qn7594w5f9";
+"utopia.doc-2017"="sla3qhf9ks0020wq82iv1d3mivpbx79v";
+"wasy-2017"="m5fy0m7fkc0rb3alrvy7hv72659szlsi";
+"wasy.doc-2017"="ig05zmll75wy50l3cwpz51cl8p6prpba";
+"wasy2-ps-2017"="rfx65vba7w8kqvmf0ld02ydr7flyl17f";
+"wasy2-ps.doc-2017"="1ac408160y6br39063cswn8ahp2c9rq4";
 "wasysym-2.0"="zmiwhd64zrf8fa9v2iqch0ksj81q5r1n";
 "wasysym.doc-2.0"="a1qr9h6d7s46a074ckxygm9iwyycbyw9";
 "wasysym.source-2.0"="r9iq0wx65zmc2kp7880hw3ws73xb63xf";
-"zapfchan-2016"="4saylq91v4il4ch3cp3lw7dv8x6sf296";
-"zapfding-2016"="6prjnqim0yrvzj1ary8i5761byqi0ca9";
+"zapfchan-2017"="4saylq91v4il4ch3cp3lw7dv8x6sf296";
+"zapfding-2017"="6prjnqim0yrvzj1ary8i5761byqi0ca9";
 "accfonts-0.25"="vnff63f9g4z5bsgrila75lr6lhdl3jhn";
 "accfonts.doc-0.25"="5v97adjwkwxpy4dgw6qiankxfrlz67ab";
-"afm2pl-2016"="vpay128xrpp8jkhyz6kjah0r4vgm2d4y";
-"afm2pl.doc-2016"="ykgp2g6nl86hqgbkxkk0a57g2bqxq1k7";
+"afm2pl-2017"="vpay128xrpp8jkhyz6kjah0r4vgm2d4y";
+"afm2pl.doc-2017"="6qd9phxcw0pw00z3xp8xqcm8nimmsl74";
 "dosepsbin-1.2"="f00pl9rcgapb03h76g4578za2p0awqh9";
 "dosepsbin.doc-1.2"="41pqpdppqi9658cacc0zhg72cp1pa00x";
 "dosepsbin.source-1.2"="0g1nbmyry93ikcgqhcyg48agnabnzpsk";
 "dvipsconfig-1.6"="llmyk9rhvxs90j3jbjrqz76dxxvzdyp4";
-"epstopdf-2.24"="bmp7pw43fdqb16951cwgvj08868dw2n2";
-"epstopdf.doc-2.24"="k3p79k5n5l9maz99ii4j6axqkajvv3bh";
+"epstopdf-2.27"="skajgh4yy7v22v5id7j71x969b38a5gq";
+"epstopdf.doc-2.27"="w27k85cm2c6ia0mh2vdwr1sf32ixmvii";
 "fontinst-1.933"="ynk1l44cw00x0cxmfxvn0kwixgnaah4d";
-"fontinst.doc-1.933"="1738sk9zfwj6fs98j2qj7iw1301hbgyl";
+"fontinst.doc-1.933"="hmwfa3i37nrblgr5amgj79lmp2rjzsrr";
 "fontinst.source-1.933"="cvbp2ml5kiq35qjnyzbpi8p7h1n5m2l6";
-"fontools-2016"="kyvwv19bifbgd5fp5dklsd51i390p5ss";
-"fontools.doc-2016"="8xx7vwvqm0whj1vq79xhp6yi1z99p2hm";
-"fontware.doc-2016"="gqvg71nvxyvgbkqyajlp31fa04fkwicd";
-"lcdftypetools.doc-2016"="4rs86cpyybrr48bppk19s3sqxyxy202y";
-"metatype1.source-0.55"="infq9kahz9ljr5kk338xbww0g4ifg8cq";
+"fontools-2017"="hrh8pzz614i0hxaw0rlnbz73nhinflss";
+"fontools.doc-2017"="38s99cdyw0r9473cqzapflxqx1iashk4";
+"fontware.doc-2017"="fhpys2nypchp67196m2zgckvy1z8182n";
+"lcdftypetools.doc-2017"="r01isdxwq55a5x2mdr904l0m1gv1bzjp";
+"metatype1.source-0.56"="infq9kahz9ljr5kk338xbww0g4ifg8cq";
 "mf2pt1-2.5a"="d57jv2y04fsln3q3znw2qi16j7dfq3ap";
 "mf2pt1.doc-2.5a"="gc2i9fp30877ycz5l3wgphwlg9kpfqp7";
-"ps2pk.doc-2016"="nbgga0zmrwkw010iwgdxngwvzayasyn1";
+"ps2pk.doc-2017"="848kr47vj1a62qqajjhy19jdvawynnkk";
 "pstools-1.68"="pqsq3y183pf9330bk78l7v42jxiywkga";
-"pstools.doc-1.68"="13plmzij9rj94k5vb6q2796z118dl55b";
+"pstools.doc-1.68"="rrhgvrgw0jjwh91az5m2w57p5pmlf4yb";
 "psutils-p17"="g8ci3q98i9cvpw1s7l3mqsv39wqx3gac";
-"psutils.doc-p17"="5rack2s9z5rgq8wb1wbnim6m3fzbmjxh";
-"t1utils.doc-2016"="kkzpmbwxjylggv3xgk0j3h2xsn4bplbp";
-"ttfutils-2016"="hzj3dljvfr9ypzpjgpwxadxf225yi8zj";
-"ttfutils.doc-2016"="nawdsilkw98qwx0zsnsv8vp6dllzvvai";
+"psutils.doc-p17"="rqqrncyk9zsp4dpys7x9i8rwhk5g6y1p";
+"t1utils.doc-2017"="pw6r9p8dy7na42m2xcg7dh88851xqxyf";
+"ttfutils-2017"="hzj3dljvfr9ypzpjgpwxadxf225yi8zj";
+"ttfutils.doc-2017"="ydzjsk34ghbbaxcg7lq1znh3r4xjrw6a";
+"aleph.doc-2017"="jxxnmx8cs1dlr38bzspfh98rp7a2ivsg";
+"antomega-0.8"="jxriw18jifvf24fz8nqql5izp67p8z5a";
+"antomega.doc-0.8"="q9jb5ks7gfxg5gjhkpng5bl0wwbwp2ph";
+"antomega.source-0.8"="l2gs7sapppwxiy712i8vkwfmmc96ch1s";
+"omega-2017"="0v7wvg0vkrwbarcxfnp8k6w09j86y1pv";
+"omega.doc-2017"="zily3hjd30g14zrvj67hdp8nkxk9l5g2";
+"lambda-2017"="ykxajgkmkbqp7l79c4bcm5qg4xnyilxp";
 "edmac-3.17"="29h8y4lna3sv0k7wqmbgrb0mvdxwz330";
 "edmac.doc-3.17"="il4k6vswcqp00005n0084nf99bwxp809";
 "edmac.source-3.17"="90wdkd3rhm8ymi2w9hb64acsy2bzqgg6";
 "eplain-3.8"="s7f9x73rzb5yf4b4hh5z74s8fymilfck";
 "eplain.doc-3.8"="77i8dzdl4pijzdxmv45nqlj61skvyqqd";
 "eplain.source-3.8"="xwq0gc7jb427nf5yjm77gfng5z56bpiy";
+"jadetex-3.13"="79dd0y9m791m62b48pnkyw4352271a6d";
+"jadetex.doc-3.13"="ix7992xnb7xb1789n6d48dv98imfc4m2";
+"jadetex.source-3.13"="3716mhagkrr60rjj9whznfh3v5qwvyv9";
+"cyrillic-2017"="1ydilc1c5h6bzsxd5frnjiaz3vhi06g8";
+"cyrillic.doc-2017"="a5mg6w5509iwaaikdkb4ln43kg8assqb";
+"cyrillic.source-2017"="10264p9pik69h97mjl3h8ah6g4pfdbf2";
+"cyrillic-bin-2017"="h64b7gacxv96hbs0mjxx0s65s4z5znrh";
+"cyrillic-bin.doc-2017"="h5rrz5y4bnd1lqwggi6w78858rz5d7i6";
+"passivetex-2017"="arr43134jllipw1jl9cbrgnnk1gav4d9";
+"ulem-2017"="cissyhv0gisjf9lpwzxm18ffwxmlnndy";
+"ulem.doc-2017"="b2hvc7p6b57q1qqn44pfrchxrb5ybzas";
 "lollipop-1.07"="c71n12rvjhafkq26bca7q7hxjy5b9xdv";
 "lollipop.doc-1.07"="18wdsl5kq7xwsqhr6v6ldwz66b8xk60z";
 "mltex-2.2"="kkc5ssb6rd3f4kig16sc30npjayw4ab2";
 "mltex.doc-2.2"="qqr7ia4wp66zgasb8sm0bd0qclw6zn7l";
+"mxedruli-3.3c"="f866q8w776cr7k7mxll72va7zb0avsl3";
+"mxedruli.doc-3.3c"="vhcvl3k5lzb1f0g0ghz1rf3cnsy0cp58";
+"omegaware.doc-2017"="nfj0j0r0afccsyx18v3q10wv5pnl3qbm";
+"otibet-2017"="66pn5bmsfw3d7l1prcr8p5v6w93lqfrm";
+"otibet.doc-2017"="i308lrxhgqi1gpsh5b5961xisbb9i3si";
+"otibet.source-2017"="hspwgiv9bs4ncmy1yi02jw8ghw2lxcpm";
 "psizzl-0.35"="qx0mhll90g0l0aqzfsjqbn43gxfincyp";
 "psizzl.doc-0.35"="pd8v22iq76j5gkkv9k286yz9i71j8xcn";
 "psizzl.source-0.35"="9i1m36bp80bif8k74q7572j311xxbjlq";
@@ -1262,8 +1369,11 @@
 "startex.source-1.04"="x6bhcd76532n0sfy3cs74whhyw6gy3p3";
 "texsis-2.18"="0mlgxg5a7q80hvpigvz6sl2f6lnkfmls";
 "texsis.doc-2.18"="wawynbj4gxlxbcg8wddrwdlicnlhia14";
-"bartel-chess-fonts-2016"="2mdy450109a2lz95qv50y6wxhhif4nr5";
-"bartel-chess-fonts.doc-2016"="xj41i6y3ssxdpqy3j60pdx2scsf3qx35";
+"xmltex-0.8"="0i9h1jakwdh439bi4wq5i4mzfcgmyd8p";
+"xmltex.doc-0.8"="7xl5q081558wnfdyb2r225kckb0wd32x";
+"xmltexconfig-2017"="bm9ibaf0skn5g3ykwpn8gyg8hr80v59v";
+"bartel-chess-fonts-2017"="2mdy450109a2lz95qv50y6wxhhif4nr5";
+"bartel-chess-fonts.doc-2017"="xj41i6y3ssxdpqy3j60pdx2scsf3qx35";
 "chess-1.2"="j9hxdp5kz4dv6wwgy6azrw6yjhdq7384";
 "chess.doc-1.2"="n9xxs3zgzz1vhl7y1d8qxk4cj8fglhpx";
 "chess-problem-diagrams-1.12"="l704rprn6ybj2x2gn469z8zj1kyw8gas";
@@ -1286,13 +1396,13 @@
 "gamebook-1.0"="wnylf38d512bq82hi5jwsf9gxdlb9gai";
 "gamebook.doc-1.0"="f7p5nzs88ps42vwnhcph7vd36s5xfrxg";
 "gamebook.source-1.0"="hgbz9v0wg5kni2lc43yb179b8xqh8mmr";
-"go-2016"="an0cdspxjbbirkz0isbyvknics2pmkmg";
-"go.doc-2016"="17frpsmqhyai4y23xb2zm9qsl18xmynf";
-"go.source-2016"="lw82s14fw0y1yfdhvmmhwy0msyawbcal";
+"go-2017"="an0cdspxjbbirkz0isbyvknics2pmkmg";
+"go.doc-2017"="17frpsmqhyai4y23xb2zm9qsl18xmynf";
+"go.source-2017"="lw82s14fw0y1yfdhvmmhwy0msyawbcal";
 "hanoi-20120101"="ini1mf0dqm44vabqlqqiw52wpcx3qimh";
-"havannah-2016"="ypcxnwirfyjp28wypyz8gp6zysb26cn7";
-"havannah.doc-2016"="4spiw588y9cw8vvr2b81qp0q61kfbjjf";
-"havannah.source-2016"="jkbnv839cn0i9dnl2v0v9djp630cdzdk";
+"havannah-2017"="ypcxnwirfyjp28wypyz8gp6zysb26cn7";
+"havannah.doc-2017"="4spiw588y9cw8vvr2b81qp0q61kfbjjf";
+"havannah.source-2017"="jkbnv839cn0i9dnl2v0v9djp630cdzdk";
 "hexgame-1.0"="w9isbb0mqra4kkg0cflryikhm172b7yb";
 "hexgame.doc-1.0"="5xr1vlivrwzhk0zrb2ri8lfc5n1i3zcq";
 "horoscop-0.92"="xw7yniakff9y6f8vsp3rjh9dpx4lidym";
@@ -1302,18 +1412,18 @@
 "labyrinth.doc-1.0"="xm6sjrs773g8l7x04m6k16a8vzb8nfd4";
 "logicpuzzle-2.5"="7ynzg0ycgp17rqxf4wv3vkxbkwwyh9c3";
 "logicpuzzle.doc-2.5"="snzhcidhpnkjwbrb25lb9g18bc13bl5w";
-"othello-2016"="fp9s19jk73qrplyhjnicv8q066a98jli";
-"othello.doc-2016"="q1dqp0zdi9ixxchxnlk60zwfyszbx0ry";
+"othello-2017"="fp9s19jk73qrplyhjnicv8q066a98jli";
+"othello.doc-2017"="q1dqp0zdi9ixxchxnlk60zwfyszbx0ry";
 "othelloboard-1.2"="ymadc4vpkzc0lkl2ws340jf5vzjiq1i9";
 "othelloboard.doc-1.2"="1vi1lc9c75r9qqrhmjp2j7d7p94asbv6";
 "pas-crosswords-1.03"="90v61cxl5ab12bvgnj4k9dc5q6v3zg72";
 "pas-crosswords.doc-1.03"="pm76nswngl127k5c2vwm9nwscci1dcng";
 "psgo-0.17"="487m1ggdz7a554viflmp4cg2kgdw9ghv";
 "psgo.doc-0.17"="cw2v9zzpbmqqw8k8hdq0la2dhdggip3d";
-"reverxii.doc-2016"="2w8l7rs761h556il3d875k0sc86xll98";
-"rubik-3.0"="hihhq6z4ir4x34b1ch02inpnk2n6d3iq";
-"rubik.doc-3.0"="3jaix5apbc5nws8smcfw2872vi2slnkd";
-"rubik.source-3.0"="x1j6imfbqyfm8sv27xd6qkq5lsjnhsx8";
+"reverxii.doc-2017"="2w8l7rs761h556il3d875k0sc86xll98";
+"rubik-4.0"="pq67zjd2psblb2yfnvy3bqxzbsx29f3q";
+"rubik.doc-4.0"="p15d91hwnm9fxkdw8qhjkqck9vq81hdn";
+"rubik.source-4.0"="pfvjcnkrvf3grzj9f0v8sfbhc46mbw22";
 "schwalbe-chess-2.1"="jnx18kdrnb81sd144pc1a1w88vy5i5cl";
 "schwalbe-chess.doc-2.1"="2n2sk0m2y8q51bps8y2l4b9mw0scc1qc";
 "schwalbe-chess.source-2.1"="bg76f4xg21jwq205qw2dg79z72dcjw4x";
@@ -1321,6 +1431,11 @@
 "sgame.doc-2.15"="pm7psgqwg5prx0qfj6wh234raqw849wa";
 "skak-1.5.2"="1rqlk8zdwjhzzjbd7ns4z1a9mhmf0ki5";
 "skak.doc-1.5.2"="2krfcl1wnh40knsnpk775rj6snphih9m";
+"skaknew-2017"="8by6yv9rgn4zbzlq0szcm4yvg8pqfaf6";
+"skaknew.doc-2017"="0p383qca6f0f56skhgvjcwprpb04gldj";
+"soup-1.0"="q2i8ygqvpl9mjmcc41ramm2f51h2hp7v";
+"soup.doc-1.0"="sdh5hcm7sl6slkl45pnahimcbfr7f97p";
+"soup.source-1.0"="qarjlwwpzgr3ih2dskaqa83dy2zdgka2";
 "sudoku-1.0"="584gyns58jqsm1ya8l1z63a1wifrgnlj";
 "sudoku.doc-1.0"="rsn0w51h0s7j9w988mmh2q455cx7amqw";
 "sudoku.source-1.0"="cpylv1bwk5yjjfzx8kfz3nha8yfjj2x7";
@@ -1332,147 +1447,11 @@
 "xskak-1.4"="was0g67s4bifg8ykdbf4a53p0g6486gx";
 "xskak.doc-1.4"="4jnczqr0bqxchwmaibg5i23vja39hrjj";
 "xskak.source-1.4"="x0ab6f461xbcw6k3dydxaif29rdzc0s5";
-"abbr-2016"="n55llxl7fjmx6p1z3ckjfj94dxkg1n0v";
-"abbr.doc-2016"="9lgcwpp4fw2zjx2rsp9w5szi6v2pdsn4";
-"abstyles-2016"="2zmzwsgwh4rv6ysnjjk35cihbifs0jir";
-"abstyles.doc-2016"="xba8x95rimsa16xhr7nziglk7djzv6w8";
-"barr-2016"="rsgsgzki68jgx8d4r05qj1awvi02rm33";
-"barr.doc-2016"="jfhxfjazvlpcvrl6zjd1sw2ghmcsscmr";
-"bitelist-0.1"="22q3ivacwl5p0c8plgg1gjz8413l601b";
-"bitelist.doc-0.1"="n00mlj88l6djwcxzj0l6pxiiba94kpl3";
-"bitelist.source-0.1"="w38ccrprx1rn0pc34mr29bnx7gaxa7k8";
-"borceux-2016"="ls6xjxrggjzphr4pl71m2va9mndh1r7v";
-"borceux.doc-2016"="zdg5n9rxc2sfkyi1am8jka05avi7hyng";
-"c-pascal-1.2"="m4x5kfq1vm6vzv0ic910fqi1qijn7g34";
-"c-pascal.doc-1.2"="v6wqph0gaibfv4cwph5w0axp5sf70m6w";
-"catcodes-r0.2"="haljpnhhzvyhmnda9vgk77md5zm88773";
-"catcodes.doc-r0.2"="4227wyg04xryg33b39d81nlh6aaja1lq";
-"catcodes.source-r0.2"="6ljn2lwg4bzr9c02d01vh0saja9sz9yf";
-"chronosys-1.2"="qswnnwyghvsbjf3ddvbl7nl00qxwhs6h";
-"chronosys.doc-1.2"="m11jpa7crg095qf03qx7gcrvcb41f83a";
-"colorsep-2016"="il1sig8hzmvq8q0hlbh6fir15rrl5zc7";
-"dinat-2.5"="a1gcgwkj0pd1lqdm20356fbjram3wpa0";
-"dinat.doc-2.5"="6dzss5231fdqjzs8j7z4gfx5iga4m895";
-"dirtree-0.32"="xgxmz79hj1q6qyfkdvgj5nm26865dfmm";
-"dirtree.doc-0.32"="im2rhm2fmqk1snrhvrsm112jw1hwcyw8";
-"dirtree.source-0.32"="pyfcid8hir7vvm6fpwimlfgs65dgzfm1";
-"docbytex-2016"="m4jkx2gf05q3ffwfkrk4x9bcwf9f3dmw";
-"docbytex.doc-2016"="01w9mkddxm1l9i12i5n5i5ar81xfn9b5";
-"dowith-r0.32"="vdgkjxphpmycfcsimxih7gnhv58hd9vs";
-"dowith.doc-r0.32"="ql8hdyxcgss7rvlp1913rp52wn4wjvxn";
-"dowith.source-r0.32"="xq0r5c58clz8qzbhz01gv2ph1rs9wg1n";
-"eijkhout-2016"="hdb3ag2knc67ksx39hmax8x83l0d41kl";
-"encxvlna-1.1"="kz3nvz29czk573cxbi5a5l3mbjs3vfkh";
-"encxvlna.doc-1.1"="gv5k36s89g2zslq75s2j7ffvwdiz4lkb";
-"epigram-2016"="0mg36ybg934n4jxgpf88lnvvc0za59ya";
-"fenixpar-0.92"="61jkr83g6i0bqmp0qg4w09gj7gwcdn96";
-"fenixpar.doc-0.92"="95h02nbzq72mmblzawgqsk8530wi1dpb";
-"fltpoint-1.1b"="q48n0d38d8y8m4z6lgmfza4gh1mrzkjn";
-"fltpoint.doc-1.1b"="6ljc5c3g53ig6yj7blcfqy43yvlw5fqf";
-"fltpoint.source-1.1b"="l5ybd1xn6abfhq5kjhvig8zsp721ldzg";
-"fntproof-2016"="bkh1b1j8zlbzmhpif5ji82gwmvg0aprj";
-"fntproof.doc-2016"="hhhxpfkwqpdj0wz78pzg4nbfyzh3j82f";
-"gates-0.2"="awaxppd6dhv239x03vpwy2hn2zwldmna";
-"gates.doc-0.2"="qqmjk1276kdv0rvsv86gi7ysl3warg95";
-"gobble-0.1"="6hlqjaz609rn1q7v2vacb428m3prpdq3";
-"gobble.doc-0.1"="5h4fnic16yz5x517wsfr5l0wna69an8z";
-"gobble.source-0.1"="mxi6gci6g3y41ywya5cq1vrdqzc83jab";
-"gtl-0.2"="qgz26n49hlpc5s3ckkbxciamp1qvii9w";
-"gtl.doc-0.2"="wk69mj67d9nfqvyk3cw2crczk4mnjffq";
-"gtl.source-0.2"="4cza716i596dxxd0byx4jb7xgy6sc4wz";
-"ifetex-1.2"="nwg19z2dwa5jm6s0yczb1kiqdpmgrmx0";
-"ifetex.doc-1.2"="gimfp74mz131q7ldvfbvqscbi9qwk0fc";
-"ifetex.source-1.2"="67xfw4zg52v5m44d1kw6i32rb81k2yb8";
-"iftex-0.2"="3amzn5jjz9l90w90rhrrq75shl1v731z";
-"iftex.doc-0.2"="n514jbc0x2jxsk39lhayr74xpzfgqvn1";
-"insbox-2.2"="n1wbssqq7h2g00jmvy1g9cx2pb8lp8n3";
-"insbox.doc-2.2"="i5c06kh17g5ghsjivlxsipgkd0ab05x9";
-"lambda-lists-2016"="kpvnf57b1s1whhrrrng7j0zvf0cka90v";
-"lambda-lists.doc-2016"="ai0gzwilj0cm1129pl5nlwc9ddsgpchk";
-"langcode-0.2"="6fwjx029l2nalfz81qfn1k7yp0z7iycb";
-"langcode.doc-0.2"="vq8m73ckjicm53q7v8q5k0rhldq55hkc";
-"langcode.source-0.2"="nk07pqb0mfq3vzpdddhb8w3w85svpbq9";
-"lecturer-2016"="4014kfbhxnf4wb9ndfh0qfwbbrvz0wwa";
-"lecturer.doc-2016"="avsvzihsa6jn0abvd4122k358w5sf4y0";
-"librarian-1.0"="5siy7c2xclp1c305vqiayp0n5dzil1gh";
-"librarian.doc-1.0"="8nxz7ac5hdp9820nsfkvhvv0bn55idq2";
-"mathdots-0.9"="6avfq6dlhbqw1i3jrjgcdbdzx2a0w5nq";
-"mathdots.doc-0.9"="syy0i8rjssr81sy26xcx43jbripqx9d9";
-"mathdots.source-0.9"="zpl4xjhcq4hs18hqiyljy3lfyx9xbng3";
-"metatex-1.1"="jidirfi30wf0b4aq279lim2pylirmv3r";
-"metatex.doc-1.1"="b0rgim8d9dns88zvf283czk4zgsvvi3b";
-"midnight-2016"="5zah5lcyxgq6zxdpazqy3lqv7vxl9dcr";
-"midnight.doc-2016"="cl4ff07jfflwqpmbi7d1phc65hvhaif7";
-"navigator-1.1"="0q23aqjf31y78hxmlhx4mf04c95rwdn3";
-"navigator.doc-1.1"="vxgrfimg900qa0ibwpbwcbv63rbaplp3";
-"ofs-2016"="1vqjznrdyjqn6ygq61h8rnwjymkx5kpj";
-"ofs.doc-2016"="8i8acpk75frksj5wshpjpcazbd93whzy";
-"pdf-trans-2.4"="f2qw1mx9qql6xqsnnwcvqx59baz3gzyl";
-"pdf-trans.doc-2.4"="vbg7kp37w1p727nia0p1imyvxhqgzgna";
-"plainpkg-0.4a"="xsvwz9z9f2jirfyzggiv49y0rfmhmnaj";
-"plainpkg.doc-0.4a"="b0c8mi4mr6bjdhrwbcplwjw920l4zmbc";
-"plainpkg.source-0.4a"="lcrm6734c3dv44wqcf4sp1c1aic0vqqw";
-"schemata-0.8"="3qik2nhhwhpgkwnay4rsmglh6kffm1pz";
-"schemata.doc-0.8"="7rggpri0l5pj9rppz8ynd8d6jz0v7ssp";
-"schemata.source-0.8"="qixmvsyiaj3yl78053y2s8xgp8ba06f5";
-"shade-1"="4ywc6gkvkgm5fiq6avik748vzj7f23g2";
-"shade.doc-1"="ax6w6sfryrzmjdff803hp6qfc9x7knkf";
-"systeme-0.3"="z5imn7jxp57sqqh6qhliinmacb8krj3j";
-"systeme.doc-0.3"="p4w018mvrms7kv9q23ff3wq6bjz1a220";
-"tabto-generic-2016"="libhmc3f9mcs93xzi22qhk8nyy0vzv4x";
-"termmenu-2016"="b9z1s2xibg6vcrd5qv1n1zlparqlwf3h";
-"termmenu.doc-2016"="0fqaygp9h3wr9x8ghfkxnsi9w1wfjis6";
-"termmenu.source-2016"="xygav2l9gll238dyqa8126sn9hc1n1w2";
-"texapi-1.04"="4ysk0vfpgxfdkpaag4982k7ni4qkksjd";
-"texapi.doc-1.04"="l2753w2z702418c8shbami8hzdsyz4lx";
-"tracklang-1.2"="6v9dxcrrxw78k5hqcpzdni50028vly6y";
-"tracklang.doc-1.2"="z8krkiscbk7jlhzigyjbhzxfi7g92l6y";
-"tracklang.source-1.2"="d2xbwissg3bpynl63d7rfq7jdwr3bdzc";
-"upca-2016"="hfay60269pv5n1r64q1r9d0lqljih70w";
-"upca.doc-2016"="czzbjifd9bdw0g9c8s2b76sq1cmw3hjp";
-"xdvi-22.87"="k7hd911mlpzg8z52gybrgglkix8jxq3p";
-"xdvi.doc-22.87"="r94flfw1kfqmmsawj2dc89wkfr06jfqn";
-"xlop-0.25"="qmjl0i78m1d4xz6bhjaq4p36wc5pg0jp";
-"xlop.doc-0.25"="m63jci5hk785fjq29p7hr5455gc0np71";
-"xlop.source-0.25"="64yfba0h51w4zrp2ps6x0x3xv9x2i15p";
-"yax-1.03"="7kwmcvp6dlxj4jp0xp599f6469zhwnwl";
-"yax.doc-1.03"="4fh5pdqkifpv1zynkl1ycw0xi817wy5h";
-"apnum-1.6"="sg23pp5g0fk07k7dzrx7s9l5apvpis88";
-"apnum.doc-1.6"="rgdcfmfi5ds10py28mvyb25dld6hisgv";
-"epsf-2.7.4"="55vrh3nmvb5p1nkkpwhrq9glsf64bc3k";
-"epsf.doc-2.7.4"="b78n5gm14qk3brywpz4prglkqnpx9fpg";
-"fontname-2016"="sczdif1wria35c8rn5d5lp89pmwf2qp7";
-"fontname.doc-2016"="d7n633f3c9jagmc0yr7439m681ff4yxj";
-"genmisc-2016"="wyk31w93k04bqfqik1ad1q7bx88m6v4b";
-"kastrup-2016"="qdr5cacl37ans3zd5jlzwr2356xxgswy";
-"kastrup.doc-2016"="mvq3abnsjmzb3kv4c2z116apbzgfh2dw";
-"kastrup.source-2016"="13vj32k48f0ahs5694zrsvk953kxjrwc";
-"multido-1.42"="xvw8537j730srqyigrb1q367g73zh29q";
-"multido.doc-1.42"="qp7jdx0jca995df559f1ji2l32jz2h12";
-"multido.source-1.42"="qc1473wf17ppqxy11xgz226w4d8zrxk8";
-"path-3.05"="gxlifrd0kfxajy8viylk3wsfkycd96xv";
-"path.doc-3.05"="0pbd67di200vghv2a4bp7vwss7bsbkjv";
-"tex-ps-2016"="jnzaqr3pc6a2bfh7jlsysc8hy30cq4xp";
-"tex-ps.doc-2016"="g377qq7n63mqil18vlfgimfd589pa1qm";
-"ulem-2016"="cissyhv0gisjf9lpwzxm18ffwxmlnndy";
-"ulem.doc-2016"="b2hvc7p6b57q1qqn44pfrchxrb5ybzas";
-"classpack-0.77"="dybfkvi6ykzw4s03xgz8r7n88xir9zzb";
-"classpack.doc-0.77"="390v2v6vabq679gr2yqvmyq26x6l6lz0";
-"classpack.source-0.77"="mr188ykwygc0gsznl43vlbx33wa2imyd";
-"jadetex-3.13"="79dd0y9m791m62b48pnkyw4352271a6d";
-"jadetex.doc-3.13"="ix7992xnb7xb1789n6d48dv98imfc4m2";
-"jadetex.source-3.13"="3716mhagkrr60rjj9whznfh3v5qwvyv9";
-"passivetex-2016"="arr43134jllipw1jl9cbrgnnk1gav4d9";
-"tex4ht-2016"="3mawaapvhb44dismhmc026a9mhkvbj26";
-"tex4ht.doc-2016"="hi6p91idcncr8n8hiz6vb4fpwggm1d78";
-"xmltex-0.8"="0i9h1jakwdh439bi4wq5i4mzfcgmyd8p";
-"xmltex.doc-0.8"="7xl5q081558wnfdyb2r225kckb0wd32x";
-"xmltexconfig-2016"="bm9ibaf0skn5g3ykwpn8gyg8hr80v59v";
 "adtrees-1.0"="1x6lr97397fgi6gapxaa99m9d1a095si";
 "adtrees.doc-1.0"="9rpilrcmiz6js9r3mf3d574aflbbq9pj";
-"bibleref-1.14"="7ckd78aachgynx0h7b6ssrfj34wmnv28";
-"bibleref.doc-1.14"="10xq523fj3v68dwdy3k63zxnbsqc2d1h";
-"bibleref.source-1.14"="cg9pqpxdg8lxbl7i6r8kzxgcp65wlpcl";
+"bibleref-1.17"="iy1di86ln0py3vcb8jrg286m81391a3p";
+"bibleref.doc-1.17"="im96s1905v3bb7ziayp32lgf1ykvfcmg";
+"bibleref.source-1.17"="m44k34q55b94s5mmyrip25gzq0ra5bgp";
 "bibleref-lds-1.0"="adlzl3qk74vn1z0zdqn9cm6xqbwd8j6x";
 "bibleref-lds.doc-1.0"="cxvgzvgkicpnam43l53vfw9za8gigszv";
 "bibleref-lds.source-1.0"="8ndhf2vnjjii0xywr848janqh7xzdhn3";
@@ -1481,8 +1460,8 @@
 "bibleref-mouth.source-1.0"="drlwpv0xvyrb259ipq71p68929cmp6ka";
 "bibleref-parse-1.1"="ddxzanvw07cnj984ylsmjybwvyl41sg3";
 "bibleref-parse.doc-1.1"="jcsy831ih2d4scdsydj4m9mzlyahqlip";
-"covington-2016"="s1fv64s9jz5swxkkg960dfqx37i0wvvi";
-"covington.doc-2016"="xiv3ymrc8s2hdn54qk2j88daikfb114h";
+"covington-1.4"="3jzwqlh20n9m5hw9sgadnh0rqwd5vshv";
+"covington.doc-1.4"="aj2qfrwfmr40i8jisj49911g2hpgg24d";
 "diadia-1.1"="p95dkjaf17pn4qm3syrd2wm4680qxa86";
 "diadia.doc-1.1"="s8q9nnwajrravg7418bldainfxpm874j";
 "dramatist-1.2e"="r8ldaql5igwpsv1bm35jgcgpnlr817m1";
@@ -1504,36 +1483,35 @@
 "eledform-1.1a"="34050azcglr1nl4ppvq8f01dffc3hlpm";
 "eledform.doc-1.1a"="qdp4sms5cf7wzi1kdm49fgifs3845whs";
 "eledform.source-1.1a"="53dda59p3czslircl0a23d1dqfh2r45k";
-"eledmac-1.24.11"="4060zpp37i1dkg0g8vv20fbyryblshzz";
-"eledmac.doc-1.24.11"="hfvjyx4zlfvdgd2fdvmjr5bqrqfqln85";
-"eledmac.source-1.24.11"="58gmmb590i32xkniy30p9kzn2hcpgjgl";
-"expex-5.0b"="f26q32yg6rr36snjiphy6k96qr9jsb7l";
-"expex.doc-5.0b"="8jlksa4dlzalhqw576lvl1l77vb2ckmb";
-"gb4e-2016"="bzbpagrikdh6z5pbs416l090s559v7i5";
-"gb4e.doc-2016"="72mcbwb79gj584p24lpxbvvqj3pbr77x";
+"eledmac-1.24.12"="327rpi6mzwx3h2nln4zra3pnyfnmg92a";
+"eledmac.doc-1.24.12"="3hygl6qp9sf8gnn02p78bny40bnnmgc5";
+"eledmac.source-1.24.12"="kiqy5wz8qyzxxszhf6k37ricjh13asca";
+"expex-5.1b"="xl0jyizia4cwch1z399dl0r5xz4anxgy";
+"expex.doc-5.1b"="a903i8yj7kqr49jf3f40rrf74j4bn1cb";
+"gb4e-2017"="bzbpagrikdh6z5pbs416l090s559v7i5";
+"gb4e.doc-2017"="72mcbwb79gj584p24lpxbvvqj3pbr77x";
 "gmverse-0.73"="9cx4zlykh23lwblr7q2hbd8d5dffvw8q";
 "gmverse.doc-0.73"="zbq9drljrrh0ms8k5z7ndldilzgd2l0w";
 "jura-4.3"="bparkzmzy3lj0ddqiaw3696msam3v0b4";
 "jura.doc-4.3"="hzgy1v1yl2yrnvi91j2hbs8jhd1x3djh";
 "jura.source-4.3"="0z6qb08mpblnl0jhjx8cmhk0vrciz0f8";
-"juraabbrev-2016"="mb4ikhwg3fjpdrsf8azzvy964gihs0ja";
-"juraabbrev.doc-2016"="i9w4ykaf8q152pc6zag4wykdlfvnkl0l";
-"juraabbrev.source-2016"="9ixz4m7y6cslk2977n0nh792nhqa6l6s";
+"juraabbrev-2017"="mb4ikhwg3fjpdrsf8azzvy964gihs0ja";
+"juraabbrev.doc-2017"="i9w4ykaf8q152pc6zag4wykdlfvnkl0l";
+"juraabbrev.source-2017"="9ixz4m7y6cslk2977n0nh792nhqa6l6s";
 "juramisc-0.91"="w2nzviyg6498v4x8vqqp8kc9p2cr2fyb";
 "juramisc.doc-0.91"="0yczb9jcva6i9wvkdpwfd0l9c522krnc";
 "jurarsp-0.52"="bwldii418vmf3b37gnm56f65bzyjrfhj";
 "jurarsp.doc-0.52"="2rqnnrbk56p5i1bi7r9l5y9q8mbdmiip";
 "jurarsp.source-0.52"="0gwifinaym6yjkimyf2m3dg10pld0i4z";
-"ledmac-0.19.3"="b5bn57g4dldnpifavq4kl1n3i6ax3drn";
-"ledmac.doc-0.19.3"="86gh96hqr941l2hk01q1jv12xmlzb0rk";
-"ledmac.source-0.19.3"="g8cfs3hrv640ir2n58zjzq0x17cjxvg9";
-"leipzig-1.1"="j4bfc0j26a00gl4f6xg615jqj03biw7r";
-"leipzig.doc-1.1"="acccmkfq874v3bybyqhh49p31lrm0p04";
-"leipzig.source-1.1"="3kixknndj9jc07khwxfa58zywm8yz2hm";
+"ledmac-0.19.4"="kxh78l0ap8zr2rncqg5j4vl7h2f7ajb1";
+"ledmac.doc-0.19.4"="qqziv44yv5fzpk5dnfhjrzdfi4v63558";
+"ledmac.source-0.19.4"="z6n9h86q7yk9rfq87v6ks03b5kqw7cyg";
 "lexikon-1.0c"="ifdy5rb6ggar6w643y94y729bbn75h41";
 "lexikon.doc-1.0c"="52hidkd52nx6dz7ga1lipv6r9l3kcnnh";
 "lexref-1.1a"="4av5iad393sb2vqplzfra63wl1g3pwpd";
 "lexref.doc-1.1a"="3nzknrs8c80yxhw9hf0qpzgx3lpj4hsg";
+"ling-macros-2017"="166zs29qcy5bs1ml9bl5q4ydvx15yhlz";
+"ling-macros.doc-2017"="7b31g3wp6vks8b3h01pf2ifnqgr1r1rn";
 "linguex-4.3"="srm8cr4dr0s29ydpvwf2mhm5gplgv18q";
 "linguex.doc-4.3"="w7jgr0hkj6m368p6x2l3b37m9px04b4f";
 "liturg-1.0"="73vvqhnk6ll3ibzl2gk7znkfm57k0286";
@@ -1542,53 +1520,57 @@
 "metrix-1.3"="9k344dp2nr280nwyk9h2pl5s0jncil9q";
 "metrix.doc-1.3"="y4v418yjxn4c1468i822ms96wlnp1m7c";
 "metrix.source-1.3"="bzri3z7xy4k63z4wsy5yri6cfc4m3hng";
-"parallel-2016"="d8gik6iva6h6l2imix4bxb5w9p8j87ka";
-"parallel.doc-2016"="n3dww00ms1a2m3v6fflm637hiazdrqrs";
-"parallel.source-2016"="vkx4q8liyqx0n70dpq6pqv515x1gbr7f";
-"parrun-2016"="3b2gnwqll6qf6x5f6gzh9ym1vsba6522";
-"parrun.doc-2016"="8v8338i5c6lcdgcdcwhfkb0d5brc3n2z";
-"parrun.source-2016"="2bvqjwsq7ngr7n11vnqnwhqzldrb73ri";
-"phonrule-1.2.0"="yj046x5dcl3gfnmyf6nf3z0f27a03f6m";
-"phonrule.doc-1.2.0"="nvdv1ca4qk6h6h0w2n90r87qmlz2i4qg";
-"plari-2016"="nhdf38fv3h24zqq0bzwax05bfvrzmx5z";
-"plari.doc-2016"="i09il1b9f8cchmhc9pj6ndngyym5vd4w";
-"plari.source-2016"="5n2x3k1mf9palhxxlqpqkffd3ms3zrfz";
-"play-2016"="r6ryb6v6svlfv9i9j6r2a7ciks2k53bv";
-"play.doc-2016"="b5kjgd2gvgz5228m98l3lhaawmdfp40h";
-"play.source-2016"="jk04llsraw9d9gl5grvr019rjnkha1h3";
-"poemscol-2.72"="y5xvi7bqj3949x8bwj25777dydk0zyjk";
-"poemscol.doc-2.72"="szj0ga2m9dbs2dpsj1p8q2q4kyky10rl";
-"poemscol.source-2.72"="08a02nsdnqilyr91c32q1snycd7gbw2n";
+"parallel-2017"="d8gik6iva6h6l2imix4bxb5w9p8j87ka";
+"parallel.doc-2017"="n3dww00ms1a2m3v6fflm637hiazdrqrs";
+"parallel.source-2017"="vkx4q8liyqx0n70dpq6pqv515x1gbr7f";
+"parrun-2017"="3b2gnwqll6qf6x5f6gzh9ym1vsba6522";
+"parrun.doc-2017"="8v8338i5c6lcdgcdcwhfkb0d5brc3n2z";
+"parrun.source-2017"="2bvqjwsq7ngr7n11vnqnwhqzldrb73ri";
+"phonrule-1.3.2"="7gxkh4k5g2znwdrrdy394iw08khwnkvd";
+"phonrule.doc-1.3.2"="h353x4isnarn0bja89cb7104n4wda95l";
+"plari-2017"="nhdf38fv3h24zqq0bzwax05bfvrzmx5z";
+"plari.doc-2017"="i09il1b9f8cchmhc9pj6ndngyym5vd4w";
+"plari.source-2017"="5n2x3k1mf9palhxxlqpqkffd3ms3zrfz";
+"play-2017"="r6ryb6v6svlfv9i9j6r2a7ciks2k53bv";
+"play.doc-2017"="b5kjgd2gvgz5228m98l3lhaawmdfp40h";
+"play.source-2017"="jk04llsraw9d9gl5grvr019rjnkha1h3";
+"poemscol-2.85"="dvin112nvf10shz0dffwsmvcbyi0sdcc";
+"poemscol.doc-2.85"="vrssdpn4wp33nr78yqdmdywnjahl9y5x";
+"poemscol.source-2.85"="mzx3063zqfb0dxcc2xqwlm0b1bs076q4";
+"poetry-1.0"="ckm7xicsk5caj917wd5fvhxv7pjy9mpn";
+"poetry.doc-1.0"="7ywichrisj21yrc3h88wrxq1l8amjixr";
+"poetry.source-1.0"="g5aqwyc0r4f1qsnj4lzc2k559jh3knq9";
 "poetrytex-3.0.1"="a7a68naj2vngygl078qcy6qpyvgjqp87";
 "poetrytex.doc-3.0.1"="d7vp6y5vm8sw1vq3j723ksvivdk3v2a2";
 "poetrytex.source-3.0.1"="v4ynl1n0sgg2n5g0ya2ncm7k1fibfmgg";
-"qobitree-2016"="jxxsb3s665887m15a2v9q4ybdzc86x9k";
-"qobitree.doc-2016"="xi15qg62q42sgh4115gp2mcnv7nriwiz";
+"qobitree-2017"="jxxsb3s665887m15a2v9q4ybdzc86x9k";
+"qobitree.doc-2017"="xi15qg62q42sgh4115gp2mcnv7nriwiz";
 "qtree-3.1b"="d2wip0zniiihfnm77v0rzd95f4zvf9dp";
 "qtree.doc-3.1b"="pzpwi4bdw8sxhmyyx16g59nmi0zj8ijg";
-"reledmac-2.13.1"="50db96br7h8k8z24g3l8dy2al7z4fmkd";
-"reledmac.doc-2.13.1"="vj99pavxcys3b1dqix2qim9vp1vxc18x";
-"reledmac.source-2.13.1"="gn2m39a3454pzbyn590azy4vmm1nb1xg";
+"reledmac-2.24.2"="bcrkllx03w77zwzsr47wi7iqjw844frs";
+"reledmac.doc-2.24.2"="fcbndmjzg92q873xfvia4vnpwfrzyiqi";
+"reledmac.source-2.24.2"="3gd7wvfavb0vv3ma6367v8c8km4kc3sc";
 "rrgtrees-1.1"="gijgmkpg84730ywfcangcf301kff14n5";
 "rrgtrees.doc-1.1"="l557gafpfn0vm4ajcaynvqf14axn1rrq";
 "rrgtrees.source-1.1"="al765qzv8rz1gd9dw672j29q1i27gf2y";
-"rtklage-2016"="j7v1rhi19ly8i5h2j306nvhnhp3wjx8p";
-"rtklage.doc-2016"="02dpc8m2pyxqmpvlls86k2gy0yp8gqyp";
+"rtklage-2017"="j7v1rhi19ly8i5h2j306nvhnhp3wjx8p";
+"rtklage.doc-2017"="02dpc8m2pyxqmpvlls86k2gy0yp8gqyp";
 "screenplay-1.6"="c4jv8c3zrqqjp25nxv1wwp47jy26vdd0";
 "screenplay.doc-1.6"="7vlv28kmw3pag35r1p9q1mhvz005gwv8";
 "screenplay.source-1.6"="88zp5a7raa7ic4474yghk67jj31k3377";
-"screenplay-pkg-1.0"="526jcwcrw60akkjhxnry6d5a7zrpc93q";
-"screenplay-pkg.doc-1.0"="93g2kvshlhib0h5k25dw9rb63rm9810x";
-"sides-2016"="4by0j8k8xj6baip7kdvjr5x3srvz4wbf";
-"sides.doc-2016"="7kcin18x8z42axnrmlqldkzqqbvsjzvl";
-"stage-2016"="1wpd0k36spjfcv2scplqvh5k9cds7m43";
-"stage.doc-2016"="2hjnsmbv7aj48r05wb1gn43r5hlxjlpr";
+"screenplay-pkg-1.1"="567syh6jgvm16ch9hhlirgxav4k424ns";
+"screenplay-pkg.doc-1.1"="gvd3ma5bmmcpiq1jpi8081lcvk6zpfgi";
+"sides-2017"="4by0j8k8xj6baip7kdvjr5x3srvz4wbf";
+"sides.doc-2017"="7kcin18x8z42axnrmlqldkzqqbvsjzvl";
+"stage-1.00"="bi5p7sggcnkfmzmjj4535qbraan5yfdm";
+"stage.doc-1.00"="hwjzdlnzybkv0jvgbldansab25ixggnj";
 "textglos-1.0"="lfdr25rxphjmck47gv10zr6dwiwyczla";
 "textglos.doc-1.0"="k8945zjmlx6n8szzighhs4fa1z8zc340";
 "textglos.source-1.0"="mvxkgnsda7v23v765zh7mzg1fzcn0hdn";
-"thalie-0.8"="zp108xap1cvfjgyw8c2945003bk2i1c0";
-"thalie.doc-0.8"="jpkzqic1i7l6ijg5wnayiz5fkrm1bc6b";
-"thalie.source-0.8"="k8b2w93ghagarwdl3k9r7sbhk5f7py9q";
+"thalie-0.9b"="f2022r23gjdy0pbl4xa72whzciclqwbr";
+"thalie.doc-0.9b"="74w8j84cfkv34jr3xw4lsc7z6vmwfdwm";
+"thalie.source-0.9b"="34xmqafgkjg0si9z84znva7nbhpygvgk";
+"theatre.doc-0.1"="lrajd4fl8ib6kabsjpxjr38pdb2gr83q";
 "tree-dvips-.91"="rh2g20j87hg69iym0in6b1jdg5icgina";
 "tree-dvips.doc-.91"="5lwva5wns5mwp1yq94pd31q165gianwp";
 "verse-2.4b"="ip7glx9gvf1c1ggjvkn1ip1vdxycn7wc";
@@ -1596,29 +1578,22 @@
 "verse.source-2.4b"="9yx8ry4p1d0nvzwzh360xa8828mhgfwn";
 "xyling-1.1"="rxnynyg4j3xzzh27zb23q4qh3w2gy5r6";
 "xyling.doc-1.1"="k41kmgmzw7358f3nhq2ixbxafiq5kir4";
-"ethiop-0.7"="fd4kynb70wkja5fxhi10n52mff3s2a8q";
-"ethiop.doc-0.7"="cabq6vprpklsmzi68af6nb4qiwbrwmzf";
-"ethiop.source-0.7"="yv6pwmbkvahpy2h4vnijnqag2rv09k5l";
-"ethiop-t1-2016"="f73j35aqlr29gmh9k00d3s0jzkmk6zq3";
-"ethiop-t1.doc-2016"="92ly98mz1iim1gfh4cm8hjwc17j9kjhl";
-"fc-1.4"="iyjlb5q55khnp515n1snhpnfrrmfn1pm";
-"fc.doc-1.4"="wd9bn967d6nzzvdrvim470l711v1jkg6";
-"hyphen-ethiopic-2016"="nixwv8azmh1p1av7alhrzbxqqihcgndy";
-"hyphen-ethiopic.source-2016"="dg6qij9y5la6kr6izwb2ap1mih84bcdd";
-"amiri-0.108"="cs1gys4fmdh07y383wgar0qbaz0irwin";
-"amiri.doc-0.108"="k746sdm0f3cb43lnh9va70bd21ksdn48";
-"arabi-1.1"="6z4lwmawzbm63ln0qkpsscv4a0pwnpfi";
+"alkalami-1.000"="v7sl553x9mw57qsnh66rf7mba26h6m8x";
+"alkalami.doc-1.000"="kg4kz16hp3sylfwrprr4ilc2y4rzrji6";
+"amiri-0.109"="0mhv35551dzldy7dqrqjzais3lbsyb0c";
+"amiri.doc-0.109"="q1jnsnvi8rdpyf5agv8hwmffjrfk2igw";
+"arabi-1.1"="rr1si2q0lih2l2qpascr4kyzy313zyba";
 "arabi.doc-1.1"="cpsn1fgrlivbwqb4n9qrpq3q69kdy3nj";
 "arabi-add-1.0"="djln5r1i53rqvih7wp016j8ga2wqc7dn";
 "arabi-add.doc-1.0"="vwbgh52x3yh6yxhfx6p7m0ljmsrmr4qz";
-"arabluatex-1.3"="cd15byj4sl9i2b6lmywy8q9bssm398jv";
-"arabluatex.doc-1.3"="wn5d0k51clvmilknw8fsv3n6fq53wnyz";
-"arabluatex.source-1.3"="vljdnblrklhc1mza0kdbii7n0c1xwkln";
+"arabluatex-1.9.1"="wp27y4y9gjpjjwsizx7i8ybyz0ckzg0n";
+"arabluatex.doc-1.9.1"="yq37z6xwsfsb0mdlll0sc5yajacpfqhm";
+"arabluatex.source-1.9.1"="a8q032cijlf0157a0d21ivl44s0h6wcx";
 "arabtex-3.17"="fr7avfkwpdbx619kq7h1y31bx4nmkp5v";
 "arabtex.doc-3.17"="b5ng3w5g40m9c3x87nih862msx5nw292";
-"bidi-19.6"="s3hxsfapbfi2bdcl0570dmykzcnqh03a";
-"bidi.doc-19.6"="xpirv3r9y768bx1h3h4j7gi9j8y51vhk";
-"bidi.source-19.6"="apgl35xa1lg8gv02b7bs1ixm3vabdp91";
+"bidi-31.5"="g7m4mcpa5yi2mc0m2fzbyx6n3ax2127i";
+"bidi.doc-31.5"="47rszl3fr8isw36dqvxmkly9f4c3pah4";
+"bidi.source-31.5"="mmwicgbcdklawzb7h1mnbjw5xddzaygv";
 "bidihl-0.1c"="kwa5li9yi8wb452g12y2h0ar6lpqdmmr";
 "bidihl.doc-0.1c"="558l7z4b7giwqqzj5496r7nkzv1wrnqq";
 "dad-1.1"="yq0xfr4sfvvwzsi9crp6bqagcbnz7lkx";
@@ -1628,215 +1603,242 @@
 "imsproc-0.1"="ylf3kd1bc5rafzfyil4y7wxp6vd9nsm3";
 "imsproc.doc-0.1"="3kv8qk7pnfg2w7xm3lqcimi8vhx8jwf8";
 "lshort-persian.doc-5.01"="hba2q0ni1c873gpg2qp835csinw78yi8";
+"luabidi-0.2"="8af0f67k7hj72wsfrxxdxzl1p39byasy";
+"luabidi.doc-0.2"="9fdkj79aasj5vskrqqnr7c9zdy8vb8c7";
+"na-box-1.0"="vfrchq5jqb5s18zgngk2qsb0svmnc7p9";
+"na-box.doc-1.0"="7s4wcsg6khlv2lgakqgph9livd38fil9";
 "persian-bib-0.9"="sakc18mdqnzymfvgkwsxvrjd9b5a7dqm";
 "persian-bib.doc-0.9"="q8vjf93qjdkm6qz099464mwdl4w4gjqi";
 "simurgh-0.01b"="n8bv87n12x5xv3h41487vyqpbigv3qkc";
 "simurgh.doc-0.01b"="z3qq4jx25qyxqmnfbpsdsayi59fkaff6";
 "tram-0.2"="7wcas9syxfvm8pc7wnp817zd9y4q941l";
 "tram.doc-0.2"="ppbq1g4k1swjv7y9qkqhcr0m25knssk5";
-"arphic-2016"="zfax00567h7mdlfkpxihy379cwqmy8ng";
-"arphic.doc-2016"="55lcjk7s78qa39dqd0wj0za5f6hcnkxd";
-"asymptote-by-example-zh-cn.doc-2016"="czm77scbklkpdjgk93w1g8ilchpx3vpr";
-"asymptote-faq-zh-cn.doc-2016"="yzyywm1hv1hs9ngddhdgk7frrpnrbsr8";
-"asymptote-manual-zh-cn.doc-2016"="86bz3am5w7xx9si2a09s432xh882ix9a";
-"cns-2016"="3m0fbs91x53iiqvzl0hs68cks7y3m3q7";
-"cns.doc-2016"="1ddyimvshda2zf3mcs6rk1n4py2aglfq";
-"adobemapping-2016"="k1wb93my2d3ps88i5j1s69sc9pbdc1dq";
-"c90-2016"="jfyd605szid7j3a757fihxhlvaqvprdd";
-"c90.doc-2016"="1v14l7vqrdbc6nhg2k2gshq7p7cqzyk7";
-"c90.source-2016"="l4kfmrrqbnq3y6xbs0izdccvikpsw314";
+"xepersian-19.3"="r6419pwmmpwjbvayj99gxnn4jbarvk12";
+"xepersian.doc-19.3"="30ar997ynv45vmkw5fkmpm9akascg7h0";
+"xepersian.source-19.3"="przaraj7wpvszh9iw1n2lxay382s7j4p";
+"arphic-2017"="zfax00567h7mdlfkpxihy379cwqmy8ng";
+"arphic.doc-2017"="55lcjk7s78qa39dqd0wj0za5f6hcnkxd";
+"arphic-ttf-2017"="s5kckgwzz84bm3px9cmnw2zgvmaq27yh";
+"arphic-ttf.doc-2017"="s7y95hay8ygbb1viv250vkzf0wbm9s3b";
+"asymptote-by-example-zh-cn.doc-2017"="czm77scbklkpdjgk93w1g8ilchpx3vpr";
+"asymptote-faq-zh-cn.doc-2017"="yzyywm1hv1hs9ngddhdgk7frrpnrbsr8";
+"asymptote-manual-zh-cn.doc-2017"="86bz3am5w7xx9si2a09s432xh882ix9a";
+"cns-2017"="3m0fbs91x53iiqvzl0hs68cks7y3m3q7";
+"cns.doc-2017"="1ddyimvshda2zf3mcs6rk1n4py2aglfq";
+"adobemapping-2017"="dx0wf18v0mzip5237353hcgqnsvglkam";
+"c90-2017"="jfyd605szid7j3a757fihxhlvaqvprdd";
+"c90.doc-2017"="1v14l7vqrdbc6nhg2k2gshq7p7cqzyk7";
+"c90.source-2017"="l4kfmrrqbnq3y6xbs0izdccvikpsw314";
 "cjk-4.8.4"="zdw3lfngj5zg5d118xjndaj5gg7r0wy2";
 "cjk.doc-4.8.4"="rlwcxn7lnyxc28v9gjscp3p7p9mgzwhs";
 "cjk.source-4.8.4"="i9g2nbr71gnvx71a55aj07qrgw67vhs8";
-"garuda-c90-2016"="d9m07vl6glf3zjb44whqb3flsirwwcx1";
-"garuda-c90.source-2016"="rjy95hqlvbds6pn29r26kh8sshxnd21a";
-"fonts-tlwg-0.6.3"="63j0k5x00c9ajw5spz3c7gs159lpjc6a";
-"fonts-tlwg.doc-0.6.3"="n5388643xf206hj2mm9msw06mfa3kpy3";
-"fonts-tlwg.source-0.6.3"="kllrh73pzkjlx090wchdq2zzfcm1c0lq";
-"norasi-c90-2016"="d0972qmh7nk9isx54d46f7jscg6mwcrz";
-"norasi-c90.source-2016"="f0z1ppqy8szazpnwmg2ml8cgasdf5ivs";
-"uhc-2016"="viphfgiqfb1w9kb8103znmzy09n6i45n";
-"uhc.doc-2016"="hp3z13z2yxkrgr7z3qa8pyf4d98rd37z";
-"wadalab-2016"="cpc689ywzaqil8xz78nkzwx30qmqixh5";
-"wadalab.doc-2016"="9gjsw3c2hlxnc1wxvky9mmqi6dyq4i9j";
-"cjk-gs-integrate-20160115.0"="a3qlz5ajnhb5d5s9pk3bazmvq63cbcxa";
-"cjk-gs-integrate.doc-20160115.0"="fw3h6jrprbp2aqbzxwb5szh7hcsr363x";
+"garuda-c90-2017"="d9m07vl6glf3zjb44whqb3flsirwwcx1";
+"garuda-c90.source-2017"="rjy95hqlvbds6pn29r26kh8sshxnd21a";
+"fonts-tlwg-0.6.4"="haf1gakfkncsdh7wgi80mq1115fj5333";
+"fonts-tlwg.doc-0.6.4"="m3ryi6hz0zg69vhdxcfwrq2chpvkxqbq";
+"fonts-tlwg.source-0.6.4"="s00vd0mdjbfz481jl5p1qy8akkypj7kb";
+"norasi-c90-2017"="d0972qmh7nk9isx54d46f7jscg6mwcrz";
+"norasi-c90.source-2017"="f0z1ppqy8szazpnwmg2ml8cgasdf5ivs";
+"uhc-2017"="viphfgiqfb1w9kb8103znmzy09n6i45n";
+"uhc.doc-2017"="hp3z13z2yxkrgr7z3qa8pyf4d98rd37z";
+"wadalab-2017"="cpc689ywzaqil8xz78nkzwx30qmqixh5";
+"wadalab.doc-2017"="9gjsw3c2hlxnc1wxvky9mmqi6dyq4i9j";
+"cjk-gs-integrate-20170624.0"="6fvwwbz5k5fcy1fy7c0527dxx1yisvb3";
+"cjk-gs-integrate.doc-20170624.0"="h2m9dpagvafh81r8pz92jwjxvzlkmabn";
 "cjkpunct-4.8.4"="8hwj54qw1xrvs5bn8bncdynich00d0ss";
 "cjkpunct.doc-4.8.4"="c8wmkh6h45an46jqph2s9ljbgfyw1mf9";
 "cjkpunct.source-4.8.4"="0qfm89f4l8jfmgimhrh8vvskca0d866k";
-"cjkutils-2016"="8w069zvnnpkr2qcmsqxh6p64db57b82g";
-"cjkutils.doc-2016"="8g8smldqy9pcaawf71vwlmn42ilxm6i0";
-"dnp-2016"="jf1zsbg60d074ksrz0xk9ihybbabda1f";
+"cjkutils-2017"="8w069zvnnpkr2qcmsqxh6p64db57b82g";
+"cjkutils.doc-2017"="lrnnk0nr0bmijyn0817jvmmbgzi7jmwh";
+"dnp-2017"="jf1zsbg60d074ksrz0xk9ihybbabda1f";
+"fixjfm-0.6"="4hncyzsvmsb3b22qyd3k9b862rxg9rr5";
+"fixjfm.doc-0.6"="grq5h3vchbliqx7zjvj5mb3dk4f0lipw";
+"jfmutil-1.1.0"="pvqsmrs8c4y1xak1gq06021ai9qi4zmf";
+"jfmutil.doc-1.1.0"="5bl3kq493w6xkz0hxz4izz89qv1z0a10";
+"pxtatescale-0.4"="psd9rlxh4i4rqxgii61r2s43sqy3kibx";
+"pxtatescale.doc-0.4"="bfd49446kr82v3h06mq5hsm1ji2jwzck";
 "xcjk2uni-0.6"="m5sash3j9q3zpbgqia4zm95nvayrrc4w";
 "xcjk2uni.doc-0.6"="a6h7x2drbavppgrj2mzw2z9k4dm1pzd0";
 "xcjk2uni.source-0.6"="wjass2mkxvv3k067b6bpmjz4m7lswdk2";
 "zxjafont-0.3"="i9wmw8gl8rdqj2jyngwpq58cb9rfm4k1";
 "zxjafont.doc-0.3"="xb1hihnd54i9sdknskskmiaz3kp6rzh7";
-"ctex-2.4.2"="d2xgsig85rwfp7vm90k0pvzh7b6m1a6m";
-"ctex.doc-2.4.2"="a36w3cg1qw7cz3hfwcgnbldhbs270lvb";
-"ctex.source-2.4.2"="c72433ss2h6w7nfqq6a7psf9v0gc1xh9";
-"ctex-faq.doc-2016"="vjxcdrg7i6p9fgrgzfvykibjghpigrz3";
+"ctex-2.4.10"="dfgbbf23yvab0m0cj9hvdcm6f128nfx3";
+"ctex.doc-2.4.10"="007xy77dhxgaa44j63nq3cpcyqvy67h1";
+"ctex.source-2.4.10"="vq0sd0jj1hpzdyjlrk9p9xrgwz1ccdpi";
+"ctex-faq.doc-2017"="vjxcdrg7i6p9fgrgzfvykibjghpigrz3";
 "fandol-0.3"="lxnjp8m4fcj3pv2hnhib6gjdh90q1ncz";
 "fandol.doc-0.3"="fm0ac37apm0dh1073lp1frja9xbsrv4l";
-"hyphen-chinese-2016"="bb5vy7sg5vdimz5zy225syns093jv15g";
-"impatient-cn.doc-2016"="8k1gcnqs5gghbarikj17ykh4vgahpqbw";
+"hyphen-chinese-2017"="bb5vy7sg5vdimz5zy225syns093jv15g";
+"impatient-cn.doc-2017"="8k1gcnqs5gghbarikj17ykh4vgahpqbw";
 "latex-notes-zh-cn.doc-1.20"="qx777fwi8k06qvknnll3crc1j0yvraxs";
-"lshort-chinese.doc-5.0.5"="r2afk3zy2mgv4qg9rjqc8q1j2hy2l56w";
-"texlive-zh-cn.doc-2016"="fiwldjr3g6ig8azl4xi3p4xqpkkaj71x";
-"xpinyin-2.3"="6s94myl9fscrkahcgijkhnj2d7gh5kgq";
-"xpinyin.doc-2.3"="qlm6im1c243s4g5kkjpja79l6zdqx2jd";
-"xpinyin.source-2.3"="6nfnsdz238cfnw5913c40nkf46ddpjrv";
+"lshort-chinese.doc-5.10"="sx5wrymrq7scy12pharmnk0rik4i2c05";
+"texlive-zh-cn.doc-2017"="qafxi9mqhiwrcybpljlxz8jkswxf55h1";
+"texproposal.doc-1.4"="8fnrxmyg4wd11kmdh4jw8l1313h0sgqr";
+"upzhkinsoku-0.2a"="wm6azc59isvwpfkqkiy7d9cqwqg76538";
+"upzhkinsoku.doc-0.2a"="xxm1dd5z6l1ggpzs5m8zdk50cjqfn8bg";
+"xpinyin-2.5"="wdxg0njahylmbgzx1lq9v5wm21xm3pyg";
+"xpinyin.doc-2.5"="p6agjiawiaz82yp2ji0599350iv11mbm";
+"xpinyin.source-2.5"="qjx432y45n4y8glikv9dr7lp7n4zk5cx";
+"zhlipsum-0.4"="brgff2c90nff1fvk76zi1krg4ryan1w4";
+"zhlipsum.doc-0.4"="126m738q4x5iha0piwql8n1x5jfgakws";
+"zhlipsum.source-0.4"="wsaszl2w0yq4pfyszylf5nb5j9p1syx7";
 "zhmetrics-r206"="2li2anrf74242blfd59cxfyn13iwmfxs";
 "zhmetrics.doc-r206"="njh801caaxkfyw5nsfv3q36gkcql14pj";
 "zhmetrics.source-r206"="ls3gazkf44sdal0f0k8n46ml2fgigfsm";
 "zhmetrics-uptex-1.0"="d3r2n6ndjd8zsmlq4hgm1x3gvyvrfnc1";
 "zhmetrics-uptex.doc-1.0"="qqzvr4mf5fg5r8bg6j87yk94nznhrscl";
-"zhnumber-2.4"="6r4hyip11nlfidviq69am27mhxxrmjk2";
-"zhnumber.doc-2.4"="9jldh03zd4z1xihxb5d8ads1q29h4cj8";
-"zhnumber.source-2.4"="j2li7vixsi7873v8fjv57n1ckbchkamx";
-"zhspacing-2016"="p7w7cisgid16ndk1mipdmpn5v7nc1kzf";
-"zhspacing.doc-2016"="kjnyalnxmb2f0kj8w52nvm97a9m1dfsa";
+"zhnumber-2.5"="c5w1kfy838x08ivpffl2rb0wbaw7nk73";
+"zhnumber.doc-2.5"="vhdjrv5xiim959pli8a8073g34gdf5rh";
+"zhnumber.source-2.5"="x1x7qcfbz6v0lcipa1cjs5ba8q88aw5j";
+"zhspacing-2017"="p7w7cisgid16ndk1mipdmpn5v7nc1kzf";
+"zhspacing.doc-2017"="kjnyalnxmb2f0kj8w52nvm97a9m1dfsa";
 "babel-belarusian-1.3h"="qklajmxksgpl95fy5ip730lqflw4bqka";
 "babel-belarusian.doc-1.3h"="vpg2ygixw31mg3gk42sqr0f2m7bmwdcx";
 "babel-belarusian.source-1.3h"="lnz94hc62fa4yq83kb1s3y8qrvwyrxds";
 "babel-bulgarian-1.2g"="4c5cdn8lijfw1qhkfz69pvlvl2hcg5hz";
 "babel-bulgarian.doc-1.2g"="pyikwcg47yj8nh416g6wdzwk7a7f460p";
 "babel-bulgarian.source-1.2g"="km3vz4iykb1pckz9bgllgd6xxc77k2c9";
-"babel-russian-1.3h"="7lcvbhgq9z3x4zjkylpvsjk1crk17mss";
-"babel-russian.doc-1.3h"="6yjz7sskbvxs749rdji9ickq8z72xzan";
-"babel-russian.source-1.3h"="vjfnvy6qm0sdqf7j3lzr3m390q2qz46p";
-"babel-serbian-2016"="8acj740xh1syd4ch9jpfkpx3sclddqw4";
-"babel-serbian.doc-2016"="5jh97wmn4nhjbwaxdbrazk4dxsddx9q2";
-"babel-serbian.source-2016"="fcwf73qgjrdrc2vhzkhiaf7kj19n72vf";
+"babel-russian-1.3j"="chw7lj98rp10jkin4l03d1gx12a8ki5h";
+"babel-russian.doc-1.3j"="i56cj5h3h40ml8an2sbbj8dzyazacwd9";
+"babel-russian.source-1.3j"="cnwygpq3mb5y2araady6kr86wl2bbgdn";
+"babel-serbian-1.0d"="8acj740xh1syd4ch9jpfkpx3sclddqw4";
+"babel-serbian.doc-1.0d"="5jh97wmn4nhjbwaxdbrazk4dxsddx9q2";
+"babel-serbian.source-1.0d"="fcwf73qgjrdrc2vhzkhiaf7kj19n72vf";
 "babel-serbianc-2.2"="prhig05xnqc5hqqm3hf0bjhv2qzj02yw";
 "babel-serbianc.doc-2.2"="w6d72ix2a6gk6zcxbrx5nm9rin7b6i20";
 "babel-serbianc.source-2.2"="lp9zcsmpqk0l5ai17wy4cwbivyq2703w";
-"babel-ukrainian-1.1l"="kpr5104ghbnxcvr4vfv3s6zx7nwx5yvn";
-"babel-ukrainian.doc-1.1l"="bpnckmkny20arqw13br8bglmbvdpfsn0";
-"babel-ukrainian.source-1.1l"="wri5g10m0mpiicdw7m696pa8kj68b70s";
-"churchslavonic-0.1"="cwm6df50pmwhhzjkckhfxbf83yfzi4la";
-"churchslavonic.doc-0.1"="xa2vdbaniy85pa88a11ybmcwixfqiph0";
-"etoolbox-2.2a"="9zfdrr4mr3rjp9ckg8hhf3xfy6042q5m";
-"etoolbox.doc-2.2a"="9yxfzhjj70xd3xwdnqsv30qxkyjn3wnz";
-"hyphen-churchslavonic-2016"="k5mb2wlfjnyc4yxy2mga6wm7wkgxsm08";
+"babel-ukrainian-1.4b"="vmv1lxsnmg5dhwqckbl4hpn9pdpb2v07";
+"babel-ukrainian.doc-1.4b"="jzr6ygkv7vm6nh89yayid5v8n6zf09jj";
+"babel-ukrainian.source-1.4b"="z01cvvy9id3bazmrp4k9qafmmf83zhwm";
+"churchslavonic-0.2.1"="5pgxy858w0nr769mn4g6832fc0687vfp";
+"churchslavonic.doc-0.2.1"="pz4wqhar8vfzyy8aw4szas78hqs018lw";
+"etoolbox-2.4"="yhk13blngmpksskhcyc35sf6qs761qz8";
+"etoolbox.doc-2.4"="rkmvzzz31gf3q83niyn74bf1k2xa2mpz";
+"hyphen-churchslavonic-2017"="dbbg7zzqhy49qgvklp1kakaq1w7grpff";
 "xcolor-2.12"="d4hv07lqr1p36mkph8s45w93ykk2i0jg";
 "xcolor.doc-2.12"="50k9wrkrb7gaf8dhpq4gbsbyfpbm6dz6";
 "xcolor.source-2.12"="zgpsq8x4n6m23a9d1m5m06davpxv76id";
-"cmcyr-2016"="ba4hsn5a22k73rhiaip6dv560wk5sxv1";
-"cmcyr.doc-2016"="1j63xbl85z8izha2jl2klagny3hk5wf3";
-"cyrillic-2016"="1ydilc1c5h6bzsxd5frnjiaz3vhi06g8";
-"cyrillic.doc-2016"="a5mg6w5509iwaaikdkb4ln43kg8assqb";
-"cyrillic.source-2016"="10264p9pik69h97mjl3h8ah6g4pfdbf2";
-"cyrillic-bin-2016"="h64b7gacxv96hbs0mjxx0s65s4z5znrh";
-"cyrillic-bin.doc-2016"="wa6xkjd4q7b8i5lq3qpb23gmv6qi2k4s";
-"cyrplain-2016"="dh1vcz2wdwddkjdqihpc2rlsqjzm4cmm";
-"disser-1.3.4"="8c9m2p2lzr2qhdlqh96aifi1pajkdvzn";
-"disser.doc-1.3.4"="w8a7chm6g13zl2p3nywnrqqi3rjd2138";
-"disser.source-1.3.4"="a5rjx5mq43blavlxg1n8ih6g5y481ql6";
-"eskd-2016"="63ack7kfjg5gf6xv76yfla2z0k9cxzv7";
-"eskd.doc-2016"="g3wsmrvwfz2lm30w2fys9md9nqv5k8jq";
-"eskd.source-2016"="q70i7jl8dkf9vakj558fgwqfbn8230q0";
+"cmcyr-2017"="ba4hsn5a22k73rhiaip6dv560wk5sxv1";
+"cmcyr.doc-2017"="1j63xbl85z8izha2jl2klagny3hk5wf3";
+"cyrplain-2017"="dh1vcz2wdwddkjdqihpc2rlsqjzm4cmm";
+"disser-1.5.0"="m0gldqzdx2idh4ivy43jd13fgmgcsr94";
+"disser.doc-1.5.0"="6s5g533qr53rg2ha6a7p7xr4phcn11iy";
+"disser.source-1.5.0"="h4f1z0azxfnbv1cba1f8z5wfy25hfvg0";
+"eskd-2017"="63ack7kfjg5gf6xv76yfla2z0k9cxzv7";
+"eskd.doc-2017"="g3wsmrvwfz2lm30w2fys9md9nqv5k8jq";
+"eskd.source-2017"="q70i7jl8dkf9vakj558fgwqfbn8230q0";
 "eskdx-0.98"="b2dx9jv2rg97hmlf3gx4h4l3ci16chr2";
 "eskdx.doc-0.98"="l1r5bapnlsz61yasg9gyrzp6za8iw0nf";
-"gost-1.2d"="zijb6zxnq6aa226jp0zf7374arpsrg9i";
-"gost.doc-1.2d"="f8nd6zjvmkqlrvcx2g63h6nzvgfm5gqr";
-"gost.source-1.2d"="x3zwj9rz8kybdi0rsksljcn9jv7z29qy";
-"hyphen-bulgarian-2016"="3vs5k6vh44rjp1vi541gvl6qizmlp7yw";
-"hyphen-bulgarian.doc-2016"="73rgmlh3pbp2b534ln4avz8knspyjzhs";
-"hyphen-mongolian-2016"="x0q9kl6x25slrxdmm64b2j8ah7k83krm";
-"hyphen-russian-2016"="36r2dwl04v8yv5lci4gasyr2ylw9x6fa";
+"gost-1.2i"="i4ymhad9kyybwc4072yhc204pr9hfw3p";
+"gost.doc-1.2i"="vwsvpn0p9d4888107r2qj7rghl3l50xg";
+"gost.source-1.2i"="fawqr3q9mk5ki6qgqzv3xa4kz5ak2srq";
+"hyphen-belarusian-2017"="rzsbxs89fqwqp7dsqpmqw13lj0bl3bd4";
+"hyphen-bulgarian-2017"="3vs5k6vh44rjp1vi541gvl6qizmlp7yw";
+"hyphen-bulgarian.doc-2017"="73rgmlh3pbp2b534ln4avz8knspyjzhs";
+"hyphen-mongolian-2017"="x0q9kl6x25slrxdmm64b2j8ah7k83krm";
+"hyphen-russian-2017"="36r2dwl04v8yv5lci4gasyr2ylw9x6fa";
 "ruhyphen-1.6"="3d6lyf95cgi2yc8lsy9dz6z5vmvcx1l9";
 "ruhyphen.source-1.6"="i6x3fiidyvl2zkly1p4s7qzgzzza1in7";
 "hyphen-serbian-1.0a"="8mn7gqfqnbhpsszhg3048qrf2ar1vkch";
-"hyphen-ukrainian-2016"="fsqvhakdhhcnwz2ld469n9g38iw4nad5";
-"ukrhyph-2016"="l60kvxf1mii3imnl0swqskcrz0bizb5v";
-"ukrhyph.doc-2016"="4mycq4cykkinm5h946xmrng59jghvbp4";
+"hyphen-ukrainian-2017"="fsqvhakdhhcnwz2ld469n9g38iw4nad5";
+"ukrhyph-2017"="l60kvxf1mii3imnl0swqskcrz0bizb5v";
+"ukrhyph.doc-2017"="4mycq4cykkinm5h946xmrng59jghvbp4";
 "lcyw-1.1"="0bxzb7w4z0w04b9c1cvak8i2cp3f4h74";
 "lcyw.doc-1.1"="5kk74h4902f2zjlid26h1rg3fvw0sq9z";
 "lcyw.source-1.1"="3jq3gmm85lr494mm8j61z7shr3c11jg5";
 "lh-3.5g"="h0kq2pb7iay15i1b3sjx3q2yk63pycp7";
 "lh.doc-3.5g"="xzbkgxqjzbr2cx6q5xqqzgynk25jvkvh";
 "lh.source-3.5g"="mh8zzabsf553ml0al618ycym6igh9qyg";
-"lhcyr-2016"="3nj4zxpcahn2ryz47v7nh4k05j1lv6di";
-"lhcyr.source-2016"="kvid1h3vgbzmpn65sdjs0b8dspm5xvyh";
-"lshort-bulgarian.doc-2016"="r2yc6zzq44wddndp762a3hg78ihv013l";
+"lhcyr-2017"="3nj4zxpcahn2ryz47v7nh4k05j1lv6di";
+"lhcyr.source-2017"="kvid1h3vgbzmpn65sdjs0b8dspm5xvyh";
+"lshort-bulgarian.doc-2017"="r2yc6zzq44wddndp762a3hg78ihv013l";
 "lshort-mongol.doc-4.26"="5pj0i8wxlyd35sd3z7npwypicklc0nl3";
-"lshort-russian.doc-2016"="d2sgyyi8aic1j35fqrniim2bcpgk4q0a";
+"lshort-russian.doc-2017"="d2sgyyi8aic1j35fqrniim2bcpgk4q0a";
 "lshort-ukr.doc-4.00"="4g85cmgwa4y64rbc51zdw42m2f3m55ps";
 "mongolian-babel-1.2"="2bjw94a6r5wyn2i5gsclrn5fadh60jfg";
 "mongolian-babel.doc-1.2"="darkanaxxhcx7r7nd4mph37m3r29y7gl";
 "mongolian-babel.source-1.2"="cfdxndayfrj10xn000ckxhiaa1qdvypd";
 "montex-IVu.04.092"="ig3y6y6vksci0567g91hkgf8pkn5x56v";
 "montex.doc-IVu.04.092"="phm1049anhqvppklp4cwczfadjmakda3";
-"cbfonts-2016"="bzgl9s6zv9fqpg5m9gicxmpscw7m3z1d";
-"cbfonts.doc-2016"="6cj35wgyk4ss36wc0szhfyqcj3diyd50";
-"cbfonts-fd-1.1"="r5h2xhylssxazjrrx83zmgvbacwvjs0p";
-"cbfonts-fd.doc-1.1"="kafqyi78qi6dvib1cy4wr2c4pwf8h7hk";
-"cbfonts-fd.source-1.1"="5mxfnqh7jv38jgda9klsg3fd1avd11qg";
+"cbfonts-2017"="bzgl9s6zv9fqpg5m9gicxmpscw7m3z1d";
+"cbfonts.doc-2017"="6cj35wgyk4ss36wc0szhfyqcj3diyd50";
+"cbfonts-fd-1.2"="mybny72ksiflq3lq2y23059lzxidwz70";
+"cbfonts-fd.doc-1.2"="rsxf6gy62snszkcpdzry9gy44falx6ml";
+"cbfonts-fd.source-1.2"="73f27d7a4c2frvvhp1r2z4ia84qrh1cw";
 "mpman-ru.doc-1.004"="6l3vqm4sxcvb5nxy582g2nbr9mwvz1dz";
+"numnameru-2017"="c3fn4n2asbh2lqrn9y44g6yxad9f7469";
+"numnameru.doc-2017"="ibrlw13zibhvhr8mipw7hs2ik1f96z73";
 "pst-eucl-translation-bg.doc-1.3.2"="cqxppyh4546ybhnlk1z4fjkdyw9ij5x7";
-"russ-2016"="981kkq2xmx0r6k095308270hjvmdsm3h";
-"russ.doc-2016"="878fl0cyka7jj5cvdvq19fvlfic3izi9";
-"serbian-apostrophe-2016"="q4n9k2fn70hxcf9chy6a5jw07pq2cllp";
-"serbian-apostrophe.doc-2016"="0yxbbv3xz0jf63g0kvq5dbdv2myc4rks";
-"serbian-date-lat-2016"="3s5yc0xcg6fsaisn7aq0nv16fj69wmws";
-"serbian-date-lat.doc-2016"="pa9rvzpbczmfm4w0977xx05c5sbl6mxg";
-"serbian-def-cyr-2016"="k46ahhqbdg23mx4ld0953dnsws1imhwm";
-"serbian-def-cyr.doc-2016"="zl8x855zmhry6n754l5x9fz8hjn27bls";
-"serbian-lig-2016"="a1672qd2rm39mxrbm6g9w3sayzysy9iq";
-"serbian-lig.doc-2016"="0423yai3rmbq3kkfdyy43r18gvw7mdzd";
-"t2-2016"="djv7453h3ip2p5nr0x02158drb4gl6hw";
-"t2.doc-2016"="5rs62ka021ngnnhm7v7hcr3nicm42v98";
-"texlive-ru.doc-2016"="n2y8hncfirzbzvd2qhcmn624sig5vbih";
-"texlive-sr.doc-2016"="y35ka74pcqbf858l7fi25kby788xp0vs";
+"russ-2017"="981kkq2xmx0r6k095308270hjvmdsm3h";
+"russ.doc-2017"="878fl0cyka7jj5cvdvq19fvlfic3izi9";
+"serbian-apostrophe-2017"="q4n9k2fn70hxcf9chy6a5jw07pq2cllp";
+"serbian-apostrophe.doc-2017"="0yxbbv3xz0jf63g0kvq5dbdv2myc4rks";
+"serbian-date-lat-2017"="3s5yc0xcg6fsaisn7aq0nv16fj69wmws";
+"serbian-date-lat.doc-2017"="pa9rvzpbczmfm4w0977xx05c5sbl6mxg";
+"serbian-def-cyr-2017"="k46ahhqbdg23mx4ld0953dnsws1imhwm";
+"serbian-def-cyr.doc-2017"="zl8x855zmhry6n754l5x9fz8hjn27bls";
+"serbian-lig-2017"="a1672qd2rm39mxrbm6g9w3sayzysy9iq";
+"serbian-lig.doc-2017"="0423yai3rmbq3kkfdyy43r18gvw7mdzd";
+"t2-2017"="djv7453h3ip2p5nr0x02158drb4gl6hw";
+"t2.doc-2017"="5rs62ka021ngnnhm7v7hcr3nicm42v98";
+"texlive-ru.doc-2017"="7r86aqsvzgq8l4my6x5jkgkap8k9iicy";
+"texlive-sr.doc-2017"="5br9avk3c0ggl03sw5l8gvsykcdw04kl";
 "babel-czech-3.1a"="gdcs2xpcgblb3v0m6jf3ppx643s3cj6r";
 "babel-czech.doc-3.1a"="g2km6r7d90d3f60mfhw4a7m9s0090sg5";
 "babel-czech.source-3.1a"="5s1n9fykrbzppgb36pvybjn9jmj7cxxf";
 "babel-slovak-3.1a"="cl43hp1pnxc1gp4ndrqwv1cv3fh0h47c";
 "babel-slovak.doc-3.1a"="igrg8syk1kd3mq4sm4jrdgsmsr1y9jb1";
 "babel-slovak.source-3.1a"="gvlkvq0zmhdf57a6vpfxlvmvz7ma48af";
-"cnbwp-2016"="whwdam81dc6g8pq664mrmnbxz4f0iwdj";
-"cnbwp.doc-2016"="qv1fxhmq1pig9rq3swhvwlwpm4lmwrjy";
-"cs-2016"="2c2075d3z1hsim0b32hx2adj34vk9v1b";
-"csbulletin-1.0"="habpdy1zg2z2xw12xya90lvkns8zcd14";
-"csbulletin.doc-1.0"="cpp8rympnbz2p3m8zk6qrbj9vm9m9hfq";
-"cslatex-2016"="4gf3lz23hvrqgqbvpnq2wc3bwrb2jdkh";
-"cslatex.source-2016"="fmrx0y2xnxcdczhbqyrh7w70wh7mrccq";
-"csplain-2016"="30pkjvf17m7q5xgknksd9cp8r7cnrmcl";
-"cstex.doc-2016"="b1jpd5fjkw7hchqb0ldmkr40w3jkzbsa";
-"hyphen-czech-2016"="hgqj7s2x8307ap6bbw0i7nmw95w84i8k";
-"hyphen-slovak-2016"="4v3xn4ap1yhfgrvlh9ypmdwvj7yii077";
+"cnbwp-2017"="whwdam81dc6g8pq664mrmnbxz4f0iwdj";
+"cnbwp.doc-2017"="qv1fxhmq1pig9rq3swhvwlwpm4lmwrjy";
+"cs-2017"="ks76xw08rrkrcxg7rv72w18glx2vncfk";
+"csbulletin-1.1"="m9d1x0828b0bkkwwz7pp7vncj5mjc9zy";
+"csbulletin.doc-1.1"="pf2nrqiwk3jag8gyn429f1d867xg2v9d";
+"cslatex-2017"="4gf3lz23hvrqgqbvpnq2wc3bwrb2jdkh";
+"cslatex.source-2017"="fmrx0y2xnxcdczhbqyrh7w70wh7mrccq";
+"csplain-2017"="va7s716mqc1gpdp23r7n33a0gyskjkf0";
+"luatex85-1.4"="ka3px4aiyi8gq487i085s31y9l95jzp1";
+"luatex85.doc-1.4"="ac2agmy9dkavln2vnd63fmavv7xnkdrw";
+"luatex85.source-1.4"="wpm4dw7j6fikz3dqa4zk3r5avg4isxr8";
+"cstex.doc-2017"="b1jpd5fjkw7hchqb0ldmkr40w3jkzbsa";
+"hyphen-czech-2017"="hgqj7s2x8307ap6bbw0i7nmw95w84i8k";
+"hyphen-slovak-2017"="4v3xn4ap1yhfgrvlh9ypmdwvj7yii077";
 "lshort-czech.doc-4.27"="2z8dygvm9ilvahsx005zb7z5ss8hxbsf";
-"lshort-slovak.doc-2016"="qnj433q5hfg9cpy0z281zq17z7dr5vh9";
-"texlive-cz.doc-2016"="f2qhp83816s6rglini5mgn7ry1p30dq1";
-"vlna.doc-2016"="q7y30cplqdmwmbi512j0bld8q4gz3cvd";
+"lshort-slovak.doc-2017"="qnj433q5hfg9cpy0z281zq17z7dr5vh9";
+"texlive-cz.doc-2017"="lvcyklb0wmng9189ya9w532f9697aqsi";
+"vlna.doc-2017"="l7prd2dp3ldxq91rr1j5a6n65jwcml8b";
 "FAQ-en.doc-3.28"="vvzrv99q1hxcck399g2n96qfl1dc0fln";
 "MemoirChapStyles.doc-1.7e"="r54d4g3nh30k5x99nfphvzg7k1jxrijn";
 "Type1fonts.doc-2.14"="jgjs1127jqdrrgnkv3r8p1wirc8lb2gl";
+"amscls-doc.doc-2017"="7vysfiq2571jmyqdar2y15824l31yk3n";
 "amslatex-primer.doc-2.3"="9d9pxr0jbjm6zwqd51f7m2bzysdq5gv7";
-"around-the-bend.doc-2016"="a6jilpw0nw27vlj1shnhxfv92yn86ys2";
-"ascii-chart.doc-2016"="9x2srgi2sjd6zjjz27p6hs1w9sj73bcx";
-"components-of-TeX.doc-2016"="7sc5ryfj785jifvw9b44yni2ifmssr7f";
-"comprehensive.doc-12.2"="pnjp9bc1a0910j9mx15w3mng9afwm826";
-"dickimaw.doc-2016"="jqva0skw6ivc4ikc8m7awd7pgfaxgci7";
+"around-the-bend.doc-2017"="a6jilpw0nw27vlj1shnhxfv92yn86ys2";
+"ascii-chart.doc-2017"="9x2srgi2sjd6zjjz27p6hs1w9sj73bcx";
+"biblatex-cheatsheet.doc-2017"="vcmb6x1w0cfgvyx0hl8fsv1nh2ffhg6g";
+"components-of-TeX.doc-2017"="7sc5ryfj785jifvw9b44yni2ifmssr7f";
+"comprehensive.doc-12.3"="gs2ygl6aw4np0kh7av2qg9797nxh32qx";
+"dickimaw.doc-2017"="jqva0skw6ivc4ikc8m7awd7pgfaxgci7";
+"docsurvey.doc-2017"="zvczpqq3wfd1hrsfhnkczzvbsb9bcilr";
 "dtxtut.doc-2.1"="108k3lyvja5wmg8gxyvqskbz8wwh0cyw";
-"first-latex-doc.doc-2016"="8vcday36pq5hlr075kjk6hb82ypazjd9";
-"gentle.doc-2016"="mpxhsl7g4za410b65awmbb5zlc58h24n";
-"guide-to-latex.doc-2016"="8lw0kcinfq2yd6vkbd531zakby60k2wf";
+"first-latex-doc.doc-2017"="8vcday36pq5hlr075kjk6hb82ypazjd9";
+"forest-quickstart.doc-2017"="gyacc77yw1l6kksi62y5plxsvkqbf6yv";
+"gentle.doc-2017"="mpxhsl7g4za410b65awmbb5zlc58h24n";
+"guide-to-latex.doc-2017"="8lw0kcinfq2yd6vkbd531zakby60k2wf";
 "happy4th.doc-20120102"="svmy37c032cvip73n4b98c8kh4hvnh9g";
-"hyphen-english-2016"="4vjl8scc743bbjbjzhprgpmxnz58ph29";
-"impatient.doc-2016"="172g4hvk6d4z4013h44nr5may3a51gb4";
+"hyphen-english-2017"="4vjl8scc743bbjbjzhprgpmxnz58ph29";
+"impatient.doc-2017"="172g4hvk6d4z4013h44nr5may3a51gb4";
 "intro-scientific.doc-5th_edition"="qx170vpq4ahipljnmhkvbrxv1xdbbii6";
-"knuth.doc-2016"="2w5hzwaxcl1i2pp3ms0kshmza0p5nqi6";
-"knuth.source-2016"="6dr6qqw0ih676vxc0rj6qgjc0zpac89p";
+"knuth.doc-2017"="2w5hzwaxcl1i2pp3ms0kshmza0p5nqi6";
+"knuth.source-2017"="6dr6qqw0ih676vxc0rj6qgjc0zpac89p";
 "l2tabu-english.doc-1.8.5.7"="j7m684bvmpv1jaa6s856dj9aknrwlqiq";
-"latex-brochure.doc-2016"="azp69yf9xkksqan9n096wabgxlk9hgsn";
+"latex-brochure.doc-2017"="azp69yf9xkksqan9n096wabgxlk9hgsn";
 "latex-course.doc-2"="km59hhadaad0hlpa07rqmx91036h123r";
-"latex-doc-ptr.doc-2016"="1dsc8ym34nlj315aln3npfibx37n9c3z";
-"latex-graphics-companion.doc-2016"="70mixdsyyx6jf6dc46qp5kgyx9qwkma2";
-"latex-veryshortguide.doc-2016"="k179hnvfkwshfbyqyi6r0ijmm4kq0s3k";
-"latex-web-companion.doc-2016"="wzj6qw8bhwr82ipsph640ya62mpj6k3r";
-"latex2e-help-texinfo.doc-2016"="ckcmkgpqkqin3qwzvw89yqg7qzzh0pjh";
+"latex-doc-ptr.doc-2017"="1dsc8ym34nlj315aln3npfibx37n9c3z";
+"latex-graphics-companion.doc-2017"="70mixdsyyx6jf6dc46qp5kgyx9qwkma2";
+"latex-refsheet.doc-1.2"="9gvmiiqg78xn8348cymz3wfzi45mf8xz";
+"latex-veryshortguide.doc-2017"="mil8qpv4ka19wym6cqz3r5np3n7nzw5r";
+"latex-web-companion.doc-2017"="wzj6qw8bhwr82ipsph640ya62mpj6k3r";
+"latex2e-help-texinfo.doc-2017"="vnwvlpnj4gwqq6y6akq8ixn7jz597r8d";
 "latex4wp.doc-1.0.10"="bxffry3cy7vkcjhdm5yzn4hipma74jdp";
 "latexcheat.doc-1.13"="iav6gzdcadndwli0jar6d7i1711ssq41";
 "latexcourse-rug.doc-1.1"="fxz46xn5hazqy707qrf2mkgk121m6ywv";
@@ -1845,31 +1847,31 @@
 "latexfileinfo-pkgs.source-0.22"="b7h771sg8f6c8fq8j7vjbq0yhsp836a5";
 "lshort-english.doc-5.0.5"="ryw0yzw8kc62y4340nvvky1cxddnji70";
 "macros2e.doc-0.4"="mn48jzqmxgjafpqai2ssnfi6z3sr5a2z";
-"math-e.doc-2016"="jl3c0l594dii8wjylbc9nmaw6bqkmxvy";
+"math-e.doc-2017"="jl3c0l594dii8wjylbc9nmaw6bqkmxvy";
+"math-into-latex-4.doc-2017"="0k2w8mjvn4h6jplrks9mxj6m1bnfmlz0";
 "maths-symbols.doc-3.4"="xi1pjz6rhyw79b10fpdfaa8vc5sf1wlf";
-"memdesign.doc-2016"="wiphi37w652d45ikn5kgd1qzh358rj3r";
-"metafont-beginners.doc-2016"="7ql41977dp698l2fjlq2xyf221y6xn2f";
-"metapost-examples.doc-2016"="ljbvw9v7xilmkzmifm1vx18dfvqlw6k6";
-"mil3.doc-2016"="x3dxysarnz0pz9inb8g9w66njzsnsw7q";
-"patgen2-tutorial.doc-2016"="3wv4sk7yw0mpy0rsd1j04m8mqsbi465n";
-"pictexsum.doc-2016"="mcxxxznqh0a94sip9vpdbjv5nv83j66s";
-"plain-doc.doc-2016"="5bqxdfbl4fvgvw42033vg9w3kjn7pn49";
-"presentations-en.doc-2016"="b2j47x2qg2rhn4d5pv7413fca2jd7fb9";
-"simplified-latex.doc-2016"="mmxjkyv4x0am911mkxmjs1l5ql5z19h9";
-"svg-inkscape.doc-2016"="l8vizn8al3rzgxxamdfqm6hsrh46xm8m";
+"memdesign.doc-2017"="wiphi37w652d45ikn5kgd1qzh358rj3r";
+"metafont-beginners.doc-2017"="7ql41977dp698l2fjlq2xyf221y6xn2f";
+"metapost-examples.doc-2017"="ljbvw9v7xilmkzmifm1vx18dfvqlw6k6";
+"patgen2-tutorial.doc-2017"="3wv4sk7yw0mpy0rsd1j04m8mqsbi465n";
+"pictexsum.doc-2017"="mcxxxznqh0a94sip9vpdbjv5nv83j66s";
+"plain-doc.doc-2017"="5bqxdfbl4fvgvw42033vg9w3kjn7pn49";
+"presentations-en.doc-2017"="b2j47x2qg2rhn4d5pv7413fca2jd7fb9";
+"simplified-latex.doc-2017"="mmxjkyv4x0am911mkxmjs1l5ql5z19h9";
+"svg-inkscape.doc-2017"="l8vizn8al3rzgxxamdfqm6hsrh46xm8m";
 "tabulars-e.doc-1.0"="3vrlw3x3h5k0awnns1q06bwzl3ff6mpw";
 "tamethebeast.doc-1.4"="14cs89g2l3bn3xhfrhrw9pfdf65c2xcy";
 "tds.doc-1.1"="fmmdgblpf26x9ajn16g024sn5sbwwy0s";
 "tex-font-errors-cheatsheet.doc-0.1"="4a38bjpzdbj91msw8kaxmk3c6qahq1r5";
 "tex-overview.doc-0.2"="bj9pak1z31fwblcv5bj2imd4p33bi79s";
 "tex-refs.doc-0.4.8"="ad80b3r5rgj7n4m2hc5r6ccjczikff3v";
-"texbytopic.doc-2016"="vcr4rwfg8m85mrlsp0hg3ic0gmd0zcdw";
-"titlepages.doc-2016"="g0fvssp703yk3c2icdb8qgalxikm0xq9";
-"tlc2.doc-2016"="k8qb9ak5wx7k4c4j5g5i681di8cc8p5s";
-"visualfaq.doc-2016"="mdskjr2m6y0ljhczhqmfm50xsv8x4k1m";
-"voss-mathmode.doc-2.47"="ahg4d5zk33mk5bv1s889mflqh05k65xn";
-"webguide.doc-2016"="xbp0q21rqfq5gmckdfkc671kbr6gj1n8";
-"xetexref.doc-2016"="4j55bp8li1sjq281wsdmqwpqbq092ppy";
+"texbytopic.doc-2017"="vcr4rwfg8m85mrlsp0hg3ic0gmd0zcdw";
+"titlepages.doc-2017"="g0fvssp703yk3c2icdb8qgalxikm0xq9";
+"tlc2.doc-2017"="k8qb9ak5wx7k4c4j5g5i681di8cc8p5s";
+"undergradmath.doc-2017"="kp1xxp209mbvyhpmh62yp53c6q8ppnwk";
+"visualfaq.doc-2017"="mdskjr2m6y0ljhczhqmfm50xsv8x4k1m";
+"webguide.doc-2017"="xbp0q21rqfq5gmckdfkc671kbr6gj1n8";
+"xetexref.doc-2017"="ng54q8km6dahcmh77lwwkz9qplw2d46l";
 "armtex-3.0-beta3"="vg6qlgg6nzci26mnphkbcpc8vak9jwbq";
 "armtex.doc-3.0-beta3"="fam9bkmfjn2v54v3f2xjxjarbrf3adhz";
 "babel-albanian-1.0c"="1dasgklnjx05y74bk0pcwn1ivghswmvs";
@@ -1893,14 +1895,14 @@
 "babel-estonian-1.1a"="pn52pj8gprmsqf7f7i97vllrkjjm2bbh";
 "babel-estonian.doc-1.1a"="nchqv4ahbhjrh6g49fj8xpjv1ghlqzn9";
 "babel-estonian.source-1.1a"="8d3nvwgv9bvhhxsgdicdlf3gsrscaxsi";
-"babel-finnish-2016"="j5w0s8qa0jnwgrw5z208bh3afalx7vzy";
-"babel-finnish.doc-2016"="3fajpl6c9jaxnm2bf7ccls1nqdhva2jg";
-"babel-finnish.source-2016"="gyss1ciz8xazmhfg67yz6z2s9g63p190";
+"babel-finnish-1.3q"="j5w0s8qa0jnwgrw5z208bh3afalx7vzy";
+"babel-finnish.doc-1.3q"="3fajpl6c9jaxnm2bf7ccls1nqdhva2jg";
+"babel-finnish.source-1.3q"="gyss1ciz8xazmhfg67yz6z2s9g63p190";
 "babel-friulan-1.3"="xjbsgl2xyfqfrdyv83c6g5h2qnjzw7vf";
 "babel-friulan.doc-1.3"="m4n4fysx9qxf13c39jm4xq624y6jkagd";
 "babel-friulan.source-1.3"="yf6xqza856qdbxdysw08v707h0pcj7sq";
-"babel-hungarian-1.5c"="6kv77z2ac5krdm24f9n8g0fb3b28v9fv";
-"babel-hungarian.doc-1.5c"="y2xr9g48zya34i5qnmz66j4a7j741cd4";
+"babel-hungarian-1.5c"="ziiivvv3n2allw091gzqkd35af46r5nl";
+"babel-hungarian.doc-1.5c"="czi272jfp95lckd97gkq46lrvz3r63wl";
 "babel-icelandic-1.2b"="bv8jkqsb9ikbk4g861n0hn00j7dh87kw";
 "babel-icelandic.doc-1.2b"="b2pxcd5sczr0a3a8ww2rjfyw3r1783jc";
 "babel-icelandic.source-1.2b"="37xz4jan0xjrz8aj2sci17x8m8h8f613";
@@ -1916,9 +1918,9 @@
 "babel-latvian-2.0a"="li1cr89si5w51frv1nvw4ildv7msssq6";
 "babel-latvian.doc-2.0a"="2vx8r37s33r9hhkbyn3ckn1lmv639b97";
 "babel-latvian.source-2.0a"="navm1a1r3kqhimxz7c70x9kqnmq1p0xi";
-"babel-macedonian-2016"="y443c0n5dygb6pf923kwj4fv8y991gg7";
-"babel-macedonian.doc-2016"="gk8d4ijhz5dhnlv9jdc6v48fm9zfcai6";
-"babel-macedonian.source-2016"="jfr605jrv1sywgpkhi05v6n6s96vfyq2";
+"babel-macedonian-2017"="y443c0n5dygb6pf923kwj4fv8y991gg7";
+"babel-macedonian.doc-2017"="gk8d4ijhz5dhnlv9jdc6v48fm9zfcai6";
+"babel-macedonian.source-2017"="jfr605jrv1sywgpkhi05v6n6s96vfyq2";
 "babel-norsk-2.0i"="3a2xqwwyj2pv7ndgaxk11wvb7qanc9qk";
 "babel-norsk.doc-2.0i"="dhi39fgchh0ll1hl2si5qgygi2qsg8bj";
 "babel-norsk.source-2.0i"="qyx1rcxw0zghnc8wrh94yr9i5jkh142k";
@@ -1931,9 +1933,9 @@
 "babel-romanian-1.2l"="76cg7sfsq7lg72c4lqfinv3gjpbwpvri";
 "babel-romanian.doc-1.2l"="5i46fii2472x7ka1xxng45s7n0rgl2s9";
 "babel-romanian.source-1.2l"="pm44w7529qaa4s9n7jyc33qwsfj6vwsb";
-"babel-romansh-2016"="2k6ik89i06j3l29bl8yp7dbm79qgzcb3";
-"babel-romansh.doc-2016"="risjnmxysc7r7va4f3mapz7kvxi01xc9";
-"babel-romansh.source-2016"="hnlwwjxzrv9fsanajh23pr8wirlp87gh";
+"babel-romansh-2017"="2k6ik89i06j3l29bl8yp7dbm79qgzcb3";
+"babel-romansh.doc-2017"="risjnmxysc7r7va4f3mapz7kvxi01xc9";
+"babel-romansh.source-2017"="hnlwwjxzrv9fsanajh23pr8wirlp87gh";
 "babel-samin-1.0c"="2vg2wrjl0pllgbppkx4bcykcjil8driw";
 "babel-samin.doc-1.0c"="k69nnc0vsw2xhrkqilhqzqv9v4h5fy99";
 "babel-samin.source-1.0c"="p7ywdk038cryll8rr2sy8d8m4qb09k5l";
@@ -1952,64 +1954,62 @@
 "babel-welsh-1.1a"="dcjbzz80i41bpzb99wdhb84h60y5qg1r";
 "babel-welsh.doc-1.1a"="5p0mqvs4npnz3g6a08hqkf03n2w4pdc1";
 "babel-welsh.source-1.1a"="9fx2i5lxyf8qc0brlrgas2ajzf013m6j";
-"finbib-2016"="aja1ihjvva3aa86xi1f8d563xvlcj5mb";
+"finbib-2017"="aja1ihjvva3aa86xi1f8d563xvlcj5mb";
 "gloss-occitan-0.1"="sha467dmibkfwwdnwrq5da744vfz3p5g";
 "gloss-occitan.doc-0.1"="8wfn7as272hvm7nxz0i5m48bf94b5m0z";
 "gloss-occitan.source-0.1"="qv9zd6r6rmjbfsndm7qgsz7x6xkr14ms";
 "hrlatex-0.23"="7dr0g80mp71nmvrnwahpshawi44s2s9x";
 "hrlatex.doc-0.23"="lrx3m4bg9wlqlrcd08mh90wal16fvilg";
 "hrlatex.source-0.23"="s5ajy6yi6nzivfwafk5ymav4j2dcgif4";
-"hyphen-armenian-2016"="mdffnpk1ry6sw0xs8h5adzzz11dr7d8z";
-"hyphen-armenian.source-2016"="0b2gny5672fkb5sd8vb2g3fapx9pl7z2";
-"hyphen-croatian-2016"="3ncl8rzkilf9v25d3knjpv05s23366rw";
-"hyphen-danish-2016"="cb0mgkx8v9zb9xpm23ys4cykdx81fm8y";
-"hyphen-dutch-2016"="yad9a54d57s5fqaw203z8p587am163pg";
-"hyphen-estonian-2016"="kxvkppf091jzvq35f1694s8zwws8smy5";
-"hyphen-finnish-2016"="34sljx5z5frjbdmdjfk0gby66lrsk8d5";
-"hyphen-friulan-2016"="cqkjqpaajflmjxmbb010nf6b6qhx291d";
-"hyphen-hungarian-2016"="rjcm5vh5imrvhq5vm67ldrx4vpwfyj0c";
-"hyphen-hungarian.doc-2016"="a9fpid878wd5s3qadgxg8acv6jwl86ca";
-"hyphen-icelandic-2016"="p0nh6hmjsq8qz9bq2jr94aivygc74k3p";
-"hyphen-irish-2016"="8pgd00kg1280xb3nf238z95vjca579n1";
-"hyphen-kurmanji-2016"="s8x6afi0m4p7ypdd59bv48p5wdpc230i";
-"hyphen-latin-3.1"="zyask1cwsh2ggrk2k8dlfj2gkf3388dn";
-"hyphen-latvian-2016"="ysdrd68nsbqcahr1sxdaf5swlibi9zym";
-"hyphen-lithuanian-2016"="a466wij0mk9h82h6dkl4a048zwc8iwci";
-"hyphen-norwegian-2016"="5a71qrcnmaq9d9yk25p8i47cdz8kw830";
-"hyphen-occitan-2016"="rpqyqccljn7sfzkc1q8cil6ihc86d5qm";
-"hyphen-piedmontese-2016"="785rz1pgg937vbvry6l5a6m1ibvla7vf";
-"hyphen-romanian-2016"="5mby6h9g3rdbw6sw0nbrl5ig2kdjzjwg";
-"hyphen-romansh-2016"="m2d5ilq6nrn7v02xfm64y0p9a68fnnzx";
-"hyphen-slovenian-2016"="h7mqlrlpxrs7vcf357myvxdjj40xvja9";
-"hyphen-swedish-2016"="0lhl6pgggkp4hirzakbcpc167dv6klcd";
-"hyphen-turkish-2016"="q4p56y47qx2c7mjvkj945qgacblj13sr";
-"hyphen-turkish.source-2016"="4xv9azgkq91m4afsp9kvsq0f9ajxqfvl";
-"hyphen-uppersorbian-2016"="rr9kvhrf60s2rpq7478mbd751kwzl0w2";
-"hyphen-welsh-2016"="g3hsz81k297agiclv8ms1zb2hgkmlqcf";
-"lithuanian-2016"="w9v6qwl2xjqb3wpfnfsnh8rbmaw497cl";
-"lithuanian.doc-2016"="8vyaya9n1xq7igvhgqzpvb9cbhk62f3z";
+"hyphen-croatian-2017"="3ncl8rzkilf9v25d3knjpv05s23366rw";
+"hyphen-danish-2017"="cb0mgkx8v9zb9xpm23ys4cykdx81fm8y";
+"hyphen-dutch-2017"="yad9a54d57s5fqaw203z8p587am163pg";
+"hyphen-estonian-2017"="kxvkppf091jzvq35f1694s8zwws8smy5";
+"hyphen-finnish-2017"="34sljx5z5frjbdmdjfk0gby66lrsk8d5";
+"hyphen-friulan-2017"="cqkjqpaajflmjxmbb010nf6b6qhx291d";
+"hyphen-hungarian-2017"="rjcm5vh5imrvhq5vm67ldrx4vpwfyj0c";
+"hyphen-hungarian.doc-2017"="a9fpid878wd5s3qadgxg8acv6jwl86ca";
+"hyphen-icelandic-2017"="p0nh6hmjsq8qz9bq2jr94aivygc74k3p";
+"hyphen-irish-2017"="8pgd00kg1280xb3nf238z95vjca579n1";
+"hyphen-kurmanji-2017"="s8x6afi0m4p7ypdd59bv48p5wdpc230i";
+"hyphen-latin-3.1"="76n3a6vx9fbwlzqifdd4na39s8hyqya5";
+"hyphen-latvian-2017"="ysdrd68nsbqcahr1sxdaf5swlibi9zym";
+"hyphen-lithuanian-2017"="a466wij0mk9h82h6dkl4a048zwc8iwci";
+"hyphen-norwegian-2017"="5a71qrcnmaq9d9yk25p8i47cdz8kw830";
+"hyphen-occitan-2017"="rpqyqccljn7sfzkc1q8cil6ihc86d5qm";
+"hyphen-piedmontese-2017"="785rz1pgg937vbvry6l5a6m1ibvla7vf";
+"hyphen-romanian-2017"="5mby6h9g3rdbw6sw0nbrl5ig2kdjzjwg";
+"hyphen-romansh-2017"="m2d5ilq6nrn7v02xfm64y0p9a68fnnzx";
+"hyphen-slovenian-2017"="h7mqlrlpxrs7vcf357myvxdjj40xvja9";
+"hyphen-swedish-2017"="0lhl6pgggkp4hirzakbcpc167dv6klcd";
+"hyphen-turkish-2017"="q4p56y47qx2c7mjvkj945qgacblj13sr";
+"hyphen-turkish.source-2017"="4xv9azgkq91m4afsp9kvsq0f9ajxqfvl";
+"hyphen-uppersorbian-2017"="rr9kvhrf60s2rpq7478mbd751kwzl0w2";
+"hyphen-welsh-2017"="g3hsz81k297agiclv8ms1zb2hgkmlqcf";
+"lithuanian-2017"="w9v6qwl2xjqb3wpfnfsnh8rbmaw497cl";
+"lithuanian.doc-2017"="8vyaya9n1xq7igvhgqzpvb9cbhk62f3z";
 "lshort-dutch.doc-1.3"="rswbmzd9fkb0bwbc054pb0raa8zv2lfx";
 "lshort-estonian.doc-5.05"="2xqk5n14f2lizqdisir199mark4y5v2k";
-"lshort-finnish.doc-2016"="5jp8rkaw7qvrv8mpdnbmhg0m53566n8c";
+"lshort-finnish.doc-2017"="5jp8rkaw7qvrv8mpdnbmhg0m53566n8c";
 "lshort-slovenian.doc-4.20"="1w0g2p1l4p456wsx86ihdpadm8lhhcgn";
 "lshort-turkish.doc-4.20"="py0d16ij5gswbli1bgi4z63vajsahwjp";
 "nevelok-1.03"="v5hds3a09c91d79iac1qsyf0mr6lpaqg";
 "nevelok.doc-1.03"="biq2dbyv6mak992s0cqb834k119xfa0p";
 "nevelok.source-1.03"="5c03z6r25gidf0bncaanw1259n1hcdw0";
-"swebib-2016"="5z0719m62712flc3ylrnp5223gbsk98n";
-"swebib.doc-2016"="m23nfcdd5ddlgicd8hzlyfnr042y3bjp";
+"swebib-2017"="5z0719m62712flc3ylrnp5223gbsk98n";
+"swebib.doc-2017"="m23nfcdd5ddlgicd8hzlyfnr042y3bjp";
 "turkmen-0.2"="r8ryr694sxginv96wy2ibwg7mjwckmy0";
 "turkmen.doc-0.2"="ry7di8dm2nk9gbylnm58zrmlpilbch55";
 "turkmen.source-0.2"="jab2389x3cj6hhg0imkfbjcglclqap2s";
-"aeguill-2016"="2qlipazg1v8pj58aym9zwqqzfvprw29f";
-"aeguill.doc-2016"="q4gvvin01hkwmcc2llrkd61pr6dsmwp8";
+"aeguill-2017"="2qlipazg1v8pj58aym9zwqqzfvprw29f";
+"aeguill.doc-2017"="q4gvvin01hkwmcc2llrkd61pr6dsmwp8";
 "apprends-latex.doc-4.02"="fy3lj0gsk1nkcfp2ssyfm26a7ih2ysf5";
 "babel-basque-1.0f"="dasllbbd2k1yhqdwm41i38870lzp9caa";
 "babel-basque.doc-1.0f"="av6dd29g89fsq2hgva9fj4h2myj95jxk";
 "babel-basque.source-1.0f"="mvvhhqj4jd107zicv0gv8yhgjkjhxl33";
-"babel-french-3.2c"="f4lxyn2bxns51psdl31kqlr1jdf79743";
-"babel-french.doc-3.2c"="xncdfxfqmm2x9bylp9r3wrwkvll0hmls";
-"babel-french.source-3.2c"="sr02cii907bjlddm70zi8167h41n1dxl";
+"babel-french-3.3d"="hsm5wz2xvhkc80f2mg67r577l766ra2i";
+"babel-french.doc-3.3d"="q27dr2353bpj3ykkcxsjf4zjpwckjmnp";
+"babel-french.source-3.3d"="5ffk5z6w4wsmndwmbcn6n9a05csm1sbz";
 "basque-book-1.20"="6gmya3w1jnv20p9zyn3b8b095csb45cj";
 "basque-book.doc-1.20"="njw9j7s7mlx35ckjg0z404fizyxpn74n";
 "basque-book.source-1.20"="wydda9ij2ibwnhd8b0pg48bf2f1g969f";
@@ -2024,24 +2024,25 @@
 "booktabs-fr.doc-1.00"="8nmky9zjr4s9s8kikir9l4w6y69yk1vr";
 "droit-fr-1.2"="kqd2m29if8y21y5l72z5k0f6dafm95sj";
 "droit-fr.doc-1.2"="ss2xw9f26frzv9m2xvwbmvgagdhabc69";
-"e-french-6.0"="nypq6nv53vwf51nbaqa2kfnicc5z3235";
-"e-french.doc-6.0"="3dpx2bd8h02phkjmrgpxxlng56ss8zac";
-"epslatex-fr.doc-2016"="7kqdhx5drijbah1yl3vrwax3cnxg5zdk";
-"facture-1.2.1"="mpfjw9dbwx9w7cyf5xx0f7cwlb3g8vi5";
-"facture.doc-1.2.1"="88diy88xmmrm8krhgmx79acxlp5zmwh2";
-"facture.source-1.2.1"="xf3fjga3y0zga4z6gkqf7x2nhq9872vi";
-"formation-latex-ul.doc-2016"="7qwn3vhd31ynb7bwfvvynqdps24xmsmz";
-"frletter-2016"="4vqb93fvw2jmyxv1f269f6icnk4wbwpl";
-"frletter.doc-2016"="pg2pg5gsjpp0iyzapm6k1m4p95fkbi4h";
-"hyphen-basque-2016"="cf8qx0sgavyb7y615yrxh5is1nzfd6lq";
-"hyphen-basque.source-2016"="vq3bxdrcsgdmiqfjxfcy9w5jihxf78qf";
-"hyphen-french-2016"="ilb1im99f9qr7nzgk4daw3zc262wr3q3";
-"impatient-fr.doc-2016"="sjzbiaxr5cvnqxn7bylr5zhrkq46l1v8";
+"e-french-6.01"="w0gb3mb4i7yp73ammlwpd515q2hyxgni";
+"e-french.doc-6.01"="lvxzb7rnp45ylj2jk32qaccyg73xmza0";
+"epslatex-fr.doc-2017"="7kqdhx5drijbah1yl3vrwax3cnxg5zdk";
+"facture-1.2.2"="ys1fq6vkml8gnfc6bjkx2lkbdw2w0fsn";
+"facture.doc-1.2.2"="ij99my45fi9m1lcc79rj6kyxggmv4v3r";
+"facture.source-1.2.2"="aywgffiyigrwxv9lipf7a131mycjp839";
+"formation-latex-ul.doc-2016.11-3"="rs68mnwbwwgn4gs8z4w8cr3w04indrf4";
+"formation-latex-ul.source-2016.11-3"="lrk1fnmfi50ihqr6bi5s3896qf0gqvr0";
+"frletter-2017"="4vqb93fvw2jmyxv1f269f6icnk4wbwpl";
+"frletter.doc-2017"="pg2pg5gsjpp0iyzapm6k1m4p95fkbi4h";
+"hyphen-basque-2017"="cf8qx0sgavyb7y615yrxh5is1nzfd6lq";
+"hyphen-basque.source-2017"="vq3bxdrcsgdmiqfjxfcy9w5jihxf78qf";
+"hyphen-french-2017"="ilb1im99f9qr7nzgk4daw3zc262wr3q3";
+"impatient-fr.doc-2017"="sjzbiaxr5cvnqxn7bylr5zhrkq46l1v8";
 "impnattypo-1.4"="yi9xrsbs2crfwwjjgnxg0sybn8ygjr32";
 "impnattypo.doc-1.4"="cai1yyf5ipgjips10l1nsid8dz09kvg8";
 "impnattypo.source-1.4"="r7n5sihj35zm708k6cxs4xs71gz4msvn";
 "l2tabu-french.doc-2.3"="ncl8is1rmnk3n9ybrsav882w5qsb1w2k";
-"latex2e-help-texinfo-fr.doc-2016"="cyx158kxv3wp1igjgyqw64cx1832a3x4";
+"latex2e-help-texinfo-fr.doc-2017"="0n3q8gzd8xjhl92yyq2526sjsgl3jhid";
 "lshort-french.doc-5.01fr-0"="33vkjmz23zk2jrzyw99zri58jm0cpxax";
 "mafr-1.0"="vl6jgzlqqyn70cndvj91nnkmcxas15j8";
 "mafr.doc-1.0"="v44yahqn2gnnfbnf1ayqr96va6y49aij";
@@ -2051,28 +2052,30 @@
 "tdsfrmath-1.3"="5nz3qrfq13xyhabzww6092mb13014rhj";
 "tdsfrmath.doc-1.3"="8nnvlh3hw79z3k6c6vsvgnvkq814ldsv";
 "tdsfrmath.source-1.3"="3hfid9ih338p675pz6440f3ds5r3s646";
-"texlive-fr.doc-2016"="v9rr1d6l3np4k3s880abf9l51j2d5055";
-"translation-array-fr.doc-2016"="yia92yfpyrwv26vh12kks8arbsda05z4";
-"translation-dcolumn-fr.doc-2016"="acapy2zx06rsxwg810avmphyjjxca6gi";
-"translation-natbib-fr.doc-2016"="8yvcb3s928s5lldgy65idpfw23pb46z2";
-"translation-tabbing-fr.doc-2016"="64ix6i3bvaniiw7xj42bhqqmzv474lfy";
+"texlive-fr.doc-2017"="fgh4avb433fl6p3s80azqgghwgc2yl63";
+"translation-array-fr.doc-2017"="yia92yfpyrwv26vh12kks8arbsda05z4";
+"translation-dcolumn-fr.doc-2017"="acapy2zx06rsxwg810avmphyjjxca6gi";
+"translation-natbib-fr.doc-2017"="8yvcb3s928s5lldgy65idpfw23pb46z2";
+"translation-tabbing-fr.doc-2017"="64ix6i3bvaniiw7xj42bhqqmzv474lfy";
 "variations-0.3"="md5bnc4jaiva00gkdjyd63x67hyd09si";
 "variations.doc-0.3"="pxbpjpnsfz728czc4pjfy2nfr88dzmr8";
-"visualtikz.doc-0.62"="q6rcdvbhxlh7gpgx8l591qlvvhhbakip";
-"babel-german-2.7b"="3q1skv5l1srcpshqi3vwcsqk52vx986n";
-"babel-german.doc-2.7b"="yl3var6ggdyrrh9vrm05hybccmwiyxmm";
-"babel-german.source-2.7b"="7i7wk8m7z0g5wbfxqlwlc1hamg463j12";
+"visualtikz.doc-0.64"="knc5xl622da5m056f6005l6m8csrrldy";
+"apalike-german-2017"="9r1xvzpzfmbg9wjrp9s88xs3cihcjy5q";
+"apalike-german.doc-2017"="fqxqp783bx2lr618nl3618s9b21qkfkg";
+"babel-german-2.9"="kv71g0avz61jjxkqn015ixrj75lfmb8d";
+"babel-german.doc-2.9"="q4y448qcnbilib4r508labfjclhfmh4h";
+"babel-german.source-2.9"="7qk1zpw0gbp6lgk1q2n0hjwknfzm825a";
 "bibleref-german-1.0a"="wd8gzs1hrjyq9dmsjy6ss1qg0krlrzyd";
 "bibleref-german.doc-1.0a"="yc6vn69gsdsl3vxhg6klip8m6wkffyy0";
 "booktabs-de.doc-1.61803"="wcz4xqg22sijz3rczwk6nfnb0pk074ih";
 "csquotes-de.doc-1.01"="bksp4f2zywwkv5qw4njincxbpgcvz7dg";
-"dehyph-exptl-0.40"="iw2i5m02ln7j62kssf9hmwrks5fl3vxr";
-"dehyph-exptl.doc-0.40"="df8ac8qhrwbpgzw2wz5a35mj1jfv013z";
+"dehyph-exptl-0.41"="z2gdw39k65w2dcqhij29nyqn5ga6kp21";
+"dehyph-exptl.doc-0.41"="ddjmxir7ha94j4xf7j83vzfm21ajkrh4";
 "dhua-0.11"="4n8cvm61marrsbxd7308xw089j0q2wlj";
 "dhua.doc-0.11"="kisr6kymm9v5kk9nfxi0ckdf6k8mhr91";
 "dhua.source-0.11"="a9ap1rwrqqwh394c6hjqx5nlw070iwp6";
-"einfuehrung.doc-2016"="x668r5llhw28bqdr3k32yynf3720bdna";
-"einfuehrung2.doc-2016"="mwzp79i9w8ci8dxpnk4z4k6l9akj1qf8";
+"einfuehrung.doc-2017"="x668r5llhw28bqdr3k32yynf3720bdna";
+"einfuehrung2.doc-2017"="mwzp79i9w8ci8dxpnk4z4k6l9akj1qf8";
 "etdipa.doc-2.6"="cid5wjvbs4hl5lwczp1s1wbdwxfwr24n";
 "etoolbox-de.doc-1"="z53x50c71bvipgvgklp42n1yb50fq8gx";
 "fifinddo-info.doc-1.1b"="d7l7nsb4aj2b7nin8whkif0m5pcv11py";
@@ -2081,52 +2084,56 @@
 "german-2.5e"="mwin3zb743v74c97aizyiy86zj1pmdi2";
 "german.doc-2.5e"="invdh78rq8chiirzdlvijssdah8hsyk2";
 "german.source-2.5e"="zs1qxbd8r3bfyq77vaak9srxjxxn213v";
-"germbib-2016"="g11ayb7d5hj8s77kn9zvkvgfhdb0f4nf";
-"germbib.doc-2016"="vskc1hanqpmdm6p0v2np2slblpy8cf70";
+"germbib-2017"="g11ayb7d5hj8s77kn9zvkvgfhdb0f4nf";
+"germbib.doc-2017"="vskc1hanqpmdm6p0v2np2slblpy8cf70";
 "germkorr-1.0"="szywjh1bj2jqc6zqs5d1y1dwxq9h8540";
 "germkorr.doc-1.0"="bycbcbfrqs1r8l939kdm9f6s395rc5fh";
-"hausarbeit-jura-1.4"="f23zvm9zjx9c2qn8ijz94bsh5h731492";
-"hausarbeit-jura.doc-1.4"="w4csyql7k1q1mb59wnz1mnn06pdrz4hr";
-"hausarbeit-jura.source-1.4"="cv7y2f34zj9azaj72kw3jlcpr9gywr38";
-"hyphen-german-2016"="8q3v0w76pg2pdbzr0v3vxgm4nf173p30";
-"koma-script-examples.doc-2016"="36v70yqhhs5mjl0mf0vj708k4pjgbc5k";
+"hausarbeit-jura-1.5"="0pifqdiq22zs94z9ywfdirgljp11a2g8";
+"hausarbeit-jura.doc-1.5"="9vvkmp35qa1ygwj0isib5wsf12nnfs4f";
+"hausarbeit-jura.source-1.5"="zc6g0yd997syp0j8dlkbzkvk29syph7b";
+"hyphen-german-2017"="wrbsgmnn84g6ma3qdzrv3pac81ab3f5x";
+"koma-script-examples.doc-2017"="36v70yqhhs5mjl0mf0vj708k4pjgbc5k";
 "l2picfaq.doc-1.50"="35c7cwi94qazkf5351kj5hl58xil9nms";
 "l2tabu.doc-2.4"="4sab9w752r7xr6l9a6sxig4q0sdfvfxr";
-"latex-bib-ex.doc-2016"="51d5jw2dmp9rvy8bqxzw6clls5aqi189";
-"latex-bib2-ex.doc-2016"="rggjiidvpwxfd978rkmkwmg70w7amnpi";
+"latex-bib-ex.doc-2017"="51d5jw2dmp9rvy8bqxzw6clls5aqi189";
+"latex-bib2-ex.doc-2017"="rggjiidvpwxfd978rkmkwmg70w7amnpi";
 "latex-referenz.doc-2"="463iyb1dhx6kdsqqb4crgdh0xgmrckpp";
-"latex-tabellen.doc-2016"="9y8yqyrkv49pj1v58nmf5qyibyphnias";
-"latexcheat-de.doc-2016"="fjpnrnl8fkv5lnvhg6rmijic0k2yshrf";
-"lshort-german.doc-3.0a"="blzclzyzpg9jhwvjkzr79j93c56x98cr";
+"latex-tabellen.doc-2017"="9y8yqyrkv49pj1v58nmf5qyibyphnias";
+"latexcheat-de.doc-2017"="fjpnrnl8fkv5lnvhg6rmijic0k2yshrf";
+"lshort-german.doc-3.0b"="nib38mz0rhy352w9zvdbnrlay9kahp06";
 "lualatex-doc-de.doc-1.0"="9l7ac63knl5cd6lxmrbnmjj8s0nwp5bh";
 "microtype-de.doc-2.4"="22zsps3wqlz58x3x1i3wadbn5jp9mba7";
-"presentations.doc-2016"="rczfpy5ayw0h07xlqhw4k2isp080g2ar";
+"milog-1.0"="lz3w4rhsgbl699hh8431yw6a9si6y9yy";
+"milog.doc-1.0"="zf9qx558g8z5xl906x391c6hylz57x8x";
+"presentations.doc-2017"="rczfpy5ayw0h07xlqhw4k2isp080g2ar";
 "r_und_s-1.3i"="8vn7cjc42dvny30pkgp768yy87z9d2b8";
 "r_und_s.doc-1.3i"="pk63m1jl1yzz2xqiwynpph3nrlri1hkl";
-"templates-fenn.doc-2016"="yy9rn7m9r0paxvya3icnbqwccpjkkbij";
-"templates-sommer.doc-2016"="6n6saza6xd8mjys1ckfy0362sdya4616";
-"texlive-de.doc-2016"="as5pa5g7fy3ml5wiq5wf9gx0wy1pa4d5";
+"templates-fenn.doc-2017"="yy9rn7m9r0paxvya3icnbqwccpjkkbij";
+"templates-sommer.doc-2017"="6n6saza6xd8mjys1ckfy0362sdya4616";
+"termcal-de-2017"="xqflkf5rvhsfhsbgbpvbaqz52gma049z";
+"termcal-de.doc-2017"="0kc2ab7ndmva6pdrgjrifbc4i5dhgvhb";
+"texlive-de.doc-2017"="aal1ki9d4f0mbr89b18dcdwk1f77rrnd";
 "tipa-de.doc-1.3"="aa0msh91ynxxigmbxwy72i05g095fwxg";
-"translation-arsclassica-de.doc-2016"="xayn50bvfkyf5fh93426fg2m6mmvpdwc";
-"translation-biblatex-de.doc-1.0"="0kpsk44bah4ckxxhzdxzkmn5iqz0h5z6";
-"translation-chemsym-de.doc-2016"="khd057lr5p42wqz3p6n58d2z25jdknrp";
-"translation-ecv-de.doc-2016"="7yrn8n7071yasf0lpswz8dis0vkjg33g";
-"translation-enumitem-de.doc-2016"="8c46h1y6mpz736w2nh01jkh96n0ar2jx";
-"translation-europecv-de.doc-2016"="541qkhphqn2f3bba6prrf2npqxl022ah";
-"translation-filecontents-de.doc-2016"="9c59fnc6krcsswc3hsd4aimzfvycqp59";
-"translation-moreverb-de.doc-2016"="1j0hyf240k1q27li0dnnw0cs4mi2j86w";
-"udesoftec-1.5.2"="9h9fxz76s3ddcqpcrk37v84q6vd6fl80";
-"udesoftec.doc-1.5.2"="9s28bifqpwimsviciaqb2d38dzy9wja1";
-"udesoftec.source-1.5.2"="kv2y35sl60d2jav1daki5fgrvhfz9bff";
+"translation-arsclassica-de.doc-2017"="xayn50bvfkyf5fh93426fg2m6mmvpdwc";
+"translation-biblatex-de.doc-2.0"="zy7syskywyw0ndm1s6j8vp1q59c65aim";
+"translation-chemsym-de.doc-2017"="khd057lr5p42wqz3p6n58d2z25jdknrp";
+"translation-ecv-de.doc-2017"="7yrn8n7071yasf0lpswz8dis0vkjg33g";
+"translation-enumitem-de.doc-2017"="8c46h1y6mpz736w2nh01jkh96n0ar2jx";
+"translation-europecv-de.doc-2017"="541qkhphqn2f3bba6prrf2npqxl022ah";
+"translation-filecontents-de.doc-2017"="9c59fnc6krcsswc3hsd4aimzfvycqp59";
+"translation-moreverb-de.doc-2017"="1j0hyf240k1q27li0dnnw0cs4mi2j86w";
+"udesoftec-1.6.0"="w9avxxzylmpgvxkgz5q803vf8bn77b6l";
+"udesoftec.doc-1.6.0"="yv9w3pds1xmr7p1lapmk01c7qc02zymj";
+"udesoftec.source-1.6.0"="x8000k76ca8iq8717a13g7ahbxaz3n87";
 "uhrzeit-0.2c"="5fwbnq0kjdcd88bmf0yscqvz1q47rlgx";
 "uhrzeit.doc-0.2c"="22iimwpxs90xz0c6l9v7aq6l4wqm39bl";
 "umlaute-2.1"="097i2xib6dk7g0pbn7h5blv9jnny07b0";
 "umlaute.doc-2.1"="hkjv5ym6954i5l2qxv3jm3p1prbn55h9";
 "umlaute.source-2.1"="p6217bas6hm8kksip8jkb2bhdpa9p91w";
 "voss-mathcol.doc-0.1"="f15dshkczyv9r9a6vzps3ls1cz95sk8v";
-"babel-greek-1.9f"="gnx9s4l8viykx9f9fda0x6zcchfsvncd";
-"babel-greek.doc-1.9f"="j3mdbk02dww390316r39lldjyfcqm213";
-"babel-greek.source-1.9f"="9f8l0w2hpj2g5q09sf54zn9jbmg0fic2";
+"babel-greek-1.9g"="bm4k91lz9a1pfnl4jpn04idl2c08lyd0";
+"babel-greek.doc-1.9g"="y7jwlw980gigm0n059d2xsq1f93v2h9k";
+"babel-greek.source-1.9g"="qm52xxg59kdwbn680zrr9qdziagr69jk";
 "begingreek-1.5"="7v94fdb2kxzwgvcsjfd5gnqpjhsrgp9i";
 "begingreek.doc-1.5"="rgiglmyfkxghz1w9g67lyx28rvk2bwgc";
 "begingreek.source-1.5"="jscz6nq9n7aq1l3j86xyvki200ja40p5";
@@ -2145,11 +2152,11 @@
 "greekdates-1.0"="zm8cfpsxp12s6n38n7lgzha482124m7v";
 "greekdates.doc-1.0"="lyhisq5vmvxpmc1g59dxnpkxnvziddzk";
 "greekdates.source-1.0"="dy4cbvglp6fv0fd13mlm4x5wjfg97889";
-"greektex-2016"="zmms6d4vix6nzw6jc06iir73wj9swvir";
-"greektex.doc-2016"="p5f90xphw0ck7p6iw2gz6anki05v2b9y";
-"greektonoi-2016"="agnjlz6cdb3figh8g8kfnqah4ppzqqci";
-"greektonoi.doc-2016"="8mh04p3y9jizn5zdm63vr50nzk0rjcyv";
-"hyphen-ancientgreek-2016"="y52jhwd37cwc0fnvn1zrhqb7hxklsjlm";
+"greektex-2017"="zmms6d4vix6nzw6jc06iir73wj9swvir";
+"greektex.doc-2017"="p5f90xphw0ck7p6iw2gz6anki05v2b9y";
+"greektonoi-2017"="agnjlz6cdb3figh8g8kfnqah4ppzqqci";
+"greektonoi.doc-2017"="8mh04p3y9jizn5zdm63vr50nzk0rjcyv";
+"hyphen-ancientgreek-2017"="y52jhwd37cwc0fnvn1zrhqb7hxklsjlm";
 "hyphen-greek-5"="b8drw54lc48kn8dwwyr4bpfsv5cxarjp";
 "hyphen-greek.doc-5"="r6v8qyqkrvnqn6729i7p3ah3vmgxnzrn";
 "ibycus-babel-3.0"="m0m76cgm1k930h85s6hi9qnlh86gf8z9";
@@ -2157,60 +2164,32 @@
 "ibycus-babel.source-3.0"="samw380w28p4621z2f9fav06i9dzj3b0";
 "ibygrk-4.5"="3xwia8yqznfai0wjz7rc63dizdfc3n94";
 "ibygrk.doc-4.5"="ydy3swiwjr9r1j40fhkwhd2d7z614ipa";
-"kerkis-2016"="ydv39ycvib03pkw5pvvnv6mjyvrij0rc";
-"kerkis.doc-2016"="admp7blm0nd44qcnqqxd0bpwxskz7dqm";
-"levy-2016"="isfhykz3fkajjygnpl7psd2n9n9lzfwy";
-"levy.doc-2016"="y92455xr0yq62ppxd650vvxaknkb5qym";
-"lgreek-2016"="64pdy6vj1q7sg23xg31pw0mfznahcvzw";
-"lgreek.doc-2016"="iwa1xfg3sawwblifpgkc3na1r3hld02r";
+"kerkis-2017"="ydv39ycvib03pkw5pvvnv6mjyvrij0rc";
+"kerkis.doc-2017"="admp7blm0nd44qcnqqxd0bpwxskz7dqm";
+"levy-2017"="isfhykz3fkajjygnpl7psd2n9n9lzfwy";
+"levy.doc-2017"="y92455xr0yq62ppxd650vvxaknkb5qym";
+"lgreek-2017"="64pdy6vj1q7sg23xg31pw0mfznahcvzw";
+"lgreek.doc-2017"="iwa1xfg3sawwblifpgkc3na1r3hld02r";
 "mkgrkindex-2.0"="v5hb36lspx6xyzzpm8ryprr7mwwpcrm5";
 "mkgrkindex.doc-2.0"="mfpkm8mm8n0nqhzgnm70yjy16lzjvvhd";
 "teubner-4.8"="7h0mh95kwrp8l3im9fq4m4my65hxcwpd";
 "teubner.doc-4.8"="w0ygcfsjgrw6r5z49ciwxfwyxzpf6gfg";
 "teubner.source-4.8"="l0syr53r8jk5cjh3lx8bf279hlgwsps1";
-"xgreek-2.7"="bvnzps4v0g12w7rg6i666f2ricnfwbxb";
-"xgreek.doc-2.7"="6sdy2idqj2wqzh1zmxp8si3kfa3y0x3b";
-"xgreek.source-2.7"="kriy6p17jib8p34mwzhk0f1kh7i76ksq";
-"yannisgr-2016"="0pjpl0qghjh6qdgy7snalxyxw6ca6cwk";
-"yannisgr.doc-2016"="jx7mj6aw24ff9k4qcr51kdlk7xwpiflc";
-"bangtex-2016"="cn3ss5r73gr19dbjlrnvb7icfpbb2aig";
-"bangtex.doc-2016"="7dwz3jgliyn649ns4iqmgjnqn80bv3xr";
-"bengali-2016"="xv6b2ya4hn8bhhfwmi7sziq9qwmhx6qb";
-"bengali.doc-2016"="f6c5pyzrih551k2p50vqy9jfx4ar3svx";
-"bengali.source-2016"="s77yi86avqzhp5lin4dwhbavb41g4q0n";
-"burmese-2016"="gymkq1rr5pmwaaid3dpks3f8ngz3525f";
-"burmese.doc-2016"="yirjf8crgj2a89451jh8iv66qhdqdrr7";
-"burmese.source-2016"="ixz9y2ck9awijs6w9rz005nkvl613811";
-"devnag.doc-2.15.1"="1ds3q2b6vhgds001haimf60xw9zcp7b5";
-"ebong-2016"="mhlr9r7i2zf3rm905m527hbnydppaiar";
-"ebong.doc-2016"="pqr96lyawpif4fzp0izw8j0506gnf06f";
-"hyphen-indic-2016"="s567k5d9h58s4a1203a5a8h34hwdxk8z";
-"hyphen-sanskrit-2016"="smb3iyryyb5p0fcrb083q6cnzh362ps8";
-"hyphen-sanskrit.doc-2016"="a2pncv9fz35p3bbj6mll93vqcyagsmbq";
-"sanskrit-2016"="scnnwa1xsfnpv0w7xp8ry49ps6s5pw8w";
-"sanskrit.doc-2016"="b7fyy6ghxy4i0r3yyhphbfanw660hpv4";
-"sanskrit.source-2016"="lyf2xns9lj8ip4zhvrk2lbjh2kmhpklg";
-"sanskrit-t1-2016"="lwnbgg4flg35ndf7p0iii468sf6avylv";
-"sanskrit-t1.doc-2016"="h7licx4ivjwnvbym7724rdj3vrcaak5i";
-"velthuis-2.15.1"="10lr5jgiy28w3diqwwj9qlmfrlhicg17";
-"velthuis.doc-2.15.1"="a4ha4kphbfin4xbqz8lmiv3v6cca3pcv";
-"xetex-devanagari-0.5"="v4gi0agfvxz808s3mapzf2ylxhv5n8a7";
-"xetex-devanagari.doc-0.5"="b3kz558m6h9avjwalwpw1nnr68q47sjr";
-"wnri-2016"="z6010l0pydl50vy5jnrg5fh2xki5fi6a";
-"wnri.doc-2016"="clpx7kcx1hp0qy30v5nlfz10kd5hmqcl";
-"wnri-latex-1.0b"="y9n4dac8cbzm2gwhcfan32rbv3dyhr0s";
-"wnri-latex.doc-1.0b"="f1m11fnp49h90f3djiml0awlxqcnxkdp";
-"wnri-latex.source-1.0b"="zd4smslq18sp693fgay24m503v01v3bk";
-"amsldoc-it.doc-2016"="3xqg4bjhsk0r27g7absrq84nwy6zy265";
-"amsmath-it.doc-2016"="mrz7iav2jpify9h3vz703x863km3vb9r";
-"amsthdoc-it.doc-2016"="bpi907wji0gimbc22s86vg3fwv6fkpsq";
+"xgreek-3.0"="gl8gam8ndsfvdgcksgh0zvgfpyc99128";
+"xgreek.doc-3.0"="kmb4zmz5q6yzh4iwdbwrxaijq0y9v7y4";
+"xgreek.source-3.0"="z66y54im2xrvgmx5nmj3ajh5z3x2nmjq";
+"yannisgr-2017"="0pjpl0qghjh6qdgy7snalxyxw6ca6cwk";
+"yannisgr.doc-2017"="jx7mj6aw24ff9k4qcr51kdlk7xwpiflc";
+"amsldoc-it.doc-2017"="3xqg4bjhsk0r27g7absrq84nwy6zy265";
+"amsmath-it.doc-2017"="mrz7iav2jpify9h3vz703x863km3vb9r";
+"amsthdoc-it.doc-2017"="bpi907wji0gimbc22s86vg3fwv6fkpsq";
 "babel-italian-1.3n"="zc8zwrjbpcjp57il9zjpqs5hhzrk0y1a";
 "babel-italian.doc-1.3n"="z8gv41rw62chkmxvkw5a83i7vznsbsqv";
 "babel-italian.source-1.3n"="9gyf05wa96w7xhwh1xyfs4rnl2iax3lc";
 "codicefiscaleitaliano-1.2"="gqzlc6agkwysk75lzdxbkz4azawzyrjh";
 "codicefiscaleitaliano.doc-1.2"="c7spaihgf2fdimihsg5cf7xn5bczkw97";
 "codicefiscaleitaliano.source-1.2"="vxi0halq6yx9gwd0vkcmjx6am7dnjjg1";
-"fancyhdr-it.doc-2016"="nl2xsg3mppyni8ns9zij452dkkw4ayj0";
+"fancyhdr-it.doc-2017"="nl2xsg3mppyni8ns9zij452dkkw4ayj0";
 "fixltxhyph-0.4"="gkadi0h5794bxkkb809162a1z7aicw78";
 "fixltxhyph.doc-0.4"="l2xq1rsc95fbk3saqnx86l9d73mvm92v";
 "fixltxhyph.source-0.4"="4nhcwfdf5gs7fc5iy5fph8yiq4wavjp3";
@@ -2226,80 +2205,100 @@
 "layaureo-0.2"="7qqhm139n1afxdpsmikzdyn7pn09hv9x";
 "layaureo.doc-0.2"="pf22ypfazq7hwxpfiidcvkd24zs1gys3";
 "layaureo.source-0.2"="3q0ixl7rw7sz7n2bfd8gyfnglfcq2hcs";
-"lshort-italian.doc-2016"="n79a6mw3xc3ar3adan0l1xpr4xg8wrid";
-"psfrag-italian.doc-2016"="xb8qlcz7f0za963yybhjvbyjq37z516f";
-"texlive-it.doc-2016"="bbim7p2q4q784i1lxxaadsc02k4zdi50";
-"bxbase-0.5"="a15adjgil68cxdysrijbp9acmbqa0y27";
-"bxbase.doc-0.5"="0rbdki8mbd6z16xz2wapachnxm8yncxj";
-"bxcjkjatype-0.2c"="ab1xwylw4sijrmxf9ri6skvg79xahsc9";
-"bxcjkjatype.doc-0.2c"="v0h7kjrfcpswvw3rr2hf99gk90wbi9sr";
-"bxjscls-1.1e"="8dhffc4warg6h7h6ihcpr66sqxmakhn7";
-"bxjscls.doc-1.1e"="p4kmrya3jxk4y736k31m171sljnd2xyg";
-"bxjscls.source-1.1e"="v593smvfnqwnqm3x405w68cs18g0n5vf";
+"lshort-italian.doc-2017"="n79a6mw3xc3ar3adan0l1xpr4xg8wrid";
+"psfrag-italian.doc-2017"="xb8qlcz7f0za963yybhjvbyjq37z516f";
+"texlive-it.doc-2017"="vxqvdibyhil9anvlywb1yqqq8x9mcpwb";
+"babel-japanese-2.1"="jvwjzk00mbywd64cjgchn58lcvvdm2lz";
+"babel-japanese.doc-2.1"="xy5s8j84q60va5jm7b39lmncjrxyr4c1";
+"babel-japanese.source-2.1"="mi0ahdg238r2ra2l91vp4wpfad32ahsa";
+"bxbase-1.1"="9qcjdyngscll1bkc1g0i9d50hjrvnbjv";
+"bxbase.doc-1.1"="icyayz4cr8p3zgbby8zaypclximpiyqf";
+"bxcjkjatype-0.3"="94n8gv2433510cq05vl97zrna0gyya1z";
+"bxcjkjatype.doc-0.3"="z6rarps2vgxp061w0q8amki68j51yqlx";
+"bxjalipsum-0.3a"="d6svafibkkjc5p3hjzrc8ibb2fwmm05c";
+"bxjalipsum.doc-0.3a"="srwc07mapyqn9hq6hy26gxaj6khy9ffh";
+"bxjaprnind-0.3b"="8pfq18sbkvqzb2may5j4n8xadgjb8a9l";
+"bxjaprnind.doc-0.3b"="1vsxn97w48hn05il79byfms5w6749xpc";
+"bxjscls-1.7"="1hgja444lxjrm4jjkrj0shkpvvx8m4vx";
+"bxjscls.doc-1.7"="ykz4rbm0qah2rk26kf7l2zgabcwkvd6h";
+"bxjscls.source-1.7"="74cic57mzsbshnz7gm2447jdivr5mx60";
+"bxorigcapt-0.2a"="16ri8j6fyqc1rf8jmjja41vdxpqnvckq";
+"bxorigcapt.doc-0.2a"="i91ilxpc4f37qihbn9wa6ajvn00ya60r";
 "convbkmk-0.10a"="nzdsi8as7xpp83w064r6hwv9lv41fiq7";
 "convbkmk.doc-0.10a"="481fahf0p919gl9rl46qpp4xi9s9xbqm";
-"ipaex-2016"="rw3p5qiwbw8csvmxmx6gzd5pn58wgld0";
-"ipaex.doc-2016"="ik7n8w57ix8himq7z26llc52gl07f767";
-"japanese-1.3"="bhx7258l34dp6rnim62i8hfjdpdaa3yp";
-"japanese.doc-1.3"="yg6si864mkna4svdlmrv0hbs5ndrdgd0";
-"japanese.source-1.3"="vgpac9smlyfli4fz4k1m807s0l9qmq6d";
+"ifptex-1.2c"="g067kqkal711mapnw2lfqspj557ddr9j";
+"ifptex.doc-1.2c"="x22bmp95nh3g718b8b9ls535vv1nkzck";
+"ifxptex-0.1b"="b4594mp983rcvzjf9ga6jl4zm0szh4xf";
+"ifxptex.doc-0.1b"="1mng0d5rg93q63xai5034xdmp8g534n8";
+"ipaex-2017"="ib3p210rjr3h73257p7swchy3w1in5bh";
+"ipaex.doc-2017"="1rvvg102vks3ai8pf8yykckd3c9jhmz1";
 "japanese-otf-1.7b6"="gg3a77f64a0hikr7vy72sbkbgalrafp2";
 "japanese-otf.doc-1.7b6"="4q54k2hdnq3yqwrdvj782ys17d9y019b";
-"japanese-otf.source-1.7b6"="9crkbzn6bn2r9b40ms5fs4hc5hrvaxw7";
-"japanese-otf-uptex-0.17"="nyxs33g2s0ra3p5glc2bixs99d2y21gj";
-"japanese-otf-uptex.doc-0.17"="dhh6vvdlj2ynw5gkaqibj6gb32ymi2xw";
-"japanese-otf-uptex.source-0.17"="c2nhgc2a9h9yxhvjgdva1gyvb4a7ni6x";
-"jfontmaps-20151002.0"="3nr06l8xz4f6dbkv41arnn2lr85b6g6l";
-"jfontmaps.doc-20151002.0"="9vzwyilzslxiff1cbnjrivgkcczvphg9";
-"jfontmaps.source-20151002.0"="fbpi1hz2hn9lxd2xn419bwb3yrhk3dxw";
-"jsclasses-2016"="ll9ymhjaym0ip3b1hicfanaqnp964571";
-"jsclasses.doc-2016"="hcnrfmk77v35h6mq8c5is8fscvbi80g3";
-"jsclasses.source-2016"="26v2qml65yd158p2x9jr42w0asfpivm1";
-"lshort-japanese.doc-2016"="5b8svqq4w1ipn3737s73pk969s8yv63d";
-"luatexja-20160618.0"="y9fa72kg3d4y7i544v13976fnqxmrdks";
-"luatexja.doc-20160618.0"="9cgwbgf2iprakwm54c9mda239q41z9ax";
-"luatexja.source-20160618.0"="cqmwfwl8gx01iqa2k12krdya66fz0ny1";
-"pbibtex-base-2016"="nix33k8m51bymsgnmfz69mwpllkk9rhq";
-"pbibtex-base.doc-2016"="vgmw5w68b5y2rhwsjssm3bx4dn96ix7n";
-"platex-2016"="x1z2syyv0623500bfx5i55j5f2wv82z2";
-"platex.doc-2016"="2n7xgi5cfshdcfk6n4asb7kbxah4k2bf";
-"platex.source-2016"="wb5fnxsrh9p00bc147ih2bfh34kab7dp";
-"ptex-2016"="x0555j3scclcqr7qzzi9vxf5iqirajdm";
-"ptex.doc-2016"="fxd4wrfgdfrxp5bamywg78phlb1gfac7";
-"ptex-base-2016"="55wwpashqmwca7iz7q84l7kjj8ixpfga";
-"ptex-base.doc-2016"="cw7jprmh9gn8jzs4mdkhb0rj7a75ipzv";
-"ptex-fonts-2016"="ygpza762nrl05i590p60q8nyqxn42ks2";
-"ptex-fonts.doc-2016"="13hvfwppj9fdya0wlj0sv5db5bzr5sw5";
-"ptex2pdf-0.8"="v4z8kvf5hz5jig8c1fv8aliaczxf3aya";
-"ptex2pdf.doc-0.8"="sjp97aka09xpkq16chn1rd0xvjbkd45l";
-"pxbase-0.5"="cfs2rdlj1wsmjnr63pvm49dvhxhjzm42";
-"pxbase.doc-0.5"="a9m3kywik9d25vwjlg87bbarx3pd5by5";
-"pxchfon-0.7h"="bji0lsjvxfdi6z8xd4ql17lzkg08kryp";
-"pxchfon.doc-0.7h"="bbhykif867fd2qjnwhv10wqhvxm8m21v";
+"japanese-otf.source-1.7b6"="pvan5wp1hhq0dqm2x97kwa43c6qc4lrw";
+"japanese-otf-uptex-0.18"="39mga89mi6sjx8m9f1wds2vb7dxkgh9d";
+"japanese-otf-uptex.doc-0.18"="qynw8kr676ziw58s9d6xsddrs70ak4xd";
+"japanese-otf-uptex.source-0.18"="3fn8rrnjy25l185997kijl7pl85n3j4f";
+"jlreq-2017"="ljpxap8lmg4rin18gx7yb8dj23qybdjw";
+"jlreq.doc-2017"="8apgk3zjg4d4qwmnchghwk3y6nf1dcqc";
+"jsclasses-2017"="fp6d5ngzlikw8hcwrzxjzd5d0i26a2v3";
+"jsclasses.doc-2017"="pkvvkbd87mmd16dd8q582p1qlpq75371";
+"jsclasses.source-2017"="8mncfg6rspk5d2z4dc312zkjgvbcxm61";
+"lshort-japanese.doc-2017"="5b8svqq4w1ipn3737s73pk969s8yv63d";
+"luatexja-20170904.0"="axn9g52f6apx06r0rb4iwyjcf3bgjasa";
+"luatexja.doc-20170904.0"="0y8la2x2mmp9lkjwfv6w5f3cd28xvsgc";
+"luatexja.source-20170904.0"="g41i6xvj5c2b2wzrvv3rx4l1cc40g40r";
+"mendex-doc.doc-2017"="4wkds7kkvz3mhbvs8xzh4ngrm0r0yx77";
+"pbibtex-base-2017"="nix33k8m51bymsgnmfz69mwpllkk9rhq";
+"pbibtex-base.doc-2017"="vgmw5w68b5y2rhwsjssm3bx4dn96ix7n";
+"platex-2017"="x5sb8df71kw00nfzir5zxqx1jx6rsm66";
+"platex.doc-2017"="hxndm30avbn4hga129anfm7n1agly6hd";
+"platex.source-2017"="9y1cd3wn7kqfifbw8fvx41pjf5m1n50a";
+"ptex-2017"="x0555j3scclcqr7qzzi9vxf5iqirajdm";
+"ptex.doc-2017"="chzqsyz5qqbr22q5kkqirqdjgllg217v";
+"ptex-base-2017"="2014gdh1r3xvpc1zmz2smd3d06h88d45";
+"ptex-base.doc-2017"="xxvf7g44g2p40mlaqm4sjrp1i29ywd2c";
+"ptex-fonts-2017"="90hb2mblilkzdz3nqkj2a81bkhli0n41";
+"ptex-fonts.doc-2017"="0q2kl6r1y06kafjfgvyzpgvlw0y0y93g";
+"platex-tools-2017"="xrvccbdblczim03gxf3iaaggm87zdgkf";
+"platex-tools.doc-2017"="3f9k9prxavf4xsm2csbngn4na6a0jm47";
+"platexcheat.doc-2.0"="cipznb3854pnlvzrvxrxnwx5127gm5c9";
+"ptex-fontmaps-20170624.0"="nqcwmyasci6f12kan5pjpszjpr01lkmk";
+"ptex-fontmaps.doc-20170624.0"="v7vh5f8r20krpp5r416iid7qxf48x5rk";
+"ptex-fontmaps.source-20170624.0"="75v1ldqccndrs2r0visyz17j50lnj7r6";
+"baekmuk-2.2"="5rhc42dabpd99i92hkdmkjzgr3jqhg16";
+"baekmuk.doc-2.2"="4syhh948m1jw14xlhq6dbpdw5p5p198h";
+"ptex2pdf-20170622.0"="5zpcvc07hqncglb19x8m0k7bs4nklg6l";
+"ptex2pdf.doc-20170622.0"="4rrbqj997yvh83wzkcwwh2sqsdxn58yj";
+"pxbase-1.1b"="92jsnxmiqmpy56dhdjaark80zsbb5vxa";
+"pxbase.doc-1.1b"="n5ns9b3vpa52b78hhgbvg0114faw0dgi";
+"pxchfon-1.1b"="227z9k89r1d0qi5lhyriw3mzg4m469rw";
+"pxchfon.doc-1.1b"="i3h7adlmw907vhcjv5scqx6jxfyxx0m5";
 "pxcjkcat-1.0"="dzfnrrf8f727a0jhk1fq0w10jqv189fc";
 "pxcjkcat.doc-1.0"="05wz2shwxan0crgahavbgpki8kvvq6lm";
-"pxjahyper-0.3"="gnmm16rnsj53989hvwrr3zbrdagqgsr9";
-"pxjahyper.doc-0.3"="kv5755ff29b9qq4krldj34dr7y8d11mq";
-"pxrubrica-2016"="715qrv98q1p45igh4i8vdbahjiirn6cd";
-"pxrubrica.doc-2016"="x8sahrizyfs3fsrcj0ir2kp62cd7bvfa";
-"pxrubrica.source-2016"="m3pwdsq4d4d8wr1ansgf3l8lv1dsks0w";
-"uplatex-2016"="jcp920r12y0ycpn3vcbrqpqkyz9h6cap";
-"uplatex.doc-2016"="rjijgnngr283s18cn8l5s2ak6pdna0p7";
-"uplatex.source-2016"="wwmsbbcvzps1fwihgg67gpcsx4g6p82b";
-"uptex.doc-1.20"="yh3sqpmqh2np2rh2znjw7yi7nwjpqmzf";
-"uptex-base-2016"="1rnrl91k8j55vn11jb524ax006zsa0k9";
-"uptex-base.doc-2016"="f5xmqqmm6dpbl34449a6cypzj5dfz872";
-"uptex-fonts-2016"="rrblg7298fjx0i812c3ang0jyayr5673";
-"uptex-fonts.doc-2016"="9xplpb15g2a7mlgwl9nnf80jrkqn1fgv";
-"uptex-fonts.source-2016"="7fv1x7hb2wxq46dpk5iqq3ah996fbyms";
+"pxjahyper-0.3a"="3a9zl4137v9aj5rxbq7adw58yvnpy5cf";
+"pxjahyper.doc-0.3a"="5vp1y5bkkgmsnx9nb3008xwkjcn0c6m6";
+"pxrubrica-1.3a"="bkfyawj5m7c98fg5vzixpch3kjsxrpin";
+"pxrubrica.doc-1.3a"="gglfvvfwj2zvz1r6mwq1rxhppjj4b8p2";
+"pxrubrica.source-1.3a"="1c4bnhz069j2nq9zbngf3fliywf71q60";
+"pxufont-0.3"="9cvf0yzn10qsfzwymqgzjc6va01yxrvg";
+"pxufont.doc-0.3"="mfxsqffbf5fdipm4cfzmxk0c51kkncxk";
+"uplatex-2017"="q64l0jcg7j81xs1zm4zsmrw5i7zxkz0j";
+"uplatex.doc-2017"="3blys33r5npwd9zdkhyng96d1f797wc8";
+"uplatex.source-2017"="xmvm4ac425msrcsii3nafnk5ck0yyssi";
+"uptex.doc-1.20"="nm8z65s2mglz8j7b14ycyjfjcxqq67j6";
+"uptex-base-2017"="8w4dl8ga3rarn2zl6515i6xcx5x9qbng";
+"uptex-base.doc-2017"="ya7n5pgaxb556i3d2qw1qhgnd03sdwg5";
+"uptex-fonts-2017"="671gjfrrxvxsym1kcbmdqwng3p66vcsv";
+"uptex-fonts.doc-2017"="jyvva851nsqjwwqfkhsjlsa6xmzc4lyp";
+"uptex-fonts.source-2017"="7fv1x7hb2wxq46dpk5iqq3ah996fbyms";
 "zxjafbfont-0.2"="gqmmwcbw81z91mwqf731jk0mgdfiw8d5";
 "zxjafbfont.doc-0.2"="0901rpw6rd2wivh0fsqnna6gywc6j8hh";
-"zxjatype-0.6"="9qhfs4jzhh2hg62bbdgczns5p6lp4yxp";
-"zxjatype.doc-0.6"="dsbn56x5h53lz263hq1llbbb7s1v5cxq";
+"zxjatype-0.6b"="4l4hhr25q10l90846y1vqziv72k4a11w";
+"zxjatype.doc-0.6b"="sgbxv0j3f3jb0gw6rx3nq4vmfgpn3m7q";
 "cjk-ko-1.8"="bzihr3wa6c0rp7jrj89483w2xlapj6jv";
 "cjk-ko.doc-1.8"="avb0cwq3p97yj94gsfwj29bwdixv2lyg";
-"kotex-oblivoir-2.1.7"="b4awgfxn4990kjv0gjv8vgifik5pz48r";
-"kotex-oblivoir.doc-2.1.7"="3gi19z396y82hfyzl6p3kh247k23h4ng";
+"kotex-oblivoir-2.1.8"="wq598w1jbvbczmznn97basmrybz42zxq";
+"kotex-oblivoir.doc-2.1.8"="inqj292cqra8rxpa11vwkpjx7wcpx3zr";
 "kotex-utf-2.1.2"="x3j8gcy8ylvgpiwyrwrgl8wjj9gdrp63";
 "kotex-utf.doc-2.1.2"="r61iwnwwvwh1999l4ylczvz0d6l9ff1f";
 "memoir-3.7f"="3jvlhgp9mk14zlsqwb9y5x1nh3xk6ydc";
@@ -2312,12 +2311,16 @@
 "lshort-korean.doc-4.17"="1g5islw4v6x4s50zxb0zgc3nhk83yf06";
 "nanumtype1-3.0"="b1wscjlknaslwhpaxxfi8w2drxg1m770";
 "nanumtype1.doc-3.0"="4jpi6pmfq42sbcfzl403niskxg6qnxfp";
+"unfonts-core-2017"="ms70r9bpx59vj59mgrg9366idfzr17hf";
+"unfonts-core.doc-2017"="15lirjd8hw6kajqalrbjda9fzbgzs7c2";
+"unfonts-extra-2017"="ib9sxr60ylsw9vyvr3wxya8xhq6hv0ix";
+"unfonts-extra.doc-2017"="2r7sls3pa7a3fq9q74dlzhp7yjbwdsni";
 "amsldoc-vn.doc-2.0"="09zv7q83wc6zg9an9b1x1nvsnqx8bpcr";
 "aramaic-serto-1.0"="mcxkjm533zpz4srgqqbd1asax309lhmk";
 "aramaic-serto.doc-1.0"="2717wqsb2bzap0cjgw8d1rsryjyil57n";
-"babel-bahasa-1.0l"="qrw3i2ywjbgyacpn10n7kdxrxiv2dr3c";
-"babel-bahasa.doc-1.0l"="rrvz1g8jjjjyzhkaz1kdj0zhl7z8wvvz";
-"babel-bahasa.source-1.0l"="667qxnss58f78gbmabgafbcjricc547h";
+"babel-azerbaijani-1.0a"="hyp5q2f1i53nwc2fpzrvg73sig4cidi3";
+"babel-azerbaijani.doc-1.0a"="hii173fm6g5kdiai6d26f3zfg1p5bay3";
+"babel-azerbaijani.source-1.0a"="x887igvkinyx05lnir925xva5snhmsvf";
 "babel-esperanto-1.4t"="0zwr18503la5x4gw11ic8x2gbhb5ic06";
 "babel-esperanto.doc-1.4t"="vyjxr4qb3w2nj8a0d51n9k0zrdy56brn";
 "babel-esperanto.source-1.4t"="ngrcz6ixvk4mbpg41jgp38py5ynfqssw";
@@ -2326,9 +2329,15 @@
 "babel-hebrew-2.3h"="4mbg393m14m3j2i5sxfznnr486jw83b0";
 "babel-hebrew.doc-2.3h"="arlh4cs388rna2cj734yfi4vjrfli6bd";
 "babel-hebrew.source-2.3h"="8g78490s5lnmgi3h4rxw30cprmqv5mkz";
+"babel-indonesian-1.0m"="q9v0zfb6xbw2q4wa0pa0bray3knhxpm4";
+"babel-indonesian.doc-1.0m"="b9f34f8r7nvdby8z00xw1z56kmd92p2m";
+"babel-indonesian.source-1.0m"="rdb6dd4h5qjsgzqwx71g0n1h41ldfh9n";
 "babel-interlingua-1.6"="sq1l1svm80rfm09l1ys2ha7x0cyg4h3v";
 "babel-interlingua.doc-1.6"="q0zmjgrk58m7ivyi952jr3l0hnicpbxa";
 "babel-interlingua.source-1.6"="v04rpx7bwxjvdl8psjhc8w38krsv837c";
+"babel-malay-1.0m"="72z6yjhaxbkvnvs3x98bp3jrkkyk2ihv";
+"babel-malay.doc-1.0m"="8x81zjk3fmbnl5mq1dzxphhk6ap9sfq8";
+"babel-malay.source-1.0m"="npqm8jnnh4i4kjjsz228ccy6mzg1q5mc";
 "babel-sorbian-lower_sorbian1.0g_upper1.0k"="7vc0b3cfj4j9b1wjim0h68lnr941yarq";
 "babel-sorbian.doc-lower_sorbian1.0g_upper1.0k"="vvpq6ah1mapvcg8mbjm68layvcbhp05d";
 "babel-sorbian.source-lower_sorbian1.0g_upper1.0k"="yi38218h67326i4swrj94ma5pjax5krc";
@@ -2338,114 +2347,161 @@
 "babel-vietnamese-1.4"="pi8gc005y8hn42hyxrn7p23kbashsv1c";
 "babel-vietnamese.doc-1.4"="5l7qyvppvihhdzcszaxskiscp8xm686h";
 "babel-vietnamese.source-1.4"="y9wmbn3j1f614p6dfciwnvig3v5r9q39";
-"cjhebrew-0.1a"="yrqcf3w89y1iapkax8cmymbckaanim9q";
-"cjhebrew.doc-0.1a"="klgdcnc8fkxi7j8y5ckmm3dz08qb8pin";
-"ctib-2016"="gdfzyzhwfcwi275xdrvah86459bsfxx7";
-"ctib.doc-2016"="jy7r4mkpncfmy0djcxvpcvkwjaqxv7s5";
-"ctib.source-2016"="3pfn4qglvw3wjjw4f3jlk5vzq3ci4zj6";
-"hyphen-afrikaans-2016"="whfr6hv11bax9c0crb7fm29xs9m2qb0w";
-"hyphen-coptic-2016"="p47kp3hkkwz9ihxh3ijac8gx4maqbmlp";
-"hyphen-esperanto-2016"="7jmj4q99wjl0ia2s0wzkm0m5jwh3bzkh";
-"hyphen-georgian-2016"="2qsb2ivmvmj13pw8z4xa6kv51209nnfm";
-"hyphen-indonesian-2016"="nkrgjmp62s8wq32qbvfginx0fgzgn2m5";
-"hyphen-interlingua-2016"="7zichfacqkg5vrzb4ps6327p8lsxdjq0";
-"hyphen-thai-2016"="kfc8fbnx1cmg4s1qzl2k20n7llz1i4yj";
-"hyphen-turkmen-2016"="1mn76d4axhk2hz29qdla7f18kwf3y0kq";
-"hyphen-turkmen.source-2016"="c7md4qrdh7hms3vzkpcams5hwl8qy953";
+"bangtex-2017"="cn3ss5r73gr19dbjlrnvb7icfpbb2aig";
+"bangtex.doc-2017"="7dwz3jgliyn649ns4iqmgjnqn80bv3xr";
+"bengali-2017"="xv6b2ya4hn8bhhfwmi7sziq9qwmhx6qb";
+"bengali.doc-2017"="f6c5pyzrih551k2p50vqy9jfx4ar3svx";
+"bengali.source-2017"="s77yi86avqzhp5lin4dwhbavb41g4q0n";
+"burmese-2017"="gymkq1rr5pmwaaid3dpks3f8ngz3525f";
+"burmese.doc-2017"="yirjf8crgj2a89451jh8iv66qhdqdrr7";
+"burmese.source-2017"="ixz9y2ck9awijs6w9rz005nkvl613811";
+"cjhebrew-0.2a"="nkca25dwl8i1li6q63sv4w2n35z28bdn";
+"cjhebrew.doc-0.2a"="w8jqlvv6cm125d68dhfsar5y7xynac7d";
+"ctib-2017"="gdfzyzhwfcwi275xdrvah86459bsfxx7";
+"ctib.doc-2017"="jy7r4mkpncfmy0djcxvpcvkwjaqxv7s5";
+"ctib.source-2017"="3pfn4qglvw3wjjw4f3jlk5vzq3ci4zj6";
+"ebong-2017"="mhlr9r7i2zf3rm905m527hbnydppaiar";
+"ebong.doc-2017"="pqr96lyawpif4fzp0izw8j0506gnf06f";
+"ethiop-0.7"="fd4kynb70wkja5fxhi10n52mff3s2a8q";
+"ethiop.doc-0.7"="cabq6vprpklsmzi68af6nb4qiwbrwmzf";
+"ethiop.source-0.7"="yv6pwmbkvahpy2h4vnijnqag2rv09k5l";
+"ethiop-t1-2017"="f73j35aqlr29gmh9k00d3s0jzkmk6zq3";
+"ethiop-t1.doc-2017"="92ly98mz1iim1gfh4cm8hjwc17j9kjhl";
+"fc-1.4"="iyjlb5q55khnp515n1snhpnfrrmfn1pm";
+"fc.doc-1.4"="wd9bn967d6nzzvdrvim470l711v1jkg6";
+"hyphen-afrikaans-2017"="whfr6hv11bax9c0crb7fm29xs9m2qb0w";
+"hyphen-armenian-2017"="mdffnpk1ry6sw0xs8h5adzzz11dr7d8z";
+"hyphen-armenian.source-2017"="0b2gny5672fkb5sd8vb2g3fapx9pl7z2";
+"hyphen-coptic-2017"="p47kp3hkkwz9ihxh3ijac8gx4maqbmlp";
+"hyphen-esperanto-2017"="7jmj4q99wjl0ia2s0wzkm0m5jwh3bzkh";
+"hyphen-ethiopic-2017"="nixwv8azmh1p1av7alhrzbxqqihcgndy";
+"hyphen-ethiopic.source-2017"="dg6qij9y5la6kr6izwb2ap1mih84bcdd";
+"hyphen-georgian-2017"="2qsb2ivmvmj13pw8z4xa6kv51209nnfm";
+"hyphen-indic-2017"="s567k5d9h58s4a1203a5a8h34hwdxk8z";
+"hyphen-indonesian-2017"="nkrgjmp62s8wq32qbvfginx0fgzgn2m5";
+"hyphen-interlingua-2017"="7zichfacqkg5vrzb4ps6327p8lsxdjq0";
+"hyphen-sanskrit-2017"="smb3iyryyb5p0fcrb083q6cnzh362ps8";
+"hyphen-sanskrit.doc-2017"="a2pncv9fz35p3bbj6mll93vqcyagsmbq";
+"hyphen-thai-2017"="kfc8fbnx1cmg4s1qzl2k20n7llz1i4yj";
+"hyphen-turkmen-2017"="1mn76d4axhk2hz29qdla7f18kwf3y0kq";
+"hyphen-turkmen.source-2017"="c7md4qrdh7hms3vzkpcams5hwl8qy953";
+"latex-mr.doc-1.0"="vwb062hbn3371czg99plccbvxw1a7gjh";
+"latexbangla-0.2"="6ix7rfgj51z585jry3i1g68x4wvm4xxz";
+"latexbangla.doc-0.2"="iw79gb4sk4hys6xbc8j86lpzyji8h7r9";
 "lshort-thai.doc-1.32"="iwmnm7z7b3r8km4i3afq8hz0f2vy9dl2";
 "lshort-vietnamese.doc-4.00"="2y25jrim204g4q916rf1hhkavl7fi6vx";
 "ntheorem-vn.doc-1.203"="ys9g749d9f2nbq55ckyrjrr4mg9yywni";
+"padauk-3.002"="dwdgm603clk71s9gcjx9ghzwlkh6k2gd";
+"padauk.doc-3.002"="zarib60py4ddx2axyrm695pkikxih70z";
+"sanskrit-2.2.1"="scnnwa1xsfnpv0w7xp8ry49ps6s5pw8w";
+"sanskrit.doc-2.2.1"="0ps1lrlzdhq7gaagjqb3m4yygpz4g7p0";
+"sanskrit.source-2.2.1"="dp3nk8wbjrvb3hg4xdxl8s8m1wfcwny5";
+"sanskrit-t1-2017"="lwnbgg4flg35ndf7p0iii468sf6avylv";
+"sanskrit-t1.doc-2017"="h7licx4ivjwnvbym7724rdj3vrcaak5i";
+"thaienum-0.2"="acsj56dxkcqi83yajkm4rjxm99p6r10a";
+"thaienum.doc-0.2"="55zcsq659l2wki581xvcdy3ssljgk9s5";
+"velthuis-2.17"="10lr5jgiy28w3diqwwj9qlmfrlhicg17";
+"velthuis.doc-2.17"="f3fwfja1qnbh6hbn93zs4y2f4pwwn7kl";
+"xetex-devanagari-0.5"="v4gi0agfvxz808s3mapzf2ylxhv5n8a7";
+"xetex-devanagari.doc-0.5"="b3kz558m6h9avjwalwpw1nnr68q47sjr";
 "vntex-3.2"="vzdcn6z7knkzsj8gxwj8zda00dq6w8is";
 "vntex.doc-3.2"="5ix8dldkd2qmmbwn731ii4ffng7d3fgr";
 "vntex.source-3.2"="72m9wqbqrsam0b6a15lqq4yq5hbcx0kj";
+"wnri-2017"="z6010l0pydl50vy5jnrg5fh2xki5fi6a";
+"wnri.doc-2017"="clpx7kcx1hp0qy30v5nlfz10kd5hmqcl";
+"wnri-latex-1.0b"="y9n4dac8cbzm2gwhcfan32rbv3dyhr0s";
+"wnri-latex.doc-1.0b"="f1m11fnp49h90f3djiml0awlxqcnxkdp";
+"wnri-latex.source-1.0b"="zd4smslq18sp693fgay24m503v01v3bk";
 "babel-polish-1.2l"="k73wcwg7ab64nwjyq9rb78pmgkapy4xq";
 "babel-polish.doc-1.2l"="720j9r3c7y7yak2j3qbgx2baanwl6az5";
 "babel-polish.source-1.2l"="65j5b50flchq2kw6wi8g3i4jz9n9h7w3";
+"bredzenie-1.0"="dhjq0ccgxxin5a6fmwb95275d1i11xkh";
+"bredzenie.doc-1.0"="br35cfyn2zq2qb44mss225ylw16sz0jq";
 "cc-pl-1.02.2"="d0vdpawzrgwsxj9sff3y83mf1xrs891y";
 "cc-pl.doc-1.02.2"="wqnvmgzzh65fhrgwbrmpa307qa7xbh21";
-"gustlib-2016"="x6dscxji10p04msr31f3vsaf6pfpzhsg";
-"gustlib.doc-2016"="07x28ysinfhv15jlkpyfsv7cjyzwbdg7";
-"gustprog.doc-2016"="v1mb66z2nc7vwhy2yg5rk699mvqkpqs3";
+"gustlib-2017"="x6dscxji10p04msr31f3vsaf6pfpzhsg";
+"gustlib.doc-2017"="07x28ysinfhv15jlkpyfsv7cjyzwbdg7";
+"gustprog.doc-2017"="v1mb66z2nc7vwhy2yg5rk699mvqkpqs3";
 "hyphen-polish-3.0a"="pdmrgcp1gnms1yqnscrk977xzg2b2rpr";
-"lshort-polish.doc-2016"="7fr1g9j932xjam26nnf6b6zc47m1i9g8";
+"lshort-polish.doc-2017"="7fr1g9j932xjam26nnf6b6zc47m1i9g8";
 "mex-1.05"="z7m8kmw19bg4yw3p99fvpvhhclkj5ff2";
 "mex.doc-1.05"="qajd1x35x1mbkvs39hbxs3qd8df3hp5s";
 "mex.source-1.05"="kf6k037zqvlad7sm8z4a2gkg2xlf01j3";
 "pl-1.09"="glzasf47dgz69y9gkr4amiffpl7wwx8j";
 "pl.doc-1.09"="1p5zh9jmllvddgsnnafm2vabqhwdqq3f";
-"mwcls-0.74"="i2g8cqdlkrkz6q8km8vb2l0hckx1qn6s";
-"mwcls.doc-0.74"="bd0kqb1b219dmp2nqfjm87ak0d92ys99";
-"mwcls.source-0.74"="affb5qi93zka4jz4ihy8mfn1qc8kbhbv";
-"polski-1.3.3"="i5daqxm5hdqbq7bmi8fdk1sz58vk6l5x";
-"polski.doc-1.3.3"="wqj47s7sdb26y570npr0byq70m7c72cb";
-"polski.source-1.3.3"="6n5clfvas1s0s7cmmik9rvjzd30nky0l";
-"przechlewski-book-2016"="qid42vb23l6fzc6dgmx3bflwz7z0mdb5";
-"przechlewski-book.doc-2016"="23zvnv9pcvl5n68js39l4hrcli608qck";
-"qpxqtx-2016"="wxccyd4si0x6338hwmwdaxmjj3brm7p8";
-"qpxqtx.doc-2016"="xvxsnjfajz7zfvgfih7v3mfca5b36qda";
+"utf8mex-2017"="d8314s7lhlafhspi1qf8hiqzx61n439a";
+"utf8mex.doc-2017"="svpkpbc0caxbynjnjjynng11fdg3dgid";
+"mwcls-0.75"="nldix3j60gjybkg60qdbi1wrdarqggqb";
+"mwcls.doc-0.75"="16cqcaliy99s6dqnb507hcncxbjlhgmq";
+"mwcls.source-0.75"="x6jn9m23ickiy79sk1w1jsgiqpk2jh9v";
+"polski-1.3.4"="j98gsw0v3vf0a9j8bfjbynmrv47fcd34";
+"polski.doc-1.3.4"="zldgln4yhr6qkmay2aqrlv0bbbwqdyyl";
+"polski.source-1.3.4"="a7ig2cy5jamdgk3dxigyz4qa0kjrd36z";
+"przechlewski-book-2017"="qid42vb23l6fzc6dgmx3bflwz7z0mdb5";
+"przechlewski-book.doc-2017"="23zvnv9pcvl5n68js39l4hrcli608qck";
+"qpxqtx-2017"="wxccyd4si0x6338hwmwdaxmjj3brm7p8";
+"qpxqtx.doc-2017"="xvxsnjfajz7zfvgfih7v3mfca5b36qda";
 "tap-0.77"="mgr2m41yv0y4dcf4myk7020hkmqrd5z6";
 "tap.doc-0.77"="mr27kjalpicyv8915p32yyya5imm3m8v";
-"tex-virtual-academy-pl.doc-2016"="rr38v1syb2b4ji3psf47pmwr562zv59n";
-"texlive-pl.doc-2016"="1i2g04arlkawj7807rrjnq03n4z37z8w";
-"utf8mex-2016"="d8314s7lhlafhspi1qf8hiqzx61n439a";
-"utf8mex.doc-2016"="svpkpbc0caxbynjnjjynng11fdg3dgid";
+"tex-virtual-academy-pl.doc-2017"="rr38v1syb2b4ji3psf47pmwr562zv59n";
+"texlive-pl.doc-2017"="83acfdx5lz84vqb1479jxp7gb3xnixxb";
 "babel-portuges-1.2q"="n9im1w2dz7yfqqq4k8pfmqmxjg5mfl0s";
 "babel-portuges.doc-1.2q"="d5r7vabmr3lhrfcrji8rayi6xx6q6hqy";
 "babel-portuges.source-1.2q"="rgi4li2frm84fbdi0sfhqvmpijlx64lp";
-"beamer-tut-pt.doc-2016"="kxpy2m4hbwm3sfj7ix9x249df3dgmvfm";
-"cursolatex.doc-2016"="arfkwqkjw5kfv2rcfhkvxjq603wdsq3y";
+"beamer-tut-pt.doc-2017"="kxpy2m4hbwm3sfj7ix9x249df3dgmvfm";
+"cursolatex.doc-2017"="arfkwqkjw5kfv2rcfhkvxjq603wdsq3y";
 "feupphdteses-4.0"="696my85w1ngcar81vacyj8nr7m4dn0wd";
 "feupphdteses.doc-4.0"="9nm4793nyfp5v2rjd5297sbyw2b29bqi";
-"hyphen-portuguese-2016"="373150snca1vkvj58s0kdv6q044akcsq";
+"hyphen-portuguese-2017"="373150snca1vkvj58s0kdv6q044akcsq";
 "latexcheat-ptbr.doc-1.13"="qzgl6v54k07i6lc3ps84s9mj11j1qqqf";
 "lshort-portuguese.doc-5.01.0"="m3r2gbq4v09p9svs0mxsw3s3yc7has5y";
 "ordinalpt-2.1"="ds49jf4pvghzwn5nqwjbzz6dhp0cdn80";
 "ordinalpt.doc-2.1"="4hg5jx7bnx1j13s1mq8xscr3jfajl6by";
 "ordinalpt.source-2.1"="cc2f6xias35ac0c0kxan2cvcmyjq7l6k";
-"xypic-tut-pt.doc-2016"="2rj58kib26w8jnfzpd9bsm0nf2ladv4i";
+"xypic-tut-pt.doc-2017"="2rj58kib26w8jnfzpd9bsm0nf2ladv4i";
 "babel-catalan-2.2p"="18ngggp3v707j48vac5grpqw342jwg3f";
 "babel-catalan.doc-2.2p"="19hc8i6d64n8dfk6hmgpgm03kg5r7wx0";
 "babel-catalan.source-2.2p"="v2750fsyzjlc6iqk44s31idwybz2jvfz";
-"babel-galician-2016"="xczl3malfygp6w1fd3rpd26rifcgj3j8";
-"babel-galician.doc-2016"="i7r7rp46vmhmf18dgzsac2ay1pwanlxz";
-"babel-galician.source-2016"="ix6vzvf936s019948pz5bls7nfca9xng";
+"babel-galician-4.3c"="xczl3malfygp6w1fd3rpd26rifcgj3j8";
+"babel-galician.doc-4.3c"="i7r7rp46vmhmf18dgzsac2ay1pwanlxz";
+"babel-galician.source-4.3c"="ix6vzvf936s019948pz5bls7nfca9xng";
 "babel-spanglish-0.3"="17nhdd8za144n05vhvd50kr6bss0swaw";
 "babel-spanglish.doc-0.3"="sfjf3dfj841772k5ipvf0r4qr3zayhak";
 "babel-spanish-5.0p"="lxsy4aq5mwizmif2r3i9h97mccim0ljv";
 "babel-spanish.doc-5.0p"="2aa12l6ndp4r6rdv6v0z405y3hpsmgnx";
 "babel-spanish.source-5.0p"="ad9wxx0qp6kp4r8ri1vwycgf2gpdj6xw";
 "es-tex-faq.doc-1.97"="v9brqkql6xbb1zdk5m6xhff1dxm36nhf";
-"hyphen-catalan-2016"="0z92n1kivwrihxn1vi7hcm046drhw9c8";
-"hyphen-galician-2016"="8shj0dvmbcma4y9b8sj192x7za67ciig";
-"hyphen-galician.source-2016"="ivmw5irkn7vfp4k6ldn5jn9ra43cjlcs";
+"hyphen-catalan-2017"="0z92n1kivwrihxn1vi7hcm046drhw9c8";
+"hyphen-galician-2017"="8shj0dvmbcma4y9b8sj192x7za67ciig";
+"hyphen-galician.source-2017"="ivmw5irkn7vfp4k6ldn5jn9ra43cjlcs";
 "hyphen-spanish-4.5"="b6d0bh9xrr1091idjs1dmjjicgsk97l3";
 "hyphen-spanish.doc-4.5"="416kb8avd7nb048aia9rgbvjbh6bbh7k";
 "hyphen-spanish.source-4.5"="lia19yzmwyz4fsbnrca8al43hfc46i55";
 "l2tabu-spanish.doc-1.1"="rc7058j31za1cg1ik27b6gcgscir9bfk";
-"latex2e-help-texinfo-spanish.doc-2016"="pc6j632r0jvqdyi6k5rzwfid8642gn6j";
+"latex2e-help-texinfo-spanish.doc-2017"="zr9zrgsl255yyi1w2hkw9i8816inazzv";
 "latexcheat-esmx.doc-2.00"="bzjjilpj8rmp1cc93bs32568dc8dvgic";
 "lshort-spanish.doc-0.5"="3gmql5wpqh3h5mhr0pjcs6v0a5jqc1c8";
 "spanish-mx-1.1a"="ipghkbmay6pmwisxrnpkrhnlrlgsr9zz";
 "spanish-mx.doc-1.1a"="4qrhsw2wnpdmq7i3j30vfb04njyhldi3";
-"texlive-es.doc-2016"="dgp40lsr1ca5dl2651vn0d8amc3qn49g";
-"2up-2016"="qd90xqk7f4p9mgp53yid9rixhhs11ns3";
-"2up.doc-2016"="gv5blpi2xdbjdi1i2p9j6gz2qzr14d9p";
-"ESIEEcv-2016"="w5zhmx6kk19kwf98gdm7rlp7l3i9k93y";
-"ESIEEcv.doc-2016"="4ci8yn36m2fz6v6n7iqb071291rl23zw";
-"ESIEEcv.source-2016"="kvh03awwlhwd8wn69h32sdjxmcpa6lmn";
-"GS1-15"="hwnq8xailhxvp87b3fxmmmirn6qsbr55";
-"GS1.doc-15"="kqb4nf593qvba3bsq1f4l1jps7h7zryq";
-"GS1.source-15"="lvpahbw3vnj3b7bmn1wj7lrm6f7n0aqv";
+"texlive-es.doc-2017"="k3jl7b08fb3mrmz88211dpfsl7vr9if5";
+"2up-1.2"="qd90xqk7f4p9mgp53yid9rixhhs11ns3";
+"2up.doc-1.2"="gv5blpi2xdbjdi1i2p9j6gz2qzr14d9p";
+"ESIEEcv-2017"="w5zhmx6kk19kwf98gdm7rlp7l3i9k93y";
+"ESIEEcv.doc-2017"="4ci8yn36m2fz6v6n7iqb071291rl23zw";
+"ESIEEcv.source-2017"="kvh03awwlhwd8wn69h32sdjxmcpa6lmn";
+"GS1-22"="2fvvg7l5g84vhg88mzaa6x16p13pp34c";
+"GS1.doc-22"="bsdamqnalwikpldq94f035nh849vjb2h";
+"GS1.source-22"="gzg5ynawvwr24sl31f85q7ksinaks3a8";
 "HA-prosper-4.21"="kbj26h7zvc9v5l330s2hp63l44vrn09r";
 "HA-prosper.doc-4.21"="hpj2qljnhi7x2prcwnra1ycfzazhnqsz";
 "HA-prosper.source-4.21"="wlzyr02pardayic4598mc0v6mks9dcx0";
-"Tabbing-2016"="1ffaxfww9l073hvjvgp4vkxzfdmmgb8l";
-"Tabbing.doc-2016"="gyhcdih64zw18s44f5s1h8ccr2ndd0qs";
-"Tabbing.source-2016"="pifazcagjavajck7h6a0kyvnxxk90k8y";
+"Tabbing-2017"="1ffaxfww9l073hvjvgp4vkxzfdmmgb8l";
+"Tabbing.doc-2017"="gyhcdih64zw18s44f5s1h8ccr2ndd0qs";
+"Tabbing.source-2017"="pifazcagjavajck7h6a0kyvnxxk90k8y";
 "a0poster-1.22b"="dkwb9gdxv3jxnw07ji0ydmpqa0fgy6mh";
 "a0poster.doc-1.22b"="bn6j9nsmcri2irby7njhbdlpgqqaic0x";
-"a4wide-2016"="lsss6h32r10x1v8k9wwdp7ind09y6x5h";
-"a4wide.doc-2016"="vb90v0v79l34fr86i7hzx787ndyq271w";
+"a4wide-2017"="lsss6h32r10x1v8k9wwdp7ind09y6x5h";
+"a4wide.doc-2017"="vb90v0v79l34fr86i7hzx787ndyq271w";
 "a5comb-4"="sc874hfilkfjjv1aw8qnf36v5jkhd6s2";
 "a5comb.doc-4"="gsp7dsbhk6r2q332apbqrx29mna85dhs";
 "abraces-1.-"="54c3kj96d3symq8nbzrns0pf1200jm5z";
@@ -2453,19 +2509,25 @@
 "abstract-1.2a"="qd0czw54z49h3mxnxlk6drblpbl47sln";
 "abstract.doc-1.2a"="qd4dggpq9076j7cma12mkhy238ni4w3z";
 "abstract.source-1.2a"="819fv5rryh634fmqic8fqagdfi9h04wj";
-"achemso-3.10d"="x1xl7siphk33vxz6gncid7vlksg9m2pg";
-"achemso.doc-3.10d"="8kmanl4zl7dd5i6k10rkp8hipmjrvm6z";
-"achemso.source-3.10d"="y5pqp3d6pbf02qima57l4r1vwj41n7w0";
-"acro-2.5b"="ns6hajvhik82vifv778b45w11yjnhqn5";
-"acro.doc-2.5b"="y000gsfns3bsvjba3wrqz8104ykxqq8n";
+"achemso-3.10i"="3lp4cfmiharmf6m9xagy75n1rs2i910k";
+"achemso.doc-3.10i"="61irkqrnn5vy2jycd1z1q524zk798m8d";
+"achemso.source-3.10i"="6qqkj8l96pp0w6ymvmxiphh0zw1ap7yk";
+"acro-2.7c"="mv0fczm4wq1pf3dfrg0zq4x8a08y0ay2";
+"acro.doc-2.7c"="9xvmh7zq4n4bl61jy4w2q20n946mh5sr";
 "acronym-1.41"="2spcw1vwwm6mwpl2dvv7wybxvndbsqn5";
 "acronym.doc-1.41"="izmrdd0rscib9xa10xm33vvh7bvgzdly";
 "acronym.source-1.41"="1l7ca4pd0nx499pv45sv1092bilsxfkg";
 "acroterm-0.1"="04m91cky6cj3jv546mdf6461bdg6sfkk";
 "acroterm.doc-0.1"="jnxcd65y58xrqg0cfg7y0m8yslbj7xi8";
 "acroterm.source-0.1"="w99kkypzq7c73rx4rv4m917c68vnan00";
-"actuarialangle-2016"="gdr626xy52l5i3svfgrhj95l092mxz9y";
-"actuarialangle.doc-2016"="mrycbdm2blp0b1j0bpg8542m5skr8m04";
+"actuarialangle-2.0"="ff4khzc793za2vl8ghg9k3jzh21npa4b";
+"actuarialangle.doc-2.0"="blrrabd60rlmly07kh83wwa88nkw7mb8";
+"actuarialangle.source-2.0"="naxi069bqfb3w7bx5g1zwj4iy5b8kq54";
+"actuarialsymbol-1.0a"="46rajcg49v84amgxarr8d24z1ilzgzjs";
+"actuarialsymbol.doc-1.0a"="7pzwnc70kgqh5lq6wni6lhyij6ydbzh8";
+"actuarialsymbol.source-1.0a"="39chg76j3ahyny2m16wq77y1rcs0jsxb";
+"addfont-1"="16jk4kypw619n5fy7j0hvfiydk5k3mbk";
+"addfont.doc-1"="r6jy27nla35rjdsbcqfb7ckc7hfszngi";
 "addlines-0.2a"="2v5gfg9w6p4p6849lgipiql9x73d5a41";
 "addlines.doc-0.2a"="wrd21fcqv7nd225xb85v13dgsbfk18lv";
 "addlines.source-0.2a"="l5dv40igkq2wphl1g6ni1g7fii9qkp26";
@@ -2478,8 +2540,8 @@
 "adrconv-1.3"="q8vpdifigy5vld3vq660afya6i8h4l0p";
 "adrconv.doc-1.3"="l0k77x7p8bp00rzb3744p3nnwzy5d8rj";
 "adrconv.source-1.3"="yg4dpghvmsjb7a7k6aiml5k5wi9ij2cq";
-"advdate-2016"="f0awsj80hyiv2vkjizidk3na8yvfm6i4";
-"advdate.doc-2016"="0yx83g0jz771kjqq6rf07wlmzs4h68x3";
+"advdate-2017"="f0awsj80hyiv2vkjizidk3na8yvfm6i4";
+"advdate.doc-2017"="0yx83g0jz771kjqq6rf07wlmzs4h68x3";
 "akktex-0.3.2"="6mhzn5d98q6vmxp8vjbmb6i26x9zja3g";
 "akktex.doc-0.3.2"="z43q786v20515sgsp4dh5lii0pfa620r";
 "akletter-1.5i"="7i7x6692i5zicjsrp51cvx8sivm1arpw";
@@ -2498,21 +2560,21 @@
 "amsaddr-1.1"="6sf35pmlda97q2dhi5h7cwan25gi9nij";
 "amsaddr.doc-1.1"="m5wxpa9vd09pja40i6lzzrlw62ml5zvm";
 "amsaddr.source-1.1"="b66925k432cw6rqwqapcg1h8gjgnvry7";
-"animate-2016"="d4pdlligf9j10ra0nxm95wfqz68795lf";
-"animate.doc-2016"="6rdf1vzjasqxj9dybl4ij147mhwgn60c";
-"animate.source-2016"="92f8s47abgbbpn8vc33ixcys430zai9a";
+"animate-2017"="d8q0vz6yx5k5lx9l51gqgcnyzfmwz82k";
+"animate.doc-2017"="lgz3pc2xypvbgs884aczvyyyk2msrbin";
+"animate.source-2017"="vixphgcmrxzw46hm0swy9k457hh1ly3n";
 "anonchap-1.1a"="qpazykls2jy7nqpqkaqvyi35c2ajz0qg";
 "anonchap.doc-1.1a"="3xy9r4p9f22fjdvznba1jjp09gbkvvlr";
 "answers-2.16"="isadn9v17ma5krfq4hm304nrdc8kx7dd";
 "answers.doc-2.16"="3ma0j6diq2zp7k547zp6ilbynsrkw59d";
 "answers.source-2.16"="7w1nvr73ndj7c545xps8h969q4z58gji";
-"anyfontsize-2016"="z7d08jdfvq55ls4va5f5iyixxyp6xjv6";
-"anyfontsize.doc-2016"="fxvax04n8dj9haksiqx0jddi47mb8q1n";
+"anyfontsize-2017"="z7d08jdfvq55ls4va5f5iyixxyp6xjv6";
+"anyfontsize.doc-2017"="fxvax04n8dj9haksiqx0jddi47mb8q1n";
 "appendix-1.2b"="vv6787vrvnmwm8mg85aq1bii0lgprzc3";
 "appendix.doc-1.2b"="095s7b98s2n14xsf2ffv9v6fvsdvl6zz";
 "appendix.source-1.2b"="5ivln5wysazp8nllz5k3z5vh9ivzwwl0";
-"appendixnumberbeamer-2016"="1gcs0vw348jli5pa4b8z2hfnhciis6pl";
-"appendixnumberbeamer.doc-2016"="is8nlzz3klxg3rjgixqxcxphlp109s23";
+"appendixnumberbeamer-2017"="1gcs0vw348jli5pa4b8z2hfnhciis6pl";
+"appendixnumberbeamer.doc-2017"="is8nlzz3klxg3rjgixqxcxphlp109s23";
 "apptools-1.0"="v2ag8kbf87fm4rf66z1a3z93pfs1j6gj";
 "apptools.doc-1.0"="a8mjxckcrk06xajadqf2124k5k0ra2qi";
 "apptools.source-1.0"="q37a0dpqnw1vbqih6p7lbi70a1f58yl3";
@@ -2530,17 +2592,19 @@
 "asciilist-2.2"="cx4yfvy3r2cr9kskf9drbcl919np05nl";
 "asciilist.doc-2.2"="f8hnsjyks2f5qjnya4v6b23px0f304dn";
 "asciilist.source-2.2"="10pkhmrfp0d4qw56x2nk296rn2j436gd";
-"assignment-2016"="f5a0sprx94bby245g2cfycrrazgp00k7";
-"assignment.doc-2016"="0d0cafwd56gqn5dacsq4fdgzz8jqks19";
+"assignment-2017"="f5a0sprx94bby245g2cfycrrazgp00k7";
+"assignment.doc-2017"="0d0cafwd56gqn5dacsq4fdgzz8jqks19";
 "assoccnt-0.8"="6bikcn3hf37rs2wp84f9h8nf81z86hr6";
 "assoccnt.doc-0.8"="xb17k2w0skjxh3cw3hag91m5cjxj1vz9";
-"attachfile-1.8"="a8qk19fzxsf3bqkrqjyqmwshb4jv5nc1";
-"attachfile.doc-1.8"="ld05y453xrmdk4pr8j97lcicgsiv8hy5";
-"attachfile.source-1.8"="c89y3jz9rrk56l5di8xcln8sfpx9syl3";
+"attachfile-1.9"="vmyp7ywfqli6yzs89419885jac9x0yql";
+"attachfile.doc-1.9"="f076ljz64r8ck1l9cz5g7xypm92jb9qs";
+"attachfile.source-1.9"="j93ivs0jy4n52a18gw0icmh0ffsnm1j4";
+"aurl-2017"="8nnjg9zwrc6p5qy2mq32jirxz29wpa0c";
+"aurl.doc-2017"="13g1jz1510lipg3v2m4zpcz2pzi04fyc";
 "authoraftertitle-0.9"="6mqbsmy9gg6qkwgihzapa0xnlqyscz4z";
 "authoraftertitle.doc-0.9"="64j4gkrz0i7bwah7s3dazi1nanw6dfby";
-"authorindex-2016"="khcqpf8rh3cqb9fk2wl35lvp1fs3k2nw";
-"authorindex.doc-2016"="vrlqni24vz4wixqr83pkin6j02vxgz5r";
+"authorindex-2017"="khcqpf8rh3cqb9fk2wl35lvp1fs3k2nw";
+"authorindex.doc-2017"="vrlqni24vz4wixqr83pkin6j02vxgz5r";
 "autonum-0.3.11"="z0mz6nrw3s9661lc5s983bj7qpfg9ns3";
 "autonum.doc-0.3.11"="ghxpr5ayzxq1w6v3wy0hqvkfy28n9slp";
 "autonum.source-0.3.11"="5fm5vfmi11jqdgqklj6zmc90vw3vqiqp";
@@ -2560,8 +2624,8 @@
 "basicarith-1.1"="81hlw6p432i5ln72shhg2k976as1w1l5";
 "basicarith.doc-1.1"="3hskpplbm89xpzx8q0bajn7i3kxncig8";
 "basicarith.source-1.1"="x4qnlbc6v2dfq23ijrjhk5rcfjc1c2a1";
-"bchart-0.1.2"="8qyn0h9n8hq85c5g8rzfjm9v0hd6i6k1";
-"bchart.doc-0.1.2"="f6v6qbrz79rvx67l6a062j4dznacp7yj";
+"bchart-0.1.3"="4xxv8n13igfgl0n89wmxncp8662fx941";
+"bchart.doc-0.1.3"="11b1xlxkxzayb2a96w1svhba4pkchanx";
 "beamer2thesis-2.2"="64a0v9a7xr9yi4ffsbm98s058hkmq9wg";
 "beamer2thesis.doc-2.2"="5ypn90w572jlw04xi4vzk7pxxsf7ciwy";
 "beameraudience-0.1"="3zc39f4qsyqi4204k4a5n9pksf6gk3xl";
@@ -2576,13 +2640,16 @@
 "beamersubframe-0.2"="m8capqp9nc8mbi9xdzkz89nnz41972v4";
 "beamersubframe.doc-0.2"="y5m8y5zkbzi553hp8maav6g6a42iklfr";
 "beamersubframe.source-0.2"="kw2rnly2zyqw1ap5g9gkv2xchpvbk7gr";
+"beamertheme-cuerna-2017"="vrgqfiwzbf1082zbj8pvn53dmx77qi4f";
+"beamertheme-cuerna.doc-2017"="jcxa5vs5g4nwgck7913jb2jnxccx2y3f";
+"beamertheme-cuerna.source-2017"="lrn8am3h8x2ic39ghpkdl9bxsp07pdf6";
 "beamertheme-detlevcm-1.02"="25f0c66nnhq9r0qrqf186rwqvifzi4nj";
 "beamertheme-detlevcm.doc-1.02"="5yh3kypxg8cjr8vqy04k1ad1agnlq047";
 "beamertheme-epyt-1.0"="1g3593pcp0b4k9lacp4c0afs7jzffa9b";
 "beamertheme-epyt.doc-1.0"="al12nh23v6l4lfa4616zzivldc5jfkjy";
-"beamertheme-metropolis-1.1"="fak1gdla6djdh3k7ijbqgjqgjgmcfq9i";
-"beamertheme-metropolis.doc-1.1"="lr7lvhflfiwpmqz14i12d42vy4jiaf7j";
-"beamertheme-metropolis.source-1.1"="fc4j5wz3bv0z71bb05xfhjavi4vvy78z";
+"beamertheme-metropolis-1.2"="g062nnxl4v5951xq2xa4smkdjq6v2xpk";
+"beamertheme-metropolis.doc-1.2"="xvapcphzmylh2s3551bglqw712q82bxn";
+"beamertheme-metropolis.source-1.2"="5gmm1q6xagbavzzxhc9750yb3bhxf3zv";
 "beamertheme-phnompenh-1.0"="01nbk38jh4hxk8vykf37x6bhnb55ijdb";
 "beamertheme-phnompenh.doc-1.0"="p0nj4cqg4vaaq6wlycicz0xbl7391lwp";
 "beamertheme-upenn-bc-1.0"="i535al38gpn0j6mhixm5g6vnlj7gi957";
@@ -2590,27 +2657,29 @@
 "beamerthemejltree-1.1"="iqjiwv4v9vp84a3cjjmv5gxygyclw5c5";
 "beamerthemenirma-0.1"="jix18byykz4n2mqcipf60pskfjlj3ini";
 "beamerthemenirma.doc-0.1"="llvppchvbd0zz9cl3lpswghs8hjm78rq";
-"beton-2016"="0psc07yssk92pgrf4c9zvyr4k3ibbz3j";
-"beton.doc-2016"="9jpvnkmri3w4m9ik5d4l7mnlfpwxacg5";
-"beton.source-2016"="znwrdd877gdwmsiaxc9v8pczdw21wrb8";
+"beton-2017"="0psc07yssk92pgrf4c9zvyr4k3ibbz3j";
+"beton.doc-2017"="9jpvnkmri3w4m9ik5d4l7mnlfpwxacg5";
+"beton.source-2017"="znwrdd877gdwmsiaxc9v8pczdw21wrb8";
 "bewerbung-1.1"="kb947mnv03wjc8ja8k402inijnplk1vy";
 "bewerbung.doc-1.1"="mv9vrqp8g689cvbwpm3xkczk98s1blas";
 "bewerbung.source-1.1"="w8z7h0w0ld2dd88a0yhp6p6md8hn7kkh";
 "bez123-1.1b"="9lx6fqcskk9lj28vcfhfnkmjb9dhlqdh";
 "bez123.doc-1.1b"="s5s834dhxqlqc5i8dswvayhf62chrqbh";
 "bez123.source-1.1b"="fsc7gqwcbpfjlhn0bljq7l0jd8g6zapd";
-"bezos-2016"="xfvg3ykycr5dkmi1xc6h66g0a9fiah5z";
-"bezos.doc-2016"="6g6lwlra53qn9jh13sy28gzjxn5gcyr4";
+"bezos-2017"="xfvg3ykycr5dkmi1xc6h66g0a9fiah5z";
+"bezos.doc-2017"="6g6lwlra53qn9jh13sy28gzjxn5gcyr4";
 "bhcexam-0.4"="1px8zypnmrvi26ysrplj54pdz67ajcs5";
 "bhcexam.doc-0.4"="ksq01g78a489prh8lrrs0nn9k5jqasvr";
 "bhcexam.source-0.4"="ra3418l0mjj31jrkss9fysd4q1h3bdqn";
-"bibletext-0.1"="yf6bsiw9l4dxz6nqsq43xdycjcr2a1z1";
-"bibletext.doc-0.1"="c1lkjffk05478pm4swmb6a0y0v6jyhlc";
+"bibletext-0.1.2"="l1xjz1y65n8788jhskhb7z74fs8azjxr";
+"bibletext.doc-0.1.2"="z37aix7i7hm3rg581np1mi67dn5agl7x";
 "bigfoot-2.1"="i4hdv09y0blcrbhk554ilzc70fv19242";
 "bigfoot.doc-2.1"="ixi0hkjrzg740q3pkp9lwrq43ab1f006";
 "bigfoot.source-2.1"="jp9h2p1j46ha7ksxvh3d6rmxr0832r1w";
-"bigints-2016"="6ig6fmxy6wj6k3yc4x9s7b18xbfxj4kp";
-"bigints.doc-2016"="jyxj3risms61j5aazx9hkxxfwbg6nyzr";
+"bigints-2017"="6ig6fmxy6wj6k3yc4x9s7b18xbfxj4kp";
+"bigints.doc-2017"="jyxj3risms61j5aazx9hkxxfwbg6nyzr";
+"biochemistry-colors-1.00"="fvz3nlqi6y12g5pcyh118l6vjbw5kz2i";
+"biochemistry-colors.doc-1.00"="r7n07xkk4ixxk9zhz3ffkg7kqsz0i8fc";
 "bizcard-1.1"="l59w5wy3djx28g5yw2ywagi5am258bry";
 "bizcard.doc-1.1"="yallp1mh43m9224sqhzg85ylymiib9v2";
 "bizcard.source-1.1"="z70q003l3pmi9p0z0a99f2bz0lxkq2y9";
@@ -2619,19 +2688,19 @@
 "blindtext.source-2.0"="dr68k54p44vgwp3rw9d1khc733k4apah";
 "blkarray-0.07"="djcla33mmskp42qbf8qg053p34515x1a";
 "blkarray.doc-0.07"="7iy0ssb4spk30f5janvknnhl91csvmyk";
-"block-2016"="b75bd0f6imd8svp869g4j3q2q02pilpp";
-"block.doc-2016"="gza7j45w5qixk19px05wr4q67m4lzhkl";
-"bnumexpr-1.2a"="asvhrmm3rb14s1mlzyfb86gigd68nc7h";
-"bnumexpr.doc-1.2a"="3x0bfnyy7wddwp3367npwg7nz1kxsh63";
-"bnumexpr.source-1.2a"="1ngbaxdcr4kk188a0fmpxzd0ss1ra2ib";
+"block-2017"="b75bd0f6imd8svp869g4j3q2q02pilpp";
+"block.doc-2017"="gza7j45w5qixk19px05wr4q67m4lzhkl";
+"bnumexpr-1.2b"="qqqk5ia11sdakf252mp1a0p3ran5qqjv";
+"bnumexpr.doc-1.2b"="p0pbpph2q811l9wjvsigvq7qbdw509nz";
+"bnumexpr.source-1.2b"="9xjfsjgr3c4r0r0mj9qf1qlx7a86akqv";
 "boites-1.1"="nccwd0yxdm5cr6razvwlkrrb5wxxj1i2";
 "boites.doc-1.1"="q3mcdfg2afqm3w1zhbcb1bxzwqgp4s3n";
 "boites.source-1.1"="vcfgm806kvw3z466j5kimj5wzgaywv0f";
 "bold-extra-0.1"="0kr4p0z1bfng2sindvkk7rkfzm863qmx";
 "bold-extra.doc-0.1"="czal2y2szfldrzkn4h0aj6iwjk7gpifk";
-"bookcover-1.1.1"="p9qni52l0lb3w6698kcwjja6qlrmf6n6";
-"bookcover.doc-1.1.1"="jdbdndsing4jx8cni736zjvkfaq2y48k";
-"bookcover.source-1.1.1"="2dzi5qm13hk6qq5807yw16z0did780z2";
+"bookcover-2.1"="88b1fscwqb7plvmvfila162f2bvsy9vq";
+"bookcover.doc-2.1"="3lh8rjzkwm6fah42d5754pbfhjmwrffh";
+"bookcover.source-2.1"="flrj085kr19zpjh0mh8hdrjmkac696l3";
 "bookest-1.1"="70j4zrqfn4cr0qg7dhdqainy3pxxilg0";
 "bookest.doc-1.1"="3cbqgyzvm6zvzib6jhgdyy7mcw5p75nc";
 "booklet-0.7b"="fkicb41vlz1m3spn6jf9g1dk28f22v7i";
@@ -2653,8 +2722,8 @@
 "boxhandler.source-1.30"="0s647gs05wi22qcrv2zsb8x1713yhf1w";
 "bracketkey-1.0"="4l5l8s1xcwhlkaq50spccp2z90lm161f";
 "bracketkey.doc-1.0"="500h9kzvrkkqj22622hr4a78d6mz94jm";
-"braket-2016"="ck5gh00qn839wsxy2qili0184vswy0br";
-"braket.doc-2016"="mqckibrwr123hhda3fnbf8wrh1d16bxy";
+"braket-2017"="ck5gh00qn839wsxy2qili0184vswy0br";
+"braket.doc-2017"="mqckibrwr123hhda3fnbf8wrh1d16bxy";
 "breakurl-1.40"="lsl2j1iflzhwwapb03s5hg137rynjjhl";
 "breakurl.doc-1.40"="rjyrmhd32w912qg9wd4qxc9q46kg8qc3";
 "breakurl.source-1.40"="lpxb827p465qc14c38rk14jrzag7jfq6";
@@ -2663,18 +2732,20 @@
 "bullcntr.source-0.04"="6lw02qi8iyp3qph7yaycfm5p1q6l71r3";
 "bussproofs-1.1"="v0s3q29bdab23xi07f123bq7gzc2i185";
 "bussproofs.doc-1.1"="6cnd5akpxdcq2q82n7ph5lvmb94ql8sa";
-"bxdpx-beamer-0.2"="dhj9i0a8zba5193andgyjvpzli8pip70";
-"bxdpx-beamer.doc-0.2"="cixgk9xcfsgr4qvdmvald5wrwpf7sq2n";
-"bxdvidriver-0.2"="9cmf1k4nqkh8dcmx253n1knm9zsmwq2v";
-"bxdvidriver.doc-0.2"="2rclnlzywr7nzxabsga12icypvmzjqaf";
+"bxcalc-1.0"="zlcn1rji7mk5lpw3lbpa4nl64i8nayjh";
+"bxcalc.doc-1.0"="qj20a0nb9rpsrypcya98i4lfjxchxkfq";
+"bxdpx-beamer-0.3"="q07kpnmln2v70w83z91vsk53c0i63x02";
+"bxdpx-beamer.doc-0.3"="8ynjsgbyifkvz27qp8j4nrfk3pryphdf";
+"bxdvidriver-0.2a"="f6ndmagn10ax4hpmlia649f7c14hjkgx";
+"bxdvidriver.doc-0.2a"="lg3m3lw08iizdhdfjqkh91wk5ma43825";
 "bxenclose-0.2"="h4cay0x5nq4xwqpaihbvyzhjxgsp5fwn";
 "bxenclose.doc-0.2"="9i72bmx63c76m7gc7qavv228g1afrnq7";
-"bxnewfont-0.2"="7z96dnw72d4dc6qbbymnhg1hn5nmasx8";
-"bxnewfont.doc-0.2"="gkskylsckyi61fwg1lz3h4i0pxpdlfmd";
-"bxpapersize-0.2"="5ajl4kq3iqwhl5a8f1lwz171akps0arl";
-"bxpapersize.doc-0.2"="xh3sgbwvrr8g63lwyx4k2lf64s1srgii";
-"bxpdfver-0.2a"="mjkshqj1a5rxr416jdpgy1a710zk0lzx";
-"bxpdfver.doc-0.2a"="aig0rr30s7f5p750nb7wm52cn3pa35sr";
+"bxnewfont-0.2b"="42kvrm0ag8zrxavfijin59k9sg3akhhp";
+"bxnewfont.doc-0.2b"="wxkcv5hklkzxs3xsw28z0bknq0sjjhsy";
+"bxpapersize-0.3b"="41garkjgw98adpn761lrj849y4rzzi2x";
+"bxpapersize.doc-0.3b"="j6scsfx0fn9yd5illwnw41j8f17k18ba";
+"bxpdfver-0.4"="rcizp6hg0bir8rf3njqc66kjcm7c9nic";
+"bxpdfver.doc-0.4"="nj6cpbjw4paw12ggkxg28nm1wj076dlb";
 "calcage-0.90"="4yzr1l7jhng80xs4n1vavaks3d8cjr49";
 "calcage.doc-0.90"="b4vjy0d8rz4jhhw4vimfdfwhpqx7sgck";
 "calcage.source-0.90"="x42rcz3r7lphziii9v8vgv0lm43ymj8z";
@@ -2683,26 +2754,26 @@
 "calculator-2.0"="z44sdp5jlkqywi01c1x7ly2yvzkx1h9w";
 "calculator.doc-2.0"="dwb0bhngsn0xk56gnil8wbaj5dv7v0yr";
 "calculator.source-2.0"="3m4b364wkgfvxyc8y20rg8c7rh22rhyd";
-"calrsfs-2016"="cq6j9glbxrl31xwx7k5s8ayispn82vfx";
-"calrsfs.doc-2016"="avw2hw984yx1vsxayn96nzhgqcfpz90r";
-"cals-2.2"="6wlwfvx4yc3grkw6czi9qvjbjdrz82qq";
-"cals.doc-2.2"="4bf5bb1rgiiy7rbn6hhsmj5qqap4s7hr";
-"cals.source-2.2"="a6znwcv73yr8c2r24sz2d18vj563dnig";
-"calxxxx-yyyy-1.0i"="8jw4z44q97036yl05blsw3l7dav9xrk7";
-"calxxxx-yyyy.doc-1.0i"="mhgmrvpmsv28jzgw0xhf0paic8qwx315";
+"calrsfs-2017"="cq6j9glbxrl31xwx7k5s8ayispn82vfx";
+"calrsfs.doc-2017"="avw2hw984yx1vsxayn96nzhgqcfpz90r";
+"cals-2.4.2"="0xq2pylhs1gl542s86wm23nynnfzk188";
+"cals.doc-2.4.2"="yq4wig26r1cadd3kxg5bfraig4axvyvd";
+"cals.source-2.4.2"="fshbdf6ljfy0c7kdcvz5kyinysplcj86";
+"calxxxx-yyyy-20.17a"="rdjjkm8hyf5d386rynl3q8s2ln4z34g0";
+"calxxxx-yyyy.doc-20.17a"="6v19vf9p4gk7zp614bjgpcimk6vhwij2";
 "cancel-2.2"="gq061h1xf31ivc5zz1wqk7c457m33amn";
 "cancel.doc-2.2"="24zhq0iz9iqwm1lnyd6zgzc7dsg9b1gf";
 "canoniclayout-0.4"="hk30976j3lql00w0rj481p8j6z5v69yk";
 "canoniclayout.doc-0.4"="gyr8yvdm21p45qqdjin8abq3v0kbh1lw";
 "canoniclayout.source-0.4"="0bqpq8mn7n7223ay0gfrq3dcpfzkxalc";
-"capt-of-2016"="qmph3ai6555l904xk4q6sy4jml5l6nqb";
-"capt-of.doc-2016"="bpa4ll7afaz43ysz8m7q8fs8klvv4h4k";
-"capt-of.source-2016"="9rjjpf1v8qg3v8j27rn8x3b495lddicd";
+"capt-of-2017"="qmph3ai6555l904xk4q6sy4jml5l6nqb";
+"capt-of.doc-2017"="bpa4ll7afaz43ysz8m7q8fs8klvv4h4k";
+"capt-of.source-2017"="9rjjpf1v8qg3v8j27rn8x3b495lddicd";
 "captcont-2.0"="5s81zvby8iq2l0j4bkz99s56w0kvc5pf";
 "captcont.doc-2.0"="ivp30a2jxrnp8zivmdm61nn0i25kiarz";
 "captcont.source-2.0"="bgy7jzbckqnajp42hy4x31dvb01cjm7s";
-"captdef-2016"="gx42x6flbn7jdbrbqzsn8csgi07ij4k0";
-"captdef.doc-2016"="fykmdpzxx24x66iph3rrzj0sc755y4nh";
+"captdef-2017"="gx42x6flbn7jdbrbqzsn8csgi07ij4k0";
+"captdef.doc-2017"="fykmdpzxx24x66iph3rrzj0sc755y4nh";
 "carbohydrates-0.1"="x4rj3x70sfcdgq8sd8yv2486khxip4wz";
 "carbohydrates.doc-0.1"="lp5y1sx5s74px1x03366lpn676vhl6c9";
 "cases-2.5"="jlc3flcfb7ckwr4320n9gxmv2y7l4d2f";
@@ -2722,9 +2793,9 @@
 "ccaption-3.2c"="4l3kxgc46z9i4lrm479ghpv7d0077l07";
 "ccaption.doc-3.2c"="qm6lh4nrdndp4vivy815ajpj9jj4w433";
 "ccaption.source-3.2c"="fdfpz99x7z4avqx1q4nrydg3r4csq4fr";
-"cclicenses-2016"="scxyv1a4lh05mfgbs55rcg40vbfyvvij";
-"cclicenses.doc-2016"="17zr0mgalzfnpayvzym8hri1yfz8c6xa";
-"cclicenses.source-2016"="hgm5y1054596k129p6j4s86kv0m0ky76";
+"cclicenses-2017"="scxyv1a4lh05mfgbs55rcg40vbfyvvij";
+"cclicenses.doc-2017"="17zr0mgalzfnpayvzym8hri1yfz8c6xa";
+"cclicenses.source-2017"="hgm5y1054596k129p6j4s86kv0m0ky76";
 "cd-1.4"="34nj75mgz2mzxjbmpik2kvqhmwdmbw71";
 "cd.doc-1.4"="i7230mqkczs0b3nczmf3gkv8z0bx61mc";
 "cd.source-1.4"="h5plih2dk6kk9klc7lwv5gpx88apljlj";
@@ -2734,8 +2805,8 @@
 "cdpbundl-0.36"="qli68wj3jjv1p978in1qrg63qpvlldnq";
 "cdpbundl.doc-0.36"="wsg0p030n7mcz1p993vzgmp6h5xfmayd";
 "cdpbundl.source-0.36"="p2gp7qsmlczdhdank177dq5lnz1kgy0n";
-"cellspace-1.6"="z1fb1l66lni6drrvy1pyfksvpp424vjh";
-"cellspace.doc-1.6"="3qxa9imgb6ap4kvc97znik9vhzdwb15b";
+"cellspace-1.7"="0grnmj8yywvqmzvil5qdqqz86p0pxsch";
+"cellspace.doc-1.7"="00nzspr8m16s0wqs6q1v82gn40yj45jk";
 "censor-3.21"="a5anc6g425g9f6x6ag4d824y659dlw16";
 "censor.doc-3.21"="29ayn0qp9hhc1zx54xicn4k56xhkj6y9";
 "changebar-3.5c"="syrijhn123hp8qhrbss4jkjfzzqyyxxk";
@@ -2746,8 +2817,8 @@
 "changepage-1.0c"="s3dd0v3z0g8v74i6cnasyaa70wnqiimk";
 "changepage.doc-1.0c"="g63jqnyrkc74dd9ksi0s7pbxq7s4dzwb";
 "changepage.source-1.0c"="0ck3lyl2kzvm1182hmw88ni48paff7aq";
-"changes-2.0.4"="h3nxw2xdajy1xy8sssgpbg2ka8b9fwig";
-"changes.doc-2.0.4"="cv0ylrl6axc6s6c3swyckxxs8kyr39nb";
+"changes-2.0.4"="2v7wbkgk8n9pafgapjs6glqbx943s257";
+"changes.doc-2.0.4"="zgsp981wnjs758wwf15l8hlh5vrd7zx6";
 "changes.source-2.0.4"="74ahc6k7qb1vyackh39xv57ak0pzn9z6";
 "chappg-2.1b"="231kpsvxwdnmakq4mkca0nisqdl622n2";
 "chappg.doc-2.1b"="nhh2f6k2z5gh449b91fmxnvh359n9adw";
@@ -2755,11 +2826,17 @@
 "chapterfolder-2.0.1"="n1iyz86gz5mb7ixn2kd48i0rgj28d7sr";
 "chapterfolder.doc-2.0.1"="cq3fgi89g5j3l8pjmgb9f76ly6ykdviz";
 "chapterfolder.source-2.0.1"="v9hlnak7v7s4bi4942gc43hh03zy33d7";
-"chet-2.1"="5401gmabiw5jlcqrxyamzb9ravbsmgqp";
-"chet.doc-2.1"="d4rnap038has280b5cxv76rd42bf42l4";
+"cheatsheet-0.8"="dbp6g9c967pc45wn345qm95zns815kl0";
+"cheatsheet.doc-0.8"="s3h23qpv0l6hn9bqnrzyiqx2mv4bzxch";
+"cheatsheet.source-0.8"="4x8njfgq1scmiqnkx4xvgxinc133a4vf";
+"chet-2.2"="g654s58dhkxsnzbg59zydmncldn3qklv";
+"chet.doc-2.2"="4wc8nmj6lprpqhm5a067nsm00y56pzmi";
 "chextras-1.01"="mc1ymd3wfbwash00ly9gxk6hcx9rl4lk";
 "chextras.doc-1.01"="9rl2yhjmafyp430avjf0dmdmmgb45x01";
 "chextras.source-1.01"="5a4dqp8jyaq0bi98q26mskbpmp1avb35";
+"childdoc-1.5"="qnvl5zskdh6rwkl516m60h0qxwgb85cp";
+"childdoc.doc-1.5"="703kk90sddx7xxyf672nrjkrjd1rnmxn";
+"childdoc.source-1.5"="bcrjz2zs84pv7lynj8v04p9zrc5w4c4x";
 "chkfloat-0.1"="m48shpd6qvgscba8rz3dpkx0blzfiw13";
 "chkfloat.doc-0.1"="1l3anr2pkpq0h4wpshscrxmcdj80q6i4";
 "chletter-2.0"="9nvpbffnfn080w6pkf4xv18vwsvrc2z6";
@@ -2774,6 +2851,9 @@
 "circ.source-1.1"="j3hksz3r2pa1y4m7kw2qwzm11j7a4za3";
 "classics-0.1"="kpskmb202fj06y3glw5f7m625q6zp4c2";
 "classics.doc-0.1"="ysdwq12pmmxanivxl1j5nxbfh1aw0vz2";
+"classpack-0.77"="dybfkvi6ykzw4s03xgz8r7n88xir9zzb";
+"classpack.doc-0.77"="390v2v6vabq679gr2yqvmyq26x6l6lz0";
+"classpack.source-0.77"="mr188ykwygc0gsznl43vlbx33wa2imyd";
 "clefval-0"="291n2xdsripyiq6zskxqdca5gn3ajfj5";
 "clefval.doc-0"="s9mvnhb1w1q61igbrvbn4fi4hannpx2v";
 "clefval.source-0"="l73m1k6wksnfqwd1jiqjksvdpwwp9k1q";
@@ -2782,15 +2862,18 @@
 "cleveref.source-0.19"="g0agqk7r1lli033sa33k5hp2xnsrwvm2";
 "clipboard-0.2"="01iyxd2i6rv9vzv1r3j5gyrnancfbqbj";
 "clipboard.doc-0.2"="iybnanqb5ykxdz9d108xqa46y48x6zp6";
-"clock-2016"="bcsbr112z4np0wszh3dwv9h5l8w11bvd";
-"clock.doc-2016"="prj65yh580yg74pckacsr432rki2nsl6";
+"clock-2017"="bcsbr112z4np0wszh3dwv9h5l8w11bvd";
+"clock.doc-2017"="prj65yh580yg74pckacsr432rki2nsl6";
+"cloze-1.2"="6aawammcpq8n2igbncbkip67ph5mapc8";
+"cloze.doc-1.2"="5lsz6hfblnzj9wjs7j43c07drsgv5mdc";
+"cloze.source-1.2"="x6gbbdxnvgfysjhv3xad83lfs9khg4f9";
 "cmdstring-1.1"="mzw3hf7xhy01j9irvvlba90hb0065p1r";
 "cmdstring.doc-1.1"="l2hjd47d6wmd07rnciadrbir01887nd0";
-"cmdtrack-2016"="1jw2c4hx9xmalis8lkz7lr4b38h6srlq";
-"cmdtrack.doc-2016"="0fniwn5zccpkypjn9v5hjl0baxscpc8a";
-"cmdtrack.source-2016"="hlqnd8ar2w2wyjr7rxi6qbi3mw2ppgsn";
-"cmsd-2016"="4b40ccv8788hg71xh6sv12gnzyy2q4rb";
-"cmsd.doc-2016"="j3bvhldqzjqf1snv9pbg7k39sbwl2ccj";
+"cmdtrack-2017"="1jw2c4hx9xmalis8lkz7lr4b38h6srlq";
+"cmdtrack.doc-2017"="0fniwn5zccpkypjn9v5hjl0baxscpc8a";
+"cmdtrack.source-2017"="hlqnd8ar2w2wyjr7rxi6qbi3mw2ppgsn";
+"cmsd-2017"="4b40ccv8788hg71xh6sv12gnzyy2q4rb";
+"cmsd.doc-2017"="j3bvhldqzjqf1snv9pbg7k39sbwl2ccj";
 "cnltx-0.13"="i7agvf6p3zbmpp0yy54jcz30yk5wgndb";
 "cnltx.doc-0.13"="bfzwcspv6kaizp2cngdbgps61w40a61l";
 "cntformats-0.7"="v6xl1mkldlf6265h96m2q0bylifxhl33";
@@ -2799,9 +2882,9 @@
 "cntperchap.doc-0.3"="y2jdwmpp6r1w17svqw9iww07pi3blbah";
 "codedoc-0.3"="gva56ykkkr58q9gxkff6ng0wd5bk9by7";
 "codedoc.doc-0.3"="8w9r3z61w026a0zqmbsilmf4q382bvd2";
-"codepage-2016"="y9xv0i4lq1nh9nav86b5j34rws8lln53";
-"codepage.doc-2016"="7rwl8dagypzj93xim0qj3gm56a24f8y5";
-"codepage.source-2016"="4955x5b5ddysnx8bksmwsqhj1jy83991";
+"codepage-2017"="y9xv0i4lq1nh9nav86b5j34rws8lln53";
+"codepage.doc-2017"="7rwl8dagypzj93xim0qj3gm56a24f8y5";
+"codepage.source-2017"="4955x5b5ddysnx8bksmwsqhj1jy83991";
 "codesection-0.1"="mnsfhjy6j2ypxiwmwx85w2k2zyw928pi";
 "codesection.doc-0.1"="s2kwd6brlwa42pvhpjasx84s87vmbz8j";
 "codesection.source-0.1"="j94xngba5c8r55idfqgy7ra3imzkmg8x";
@@ -2811,25 +2894,25 @@
 "collectbox-0.4b"="2kxzzkgkgcjw80ff9n2mjnnfpxaxcdhj";
 "collectbox.doc-0.4b"="2xgqgni67w7q4ad0jqy4vr9wki08kn1g";
 "collectbox.source-0.4b"="szy9gprjqnkx357dca60120lvaiyyy8f";
-"anysize-2016"="0phqi21d8qz3ifadzfzyfb04v10xc46n";
-"anysize.doc-2016"="4as0n5cw5g21j1wy094gdrbw8pzdm460";
-"beamer-3.36"="id37ddaxfy99hh4h2gb6jk84z9jnjg2i";
-"beamer.doc-3.36"="hm5ffj1pzaz4i6jz6nhl951b7yjfzwna";
+"anysize-2017"="0phqi21d8qz3ifadzfzyfb04v10xc46n";
+"anysize.doc-2017"="4as0n5cw5g21j1wy094gdrbw8pzdm460";
+"beamer-3.43"="1rr03jx5bdhqhasg6qm6qymaq6assdbs";
+"beamer.doc-3.43"="i8bd2mhvl6i2q3ksgwb63sb2jpab5b2l";
 "pgf-3.0.1a"="2j88yrmw9ss4c39j1r7s5nfhpkf7x3vc";
 "pgf.doc-3.0.1a"="4c2fgj2lxmhw85ad2hnc5bajzxjg6v6x";
 "pgf.source-3.0.1a"="0fvi39isxzyyndb9x7awjv3qmc0bhb5g";
-"xkeyval-2.7a"="nznhb9srbfg7ifdi2mlkqbdcsq6329a4";
-"xkeyval.doc-2.7a"="k84lpc1h5d71qcb2k5rm5fnn04pv8czc";
-"xkeyval.source-2.7a"="9g5vvb4y71qryhdbjwjyxhh2w86cch0f";
+"ms-2017"="ffg55s4fwk1r5lfv94wjw4f7npbvjpi9";
+"ms.doc-2017"="980rqpzi9zf2dn8aa891k4538rpzlq2z";
+"ms.source-2017"="ybpn3z6c8gw2jlbj3161l1gm6xxy85g4";
 "booktabs-1.618033"="5pj973c5lps8fzz4skmgik3892jii5vb";
 "booktabs.doc-1.618033"="kv5d1vbz28n5ifi1xnd4213q3dp55qgh";
 "booktabs.source-1.618033"="siz5pfb2skr927lz92dhhxirx44wsc8i";
-"breqn-0.98d"="yd3rkqy1lr94iyln19qa57y69cd17324";
-"breqn.doc-0.98d"="rjmnz7x2yd6v4b9jbcf28impyldahxcf";
-"breqn.source-0.98d"="ydx0xbxcsabk0in6z3y4r335cms9zk87";
-"caption-2016"="x087kmssmg4nhihw1bb847ynszd1zxyh";
-"caption.doc-2016"="ng1lsvkakl14jja0izyd20l41w7as4z2";
-"caption.source-2016"="3nsnn2kccyqk4nf7vm16j38qakv24pbr";
+"breqn-0.98e"="6qavw7nbx6wsm84qxfilj9ah76isisrn";
+"breqn.doc-0.98e"="5b6s35kmasnhrnyzmqg2d04k2448nipx";
+"breqn.source-0.98e"="gmqymf8lwcig4sb897ba3acwd4i316dj";
+"caption-2017"="x087kmssmg4nhihw1bb847ynszd1zxyh";
+"caption.doc-2017"="ng1lsvkakl14jja0izyd20l41w7as4z2";
+"caption.source-2017"="3nsnn2kccyqk4nf7vm16j38qakv24pbr";
 "cite-5.5"="7vzh6m2dnlxwkiw62ifbyn9hx82jpgyj";
 "cite.doc-5.5"="d20p75a21nvifkj1f61fd9ah5580n2bx";
 "cmap-1.0h"="bky8rw1a9f00x6fzx611hgfcyf7d115f";
@@ -2859,73 +2942,92 @@
 "fancyvrb-2.8"="p2lpk6f8lrwa8gv07j1l0m83sqkdrdx2";
 "fancyvrb.doc-2.8"="1np0vw5dyrzz6a3d59jvrzbvvwi6ix6h";
 "fancyvrb.source-2.8"="g38dv0ix1c8dg3ijahs20kcwzw1lzdf4";
+"filehook-0.5d"="95km0y68ldra3ha3c3j83zlchg7d6xn6";
+"filehook.doc-0.5d"="xvrasdz1m52dsjzn3wv5hy1pdwka3msk";
+"filehook.source-0.5d"="il5yprd7hw76wmbb6xmqz9njhkqjqkz6";
 "float-1.3d"="dqksfsgqpc0vprkhfc6c9vfxlbrnn8sw";
 "float.doc-1.3d"="88hpzqh1011kwvwwm5bppb2gx6c9qqrv";
 "float.source-1.3d"="j1vp24g1lvwniahnd9vlw32c61cjswn9";
-"fontspec-2.5a"="2vi3kxivlcpj8b50m2ww3ras1p37ga75";
-"fontspec.doc-2.5a"="sajy2q2b06gfgj3kzxxwipjgskpmwbzy";
-"fontspec.source-2.5a"="4gq5r4qksp0dw70j2zwprrhi3sy5k3mf";
-"l3kernel-SVN_6512"="lm0yv8krbnpqahkhh709b8w23rw3ihma";
-"l3kernel.doc-SVN_6512"="vxs6yb5j84p9d54ywlbgxivq6hp4dpn8";
-"l3kernel.source-SVN_6512"="x7q0njz7nk7cwi1alfrxz3l332nyx6sl";
-"l3packages-SVN_6512"="saqbanzsyp410c4dm1sa6j9p19rzvi0r";
-"l3packages.doc-SVN_6512"="rdn7qkfq2p28rb38srhxipjvwmm9axmj";
-"l3packages.source-SVN_6512"="71ha7h8p9kbg205v12dhnx6bc0sa5mr1";
+"fontspec-2.6e"="x6b5ia4c6fd3g8i89yardh6qq123fzgn";
+"fontspec.doc-2.6e"="cb04igh8awrj1hxk6gw7jif5v51676mb";
+"fontspec.source-2.6e"="88zw6mh93p0l995l0vqjg75xzawk20pk";
+"iftex-0.2"="3amzn5jjz9l90w90rhrrq75shl1v731z";
+"iftex.doc-0.2"="n514jbc0x2jxsk39lhayr74xpzfgqvn1";
+"l3kernel-2017"="hr5j6c16a8w3vhsb9yfc7d0vgfh7qjpl";
+"l3kernel.doc-2017"="0mc8sd5b4rp8crd5wykb54zlx0p30h2w";
+"l3kernel.source-2017"="crqwys02pz1w51vaj0zs2qiypjrf9v31";
+"l3packages-2017"="3f0yl94ywspimn44zb9hpr4crwcjs59x";
+"l3packages.doc-2017"="89xxka7x0nmmqdndm3r2798rn6zai2c9";
+"l3packages.source-2017"="fbxnsnv6p5rc354pffbk4qxavfi0w1i8";
 "xunicode-0.981"="ybvkdgz4sdl4nixzgz2rbmqfz7hwajv4";
 "xunicode.doc-0.981"="lydvg50dcpp0lk3m9niwdyf1vra61mgf";
-"fp-2016"="5nb3zlqbvs9n2i59y5rw7b5v4ypa6dj4";
-"fp.doc-2016"="cx0qn4l16ir6k92rjjxjxy9n38agfxii";
+"fp-2017"="5nb3zlqbvs9n2i59y5rw7b5v4ypa6dj4";
+"fp.doc-2017"="cx0qn4l16ir6k92rjjxjxy9n38agfxii";
 "index-4.1beta"="qbh9vs69mrp2czw492icb71wbx4nzshx";
 "index.doc-4.1beta"="l3476by3qz0r0cn3lcbw006ay5p11naz";
 "index.source-4.1beta"="0i38dyjh6278hxgkdzy0wvlcbn2w0k7n";
-"jknapltx-2016"="cvwv1bfgf5s8rnahghpy2pbb7kgwzqwp";
-"jknapltx.doc-2016"="cxdmxr63vm4sm8rv6bp9n3yyw5gqc7y3";
-"koma-script-3.20"="9rghxgb9iqrpmq1p4wcd75rxkw9wr318";
-"l3experimental-SVN_6495"="iwdg63yc5kn5v5j38xqcjd0s31vy6nss";
-"l3experimental.doc-SVN_6495"="xibw18dsdz7vkl9bq58i9bbmrvqhws27";
-"l3experimental.source-SVN_6495"="8g98p736z2zfsr6pa1p4lm6fb5cdama7";
+"jknapltx-2017"="cvwv1bfgf5s8rnahghpy2pbb7kgwzqwp";
+"jknapltx.doc-2017"="cxdmxr63vm4sm8rv6bp9n3yyw5gqc7y3";
+"koma-script-3.24"="sk70f26ssyy2jgl2hg38xczpabq3rf8y";
+"l3experimental-2017"="zx3p8f8zn925s3fqzlqcprljsnm423vh";
+"l3experimental.doc-2017"="r2mbcw8cbbl33zg507clbl7qcgv1dxaw";
+"l3experimental.source-2017"="6lnd3k35vd8hjx5d8z7ha23lj1ilvvi8";
+"latexbug-1.0d"="zfxinlwjxxz1rqb5ryfh87yfgd27g2ax";
+"latexbug.doc-1.0d"="cwsa9c4pp9q6w0kb003aqz72ydz3r5bn";
+"latexbug.source-1.0d"="lkf2ykr7yj8aw7g7322ivhr9a7qcv2d6";
 "lineno-4.41"="kvbdigwxw4db752kssgdb8rlxhljkkpm";
 "lineno.doc-4.41"="cfnil0v0isahd65d1sly2kr29w38h535";
 "lineno.source-4.41"="w30n8z3rnrvzpfa1d1s7mn3rcj03s892";
 "listings-1.6"="r7c966s9wlhjz29xgpfb4v17s07kwbsm";
 "listings.doc-1.6"="xc3xnzdv0vxhw7zgpxi6yk52bbmk271y";
 "listings.source-1.6"="l4a55gc3ilikmsfcc45x8faa78938303";
-"mathtools-1.18"="3dyinwg816qr0kip6bgyz4092qsw6a1d";
-"mathtools.doc-1.18"="gfsk3bcappsrqj4nxn57v7jgg9x2xyg5";
-"mathtools.source-1.18"="1amakm4cndfasnykdsnqh4rsrjgmis93";
+"lwarp-0.41"="hjv61q16h3cz8l789fbqajssv31bkcmk";
+"lwarp.doc-0.41"="h6qnbn2by8bdznq4zaiiygqm2n650d2w";
+"lwarp.source-0.41"="3zqnhsqblgas8dnr1jzliykj3mhm33l6";
+"mathspec-0.2b"="kwvx81d4nlxj7vbr2n5zvgnfvkasg4y0";
+"mathspec.doc-0.2b"="rqykkdkfahnnnphcns26p19z9mr2mlgh";
+"mathtools-1.19"="lkqf9wr9ipgqrg8isqz072xhhpxfjkjm";
+"mathtools.doc-1.19"="qggrhicv1gw317cjpfsz8i5qq684mpmx";
+"mathtools.source-1.19"="0jpdsw0yrcak32k0bmsiry958rm2fsvk";
 "mdwtools-1.05.4"="fbp8vrgdzc2g4i27m9f4qcsr8yjlbzg3";
 "mdwtools.doc-1.05.4"="jb5r95gmlqj1bx19gbkvcm372ina3bdy";
 "mdwtools.source-1.05.4"="kcm853bwwv69vb5zcmikd1gmpcnhz9pw";
 "metalogo-0.12"="hamja3bdw70llmwnabjq9vsdni1w77qv";
 "metalogo.doc-0.12"="mi09m2hdx668xm2v9igsq25z504n4vrh";
 "metalogo.source-0.12"="4xddwk98vl0xdff6j49jjanzvqbw6yzm";
-"microtype-2.6a"="f85ick2wisjl5vrp1jwkw3jbiq5jf360";
-"microtype.doc-2.6a"="qlqbr1m88wb79lr7rjs586rfgbp4m6wl";
-"microtype.source-2.6a"="s2xh2z3h3wxs9bdagjgl9a0x8m24h9nj";
-"ms-2016"="ffg55s4fwk1r5lfv94wjw4f7npbvjpi9";
-"ms.doc-2016"="980rqpzi9zf2dn8aa891k4538rpzlq2z";
-"ms.source-2016"="ybpn3z6c8gw2jlbj3161l1gm6xxy85g4";
+"microtype-2.7"="brkf8w0rci9bkmykx0lqmc020r641gkh";
+"microtype.doc-2.7"="ldbm8hm1rfjzgfzkqx9qjxl8p0ki10wl";
+"microtype.source-2.7"="5ipknc0bdbq5i51zbvs1pf072ddsxmqk";
 "ntgclass-2.1a"="z5fz8hxig5gp5ii9780b8filsbk7qxyq";
 "ntgclass.doc-2.1a"="900yw3bcc4mdycknaspf867wm8fc3g7b";
 "ntgclass.source-2.1a"="rqd773gdvwmrz54igqz6qz54z4irajvg";
 "parskip-2.0"="93zjzx0cifz9lzdsdlwy3z46psp6nfzn";
 "parskip.doc-2.0"="v4ddahrdxf1qf7xsqvfqkzrzg3pj7zgg";
-"pdfpages-0.5f"="sxam7z4bmmi795vh4ymchgva2mrhqmqb";
-"pdfpages.doc-0.5f"="hi1d8chy8jgasnpdgk20iq0z39d5qj28";
-"pdfpages.source-0.5f"="pfs8i92djk128xz85y07mrvm53q7052j";
-"powerdot-1.5a"="8dwy2srd3g7gcahfcqrz9189r7wh1wyx";
-"powerdot.doc-1.5a"="1x73p0bsd8h2r4xa71w21gbyzg4zp6ga";
-"powerdot.source-1.5a"="1r81q1kv1x36y328d1ypaq0gi34y9jdw";
+"pdfpages-0.5k"="r58pxikda61jwmdly8fpd2nijwh5bzfd";
+"pdfpages.doc-0.5k"="hjl7akjx7wrjkm95bw9l2g8cgnzm4drn";
+"pdfpages.source-0.5k"="gdfjq7njbaiwsaxhjv5baqhvxa4599rn";
+"polyglossia-1.42.4"="csnxk84k28xvpajix45dyjhqrs054rxy";
+"polyglossia.doc-1.42.4"="62m2fgqmplp2z5pb4sv038i1f0ynxhmw";
+"polyglossia.source-1.42.4"="92wvkanrs6mq0kgd878c0my5fab6960f";
+"makecmds-2017"="anpaqglvl5rmcy8r2q0ap8m117nsx89q";
+"makecmds.doc-2017"="39zxaxxqlmps1wd4rjy42a1hk027n06v";
+"makecmds.source-2017"="j4g888p0hniq7p6b30q1fb4qfw3qp7i6";
+"xkeyval-2.7a"="nznhb9srbfg7ifdi2mlkqbdcsq6329a4";
+"xkeyval.doc-2.7a"="k84lpc1h5d71qcb2k5rm5fnn04pv8czc";
+"xkeyval.source-2.7a"="9g5vvb4y71qryhdbjwjyxhh2w86cch0f";
+"powerdot-1.5c"="dq53xc4c6n4qpxcqkdazwn6b8v8z94f7";
+"powerdot.doc-1.5c"="ph5p9y3knn1w1hkzb79kdxcwkg6fhrbs";
+"powerdot.source-1.5c"="245bf49s69vlxk1f1mlbdyfhx68icgpj";
 "psfrag-3.04"="k8qyr0l3fsc4insyy1r6q596dq4gf23a";
 "psfrag.doc-3.04"="ybb4r3w20w1pcjwzaw0srpkx5c19rqg7";
 "psfrag.source-3.04"="xk135sb77fk6l9wz6fzifsjvchcqyj0f";
-"rcs-2016"="4lkd02hz1x9zkxnh247wmwy6n9pg4pyw";
-"rcs.doc-2016"="m1lw85b793n2nxywdi39fg438i6kif7x";
-"rcs.source-2016"="iw4nn20q54s2d4wdyby7n03ljcqrjmig";
+"rcs-2017"="4lkd02hz1x9zkxnh247wmwy6n9pg4pyw";
+"rcs.doc-2017"="m1lw85b793n2nxywdi39fg438i6kif7x";
+"rcs.source-2017"="iw4nn20q54s2d4wdyby7n03ljcqrjmig";
 "sansmath-1.1"="yxyny4949h4hm4ajn673nzzw8wn8cba8";
 "sansmath.doc-1.1"="b8vzdmm1l2x7cyc15xzhmwjkszlsp2j3";
-"section-2016"="69anwmylbk95jbgr8645abp07ygv9f9g";
-"section.doc-2016"="ri1gsrpfp94rp0dc90djj1kgpka2p5gl";
+"section-2017"="69anwmylbk95jbgr8645abp07ygv9f9g";
+"section.doc-2017"="ri1gsrpfp94rp0dc90djj1kgpka2p5gl";
 "seminar-1.62"="z9nzymppz6hz3lxy0nliqvy5szq6jk4c";
 "seminar.doc-1.62"="23fz6p4ybl42rmr1m3fllg7qn1zbmfki";
 "sepnum-2.0"="x64bd0f3g1x0bcpdgd2lfspr13jyxvcf";
@@ -2935,16 +3037,25 @@
 "subfig-1.3"="sbdadp9ya32w2h8f484zwpmpln2zi4l0";
 "subfig.doc-1.3"="y5g4iadgvkfi144zk37fww79r0smsfk4";
 "subfig.source-1.3"="3xn4yhi29m77001w2hy0s04svik5z5xx";
-"textcase-2016"="5a82axcc916n61755cafcqcz3vb7w27h";
-"textcase.doc-2016"="b8iq4xf229k6p8s0b38br9gncyqhrlxl";
-"textcase.source-2016"="xlgxjkf93zrwdhk44zmxazfqg1yw88pa";
+"textcase-2017"="5a82axcc916n61755cafcqcz3vb7w27h";
+"textcase.doc-2017"="b8iq4xf229k6p8s0b38br9gncyqhrlxl";
+"textcase.source-2017"="xlgxjkf93zrwdhk44zmxazfqg1yw88pa";
 "thumbpdf-3.16"="h8ssy495zrgwx10wsb9bypapmhdnvn5k";
 "thumbpdf.doc-3.16"="fqbyfy2ip2ayd0a0fwkg25jdjcyprkdv";
-"typehtml-2016"="rk5lpbaikavkp0shg38cdk5b209wx3kh";
-"typehtml.doc-2016"="292x26pw24azh4zdwpy6sh3f1ksk8r2x";
-"typehtml.source-2016"="96p79dyy553b4mc01ihk7qgr11396drn";
-"underscore-2016"="b7kwk1zddr5a19mcw3yxrp9pffc604x0";
-"underscore.doc-2016"="gwqnbwqn6vjizs1xqnmbv8fmcrs274fr";
+"typehtml-2017"="rk5lpbaikavkp0shg38cdk5b209wx3kh";
+"typehtml.doc-2017"="292x26pw24azh4zdwpy6sh3f1ksk8r2x";
+"typehtml.source-2017"="96p79dyy553b4mc01ihk7qgr11396drn";
+"ucharcat-0.03"="d445ic6gwl7d5d31s691vr63f4hn76dz";
+"ucharcat.doc-0.03"="ma6rz3djr9v3q5p8ffqyznjb91gjj5li";
+"ucharcat.source-0.03"="kh9cnzg1pn8c51bbph2amp5y1j85q38h";
+"underscore-2017"="b7kwk1zddr5a19mcw3yxrp9pffc604x0";
+"underscore.doc-2017"="gwqnbwqn6vjizs1xqnmbv8fmcrs274fr";
+"unicode-math-0.8h"="mjk6kkv3y1w8lf8cjc2rh38x1lz22ldm";
+"unicode-math.doc-0.8h"="k7p6qgb3nab20m9zxhcsd9wzxbv108ky";
+"unicode-math.source-0.8h"="k98hzk930s2wgf8y4qn2shgmh79s9j9r";
+"xltxtra-0.6"="gr3v05m1pm9j55smbfy71vfn3kg1kpz4";
+"xltxtra.doc-0.6"="0zsznrgvzqcfi0ypxkbk3vqslwyap7l9";
+"xltxtra.source-0.6"="cw6kmfdgyz9ds3gdjlgy2bh16i6fxip7";
 "aobs-tikz-1.0"="klfbwfabfx6lv1pk6kz3vayabsnphvrh";
 "aobs-tikz.doc-1.0"="qh43c30d1xpyl4rbazp4kj8p850rdxwb";
 "aobs-tikz.source-1.0"="xgmck3vrplx5q6blkm6yg2njgkk4k5bz";
@@ -2960,6 +3071,12 @@
 "autoarea.doc-0.3a"="zh69glasmj251qwrw6pjrshprd6x4hsh";
 "bardiag-0.4a"="vh54valkzncvzlx8y58gzs3k5jq66s69";
 "bardiag.doc-0.4a"="576s5nnqvq13rjnnn4l2d1g1rnd64vvn";
+"beamerswitch-1.2"="2gx2ar9z4xq6m9wc9231021ck3kbi23a";
+"beamerswitch.doc-1.2"="b23d4h32bchpzs623m6zpn4p54ap1ybr";
+"beamerswitch.source-1.2"="iwwiic62ha7ag7yyjsdhwzha7lmr9k3j";
+"binarytree-1.01"="xl1rqgn286y7hpv69bwja6c5rrbx29g9";
+"binarytree.doc-1.01"="7ihijqc33m3ydk77aw0qqqhf94yyrz21";
+"binarytree.source-1.01"="lk7v0gr502ck4z0d605z6mwkswqpmfyk";
 "blochsphere-1.1"="8sagm09ymgd1b2ls78rzrcbn6k0m63rr";
 "blochsphere.doc-1.1"="sj294bshvzlc77wi6mwv4pl0y73j311p";
 "blochsphere.source-1.1"="4kr6ra2cp6fm7r6xfrln38v06iwxqzaf";
@@ -2982,13 +3099,15 @@
 "bxeepic.doc-0.2"="qkfwmg27v6ygkp3d9d1l18zrpribbx3q";
 "cachepic-1.0"="hr0pnmjxny590gzhqbwq9qiqd1vcpwrq";
 "cachepic.doc-1.0"="myyjxkc21qrwmvx2nvbg2smvzfzi5f5l";
+"callouts-2017"="i91ky84hjizrxkhb5k6281iq3fkifrsg";
+"callouts.doc-2017"="k4rca9nia095sgskhv0kzp1qqw0ydf8l";
 "celtic-1.1"="mr86xyd6md9n5b17a6wga40k8z98dq7b";
 "celtic.doc-1.1"="3mwjjxnv079m8ginlv5my50jj1cmpjv0";
 "celtic.source-1.1"="z25a01arypma6jfyj2f16n36hqyicffd";
-"chemfig-1.2d"="klsfh302iw9fzbl4w2hr155fgzld1jw9";
-"chemfig.doc-1.2d"="vrb240a4yi56v7whq245iw54kr5r5k0z";
-"circuitikz-0.6"="l82zv9h6q20gmy6yn2ldc9gxp0x9zm91";
-"circuitikz.doc-0.6"="89wa9mkxwiv2pxnh409cg4min00n3hcq";
+"chemfig-1.2e"="m8vww69bdg2crm2w4885x1qlyza948nc";
+"chemfig.doc-1.2e"="22p1snikfh9s9wwqnmzxzy24ay08sh69";
+"circuitikz-0.8.3"="krbwmn8nd6adhbjm4pg7rfxj9aff15cw";
+"circuitikz.doc-0.8.3"="sa8797nhxww4z85k37kmr5ipnyqa3k1s";
 "combinedgraphics-0.2.2"="hr8cvhw9ng0nx1v0v34bx5yppzhw8r3a";
 "combinedgraphics.doc-0.2.2"="2s219mqf373sb1rp3dwjd9kdasjl9fdg";
 "combinedgraphics.source-0.2.2"="4q5n4m14613bv27dc7n3z1m8w2sfiv0q";
@@ -2998,30 +3117,37 @@
 "curve2e-1.60"="gy48z045rdfrzda6vsy0ybwgaynvf78b";
 "curve2e.doc-1.60"="8gsmvy2s3s1xk0qrmqnv3w7z0h3g0xwn";
 "curve2e.source-1.60"="zjxzgxgi1p6lbq521dbg92xylk90kgpd";
-"curves-1.53"="5v3y0h5201ayjrnlwy6r3d1bv738k0l5";
-"curves.doc-1.53"="97v1zy8mydmmqqzlcmjv1b8l2aad74m3";
-"curves.source-1.53"="q7s2kbn6n75s0ddda5f5jfmiw470rb3h";
+"curves-1.55"="2cyy1kwxbvxpvxpvvsbh7nvh5q5l7n7b";
+"curves.doc-1.55"="jk4ma0hcrdg6lwy4l5238b9xzsb8lfrv";
+"curves.source-1.55"="q9l5hcsi0n14kkcim30yk6i6sxc5cmvw";
 "dcpic-5.0.0"="vw8yp87w2arykklgfbi4sjpqq68nkxl4";
 "dcpic.doc-5.0.0"="0shw5fqn8pmzs2s98yxa12jp6lf23c4b";
 "diagmac2-2.1"="4q9fi0lsnriy4szlgdlg0w302q1gmbrs";
 "diagmac2.doc-2.1"="dfp1br71r19b0pzjzln61wjdn30qy0n7";
-"doc-pictex.doc-2016"="770vj0w7dzrw6n4jf1dfds5ngk11cf6m";
+"doc-pictex.doc-2017"="770vj0w7dzrw6n4jf1dfds5ngk11cf6m";
 "dot2texi-3.0"="igh08hai8lpcr0pn4lcfx5b6kgymw4sp";
 "dot2texi.doc-3.0"="r038r86xd4csibgk9n3h76qc5ak1zpl5";
 "dottex-0.6"="yvd132700sxd7hnngskg6w30r1cpx3m3";
 "dottex.doc-0.6"="67dpg655j83k809rs0ybc3cxpy2lvvqb";
 "dottex.source-0.6"="fz625gq3shyvx3wk5jk4hvr33wls038a";
-"dratex-2016"="ydbymdy490gw405n0gn3amd771knss83";
-"dratex.doc-2016"="7z5sxm5li3by76x7sw9hq83gl34f6gkr";
+"dratex-2017"="ydbymdy490gw405n0gn3amd771knss83";
+"dratex.doc-2017"="7z5sxm5li3by76x7sw9hq83gl34f6gkr";
 "drs-1.1b"="h9fz09xdgwgnbif1vxa1k7rxj8v9ri5h";
 "drs.doc-1.1b"="aq84i4xdklf4wcripj60cc9fd4w3zhhc";
 "duotenzor-1.00"="fx9ljkzzp09x8iajbwjlrzcjxf382k9x";
 "duotenzor.doc-1.00"="x6y62df7hjrp64r4w1qvdikqdg6ph8l2";
+"dynkin-diagrams-1.0"="fw1bx6nc0zlb5x2kypbh4gbb1i8jgwgc";
+"dynkin-diagrams.doc-1.0"="zvgsf8yw5l276jz2323i4qhmx84vgk46";
+"ecgdraw-0.1"="py3xjb8hz3mdsh42hnjww7i4ndxgkwnc";
+"ecgdraw.doc-0.1"="a9ggi8ivc4wcnqv9gd28lhdw56w4zg8a";
+"ecgdraw.source-0.1"="77vlnnhs178s19gaa4n7wa82lcvyp0s1";
 "eepic-1.1e"="vdbwj455076cwr4fwmx0lmf00nzka9vs";
 "eepic.doc-1.1e"="ngcq5bdryv79z4wazbzibf8fybc2mhb0";
 "ellipse-1.0"="8whg820p9jrqn4nfb7lc3w8d1a2cyfvn";
 "ellipse.doc-1.0"="i9njlr8m3jb9pcrwqsbcjbsb26993p8n";
 "ellipse.source-1.0"="25xhi22s1cvkyzbjwchd50ixsx6awfk5";
+"endofproofwd-2017"="xn4xfhhr3k5cq53ab6rkjwvxqs877kq8";
+"endofproofwd.doc-2017"="q8zg1zy1909bsif59caj8rmmjj4g3v4i";
 "epspdf-0.6.3"="hz6676iggzrqrgzdr612p75vzsjhxx8d";
 "epspdf.doc-0.6.3"="6icfcsk9gq46lfhq975g6sq5r3g77812";
 "epspdfconversion-0.61"="4dsfb50v8zqbx8nqlzlj712jiq9hchwz";
@@ -3039,19 +3165,22 @@
 "flowchart-3.3"="63krabbf5sfqxf0rjb2h4mjksvb9vgcd";
 "flowchart.doc-3.3"="697hizfchfd691kx07sl1y84p8l6196d";
 "flowchart.source-3.3"="zgn96fhr4z67gpz85717hwwfvkfz2hlx";
-"forest-2.0.3"="vv8z97lzlqh30sv94a7bx42r8781mi6s";
-"forest.doc-2.0.3"="1sfmjnqkm1x3j0lfzalk40a3n3ibkg70";
-"forest.source-2.0.3"="3y5gjdvmfz6kk79ligfmzx93znchdqlg";
-"genealogytree-1.00"="jgrq9w6r2kqaa7fh7a7gbl64l9pg673m";
-"genealogytree.doc-1.00"="10rvn2bm8wkxzy21qjj21kpd9jhjfkxl";
-"getmap-1.8"="ghp3skiy0znf7vyhl59mfna7sgfc8fsz";
-"getmap.doc-1.8"="lvmiaxhc7ghwsxaygcabjsbx1dll8kzi";
+"forest-2.1.5"="zl86yn0am5c7v9c471ai0g4spp3lfc4k";
+"forest.doc-2.1.5"="9sfpasybcfbs0v2afcmhxwpcmdxjpv42";
+"forest.source-2.1.5"="n53yzm6p3nwbxrjj999yvcic58p4iv6z";
+"elocalloc-0.03"="mk2cs80z0gh4dx409y2n3h9cr8ls1la8";
+"elocalloc.doc-0.03"="0p4f0hwr11xvn57adggbbssn9iiynsyf";
+"elocalloc.source-0.03"="spa5lrwk7nikx08v1pgp0xrx4c2gbahk";
+"genealogytree-1.21"="vin4yvnqg5lfl514h2ahrpsrvrwn9ax5";
+"genealogytree.doc-1.21"="z89h194wmsj268j1zlqxnnk0ingbxdnc";
+"getmap-1.9"="y4m1lsy4h96s40i3xq266b9mm6y060rh";
+"getmap.doc-1.9"="giffmyvysflclgj4j4dap3xzihnkgddv";
 "gincltex-0.3"="sqimpp1pb3c7mqcm4jnd40jlahpcnr30";
 "gincltex.doc-0.3"="mpr0nv6ldvvc7wgq35qh34csxhxnknmf";
 "gincltex.source-0.3"="s0dq3s33c04fqmzi9q9wp09vgfm7qh9h";
-"gnuplottex-0.9.1"="vwpajdwl4aidnz2jf0gqk6nqyp26vv72";
-"gnuplottex.doc-0.9.1"="2xaikygkmmp2mk71p5d615z6skyk8nl9";
-"gnuplottex.source-0.9.1"="l858zza52c4k3vzx4rq1m97gvi8nqdfy";
+"gnuplottex-0.9.2"="mbk6yk5147w2rx00503pxmhmldykggdy";
+"gnuplottex.doc-0.9.2"="i0450hl7wd09618hy9igkz3g80zzklwl";
+"gnuplottex.source-0.9.2"="dzmxjcpajp5ylmj1hqn6zqvl5b0c5vlz";
 "gradientframe-0.2"="x80zlqzx72n55qpazclikrafwzny8ss5";
 "gradientframe.doc-0.2"="pgy0vrx4nvys3wki3202r377nryd0r1h";
 "gradientframe.source-0.2"="10dx55zpi0j7xzdkry3dh41ax873mmmk";
@@ -3060,39 +3189,53 @@
 "graphviz-0.94"="gicmf9qslgbamr7qkac4y3x0wajkbhw1";
 "graphviz.doc-0.94"="xxyyxpgr81jv00v48zv7vxkm9sa4hjsn";
 "graphviz.source-0.94"="kqv26abzy2ff31a3f0aval7lskvk5nql";
+"gtrlib-largetrees-2017"="4chnakm8ava1r34m27p526zjda26671m";
+"gtrlib-largetrees.doc-2017"="yhvmg7p40bvwq04xpbwnb41k74xy9mwd";
+"gtrlib-largetrees.source-2017"="jlmhx0507vard05bp7b0np4q5fz1qqn9";
 "harveyballs-1.1"="axddj0mvqck1gmg0b7s43q7gi9hm1327";
 "harveyballs.doc-1.1"="rpsz7hqyyp9h5sa0hxmxnlrs6na0imbn";
-"here-2016"="3jh68lc8arqbg7kb8ixc87i12qlrnh23";
-"here.doc-2016"="445zak4q5zdlbhvkb8gvkg20wpmwjmgs";
+"here-2017"="3jh68lc8arqbg7kb8ixc87i12qlrnh23";
+"here.doc-2017"="445zak4q5zdlbhvkb8gvkg20wpmwjmgs";
 "hf-tikz-0.3a"="hfdmzpnpak33573ldllk90rywqz3ngqi";
 "hf-tikz.doc-0.3a"="dy6jw7rgbclhb6c94rm3c1bxz0gznqn4";
 "hf-tikz.source-0.3a"="jn1iy5nysj2y94ar0s2491l97m1y2rw8";
-"hobby-1.7"="6js0d9ylxpxf8gk7h5zada74g8y8icf6";
-"hobby.doc-1.7"="k2w8xlnn5qdzj6804hw6ymcf4ayhhirx";
-"hobby.source-1.7"="mwa1aw4fbi7zpgmhzzwpicfq2kj29s6q";
-"hvfloat-1.1"="9zvp0b77wng7rqynhkb4nf7fr2g7kvpc";
-"hvfloat.doc-1.1"="yypnjczvr2ixa5q2h5rcwxjrmsvj20s5";
+"hobby-1.8"="kmk2l2ik0anclivgqk6alx1v44j6g8pk";
+"hobby.doc-1.8"="8bdi0hrpyxyczql8rhqfiqlrza5y2g56";
+"hobby.source-1.8"="99k7q3r58r1v7vqh3hv08qbb5s1r552p";
+"hvfloat-1.2a"="axb6597ialjyarbgg1vf40hp1rcmgkrw";
+"hvfloat.doc-1.2a"="lzg6ril60limzkk1g3dzzx1g8hs0vjc4";
+"istgame-1.0"="82zni4rq7gvblfvr3x0b74634ly161rd";
+"istgame.doc-1.0"="yiksd9zn2y8p0b6nciz4svg7mfb71bsa";
 "knitting-2.0"="qam4lj8q2acrb4pl4yqapl2d49hjacvp";
 "knitting.doc-2.0"="1kl1yx9iw11zig2pclzr7y3g290ma2bd";
-"knittingpattern-2016"="8xvccf07iwn71kfnj9f3pnni3imwd9kb";
-"knittingpattern.doc-2016"="bq96pr4hd9mg70qqfwjynhix7ljabbk8";
+"knittingpattern-2017"="8xvccf07iwn71kfnj9f3pnni3imwd9kb";
+"knittingpattern.doc-2017"="bq96pr4hd9mg70qqfwjynhix7ljabbk8";
+"ladder-2017"="wgw0drkb53daslzwsvg48dfznndrz6dp";
+"ladder.doc-2017"="32b2x9zydsp7b2zncs2lg6ldz5cs7gpa";
 "lapdf-1.1"="g5x8axkiscl5796b82is201vcbdxvc3f";
 "lapdf.doc-1.1"="3lpf17r6yqaa7ld8742cp8a7crafpc9x";
-"latex-make-2.2.2"="r8xdcw1z65l15vw8bwxhwmkwv3mrs543";
-"latex-make.doc-2.2.2"="gqpl5yl40hl8c5157yzvkpd09hfn9gmm";
-"latex-make.source-2.2.2"="f2g9xici8cnq8vmar0v91s2m2kalv5ah";
+"latex-make-2.2.3"="zgvj6k5mzlmkgcm2z8199w0j0w4yddxl";
+"latex-make.doc-2.2.3"="l2ydsv2j6spgs52x8malk9ar6mbvjnxq";
+"latex-make.source-2.2.3"="j5qmxv84a2qj8bbp2ral1ibppsacr0gx";
 "lpic-0.8"="74wchk7ljfacnfqy6wn0j9ns5bqzhkv1";
 "lpic.doc-0.8"="yqsjlvnfzgj180kssqhp1i11gq8d9c9q";
 "lroundrect-1.0"="x8g1sz9w4xaj9da4y1xy58hrdblmdx4g";
 "lroundrect.doc-1.0"="2pw71ykcm2w7ki2xx5fvhlfk5xgi410a";
 "lroundrect.source-1.0"="4ad9gr28lqir9g0a15pa31wybbc9m935";
+"luamesh-0.51"="h9iynwv9kpydaizfmn51kfvinqnmlixq";
+"luamesh.doc-0.51"="jmg6frxjcmpn3s4wkv11s2kbpb8aaidh";
+"luasseq-2017"="k07ymsxywmasi0nkdd2ldk164lf36z9d";
+"luasseq.doc-2017"="vnqisa721w2nx11wxb3zsk070b3dzm1b";
+"luasseq.source-2017"="341ldjdwdvjin4rq8ica4f69hb5kbwr1";
+"maker-1.0"="88vzniwk6x9fqhp4y3g32a1cj6nb57g3";
+"maker.doc-1.0"="5w3rag10kbzp8whk0hjrl1ic7iqrna8f";
 "makeshape-2.1"="y9d0868x2s8950zphcf6sdz3l7a1sw9s";
 "makeshape.doc-2.1"="wdhhbk50rqxnm4iqd0gvnfzgy17knvqd";
 "makeshape.source-2.1"="5ddzsj9xakk5hwhg54snvv7bp0vlmjd1";
 "mathspic-1.13"="x4m5r6mv0y3cc4vx1qb6anrparbgdvlq";
 "mathspic.doc-1.13"="qh2ycvh04kxfihxnri5fr5zxdkk04ppa";
-"miniplot-2016"="3myl55b3q359l0aillyxg7pisii3llpj";
-"miniplot.doc-2016"="hi57wciv475ix91zl4rh30lv5pffns1p";
+"miniplot-2017"="3myl55b3q359l0aillyxg7pisii3llpj";
+"miniplot.doc-2017"="hi57wciv475ix91zl4rh30lv5pffns1p";
 "mkpic-1.02"="m0rzxyzpyjzial8vvd5nm2rny449ka5b";
 "mkpic.doc-1.02"="m0v80hkyq699sbmdbv5ydp75ccdh5yd3";
 "modiagram-0.2g"="g2syxjg96d46hkn75ym5p3pszq92kn9y";
@@ -3103,15 +3246,15 @@
 "numericplots.doc-2.0.2"="9dlfmdqslpzhsf8zyfnsqy41qmcgzf1x";
 "pb-diagram-5.0"="34vlhfdhm7glvpzprr99v7z7lc8rc8pd";
 "pb-diagram.doc-5.0"="8a36mfpszgjyzddfmmz2qrg9fv03r9vh";
-"petri-nets-2016"="0yny9mc10syfx1a716sjw3768bf1a51z";
-"petri-nets.doc-2016"="3m0f4r65jhnq3la2qyp0xa7ra66iyahs";
+"petri-nets-2017"="0yny9mc10syfx1a716sjw3768bf1a51z";
+"petri-nets.doc-2017"="3m0f4r65jhnq3la2qyp0xa7ra66iyahs";
 "pgf-blur-1.01"="zl2b6914nny60vlp1fppznbn5k6wq0lw";
 "pgf-blur.doc-1.01"="h20qsk87c3x0p74jzlpg5wcsr7w6qmdc";
 "pgf-blur.source-1.01"="aj17ly8zi3ql1k08n35h2kjj672rbvzd";
 "pgf-soroban-1.1"="1l6ifq09crmg68d174y2ms66jjhgklql";
 "pgf-soroban.doc-1.1"="ajlhmwd0fgmamsgnnzr3s15z6irx579s";
-"pgf-spectra-1.0"="b9vy6dvdvqlhsr58c5n5r6nhjqs9b8vx";
-"pgf-spectra.doc-1.0"="s50lidsjxrnpr46317dnji6va9qmiki3";
+"pgf-spectra-1.0"="w2w6z4fj2g5z77i72q7l5fzrz3hbrb0p";
+"pgf-spectra.doc-1.0"="d9v7k3fbf4hl2yz91q8n5sccn7bfq2v3";
 "pgf-umlcd-0.2.1.1"="h2syv4fn0svppahm66gpwb4jnrl7jdl8";
 "pgf-umlcd.doc-0.2.1.1"="yn8vn90qgh34r1i91cg7k5n81v47i6ni";
 "pgf-umlsd-0.7"="f6lyf7ph9a6ayc082h8bd1hrwjx1jw2y";
@@ -3129,9 +3272,9 @@
 "pgfopts.source-2.1a"="g9ya18k22lcd5f8aq3anl152d98h6b7z";
 "pgfornament-0.21"="v3jz47bv6awc3fq6fq81ybvmsigm8wmq";
 "pgfornament.doc-0.21"="amyhh0pq8p7x6f4ldyf2sgcqfs0qgm5a";
-"pgfplots-1.13"="i9pwdfcm73c58xsspszqv5qlri3avj54";
-"pgfplots.doc-1.13"="1l9cadkcp46777ay7s7ybf8ynk391q6q";
-"pgfplots.source-1.13"="f4p8xs7216r589pq2xil2bimm400xxih";
+"pgfplots-1.15"="jsinc1gbwvmkcavhwyy9lsfv60l75ahg";
+"pgfplots.doc-1.15"="ysv140i50dd6g6hz13d8rp6kqs8kb3wz";
+"pgfplots.source-1.15"="38vsghsgmhah17g5n7m1br8q3qzcx83h";
 "picinpar-1.2a"="wvxa8vjglc2v1k8dcszj32wx5jgmsm3w";
 "picinpar.doc-1.2a"="ix8d6091agdxivkq3pj0xv5afksr16xj";
 "pict2e-0.3b"="rmhf7g2w9a3qv2a4il24y0905swisx5p";
@@ -3139,20 +3282,20 @@
 "pict2e.source-0.3b"="rmx8qv2f1a170bcy1j2x1pjbq4r8js9l";
 "pictex-1.1"="3wr03wxjs0nbpncsyzzz2flz5h383a30";
 "pictex.doc-1.1"="d96f4qc758wqc5pifjspr2cfhkj3j44q";
-"pictex2-2016"="fmvr7pqdpq2lnigzzbshgwmrjf03kj6h";
+"pictex2-2017"="fmvr7pqdpq2lnigzzbshgwmrjf03kj6h";
 "pinlabel-1.2"="5bshz2446a2c3mgc79b1znaw07n54cck";
 "pinlabel.doc-1.2"="a23kw5gn0cwsg5fzldlq5a9rj03wg1la";
 "pmgraph-1.0"="hp6991d3dq131lsjr5675igjkgnp1hr6";
 "pmgraph.doc-1.0"="yi2b6kiybj2mivsjp7jw0zy895zj7731";
-"prerex-2016"="kzqmlwvyiz4gcqfl6jf7gafgxnbz7jf7";
-"prerex.doc-2016"="3drv28pc3vsfldz54gw76pa93diffz8g";
+"prerex-2017"="kzqmlwvyiz4gcqfl6jf7gafgxnbz7jf7";
+"prerex.doc-2017"="3drv28pc3vsfldz54gw76pa93diffz8g";
 "productbox-1.1"="7l9nqp2nxybrl35q1slpz9jhn70las0b";
 "productbox.doc-1.1"="j713za0sjbr7plb4xdis6zwvi7bg1n1q";
 "productbox.source-1.1"="aqhyalz52l2nz9v46bi0jn21vqw68w6g";
 "pxpgfmark-0.2"="sy9cs1y4gf9xr7jfiyp8zkr1r8di00hc";
 "pxpgfmark.doc-0.2"="25vgpjc0zr0wjny4snksr3yzk908s2mq";
-"qcircuit-2.5.2"="650hi6ixd639rm1jf6sm0djk4721njgj";
-"qcircuit.doc-2.5.2"="kglha33r0ab76wh76i3w5f8arqrki571";
+"qcircuit-2.5.3"="xyi15872rsfq72625wgdwwibg93mfsq7";
+"qcircuit.doc-2.5.3"="4ylgaz0kdh1vl5zaccrbnn2arbc03bpy";
 "qrcode-1.51"="x2mibdysf003dgl6i1zq3h68a1km3j2a";
 "qrcode.doc-1.51"="y97sa2ha89kmhfj5kq55qk57sf6yf3h8";
 "qrcode.source-1.51"="f4mxn89cz4f6wvnvxqfxdq411nnz4z44";
@@ -3171,41 +3314,56 @@
 "sa-tikz.doc-0.7a"="27fh1xd288pwk62lngyy91f97rl4ag7h";
 "schemabloc-1.5"="7pm30f9wazndg4cnxv31m616di90d0p4";
 "schemabloc.doc-1.5"="2020d2ivq6qccq1s7fk161pmarznn6ss";
+"scratch-0.32"="m3dp6cr9lw6i8mj04vc601vdp156qy2j";
+"scratch.doc-0.32"="c1f4hn2kab4gif9mjdf5vpspzqn3lqnj";
+"scsnowman-1.2"="vjnd95wnbk0rmz52mhrc8k7b6n1aafzp";
+"scsnowman.doc-1.2"="mb37dwgcnlx77na0gqkfnvswkf6frhlm";
 "setdeck-0.1"="jhxxygy339baxmfl252kjjyhw2zbhf8n";
 "setdeck.doc-0.1"="0h0bv2ywm46jj8g1r26scn8r3pc0a2k5";
 "signchart-1.01"="y2yc5dcfwbpicxf3w7kp6lxjgwxz4dsx";
 "signchart.doc-1.01"="r2zsa7zazg4l0z4x18hwzkisqaympv1f";
 "signchart.source-1.01"="81p9ykfplbsb51lnx3wb00zrsrmsd9qr";
-"smartdiagram-0.3"="s0yg41ckmjrch8akwy5n14hmv1x4x8z7";
-"smartdiagram.doc-0.3"="mqfb7n14whfmai3z2qw6ixjpd94snlk9";
-"smartdiagram.source-0.3"="lx2y6g34z0smm1ysn4pisdp8zhdmb81w";
+"smartdiagram-0.3b"="2ap0zqyxnbs2lkdgx70rrpm2b6d9gslr";
+"smartdiagram.doc-0.3b"="p0q92dnkzxz2i5zb8837353j4ainabxb";
+"smartdiagram.source-0.3b"="lqy3sqf14w7fxzrfim7mb1y7rmsbln1f";
 "spath3-1.1"="gcf13xh7ibd3pn63wz9ffzf9bary3ipx";
 "spath3.doc-1.1"="1dw393fzkzjh1yxxq7wb37wj60rfa3bi";
 "spath3.source-1.1"="ss89g9nx5f6lq8xcn1zy0g1hc7yp6dbw";
-"swimgraf-2016"="x77prbkrnadhj57fbh68hqsmrbk2qsis";
-"swimgraf.doc-2016"="hfrhqz5pj6g0mdyp1fbbfbnasph11pwi";
-"texdraw-2016"="iwrv8alhsxxawklhgxbnsncn6plr9mfx";
-"texdraw.doc-2016"="awprn6s3sq5ighgqgbh2gzcbai1iwxd3";
+"spectralsequences-1.1.1"="i3ia4kd5nw46x3zjbxqrzd9q28a8q94n";
+"spectralsequences.doc-1.1.1"="4iingbxa3ym8mbs3a8y72kl58jbjnr26";
+"swimgraf-2017"="x77prbkrnadhj57fbh68hqsmrbk2qsis";
+"swimgraf.doc-2017"="hfrhqz5pj6g0mdyp1fbbfbnasph11pwi";
+"table-fct-1.1"="b7wz94n1h3wpq9mi40zdl3v4m9hi1wxk";
+"table-fct.doc-1.1"="1k2sa9bsygbw1ib85x7yqda1jbzbg05f";
+"texdraw-2017"="iwrv8alhsxxawklhgxbnsncn6plr9mfx";
+"texdraw.doc-2017"="awprn6s3sq5ighgqgbh2gzcbai1iwxd3";
 "ticollege-1.0"="bznj0maq6a1b7m6p18dhq0fnssx06bwj";
 "ticollege.doc-1.0"="7n7nyn8zrp9za6l355797gq96vxp2d78";
-"tikz-3dplot-2016"="kl827mar9jlbjpwxl90z3fml8i3zabb9";
-"tikz-3dplot.doc-2016"="y736rbqkbjg7nnly25d0jl72z9gyx17w";
+"tikz-3dplot-2017"="kl827mar9jlbjpwxl90z3fml8i3zabb9";
+"tikz-3dplot.doc-2017"="y736rbqkbjg7nnly25d0jl72z9gyx17w";
 "tikz-bayesnet-0.1"="w9x9vf5hgmv18ljz0kx7rby1dig63539";
 "tikz-bayesnet.doc-0.1"="g7dkg4gg6729jbscb7cf3fsay2dfqv42";
 "tikz-cd-0.9e"="6mql3sca8l0r784yxgxllsl8asw065yl";
 "tikz-cd.doc-0.9e"="6phhv8sdlz57n7yd9qhnnd19hdz1sffw";
-"tikz-dependency-1.1"="nadfysgh4sbcw74lhsjh7mqzj29jn0nn";
-"tikz-dependency.doc-1.1"="lh3n27zf5ycmsg0ri0hqgnyi147k64np";
+"tikz-dependency-1.2"="yqnd9843awmwy61pd310krnfhyf3867k";
+"tikz-dependency.doc-1.2"="n3rk72ln03anvylh5pc5gyajkvgm6cff";
 "tikz-dimline-1.0"="q2wyvka6vafwaj58iawrrl3capkzvvfj";
 "tikz-dimline.doc-1.0"="gbfqnslkm9piq4jmhcivpyb9y2cjra2j";
 "tikz-feynman-1.1.0"="icrxa2hwmgnrah6x7br5sqsky8r47v38";
 "tikz-feynman.doc-1.1.0"="afnpl0m1fkwp7cip0ia10z0lgq2vnpwj";
 "tikz-inet-0.1"="mkhy91a9633a5hbqcckgppy43ri13wy0";
 "tikz-inet.doc-0.1"="c62lz4nmz4cw48rjmfl3vn913smpxzcb";
+"tikz-kalender-0.4a"="0adll5wk22lvcnl5wgb2x37640xiccj4";
+"tikz-kalender.doc-0.4a"="3njydw7hzl4k15kw9pnqvm0a12ksydpb";
 "tikz-opm-0.1.1"="5hgjh2kg1ynxp4vn8x47wfkcxz27ahra";
 "tikz-opm.doc-0.1.1"="4jqackkzg26vkvrkwflljvxx6ikx1jbf";
-"tikz-palattice-2.21"="7dxxnmwkz77sf7rzhjd1mllsmfx0lh6k";
-"tikz-palattice.doc-2.21"="whx9afnnwnmpv5j1m95xg74zvh015sig";
+"tikz-optics-0.2.3"="lc3znr18mmhw9v5d7wc8s5hs83bm20bv";
+"tikz-optics.doc-0.2.3"="9fhp84w25nsi4hxq2rys1y6vc03f4nlf";
+"tikz-page-1.0"="zv2wzvv8xzs4s5cf5vs8w9ffsz8sq4rf";
+"tikz-page.doc-1.0"="vgszrg09v23lc7yj3j0h9hwnyvdhsck0";
+"tikz-page.source-1.0"="2x6hmyi5739qskj8wf1k1636kbzns9b7";
+"tikz-palattice-2.3"="l8q247mbkx3qyywwb6sif0if3jv5ykjk";
+"tikz-palattice.doc-2.3"="j7y3y3r0mgm8limkgfljmn3i8dcnj0m3";
 "tikz-qtree-1.2"="vl2jq8b492p7dznrx63mi2zxcpax8a1l";
 "tikz-qtree.doc-1.2"="01bkpz1f0pm7plpkh6a2kx3c93iwcfwa";
 "tikz-timing-0.7d"="6706w7avmqfsl3xzgrc1zgyy9k1jpwh0";
@@ -3214,17 +3372,23 @@
 "svn-prov-3.1862"="d5py1m0kjdzdx371fpvi66l80p92xp4i";
 "svn-prov.doc-3.1862"="kz3zma1cmbi2kxvn560vzl71n0pj5bvj";
 "svn-prov.source-3.1862"="xz3g6ljh9fk8vfla8c3asbzraqymnca4";
+"tikzcodeblocks-0.11"="4cph54mcb5ql7zi1nhgw63y3h730vf61";
+"tikzcodeblocks.doc-0.11"="s2hfma88407szpr8xw7ckg1anf66w6p6";
+"tikzducks-0.4"="60p76nxh3c3w7g3kl0wnvx9yhylzyxwv";
+"tikzducks.doc-0.4"="1g6y89ipw5kdp4xn7rzn2fly1vqw37hv";
 "tikzinclude-1.0"="hh3h2srdlz39dv69wdwcrmjr1pps271a";
 "tikzinclude.doc-1.0"="qdzw00zvqp206krl9ph782lvrmvjphm9";
 "tikzinclude.source-1.0"="bznb6w85hk7nzsmnglz01qvi4mp64bqf";
-"tikzmark-1.2"="ffq4x7i6wgiady28p2bnishx88km4ai2";
-"tikzmark.doc-1.2"="x6qkvrmnw1f9q4w9x8zz0qynlsnm1002";
-"tikzmark.source-1.2"="654897q52sg509xsa0vf41r252vq6wba";
-"tikzorbital-2016"="0jand3q2rnj1l71kiqc5wx9br6iqa8h6";
-"tikzorbital.doc-2016"="8w7za38r9lqh6hjyrx51mhxljlwbr13d";
+"tikzmark-1.3"="zzc5vb7vh8p5q4l1p9hbfbvxiwyqxj3h";
+"tikzmark.doc-1.3"="q5z9wc07ldjcrvi2yq86rwl4nibg3s1b";
+"tikzmark.source-1.3"="gibic4bss01ih9dcwrn42cg782dn8d2z";
+"tikzorbital-2017"="0jand3q2rnj1l71kiqc5wx9br6iqa8h6";
+"tikzorbital.doc-2017"="8w7za38r9lqh6hjyrx51mhxljlwbr13d";
 "tikzpagenodes-1.1"="bbppcjhxjza1vhld9n9kjdm5jf03by5f";
 "tikzpagenodes.doc-1.1"="qds77qax9drbdmnw93lsg9lzkd7kjmnj";
 "tikzpagenodes.source-1.1"="bm54xhdx003f6j5j2csj6272d6pqxbmd";
+"tikzpeople-0.4"="9cjdrp8gw59kkklf92fmpq8wlflaavxg";
+"tikzpeople.doc-0.4"="fpwfczmdq8qad1c637rcxjzqy2r6gi7f";
 "tikzpfeile-1.0"="ay059ccg53rz4q39dy1cls80g1yi2mq2";
 "tikzpfeile.doc-1.0"="f97bldn28br9f6dfr88b81w8g683xvgq";
 "tikzpfeile.source-1.0"="hcsmvxfza3qg128nsj2n48v7fr12viqg";
@@ -3234,11 +3398,11 @@
 "tikzscale-0.2.6"="7cc4pbv23n95rb1b80p1y7w8m55z59yl";
 "tikzscale.doc-0.2.6"="qb6yk80pbipaq95cgasija63px2v836w";
 "tikzscale.source-0.2.6"="2spzfhaff1wn11brhjcx881jmql261ad";
-"tikzsymbols-4.0"="2gzkcmcbmdmpgmdvvpn7h9cwppx3dndq";
-"tikzsymbols.doc-4.0"="dn674hd2g523jpzd78dpiaabhrjxl44r";
-"tikzsymbols.source-4.0"="69a49p2bz2dy10ks8p2lvawc1kqgzxa0";
-"timing-diagrams-2016"="89d8m3lh174y7p3xx2iqdkxnq71s7fzq";
-"timing-diagrams.doc-2016"="r8xz0yb362glmkcaadipa5v8jsf3w5py";
+"tikzsymbols-4.07"="zzm3935wc6d8017skzq0hfg0z35xr2zr";
+"tikzsymbols.doc-4.07"="z349ksc6qqadim9shryp16sz6f9d4ivy";
+"tikzsymbols.source-4.07"="3alj38g159gb83iabl7vm7y1vdmgfrm1";
+"timing-diagrams-2017"="89d8m3lh174y7p3xx2iqdkxnq71s7fzq";
+"timing-diagrams.doc-2017"="r8xz0yb362glmkcaadipa5v8jsf3w5py";
 "tipfr-1.5"="dd5jgd6y7rzspj6shr5mbqcbbzyncv2b";
 "tipfr.doc-1.5"="w5mslbn2d53wzdkaynxigaw4344psp9j";
 "tkz-base-1.16"="q2wyxd4r38873irmj30lck29x2d504b6";
@@ -3261,23 +3425,23 @@
 "tkz-orm.doc-0.1.4"="20ccyjaxz59v4yvbrz18ql5dz05nqxj8";
 "tkz-tab-1.3c"="9nbbbpgvmr118ww6a70vdz7xzqzwdpg4";
 "tkz-tab.doc-1.3c"="fz6yxgwm70plmff6ga99x5y31mrn0wk8";
-"tqft-2.0"="jnhsjp496fxakyqr5za6a81q0g5x4i19";
-"tqft.doc-2.0"="9bb0qa1qwpsdy8wx3r5cjhq9ryy6wg6c";
-"tqft.source-2.0"="2bjz4a1qadajnh25srakwvq4qb24rk96";
+"tqft-2.1"="jg1k2p45j027wivwykric03v8vgfgaaw";
+"tqft.doc-2.1"="0qc7pjywc0dwxkw750xsqb67f6cpzka2";
+"tqft.source-2.1"="2kasg0q4bb70r80kaxm5hykahynk7vbf";
 "tsemlines-1.0"="qd021jr57lay3xa2hwms13x49y9f3q7v";
 "tufte-latex-3.5.2"="fagszla48gaakgcvvynmhcmk8c2qvbf8";
 "tufte-latex.doc-3.5.2"="nqqzq6qbgcq8w5ih3fns8wibvfdn5df0";
 "ifmtarg-1.2a"="wx2341bljdqhc4844w5b3bjh6clq0km6";
 "ifmtarg.doc-1.2a"="jhj0bgi9zb3j7cm5xp3cfkvq359yk2zx";
 "ifmtarg.source-1.2a"="kzgc2yrn0pkmi2712sg93y2dm8m447h0";
-"paralist-2.5"="xhbh9fnqwfljdls86cd3k68djdavz9pz";
-"paralist.doc-2.5"="lhngm541a50s9ya2zjn933mpvj5h3wdx";
-"paralist.source-2.5"="7p1dppzf7dwgq8c42b912dscw4xjazbx";
+"paralist-2.7"="9x62lrvmw3pkvlrkhrcpm2mk90s23a1p";
+"paralist.doc-2.7"="8jww1j8k4rf6jfnal0dlqv4abcjyz5n5";
+"paralist.source-2.7"="vs1jw2rijrnym49vd3w1nxswq52lvf9g";
 "placeins-2.2"="ac0ckzyrg9k2akv26dg4hck4q3w3z141";
 "placeins.doc-2.2"="ab3faqlwqspnnrvigdsljl9ykqyi2gfm";
-"sauerj-2016"="9x0hghvh5wh6jljwpyf61c6pc4rl9jaa";
-"sauerj.doc-2016"="zk8dghf07j3ijvnr3zxw2bajqx49nbaj";
-"sauerj.source-2016"="j1bdzs9ky0ycfh00sdynswv2vfvx7nmh";
+"sauerj-2017"="9x0hghvh5wh6jljwpyf61c6pc4rl9jaa";
+"sauerj.doc-2017"="zk8dghf07j3ijvnr3zxw2bajqx49nbaj";
+"sauerj.source-2017"="j1bdzs9ky0ycfh00sdynswv2vfvx7nmh";
 "xifthen-1.4.0"="4d6x7yb6hdr4xg2dn572gwpfnykppsph";
 "xifthen.doc-1.4.0"="364kifdxmk5ak2flyqcfzjgv0dbsykax";
 "venndiagram-1.1"="651nqgk2id3a7hxbb6j5rbcv75mhbsvg";
@@ -3289,15 +3453,15 @@
 "xpicture.source-1.2a"="a0bq9s39fb1askk6bb5yy69bmv3ii59l";
 "xypic-3.8.9"="rh7ahdwsnxzsk42imv3qqa0q2cb15ng1";
 "xypic.doc-3.8.9"="9vnm1j6g180slvahaq3mgdlsjnnllhnh";
-"colordoc-2016"="sb31vsh0mzzd16vrf3gpvs9c50zcjbgx";
-"colordoc.doc-2016"="2sw71l3579qkh4z3hqirvv0y3d79sssh";
-"colordoc.source-2016"="3p7baf59n87p34sxwdm9lf761dmh8w0b";
+"colordoc-2017"="sb31vsh0mzzd16vrf3gpvs9c50zcjbgx";
+"colordoc.doc-2017"="2sw71l3579qkh4z3hqirvv0y3d79sssh";
+"colordoc.source-2017"="3p7baf59n87p34sxwdm9lf761dmh8w0b";
 "colorinfo-0.3c"="x5wwpzhcm3ppfg6hh0dcr3rl7cjs23zn";
 "colorinfo.doc-0.3c"="ppz8wrqzph8cq5dggikgi0gphmg0y1hj";
 "coloring-0.2"="qdjj8va77wpin0pw6izv2lhjj0cm8zfd";
 "coloring.doc-0.2"="v7z4bnnpghfi39b8jmzpwq496swhwndh";
-"colorspace-1.1.0"="5rr2hv10ryc9qpmrhxsfnchyc97kxsmw";
-"colorspace.doc-1.1.0"="1rdj2121h8jf1vrzksyzddg1bfvq4g2j";
+"colorspace-1.2.0"="33j69sadgpsmz3ji7163p9rx9bpvyxk8";
+"colorspace.doc-1.2.0"="mf7rdcflp40zwvqr249wyv87q90y8fxa";
 "colortab-1.0"="4bqbx02c34g7271mg6y1gw1nyqmj6vwq";
 "colortab.doc-1.0"="qm51gjkcfq5gjimr5pp3svfj1xaqshbd";
 "colorwav-1.0"="ilrircjl70f9pv8g89d8dzjdsipjfbmj";
@@ -3318,12 +3482,12 @@
 "commado-r0.11a"="7jd82pb66a5hapcrqk19bvnszkgs649j";
 "commado.doc-r0.11a"="rg7zy4zsbmvan3vln93y2crrmc11c5dd";
 "commado.source-r0.11a"="2z09138429p7bxlq4392bd8psznnsyib";
-"comment-3.7"="5l7ahv2fc7lvrq0fsa8wsll97d8pzbay";
-"comment.doc-3.7"="mkr6c5fxj75bjni2z7123271zizf87ga";
+"comment-3.8"="dalw0d3w4mg1i8pg530ji0c5nmyrjvcb";
+"comment.doc-3.8"="hsk8kvj5arq1xznsmv8p6iglrj5f95kh";
 "concepts-0.0.5-r1"="n6f2szv53cszq0ybd93wcggz3jl0wf00";
 "concepts.doc-0.0.5-r1"="xww0baz5rff17j0c56d1d0j1mh2zfpqs";
-"concprog-2016"="fy8virjhfw7d1y1l0vg6fgzmxkc4f7gb";
-"concprog.doc-2016"="sm3fl60ymv5z649frky6xck3hd9rr8yb";
+"concprog-2017"="fy8virjhfw7d1y1l0vg6fgzmxkc4f7gb";
+"concprog.doc-2017"="sm3fl60ymv5z649frky6xck3hd9rr8yb";
 "constants-1.0"="p22vxmnw3a68jgrwxzvs90x1ads7vy08";
 "constants.doc-1.0"="0d8avlpp7ra6jin7rq92vrpa6c97q5g4";
 "constants.source-1.0"="44ajza7nr171n3nlbj0lqqq7bld53i1a";
@@ -3336,9 +3500,15 @@
 "contracard-1.0.1"="chyj1368kccmjb8c4z8yzmp6d61zvwyh";
 "contracard.doc-1.0.1"="b68rcwxrjq7azcsgp0x2f3ih4jnbs2w9";
 "contracard.source-1.0.1"="4p3mia4dpg4qswibf5485dh32vn9pr9l";
+"conv-xkv-2017"="irm1jvqddc4a7jfl1qraxkii8gmmmh63";
+"conv-xkv.doc-2017"="vs1dc6np4zd01fkq95a0kqwm72h9snli";
+"conv-xkv.source-2017"="8gj6sqrsbxknfpvrfalflkrnhncjhbfz";
 "cooking-0.9b"="sp0gxpgc190gn2wngw7nqzay88hykl4x";
 "cooking.doc-0.9b"="15mncbdsswn8q6914ijlhzlg5ch6schl";
 "cooking.source-0.9b"="n6pvjf2lx012s5y29qc5mjkiz8dinkjr";
+"cooking-units-1.10"="nl9w5zmg45vfssgf3gga25kbfmgkgdbf";
+"cooking-units.doc-1.10"="wkv0i54874wch2c84ix5cjr6bxh2a2yq";
+"cooking-units.source-1.10"="5k27wblnj2rcw6jrfcb1pfmzr838f24g";
 "cool-1.35"="djbl4kj33wlqqnj6sl31f57viw5sacvf";
 "cool.doc-1.35"="3l8iy5landcaybfhvb1inj773r55k7hw";
 "cool.source-1.35"="hfd759pc6m30sxnmchmv59nl8xr3hwrm";
@@ -3379,31 +3549,38 @@
 "cprotect.source-1.0e"="lzyx2nvma23d6ds8cl52zfxhsdjjshnc";
 "crbox-0.1"="y7zkz2wszr0iv7y3bhcgcaddsw3d54hp";
 "crbox.doc-0.1"="64zk4z35xzpxa2dmb4am67dnilqs8mqa";
-"crossreference-2016"="rghmvk4vfk0la5kygcm5wmnrrzxag6ff";
-"crossreference.doc-2016"="p589qj9h7vi563dgh5lp2l1gmpzfkyrm";
-"crossreference.source-2016"="pmqnkrcxkwjdsz7pfwmqpjgc2kykv9s6";
-"csquotes-5.1g"="k629ld2x8j7r6d67n6hcy42581xvgws5";
-"csquotes.doc-5.1g"="gkpdiqnrl930c7p14b0gx0x17pfmmcdg";
-"csvsimple-1.12"="wj7j3gmgvfmbdaqjjvnbzyk5ywafk47k";
-"csvsimple.doc-1.12"="ajy1nsy5icn88h2653zajxy2hpilc6a4";
+"crossreference-2017"="rghmvk4vfk0la5kygcm5wmnrrzxag6ff";
+"crossreference.doc-2017"="p589qj9h7vi563dgh5lp2l1gmpzfkyrm";
+"crossreference.source-2017"="pmqnkrcxkwjdsz7pfwmqpjgc2kykv9s6";
+"crossreftools-0.1"="5df8fv7lbqy1b1ai62irnkl140kszq6y";
+"crossreftools.doc-0.1"="id7awhann611jf1km4rz9micb4vf8q1z";
+"csquotes-5.2b"="1lf42h3g7pvyia09glwbqrfjlphz7ybq";
+"csquotes.doc-5.2b"="q6yhc0bvgnxf9q06w82svl2cw0v5qj6j";
+"css-colors-1.02"="5ybcj58dl55v53z40fvb3mgc8hl93z8x";
+"css-colors.doc-1.02"="kyz6mh1pkrjvz4za7x7sgmig7zrrxk8b";
+"csvsimple-1.20"="i6qsbbiqd7520p3nclaq59r99f0rwz6c";
+"csvsimple.doc-1.20"="lj0s0945ydzqqgqdzph3rbfv49kawwpj";
 "cuisine-0.7"="nj3ryfmy997y6llg5b3l1lp84jw3vg54";
 "cuisine.doc-0.7"="50wqmjcv6v117qxi0dkgyzs293y6jx1v";
 "cuisine.source-0.7"="n6zv4r2yz1fcgswbshvyfzji7jga7m3r";
+"currency-0.1"="0zjamg4hcz845l1zlf5iyggkqa50d678";
+"currency.doc-0.1"="h25dvr7yv0z7z7yap10l9q8v6mn6zrpd";
+"currency.source-0.1"="160vxy8c7xs7q1w5gi0q6b6i0al19v3f";
 "currfile-0.7c"="8zm55f76nvvsgyjj4fck1jzqxfgv389q";
 "currfile.doc-0.7c"="y1cdz8qj6n4327smxxbp5fzmn7apg2cp";
 "currfile.source-0.7c"="bfsbb72fld42c15qq3zddgr0agfigc14";
-"currvita-2016"="119xrbrr7d5i8xlvzf15azymj8znxy2r";
-"currvita.doc-2016"="fc8s69xdfiir0a8g7594l7y0m7b5qsiq";
-"currvita.source-2016"="2m1krjlgi5ihm32cfr3ayxmz324zpsxp";
+"currvita-2017"="119xrbrr7d5i8xlvzf15azymj8znxy2r";
+"currvita.doc-2017"="fc8s69xdfiir0a8g7594l7y0m7b5qsiq";
+"currvita.source-2017"="2m1krjlgi5ihm32cfr3ayxmz324zpsxp";
 "cutwin-0.1"="q1c752nzdf2jw9agyb3aj6ishnk3yy7c";
 "cutwin.doc-0.1"="pawz3k75s1nws5nd0ilhgvy3g5ndfwvp";
 "cutwin.source-0.1"="c9aw3vjaxldf082z61m61d7p7rsaynfb";
-"cv-2016"="xpyr31xcphpydv1iyqaalwxfqhs99cg6";
-"cv.doc-2016"="f3xak6320ql3rmbj3fvjsgcsq4mp1vql";
+"cv-2017"="xpyr31xcphpydv1iyqaalwxfqhs99cg6";
+"cv.doc-2017"="f3xak6320ql3rmbj3fvjsgcsq4mp1vql";
 "cv4tw-0.2"="zw6g6n1l4mcnjdbpfx36h1l7ix8gj6sv";
 "cv4tw.doc-0.2"="49ghjsydw5i13nwglc69xmm1z0ypxlyd";
-"cweb-latex-2016"="w87x1irky7jm1ixvs8m2ig97pk07m19m";
-"cweb-latex.doc-2016"="r4xzcb98w8khj070k9q23ygmq84pxqd5";
+"cweb-latex-2017"="w87x1irky7jm1ixvs8m2ig97pk07m19m";
+"cweb-latex.doc-2017"="r4xzcb98w8khj070k9q23ygmq84pxqd5";
 "cyber-2.1"="iqwcr7zqwva7spsayxm3rv5dgslfq8vm";
 "cyber.doc-2.1"="ns6hxmg7ckw0yc7ni8lz1sngddbanqh3";
 "cyber.source-2.1"="qpmn9vyb6czjr45zy3fi9xckr82rj1sy";
@@ -3418,12 +3595,11 @@
 "dashrule.source-1.3"="94ga7n7xpk7wm3j37gp8innc0c0irdz5";
 "dashundergaps-1.2"="23qw0dybqym299mk1ygxrdwybxgv25cx";
 "dashundergaps.doc-1.2"="siig4cw48w28mwsgrz46b8vdm3h7y47w";
-"dataref-0.5"="ardscqh2lgwa5233bp1x54rqc43727pn";
-"dataref.doc-0.5"="qnw2yp14xjmwilsfdlhjjb386rz5w0vq";
-"dataref.source-0.5"="l8mhka36lgfw14ka6zyhay9xx4i6j953";
-"datatool-2.25"="i2wkzvfzhii2bhzzbk3rs2040mp1w8hz";
-"datatool.doc-2.25"="8yszf04pyp38yink7wwb7pi7ici7srrb";
-"datatool.source-2.25"="15jp1qcrx3qy71z8yj5m12ij41kbnffg";
+"dataref-0.6"="s46my6g3mkk7d5g7fm90xxpn2d1h4gmv";
+"dataref.doc-0.6"="ap8c1b9ljp1zg3wpzfbp827kwqcjdp0j";
+"datatool-2.27"="f9dzqdv88li2f5y3wprcm9d60c80afgf";
+"datatool.doc-2.27"="yf25vvlj04h3j2n4s7x2922m14v0w88d";
+"datatool.source-2.27"="rl1a7anf3mxym8gyx9ilqfdmsy8kaibw";
 "dateiliste-0.6"="s50fmah2lasy1vfkgkybbaynspnh0wb6";
 "dateiliste.doc-0.6"="frs8z7x6yf2l78g94dxx0w5nxchx7kdx";
 "dateiliste.source-0.6"="idazlpxank1dw1mjym4vcdlq0970i5gy";
@@ -3433,9 +3609,9 @@
 "datetime-2.60"="59y83sl151h396xz62kp975q9vplg195";
 "datetime.doc-2.60"="dzj8ihkcdv1hcxxi5vrqbv8ga05mx6l1";
 "datetime.source-2.60"="b5x1cfqxg3rlbmdzc1g18i76rk7m1323";
-"datetime2-1.5.1"="z111r6rlfp81vzgymb9zd8wzksc0rps6";
-"datetime2.doc-1.5.1"="13cvzyhf2y68gfg8f7ajcvj85pnd4pj1";
-"datetime2.source-1.5.1"="nwrid0592gjrpm3f5x0a7v2gmbb0a5pc";
+"datetime2-1.5.2"="w23wvi6kindclbzf278m1ja399mgcpn8";
+"datetime2.doc-1.5.2"="95bymv9fa86bmc5jy0w4b6ddhaqnk1xw";
+"datetime2.source-1.5.2"="kjwgivgvg6l24q4b9vaagywby7236smw";
 "datetime2-bahasai-1.0"="57bvb4bqvpdmsysmyd0ijqjgf8yc7bkp";
 "datetime2-bahasai.doc-1.0"="v1aj9cfq3cd4s9yggcgpx60mxz4vrfss";
 "datetime2-bahasai.source-1.0"="a1wip71zywwd60fs0n6pxswpl4ngvyrk";
@@ -3478,15 +3654,15 @@
 "datetime2-finnish-1.1"="mamcyx4qzrfb4iq35ijpmb6j4iplgmid";
 "datetime2-finnish.doc-1.1"="bx6am316gbca5q28b7fb6cmvi9pc57rl";
 "datetime2-finnish.source-1.1"="rc3svamr8y6bqz0gilpybl1vr50jdvy8";
-"datetime2-french-1.0"="p4ygxwd3m1q3s26vv7vj3azmfdb2b84k";
-"datetime2-french.doc-1.0"="fmhla6dh7cj57i8slsyv05r9dxxmkapc";
-"datetime2-french.source-1.0"="8kb571xs39kvhcp0w4dnilvdrx981v68";
+"datetime2-french-1.02"="0n2l9y4431i1092wkk8h2fkmk2pj1lmx";
+"datetime2-french.doc-1.02"="gc0pp2rnx16vgc4qq359ch6i61a8mbsm";
+"datetime2-french.source-1.02"="97fxzb9swgq0nwisql0fngik9c203pkc";
 "datetime2-galician-1.0"="6gz4kbawl3wh2h4hlgldw46gj9pwk1yq";
 "datetime2-galician.doc-1.0"="974n3d11jz2lv6xkycbxxgf5zwydnia8";
 "datetime2-galician.source-1.0"="p3gc9hfjwrpgj9m0a531a4dq9w83ni5i";
-"datetime2-german-1.0"="hmvn8ggj4vh228vsk3d2k1vgzsdmxnfb";
-"datetime2-german.doc-1.0"="8cqvagixb6a493n2bghls21pskdhwb1m";
-"datetime2-german.source-1.0"="0bz7w3zs8fm1lqmbp0jqhiqd0nfcxvl1";
+"datetime2-german-2.0"="49mgp4mdzjgwra0800i9fwkqzyjijgqp";
+"datetime2-german.doc-2.0"="pnzfkn4ragg9cxdvcfp10bgxaaq2l5d1";
+"datetime2-german.source-2.0"="hb17hszkczg22qbkw6zqkb4qypdhq5vm";
 "datetime2-greek-1.0"="28sfvp2vg971a2vj0sd15l03wxba80js";
 "datetime2-greek.doc-1.0"="czifm6gl1y01a39lsmj5ldvr4xan5r7q";
 "datetime2-greek.source-1.0"="1c6cf7zay1k3x42ax0axvfgihz5qvah4";
@@ -3523,9 +3699,9 @@
 "datetime2-portuges-1.0"="lx6pd7j20xkkjjc64cfadxjgjy0lvb1z";
 "datetime2-portuges.doc-1.0"="s67zadsfprmn6yvyyzf233sflhnaj10h";
 "datetime2-portuges.source-1.0"="r6glrcz406kfgm00yy0y6sjw1jcw3bz2";
-"datetime2-romanian-1.0"="xq4rfscx66yyfifjsnfbcr4g0q664hyx";
-"datetime2-romanian.doc-1.0"="l6zza9x9fyz0mp53790091nzxnfqvacg";
-"datetime2-romanian.source-1.0"="0j8mrvq8xcwh3kzayvm6gj93gq5n88qn";
+"datetime2-romanian-1.01"="4cf2q7zs9wccx1cg2an0gfr3pgbfgvld";
+"datetime2-romanian.doc-1.01"="wzjqwrn0xrwhvz5yqdw1v9942h6f1s4b";
+"datetime2-romanian.source-1.01"="9apbkgyiy21r9lahbrffpnn3l1b6z7fg";
 "datetime2-russian-1.0"="dakjxs08ikkmwmw1qwyb8a8p811g1vwh";
 "datetime2-russian.doc-1.0"="dav2bsbdv9v5b59czrsv601njxysf51v";
 "datetime2-russian.source-1.0"="vmfldg1sdbk8yb3p4fikd58fglvyg24g";
@@ -3553,9 +3729,9 @@
 "datetime2-turkish-1.0"="lk7wm07qz96rfzi5g12hzcfwbdqnxmi7";
 "datetime2-turkish.doc-1.0"="86yp3mb4x7sl9im3cvxvfykfljc0cd8j";
 "datetime2-turkish.source-1.0"="4bzavnlmpy63vcfhjygjmhl4lf233m6x";
-"datetime2-ukrainian-1.0"="ilqpkm6x6270p8gbbiml1m1cl8q0vg8v";
-"datetime2-ukrainian.doc-1.0"="apycgr6nvdab8x0n1k1wfbj4am43aqz5";
-"datetime2-ukrainian.source-1.0"="xlzg1rxw2fkqb6y2c32b8ip9b3bpjzxr";
+"datetime2-ukrainian-1.2"="m4h61516qwlr61w87g0yd82zpwpngv6d";
+"datetime2-ukrainian.doc-1.2"="wkf35nvlc0bdmxl7hvh29lh8xdsfh5s5";
+"datetime2-ukrainian.source-1.2"="dv2jcr5cjnv8c81l5bpzgyllzsafhsr3";
 "datetime2-usorbian-1.0"="i5kdakk028r0jrim2pc65gjj38501dzs";
 "datetime2-usorbian.doc-1.0"="ab6bfr9w1ybl26abk2vac5baffgsx8ib";
 "datetime2-usorbian.source-1.0"="p3xf2vlz24av6j4zihdig8jkf9xf328v";
@@ -3564,44 +3740,44 @@
 "datetime2-welsh.source-1.0"="2a3pn8nifx6bc81zk45cg8p0vdnwhfw4";
 "dblfloatfix-1.0a"="d1796nn206cs1jsas8kc05p0bfcb80rm";
 "dblfloatfix.doc-1.0a"="2rgw8lakmgyv5abzbpcngs9g1lrfdps1";
-"decimal-2016"="a7xks9vjp0pa09i5dbwz78n28a8fg83d";
-"decimal.doc-2016"="ib5j82aqc5l2rkggx5s3i7h0vz81sw01";
-"decimal.source-2016"="znw0p5x4xyg8nbaa0840lw7i27bczkf8";
+"decimal-2017"="a7xks9vjp0pa09i5dbwz78n28a8fg83d";
+"decimal.doc-2017"="ib5j82aqc5l2rkggx5s3i7h0vz81sw01";
+"decimal.source-2017"="znw0p5x4xyg8nbaa0840lw7i27bczkf8";
 "decorule-0.6"="pia1d0196sj7qkdyzximhpf0bidqv7pg";
 "decorule.doc-0.6"="p42gqybrsy773lypbb1nrjcigycf1ilm";
 "decorule.source-0.6"="q90xhppxnggj3gqx9vaf5qvc4aknfbx1";
-"delimtxt-2016"="akp06kcf04g4dx2ph7bs5cg4byld136r";
-"delimtxt.doc-2016"="ddxva98pp4ar0bxdlpbh6v2rxlai5d1n";
-"delimtxt.source-2016"="j788dpwxgryml7ny68nzab9c3dy0322z";
-"denisbdoc-0.3"="94wj14j0m71jzy0g88vppwbdv0d3falz";
-"denisbdoc.doc-0.3"="fiin4jdccszb0w2c2jf76mdvzccv8w84";
-"denisbdoc.source-0.3"="6gjbr9l4v9wnx38237hbid8adp14zj1k";
-"diagbox-2.1"="pq5arykiwz69xmgwhxbsx3736r495drx";
-"diagbox.doc-2.1"="l4ymyvrmc68gci8ywdfckhiyj0fbz4n8";
-"diagbox.source-2.1"="c0fx8lxqlqyqs62b8crlyn4s36wsgy5x";
+"delimtxt-2017"="akp06kcf04g4dx2ph7bs5cg4byld136r";
+"delimtxt.doc-2017"="ddxva98pp4ar0bxdlpbh6v2rxlai5d1n";
+"delimtxt.source-2017"="j788dpwxgryml7ny68nzab9c3dy0322z";
+"denisbdoc-0.7"="fxcj67mah72g8w5xmrwb10vm1hxmciix";
+"denisbdoc.doc-0.7"="k4qq3apgqk0xgxgmrmqpl039hwzb478p";
+"denisbdoc.source-0.7"="45fl1pbbkiwk3b5cwl9ylcs1vxpdz8m5";
+"diagbox-2.2"="mcmg51aism26pvqhs198yngx4sq7hpcs";
+"diagbox.doc-2.2"="p1vln62lkw76jldxxcgr0wkraidcd3fr";
+"diagbox.source-2.2"="a6m49qkh7w30xgg342dd4vs7kpcf8kkx";
 "diagnose-0.2"="dbkvix4h3jhwq9pd2g9ydknc87z3zlr3";
 "diagnose.doc-0.2"="0b0ajzf5gvv3901szcwnkb7938sgqqr9";
-"dialogl-2016"="qn4qmw5yrhvim6fdl2gff1vl0ca4dfs2";
-"dialogl.doc-2016"="bh2vp79kq5adw6smmn0kbkhgk27qqq71";
-"dialogl.source-2016"="zqjq4a7kp63s0m7aq57ragybmigrf05z";
-"dichokey-2016"="0gjqadln2d38gclhy9ggf3i8vcnf2bfm";
-"dichokey.doc-2016"="af0pz0ixx95k8abfhximgla5jjly9ddf";
-"dinbrief-2016"="49584j24lg6vxazw8rqbhzcf0c7anbqy";
-"dinbrief.doc-2016"="i1dwsv81v87ll6wipvd7idsg8vym61k6";
-"dinbrief.source-2016"="b3hcmv6mjq48yhjl7g32yv9s1p3d0hkw";
+"dialogl-2017"="qn4qmw5yrhvim6fdl2gff1vl0ca4dfs2";
+"dialogl.doc-2017"="bh2vp79kq5adw6smmn0kbkhgk27qqq71";
+"dialogl.source-2017"="zqjq4a7kp63s0m7aq57ragybmigrf05z";
+"dichokey-2017"="0gjqadln2d38gclhy9ggf3i8vcnf2bfm";
+"dichokey.doc-2017"="af0pz0ixx95k8abfhximgla5jjly9ddf";
+"dinbrief-2017"="49584j24lg6vxazw8rqbhzcf0c7anbqy";
+"dinbrief.doc-2017"="i1dwsv81v87ll6wipvd7idsg8vym61k6";
+"dinbrief.source-2017"="b3hcmv6mjq48yhjl7g32yv9s1p3d0hkw";
 "directory-1.20"="7r6n8s393idf94madvzpfz70qvmy9n5z";
 "directory.doc-1.20"="shvbxhb02d3lw1sn3ayvx5xs6qayxjkh";
 "dirtytalk-1.0"="1a6r7pzqjy14f4f7vnlqgqdb6r0yfm1g";
 "dirtytalk.doc-1.0"="h383wrcj7pxb3mnqnssb48qx0zzw61gx";
 "dirtytalk.source-1.0"="dzvypzk6yrjli5zmr06xc2mqyajrvz1j";
-"dlfltxb-2016"="ms6423aqc91c34fmxw8l47d5kbk9yc6b";
-"dlfltxb.doc-2016"="kb0p5vzgr45gzbmwzc9mrk8hpg1z6x0h";
+"dlfltxb-2017"="ms6423aqc91c34fmxw8l47d5kbk9yc6b";
+"dlfltxb.doc-2017"="kb0p5vzgr45gzbmwzc9mrk8hpg1z6x0h";
 "dnaseq-0.01"="719cl1bfw7c1psv115pmrn7bijd0kxsr";
 "dnaseq.doc-0.01"="f8yw32bkw0chrk221qga668jpfnb3rk0";
 "dnaseq.source-0.01"="7aw7332aklsigpg8fazvv7ips2a236x6";
-"doclicense-1.5.0"="3bzndybh09g1zw38cx3mxbcqlr4xzrlf";
-"doclicense.doc-1.5.0"="3hnwlqwxnkg217pck8fvkx7ji2b1fbai";
-"doclicense.source-1.5.0"="xp8hlr1qn9rd2617rn4vlrkn3d2dkhla";
+"doclicense-1.6.0"="a2c3a42sv4zc9yzrivg43r77dpyxbl5a";
+"doclicense.doc-1.6.0"="hr8z494n3sk5a4agjpxrz5yz26hgab3s";
+"doclicense.source-1.6.0"="g8qddkxdv1i8x2ghd80mzc8qz9pfbyy4";
 "docmfp-1.2d"="5az4cgljj1gmc28z6kwy9g4h49gzkplf";
 "docmfp.doc-1.2d"="rn7s95z09ijvddynz2dda2lpqidzbbnw";
 "docmfp.source-1.2d"="c6swy2dkxzrprrl0zjbphcf15x6my5l2";
@@ -3614,8 +3790,8 @@
 "documentation-0.1"="kji3s9vf00jpl198nm49dxfxw8yh3xkh";
 "documentation.doc-0.1"="ir7a948d9yliinmb3y55vx8wa2zi4ada";
 "documentation.source-0.1"="gjlkrc2a087589g9lrk9sh8g4q0l03vq";
-"doi-2016"="g36rm3hngqxngcvb0yiavp760ln0z88j";
-"doi.doc-2016"="bvpm72vndaq1rywjrpa9xv6x3pryqk69";
+"doi-2017"="g36rm3hngqxngcvb0yiavp760ln0z88j";
+"doi.doc-2017"="bvpm72vndaq1rywjrpa9xv6x3pryqk69";
 "dotarrow-0.01a"="an0dsydrk9bfcahzi356nrfq9fw0i9fs";
 "dotarrow.doc-0.01a"="ay137znk96s545wq4sligy3q832m4g91";
 "dotarrow.source-0.01a"="g5krgdbp4bdfhk40s759qw2j6f7n6ss7";
@@ -3625,11 +3801,11 @@
 "download-1.1"="mrhh5hmhypwk95rzjgzp59wjx1alvqf3";
 "download.doc-1.1"="plal7xhskmrylmkpra45xmw0vf4sgd46";
 "download.source-1.1"="r5lrlmp4ccxlmzm1h7l57d17cmgdsmww";
-"dox-2.2"="sarscfdpmls7raj764wwm5vx9kwb488k";
-"dox.doc-2.2"="dk16ylj8h5kjd2smgk3hj0imgmpnnq3g";
-"dox.source-2.2"="7vk9qx9cc223kdkds5lib4zi0hy15bx5";
-"dpfloat-2016"="lad2kjr2qljjmnrygdlhgqbhpj8cxqb2";
-"dpfloat.doc-2016"="j3mxi39ar6vsyz51w7dj3nsnrrcsqjpy";
+"dox-2.3"="rskgr7w7m2i5dvx6i401drk0rr3dn4x3";
+"dox.doc-2.3"="52i43v7jdl0zv7i2634674fi9mandnyd";
+"dox.source-2.3"="iw70hs3n9m7pdk2lj1ib4y93wai4vfp7";
+"dpfloat-2017"="lad2kjr2qljjmnrygdlhgqbhpj8cxqb2";
+"dpfloat.doc-2017"="j3mxi39ar6vsyz51w7dj3nsnrrcsqjpy";
 "dprogress-0.1"="6bz0iy8fa34famjb67k3q1xhsca311k3";
 "dprogress.doc-0.1"="9x4n68z2vp63dvhc4g30yar4z70xkxbb";
 "dprogress.source-0.1"="g0d00q6x7wagml9hphd9b2ddg7zn887a";
@@ -3639,13 +3815,20 @@
 "draftcopy-2.16"="jpi5kv4l4r74ahxh9m4nw338hlx9qjxc";
 "draftcopy.doc-2.16"="x49fj5rzavabrdw8c8j05nnqxkdjlhpp";
 "draftcopy.source-2.16"="b6319hjnccfx3xxfrxz1kmx9813aik0a";
+"draftfigure-0.2"="w154bzgm94wzqs4shyi3vir6vzfd7324";
+"draftfigure.doc-0.2"="n3cvgb3mn0a0asrk5wng4f5pnr36k337";
 "draftwatermark-1.2"="r78p4n8jbzjvx8p7gx1fj7fp4h56x4xq";
 "draftwatermark.doc-1.2"="6mzqbw0grmivgby8vqiqf04i9dnvvimb";
 "draftwatermark.source-1.2"="6p47ci9wfjq7svn09df09p4jxwvyfzxa";
-"dtk-2.04"="r20ldgp64cd12i3zc7vzifhv8sq7nbpl";
-"dtk.doc-2.04"="qmgf0802ym26frnbk59i2l3fbrldhb9q";
+"dtk-2.07a"="ygp8d66wn5xna4hlb3r8x7ycp652xqmz";
+"dtk.doc-2.07a"="7f2zzwfwcb6x4a7yg79d12yf63k0n7ly";
+"dtxdescribe-0.10"="3hlr55zk9177am5aapn3x4a8g6bbwnma";
+"dtxdescribe.doc-0.10"="0zd70zz9n32r0aar3pq1rqwxs8k6cppp";
+"dtxdescribe.source-0.10"="mpkicmsgs6fvrhx832s15gxmd219wayp";
 "dtxgallery.doc-1"="fsbqzc353dbd3705kp716446mghsnn19";
 "dtxgallery.source-1"="74z8aaywbl3hhfk0lpw3mgw9sinxj01m";
+"ducksay-1.1"="0fncqd4i0kbm28iwkj5qh5l1bqg0321m";
+"ducksay.doc-1.1"="95nj3jxw0xa9svlfi2vhcaxdf9dggn5n";
 "dvdcoll-1.1a"="x9xdlwqrbq8wflwbwkabwyi9bg8rakqz";
 "dvdcoll.doc-1.1a"="m88326jypnn2i1bqgv458cyjdzdn320i";
 "dynamicnumber-0.1.3"="p6s0hyavqqz8hsfca8ymfqd63ajpbgam";
@@ -3653,15 +3836,17 @@
 "dynamicnumber.source-0.1.3"="1s5p8px5hk951cifga7as2cys5p9v9g8";
 "dynblocks-0.2b"="svrn2iyvz97vsdz7zf2npfjjmj1hiiwd";
 "dynblocks.doc-0.2b"="vbfwn0p5rpddhfbj5dzzg8y777i69s62";
-"ean13isbn-2016"="mc1jwh057knlvcn9rh4z55xf23cx3lnn";
-"ean13isbn.doc-2016"="bdnaafy3hkiz4prf7q3fkn00gsf1fw47";
+"ean13isbn-2017"="mc1jwh057knlvcn9rh4z55xf23cx3lnn";
+"ean13isbn.doc-2017"="bdnaafy3hkiz4prf7q3fkn00gsf1fw47";
 "easy-0.99"="jb9dranvwd0ngzigpq8kla53wnd99fiz";
 "easy.doc-0.99"="m4hx4j5snaiip3mzz1hnakcqjdmhmy4z";
-"easy-todo-2016"="303p58si7jhry6gzkiqjcdhkgdxdj8yn";
-"easy-todo.doc-2016"="19xs0lb6swakg1f9ci5gfmmfbddcirvp";
+"easy-todo-2017"="303p58si7jhry6gzkiqjcdhkgdxdj8yn";
+"easy-todo.doc-2017"="19xs0lb6swakg1f9ci5gfmmfbddcirvp";
 "easyfig-1.2"="nscfzvqz3kn48c6gh7a2pqhkvwvmcvq7";
 "easyfig.doc-1.2"="cavk4xr02m1bmwm6vpax122sv114vwar";
 "easyfig.source-1.2"="g0an0lfgsq03q1lqrmkj2y2cdrq37d1q";
+"easyformat-1.4.0"="x6ad1pxvbj09q2kypdg6z5js8q11a7k4";
+"easyformat.doc-1.4.0"="1g0wbnrc4snik4hbzldn9c015ry80n50";
 "easylist-1.3"="3mri8pvv7jc5lkqkmzh8h5a4x8agh702";
 "easylist.doc-1.3"="7ak9lbazspcv1k8yi2j3shf106v4spjx";
 "easyreview-1.0"="gc6ml3qw7j723r20jxc9lvrfm5ll2ljl";
@@ -3691,58 +3876,55 @@
 "egplot-1.02a"="wjw51hmdhl76wqrgj9ylhyb656rfqmg9";
 "egplot.doc-1.02a"="3ybfma3qjwnmd9djk0ckr22kvln7ksgi";
 "egplot.source-1.02a"="lpd8c8hpz0vpln7hq4ck2xm896hhkjz5";
-"elements-0.2"="pw1nw1xk38m4ss5b2h5ivrzkk7ismnay";
-"elements.doc-0.2"="w236k77ysl5p2pcfsb78cs126jxcxc12";
-"ellipsis-2016"="cnpqy3kavs6v3r35x6hp9cny47lp47vq";
-"ellipsis.doc-2016"="pl4c26az5319bjkqmp0byyjh6m2ghxnf";
-"ellipsis.source-2016"="s1vmh5xsvqrwhd0c4qqk4qw9pgmm62ms";
+"elements-0.2b"="7mapcz0ap3scq57qx3qhqzs326hi61gc";
+"elements.doc-0.2b"="2i2x6fi5k661ssn5mr6yvimdzzmp8yd8";
+"ellipsis-2017"="cnpqy3kavs6v3r35x6hp9cny47lp47vq";
+"ellipsis.doc-2017"="pl4c26az5319bjkqmp0byyjh6m2ghxnf";
+"ellipsis.source-2017"="s1vmh5xsvqrwhd0c4qqk4qw9pgmm62ms";
 "elmath-1.2"="pljnyyb5wp8n5f7g5wp2hb0f7aizxwyd";
 "elmath.doc-1.2"="9rrybpg3pziqa42bkhblp14jjz6zgm2v";
 "elmath.source-1.2"="fnw5k3ck3nbphv71xqlyq6yisgq04xjc";
-"elocalloc-0.02"="0gqrphs1lf308f8zjav7sq16wra0n0lm";
-"elocalloc.doc-0.02"="9ig5y0y22q918zb6agnzmjv8pg4nsr6f";
-"elocalloc.source-0.02"="0lrvflks8zdg6w35315dcq339y9cyrnz";
 "elpres-0.3"="31sslizp2zcw6lvjjcv2hgplfsa5754w";
 "elpres.doc-0.3"="xzdg5q7032sn14b31zva0fhvv1abrciw";
-"elzcards-1.20"="7lkq509yp7ibz55kwxfnkvgv1dqzxjna";
-"elzcards.doc-1.20"="nmgd7l3zn96nnci1fjq87hyaafgz9gi2";
-"elzcards.source-1.20"="22wk0f650vif0df4mgj5hif788f1q6hs";
+"elzcards-1.23"="p6nlzsxv09zr1g0pw4y4ldmlmvsi09wz";
+"elzcards.doc-1.23"="lmgv45bh0c4ka1a2yc4xkz08dxby4hfj";
+"elzcards.source-1.23"="y17rrin365qx9zrx5ja7k9bwws1ar92h";
 "emarks-1.0"="98dkcqyxwjzmy7r7piap7kmf3di5xjqg";
 "emarks.doc-1.0"="caipsh0fic83rak0dbdjfmgkvppj5ini";
 "emarks.source-1.0"="06wmqv5p4nhaqhcb0i8byf6s600bq7in";
 "embedall-1.0"="z335nw0mjz6g6gjn2xhifqa3ab9i20sc";
 "embedall.doc-1.0"="xbw4wwbl2ri0mmikx2vfqz557pq8ilr8";
 "embedall.source-1.0"="2xz175j1v7zvc3ndvgnwp5kvqpni6vs2";
-"embrac-0.6d"="fqf2gsgbklz1m6j5s307cmxh1p6vaczy";
-"embrac.doc-0.6d"="6q6pkj32qm9bs601n1qjgbdmyqxjh9rh";
+"embrac-0.7"="80kckrxa5bbw60nrx7c2smx26ldlb6l1";
+"embrac.doc-0.7"="d3kv5937wvw26jlz66wnf272iiidql0p";
 "emptypage-1.2"="lbjvj1gf2jiy15yj86d6jxlhrk66zmrm";
 "emptypage.doc-1.2"="07fnrxjidk9b42610wx6696cah8p1zdi";
 "emptypage.source-1.2"="svha86185zhrvab827x8nbn02vlp027l";
-"emulateapj-2016"="2ywrmmrvlkygp6a86i56rn9bm6wzqqki";
-"emulateapj.doc-2016"="ij4q6ixvmmh8xwq7kgb0hzvhz5pcsy68";
+"emulateapj-2017"="2ywrmmrvlkygp6a86i56rn9bm6wzqqki";
+"emulateapj.doc-2017"="ij4q6ixvmmh8xwq7kgb0hzvhz5pcsy68";
 "endfloat-2.5d"="87zgnqacq5g917650d693w51xr4hgynp";
 "endfloat.doc-2.5d"="6qc2qfjv040p3w7s97qybv8r9p1z1lif";
 "endfloat.source-2.5d"="b1643gmpfxdphf19gyv4jyx8pyh992nq";
-"endheads-1.5"="2apfqs44yphaiai8r7w2c0g1dg1lshrj";
-"endheads.doc-1.5"="czf5fxmpb02if7vhmqha1bf16dgqrn3a";
-"endheads.source-1.5"="sb33znhkg8y3rif9iak46ssc8p8hxgy8";
-"endnotes-2016"="mwf7b44kh21vis4mjglri12m2ji0fkyq";
-"endnotes.doc-2016"="ksik52m1c5n390015awpj4hszf621ih7";
+"endheads-1.6"="0gjn1xldvixl6lh9n2g9gyly9va84sp4";
+"endheads.doc-1.6"="y0phz9mfklcq56h6mwkx2jd535v94r72";
+"endheads.source-1.6"="x01kj0pd2b1ljs3457l1b7880vp8amdx";
+"endnotes-2017"="mwf7b44kh21vis4mjglri12m2ji0fkyq";
+"endnotes.doc-2017"="ksik52m1c5n390015awpj4hszf621ih7";
 "engpron-2"="d0k5j6bdrzm418x90n8858cyw85i439m";
 "engpron.doc-2"="4mhw0220r7x85dshmar87b3jydn2jxdd";
 "engpron.source-2"="3rdxi48m3h33kn1z81md9izji6my7sdk";
 "engrec-1.1"="8wc4zbqvp2lgs3qgvhks8fhy0gcafddy";
 "engrec.doc-1.1"="3rvil27vakyv0c56wykmhb499a3xfbjk";
 "engrec.source-1.1"="3rj7ij1f8rvyb80iaxx0fw8br06w8kgp";
-"enotez-0.8b"="0jzsqm3x2q3xg65m51xjp921kybfyijh";
-"enotez.doc-0.8b"="vclw4nnqf1bhl674rc3fn5kz02raka55";
+"enotez-0.9a"="saxj59f54nz8jpg1bcacx3izk6ijbbfy";
+"enotez.doc-0.9a"="f16i6ia9mvylja841x3s2z3nhwpvriaj";
 "enumitem-3.5.2"="0rjr25bj1ymnpq332cvmmmscrwgjc0cr";
 "enumitem.doc-3.5.2"="a4f9yp8sgbxgxvsg6mz3p71pshjm76h2";
 "enumitem-zref-1.8"="hj60650qiwzxhdk9f9pix1wgvphgqxj4";
 "enumitem-zref.doc-1.8"="nq73212kl36wimf8k4m37xzb5pr6qqdh";
 "enumitem-zref.source-1.8"="3l875sm2v3c2frxhr17rv80q36n19a9h";
-"envbig-2016"="9jl4id16g9bmsqwwdbcdp2925m5c381k";
-"envbig.doc-2016"="5302z09wsidh1fvnfs5d7zf3fzd9z967";
+"envbig-2017"="9jl4id16g9bmsqwwdbcdp2925m5c381k";
+"envbig.doc-2017"="5302z09wsidh1fvnfs5d7zf3fzd9z967";
 "environ-0.3"="abj66v6h73l8sj7rll1v0czlx99j5z8k";
 "environ.doc-0.3"="rq5cywlfalfd6c2585ihs8mabnadp2n0";
 "environ.source-0.3"="r3bq7ppaqwidvilrf1hyniqfk1fdh4d8";
@@ -3752,47 +3934,52 @@
 "epigraph-1.5c"="6fjixgh32n7mlygm6dz3xdiv4bzd1p70";
 "epigraph.doc-1.5c"="mmk8d73w2mkhya560hvdz56nvw8l5vz2";
 "epigraph.source-1.5c"="6zj62nlmzvi5pagymipk9611glql8pnx";
-"epiolmec-2016"="hpmg6yy63c52078mqmp861418xi07rgk";
-"epiolmec.doc-2016"="vl11cbnw0avwvjf8ad01fziya1dzrbh8";
-"epiolmec.source-2016"="1b7as37h0ncqjvsypwc9wdzzjhs0sfhs";
-"eqell-2016"="24n6gsirzxiyv3avcm27hll6nwrybkk5";
-"eqell.doc-2016"="xwz1qv3l0345p2al1p02dc5k3f77k48h";
+"epiolmec-2017"="hpmg6yy63c52078mqmp861418xi07rgk";
+"epiolmec.doc-2017"="vl11cbnw0avwvjf8ad01fziya1dzrbh8";
+"epiolmec.source-2017"="1b7as37h0ncqjvsypwc9wdzzjhs0sfhs";
+"eqell-2017"="24n6gsirzxiyv3avcm27hll6nwrybkk5";
+"eqell.doc-2017"="xwz1qv3l0345p2al1p02dc5k3f77k48h";
 "eqlist-2.1"="jajr72vgjddrwagibq1nmhf9lqqsk66n";
 "eqlist.doc-2.1"="ln486bm8phd0pmdfa75rjy6p1bwqzgmd";
 "eqlist.source-2.1"="r07gp9r0wb57knv1gy35kwkvksz9bxd2";
-"eqname-2016"="mjcyi6q46c5jd44m8m9wzx12lhqir4a2";
-"eqparbox-4.0"="ivnbcavqly35lry4z1ci2zh0dpp1hj6w";
-"eqparbox.doc-4.0"="65vzjs8liyh2r72p69jc2gkq7nbfj8b0";
-"eqparbox.source-4.0"="ra0zw9fgszsbgm2j5cv462acjh51lrlr";
+"eqnalign-1.0a"="lcg6zvxcnzmljvqfv6lh1majiywkwnyq";
+"eqnalign.doc-1.0a"="h21nzl5g0hqh3513gbipm4fr79i6pljk";
+"eqnalign.source-1.0a"="m8i3vxkn3ciab2p86shkzzzx2ckp9d7v";
+"eqname-2017"="mjcyi6q46c5jd44m8m9wzx12lhqir4a2";
+"eqparbox-4.1"="c3v8vdwcjfhn85751995viymlfgwpwr1";
+"eqparbox.doc-4.1"="9mn192afkzc3pzxp5xxsm7kxpaa3yis1";
+"eqparbox.source-4.1"="s206q1m2wkjsvjz23xlsx1yy603jjisa";
 "errata-0.3"="kgx1zy8j3g12czpg8hhnjq6dwa3m8xqn";
 "errata.doc-0.3"="518rdbnh3w5jsk4vlfp93cnag3kaiwmy";
 "errata.source-0.3"="p27pa3b4plzwhxl8vpr7qigbnr8aqv11";
-"esami-2.0"="jfz4612avdmb7mfmsbi905g36mrj1vhn";
-"esami.doc-2.0"="g2xi15fasvxjz68r11nf2cdl2gii4y0c";
+"esami-2.3"="1n4hfcyppr4ll6abcd58mp2jf7sxxffk";
+"esami.doc-2.3"="v3zq82r6lpbqz87j3g47xkpf6dx95qvd";
 "esdiff-1.2"="q26sgf5s4ans9qv984p9s04pginqby9z";
 "esdiff.doc-1.2"="67vh3nycsw9h9vv7k25agixsmrdg0068";
 "esdiff.source-1.2"="xy6y4za3k53myl7dxbjxm21rcskb1mqz";
 "esint-1.1"="gl1f53zj32cqf3vy7rrhj1l5g5lb0vvq";
 "esint.doc-1.1"="rnlcq3gjvqz0728pydxz3q5cpbgch5fy";
 "esint.source-1.1"="sw4zxm0z19980pq7f9fxkf0b0v7yp9nf";
-"esint-type1-2016"="0fwcq5cpsqzajzlp2rc9ffmcwg5fb5ja";
-"esint-type1.doc-2016"="vmamlk0v1w4ffks6cp9f0gg09rkr37vf";
+"esint-type1-2017"="0fwcq5cpsqzajzlp2rc9ffmcwg5fb5ja";
+"esint-type1.doc-2017"="vmamlk0v1w4ffks6cp9f0gg09rkr37vf";
 "etaremune-1.2"="1x3604jqbswjza4ryv49l2cs63iqcv3r";
 "etaremune.doc-1.2"="6k8qah3w1ksn77is2i8kh1nilr6qgm34";
 "etaremune.source-1.2"="5a4n5d9l39nb0v3affwx0sswnp6sv2yf";
 "etextools-3.1415926"="w78v5hb43si3j8p38simfzscyh6lglsm";
 "etextools.doc-3.1415926"="16fq8y3c226wsf57dkny9484440i61zv";
 "etextools.source-3.1415926"="ch6lsyh0nlzkdrwzsxgf87srsb40x56k";
-"etoc-1.08g-doc"="wbk0i76lzwi6pq0hrmnzdn226rx7x97w";
-"etoc.doc-1.08g-doc"="114mbdv68dblfgxaib5slbdpjmfkvs26";
-"etoc.source-1.08g-doc"="4jhb84fa6fqw7dpw0msj1vhxyn11dcw5";
+"etoc-1.08k"="hrizhy1f1qwgvjqzyz5if3jhpylghsqn";
+"etoc.doc-1.08k"="dfrkivvgn1qlall6ifyjccp9hlad64ln";
+"etoc.source-1.08k"="gyvw34ykcyxv4g0n5ka3mgk94n0mnlmr";
 "eukdate-1.04"="5lql99zq8izsri87dhqf28nnchrjkyhq";
 "eukdate.doc-1.04"="f3xl3nllsr8299rjnxnhpksv7rz8pdq0";
 "eukdate.source-1.04"="scjqaadvah0kf1rxj9r2nphvffk86cis";
-"europasscv-2016"="kr9aqmcnhwj0qly1xk71m3w5xgpwl5ly";
-"europasscv.doc-2016"="lvbagzd50mzsphpx6c15b60b0y6r01kn";
-"europecv-2016"="ak691rchlkdwj2zabcwawcb4lzn4fl69";
-"europecv.doc-2016"="l57k7bwvp5f27mcjvgl5s8yp4cjn4drg";
+"eulerpx-0.2.1"="1kvqcqfjh77lg1d1jzwj6mr2rchjpnyb";
+"eulerpx.doc-0.2.1"="8jybcgzjn8c3qyagdmaxmmy0fx89sj93";
+"europasscv-2017"="3vd0zhpnxd4q5kc6h9hdsl3valj3zd52";
+"europasscv.doc-2017"="gzbv96qaww0195n7xk2g0ivwyyqmi8z2";
+"europecv-2017"="ak691rchlkdwj2zabcwawcb4lzn4fl69";
+"europecv.doc-2017"="l57k7bwvp5f27mcjvgl5s8yp4cjn4drg";
 "everyhook-1.2"="ndig4g0nsbqla2i2p1n6skjjxsr3qjhv";
 "everyhook.doc-1.2"="690qpw68wri4cr4ahv1xfqibm3flc5mr";
 "everyhook.source-1.2"="rvh60i8j1gbyal0pjpdgld9l5g20zilf";
@@ -3801,13 +3988,13 @@
 "everypage.source-1.1"="v920b95jn03slad6q3w3fr97ricjvd3f";
 "exam-2.5"="1wd664jv1minz25hlnanbvz4xxxncbbm";
 "exam.doc-2.5"="gc9s8jdanrfrn03ac18n24zwrr9nc6b4";
-"exam-n-1.1"="1xx1p09wlf97pilglzmjxkzfl07mdrl7";
-"exam-n.doc-1.1"="pp9rszrsg6b31p9fbyrwrfsvd2hw7k4b";
-"exam-n.source-1.1"="0wsaw5y334hrl4rhmn7lkwnjq84xxiq9";
+"exam-n-1.1.4"="nhyripks5spkljgi7js9mva03lgam717";
+"exam-n.doc-1.1.4"="s5zg21xsdrxmyr4v4fj9gjp5gkcm27wj";
+"exam-n.source-1.1.4"="yfj6g9n8q1i7x9037cmvghzyhm4i28rl";
 "examdesign-1.101"="58mxkjnnwz8z68lvxdc43gn14v6i9ysx";
 "examdesign.doc-1.101"="vr8j3mhp28h6d9zvcg6akfx9sx756zh0";
 "examdesign.source-1.101"="51c9vyfhwcp9vmhsrsvzd47q93ckw2f1";
-"example-2016"="rpbgsy66fj5nxcf2j2kg6mmkb46hq4ir";
+"example-2017"="rpbgsy66fj5nxcf2j2kg6mmkb46hq4ir";
 "examplep-0.04"="jnd218glfcwkbz8qprkac3nykm86lhsx";
 "examplep.doc-0.04"="lgm123fsn5wpdgbfx3kqm9h5q92qss83";
 "exceltex-0.5.1"="2zx6110fa87f5f3fabp4a163ybxd8mpv";
@@ -3829,8 +4016,8 @@
 "export-1.8"="c2cd44yhfphk0wnyaq0db2y5rfjmcvfv";
 "export.doc-1.8"="ijjjprbcnjwwj5hf13b61165mx8xdqn5";
 "export.source-1.8"="0wz3raz7mf5cqz0j0g977b7ghznxgxxs";
-"exsheets-0.21b"="k55k9sfb5vwp5cqlarycixch64b2bwqh";
-"exsheets.doc-0.21b"="54x1fvwqhis6nndkz5mgy78yls4hvf1d";
+"exsheets-0.21i"="msii7pvzxyz9ja3yk2jagiyha66v2idg";
+"exsheets.doc-0.21i"="nd45sx9nz98h2xr3ki1h4v5cnrqbh5s1";
 "exsol-1.2"="cj4l4d5p8mbr97yqd58mf2c6ki72qgad";
 "exsol.doc-1.2"="qx2gpla4idab9jkjzg45q16pviy6na6k";
 "exsol.source-1.2"="sp93yxr1favjifgzh0q02d7p8xhv73lq";
@@ -3840,9 +4027,9 @@
 "facsimile-1.0"="mhx5jbh4rwv10z6hd3b2w5haj02bjz0y";
 "facsimile.doc-1.0"="pb8sj68gxph376h1ph6yb65ncyblxbdw";
 "facsimile.source-1.0"="dvjli6r3pr4w74n9mnm2ix30jva6yysc";
-"factura-2.72"="g8xdm1mms88b5n3mpbcdnndcbs2d98cr";
-"factura.doc-2.72"="l8b9g71snayz4bxqpvqqggsfn0k1y299";
-"factura.source-2.72"="ci90im48a3w15020gfi591z261wdg5f7";
+"factura-3.02"="xg5lhnwbxwdd7fw1g3qswcvrdjsgn5nw";
+"factura.doc-3.02"="ji2bm35g0z5nkrzw6zrn6hp25qka085p";
+"factura.source-3.02"="k11wnng92gzvlpvyih38cdip0ysfrd8g";
 "fancylabel-1.0"="0fli827i51c1hwda0m8wms728x7dfv0f";
 "fancylabel.doc-1.0"="6mzwbsyl0vh65yv140j8sxnqa1g1iq66";
 "fancylabel.source-1.0"="97mizj1kpg1plydnwvc76h33idx0knzf";
@@ -3854,20 +4041,26 @@
 "fancypar.source-1.1"="nbdd6vssivv5lkpjwdyc5pqw6d64hzg9";
 "fancyslides-1.0"="1rm0ay1lphh034nxw2ww5w4jkyz0a8vg";
 "fancyslides.doc-1.0"="h8cl20k630ccmwjxvnkns9yqzv2gx6i6";
-"fancytabs-1.8"="rqc1m37k5zb49j3fm4z6vxn920hc4ic6";
-"fancytabs.doc-1.8"="51gxw2kppckclncsg9ci0alwiw1drmxa";
-"fancytabs.source-1.8"="apk6s2sdnhd01l9cy8d1v1fb6sgk5akk";
+"fancytabs-1.9"="198b3fl0x7n2mghw2f667pxr4dzsyq0h";
+"fancytabs.doc-1.9"="m0fyacjfsm4rc2shbar55bwi6nrf5f12";
+"fancytabs.source-1.9"="4a3il9l6rj6wkxd489q9vxdjihk9c79s";
 "fancytooltips-1.8"="92mbrk8gn6np54fx90qzcgkps3v6k54y";
 "fancytooltips.doc-1.8"="v90g2vxn8yqy9lvibqhldwm23cpvv53j";
 "fancytooltips.source-1.8"="cgj7harpp7wxh1fvh1wfx3pc0c34nhd5";
 "fcolumn-1.1.1"="3as7qnpb697lii964wfb6zq06g4cp3ai";
 "fcolumn.doc-1.1.1"="4grdm663fznflgh8c0kydq4h6bq2sy96";
 "fcolumn.source-1.1.1"="srfg8sq0spa6rwika7aq7ylqpl6yc8kx";
-"ffslides-2016"="v88vqphgndyc8bznnkpc17pcgc4f429f";
-"ffslides.doc-2016"="1378bj25gqxr8mhdwf99rw2q61kbakqd";
-"fibeamer-1.1.5"="bjx20x8wn01gyqfzha5lh0gz5sn3xbnc";
-"fibeamer.doc-1.1.5"="bg9ljpvx4a5qpfiln5pn820bshccz5qs";
-"fibeamer.source-1.1.5"="4f0a8q5fj0qs3n69zckmbijrx1ka600m";
+"fetchcls-1.0"="hjmchh00z9pl5bhdxdb491f4grb4hvri";
+"fetchcls.doc-1.0"="2p0k1bx3y1b9b8lw2j25ybcaz1gwyyfa";
+"fetchcls.source-1.0"="xzc8psnl98xfsj7hy37f1qgln8hx25pn";
+"ffslides-2017"="v88vqphgndyc8bznnkpc17pcgc4f429f";
+"ffslides.doc-2017"="1378bj25gqxr8mhdwf99rw2q61kbakqd";
+"fgruler-1.0"="z5k7w4nncv381nbznr8c7bwq0a9k9l5m";
+"fgruler.doc-1.0"="rm6g865195d2lm97v9pbaim7jrgsnjyz";
+"fgruler.source-1.0"="67chz0f0pjn70xrxzmw7jvzgskjl9vlv";
+"fibeamer-1.1.7"="39kjk30dpdvclh0zy23x12jiycik3xgn";
+"fibeamer.doc-1.1.7"="qcvd0xn9h1j3dgjdk4kdyh6iy0q0kvl9";
+"fibeamer.source-1.1.7"="kzw9lj7jxl4kp2qqk8lcvbjhsdl3qnrf";
 "fifo-stack-1.0"="dfyb5qmw70jy72ass9iy0k89criyybwh";
 "fifo-stack.doc-1.0"="a5qh0b6zcxnfplc2xf0dy4384rvb8ggf";
 "fifo-stack.source-1.0"="67n2h94p29l1j6dar7s1q8gz1cxg1zxh";
@@ -3876,12 +4069,12 @@
 "filecontents-1.3"="pzgagggdjhjas2g1ycgxz02dc0j4qmiw";
 "filecontents.doc-1.3"="s8f46qfl2ldsx4pwyvxhy19znypx6d2m";
 "filecontents.source-1.3"="ikva5nvcs6q3qi97rwq22ssac4km6z2a";
-"filedate-2016"="krqs9ry6gpmk5xi9a2ijkrd90y7v6q5h";
-"filedate.doc-2016"="dq7487rvj7vai1j80j9sgi7hsldg433m";
-"filedate.source-2016"="qq7zspqhd6zl4w5lyy9gxw927ph31sp4";
-"filehook-0.5d"="95km0y68ldra3ha3c3j83zlchg7d6xn6";
-"filehook.doc-0.5d"="xvrasdz1m52dsjzn3wv5hy1pdwka3msk";
-"filehook.source-0.5d"="il5yprd7hw76wmbb6xmqz9njhkqjqkz6";
+"filecontentsdef-1.2"="6cmzpvqjr5dcbd865aj4333n3ha5p2qy";
+"filecontentsdef.doc-1.2"="qqlpd7b3fyvj35rnikqilvxbn199wzlv";
+"filecontentsdef.source-1.2"="h94zcfjld2z8vblaw0ka1wisj5kx72wg";
+"filedate-2017"="krqs9ry6gpmk5xi9a2ijkrd90y7v6q5h";
+"filedate.doc-2017"="dq7487rvj7vai1j80j9sgi7hsldg433m";
+"filedate.source-2017"="qq7zspqhd6zl4w5lyy9gxw927ph31sp4";
 "fileinfo-0.81a"="gbv2pynx74765fc966q0l4wpflxyi0cz";
 "fileinfo.doc-0.81a"="5y2xniw8nwg8iw11g49w04xl9fp4zyv3";
 "fileinfo.source-0.81a"="lgcw481ya8a6ag2gzd0g589sm3ndsqys";
@@ -3893,22 +4086,22 @@
 "finstrut-0.5"="adqypjvkvnkydw403q2wab9xzpvavhzz";
 "finstrut.doc-0.5"="lcyklm3jkz5nq6j956dv55n0nfyaprkx";
 "finstrut.source-0.5"="54slgzkfps6q4z7x49a5jqpc1j3p98hw";
-"fithesis-0.3.40"="05paf4m6zascqz0rl2m8k58fcrw8a3sq";
-"fithesis.doc-0.3.40"="dhckxqchfbq26kapnx43rl59kllb1cz4";
-"fithesis.source-0.3.40"="d3c6qp2lafrfk87gi1al88gwp02fknpq";
+"fithesis-0.3.48"="hyqply4p95wliidnqi8zsjw01k53rrfc";
+"fithesis.doc-0.3.48"="z63mf067b8261i9x8g8h7zd7wadqapkm";
+"fithesis.source-0.3.48"="ix5hn6m2wngalalrr1k6qgplc30mrr61";
 "fixcmex-1.0"="wbmzc4wl601mg09pam4bnykh1dcnnlkr";
 "fixcmex.doc-1.0"="0fy46qvzvp2zlwjbpm6pmwhydssw29kz";
 "fixcmex.source-1.0"="06g7vgpdih9iks8q11v1ag68nib40d40";
 "fixfoot-0.3a"="ci2h09kyh2k0w0d8mbmcw57i4cqirz2i";
 "fixfoot.doc-0.3a"="5510blbn341f70ic646ad9jay6sfiilq";
-"fixme-4.2"="3k9cmnqankby3yhm8naizsbyflr8x7bw";
-"fixme.doc-4.2"="3p6vawfx6q709wppm7sfw8vf2kbjmcic";
-"fixme.source-4.2"="25a78ycm5jiqr223pr0zp15shwhb9jcp";
+"fixme-4.4"="j60hw7cgyk6777s1j70gidbs24rnzwfa";
+"fixme.doc-4.4"="dn3zcsjng4hnx627x3c49589zzawndkx";
+"fixme.source-4.4"="d6csn850lb0vbwcvll3cryks1hzmr3n3";
 "fixmetodonotes-0.2.2"="8bzda1486sb6l1miw9fwc4gag8l86pld";
 "fixmetodonotes.doc-0.2.2"="kwvshr4l5r8zgjia62ac04bpc7cy5n8w";
 "fixmetodonotes.source-0.2.2"="c3v82mnqbxnz0b2yy1g5l9yfxh1y41vd";
-"fjodor-2016"="c6ya1a7zfddfil9y5f30af7d0jm8ikij";
-"fjodor.doc-2016"="ba4cxg0czxij6lwkl9w1kzmrcli6s3jm";
+"fjodor-2017"="c6ya1a7zfddfil9y5f30af7d0jm8ikij";
+"fjodor.doc-2017"="ba4cxg0czxij6lwkl9w1kzmrcli6s3jm";
 "flabels-1.0"="pphsynfbbj4vxl9g3rklfj0igp6pzliy";
 "flabels.doc-1.0"="hpsnqln41r0ybmv2vjycd0zrxi6mwrcx";
 "flabels.source-1.0"="2x4jjggfjxvqby3yv13k0y1cgcrd0jcq";
@@ -3936,12 +4129,12 @@
 "flowfram-1.17"="lr7jldig88wv8gsvp8aphxsvc6sv4cax";
 "flowfram.doc-1.17"="3f550irxijq1vdvyxs6fyhpj5w1lw4jq";
 "flowfram.source-1.17"="66z844imyrl7bsi22vrff1f05dqlmr8p";
-"fmp-2016"="3m6zqb7jl5rn5zgy0dbys5r8y1sp20x5";
-"fmp.doc-2016"="3hvfiw6yizjkxnx5h7xlzfig11diglpm";
-"fmp.source-2016"="44cqcijnqc5235rjqsmkj4vhmrs9j7hq";
-"fmtcount-3.01"="wwzhnrff6bafab926bak2kmjdw24gch1";
-"fmtcount.doc-3.01"="3s327yavhhvlymfgn8pklb29i189g9p5";
-"fmtcount.source-3.01"="10hm159mz13kv0qyn09pmhjrwf6w0giv";
+"fmp-2017"="3m6zqb7jl5rn5zgy0dbys5r8y1sp20x5";
+"fmp.doc-2017"="3hvfiw6yizjkxnx5h7xlzfig11diglpm";
+"fmp.source-2017"="44cqcijnqc5235rjqsmkj4vhmrs9j7hq";
+"fmtcount-3.04"="4lvcyjykq614vk64spx9wnbn7d1pibib";
+"fmtcount.doc-3.04"="mw5dmmzgwn6fpwpx5kczswvkvv61cbkr";
+"fmtcount.source-3.04"="byavxhi7bdfg0f76k0j8cgsz5m5bymsq";
 "fn2end-1.1"="qw34b3ki30fqs4dj4fkj6f46aygw0ylw";
 "fn2end.doc-1.1"="anwhkba91c48wl5p1ch35iplw974sdiq";
 "fnbreak-1.30"="aiwqr078mw2127lbphc0lhmh90m5ddgg";
@@ -3951,8 +4144,8 @@
 "fncychap.doc-1.34"="rncjjlyrjy916hn3ka9yaydjq6pdvn09";
 "fncylab-1.0"="i7qfcb82d8b71j6qjn0szpxchw0xa0yc";
 "fncylab.doc-1.0"="95kh740jadwxy6xszs7ia6v99rc6aj94";
-"fnpara-2016"="bwgyxjk2k7p76mw5ahsf2b0nm464rvi6";
-"fnpara.doc-2016"="h92c0g634x7n1qcdv6vqp5pnw9ykba0y";
+"fnpara-2017"="bwgyxjk2k7p76mw5ahsf2b0nm464rvi6";
+"fnpara.doc-2017"="h92c0g634x7n1qcdv6vqp5pnw9ykba0y";
 "fnpct-0.4e"="lci9d0d1amlpxgfbbf6h2fv5kxck0cdj";
 "fnpct.doc-0.4e"="hknasw4n1gfz7vm6bb4yvzippj4g8dw3";
 "fnumprint-1.1a"="vhhc4n3xvlkb2a31kjpkxbwrwc30r62y";
@@ -3964,23 +4157,26 @@
 "fontaxes-1.0d"="aaqzfxbcd9fdggw8lmj6syc1ff00m43p";
 "fontaxes.doc-1.0d"="q1qsz0gigyg3x462k337crqng7njvakk";
 "fontaxes.source-1.0d"="6xacssljffql809gpbhl8qdrs944v6cs";
-"fonttable-1.6b"="acvcfsrj0p47b2l3yh133ysszfxqiifc";
-"fonttable.doc-1.6b"="18zb08a2j10qb0aa7iibw6d5hgv9db7a";
-"fonttable.source-1.6b"="jdxj267fxbp4zxisy13aaslsbnjy6vg5";
+"fonttable-1.6c"="bljjiigal2igv0y004hwa9i1yc9i4b3d";
+"fonttable.doc-1.6c"="jssz79rldva4rmrziamjqi1krl4yijan";
+"fonttable.source-1.6c"="h3g6s458yvqsrlf0h7d8046ngi10698y";
 "footmisc-5.5b"="ha2palj23dq2c3j4fb1j5s6cjjzisilv";
 "footmisc.doc-5.5b"="22bx6glng885275x22z99lwwhwd3g5xq";
 "footmisc.source-5.5b"="ii8ra20y2k8fzklf2cld2z6hjv8i1fha";
+"footmisx-20161201"="5pcwf6k39ybd84nnhzpc4py1sn3bsch4";
+"footmisx.doc-20161201"="0qniys4b74hs2d420k0xafys1578l2wj";
+"footmisx.source-20161201"="m3510nfdmbc96v66r54ikzkfcfffrxfg";
 "footnotebackref-1.0"="8c8gdjzn36nfxjmpn521548334gbn86h";
 "footnotebackref.doc-1.0"="fzjm17j06la934js2q0sn92l5d8g5z1i";
-"footnotehyper-0.9e"="nmyaarw2v5859sgv231maygild3n9jdr";
-"footnotehyper.doc-0.9e"="8migqr2id4sn2khfxlzb258gfi1jcvgq";
-"footnotehyper.source-0.9e"="misy2fgafsfp2yazb50kixlkmg3ycbya";
+"footnotehyper-1.0"="8kkl6vvmibngqlw5xy1yki93f90mnmzc";
+"footnotehyper.doc-1.0"="wmy9hb67vazkj40kvjjbdda23i27v6x4";
+"footnotehyper.source-1.0"="f0kjvcyphqb6799vannpbxj0gq6m7zv2";
 "footnoterange-1.0a"="akznm9pld182b9c2nyqwsjc1d8p88qk1";
 "footnoterange.doc-1.0a"="sywjz9s41xpsmmclmy1jrgv08491s5sl";
 "footnoterange.source-1.0a"="hcyjz5xm3vs6d2bdcbm5ns3wj9n5nzdg";
-"footnpag-2016"="ym18m0gmmk7800dd1c4vrar53q66hm7g";
-"footnpag.doc-2016"="8kar3xxxjlrsjascd28122y5rckyv5lf";
-"footnpag.source-2016"="51nmvyy96mjbr46ar058jb7jhpsqz17q";
+"footnpag-2017"="ym18m0gmmk7800dd1c4vrar53q66hm7g";
+"footnpag.doc-2017"="8kar3xxxjlrsjascd28122y5rckyv5lf";
+"footnpag.source-2017"="51nmvyy96mjbr46ar058jb7jhpsqz17q";
 "forarray-1.01"="682slfwbrz58fhqj0c07lv1xwab861ks";
 "forarray.doc-1.01"="i7v5q2pjc3sjmcv3mcpdi3sffm4qs4kb";
 "forarray.source-1.01"="q23rvw19x2rk8nv6yhgg76jxfs30qfys";
@@ -3992,18 +4188,21 @@
 "forloop.source-3.0"="9rq5r8x9wv473bw97hyh21ihqzxd1w18";
 "formlett-2.3"="ccr4iqh9ii22b0xkdl0j2rhp6q6cisd6";
 "formlett.doc-2.3"="cwpzl5rhracg51x0lvqxxkbz4id1plml";
+"forms16be-1.2"="fl2lvzfwg6k8y6p5g351hnc6yx3l3x2r";
+"forms16be.doc-1.2"="p6dhrh7fjr9whcjcnkhbr7b2a59bh69a";
+"forms16be.source-1.2"="64w9r9hgmdwk0mmm80p5b2d0mggvixl0";
 "formular-1.0a"="1ccyslvhjbzqyqyk4m3zh761kw2v45xk";
 "formular.doc-1.0a"="lap9j51p3dsh02ym644576gnzm3a845i";
 "formular.source-1.0a"="v80wnhg3xsl24a6bbsj4xfn82cv7ajd8";
-"fragments-2016"="jjblkk9dj72nvr2gday7p509pnlpwy16";
-"fragments.doc-2016"="z8rmyhlpsv68qbnr6h3sy08gcy6shiac";
+"fragments-2017"="jjblkk9dj72nvr2gday7p509pnlpwy16";
+"fragments.doc-2017"="z8rmyhlpsv68qbnr6h3sy08gcy6shiac";
 "frame-1.0"="9bdydjkb9dsdvryibfq2p1q071zhhpxb";
 "frame.doc-1.0"="fnv3ssnby17l7zmbgkc1rf4b5hysw7a1";
 "framed-0.96"="n9an7cs91wwfnkalc4j9ccd0p0dg485w";
 "framed.doc-0.96"="bwmgdv9r6rffibrm0wabw95vqdkiryfh";
-"frankenstein-2016"="ldv1sc8j6nxhd9cd95jf934pyz6s8lxs";
-"frankenstein.doc-2016"="j03cxxv0hw0c1j4afrfprgc2ia6nc5c9";
-"frankenstein.source-2016"="zc3nzdkbjrfgv241wj4xxlq6042xv9nb";
+"frankenstein-2017"="ldv1sc8j6nxhd9cd95jf934pyz6s8lxs";
+"frankenstein.doc-2017"="j03cxxv0hw0c1j4afrfprgc2ia6nc5c9";
+"frankenstein.source-2017"="zc3nzdkbjrfgv241wj4xxlq6042xv9nb";
 "frege-1.3"="vczq96wx0icl69c5xqcqmfsy2wdw1ncn";
 "frege.doc-1.3"="h07nnplqxq2fyh6f0wh03jpism89ji0d";
 "ftcap-1.4"="7srhgl4z3zpicxv7aakm970xy2yxnpns";
@@ -4022,19 +4221,22 @@
 "fundus-calligra-1.2"="5jn0qbj8zgi1c0166c2vdwzs1a5i8qm1";
 "fundus-calligra.doc-1.2"="dd87040kysj4av2sq7grslyjv0gx4rmd";
 "fundus-calligra.source-1.2"="s4s97ga289ncgv0rpd90b8i7qh4n7jfj";
-"fundus-cyr-2016"="fjyzn069q34z3ypaj0qwjq3f5zjm7y8k";
+"fundus-cyr-2017"="fjyzn069q34z3ypaj0qwjq3f5zjm7y8k";
 "fundus-sueterlin-1.2"="4xlq7i6k1pqmq8vc6aq8h50gs1f02l3d";
 "fundus-sueterlin.doc-1.2"="i8q42q2rzmby64v4il8jkpk7azfcrrip";
 "fundus-sueterlin.source-1.2"="rl5n5rh9akf41ls7m2gi5l9hqq6wv8j5";
-"fwlw-2016"="887p12xhlcgydw4pddr0npyvp4xr1azf";
-"fwlw.doc-2016"="2di5y3hhm865frn42j1sh87hflxlpc1n";
+"fvextra-1.3.1"="apbi2ar2ajfmjr1mfxygj4ai5v5inia3";
+"fvextra.doc-1.3.1"="xg4krzxkc2w6lysdimaj78n1b0jximsq";
+"fvextra.source-1.3.1"="g96f98xfk115phmd2ik4ygvz982va0n0";
+"fwlw-2017"="887p12xhlcgydw4pddr0npyvp4xr1azf";
+"fwlw.doc-2017"="2di5y3hhm865frn42j1sh87hflxlpc1n";
 "g-brief-4.0.2"="gqak9cc04cklmsg6xlar9l0s81027wgm";
 "g-brief.doc-4.0.2"="bdkjz2wyh4wpgs0wlp9knfbj48fnj9g4";
 "g-brief.source-4.0.2"="7kl0a76ylpcn4dixxd5ch603h4m9y7c2";
-"gauss-2016"="rm0hzy2h1msxkfp2lxm2k881y4iaw773";
-"gauss.doc-2016"="1d71g6781ar41gk3rjjy48bbkdkxx4id";
-"gcard-2016"="vrmrds4xh35bqjq4qaqj8rrvfd7fdykm";
-"gcard.doc-2016"="lxpbgqbbcldhlpwjkj531yh2bm3l2n3v";
+"gauss-2017"="rm0hzy2h1msxkfp2lxm2k881y4iaw773";
+"gauss.doc-2017"="1d71g6781ar41gk3rjjy48bbkdkxx4id";
+"gcard-2017"="vrmrds4xh35bqjq4qaqj8rrvfd7fdykm";
+"gcard.doc-2017"="lxpbgqbbcldhlpwjkj531yh2bm3l2n3v";
 "gcite-1.0.1"="z7ha969s3ry7g9ibv521f2d6vr9lcxx7";
 "gcite.doc-1.0.1"="3bb2z8jbygadc7qzmjz024dqzphncy4f";
 "gcite.source-1.0.1"="v3fbj2j823jh4gy1vrc4f74qsdbfqnpa";
@@ -4044,8 +4246,6 @@
 "genmpage-0.3.1"="r91a3wqjc9w7l3dh98j429ja8ymvbb34";
 "genmpage.doc-0.3.1"="midc310i26fannfywf0cl7kp014y9ax4";
 "genmpage.source-0.3.1"="riqs209lh1jip1dypvdhzq05i7n1kh7h";
-"getargs-1.01"="z3a918vmyg4vgcv67jxajbgf7p0fr32a";
-"getargs.doc-1.01"="iz0b92ask54p31fqi53m89rmd4j64c54";
 "getfiledate-1.2"="jxr6fwmy8lc03cqchndg1dps8vjjfqz8";
 "getfiledate.doc-1.2"="k0r2fr1q7cq0x7lrbk38ik8bqdngsq71";
 "getitems-1.0"="8qdph1kdihdkqyd8rkn4n2i3wd5kfq0g";
@@ -4054,6 +4254,9 @@
 "ginpenc-1.0"="gy74qjz23cw3lbmb0nc205qfp1a0ggib";
 "ginpenc.doc-1.0"="9iln48gnlcshrhkk3mbpgqk06sj4bl39";
 "ginpenc.source-1.0"="dkkxzw412c81hrhwnmjw1jgvhz5rrjhk";
+"gitfile-info-0.3"="dhkr443nnylzz5pmb4zwbygg1rznv9vd";
+"gitfile-info.doc-0.3"="a912kp1s2icfr4fhzczdl729jniza5dj";
+"gitfile-info.source-0.3"="q2knkm9xl1i1b8v9cdhdiivviny4vjdn";
 "gitinfo-1.0"="a7mcfsqzwi88fsrdbqkwh8p3rd7w51ri";
 "gitinfo.doc-1.0"="5dh5bifav6w87hq29ph7ls65yxjhk7c3";
 "gitinfo2-2.0.7"="dsxgwrlg9j367wxxisxm2wv595xny8x0";
@@ -4062,9 +4265,9 @@
 "gitlog.doc-0.0.beta"="29ysf5jz8cvwanmhad4ka66jcwxn9a1i";
 "gloss-1.5.2"="xacfn3b2z30pnj9lwh6mximrbsfvarfs";
 "gloss.doc-1.5.2"="4qial5a0p7ip784xgpqgkl6cmabd9hlq";
-"glossaries-4.25"="gsq3ldpks0b3cnxwm4qzlda11srwjx1b";
-"glossaries.doc-4.25"="780by5hd6x3m6w4hjsmzhz911b9b8alj";
-"glossaries.source-4.25"="jxqzwydh2q0pkf2a8bmfi3d22j10sgb8";
+"glossaries-4.33"="7iqvkfvliq7p7y71184g1xn16yirv8m5";
+"glossaries.doc-4.33"="9hwa0l9x2naizr9vkii6pxyw3av8lb32";
+"glossaries.source-4.33"="2lya1m8yfyi9i0lar9kaylyvz34pximy";
 "glossaries-danish-1.0"="hmaay0viwacnrz7bfz6xlpb03cmsphcc";
 "glossaries-danish.doc-1.0"="mxgh9b6vc63llhmfildmhkhjxd1s9kbq";
 "glossaries-danish.source-1.0"="s5ayfh10z40cpi9amn2d1wwpnby0qgaw";
@@ -4074,12 +4277,12 @@
 "glossaries-english-1.0"="ydbz6ls58gnxf3wmay4157516ggzsc1f";
 "glossaries-english.doc-1.0"="53w4fzz52hh9jyik6384limy6633l8aa";
 "glossaries-english.source-1.0"="dpc58cbb3snzsjxkz0c82yksx6c60h6h";
-"glossaries-extra-1.06"="pv682rkwqr1wr6fz3r780jy9lwsfkfc7";
-"glossaries-extra.doc-1.06"="dy1a1v8kvv9iwwxwmmvnah4dz1z3fsil";
-"glossaries-extra.source-1.06"="0pbmkwxy3l109nl1wrdx0ryzjz3j17if";
-"glossaries-french-1.0"="zpv1yipxkckkda94bqd3sakhmfdxwgrn";
-"glossaries-french.doc-1.0"="zkqcgjr5kv8spw3cm4cg4y3pvcggk0sk";
-"glossaries-french.source-1.0"="sj6879n829bqjqmdasr09fj7wld7i8kf";
+"glossaries-extra-1.20"="k64kafr2qx21knrc1419p0np9p0wd17h";
+"glossaries-extra.doc-1.20"="w5jrsbhl8ccx5x78ga6ql2xrz4ffrn84";
+"glossaries-extra.source-1.20"="bgp0w68a1xh11ld4n6g6gakmzp2vzpvc";
+"glossaries-french-1.1"="zkndbp5cq242l196fc6s35yib6ay4mnf";
+"glossaries-french.doc-1.1"="0bj95z10psabgwi3gg65jbmjfjr5jn36";
+"glossaries-french.source-1.1"="87wiw0b01wpqikz8r7wfrkmq8lylviq6";
 "glossaries-german-1.0"="dhfan1gzz50rlg7q2y9x5lg1dgl2cacr";
 "glossaries-german.doc-1.0"="8kajajbjllgcz3h1q6nhs0jh25pv9xdm";
 "glossaries-german.source-1.0"="254c5j11d1xigfcfn5s89bv2i6si8cfr";
@@ -4124,6 +4327,9 @@
 "graphicxbox-1.0"="6grrmcmr2wlpx8dbj1k1nggs2b6z7qh4";
 "graphicxbox.doc-1.0"="2blrwzsralqjrvlx6xjvyaqvsi764nmx";
 "graphicxbox.source-1.0"="1vl41sp02d8byjrapj58v5pg6i2g989l";
+"grayhints-2017"="xsxznm4jw3shsb5xh39q3hqarbrrj9nm";
+"grayhints.doc-2017"="6bjldw8aiddlv1swvvvck43r1lz8f7ga";
+"grayhints.source-2017"="cc126l1zsjsq7vackhd9z4999pcdj2wp";
 "grfpaste-0.2"="wi95wbrs7k37di2dkqnix5h21p84cb1c";
 "grfpaste.doc-0.2"="7hn9vs80ksnpaa0aqdmbv7qzhrdxwr88";
 "grid-1.0"="hf1jfkwc5j27mhxi2skf3wjwq2y1ca0w";
@@ -4137,10 +4343,15 @@
 "guitlogo-0.9.2"="7lfy6i5pq8cg24n5rh2aizbrv5s2815i";
 "guitlogo.doc-0.9.2"="lrfcbc5mfy6qfji2c36zqkrva983c42v";
 "guitlogo.source-0.9.2"="q5bdflg33yc271228jknv297i0fzq227";
-"handout-1.2.1a"="57fb4wlfw04ix1w84zd6i6svajpymc7m";
-"handout.doc-1.2.1a"="7xjf0xn7lx87r59i7rws8lj4q5dpwl30";
-"hang-2.0"="hrs62z3zxnj3m8mfxhvcbada52sqqmkg";
-"hang.doc-2.0"="hj3kp7ska6yzf3rs5b5ad1gkyljj7pq0";
+"hackthefootline-2017"="rj8zjach75a6zj91h5ycwyrfc6yicck3";
+"hackthefootline.doc-2017"="gy4wzaq5rbgwl2iilaly87i39xhnpdh8";
+"halloweenmath-0.10a"="mr8nvi7ynzngvgxp0i74wjkxwp77i7p0";
+"halloweenmath.doc-0.10a"="xamcznycdz08kgvbph8pi64h2v9j9j25";
+"halloweenmath.source-0.10a"="hr249rdkmmkm1v7z4cf7ymdwrshz0by3";
+"handout-1.6.0"="jz5qp5n1dij11nyrgmb3x4rl41mnggyl";
+"handout.doc-1.6.0"="xsc8qd00v663bgbpfp4kwjd1ndc47q8y";
+"hang-2.1"="ncymr7c9lsbbxm6z2q3210k185bkkxq0";
+"hang.doc-2.1"="rqlq0rkbqj3vcfpm93m46w40b7llalvg";
 "hanging-1.2b"="48vqvdis9l05842lr3wp64x14qacr9ag";
 "hanging.doc-1.2b"="sicdi70h8j7nnw4p7bj4j3wj2bxzrwhx";
 "hanging.source-1.2b"="hhzby1cywgn7vdcn0b50lhpq0lkxpf53";
@@ -4151,9 +4362,9 @@
 "harnon-cv.doc-1.0"="a7012x0ckxnym7cpbj8m12ak993bz7nc";
 "harpoon-1.0"="88cndn21h4fshiq6yvd8p68gwl2d2nd9";
 "harpoon.doc-1.0"="z21q49fw0a7wwwr6chwdd73ypkwqz1x3";
-"hc-2016"="vibhz5h2dnzdkwrxgadrwy8crfaa505s";
-"hc.doc-2016"="mhva92gfr4jn40d4sdnh0331iy19a4vi";
-"hc.source-2016"="dfmq6gax4mfq8z074sm76b6k7385d2nc";
+"hc-2017"="vibhz5h2dnzdkwrxgadrwy8crfaa505s";
+"hc.doc-2017"="mhva92gfr4jn40d4sdnh0331iy19a4vi";
+"hc.source-2017"="dfmq6gax4mfq8z074sm76b6k7385d2nc";
 "he-she-1.3"="6rnp8qmascvlz9p0hgacblpx8svapf65";
 "he-she.doc-1.3"="xl7nf17g73pn4jc3z6nc6fknr11lsf3l";
 "hhtensor-0.61"="vnl54f4l78n4x9pllg95fr5dm79qs0jg";
@@ -4181,10 +4392,10 @@
 "hyper.source-4.2d"="v03bmxbg7hqjpl8vfp0l8z81mi2db2hz";
 "hypernat-1.0b"="25v0a423yhy68vf125ys0n6p0qhvr088";
 "hypernat.doc-1.0b"="0n4qzpmvhks66d0g9gnyizpl44jbh4pf";
-"hyperref-docsrc.doc-2016"="5gjpppdrqh8qb1srq609q3kskl9rqfps";
-"hyperxmp-2.9"="7m2axynp5m3rpi5m1p0kfdmssciabj0r";
-"hyperxmp.doc-2.9"="z1im7lylg2nrqcdhh7wc5s68bvd2b0db";
-"hyperxmp.source-2.9"="0cfl2jf1s75mlcip3hbnyva12z5adkl3";
+"hyperref-docsrc.doc-2017"="5gjpppdrqh8qb1srq609q3kskl9rqfps";
+"hyperxmp-3.3"="8c3ad7hga2dm8qjmqw63kmfb666gbkgi";
+"hyperxmp.doc-3.3"="3nyn2xf60j4gf18ynqmmkbiwrhir3abn";
+"hyperxmp.source-3.3"="y391x0mjslfq1jlh3pk0dmpbi69z5j94";
 "hyphenat-2.3c"="wr2lhsafb13b0zira7190bx5s68fak45";
 "hyphenat.doc-2.3c"="z1sj3r1ny1lgixr2fcmsglz55b23f5lm";
 "hyphenat.source-2.3c"="x70g8xiz9ss4pw775lz82yncq0x7lxf1";
@@ -4204,9 +4415,9 @@
 "ifoddpage-1.1"="6f52apknfsjpswzikk3nfi9by5iip7gy";
 "ifoddpage.doc-1.1"="7l75021f0gk7nrpiq2axr88pbnzjq50g";
 "ifoddpage.source-1.1"="njqd27ax6313q2w063xbmw3mnfiajx98";
-"ifplatform-0.4"="pkmxrr0vhz1843jscvhcwyasfkhyji34";
-"ifplatform.doc-0.4"="k22674ffphm97b161cqz6rlp092dyil7";
-"ifplatform.source-0.4"="mm8dakbck01jyl9s3qif8iby2l4bn4bv";
+"ifplatform-0.4a"="sfnfrx7iqg6kikiqd44yx8004l2mqkza";
+"ifplatform.doc-0.4a"="sab580hpgp0nw6gq5li9vvv3x5gxp50b";
+"ifplatform.source-0.4a"="nkwc32c56f1s585rr18r54ib1xa9hn4z";
 "ifthenx-0.1a"="2ah86wn9m3zc1f7hf1yzwyv26xbay35s";
 "ifthenx.doc-0.1a"="2zrlnl6s8fbs3ndyfi21bdqsfx7n6fc6";
 "iitem-1.0"="k0gdz2py6spiqrj4djhwbys9vkar3p88";
@@ -4214,9 +4425,9 @@
 "iitem.source-1.0"="8xp0919wakx5r9xd21mbm4qwvd0l66fv";
 "image-gallery-1.0j"="3skl1kln38c9g31pa8sbx370kw4jp23r";
 "image-gallery.doc-1.0j"="gq0ngnivnwh35m29qimn54l0gigv79fx";
-"imakeidx-1.3c"="4aq0zkakmwla14z2lhslvlh1ybg5pxiq";
-"imakeidx.doc-1.3c"="bmg31gagysvnak2yr4d874i47vybxn6a";
-"imakeidx.source-1.3c"="1gdmb4ylyhndp98h1qac5lc85yn3d632";
+"imakeidx-1.3e"="vgspaw7w4kjbm38vzdga08j12aaqf3ad";
+"imakeidx.doc-1.3e"="p39pl4z0xkr2029czqq9nkaxz3dwdypx";
+"imakeidx.source-1.3e"="cn51y6d129cc0kzw3yx3ybziwmxy9mbs";
 "import-5.1"="7i3h4z647jmm3scb0nringfljzk9vv6z";
 "import.doc-5.1"="0sl784aip6r53fdas8xyqhjz5vcs6xpd";
 "incgraph-1.12"="n14gyn5g1am9dyfqvxyxrqsfxdkg39xv";
@@ -4230,16 +4441,19 @@
 "inputtrc-0.3"="vmk80jzg9sllpw28csmhsyjd13amp567";
 "inputtrc.doc-0.3"="dl0qs37bjj4aam7ijfdg64fpl135k7b4";
 "inputtrc.source-0.3"="1nx2jv4m63gc83iy3qp46gxr3v6wyw6h";
-"interactiveworkbook-2016"="4a6mi66i2z1sjzxjddvwajpvxl6i2c6m";
-"interactiveworkbook.doc-2016"="ldph57php6irhdbj9w497xk31n5ggxbz";
+"interactiveworkbook-2017"="4a6mi66i2z1sjzxjddvwajpvxl6i2c6m";
+"interactiveworkbook.doc-2017"="ldph57php6irhdbj9w497xk31n5ggxbz";
 "interfaces-3.1"="pja00rv19b492fv0d1afkj1cmmi09wm4";
 "interfaces.doc-3.1"="bj6l95whavxkrsa5rb8791d2ib4n5gal";
 "interfaces.source-3.1"="f7gxq1s477zab7wh212nyad94kcdacqn";
 "inversepath-0.2"="8csfwygw95dd5wrawwj7hs4gmpxhdwd8";
 "inversepath.doc-0.2"="b3z6dkfmk19n96dklslzszn7vfrnlcn4";
 "inversepath.source-0.2"="zpg2i1sqr76xvi6jn5vrgxvs44dlfx9z";
-"invoice-2016"="b7p2ca533x96hjf2xwbmvrj68zmydbng";
-"invoice.doc-2016"="71f1080i0rsjkd99gig3gi185pxhjv31";
+"invoice-2017"="b7p2ca533x96hjf2xwbmvrj68zmydbng";
+"invoice.doc-2017"="71f1080i0rsjkd99gig3gi185pxhjv31";
+"invoice2-2017"="l3j1qa7jni4bn8v1jmm9k6rmh7pbscya";
+"invoice2.doc-2017"="32p0bf7x08qkvj3x0mabigzi6p3kznjs";
+"invoice2.source-2017"="2k6qabwlpw6kp6mvg02c5xh3xqgjv78y";
 "iso-2.4"="p6yl8v4jyvzq5fh3qw31kgalhrv1qv22";
 "iso.doc-2.4"="xs5sw6aw59hr3xlk187dhwkg223vycsl";
 "iso.source-2.4"="vrgvl97kvsb6n82w4acm2wfjsqq00cxr";
@@ -4254,9 +4468,11 @@
 "isodoc.source-1.09"="aql8cr8vpdh2sf6bq0qfac1vsnq17q8l";
 "isonums-1.0"="50diljpihfk6390ak54ml6gxg6h3qarr";
 "isonums.doc-1.0"="qbnvabarywnwbfaxqjr1afkic152hhsf";
-"isorot-2016"="pzs5xd3c9n1m3r4m5g82702s0slq0kl8";
-"isorot.doc-2016"="760dh5j78kcgn2zxp6jhghmzxhyplavx";
-"isorot.source-2016"="35mi9l5bcbqmrixngyvb7g780ns0vjg5";
+"isopt-0.01"="0gyj9ri30pid0xymfv457g9r0nycy6qm";
+"isopt.doc-0.01"="q8srwcqk4w0mblrqzpy70wbqqrds2k9c";
+"isorot-2017"="pzs5xd3c9n1m3r4m5g82702s0slq0kl8";
+"isorot.doc-2017"="760dh5j78kcgn2zxp6jhghmzxhyplavx";
+"isorot.source-2017"="35mi9l5bcbqmrixngyvb7g780ns0vjg5";
 "isotope-0.3"="paqbsfz0w4sl82imkw2zqsdwg3nlzd9c";
 "isotope.doc-0.3"="f5mylfd5fga3jy0fsdvw1z5kya7kcg6b";
 "isotope.source-0.3"="sc8npgj5397qvqwvfrz2bq51xj5840l4";
@@ -4265,10 +4481,10 @@
 "issuulinks.source-1.1"="hmn5nsszd3vf27863sbk647fgfh5gxmd";
 "iwhdp-0.50"="j4m15vz6ky21yk2m95kjz1is1z91vxxy";
 "iwhdp.doc-0.50"="wphgycl74db9mxr5gjc2m80rbzkcqk3l";
-"jlabels-2016"="fw5il0bzwm10lj1ly8fjic2hjiqxnr7d";
-"jlabels.doc-2016"="fndgg419y1rp47d5qifv0k304b5iymab";
-"jslectureplanner-1.2"="b8fs1np0liq53xxrai6fsrp9kf410hrl";
-"jslectureplanner.doc-1.2"="3lvyzw1jq465jmcxqmcwlg71g9k0rwxw";
+"jlabels-2017"="fw5il0bzwm10lj1ly8fjic2hjiqxnr7d";
+"jlabels.doc-2017"="fndgg419y1rp47d5qifv0k304b5iymab";
+"jslectureplanner-1.5"="axyi8j1yfabj1394v0skwrdmsvyqdbxc";
+"jslectureplanner.doc-1.5"="d4pia762mzbgiz5wng5vfz0xggy2j6wm";
 "jumplines-0.2"="acxl8nhlznvcwq20n01b41kamc5xmqdr";
 "jumplines.doc-0.2"="hjfl57a9hwdyf6lxl6ah0k7937r03jil";
 "jvlisting-0.7"="fi23ykvl6kw34qri5nz2k4mvgjqgbbyl";
@@ -4283,6 +4499,9 @@
 "keycommand-3.1415"="sq6188m8lc3wl201phjx2qh3vwxf2mrs";
 "keycommand.doc-3.1415"="q9lkdcggi17v7gl8hibk2qn5dm6h07f8";
 "keycommand.source-3.1415"="k1fa9w6r1n1qhz428ipwflj6d6m5ap7k";
+"keyfloat-0.15"="x377cdsrx9gh5j8m6xz23z0i81cngjx7";
+"keyfloat.doc-0.15"="v630qlmdxhwr78j1ws86xaacl4vga1z7";
+"keyfloat.source-0.15"="gm2zjglwbxw209nf5k83nn9f7mcp4h6a";
 "keyreader-0.5b"="wk5kgrrx4c8682j6a01n57ab33ww2j23";
 "keyreader.doc-0.5b"="fy37315azfr09wzl71wdby8ry1dd40yn";
 "keystroke-1.6"="vi7r9aac2w8jggbxpk5593nsapasmm18";
@@ -4292,24 +4511,30 @@
 "keyvaltable-0.2"="njidjg64cv333s0j2djaycy1jmhn5h6q";
 "keyvaltable.doc-0.2"="bfym53arpfh1a0zfji1b3f0giwg1kxni";
 "keyvaltable.source-0.2"="dlgbjs6pq852xk6jbz7dxwd7jkf91rgi";
-"kix-2016"="lzdrca007a0r5rsm8f14ljx6v8yyg8xz";
-"kix.doc-2016"="jallvk311vqcjc3wrkxqv03ckbc9k1gi";
+"kix-2017"="lzdrca007a0r5rsm8f14ljx6v8yyg8xz";
+"kix.doc-2017"="jallvk311vqcjc3wrkxqv03ckbc9k1gi";
+"knowledge-1.08"="q748xlninf9v7zlg0727zmq85rf9c03p";
+"knowledge.doc-1.08"="14zapkz2ipb64fjqq5bs52hy5m8mc4d9";
+"knowledge.source-1.08"="wd1d5qcdld28hsw7c485cyx3g0dm9zl2";
 "koma-moderncvclassic-0.5"="s33qvgji09s9glq93mdxzs3smnzlamv5";
 "koma-moderncvclassic.doc-0.5"="dvzcb032fmh5xs804d9mbx6q0afm25r0";
 "koma-script-sfs-1.0"="s9dryf4f0zgcij3v5v93zppqs876p2nq";
 "koma-script-sfs.doc-1.0"="dxm4lfz50b0635g2dg24lzp3fgnlvkgn";
-"komacv-1.0.1"="w5j3z9f4svkq7syzb28wyzbg97p8npmc";
-"komacv.doc-1.0.1"="97n0hz7ngvi51b7grl3z9csvkbycy4qr";
-"komacv.source-1.0.1"="63d26l3aghm16qg3166hks64y3p01kmc";
+"komacv-1.1.1"="983485nkvn4jqxsh8mf8lsrlq6dqk6km";
+"komacv.doc-1.1.1"="sqdh6zbs97agsxd051w4g1m2b09hgmhr";
+"komacv.source-1.1.1"="1k5z0bk4hk2g1w88pmd3wgpdxal60qwi";
+"komacv-rg-0.9"="cmvsjza25057y5aympbi6gd1y8xgky4z";
+"komacv-rg.doc-0.9"="qq0vd7iks9kvsgrsimrgk15xrayhspy7";
+"komacv-rg.source-0.9"="h8a7jfdbxh6m8qq8hp9i36vddgjmc01j";
 "ktv-texdata-05.34"="fdwnms9v43cjsjypsnlq6rw1j3c6zz93";
 "ktv-texdata.doc-05.34"="896wnbqpxncc640x8rsi6gia2wh5njxg";
 "ktv-texdata.source-05.34"="7wq3pi1mm3r1g209vq31im4n4ib21zv2";
-"l3build-SVN_6608"="vhcdwk4cb866zrz1r4di4yq0cv7d3pcq";
-"l3build.doc-SVN_6608"="x7j6dgnyz8ym2bbbjpfy8z1a1m4b8hpb";
-"l3build.source-SVN_6608"="qrwaifx9878anbzdg7zas0fdjn6594zi";
-"labbook-2016"="x7i28cyfski7ssm9hv28zrlac3inky0c";
-"labbook.doc-2016"="5qs95wc8ms4162nwd7q4lvh7rc62s2h4";
-"labbook.source-2016"="rrybnds4laxyariqq5c2sh1zm9jzvk7f";
+"l3build-2017"="vfywhg6vl1y5l0iqhksg4hsmi5hpbyhd";
+"l3build.doc-2017"="bgbywnw1irw79l5yiaxpacn58088n3q5";
+"l3build.source-2017"="phmm3cf5182jxx799j5ha1rw57pcyns9";
+"labbook-2017"="x7i28cyfski7ssm9hv28zrlac3inky0c";
+"labbook.doc-2017"="5qs95wc8ms4162nwd7q4lvh7rc62s2h4";
+"labbook.source-2017"="rrybnds4laxyariqq5c2sh1zm9jzvk7f";
 "labels-.13"="rxcv9zw5jal0kr4kw0vlswjc87clgh8p";
 "labels.doc-.13"="70hfinn9fsd8r14bk23fmdc0px7n4x5w";
 "labels.source-.13"="7hps59wlxkqqjm9432dg15ml63n44x3g";
@@ -4319,11 +4544,14 @@
 "lastpage-1.2m"="i37ji3jp95j287rx34q4yajih7w1riy4";
 "lastpage.doc-1.2m"="jc40pwdbysv03k1wx113f2q0j8xf54dr";
 "lastpage.source-1.2m"="gika2qk64lahh4l6c6pn76r5l57rspf8";
-"latex-tds.doc-2016"="m38f5gncr9c56sg2cjs0mfgd57wik7pd";
-"latex-tds.source-2016"="xdigsidx76bs121jl0m42wavzf4y88qj";
+"latex-tds.doc-2017"="m38f5gncr9c56sg2cjs0mfgd57wik7pd";
+"latex-tds.source-2017"="xdigsidx76bs121jl0m42wavzf4y88qj";
 "latexdemo-0.1"="qjb630j87mqsczjbhvjgr4a187rg6wzy";
 "latexdemo.doc-0.1"="p14qs32q48w1f8fq0xmwz1maiijhw44z";
 "latexdemo.source-0.1"="vldkpqrsdaa84s356w6nd5a0q0gv40ki";
+"latexgit-2017"="fymcvzwl1sl173r3jgf0298hxzrv66fa";
+"latexgit.doc-2017"="sxi90m4zcf03fym5d2mmyycd9p8f1k0l";
+"latexgit.source-2017"="jgvdi7lnqw37v9c4w7ybl5424sxkzgsf";
 "layouts-2.6d"="j5bph4p5drbgidk6k74k72n6ckzin1qq";
 "layouts.doc-2.6d"="4440l4n1kwphf99pkms09mk8ilbyd416";
 "layouts.source-2.6d"="hay5rjr1crxj98zqj1qm841dkxx55azg";
@@ -4338,17 +4566,20 @@
 "leading-0.3"="m10kyvg2pjysh33gajn8a8hisfc74ii1";
 "leading.doc-0.3"="5bc58zdia3qp0742p1hwmxaw13qdgnxw";
 "leading.source-0.3"="ks8sv07mg6n12g60aj3s33siha865chp";
-"leaflet-1.1a"="sm1xci8wbxyqy28av79zwcnscks9y62m";
-"leaflet.doc-1.1a"="pwgms9v3irkh34agmx075pbhv7irhan3";
-"leaflet.source-1.1a"="z7lrijyfv4ab4ccsy5z2bx2n9zm8z9pd";
-"leftidx-2016"="d2q1jibnbyjk72phsf6yj7nxj9l37fvh";
-"leftidx.doc-2016"="db75s45b0v3lqkw9dx09m7zs7zhmng7y";
-"leftidx.source-2016"="whmdclngd2dpahpsmz5s3rahk1bvf7sq";
+"leaflet-1.1b"="jaqjjxvh2wb6bg7c608cn6rg9d67pkv4";
+"leaflet.doc-1.1b"="5vgkqz1bw0qlxzz5fczsqf873dqsq50g";
+"leaflet.source-1.1b"="l8g4n75f5d85dj4mfwbrc19bh87jzr81";
+"leftidx-2017"="d2q1jibnbyjk72phsf6yj7nxj9l37fvh";
+"leftidx.doc-2017"="db75s45b0v3lqkw9dx09m7zs7zhmng7y";
+"leftidx.source-2017"="whmdclngd2dpahpsmz5s3rahk1bvf7sq";
+"leipzig-2.0"="vasv42gq76m6bqc0kd3rhdjqm3jfbgzw";
+"leipzig.doc-2.0"="mwiqrvnz9dpar8yxz632anah37795px4";
+"leipzig.source-2.0"="8d88fsk8faxw58zrp0any6ld256jiqda";
 "lengthconvert-1.0a"="7rfvx4n625g3rwinbxci25b0xpxrb2sk";
 "lengthconvert.doc-1.0a"="ngl9jfvcplmd9z7kwzfd90m45jp9lbpc";
 "lengthconvert.source-1.0a"="r2lh184znd42l741g816y2ljrsrbncha";
-"lettre-2.353"="4r3qyl971gcbsn182a449ks0vsid70lc";
-"lettre.doc-2.353"="gff37hsnpqyn0dbwkf4bshhql8spfzzj";
+"lettre-3.000"="cji81arz9mmmd0n31k9zh7pacq0w7df5";
+"lettre.doc-3.000"="szid42pk7qyrimafvma6z62407npv9dj";
 "lettrine-1.9"="fybjnmp9wr11h1nlxhli9fr4bin99hyj";
 "lettrine.doc-1.9"="0v96hk3gljl5q200v59q1nh2vxv0mwbn";
 "lettrine.source-1.9"="q7kny754pmrmh1p9jcig9ccycvsbc2cv";
@@ -4360,9 +4591,9 @@
 "libgreek-1.0"="dsf5z1fq4y0agzyyv6yi0vjwl233d8d4";
 "libgreek.doc-1.0"="g2bs55qw4b3caw4paxrnapy67n0ha9ri";
 "libgreek.source-1.0"="1fzq025r679gwbakqw9av95ycxj5zlmp";
-"limap-2.1"="q2jidxbgxmdc8233bgpl96zp8130bhln";
-"limap.doc-2.1"="4yv0y00w76c35n3lmwcm1psx9r0r77wx";
-"limap.source-2.1"="7pkwwflnqbhamz030rp1f0vpmdxs6gck";
+"limap-2.2"="kv5hncahb5nmmvrk1rn9j6ikj5i0qvs3";
+"limap.doc-2.2"="531jnlrzb50nsqzbm0amybf98crl0l7f";
+"limap.source-2.2"="djbm84g3cwpypc44slyscyacm1wmpl7n";
 "linegoal-2.9"="amvia15hibyyc6n80wx6lzsdg3rk8h4p";
 "linegoal.doc-2.9"="inrrzzhlascib9kbyjxs4f34xkj6djcg";
 "linegoal.source-2.9"="9207gnjmj07pywp2ikhjhnk6am2i2r1l";
@@ -4378,9 +4609,9 @@
 "listlbls-1.03"="hmdaqr5466rlpkkrq78d4p5rfzm4fyxa";
 "listlbls.doc-1.03"="gmdiwdbadf66b6cchmxv1swlngdw6y5g";
 "listlbls.source-1.03"="8l3lzr022qmx9pw4jgp1n2fkacyl94vb";
-"listliketab-2016"="8d6nwla5nj3m47r2nw7pqhv5kpc9dlmf";
-"listliketab.doc-2016"="7j02b3ng311y78pw6k0q4zjya5gs7zhz";
-"listliketab.source-2016"="vk9ar9i94brrf3csjh9ncp2r5z48glwc";
+"listliketab-2017"="8d6nwla5nj3m47r2nw7pqhv5kpc9dlmf";
+"listliketab.doc-2017"="7j02b3ng311y78pw6k0q4zjya5gs7zhz";
+"listliketab.source-2017"="vk9ar9i94brrf3csjh9ncp2r5z48glwc";
 "listofsymbols-0.2"="9xg173d0qs233kqf04vm7qdl7ajha3w2";
 "listofsymbols.doc-0.2"="4vhmgkz6wrk2ad9bnzdv3sv3ii1np14p";
 "listofsymbols.source-0.2"="4g49piirj1spdl9hg02n9m1c8b5ql1k5";
@@ -4392,14 +4623,14 @@
 "locality-0.2"="mr4032njdjyscsy5p9xax5lw5kdbhnnq";
 "locality.doc-0.2"="98r82nbryc9zf5xyhwfnbkgrcybf7fr5";
 "locality.source-0.2"="4g29gqbn9n7kp36x0s44211p8bbmcfi6";
-"localloc-2016"="jjmgwbaj9v9503wkm5x3mr008f3llvls";
-"localloc.doc-2016"="jn8x4qwci949zci0bk1ldrkr192kasgb";
-"localloc.source-2016"="2hhfkp3qb0p6qphv2fq5cyigyrx41iah";
+"localloc-2017"="jjmgwbaj9v9503wkm5x3mr008f3llvls";
+"localloc.doc-2017"="jn8x4qwci949zci0bk1ldrkr192kasgb";
+"localloc.source-2017"="2hhfkp3qb0p6qphv2fq5cyigyrx41iah";
 "logbox-1.0"="6hm79ady9adc3i3c4p0jzmx7fwavbzqj";
 "logbox.doc-1.0"="mxpkm6s6x6zngdy8jgj801vhq3h7mlxr";
 "logbox.source-1.0"="a1q1w9s8pj9aqshkyla8cc1p3g2z9w8z";
-"logical-markup-utils-2016"="zbnw20yl4fjaj4vfmqa5zp4146yq2a84";
-"logical-markup-utils.doc-2016"="gwklf7w5nqlxiwy7avg5nwx514l2ryaz";
+"logical-markup-utils-2017"="zbnw20yl4fjaj4vfmqa5zp4146yq2a84";
+"logical-markup-utils.doc-2017"="gwklf7w5nqlxiwy7avg5nwx514l2ryaz";
 "logpap-0.6"="dhd61y6riva220cjnb193v9cjbjz33bi";
 "logpap.doc-0.6"="pps9ipn239h1vw0d8p2jlzbkmcd12czb";
 "logpap.source-0.6"="6y6gv7qgh503f3n8zrpqddyghkdvzngh";
@@ -4413,13 +4644,13 @@
 "longnamefilelist.source-0.2"="3ph503yw35mliqir4k60hv3i8lah3q7v";
 "loops-1.3"="0f0xz58wdvx6cvkynx3xmyxm08x823jh";
 "loops.doc-1.3"="6v1ghg77l3nrab23by4cwqwr014jjwq6";
-"lsc-2016"="m875c3d6lpgh92sym2hav1n0lll6f7nz";
-"lsc.doc-2016"="ajdphikngmbihczhfyarwa94i9r3mg6p";
+"lsc-2017"="m875c3d6lpgh92sym2hav1n0lll6f7nz";
+"lsc.doc-2017"="ajdphikngmbihczhfyarwa94i9r3mg6p";
 "lstaddons-0.1"="n797dx657x03zpkhb1fc2ygd0ppb023g";
 "lstaddons.doc-0.1"="w57l66903jqsb827q96f05as16fr5wf2";
 "lstaddons.source-0.1"="35c9b9n0qi3rjl2gg9dr158v21rh5cq6";
-"lt3graph-0.1.5"="fc8pd37dds11ck9846rp74lxhn7x55j6";
-"lt3graph.doc-0.1.5"="kf6s1vz7bk0whmk4d3zcnxn0ik6cy3r9";
+"lt3graph-0.1.8"="8zd4fc2v8hlirl758qqdgjqky7cpm7ns";
+"lt3graph.doc-0.1.8"="rzp0cvxdj0p0ixlxp1snrklxd7ybj1q8";
 "ltablex-1.1"="a9hh7jiwaw9k0zkmb5yy7halay61g1x9";
 "ltablex.doc-1.1"="40lyll74mnj18w4fn69a2gnan846v4s6";
 "ltabptch-1.74d"="z6ikfwfzq7wsnnr6acv0fnqmvq37cbnn";
@@ -4436,14 +4667,19 @@
 "ltxnew.source-1.3"="30hsnd2yrpqdqxczsza02v4rkqa4fiwa";
 "ltxtools-0.0.1a"="xml1xbh8w9gqi8gim7wps9vmadhmrf3r";
 "ltxtools.doc-0.0.1a"="hdmpfrkdycgs0qh3mcxgydcscilacfr0";
+"lua-check-hyphen-0.5"="j17ryb5mhflvjwqh3dda281zhr916bqg";
+"lua-check-hyphen.doc-0.5"="x7qjdjgf22aa3332izgii5cw287dx4l1";
+"luatodonotes-0.4"="pn42k5rx83hibk0aayaydb2z0zkfi1al";
+"luatodonotes.doc-0.4"="9615fx7r9nlvlld7jn47jlgb380jmrxf";
+"luatodonotes.source-0.4"="k8919986lx5jwq3qmwyjpg62qjjpa9gw";
 "macroswap-1.1"="19xdcyrfd1z77ld3isdzxjhvsijifmk3";
 "macroswap.doc-1.1"="dkpw0kw0a0d8cwp237xy5c1a9ab0s0p3";
 "macroswap.source-1.1"="wirvpfkv8zjyqghlabclnvnmb4w8i2rh";
 "magaz-0.4"="zd02izsnb56wz1wcfqfj6p9p7pycwd3g";
 "magaz.doc-0.4"="cdylbzidxq2abda3np8ia16m3lbga9w3";
-"mailing-2016"="4v4vxr5i84yphwj7ff6s3vi0n2wx1jaj";
-"mailing.doc-2016"="fw87jd6gkc88g5a5z17gm7fw3nk6pana";
-"mailing.source-2016"="1zmcm4sg1p3vlgb76yf7gz0ds1958s6b";
+"mailing-2017"="4v4vxr5i84yphwj7ff6s3vi0n2wx1jaj";
+"mailing.doc-2017"="fw87jd6gkc88g5a5z17gm7fw3nk6pana";
+"mailing.source-2017"="1zmcm4sg1p3vlgb76yf7gz0ds1958s6b";
 "mailmerge-1.0"="6zixn5f5rjq4fd65bbhkzwgijfhw262i";
 "mailmerge.doc-1.0"="wpim80lnxbf01an1ds6ksasm2271f54w";
 "mailmerge.source-1.0"="00r71m4cliyz9870yfxd5nl0b7b2px0r";
@@ -4458,50 +4694,52 @@
 "makecell-0.1e"="073c9wfpc83jhcbkmjlkpfbpmy082xyv";
 "makecell.doc-0.1e"="irl3sf564yjdnx538vbqbw6ji0x65m56";
 "makecell.source-0.1e"="qaw6f6hmvj4125v30wr0drnlq0piim3k";
-"makecirc-2016"="m4xbci3109krv6agm0nhvry9kd7wjs43";
-"makecirc.doc-2016"="w7jd6g686b8iqqbmyipml4c1rjry4bax";
-"makecmds-2016"="anpaqglvl5rmcy8r2q0ap8m117nsx89q";
-"makecmds.doc-2016"="39zxaxxqlmps1wd4rjy42a1hk027n06v";
-"makecmds.source-2016"="j4g888p0hniq7p6b30q1fb4qfw3qp7i6";
+"makecirc-2017"="m4xbci3109krv6agm0nhvry9kd7wjs43";
+"makecirc.doc-2017"="w7jd6g686b8iqqbmyipml4c1rjry4bax";
 "makedtx-0.94b"="dwmvyknjsjdn1rpcpqjppdz4zyy8njwv";
 "makedtx.doc-0.94b"="apq3lgzk13kb85lj83awvcyhb85s6bs1";
 "makedtx.source-0.94b"="rhrscyrsh7lli42k79d70bsvrkmcv2i8";
-"makeglos-2016"="6bgdfjbhxvfj2my954iinjp1xcxnyq4s";
-"makeglos.doc-2016"="g4w2560v1pxm38dj5dsb3irgijzh221g";
-"mandi-2.5.1"="w1yqdi2as62nn1fypkya2ahhb9l64d38";
-"mandi.doc-2.5.1"="w9qicfpcyaicpj7q75dwp0sm3x27snah";
-"mandi.source-2.5.1"="70pshn283sj2vr897q5rfzscppv54mhp";
-"manfnt-2016"="1nl2yh0i4qbxg0js1q4h566vbhh9szlr";
-"manfnt.source-2016"="3vzdqcfcmcmi75xgy4787fqacrsa12ay";
+"makeglos-2017"="6bgdfjbhxvfj2my954iinjp1xcxnyq4s";
+"makeglos.doc-2017"="g4w2560v1pxm38dj5dsb3irgijzh221g";
+"mandi-2.6.1"="z9hnxqk2dmw7sz6shzpbg0924vnbbki5";
+"mandi.doc-2.6.1"="v5d3s1wn545c2r41m7xsv0wmm6kgn8xj";
+"mandi.source-2.6.1"="ayclqx26nvd2dsn4s6lm66rjkqcivyhv";
+"manfnt-2017"="1nl2yh0i4qbxg0js1q4h566vbhh9szlr";
+"manfnt.source-2017"="3vzdqcfcmcmi75xgy4787fqacrsa12ay";
 "manuscript-1.7"="h6a06qa8wdg942c9l85xk2drlc07k340";
 "manuscript.doc-1.7"="9lfydjsxnci0b6nfdmayjigm8gfvbiaf";
 "manuscript.source-1.7"="7s5sj7f198rxkggz1j96kk6fgr5s88ci";
+"marginfit-1.0"="xlrx1rqs7h1f8zd81f2anaxbbq6n9xjj";
+"marginfit.doc-1.0"="4xfmgy7g5dmaibvpa7arxmn2g6rckqx2";
+"marginfit.source-1.0"="b9ycabhzwzzapwjbq3f5idnh8fafyp9q";
 "marginfix-1.1"="00sy5lr6gy3r8nvfqk6pry6rcipvkvpk";
 "marginfix.doc-1.1"="hfaiqs9h55v4c896b6grnhj4xaqsawhz";
 "marginfix.source-1.1"="18sbg2vngagcka14wdl3xsx9iwy08q2a";
-"marginnote-1.2"="m84bs36g3sg29ipy2hzrsd8vwc0fvfdg";
-"marginnote.doc-1.2"="0q6661pn5mzpwfqpsgxppbyvh7iafj3z";
-"marginnote.source-1.2"="ldjfpp720mcwlp384fybl6zwhwnjic29";
-"markdown-1.0.1"="p8z21cw0w9k1bkgp5dhb2j0mq1zis3b1";
-"markdown.doc-1.0.1"="5iqk2h0i4z2px1jv6nvdpk3n6kfcysng";
-"markdown.source-1.0.1"="3r8fikzzdmq1pl2z1mmdv687mqqf87pw";
-"mathalfa-1.08"="744z9qw8p82cjjsay8nr488fzan7ig8l";
-"mathalfa.doc-1.08"="xam9in9jqw9nqyp1dm4km1g1jfgbhf3d";
-"mathastext-1.3p"="k3209kii5srgvc5ysry46c82a45anygk";
-"mathastext.doc-1.3p"="lbkr3jd1kdb7rzcy12vpigkizyqmx1v4";
-"mathastext.source-1.3p"="j255y5qraqzz8bhzyxp7vw1vijz0f26c";
+"marginnote-1.2b"="r8d7dck9z0p84r10axspa1gyd6h2s568";
+"marginnote.doc-1.2b"="z4n6kq0laa78dmcran994f27ivr3rz37";
+"marginnote.source-1.2b"="jkygfzpscl24i584xhmvy1ywz38akql1";
+"markdown-2.5.4"="i0l8df39y3skij5cqfn3ci38w6hssvj8";
+"markdown.doc-2.5.4"="zkvj562cqw7rxmigkdkm8x4ah68sfjsx";
+"markdown.source-2.5.4"="a0g72s8h6p2mn3ssrcwy5xd5fd0rxgw7";
+"mathalfa-1.09"="gavlp7cyq78z61yk26bfjvnchsxvc4qz";
+"mathalfa.doc-1.09"="zj8fb67s0984arvnb294pqbhslr3kba7";
+"mathastext-1.3r"="z9wqlvgdhn85y452410lcn49sd4glrj8";
+"mathastext.doc-1.3r"="9yrm0hqhzmn1n53ixv4d35pr7dnp35hw";
+"mathastext.source-1.3r"="pah24ri9ygxvpajmbzmy60f8p0f36734";
 "mathexam-1.00"="4rhl11na8mqzbl9l7wjk53fdhdpzbgih";
 "mathexam.doc-1.00"="7bhcdnalaakml3rx50sgb0799b9883cp";
 "mathexam.source-1.00"="mcs3csvr3ayvjijs6sh67mk0mrp5zawc";
-"maybemath-2016"="b7n8bgmz0vizghas19svaf1asi7633ck";
-"maybemath.doc-2016"="7scmh5q3xpjd6gdlq07kf59sn5bbflxc";
+"maybemath-2017"="b7n8bgmz0vizghas19svaf1asi7633ck";
+"maybemath.doc-2017"="7scmh5q3xpjd6gdlq07kf59sn5bbflxc";
 "mbenotes-2"="7nxdmwq8pxxkxh07x26nhxr4fy1mymif";
 "mbenotes.doc-2"="bswvjyq6cy2vbfc1x2cmjcnr2jlcv90g";
 "mcaption-3.0"="bxgcc1lkr9p5ghd80mh2ixnc1g4g49f5";
 "mcaption.doc-3.0"="mzbfyspjjjq3mhm2m06jmf9fic78i6bm";
 "mcaption.source-3.0"="ix6v7ldrgqw2kyb8mxppiw47p1fsxj29";
-"mceinleger-2016"="n5kag86y4a1q3m4d2kgc1k4xbbchv1hk";
-"mceinleger.doc-2016"="g3ldzbnb7jl4ii7pvc518va6x8ahlrh1";
+"mceinleger-2017"="n5kag86y4a1q3m4d2kgc1k4xbbchv1hk";
+"mceinleger.doc-2017"="g3ldzbnb7jl4ii7pvc518va6x8ahlrh1";
+"mcexam-0.3"="dh2rbahqmyay6sbzpsyxy34q8nbpiz25";
+"mcexam.doc-0.3"="bmlagqh7fvxgdvf87kibna8xwp7fn9by";
 "mcite-1.6"="q16a807pfbxbcqyw1s5f3vrj0yym2z86";
 "mcite.doc-1.6"="6ak2czh685l6gxam0p0vdl8blq8z260r";
 "mcite.source-1.6"="pjqx07klaqvpxxf8xqqgad92h8rgvkb5";
@@ -4510,11 +4748,11 @@
 "mdframed-1.9b"="kc60c77k0qwqhdmpbk3r777k4q857jx1";
 "mdframed.doc-1.9b"="pr5d7iqc4akn0arxjl7ynqsl6dlh64sy";
 "mdframed.source-1.9b"="xnqih0l0zng5bmrjfrprr43k6l645kvi";
-"media9-0.69"="zmj4p0c1gazhq1xa7w04wk6ll8sb0ql8";
-"media9.doc-0.69"="p4x1a23rgznzif5ja55w0s5qaj9yaccg";
-"media9.source-0.69"="l0yj9nx15ql7mwg6p9s6jmx6qigs8axn";
-"medstarbeamer-2016"="vplzcqcrgag8dvin3yj0prlcm9gsb2yh";
-"medstarbeamer.doc-2016"="7i4skhq9pj4k3aswbzbpjqqgdj0s69gd";
+"media9-0.86"="r9jkjpcl2i1rpy6ycb6nasg5y3vm1iky";
+"media9.doc-0.86"="0c5ddqpa6xgdhcnpbsx2m8m7n93xs1gv";
+"media9.source-0.86"="n51dsxx8ql54dzgkwj56xgcfx504vwx3";
+"medstarbeamer-2017"="vplzcqcrgag8dvin3yj0prlcm9gsb2yh";
+"medstarbeamer.doc-2017"="7i4skhq9pj4k3aswbzbpjqqgdj0s69gd";
 "meetingmins-1.6"="d5x8znpkqcghi9lv4gby2l97smw6kddb";
 "meetingmins.doc-1.6"="mkxz4zi4a7rgq8sgwaqsc35n888gzs4g";
 "meetingmins.source-1.6"="5xridwnlmxkws7h293a1pg373mcb3gwv";
@@ -4523,21 +4761,23 @@
 "memory-1.2"="xbyqh88hgszrma77r32dzly4k928vwpd";
 "memory.doc-1.2"="97n5y37w8k1b1dghkjmdny2lgc2b0z4b";
 "memory.source-1.2"="xj785y1h8zncgikinri52ri4sp7av9cr";
+"mensa-tex-2017"="gmwrpnrip46f283zbz9f8sarzwg375hm";
+"mensa-tex.doc-2017"="f2f4p7ak03srwli0q0hkcsj2kkban2a8";
 "menu-0.994"="601vvx1mrqc5l4ig4j65bq88yjzcc08g";
 "menu.doc-0.994"="s9wj7viflx78y49dbs3scapk5vslf5xg";
 "menu.source-0.994"="n1pq98wjrfr476cwy442c8l99n1k9f6s";
-"menukeys-1.4"="yn67zcp4xc52fd1zbj3fk3sf3pvdh8xk";
-"menukeys.doc-1.4"="i2gb8mix2bjgdarsaj286k8mhlrmy2sm";
-"menukeys.source-1.4"="gd8bdhzjj7bl7am1afcvd7b31cwmxply";
+"menukeys-1.5"="4paqhdrsa9n9vnlcih3lwbs7ig1cvpxb";
+"menukeys.doc-1.5"="vqip96fgdq26ypfs2xpp947qmjybxpxm";
+"menukeys.source-1.5"="g0i476r5ajhpj65sq4m3h92c236plbkw";
 "method-2.0b"="6lpy1619i1m75cvsi9c2vzjxbcs9ia5a";
 "method.doc-2.0b"="c54snw0hl1agj2fs4r3jqnk9gblxpvhp";
 "method.source-2.0b"="y3rnwdcn8d1zs9s74nsza1zscmfbskq5";
 "metre-1.0"="mf4m9vxkjfkwhv1fqjw051kfb5rz44ml";
 "metre.doc-1.0"="bd500sp1di947i1rll56h80k0pm6312x";
 "metre.source-1.0"="44qm1832z64vxp1kmj3fg5zyv1jvjpb7";
-"mfirstuc-2.02"="hx3fqpvs8xs2lnydy1sf9ymh2s24m117";
-"mfirstuc.doc-2.02"="5mnpdfm6aiaqn0xsc4nhqnvl3ggbslby";
-"mfirstuc.source-2.02"="nmjacx1jdmvjd5kx7c8y8wjvgxzmkygs";
+"mfirstuc-2.04"="klcinqy9923z00iwd0ral3ra5xmjkwip";
+"mfirstuc.doc-2.04"="cs96z0na4pivz87g7ypmm8wxbmifhfsw";
+"mfirstuc.source-2.04"="l5n6bj9sq1djacdfpvsnqm82i57g3135";
 "mftinc-1.0a"="ckn9lv76yrkzpbi965rl9zvgcqg8alzg";
 "mftinc.doc-1.0a"="2qb409wrm8pf6nj53fbf16pwjrp7h3n2";
 "mftinc.source-1.0a"="s4kaysarmk404dx4pf1xlanckix06jgg";
@@ -4546,6 +4786,9 @@
 "minibox-0.2a"="4fhpgzi7wc6jh7n8rf2n9s0cpvljwwc9";
 "minibox.doc-0.2a"="sviimirqdwfgk14my3w0zr2qycccckf4";
 "minibox.source-0.2a"="q704gpig53qmnbsvy9kcwl6nm161nak7";
+"minidocument-1.0"="q06hnvnkj19habs189lgsx35srq63g3b";
+"minidocument.doc-1.0"="lccwy6b0j7z28w8zp9gsvassa240xc1p";
+"minidocument.source-1.0"="ksir0ia0gyc7qzr4pfjxzx2hcnzpc0b0";
 "minifp-0.96"="28njw4zhz6fagd3wwk7ybah5c6nx4lrc";
 "minifp.doc-0.96"="xci52b9lqvfx748z6y3a5f6spwqnc9qz";
 "minifp.source-0.96"="y3lmhlpkdcrix3kk3kv7rpqmnb9hlz56";
@@ -4556,14 +4799,14 @@
 "minitoc.doc-61"="72fq9vz023k96h5y6zza4b8g3hn24ldv";
 "minorrevision-1.1"="svc8nrmpcahd95mzyggc6vmpfhmd9917";
 "minorrevision.doc-1.1"="x12xlc4ja8ksnd9rpnic0c0hymj1sdwn";
-"minted-2.2.1"="lpvskaqcvylmg38i3r045dzqvwv5vd0v";
-"minted.doc-2.2.1"="z1f49s2aqnq1l62h84vsmzzf442fzck2";
-"minted.source-2.2.1"="x2v1ws1b73hcs5yabqmgjd6xdyzjid9s";
-"minutes-1.8d"="90bxwibh5hi4hnj1p44m7xkfcq1rlb1x";
-"minutes.doc-1.8d"="rqkkjsv6sk7ap3fchshbw9f61j8m13h6";
-"minutes.source-1.8d"="rnzlqp3j3fxxxz8jcx10438dckxpvapp";
-"mla-paper-2016"="7rh7dh7mzybc5wzzbibh1lc10kyc99p8";
-"mla-paper.doc-2016"="3csgrsb6bh3sbqdzfx6y84i7ph8lwnhc";
+"minted-2.5"="4d3kkhjjlhqb1nmp43wwsrw3z0mv94xy";
+"minted.doc-2.5"="pf8yy80fj73nibdnljhlisc18cs1x1cw";
+"minted.source-2.5"="wl128ack6c90ij18fmvf27hnxm6y9gf6";
+"minutes-1.8f"="c864pfgi1a853n93jddnndgsp325sr1i";
+"minutes.doc-1.8f"="z3z8rxzrkwz7k6756b654v6wclx4f6rb";
+"minutes.source-1.8f"="w4skq6nprvgxhvqrf4xa2afccr1hsz6g";
+"mla-paper-2017"="7rh7dh7mzybc5wzzbibh1lc10kyc99p8";
+"mla-paper.doc-2017"="3csgrsb6bh3sbqdzfx6y84i7ph8lwnhc";
 "mlist-0.6a"="5yh180f4d4dsrfzin6cjmshad8w7fi6g";
 "mlist.doc-0.6a"="wqscsdlyx7zqyq1g5hcfcp0cs5w5dxxc";
 "mlist.source-0.6a"="hlnmvms7n3csa2v0ixwz82wp2dlc7jy1";
@@ -4583,6 +4826,8 @@
 "modroman-1"="yvhwr314ymch4fhvr9zq8l1rsp3jfinn";
 "modroman.doc-1"="2is4g9r40gr23cy469q2vk2kjj2jbkm6";
 "modroman.source-1"="1kddwifbglz7hlhxndcrr28dfgd0bdy5";
+"modular-2017"="gp555cnfp2izjp81bg1l1aij466vcfxr";
+"modular.doc-2017"="5yxpl169qqnh3p4zhwx6glnagv6a210y";
 "monofill-0.2"="jnv36mj3w2vihnq2f17pbm1yzrz2176w";
 "monofill.doc-0.2"="gr0mhc8f2w3dnd9r6flqvq5yyb388h4p";
 "monofill.source-0.2"="gmdpp4qn9x5bxk24afqs4xg7vzvaqkp4";
@@ -4603,35 +4848,38 @@
 "moreverb-2.3a"="w1rxv8g11dkpi1zyfq7xblgjjwi2dkw6";
 "moreverb.doc-2.3a"="70m0wiik9lqc2r4pi4nrdmm0rsx9d8cp";
 "moreverb.source-2.3a"="zxqcx8a12s33gklfq4zv3mci70nimpir";
-"morewrites-0.2e"="i49b0jja8hpj21bh9pra7b6xjppm3nbl";
-"morewrites.doc-0.2e"="df80xh903dnsmmyi69l6cdays4rnj4ls";
-"morewrites.source-0.2e"="05is6dgsqcr1h6jx6fajabq781las4aa";
-"movie15-2016"="c2vppl6yv82s4n3kqjfp75qby2rwfxkv";
-"movie15.doc-2016"="1kn8iwx5x1gc978p0gjj2rwy4ablkdvg";
+"morewrites-2017"="syd5dn9pl0r77n0f60s8zga15p6s6dkw";
+"morewrites.doc-2017"="lv965nz8shz7lwmgcdfdgbb8v1lq42i9";
+"morewrites.source-2017"="y9y5isj1m8x3q5ljd4njbgav3lcy2mh3";
+"movie15-2017"="c2vppl6yv82s4n3kqjfp75qby2rwfxkv";
+"movie15.doc-2017"="1kn8iwx5x1gc978p0gjj2rwy4ablkdvg";
 "mparhack-1.4"="5sq75r9p6laimfxiz9kl1j5cgplkzin7";
 "mparhack.doc-1.4"="6i835nghib094n03i095dc0p7zq30znm";
 "mparhack.source-1.4"="07xwzd4pvppkb7ywwzdrip3yk41d5wl0";
+"mpostinl-1.12"="4j85f7xd35ylinp50p1ghlhhs0xlwskj";
+"mpostinl.doc-1.12"="32xaghhcvg0mdr2lzghjmscnfxgxbgl6";
+"mpostinl.source-1.12"="xdbrhh33r1f56583lj1vb6cxprzbxxs4";
 "msc-1.16"="fa7ja4f7a2qpc08q656711qdxlgsjqdq";
 "msc.doc-1.16"="b6mcb2izb71p267zcfhj3l0x7rc2sihf";
 "msg-0.40"="mi7ihvy6gmkfdi2m57125cq9c446q5d7";
 "msg.doc-0.40"="q4fq11pxgvj9d37jpf5j1kigr740zmlp";
 "msg.source-0.40"="bnclkshd9vm1ma3kwwskk5qq7s0n7lz8";
-"mslapa-2016"="xmci0mddxivrp23hxp50wnlyvl9kir04";
-"mslapa.doc-2016"="dpvra8ngic2ydqxs8y59zd0jffy2q4ai";
+"mslapa-2017"="xmci0mddxivrp23hxp50wnlyvl9kir04";
+"mslapa.doc-2017"="dpvra8ngic2ydqxs8y59zd0jffy2q4ai";
 "mtgreek-1.1+"="afbh9ydcsnf1k0c714ypmqrf0qjcas6a";
 "mtgreek.doc-1.1+"="pq9303jyrj7nq8rwgi5d7njbc2x3jn58";
 "mtgreek.source-1.1+"="6whrwjvzz5jrhirhgr7kymc3jczn2zmf";
-"multenum-2016"="f1d7s8hafvsk4dic8ss1cqdjqvn8dlih";
-"multenum.doc-2016"="w65nsjanh13fxbkwhiinwzyhq0ra2m54";
+"multenum-2017"="f1d7s8hafvsk4dic8ss1cqdjqvn8dlih";
+"multenum.doc-2017"="w65nsjanh13fxbkwhiinwzyhq0ra2m54";
 "multiaudience-1.03"="dcqxnkwsqd6vyk9wnwmac5b832dzb4ns";
 "multiaudience.doc-1.03"="8z6mbzi6yyv5cmp6pn2fsg5vlagyrlwn";
 "multiaudience.source-1.03"="5v4r06mydnjvq7hksjgdqd17m47b0g1z";
 "multibbl-1.1"="7nvyshlsgfcmlxc0gdn8b353sc6g3qw2";
 "multibbl.doc-1.1"="isxh2fz1yaz86acvpcv8k1hmwnazck6m";
 "multibbl.source-1.1"="z6wbxacy1rzz1l7wx6ppi8dsbipvc5s0";
-"multicap-2016"="9ja1cljsr31lw6rjvph8gi154z8bpl8j";
-"multicap.doc-2016"="z17yw0id2vdhckvirlrq3npkdpxk5hrf";
-"multicap.source-2016"="yv4rw5hjfj5fj0xyh2p3glmz0887x105";
+"multicap-2017"="9ja1cljsr31lw6rjvph8gi154z8bpl8j";
+"multicap.doc-2017"="z17yw0id2vdhckvirlrq3npkdpxk5hrf";
+"multicap.source-2017"="yv4rw5hjfj5fj0xyh2p3glmz0887x105";
 "multidef-1.10"="5wsklk9lvznmwisl7jyhiai2zz8iizhb";
 "multidef.doc-1.10"="sq7a72nhiyd5384dx9y6k1c72gl8ia2n";
 "multidef.source-1.10"="hx6fbjirp5gmpn9bglp0hcmmhdjn1rsb";
@@ -4641,8 +4889,12 @@
 "multiexpand-1.4"="lzkfpp7kk7hnhpkxx9wfvpmkq6jqd7i0";
 "multiexpand.doc-1.4"="arl7nqy5ng6jdhjswwahjfsdzk9j7467";
 "multiexpand.source-1.4"="wrp3xlwpv3fxl24fkd5zycvpjn6nf0x0";
-"multirow-1.6"="yawlvmvk70adgz7s7m32h8aprfgp81vi";
-"multirow.doc-1.6"="44hqljzw34vkgghrghii229qk0nfp7s0";
+"multilang-0.9"="2zi01a8mbsngarlk4ry5dflyzwz66wkr";
+"multilang.doc-0.9"="8vmjg13chfm72c6314majamh66qccpiq";
+"multilang.source-0.9"="xis5mdr5i3k25sgng4kkswls32w4vdbp";
+"multirow-2.2"="vm7a3136bbpmipq7mlzlh0wyxn6v9yq1";
+"multirow.doc-2.2"="8wyfrf16ygxv2cy76ll1v82bhrbwn899";
+"multirow.source-2.2"="dkjn4myc4pf552hds2g4b86jd5v0sixh";
 "mversion-1.0.1"="7vpmmb88cjk92m2a2hz10cijkxf44bmy";
 "mversion.doc-1.0.1"="a2fx7phvl0i1nyhb5h0w6ld1n9kvcgcv";
 "mversion.source-1.0.1"="zhbd3j6kxsdyznx9haqqh4vk7b8nrl09";
@@ -4658,18 +4910,18 @@
 "nag-0.7"="zvdfnz7z0rgwmf5vpj3dg7l0p8xwaxl0";
 "nag.doc-0.7"="r9gmc719q62qdim96mzw2sm98vwxsdip";
 "nag.source-0.7"="rybplddhj3wzplms9knly5b4fpkny05d";
-"nameauth-2.5"="riacyimp8f602nljh83pynslb0rlz7l7";
-"nameauth.doc-2.5"="6r8cwamcmjin0wayyirzj38p18i4d13s";
-"nameauth.source-2.5"="g5hvra9spaj7mxlzn25si7402cwxvia8";
-"namespc-2016"="6f7x6ldx008l8w5ziahgwl42hb5bws4k";
-"namespc.doc-2016"="6aqpn007i8s488j4qi8xhbx9zsyvafbs";
-"namespc.source-2016"="s5ws2rny22j23bqy5cn2mz23qn91ssfj";
+"nameauth-3.2"="8mchkgj0v2f3qcvrya80vbx2c55gwjcq";
+"nameauth.doc-3.2"="hq4wywajcb2h28zy4alj8di8ap12c3r0";
+"nameauth.source-3.2"="g1p0ddh1x8g4w2qwc5kvj3p92g8s3js6";
+"namespc-2017"="6f7x6ldx008l8w5ziahgwl42hb5bws4k";
+"namespc.doc-2017"="6aqpn007i8s488j4qi8xhbx9zsyvafbs";
+"namespc.source-2017"="s5ws2rny22j23bqy5cn2mz23qn91ssfj";
 "ncclatex-1.5"="vyc62gppwksnghphh3fch8ac3wji38qv";
 "ncclatex.doc-1.5"="i5klzg6hjqk8gq73g7ck9za6arh58rwx";
 "needspace-1.3d"="n3bhzw4qj1q1pml8yw40q3p8nzncygia";
 "needspace.doc-1.3d"="p8ahld3my116ynhgip3xfgxd58n4w36v";
 "needspace.source-1.3d"="2i7mdcxrdh8p54l31qqcfsdbrwjfiw87";
-"nestquot-2016"="f9rwiwxi2xksi75wfwmsq9gmrj78scg4";
+"nestquot-2017"="f9rwiwxi2xksi75wfwmsq9gmrj78scg4";
 "newcommand.doc-2.0"="cdy7kzxpazx56gc6a0s62nx1bq3x1kz3";
 "newenviron-1.0"="s27wb3f7q3qk5lv6ficrjs6kkxqal7hi";
 "newenviron.doc-1.0"="j20cd7xar8jxbx17dv9sqpsrck6cydd9";
@@ -4692,8 +4944,8 @@
 "newverbs.doc-1.3a"="884wh81zgssy9r9f2h70kank1kdv82mx";
 "newverbs.source-1.3a"="d2fvf7fsx5xj7rfmi8wl0g902drq59gd";
 "nextpage-1.1a"="b7b41bpr8zk2z6m5il51q9vxb3c8h67j";
-"nfssext-cfr-2016"="6d5df6w6qfyscs0j3900l2sfvdi75vyh";
-"nfssext-cfr.doc-2016"="4ni4zs22x94rcz5x7080nm3vspk5bgwr";
+"nfssext-cfr-2017"="isp9rw94ck4a9ckl4b5hd8ma3cmlkdwd";
+"nfssext-cfr.doc-2017"="si6j8b4314s0gbnjxwymqbzcajclqn2w";
 "nicefilelist-0.7a"="crqgn906x51nq1d3z0s15f9kl29lbg3b";
 "nicefilelist.doc-0.7a"="a77wbb5ajkj4ab3dy1zzs3hchac77cwh";
 "nicefilelist.source-0.7a"="ng7drfgz7w69za7hmfzm4cv0m2awdx7l";
@@ -4703,8 +4955,8 @@
 "nicetext-r0.67"="i3lvy4awa0igc272xv8mn7n4dfaxm9iq";
 "nicetext.doc-r0.67"="iacnv3pa0a676wy34s3s261ypjpcl9gd";
 "nicetext.source-r0.67"="6d0mm3ghwivk44g63875mpq6pafbll8b";
-"nlctdoc-1.04"="59mlxqz2iiyjz4s92g556xdxvgi2xp3y";
-"nlctdoc.doc-1.04"="149d267jg9xzhicdn6jm94hi2vn4km27";
+"nlctdoc-1.06"="2k3r9a400asfix3n8j3f7lgghr57imrb";
+"nlctdoc.doc-1.06"="3axalhgmiz8f9rikjwbkhckw0hshnpyk";
 "noconflict-1.0"="df9gs1xx7gymaadn2ji4dzir36z6r897";
 "noconflict.doc-1.0"="irvdqh1iyghgs73l3lv2jnrs2gj9jxcd";
 "noindentafter-0.2.2"="w1kg4gv0dpfak1s7xshs04ariccpnx0q";
@@ -4726,16 +4978,21 @@
 "nonumonpart-1"="a121f2i1n005xp51qn642vx30ij74zgs";
 "nonumonpart.doc-1"="wcbvd9c2cv5ydbma4xxb6g2b2bihi0lh";
 "nonumonpart.source-1"="j2jy48jw8hgcs830h187s9rg85kd3rfa";
-"nopageno-2016"="59l05x89jv7q4mm7k73i06rmv467iimz";
-"nopageno.doc-2016"="bn5vq6kzp69p03pfjx9s34ckf4h3q6iq";
+"nopageno-2017"="59l05x89jv7q4mm7k73i06rmv467iimz";
+"nopageno.doc-2017"="bn5vq6kzp69p03pfjx9s34ckf4h3q6iq";
 "normalcolor-r11"="jfpqlz85fphm063mb51q9q2s61fcbnmh";
 "normalcolor.doc-r11"="vz9557sxw9c6l8m66aaagcv39x1vkfzz";
 "normalcolor.source-r11"="vs4y1p0zarr6nppqadcdcp03lc6nd2zd";
 "notes-1.0.1"="w3rp5aas5n6sks7d5j7b27s11zi4lx3v";
 "notes.doc-1.0.1"="hn20w72lj73didm46kkay056msa4cr8h";
 "notes.source-1.0.1"="23qrfsbbmyds189kcnq09jbmd23mi50f";
-"notoccite-2016"="ifpkassfd9j5926gsnq00954clc52sbv";
-"notoccite.doc-2016"="5ggqh1mvc03xgyipc6c49ssmlaywh83f";
+"notespages-0.8.1"="3cx726w1pbmdiammpbzp0rmcahhza7p8";
+"notespages.doc-0.8.1"="rql7rmn1c85r1rb2jpmwd2h29m7b4gmx";
+"notespages.source-0.8.1"="sskq21wj4vhqyq8xzhrbsh7p8c701r7x";
+"notestex-1.0"="innwzn87vplj094lxw9w48ck6s5hmb5v";
+"notestex.doc-1.0"="p4lyxlar4125y9x3pb6sd5ysdn7w3vqr";
+"notoccite-2017"="ifpkassfd9j5926gsnq00954clc52sbv";
+"notoccite.doc-2017"="5ggqh1mvc03xgyipc6c49ssmlaywh83f";
 "nowidow-1.0"="hf3wjpkn1j2yksdl8mryssv6cxqjn3si";
 "nowidow.doc-1.0"="w1an9iayppa59h2iprjr515w8g72qkg5";
 "nowidow.source-1.0"="b6i3ypchipa228x0s6i66vrvf7zc3hgc";
@@ -4746,49 +5003,54 @@
 "ntheorem.source-1.33"="fc0wyfgjnckzqrd7lf3a4n6yvbhwaal8";
 "numberedblock-1.10"="x1wlbk0d8xbl0b3mx0bxgymc9jd3vv5y";
 "numberedblock.doc-1.10"="866z5if0xryr7mmi70any7p9l93f0d38";
-"numname-2016"="7gl7dp9c1wj7phv8ys39kxnarifbqfd2";
-"numname.doc-2016"="pfp7zzapdvlfbs9jd5vc2x977nxs3yfw";
+"numname-2017"="7gl7dp9c1wj7phv8ys39kxnarifbqfd2";
+"numname.doc-2017"="pfp7zzapdvlfbs9jd5vc2x977nxs3yfw";
 "numprint-1.39"="7fd6ja6vw3c7yg824y30xrqrmrk3qkwx";
 "numprint.doc-1.39"="bbfg2cyh8cykgl3zk9c53wk3q3vbb8pn";
 "numprint.source-1.39"="cr7xjw77r8h4bcjihxc68iraxd760gh2";
+"numspell-1.2"="xv0c8dxm8yncknrmarqy0nhjcqdaq8fv";
+"numspell.doc-1.2"="b6sfqk9wnbrg0l3p0hwff0nkskw13rcl";
 "ocg-p-0.4"="lxy3nprj8j37b2c7aylxzgm17221wscx";
 "ocg-p.doc-0.4"="qg16xjfjp36s3jxm1m75ln2nrl1rlama";
 "ocgx-0.5"="28p11v602hf9w9q1vynbf8fyhivbawl5";
 "ocgx.doc-0.5"="6vx8iiz0zfipwj45xrk1gv9cvifv4y1r";
 "ocgx.source-0.5"="5bm25s1rgsky2qc14nrgg6v3n0ywwcb6";
-"ocgx2-0.17"="sswq6h6ql12xr12l6zpxzka65dwqypfl";
-"ocgx2.doc-0.17"="hh4l7pvq1cz9cqi4yarwzzcxaj9l347p";
-"ocr-latex-2016"="7mi6izsnwk6dksgmscyn45w72n1bgk2h";
-"ocr-latex.doc-2016"="9cz06542a64k4ns92qgkx1hzm5sd275w";
+"ocgx2-0.32"="pcqh887g5sy739gj6avbbwjpdah4rwdd";
+"ocgx2.doc-0.32"="74a11fhyck8r2g11qh9iin2iiqhnmdbx";
+"ocr-latex-2017"="7mi6izsnwk6dksgmscyn45w72n1bgk2h";
+"ocr-latex.doc-2017"="9cz06542a64k4ns92qgkx1hzm5sd275w";
 "octavo-1.2"="fpv1fcrym9gplxjs0zsrrv4iziizqzxy";
 "octavo.doc-1.2"="wcd4cj4ihgmm1d0i36l66bf8dpw5cm58";
 "octavo.source-1.2"="30dsp7266fzc2l2kn98pqwwv6sdb75hr";
 "oldstyle-0.2"="3910vncyk04awikr4g0afgyfqa6dqxa3";
 "oldstyle.doc-0.2"="picdnpvv6c53j0mg8gn3l89c4ydph9s8";
 "oldstyle.source-0.2"="dwsgqd631bncikps4m9fvr7l7y428w5b";
-"onlyamsmath-0.10"="ydyfk2nr3qb06mx0f3pzg7y6j3a05r1w";
-"onlyamsmath.doc-0.10"="4nh71jjl96lwsgija5hhik4hs2aqcw48";
-"onlyamsmath.source-0.10"="064glmd39fyawby4r53rnjj8lbfw9h7k";
+"onlyamsmath-0.20"="z12vjq71xjihl30fwfhqqm4wimb1dkwr";
+"onlyamsmath.doc-0.20"="h2whk4751icqb332z3h346vcjqrbgjiq";
+"onlyamsmath.source-0.20"="w3yqdsdbhx5m6briw33a0mh8jhyx25kr";
 "opcit-1.1"="59ykfp525lby8p0y5y1b5wk8ab9dvznz";
 "opcit.doc-1.1"="h74vnsw6lf4iaca46r07x0i05rhrq4m8";
 "opcit.source-1.1"="xsw3nb19li1hxnfpr4xhkb2s8qg3ap1w";
-"optidef-1.0"="b4prxv5l2jfb4a2lnp4h8pjxnhq1r6xz";
-"optidef.doc-1.0"="qzy4bp90vhzvwm4wcn6wv2czvzs25lw1";
+"optidef-2.5"="6qgvz673i7fb8dlm2cb4hmwv873n1qm5";
+"optidef.doc-2.5"="v4yw67ilsr3bws90x69gzhcib60wildz";
 "optional-2.2b"="akjbm6gzli451ll82zbrwhpcajdn1b15";
 "optional.doc-2.2b"="jg81vzayz3a2pvlxhvyrx8j3w1sw65xg";
 "options-1.0"="5xy1cf8yq8awm7bspjj23nywhbs7ww67";
 "options.doc-1.0"="gy13y93wl0im19p5jc011fjnr49afgsp";
-"outline-2016"="m192v07lmcfzq3zbv87cbckz8jwanbha";
-"outline.doc-2016"="wcm9psb6ap1a5xy16fp91bwpxkhqxmh1";
+"outline-2017"="m192v07lmcfzq3zbv87cbckz8jwanbha";
+"outline.doc-2017"="wcm9psb6ap1a5xy16fp91bwpxkhqxmh1";
 "outliner-0.94"="24bsa0d5zxz2i50i4bz0b3zsc5v7hp8d";
 "outliner.doc-0.94"="qgvvmjxq75fq907z1ya4vkir6iq7sbmq";
 "outlines-1.1"="0yh26641p29qj71w6zsx1z6hsr663q1k";
 "outlines.doc-1.1"="zg8b8617kq2vbf6inn2ms6x4a27j8yf5";
-"overpic-0.53"="pjgza37bcyj3fvka800jmikglm7i5dkd";
-"overpic.doc-0.53"="yg8rhb1nk68y31rjg80mf58l1w6g4pm4";
-"pagecolor-1.0h"="ba7q8fk5218ysfhqcdjzb2gknxv78qgd";
-"pagecolor.doc-1.0h"="x5cja14lpk8wx1772l7v7dl315zks6xl";
-"pagecolor.source-1.0h"="27dpjid0dqhbcwhqjfskql55k9gz0ii7";
+"overlays-2.7"="c20i0vbinrixlzhjj8aq01vmih5g978j";
+"overlays.doc-2.7"="938796xcyh4yd1nvfd3d341nx4l2ik0p";
+"overpic-1.0"="gpa3ldn6rh31llvwzj1xg3gfzm18xwzk";
+"overpic.doc-1.0"="z00m8pacqjjx7kkfharhxs20k5c5czcy";
+"overpic.source-1.0"="55c5329ladpygp3748lh5vw9h91v3k3r";
+"pagecolor-1.0i"="sllb6vybrngchz5k569b7pl3w13h6qfn";
+"pagecolor.doc-1.0i"="gm3l4g745mp6910pfv5201k63v44yr83";
+"pagecolor.source-1.0i"="ycqzawzck2jisybmxs7yfrr8v2h3vhy0";
 "pagecont-1.0"="8n68c03h2ckbvv11jj3cdv771ih60s4c";
 "pagecont.doc-1.0"="xkbrxr2gk65wgg5zf4cklsyzlgb03fz3";
 "pagecont.source-1.0"="74vmzb28in78lnkb7gjb8pg626vff0za";
@@ -4803,9 +5065,9 @@
 "paper-1.0l"="wxk3akaqvdbc0q5whlwd2jpw0nvccwmn";
 "paper.doc-1.0l"="pppdcafd1gw0y9d5j91b2smzdssvvwyi";
 "paper.source-1.0l"="g5np7r4ncm9pyzpqm3f0h60cihmfbfsf";
-"papercdcase-2016"="dncf3im483zf3ix2ycp8d07bdpdqnfqd";
-"papercdcase.doc-2016"="cv4gkmg3rljv2j0pb0xjw6xzbqdii5cj";
-"papercdcase.source-2016"="qlbxx0dxb9vj7939sr3pl8cam98bc619";
+"papercdcase-2017"="dncf3im483zf3ix2ycp8d07bdpdqnfqd";
+"papercdcase.doc-2017"="cv4gkmg3rljv2j0pb0xjw6xzbqdii5cj";
+"papercdcase.source-2017"="qlbxx0dxb9vj7939sr3pl8cam98bc619";
 "papermas-1.0h"="xrl9ldvps0ffrygpgj501bvi4yb6cz2w";
 "papermas.doc-1.0h"="1p87yvwnn29mi2n2q4z1jsxfnq8gd73p";
 "papermas.source-1.0h"="6i3yx6ygswgf7yp1c0grv7gr6qc77r1l";
@@ -4815,23 +5077,23 @@
 "paracol-1.32"="b06zg992m7hnsnws885cai5ls7kkln0l";
 "paracol.doc-1.32"="wyj8zk1gnj2hzng6ghzcyynkxa8va5gg";
 "paracol.source-1.32"="vdmvyxhwlzhv6a3d5gwlhq8ig15gwi79";
-"parades-2016"="bkr92ffb7s3zzl845jjkj1777517dwk1";
-"parades.doc-2016"="sfmlhp1idjhvy6cldh2v2k5bl5lp7s58";
+"parades-2017"="bkr92ffb7s3zzl845jjkj1777517dwk1";
+"parades.doc-2017"="sfmlhp1idjhvy6cldh2v2k5bl5lp7s58";
 "paresse-4.1"="mjz05a7z528h2j2svmk4d8ycc6zfzbh0";
 "paresse.doc-4.1"="yahsg4ij3mnck53fl3mgcywibmnq7nhw";
 "paresse.source-4.1"="ydzd3zya07nc2kpvq3w1bjg5nbq4l37z";
-"parnotes-1"="adhqdgj7jbh602slsnip7cw7n5jniw4g";
-"parnotes.doc-1"="15qy2y9c531zaibdgniqz73sp93gicsc";
+"parnotes-3"="fhk85w9ldd4x7l9d2vma4jkrgiaybydg";
+"parnotes.doc-3"="61w2ijkfwd2ww81h39m8wydl957g8hxy";
 "parselines-1.4"="krgfsp0vcnpgwgw70aw8iwbi9r9fnwsm";
 "parselines.doc-1.4"="ahspn4rw6wdwlk9sgd8f2jajb2cbm33n";
 "parselines.source-1.4"="n652xalrpp0s7yy0dvcdz24khybsm1cw";
-"pas-cours-1.09d"="wyhgyv5iphi3y6r4gy7spn4pvj04c8cf";
-"pas-cours.doc-1.09d"="dbjz7w5q67mnwzzh775m3l5hfh6gmx7z";
+"pas-cours-1.6"="2dkbzp14iv265qbbpa5i9s4ir54ihf9c";
+"pas-cours.doc-1.6"="s7d7lps8aay695www7xh7sxpscg26dfd";
 "pas-cv-2.01"="zdvf8flk3kjln11sn5rs3cb265q8fgzv";
 "pas-cv.doc-2.01"="am16i8cjhh2jadlhqsmfx8vb2jyrj8fn";
 "pas-tableur-2.01"="ggwlvzkwdv3qhljir7c8v8fwivi9h7lp";
 "pas-tableur.doc-2.01"="942prkpjhj4zpvdg2d2k27ibvchw2mbz";
-"patch.source-2016"="6k92ah4ka1ljyxwgg9n91m5aj6nwvnq8";
+"patch.source-2017"="6k92ah4ka1ljyxwgg9n91m5aj6nwvnq8";
 "patchcmd-1.05"="asi7jsa5gwd1i2k0arh2p24wprnqfb2h";
 "patchcmd.doc-1.05"="8nxwjfkxc3nbj39wfvqm8bkxm4qs1y66";
 "patchcmd.source-1.05"="bpb3vc5kdmhiwh0s6sjvxjshvmgr7hrs";
@@ -4841,9 +5103,9 @@
 "pawpict-1.0"="spbcprlcpyxh9yd98rfd8vy7ydxyk552";
 "pawpict.doc-1.0"="wrpl43c4g89pgnrpcjky42h1ckhc4dgr";
 "pawpict.source-1.0"="qfmjx2x9vrlm3zq8msph0c30py1n2x96";
-"pax-0.1k"="iqmsy6p191p8bn2bs642zclq3q42n89p";
-"pax.doc-0.1k"="cjppdms9xlc6hsj0mk324ndpjqg2px93";
-"pax.source-0.1k"="harabcx553nchhf8hh9m3wqwic4l80fc";
+"pax-0.1l"="iqmsy6p191p8bn2bs642zclq3q42n89p";
+"pax.doc-0.1l"="cjppdms9xlc6hsj0mk324ndpjqg2px93";
+"pax.source-0.1l"="harabcx553nchhf8hh9m3wqwic4l80fc";
 "pbox-1.2"="9y4p69w5nskv8j5i8a2pxmhswxz8nc50";
 "pbox.doc-1.2"="hjv8mqhlfa9ggqypr7nwzzf03rgm7cry";
 "pbox.source-1.2"="pk6hx6w8szi4dbb7irkr0wy3xwjjdpxg";
@@ -4862,34 +5124,59 @@
 "pdfmarginpar.doc-0.92"="0kc0dgfq3mmnwy3xs79gjmxkkmmfl5l4";
 "pdfpagediff-1.4"="3nj0fki5pqm0i50fzacdvnnzhhf2b5a5";
 "pdfpagediff.doc-1.4"="8h093sqzw62ivh2csz6fhkbbkdg1na2h";
+"pdfreview-1.1"="vbvpls5iy7q63snxkmn2ry1j8k1wmmhl";
+"pdfreview.doc-1.1"="8zpxlnz72x0x7wg5canh27y4qcq11l1p";
 "pdfscreen-1.5"="5lwdmn4lxkq9hgn6fmr4rc2gdk3ms583";
 "pdfscreen.doc-1.5"="bcg3kviqc0jr3s5h5xa3in5g1hj46zkv";
-"pdfslide-2016"="78wynlp5vyc14zn93gwy73yyykk0yh0i";
-"pdfslide.doc-2016"="j8krgspjlvn4ja9dww3mc0g3zg7qhlmb";
-"pdfsync-2016"="xqg7my569gq36snly1kpii240byrpx7s";
-"pdfsync.doc-2016"="y6am07gh7iwgmgkwq7sg9z704waxgqai";
-"pdfwin-2016"="yfdlssqwsa253r0qzvy5xbgbgwpmmxpm";
-"pdfwin.doc-2016"="7k1kqy2rpr93q4nvdvwcrspqjbzz1h4i";
-"pdfx-1.5.8"="hl8z1q94kablzkk0r2lrma2yx6b2vb7z";
-"pdfx.doc-1.5.8"="d7s43v0c56cw6nimbydgph3idpw12k77";
-"pdfx.source-1.5.8"="r34z1zp89d8bckxicc79waiai7kri3ar";
+"pdfslide-2017"="78wynlp5vyc14zn93gwy73yyykk0yh0i";
+"pdfslide.doc-2017"="j8krgspjlvn4ja9dww3mc0g3zg7qhlmb";
+"pdfsync-2017"="xqg7my569gq36snly1kpii240byrpx7s";
+"pdfsync.doc-2017"="y6am07gh7iwgmgkwq7sg9z704waxgqai";
+"pdfwin-2017"="yfdlssqwsa253r0qzvy5xbgbgwpmmxpm";
+"pdfwin.doc-2017"="7k1kqy2rpr93q4nvdvwcrspqjbzz1h4i";
+"pdfx-1.5.84"="3v3sjs8q7lq3vpl0pkax47nhs5pak7im";
+"pdfx.doc-1.5.84"="fi7wnhab781dn6prnr9a2fh0m5qpq56y";
+"pdfx.source-1.5.84"="zrw1pz18hh5msx2q3w15k7p5l4jdjwc1";
 "pecha-0.1"="8bir75jmi5y33ids3wixm0sr7zjd66zq";
 "pecha.doc-0.1"="lhdivjzja3syzm6ksfcckx4a9q3pp8ph";
 "perltex-2.1"="2f79yiqssyigfci17gazdnvcms6kid3y";
 "perltex.doc-2.1"="hn1salkk7b3f371y3l3nby3lzih2pb7j";
 "perltex.source-2.1"="wfz5j1yi8qls7n7jfkip9s215s6jvvgz";
-"permute-2016"="anxvxdpnmr31a50r7anwj21vci3dxvg0";
-"permute.doc-2016"="rz1569972rz72laqrxnkphxr3bdx1pxl";
-"permute.source-2016"="va01wn3pv0j0cxqmgh8cjricj4m2vjxv";
+"permute-2017"="anxvxdpnmr31a50r7anwj21vci3dxvg0";
+"permute.doc-2017"="rz1569972rz72laqrxnkphxr3bdx1pxl";
+"permute.source-2017"="va01wn3pv0j0cxqmgh8cjricj4m2vjxv";
 "petiteannonce-1.0001"="xv2yjs519vz0inbcy7m2a201ysjl3gwj";
 "petiteannonce.doc-1.0001"="9xvfy2ivdmlamj4fr1q5i1mfh6diys8s";
+"phffullpagefigure-1.0"="hp51s42ycsary7n2qngls1bm6j6mi5ab";
+"phffullpagefigure.doc-1.0"="wvbhkw4axm3bkx3jyi32iy0g3bbbfc6w";
+"phffullpagefigure.source-1.0"="z0wwcy1cjs0kv9lwxdl7waidccaa9w2x";
+"phfnote-1.0"="77if36imrvp4g43h3vfd6j9qzsd7gv3c";
+"phfnote.doc-1.0"="i0vc3q353aa2f1xjhmddlq273x9jngp9";
+"phfnote.source-1.0"="0c893r2vi32kp5cx0ncwa23zryyy6j3m";
+"phfparen-1.0"="jj8lpyhs4h7li0dmc70xhf2h17vgqrwm";
+"phfparen.doc-1.0"="73rcrl7hp843q2fjgis48raf9hh4yaqg";
+"phfparen.source-1.0"="zqdkqbjn75g379gsw0jvlzbyz5qpr1xp";
+"phfqit-2.0"="yln8ifsblmbsp34na3jfi2j5z9az00y1";
+"phfqit.doc-2.0"="ll95cj7p15xx79q024p6xdf3wsjzlamv";
+"phfqit.source-2.0"="xqiygbddiwvl3l1x9xdqcd6zqdbc4xj3";
+"phfquotetext-1.0"="52h9qw8xvldzr7smwbg7njr8acxf4hp3";
+"phfquotetext.doc-1.0"="gk5008b5k8qbi3q2i7bjk57ipwz0vyhg";
+"phfquotetext.source-1.0"="wl18lww4jvg1k8361ra2jqc5z3drs4vf";
+"phfsvnwatermark-1.0"="11rqnm8ag7p0iv2bziy89w66j9cjv4vk";
+"phfsvnwatermark.doc-1.0"="rd3y1kns876788nmbkm7r95wml31yvg8";
+"phfsvnwatermark.source-1.0"="666y9zym40h351a9fbnwy24aangwswkd";
+"phfthm-1.0"="a1g65ldp21rjb5nk19ygpijbs0xfriqq";
+"phfthm.doc-1.0"="ad1m16cjb9kyi6jk6jnvgxcm2ci8pxqg";
+"phfthm.source-1.0"="lbd9qwdv67spq7v1dy78012a874wg9mv";
 "philex-1.3"="766zmr2yzy48mmdakjhvvy56ck2g5zhf";
 "philex.doc-1.3"="r94769rncbhw6cdvzwm0s9fhwa57z7xx";
-"photo-2016"="d2rv82rm7jyd2fvgzs545kz32nb7fn6l";
-"photo.doc-2016"="1gn03gddjcbfmidsn9snhbr9nsmlbsmq";
-"photo.source-2016"="70n1vi9qla3kl592hgay45af9m078l58";
-"piff-2016"="xz2idyqgwg5y7r9ac0bykvfx533rd29p";
-"piff.doc-2016"="xwlsyrk4mczbchklsx5x8ip08zc5jk6a";
+"phonenumbers-2.0"="ica7srldmdwi7knlazvxx0apigs5yha5";
+"phonenumbers.doc-2.0"="pbz2d1ia699qy8gadmn57fknalxy22wv";
+"photo-2017"="d2rv82rm7jyd2fvgzs545kz32nb7fn6l";
+"photo.doc-2017"="1gn03gddjcbfmidsn9snhbr9nsmlbsmq";
+"photo.source-2017"="70n1vi9qla3kl592hgay45af9m078l58";
+"piff-2017"="xz2idyqgwg5y7r9ac0bykvfx533rd29p";
+"piff.doc-2017"="xwlsyrk4mczbchklsx5x8ip08zc5jk6a";
 "pkgloader-0.5.0"="0gd1w7ks997mcs2306l2hqwj0qqvsq7p";
 "pkgloader.doc-0.5.0"="kwq2lhl3zsihnkb2ii4h50slvalpvwyr";
 "plantslabels-1.0"="yi1s2470aj75chj1f5mi9961w9if1mpd";
@@ -4899,17 +5186,17 @@
 "plweb-3.0"="9d5dh5afrcjlcx279s7hkrsi0xja0fg0";
 "plweb.doc-3.0"="519cpfwspp2kxprill50lqhzimdi26jc";
 "plweb.source-3.0"="2ikq5nka9npdkr8gqkj8lyi1hqmxihzr";
-"polynom-0.17"="iy5nig2y416z7mdkbilg2z5s78h4wmmn";
-"polynom.doc-0.17"="94zib375nwmxllj2arl9j5ywkq130x92";
-"polynom.source-0.17"="2m6ymgi8vnyc6h33wwkxz13c9dd1v2r5";
+"polynom-0.19"="lhl6cw071xb7ivyzhdylq48ja6dqq377";
+"polynom.doc-0.19"="6sj89ph1gnbd0xa2f8sp457ip6v8sadb";
+"polynom.source-0.19"="9z3hzyf19ksy521v28p47h1dxh3c9n67";
 "polynomial-1.0"="k11f7cmzycx5q6ww5vnrxfp7xf3238r1";
 "polynomial.doc-1.0"="ffr0i9z96w9ahr8k1jx8klk1kddd1zm0";
 "polynomial.source-1.0"="m844kmijznga9r259cm2h977w4zdmi3d";
 "polytable-0.8.2"="qzfi66r74yb3cvgd5aicyflm4b25f6li";
 "polytable.doc-0.8.2"="36frl3y5hmlbh3cz9s17qnl4rjda1l5w";
 "polytable.source-0.8.2"="768zbijzmx54yrz1j8qvg8an6xis2hmc";
-"postcards-2016"="zvcijbngj8m505fcx22y1hs7y5jmn1kc";
-"postcards.doc-2016"="d1v423a7xl8pi8nqqzbr9y5ag8d2pkkj";
+"postcards-2017"="zvcijbngj8m505fcx22y1hs7y5jmn1kc";
+"postcards.doc-2017"="d1v423a7xl8pi8nqqzbr9y5ag8d2pkkj";
 "poster-mac-1.1"="vjpg0bc2f1qv0hr0kcxasymrchpwzn05";
 "poster-mac.doc-1.1"="8m0bk06l7y5bps6hn3xd40s6yb0m8c19";
 "ppr-prv-0.13c"="8znyclbgzli74aiciayqn88dp4p7mvsl";
@@ -4924,41 +5211,43 @@
 "prettyref-3.0"="a75q522ix098qzsnhxg9w12kwp62xgk2";
 "prettyref.doc-3.0"="vlnivj6n4wc0cf9l53352ph04wijswv7";
 "prettyref.source-3.0"="wm5367872id8pf7v2k6wbbqvbh5ysrv0";
-"preview-11.89"="jivswxy2iaf93r88biwd6mjz1r1gq5vl";
-"preview.doc-11.89"="2yci4yv3dpr36y0l1xf4f7ncabz7zsmw";
-"preview.source-11.89"="mppw5yr54vw3hamra27my666igakjr8x";
+"preview-11.91"="hw31xlmv5xplpnz3gjcmdf4vbmhvy87a";
+"preview.doc-11.91"="zmkw5whmxh98mrc705lcmqw7wj6k5h04";
+"preview.source-11.91"="67s0y9mv40fs0dgvm6zlkfs4ivhh9vrm";
 "printlen-1.1a"="fg8vfmr64nm31r8hycy81iqvqf6l9rim";
 "printlen.doc-1.1a"="95icr7kk7bkg56m6sy8g24if35pfhhwv";
-"probsoln-3.04"="nvsbwpnd5ljhb8qwk3951iw5f2d856kp";
-"probsoln.doc-3.04"="ff6ak1p5kh9hkfwwv7y9n6ajg18322aq";
-"probsoln.source-3.04"="jrv0ylpzni2izinvghqj4rypy05fz7px";
-"program-3.3.12"="5xp68xplac6hvnrdw0b20i89zsy7j7c6";
-"program.doc-3.3.12"="j9h3i71my7qd4y9h52pkhvmh5m3v34mp";
+"probsoln-3.05"="qxvjb9csxhrh20qfk4xh264q4pvb5ghl";
+"probsoln.doc-3.05"="n81pf053v27m4xj6cjnjmd8r0sb8lv5k";
+"probsoln.source-3.05"="k8gwixn5ssp97d05ml01k8f9z6ijspq5";
+"program-3.3.14"="fxq3hls6cibrc92g1dyavcr8s2qjxsr8";
+"program.doc-3.3.14"="qvhjjfq3msq1i9h5jf2nx54cp87b3bl8";
 "progress-1.10"="zf7iqvmc357pfg7phrc9gggwyb8rb0hw";
 "progress.doc-1.10"="2pylrgmyscf4p6ndba4jf87vfglxydrd";
 "progressbar-1.0b-4"="6zvflmdsm1vxkm3sjgmxpvl6jsw6vy82";
 "progressbar.doc-1.0b-4"="ahkr6nf44xv8czg4ffpx2qbxzwn7b24f";
-"proofread-1.01"="r0h4d2rdsl3gs80xqrhpwchd690qbnnf";
-"proofread.doc-1.01"="qvirpkaybc5zg4d14mqr50c1whwmhhqk";
-"proofread.source-1.01"="whsivyb61vndsal4xx15mjygg5lrw8q4";
+"proofread-1.02"="nd7fkidqjjpnr5f96yckpa078ahk7sr0";
+"proofread.doc-1.02"="nyygbyzxsc65bvqdas81sc1ljg0hwjbl";
+"proofread.source-1.02"="h8gqk9c90l9znwdhypjcvxdj7z8sqi4x";
 "properties-0.2"="is4zxlnpayim96h9vifb3wazi4hcl018";
 "properties.doc-0.2"="pdpdn0rbg28dq9qgry9w9j2wvzrl9sxx";
 "prosper-1.0h"="kwjg42wqipj8w4rmilmrpsl5spr8hzmp";
 "prosper.doc-1.0h"="9bfspx1labf3y4hhy7a7sv8ccfmqw4mx";
-"protex-1.5"="nabzysx9gppk6m03f1gk87z7cwp1f4fb";
-"protex.doc-1.5"="ywr6kwqqz2h19qmw31g6alsvyc0dbi24";
+"protex-2017"="ajf4lsibbzcr2ynvfpx2n4pnazfkng2k";
+"protex.doc-2017"="j9v7mdk5dnlhdrj5sl3afbvgqgpk0bbq";
 "protocol-1.13"="2mpbqs6r1sl8x79dbkzgg0vh0xxs89pi";
 "protocol.doc-1.13"="fzvldl69vw5kxljg5jm4qwcar1k2zg8q";
 "protocol.source-1.13"="x52qwan5dahs53bdm8dm450h2ljr7lsp";
 "psfragx-1.1"="pb5q4bhhn2zxm0vni6xwcyxq76wj85l1";
 "psfragx.doc-1.1"="bfx58if7s6z0sb5faslismic7jbx4ycf";
 "psfragx.source-1.1"="6ikq1jhicgf6109gdnd3ldng0ycy920w";
-"pst-pdf-1.1v"="q4srqj933xa6098b16ddri1jca815qbq";
-"pst-pdf.doc-1.1v"="m633qsngfi85z8g0fx2g1a1d483g0c8p";
-"pst-pdf.source-1.1v"="8hky06dvsz3anc6cc5j4chkagq95r7q8";
-"pstool-1.5c"="ibnvkjd1831fki2xp0kx3n0a9n9jpnsl";
-"pstool.doc-1.5c"="ax73a4jbcszfflfn0cyhwaywkchhm8a7";
-"pstool.source-1.5c"="0xgqpm7aq8s16kiv83mkipx0vhlp0jhm";
+"pst-pdf-1.2d"="av5rd425773zxnzlwdk4x5sf8wp9w7in";
+"pst-pdf.doc-1.2d"="k2zssqg4qf151a5iiw2nvk8lyrlh7md7";
+"pst-pdf.source-1.2d"="1lswqfmczya2gdhxi28czpznic888yf5";
+"pstool-1.5d"="lllzrjpvihfpvvc512wgbblgd01c2akz";
+"pstool.doc-1.5d"="wzpiz133xxvdvahrm6pnfxdlj4j70rz6";
+"pstool.source-1.5d"="0mwfdfn0w1jpx523b2mdnjiyilckraax";
+"pstring-2017"="whkbcsicbqlvz1pwjfypnvwwbbwqpwfr";
+"pstring.doc-2017"="gf1pmfhczjrkjgpawxbk6zqrwindadnr";
 "pxgreeks-1.0"="hdqmxzcwyd5llq80fakhjvx8whjxs8mr";
 "pxgreeks.doc-1.0"="hdm2s76j6vya85lid9lrkzhaj6bkvlda";
 "pxgreeks.source-1.0"="1i5jmxhyphz2mdhl742ydrzam336ix5w";
@@ -4967,12 +5256,14 @@
 "qcm-2.1"="d9xas7ra5n0hzkc22s6ky3qr752i1i2k";
 "qcm.doc-2.1"="ljb5bhy71jscf6hdw6xmxxyy3jyfa8py";
 "qcm.source-2.1"="zywcw16m4hk75ialbg92bx98snk64hpf";
-"qstest-2016"="girz5x7dqmr96mqyviwld4i06s1h4ldd";
-"qstest.doc-2016"="0w3r2f745k9kj4ig8yrq1w1l1dhdblcs";
-"qstest.source-2016"="z067nizm6rcjm6yz1141pxa7gm5yyfs1";
-"qsymbols-2016"="w1c7ni9qmy255nyg3hb0yf94p1b924n7";
-"qsymbols.doc-2016"="pfhp65iz5ybxccd7yjxg2rww0j9z2xhf";
-"qsymbols.source-2016"="mk7daalfvk3wyyhnlvbhb5144g6qm8xs";
+"qstest-2017"="girz5x7dqmr96mqyviwld4i06s1h4ldd";
+"qstest.doc-2017"="0w3r2f745k9kj4ig8yrq1w1l1dhdblcs";
+"qstest.source-2017"="z067nizm6rcjm6yz1141pxa7gm5yyfs1";
+"qsymbols-2017"="w1c7ni9qmy255nyg3hb0yf94p1b924n7";
+"qsymbols.doc-2017"="pfhp65iz5ybxccd7yjxg2rww0j9z2xhf";
+"qsymbols.source-2017"="mk7daalfvk3wyyhnlvbhb5144g6qm8xs";
+"quicktype-0.1"="40znnh6yxbhx1i7gsr0icvy5avhm68nk";
+"quicktype.doc-0.1"="ljcdha8k0ngr0ymwqbqbblgyslybvcgp";
 "quotchap-1.1"="0w1mp53lag54byxcb4jmkxmyd015jkpa";
 "quotchap.doc-1.1"="mp5shidfjdswgg1nwp918ijn6fnf0l31";
 "quotchap.source-1.1"="9wdm00jz0za5w1v1cv6k3nbi555mviab";
@@ -4982,11 +5273,11 @@
 "quotmark-1.0"="8inn8x79cps7g1iw3pfmc7lyky20vyxx";
 "quotmark.doc-1.0"="nkjdi0xl5yvvscs63kjdy7pk3dcvgvxs";
 "quotmark.source-1.0"="nhinvh37dw0n8wk1gvpqnp5l3fmaq3v5";
-"ran_toks-1.0e"="apsnqr722xmvb71kagccph79j45d35v5";
-"ran_toks.doc-1.0e"="b4sn1fcr6xdx0n7q99hm1aqcsc3wzcka";
-"ran_toks.source-1.0e"="41ml4p6as4h6gl4552m2avyg41rwcg3b";
-"randtext-2016"="bnb1sk549kzmljwjyb9gc45xr2ndckcz";
-"randtext.doc-2016"="9mpim50akqiqp54x6kpz8w4wdv9d12dp";
+"ran_toks-1.1"="075bz1afn45n2klczxlj38jzl27ihxk2";
+"ran_toks.doc-1.1"="av9qzf5q7524xncg54dqiq5skgvqxdbk";
+"ran_toks.source-1.1"="qzsgi73xl8kkccb4rmv8hmhq3l83c8gq";
+"randtext-2017"="bnb1sk549kzmljwjyb9gc45xr2ndckcz";
+"randtext.doc-2017"="9mpim50akqiqp54x6kpz8w4wdv9d12dp";
 "rccol-1.2c"="31w19kr365k8wkvkx91qqcw46fnl0sbk";
 "rccol.doc-1.2c"="80zx3h1b0wjw8qgv81kb4la3zd9hh9m6";
 "rccol.source-1.2c"="sqkkyhka856h4iirnvy4s8bdqlailgxa";
@@ -4996,24 +5287,24 @@
 "rcsinfo-1.11"="y7cymhiac6wvahhzkmsrkchrp2i5i9fn";
 "rcsinfo.doc-1.11"="v6wc6q5xv5rwbcgcvfrlkbk8lw3h4qz0";
 "rcsinfo.source-1.11"="86ss0sk5rzss6m4b5n96dwfd0vjh2acs";
-"readarray-1.2"="7pdq7rqds7kc6d4597k41hfm6gnm6lcs";
-"readarray.doc-1.2"="wwhdarzc69d5bgayfdcxrz4iam7mgg82";
+"readarray-2.0"="6f0daia3lp0ipi8swprpgl1pzh44hwc9";
+"readarray.doc-2.0"="bgfhvri7xh8kq5y1qykhzhjrv0vcss2m";
 "realboxes-0.2"="frdrijzjm4yi20fddhxb6gp314qg6bsx";
 "realboxes.doc-0.2"="95b3g7v3hnns9n8l1gv69a9b1jnl4za0";
 "realboxes.source-0.2"="2sj5y6k08cwcp8fs0ay7z7ik02is7vly";
 "recipe-0.9"="ya2zz3axlaax8f7qkz3rwkfwl6kc7hqw";
 "recipe.doc-0.9"="nrgg002rpx1gw16yx9pl4xfiyjg2lk16";
-"recipebook-2016"="z2m105warknssz9d0b5f0fg13mdjrwqv";
-"recipebook.doc-2016"="1w359b6rbd8cfvfa3z140hzsk7515m9m";
+"recipebook-2017"="z2m105warknssz9d0b5f0fg13mdjrwqv";
+"recipebook.doc-2017"="1w359b6rbd8cfvfa3z140hzsk7515m9m";
 "recipecard-2.0"="ywrn03f3hy5hyzszpghn9rnjkj9a3kqr";
 "recipecard.doc-2.0"="1g67mikrdxmhpn4xgpnlriapp4als1wx";
 "recipecard.source-2.0"="7g35xa8kbcsrxxmp9xxk3rgvas158m9h";
-"rectopma-2016"="j8pxsc46j0m799x9srd74d7q4jjxjdwv";
-"rectopma.doc-2016"="7h3v5rpkvxcmv1nj0wzxpgn4whs1gk4b";
+"rectopma-2017"="j8pxsc46j0m799x9srd74d7q4jjxjdwv";
+"rectopma.doc-2017"="7h3v5rpkvxcmv1nj0wzxpgn4whs1gk4b";
 "refcheck-1.9.1"="llb529mc4gj9wf4zzs7jz9p2qgngwxy6";
 "refcheck.doc-1.9.1"="hvcfjpx9g9wiaqr70vmrpkgqy4i7xikg";
-"refenums-1.1.1"="8zxc6yyp3c597ydikw4zc36ri5xhlpid";
-"refenums.doc-1.1.1"="gnsi301rb4zxvcjf6cln28j1qmhp5i8i";
+"refenums-1.1.2"="8zxc6yyp3c597ydikw4zc36ri5xhlpid";
+"refenums.doc-1.1.2"="jqqqwvr0bd163njgkfgz2aj1jlgmlnxk";
 "reflectgraphics-0.2c"="bbpagcn17kwhp9jzp3r6kp23qbr3gqs0";
 "reflectgraphics.doc-0.2c"="klwad1c3lbcf9dga240cipdhf8vm4q0h";
 "reflectgraphics.source-0.2c"="1pwn5m9mclwsmwalal0bcfvi5sq1jh37";
@@ -5035,9 +5326,9 @@
 "regstats-1.0h"="zkxc3cbq3fr5rpwv3lw3znrs9sn1ajmc";
 "regstats.doc-1.0h"="5ddawlcn7rqzs7i7mjjj8zi3q60qpal9";
 "regstats.source-1.0h"="kafv0h7yl5qhzgq4j4ay54cm9lqgd1w3";
-"relenc-2016"="0ksy9dhzxf7dh2sgnais817krjdrnyip";
-"relenc.doc-2016"="w2s26knmf0pfnbvxbj3f2xmcvjf8mgkl";
-"relenc.source-2016"="vhwmn0hxlv5njl4v2ljz5z4kbi5n4a8g";
+"relenc-2017"="0ksy9dhzxf7dh2sgnais817krjdrnyip";
+"relenc.doc-2017"="w2s26knmf0pfnbvxbj3f2xmcvjf8mgkl";
+"relenc.source-2017"="vhwmn0hxlv5njl4v2ljz5z4kbi5n4a8g";
 "relsize-4.1"="l9n0cv3vjwqlhxw58bnj4gh1qr0mbkh9";
 "relsize.doc-4.1"="bmv72xvd2n40rclz0a5cw128a4m1khl2";
 "repeatindex-0.01"="6zzlr3miqb7p0q3h1kyaly6ykzwjlq0k";
@@ -5048,23 +5339,23 @@
 "rjlparshap-1.0"="584zbnkzrqjydg9hz42ayl9r806sd4cw";
 "rjlparshap.doc-1.0"="g4bkg84j236faakga1kl593bjw1p9wq6";
 "rjlparshap.source-1.0"="gys3kddji7j89c63a2kzz7z8xjdakpg5";
-"rlepsf-2016"="zvgnjwbrznazfy89cwbk9injrg0hk19b";
-"rlepsf.doc-2016"="q4jpki613c0b9kx9bxzqw3v7m5ggj4w9";
+"rlepsf-2017"="zvgnjwbrznazfy89cwbk9injrg0hk19b";
+"rlepsf.doc-2017"="q4jpki613c0b9kx9bxzqw3v7m5ggj4w9";
 "rmpage-0.92"="iqvgmj8ygy8mcqffj9wl5xr3l4g19w7f";
 "rmpage.doc-0.92"="nzm10y262ql87jqmlvbx8s5izflz8nk7";
 "robustcommand-0.1"="pclwgpigb6jf5myrirrgb35jdsrc1r54";
 "robustcommand.doc-0.1"="8236m9s2klnlvii7733r9vkr28ma0758";
 "robustcommand.source-0.1"="a6wczmjbnvfqfqg0cxbnq7srr71w3l6c";
-"robustindex-2016"="l4xnmarby12fyxsg6wik044hqgh1a9sa";
-"robustindex.doc-2016"="xl6sr4f0j3a7inc615lb8jvxpbpnsndv";
+"robustindex-2017"="fk6hwg4fs0d99a69x5r94qs51xkagc30";
+"robustindex.doc-2017"="6j89lmrllkbnpx2i5c0k14bq7498mc2a";
 "romanbar-1.0f"="77m3d5fv4abc2xx6nx5cvzpkshnbkmr8";
 "romanbar.doc-1.0f"="7ha3ybbzivbkc7fllhfjv1mlvq20k6i0";
 "romanbar.source-1.0f"="3jn06jd260yipslvs8xjflwd49pzrcqb";
 "romanbarpagenumber-1.0"="x8gs1z6nn976praar888l74avfd1ha6q";
 "romanbarpagenumber.doc-1.0"="cyfpy1g5g14jlxl83a7ngcl631297a58";
 "romanbarpagenumber.source-1.0"="qs1ia3flkqsd1psbha7bfms1anfg336v";
-"romanneg-2016"="7w6wmvkyzy4jzs8akhaswqjpv1lh9lxz";
-"romanneg.doc-2016"="m7rc0j7xbkly1zh63lrym8pzgp1g3ivh";
+"romanneg-2017"="7w6wmvkyzy4jzs8akhaswqjpv1lh9lxz";
+"romanneg.doc-2017"="m7rc0j7xbkly1zh63lrym8pzgp1g3ivh";
 "romannum-1.0b"="8l5hrx8svnn1pv9qd3c7y6gxy25fr5r8";
 "romannum.doc-1.0b"="1wlc0m18vg6vl8sgxvj4i3ca4kyfl9c0";
 "romannum.source-1.0b"="h9rkrds6v7b0pvgap090ja271k5jnc7h";
@@ -5075,8 +5366,8 @@
 "rotpages.doc-3.0"="fh2a3xcl4f5mq95d2ibsgmml6pq95cd1";
 "roundbox-0.2"="g1k35s2jqgfm0ih16zf59w470kzv450f";
 "roundbox.doc-0.2"="97dr0pg7689mm504pld75cmnd3vq61rb";
-"rterface-2016"="l7szd2dbrky3idmzkx724b1ks8d9crwm";
-"rterface.doc-2016"="3hkrf5qycaq84dawxyv5a829bv8vz0qg";
+"rterface-2017"="l7szd2dbrky3idmzkx724b1ks8d9crwm";
+"rterface.doc-2017"="3hkrf5qycaq84dawxyv5a829bv8vz0qg";
 "rtkinenc-1.0"="bgvb6v03sbayxss84awkaa98i1hza4rm";
 "rtkinenc.doc-1.0"="ggkmbwp3kxa1zs4c5f7v3r5lk5v8pdjr";
 "rtkinenc.source-1.0"="iavp7gzq742v267gf3hjq8vwi1ywqfbj";
@@ -5100,10 +5391,10 @@
 "scalebar-1.0"="107wyhbx5wzliqmncsqlaykg7qw5ldwa";
 "scalebar.doc-1.0"="a4krk1zpi2yiyri88r96363l5k5kcjf5";
 "scalebar.source-1.0"="5f555kz7b0rbxh4vsmqa8hfqlv7790cf";
-"scalerel-1.7"="9lj25lw1p1x4lgw80jp46c03z7g2pdn0";
-"scalerel.doc-1.7"="1c8kka7zwlh3risn5kln27ch2d7hwhnk";
-"scanpages-1.04"="zgcj5yqrvr8wn4lgsys5r1lda1yv7vb5";
-"scanpages.doc-1.04"="jvavhy8f0zi9p3nyyjmbyhk743a4mqi2";
+"scalerel-1.8"="bnzdi8d0mf0ppkvwypxvb6wl2lyw4mpq";
+"scalerel.doc-1.8"="bpamgzs7nr8gfam69mad8qmgjs6hy909";
+"scanpages-1.05a"="vl8kzqsj7dlc21h9148c4cgbrwg92k2w";
+"scanpages.doc-1.05a"="8rc3sz2jw47xz3rz25dfw7g3gssndz7b";
 "scrlttr2copy-0.1d"="jw87bnb7phfp7nmvp4gvbi6nhfwifqph";
 "scrlttr2copy.doc-0.1d"="6pfnhhnjm97ap2zbi5bjj011wqbr2yg4";
 "sdrt-1.0"="2pcbwfywj14n08187899xjdhrjr3zzlr";
@@ -5115,43 +5406,48 @@
 "sectsty-2.0.2"="7677w338qg7wxalski08070328f4yjcc";
 "sectsty.doc-2.0.2"="plwwncg7vkhqrkkh2b1a6wpp57h6x64q";
 "sectsty.source-2.0.2"="r3z90f7w1nw4hpn61fcrn8iy5m1867jk";
-"seealso-1.1"="qrm517pv0z8rz1z125l4p4xrq1cs64mv";
-"seealso.doc-1.1"="zghj9bw3g8zf9x4h54lw1vjv6b1arvm1";
-"seealso.source-1.1"="625jnli7knayilbcp0np907aqpdfyk33";
+"seealso-1.2"="2ndffdja6sdc1zgi9ayhfgcfa4ihrqjs";
+"seealso.doc-1.2"="95n5alxkf7brg6dcad5jz0mfnn7w42fy";
+"seealso.source-1.2"="511kb0ka070b9q0973c1khain6yslqmq";
 "selectp-1.0"="fp7iiqkb6xqw55v28rs80in6p47li70c";
 "selectp.doc-1.0"="wy83q63fdm33il8rvia43y1kq51rkc07";
 "semantic-2.0"="ky4ggvzl5171nda0329151c9vbaxs7gp";
 "semantic.doc-2.0"="b1hyb592d0xx35p5dqppyfgykg37xx4s";
 "semantic.source-2.0"="4fwjw0axn8d3ychsqmmdy6x73ckciv9p";
+"semantic-markup-2017"="h10qljl8ja159j74fvavwni1d7vkw8ag";
+"semantic-markup.doc-2017"="6p97lyrs0dsr3sf3ckk3jv5gkc5m1jcm";
 "semioneside-0.41"="62v5zs95qqi1i0xpm2jmhcx9pa24jymn";
 "semioneside.doc-0.41"="2z2azzz07gj105jrarifhx3ldjc9v09a";
 "semioneside.source-0.41"="31d1fggm0km56jv6qr5yjv7da6y0ifsv";
 "semproc-0.1"="gsf23afimbq3nhqka6vdbxjdasqc9f5j";
 "semproc.doc-0.1"="iki2yxxxmq90xn2bbvxv942rl3lbfi0c";
 "semproc.source-0.1"="rdzjw86dk757ddhwzw3z163zjigjnd9b";
-"sepfootnotes-0.3b"="rff9mxr6cwgznnzdizrjvi53bplfyw8g";
-"sepfootnotes.doc-0.3b"="9h41iw40si4cyxqghlawhfp0nfdagxwp";
+"sepfootnotes-0.3c"="chdd6rfn5v91c7sc3anf8rq1w7i49g47";
+"sepfootnotes.doc-0.3c"="h9k1nlwdgxynifqcllbplw29hhakzsfx";
 "seqsplit-0.1"="zc3fmzgnaxlx4jvbmqr4g22xqqr46qm5";
 "seqsplit.doc-0.1"="ans9jwdygk6j84fiwxjwr4z07rsswsw4";
 "seqsplit.source-0.1"="syxc6bkp4i55zvrs8sxg8ncq5gmq74xh";
-"sf298-1.2"="4db1p9hn36bphh3rk2cl6sccvb4wbwz7";
-"sf298.doc-1.2"="xmwhqhn7shdyn4sn77fc3c50q7am3422";
-"sf298.source-1.2"="ab028wsqd7yibla663q3d1d0iziqi1kd";
+"sesstime-1.0"="37va0gf21j43zwcjy66635ascb0753g1";
+"sesstime.doc-1.0"="k3d05bkkzcv88dx9bdl2qa6y4nxpfk29";
+"sesstime.source-1.0"="6f9z1h82kcv9wj8b0lbhfj54j0q2cw33";
+"sf298-1.3"="nvb0bxh78nzvjk3x4d69mmcdbhfxnm03";
+"sf298.doc-1.3"="hdnvzghnkkgy79q6r2b9qqx9gda162mc";
+"sf298.source-1.3"="ixwa6c8c44ph14b5a0rz0js00jac9kpv";
 "sffms-2.0"="jaarxw1lmdgsac04fzdggq0pkaqp0y8f";
 "sffms.doc-2.0"="kqfjz0yn615f068v6349lgdp72gw2wkk";
 "sffms.source-2.0"="h5sazi91347l3qdkn6ghw6ywyp5ddryh";
 "sfmath-0.8"="mkmjhc5jg8ylbjdzx3yal2r3spxv3npz";
-"shadethm-2016"="6d2vr8xkis6ah0032nrbpbh3rs29xh2r";
-"shadethm.doc-2016"="ddw9pngafxfcx4cl0fh4dmnaqcfqnyfn";
-"shadow-2016"="xifs7y18wdkg1kj656swlvx7cpswmgma";
-"shadow.doc-2016"="ppc90h7d8qm8382lp2vzn5piy0mb7d4x";
+"shadethm-2017"="6d2vr8xkis6ah0032nrbpbh3rs29xh2r";
+"shadethm.doc-2017"="ddw9pngafxfcx4cl0fh4dmnaqcfqnyfn";
+"shadow-2017"="xifs7y18wdkg1kj656swlvx7cpswmgma";
+"shadow.doc-2017"="ppc90h7d8qm8382lp2vzn5piy0mb7d4x";
 "shadowtext-0.3"="m2qsn137ij2l4lq4h0s5mpw1vvic0k4l";
 "shadowtext.doc-0.3"="894a2s4awyxc0vc7d94fp0dfahjq4021";
 "shapepar-2.2"="hps8xx8z0vviywd61vhkh8l758c0gndd";
 "shapepar.doc-2.2"="6i0vwmvrphkjrqphk7vmxphhcvj89f0n";
-"shdoc-2.1"="1jvjqbc9zilg5k6vrhhz7x17p219rc5c";
-"shdoc.doc-2.1"="rdwms0pw74k1i6p1ll5m9dmrlbpryrcp";
-"shdoc.source-2.1"="d5rb46jw9w70pcgi0b0vgj81a9xwb232";
+"shdoc-2.1b"="grva4fsbp32pq2x7g4wb415y5cmf4cnx";
+"shdoc.doc-2.1b"="ba16nzmjm53zjq81w2zb6npd21wjfg31";
+"shdoc.source-2.1b"="mqn7081yqr3l1yhv3cxxrq6jwnd2h6sq";
 "shipunov-1.1"="1k15najivxdmqvb3a6lm4wky5mi31a2r";
 "shipunov.doc-1.1"="x0hc94hmncixvhicnja1kpd6y3gqg59w";
 "shorttoc-1.3"="win5ajcivg0ipf38dx85vhhmfjfl1scq";
@@ -5165,9 +5461,11 @@
 "showcharinbox.source-0.1"="v0mn2l95n4mhmxglwrqzwcs9h31hb99j";
 "showdim-1.2"="8pk9x9rwpa46lxxxcrdrj8qvifs30x19";
 "showdim.doc-1.2"="g9zbjc1awcan45gik1czyz2ggnygzzpy";
-"showexpl-0.3l"="v9383ryd8k5a8sif6np3844pfqkhwsgf";
-"showexpl.doc-0.3l"="83jbcrang4b3r7qm5bnsf4hjzmqql1j2";
-"showexpl.source-0.3l"="x2y902cyl1bc50jkq9bnhp4qsiw831sh";
+"showexpl-0.3o"="d6w2jrriv8w2vplqpgdi67wyl6wfaf7g";
+"showexpl.doc-0.3o"="v8jfqrzrsjxfvxw26qfw7ifj6n56q1cm";
+"showexpl.source-0.3o"="fir737kinjxq1w6igrsncks7bj2asxy6";
+"showhyphens-0.5c"="fcmfcmzkv9k6k2d6l2brhwwvffzz3bcd";
+"showhyphens.doc-0.5c"="451qz6c2k3mvnr488s138m8wmgsf1zvs";
 "showlabels-1.8"="qpsrz097whnqv7phnrpff1j4spc0ccrx";
 "showlabels.doc-1.8"="7pi69s9qfv69piak041lxa0vy3swg91b";
 "showlabels.source-1.8"="raf4jncf7q4i31g7pswqriafllv6rw3c";
@@ -5192,21 +5490,21 @@
 "skb-0.52"="4abwsdqy977aj45v4frjhf5p4kqi08aa";
 "skb.doc-0.52"="hgwacvlqab84b3nv6rnmd79irl1ilzkn";
 "skb.source-0.52"="v3b3ggy38vp9z5b9n802dg0xi22yjpwz";
-"skdoc-1.4a"="2z0djnn6j4ki23ns0z48g5z9ds6hra8j";
-"skdoc.doc-1.4a"="cy1x88m6g1mhqj86sfcfg9yx316ly49k";
-"skdoc.source-1.4a"="14zdwj0g1rc7phl9rvvq62fl610ix5a1";
+"skdoc-1.5"="6f6ripc6ka0yz9zjjjc7d30f43ii6i8d";
+"skdoc.doc-1.5"="27ks1fh7hmfyk49yg5xjw4688df5rcwl";
+"skdoc.source-1.5"="7xp965lqrh9zxf1pdqk8bzjakl3msxkq";
 "skeycommand-0.4"="w3sqnw1xyx8l1qb9h7j8jg8z3f6xsnvi";
 "skeycommand.doc-0.4"="y8kcbdpydw0an53vfw75nvs8f5rhp5f9";
 "skeyval-1.3"="r39dajvb7hh6437jbq3gly44i22im66z";
 "skeyval.doc-1.3"="g9gr3bwzslymzx3a5kja4n4s1n0ns5lm";
-"skrapport-0.12e"="zvy4ls3xmpkygfx4vkk49kwvc33ms2zp";
-"skrapport.doc-0.12e"="aaaf30yc35w0nbr2q7l7w176675wvlqk";
-"skrapport.source-0.12e"="zw6bbwchc9h5jkb8b0mrrhbpw0ngs2ma";
+"skrapport-0.12h"="i1vk1q4342k1vsxw251ky6gf7lmp8bcq";
+"skrapport.doc-0.12h"="r5rhlrl332zv18ssymapb95cfmlbgl2z";
+"skrapport.source-0.12h"="6dmc35ld656ikjiy38lm4w59yhb6f22q";
 "slantsc-2.11"="mnqakna7b6f0pygw4c66jmxy2r2srpyq";
 "slantsc.doc-2.11"="p4z9p7p33xchy1vqjqpiyw38is5irja2";
 "slantsc.source-2.11"="8c2vrhsrgfpqb47wxik1inq8xpa5r50g";
-"smalltableof-2016"="a0sx95bj2ampjw3b7g4p56ji7fqwmdiq";
-"smalltableof.doc-2016"="1qrbnkki1in5kv142d0qzl3rxmrclm69";
+"smalltableof-2017"="a0sx95bj2ampjw3b7g4p56ji7fqwmdiq";
+"smalltableof.doc-2017"="1qrbnkki1in5kv142d0qzl3rxmrclm69";
 "smartref-1.9"="7pvgdpjcdvdxbkb1ag4dal46c1hg4d53";
 "smartref.doc-1.9"="hj0c7i3climwjy64h98ddab5skczf3mh";
 "smartunits-1.2"="z3kj39xpdk8pa7bzqdjd6g6qlhwx2vhx";
@@ -5219,10 +5517,12 @@
 "soul-2.4"="161jbj81y5m8rclwl6z8pwpbpc0axy56";
 "soul.doc-2.4"="lssr7w6ry8p02mzmwyx7a2zzss2vmbkb";
 "soul.source-2.4"="9w0g3y2pqkzsbg8jdr1vkmn4wlrx1b2i";
-"sparklines-1.6"="25bs0ffif63k1hyaikx3ncy9z48czp2p";
-"sparklines.doc-1.6"="c41pw93y8iy7yx0bc7bdjdyc0zhvx0bx";
-"sphack-2016"="gdrva3zalq63d7j737247ja9a22abdxq";
-"sphack.doc-2016"="3rzyc3sxq2bnlx5pw5xz1kb2gb36brgy";
+"spark-otf-0.04"="ffinni2ipxnxx47dzwpd2flvqfibqzhk";
+"spark-otf.doc-0.04"="i4jmg2h3nj27y585znj2mmdfgj231hh3";
+"sparklines-1.7"="swn54z70rhmbk917dpl37mfr3sx21525";
+"sparklines.doc-1.7"="mjpd57symvhnv6jjzynalmpqy3l4szfa";
+"sphack-2017"="gdrva3zalq63d7j737247ja9a22abdxq";
+"sphack.doc-2017"="3rzyc3sxq2bnlx5pw5xz1kb2gb36brgy";
 "splitindex-1.2c"="72wrcsz1vmka4qal90la093asf12hs6j";
 "splitindex.doc-1.2c"="gf9j1mi46ih0xanr4lzl43gpfjpjws14";
 "splitindex.source-1.2c"="1y60d6s6ws70dgjhn239h4x8c77hjmdz";
@@ -5236,20 +5536,20 @@
 "spverbatim-1.0"="cpn7cc2f4ila3xfq8yrr5456y2p5navw";
 "spverbatim.doc-1.0"="bnw2p20z8ga1zynk3v8khpgfgbjb5jpx";
 "spverbatim.source-1.0"="ivjx22khzgn0xgzbkb5y8q36i9wh3n49";
-"srbook-mem-2016"="30fmldc7ygh6c4a64z9cb5qcr1z400vs";
-"srbook-mem.doc-2016"="mfn2i8vs1h646gn5fcs3zh7lrn6gj2si";
+"srbook-mem-2017"="30fmldc7ygh6c4a64z9cb5qcr1z400vs";
+"srbook-mem.doc-2017"="mfn2i8vs1h646gn5fcs3zh7lrn6gj2si";
 "srcltx-1.6"="pamgi7alvxixzd4dy68p502ifdlnz7fa";
 "srcltx.doc-1.6"="1lja1az3vfzxkf2d7pl4cyxbliqml0hc";
 "srcltx.source-1.6"="wk74304mhb77p653l52gmhc990ic0dfh";
 "sseq-2.01"="rypda83sq8zgcnd6fmip2nw85dpqkb2h";
 "sseq.doc-2.01"="2zw94ka78zap6914m7r3xc9slzjr0vig";
 "sseq.source-2.01"="1fw0mc1crac3fps3s62rskzhn946zffb";
-"sslides-2016"="5j8zx3q4f3cm4c78q4vn8cbvp33frz1q";
-"sslides.doc-2016"="xsh6d0caydlgs3kfc0zgw4m79j1vkrxs";
+"sslides-2017"="5j8zx3q4f3cm4c78q4vn8cbvp33frz1q";
+"sslides.doc-2017"="xsh6d0caydlgs3kfc0zgw4m79j1vkrxs";
 "stack-1.00"="p32bbliciimyyfpizvi0cdrw7nzkmlx6";
 "stack.source-1.00"="x3hkdwa9hip4zp8paipd8yjjz10pysn6";
-"stackengine-3.24"="y7yrqnqakzkn5by4xa4ihijcqg1cmm6x";
-"stackengine.doc-3.24"="9f1c8n0krxp1p3jc0w5kyx5vw320104d";
+"stackengine-4.01"="nivan4carz07sqpiymvlkjxswkqa9mjd";
+"stackengine.doc-4.01"="1xfhqhhl578sbpgp0s3d2nhddv85dlwl";
 "standalone-1.2"="fvknw62iws8v57ibh3518l13n8v6wdyp";
 "standalone.doc-1.2"="5cvw78c6pajp17knfv1dn9y7znarmvzx";
 "standalone.source-1.2"="017d64zzqwvbf2q32656115qsmsn1icp";
@@ -5262,9 +5562,9 @@
 "stdpage-0.6"="1vx4hlfyz6s89qxqk8kssq2z4j4bv7x4";
 "stdpage.doc-0.6"="qqh8y677jzbamylbm9jyx679sykp21ar";
 "stdpage.source-0.6"="asizav9m4vbfcrgl6c2qhnzsvl4ngmzv";
-"stex-2016"="rnkv33n0w6nhfz91qls1a7nb2xjc7i6w";
-"stex.doc-2016"="l7fpwhdxi3q4qgbsi3wb303hifwz96kl";
-"stex.source-2016"="vcvwm90hc222rm3b2z2iryfz869fzaf7";
+"stex-2017"="rnkv33n0w6nhfz91qls1a7nb2xjc7i6w";
+"stex.doc-2017"="l7fpwhdxi3q4qgbsi3wb303hifwz96kl";
+"stex.source-2017"="vcvwm90hc222rm3b2z2iryfz869fzaf7";
 "storebox-1.3a"="kc1a9kwyd31s1376b16hidk21cz2q2zv";
 "storebox.doc-1.3a"="qhjcw6fzxlkzpgnk0ra7l6fqp10byiv6";
 "storebox.source-1.3a"="6zzmya7fcjajy73i8iys9584bldh18z2";
@@ -5273,11 +5573,13 @@
 "stringstrings-1.23"="3jyx0rjn2y5s3i7mdwgmbfygfqmph5v9";
 "stringstrings.doc-1.23"="iwlccyqlbypigdzw8dmpfif08wq8nv2g";
 "stringstrings.source-1.23"="lfm6lqdy2r3lazymqcca7padzmcvb0a6";
-"sttools-1.8"="pwbr1qlk309abm3m86ixdkinj9gyxl4r";
-"sttools.doc-1.8"="bgqj77jq95pf13yp5jcxipgdcxamg35v";
-"sttools.source-1.8"="20s5nzb743ki80vh6if55nl7kiyxsjvm";
+"sttools-2.0"="hhzhgswnm5a26ivlaskdzmma472vsl11";
+"sttools.doc-2.0"="rdvrvdri5g9pb2pm6m95sibp73a73d9w";
+"sttools.source-2.0"="95j75a9qmcpqi8b8fm2hagdmw3fzcn50";
 "stubs-0.1.1"="5ia769ndpi4pcrbg6cljdbpxsx353qlj";
 "stubs.doc-0.1.1"="apc0wxqj03fhbab6nwwh5rvzc6i9la8y";
+"studenthandouts-1.0"="3gss3z8gv8fyyj3qygmwmbp1jxs7k7dn";
+"studenthandouts.doc-1.0"="qjih5qdi7861v2mafv4bga62i0lmss3z";
 "subdepth-0.1"="p59zl1bmd52xsf51l1qf4ij5j7qj9f8w";
 "subdepth.doc-0.1"="973874d1ri46l5ixgzrlqxf09lxbhq3x";
 "subdepth.source-0.1"="sdij1y3j4dy8y19pb4aw2azb48i5rssi";
@@ -5305,9 +5607,9 @@
 "supertabular-4.1a"="51mc5fbbk13mmpya5n8lrx5yyk4k1167";
 "supertabular.doc-4.1a"="jmm0dxfps5p36r6ds1fpx00spx10rrv5";
 "supertabular.source-4.1a"="0wa3rcn787hn4707zbdm0jdfflp0dyf7";
-"svg-1.0"="p4v70j4n7z1awmq9xz5rb7cl3adll7qf";
-"svg.doc-1.0"="y13aisc5gvx1b42n634ndahzya0xc5fh";
-"svg.source-1.0"="aasj52d2yl5i53pzznyz6jifyypzfa1d";
+"svg-2.00b"="v4ifzawiyk7r2xpgk6ykg63k53kbzq23";
+"svg.doc-2.00b"="13knr2lyrfzbac6w8nrkrvjf48q4qv56";
+"svg.source-2.00b"="7bg9hr061s1ndndxrrlkra3inv6yc5v8";
 "svgcolor-1.0"="ld3wccj2cxdhv0xyz7qmxcvr6saab2s2";
 "svgcolor.doc-1.0"="nj7w6bihmr8hmvcykya9nkxlkhmlcw6r";
 "svn-43"="hv7xk90h5qb4ilx7f4a6zybijnhba9ic";
@@ -5319,8 +5621,8 @@
 "svninfo-0.7.4"="761kpr460h6nfczsf1vakdj9r947in1s";
 "svninfo.doc-0.7.4"="qlhr7rj98m7g55kgrms1jjw3wp3k7z4v";
 "svninfo.source-0.7.4"="xsf1rs0ar8ris0dh8qbslxwx5i0ci6ck";
-"syntax-2016"="1bvja2hjsw8p68202f84sbzcrs0f7d27";
-"syntax.doc-2016"="pkf7w0xwcnl7cm74z99bb32v4ycn4wmr";
+"syntax-2017"="1bvja2hjsw8p68202f84sbzcrs0f7d27";
+"syntax.doc-2017"="pkf7w0xwcnl7cm74z99bb32v4ycn4wmr";
 "syntrace-1.1"="02njfsdqh7ssnjcsnpmzi3iwxz2yfj9f";
 "syntrace.doc-1.1"="v5q7643l6spib4kf6mma67pl7xm8aaqc";
 "syntrace.source-1.1"="qqmfivdpilm8qp26v7kf3lcvfp582jv0";
@@ -5330,24 +5632,24 @@
 "tabfigures-1.1"="spwphj1m563rip8gq09fb97mz85yqwiw";
 "tabfigures.doc-1.1"="l68l551i2skm8yns6r2f1ji0kgxhx56a";
 "tabfigures.source-1.1"="6r4li6abzpgpv008xhy0x3lyywpy2w5d";
-"tableaux-2016"="b4zz5qhahr3kxwi68l2hh92w3v29gdry";
-"tableaux.doc-2016"="g4v3wbms4yw4wmzkm6v9aj3l46l4fcxy";
+"tableaux-2017"="b4zz5qhahr3kxwi68l2hh92w3v29gdry";
+"tableaux.doc-2017"="g4v3wbms4yw4wmzkm6v9aj3l46l4fcxy";
 "tablefootnote-1.1c"="axmzyplpbyfmhfx7jsijk3aaqcyc7c9k";
 "tablefootnote.doc-1.1c"="z65aphzdy953r1r3a5lzpvizmhs638g7";
 "tablefootnote.source-1.1c"="a1qbk028v26pld26654hsl3j3fc90js3";
 "tableof-1.4a"="p1z06zg544y0rkgbf32brizn4mlzwcc0";
 "tableof.doc-1.4a"="gcxvm0qp1wkr13l7770cdhb73za4dq67";
 "tableof.source-1.4a"="kxwaxxm6596mv3vpbzwav1kb7g6irvfl";
-"tablestyles-2016"="91l6ysgskdcijj4zh756956i9s4cmlhp";
-"tablestyles.doc-2016"="8j8dyc0fxj53xi6jq8vabn7hzrd8krsf";
-"tablestyles.source-2016"="5kdg1v2s60j7cmrr0w0q2qv58jznkxk4";
+"tablestyles-2017"="91l6ysgskdcijj4zh756956i9s4cmlhp";
+"tablestyles.doc-2017"="8j8dyc0fxj53xi6jq8vabn7hzrd8krsf";
+"tablestyles.source-2017"="5kdg1v2s60j7cmrr0w0q2qv58jznkxk4";
 "tablists-0.0e"="5f0qad58xlf65y5204jsg3ajlrmgga3y";
 "tablists.doc-0.0e"="2p6b5b3b693cicbsid4zfr4lqvyiw0z0";
 "tablists.source-0.0e"="jwabyps9hwly3s2xx4l0vs3xwkhg0a33";
 "tabls-3.5"="gdkxv2mfqga5w7pmc8dszx9csma95imb";
 "tabls.doc-3.5"="dg078n18gai6glbgwh0p45560s4zjs4y";
-"tabstackengine-1.10"="cvf8b9jnlcbwa89k82l5km7hqw022wxl";
-"tabstackengine.doc-1.10"="i69wd9zz9347sddpl82nm2f26s3r286s";
+"tabstackengine-2.01"="hwa615sc1wak2gc1397v7f0nadmgy924";
+"tabstackengine.doc-2.01"="jn0a7whrqs5hdkc94ahn6hykrkkzy4k2";
 "tabto-ltx-1.3"="cgxvfk7sdxxpczv7x1jw5460lwg7bak6";
 "tabto-ltx.doc-1.3"="irjpmicaxpxw947w4p3520g18cg27nmn";
 "tabu-2.8"="mpb7wm2l1apzi7hygr6v0nywm77z1k9b";
@@ -5364,22 +5666,22 @@
 "tabulary-0.10"="4lnwhfr4bnawqgc5hvmp9m5gi6dmw679";
 "tabulary.doc-0.10"="439yc9m6b5na2i8kg8axqgx2pwhlv2aa";
 "tabulary.source-0.10"="x6a4q2rfm6z97ylwh2skqcpjlf7kap5s";
-"tagging-2016"="hai0v2rkgjvzxg7f35blqchqpvax05h4";
-"tagging.doc-2016"="nkfw3b02dgag42a8zan5dvlj0dlkzb0k";
-"tagpair-1.0"="sp25yhzr4864qlvrkhpbg4fmb6li6ysz";
-"tagpair.doc-1.0"="2zcacbsp2kvfbim1rdiampyjvdlwxlvq";
+"tagging-2017"="hai0v2rkgjvzxg7f35blqchqpvax05h4";
+"tagging.doc-2017"="nkfw3b02dgag42a8zan5dvlj0dlkzb0k";
+"tagpair-1.1"="cw696a7ccw159f38sa6av7f2cr2w5mcl";
+"tagpair.doc-1.1"="n06xlqq579by3hq5rwsmh0l6x1damdrs";
 "talk-1.1"="w3vffx02kp18gxkk2khsnhcpzhd6kvjq";
 "talk.doc-1.1"="1hcv41gh3rcxncfqv75w92a2hdnb55nq";
 "talk.source-1.1"="mvqbaz1vwya42g0idhhp948dxmb5z0q8";
 "tamefloats-0.42"="biipxghplzwd03drjpiisijhdzr4i04i";
 "tamefloats.doc-0.42"="mnmrchq7k8n04dx35r1plzxcw46hx4cj";
-"tasks-0.11a"="j06mhlvndc4pik32kzg4r267cdlxw8v2";
-"tasks.doc-0.11a"="6ng9523apz6aaxd9vl6v5lpyw3y9fm2k";
+"tasks-0.12"="a58wppbccpfxnmsc5g04qvpf0zyv06gk";
+"tasks.doc-0.12"="pqz2is810r3nypqn63w74xi8fg8vp2ap";
 "tcldoc-2.40"="r9i94qmf78q9j3adkzfly43riv2bzdmr";
 "tcldoc.doc-2.40"="fh6a7m41gxn4988pwr90ph25gg26ky40";
 "tcldoc.source-2.40"="p007ccff6w6d3nlpsp3q476vg9m4rjq9";
-"tcolorbox-3.93"="n1723bwhxgyfnf8rd8pyq2y2jifdcq0z";
-"tcolorbox.doc-3.93"="mhq507zmwqdxy537ivyl6szkzji342yr";
+"tcolorbox-4.11"="8bg92bf23dfwbka9y6h524kk72z7igng";
+"tcolorbox.doc-4.11"="b8nlmrqhnlxn5cdcz47hvd3dslb6mjin";
 "tdclock-2.5"="dzb2gj8y1dv7qm5mn7xfgzdq9aydqjk8";
 "tdclock.doc-2.5"="sgdpiwcnkifms1lx7xicl3xj194lfhbg";
 "technics-1.0"="cav50vxgp01465wa07bmza4blgsv49wh";
@@ -5387,9 +5689,9 @@
 "ted-1.06"="2rd9qzrp0i0yk9qzz4g2zsjafswd6m91";
 "ted.doc-1.06"="02zyzvjncgpgm4iy2nxkx209l8dhgkm2";
 "ted.source-1.06"="isk5yz52jxsdqq8vzcvr99xjcg5sy7pz";
-"templatetools-2016"="byxkf3ad6nbxsjvmqda6iv4qxwh9r66z";
-"templatetools.doc-2016"="yv7q44lxn02yn1fawm3rkcdia11hq99s";
-"templatetools.source-2016"="4cvfpn19a3cqhx9sx2jin35ycakq4wi8";
+"templatetools-2017"="byxkf3ad6nbxsjvmqda6iv4qxwh9r66z";
+"templatetools.doc-2017"="yv7q44lxn02yn1fawm3rkcdia11hq99s";
+"templatetools.source-2017"="4cvfpn19a3cqhx9sx2jin35ycakq4wi8";
 "termcal-1.8"="brb1gf3h9zaa07s0ppbvgjiava0yh9k9";
 "termcal.doc-1.8"="3k8kgf7fy8b24n2jbx79a55awzs54far";
 "termcal.source-1.8"="k680hlhzp03wfxnxld82sgsnaggfw38g";
@@ -5399,9 +5701,12 @@
 "testhyphens-0.7"="xn9idcggd15gxl0iaphmlafpwq8ywilj";
 "testhyphens.doc-0.7"="fpkvgpd63hz8zyra7l22rgb9cr4yiz3a";
 "testhyphens.source-0.7"="fg7vps18xgf21gknlbcdikxn1yswafx1";
-"tex-label-2016"="wc2rqwp08adm869xmk7a6wkyzhfkbv6n";
-"tex-label.doc-2016"="lf9ff6q6n9rqng6akvbds9f1c6xiq5m4";
-"tex-label.source-2016"="vg5180hyadc0bl0hci4wzx90fvpxa2h9";
+"testidx-1.1"="2xv4ikmbq3d7njx8bd658hfmbn3y98i9";
+"testidx.doc-1.1"="6xdn43y612rixkk7v6f44c47znvrp3d0";
+"testidx.source-1.1"="3pnn4igzpbkgc7n1zgiq67wm0yf4f7l9";
+"tex-label-2017"="wc2rqwp08adm869xmk7a6wkyzhfkbv6n";
+"tex-label.doc-2017"="lf9ff6q6n9rqng6akvbds9f1c6xiq5m4";
+"tex-label.source-2017"="vg5180hyadc0bl0hci4wzx90fvpxa2h9";
 "texlogos-1.3.1"="la6b3lzn1c4gw025npmz5xdm5rnq9n0c";
 "texmate-2"="0i38p40p8maw2v0lypaph7fad88dar56";
 "texmate.doc-2"="vaq40vr5526ic3fjdb2n1fr1q9s58wkv";
@@ -5418,9 +5723,6 @@
 "textfit-5"="cik0z02pjb3a4xsbrfqjzva9m8cyab91";
 "textfit.doc-5"="qzr9w01bk6ia7hv5r21m2nbfz2hldc4q";
 "textfit.source-5"="g7ij0x5yghxq9jfr5vxq7vf5h8py3jx0";
-"textgreek-0.7"="m1b05a740x322la70k6ib44sk6cky167";
-"textgreek.doc-0.7"="vah190cds1677yv86nfcyriccln296yd";
-"textgreek.source-0.7"="cqc5zj4ck54rayydvml5m3n4hfnykglx";
 "textmerg-2.01"="k9zrf9l5a75pzf1c30fxx48kly07m2rj";
 "textmerg.doc-2.01"="bjgcbyn95fi8kpq91kkhhxbarw5dn526";
 "textmerg.source-2.01"="4kws4jyfmh7w7z258clr3dd4x7k98iqj";
@@ -5430,8 +5732,8 @@
 "texvc-1.0"="lkgr114w7d6z1896nirs06zfc052bs85";
 "texvc.doc-1.0"="pn3lkc74xgzv837apqy731g291z7pi89";
 "texvc.source-1.0"="z41sxdr45l3l8r15bxmj1zxybhmjbvfx";
-"theoremref-2016"="1md9iqkfgbhg6v64sgm94lp66x085rwr";
-"theoremref.doc-2016"="846wd88w325ganigw2g9rvhcs9is6ziv";
+"theoremref-2017"="1md9iqkfgbhg6v64sgm94lp66x085rwr";
+"theoremref.doc-2017"="846wd88w325ganigw2g9rvhcs9is6ziv";
 "thinsp-0.2"="flil5f3fr9ghxa0bffvqy7wackrg7q27";
 "thinsp.doc-0.2"="pk93sirkywa7hmqggnapklyz0bqy04c2";
 "thmtools-66"="qy4wdqkznn7cg4jpvqi4mjbnqmb2258z";
@@ -5440,8 +5742,8 @@
 "threadcol-1.0"="jwbi62xbc0cmzv65spvx1i6dijg34w6n";
 "threadcol.doc-1.0"="j6v3gi6c2cnhs8z5pm0j1cwg7ayi4hxj";
 "threadcol.source-1.0"="0irgk3ajakrjf1bgbfd71qvpy35fklmb";
-"threeparttable-2016"="1fmr9sbssycx23ql343hvvk4k0n90bgj";
-"threeparttable.doc-2016"="4y119m8549dk5kv4sbhh614nijlv0vx5";
+"threeparttable-2017"="1fmr9sbssycx23ql343hvvk4k0n90bgj";
+"threeparttable.doc-2017"="4y119m8549dk5kv4sbhh614nijlv0vx5";
 "threeparttablex-0.3"="7slkq5cfxlah9ckr408l1wqxxc9x5hkh";
 "threeparttablex.doc-0.3"="46r8874q74dgja9ivs4i3wcg35lwlv0b";
 "thumb-1.0"="knz4ixhqam9i803vpaq6qmghx6n7h9hq";
@@ -5452,13 +5754,13 @@
 "thumbs.source-1.0q"="pqgs9730gibbg66f9cspb9qlkqraic52";
 "thumby-0.1"="15knwd9cgdmai53kdckgwap67qz0fmn5";
 "thumby.doc-0.1"="6k49q0bwkajwd7wf5wkr0028a7c6p4h7";
-"ticket-0.4b"="8kjvrsfw83xvn979c2l6cmqr6k3xb9f5";
-"ticket.doc-0.4b"="8zzfsx53m2xvrsbzrip0990vygxw756f";
+"ticket-0.4d"="skfs956s0lzbxac4ydds9ynam475zk1y";
+"ticket.doc-0.4d"="c6d6arnzv37pczxs39h99s1isldk36fi";
 "titlecaps-1.2"="lf0q66qrj3kw5hs90fbhr93dz7ik1gx8";
 "titlecaps.doc-1.2"="qb1mj8p7srqz37f77wqs1igfcpl8wsg8";
-"titlefoot-2016"="1ggjs95rzvlmznqb8s67f7f3cjid5ynb";
-"titlepic-1.1"="9q4li6pm0n289xhxr5vv7cll3rvhzdm1";
-"titlepic.doc-1.1"="5d0g9p5skl85zl3bqwg5j2qnbi4fx0jm";
+"titlefoot-2017"="1ggjs95rzvlmznqb8s67f7f3cjid5ynb";
+"titlepic-1.2"="psapnhni7mhwd94s2qmki4hdlpbq3dbs";
+"titlepic.doc-1.2"="c363symm32mhjg8cxw9j4xsmyhdl58kg";
 "titleref-3.1"="1ai0w05ipy1dlxm0n78jzvpdgp42j19j";
 "titleref.doc-3.1"="6rgspvqn51kiw9gpp9bc59jxlyk654f6";
 "titlesec-2.10.2"="25z9zccw5pikdak7045kw5651iz82vb8";
@@ -5469,33 +5771,36 @@
 "tocbibind-1.5k"="f5kf8lxqhg6hn7qjnxxmrwphi11ndgk6";
 "tocbibind.doc-1.5k"="v5vwh1sm8bzqky6lbabvk6j3gjp8bxx6";
 "tocbibind.source-1.5k"="xq2f0iby2zafyghn0a9pjbvv1hw6z6fb";
-"tocloft-2.3f"="1fb42533y52mahpc3j3wkr2c7rva2myf";
-"tocloft.doc-2.3f"="188rgk0vm0rd62ddwvch3r9wazkqw7db";
-"tocloft.source-2.3f"="5d8c06hasaq2bxc1wmdmkalw52k353yf";
+"tocdata-0.12"="f8vsai2s3zp099254lq768j2dxrzciqi";
+"tocdata.doc-0.12"="726bz84j6ayvwjbrp7h1pwxf46b2p0j4";
+"tocdata.source-0.12"="36nc5nkl2jradqj6y7y6gsqfv1zmkfpl";
+"tocloft-2.3i"="yjmv81gig4vic5qsvg5mlnzgksspjgyj";
+"tocloft.doc-2.3i"="nh0fvc66rrd9ckyxv9gyackd180kikni";
+"tocloft.source-2.3i"="3mcnwnx824kls2j5ln3b80hcvdk8ch51";
 "tocvsec2-1.3a"="xwl43cb8m7y9vf9bbkc1lb198mh0yg9k";
 "tocvsec2.doc-1.3a"="pqvg5ky3w445h7i4hf1v1mcq5mpl3znm";
 "tocvsec2.source-1.3a"="8q0df51x5bbj1xphln6skb4cjdicfynm";
 "todo-2.142"="2ydakqj3py3dsviz4npq41s593blhag2";
 "todo.doc-2.142"="hs7ghig9yh4xhyr1y6n570vkiwmimv8r";
 "todo.source-2.142"="3gwsvfv1rhr1c6jb1xdgm9ycws6q8m2r";
-"todonotes-1.0.4"="2807793b23h7diy3fs736v6za5axmxx1";
-"todonotes.doc-1.0.4"="f0xh0hyjp600g835hrjki6rfl59kmdk8";
-"todonotes.source-1.0.4"="i9d9ryrq35qwqh2f4rkpvrs4d0d1fcd1";
+"todonotes-1.0.5"="08hfb7f1hsnq45grgbqrf6698vzvn2vy";
+"todonotes.doc-1.0.5"="gc86l5v2pllax8xpc2v3wf0dpn46192k";
+"todonotes.source-1.0.5"="r44l10yglwsjhwv9yl9xh0gbxvrmj0g4";
 "tokenizer-1.1.0"="k1ixh9ndc7r9cna3q86cccz4ibja32cs";
 "tokenizer.doc-1.1.0"="yvz9x41xdnf5449k2ixpbwrpgyhwpr5y";
 "toolbox-5.1"="czvh3swrgna1q4bf7dvbi6vqvaaja1z4";
 "toolbox.doc-5.1"="xl7w44azdaxsr34cz9fpy63pzfgz1pm6";
 "toolbox.source-5.1"="72cwzx2fbbqb0q7n8s2r8rwckfrfc8vj";
-"topfloat-2016"="a6wpasrna61fbpcb35m1gighj3xshfrp";
-"topfloat.doc-2016"="1gqq1kwkhj4s99vrqc3hys2pzr691k0d";
+"topfloat-2017"="a6wpasrna61fbpcb35m1gighj3xshfrp";
+"topfloat.doc-2017"="1gqq1kwkhj4s99vrqc3hys2pzr691k0d";
 "totcount-1.2"="mjp1wrksnwg89cj9si72fj1zjyrw9szn";
 "totcount.doc-1.2"="q1j4ja1xiqc4aahh7d02cnm8pvb356r6";
 "totcount.source-1.2"="g56d6lcx4g79iqg8af4nazv3lf3973ic";
 "totpages-2.00"="5lxvigm3prx6djwih6imgxf27d57sw2f";
 "totpages.doc-2.00"="9kxxf13pfksp7whw0rkx554qn9dbbbhj";
 "totpages.source-2.00"="y4d9lbpab1xlfdd69q2558c5d0ka5mrj";
-"translations-1.4a"="6nwhc34hgsviaf6h677fmvknrxr5jr4y";
-"translations.doc-1.4a"="gmiqssij8f73vy1gn0504nj1552c82z3";
+"translations-1.7a"="lf9q67l2kyl24hbhr3ir66rq078dydrj";
+"translations.doc-1.7a"="adqaxzgjhsjn0hcryjgbib4f1n6yii0f";
 "trfsigns-1.01"="5q6ajydw6n8k0b6rfflyp0bh973n4lqa";
 "trfsigns.doc-1.01"="bapnr3mrhxw22p78cg2y7gjbwfqirg7f";
 "trfsigns.source-1.01"="mmk5v5g9xidmfki3jnik1m7rmwcp0xf8";
@@ -5515,23 +5820,25 @@
 "tucv.source-1.0"="85rsysj0whl6f07njaxigyk14ij204gc";
 "turnthepage-1.3a"="kiaa5nrr0q0zdgbl22349ilfl23hlzvl";
 "turnthepage.doc-1.3a"="akqb1g5iyf9f7shvsm0v5wqzi43w8974";
-"twoinone-2016"="mg0zc3lsfzqfcj9w6qgqiynjkqki9h92";
-"twoinone.doc-2016"="8shpm77vq1ir8f18ix6ddz80jn0qg0ni";
+"twoinone-2017"="mg0zc3lsfzqfcj9w6qgqiynjkqki9h92";
+"twoinone.doc-2017"="8shpm77vq1ir8f18ix6ddz80jn0qg0ni";
 "twoup-1.3"="9zz59lr969ia2fr0kawfiibwfvjz8803";
 "twoup.doc-1.3"="scznf4yfaq02nd7yq3fkjxn2cnzhd0s8";
 "twoup.source-1.3"="rksz35jmn56sd5s5m3fmsp7a33rgk0c0";
 "txgreeks-1.0"="6g3vnp9prv91yjr054dshpgdl2f62w2x";
 "txgreeks.doc-1.0"="rvca7hs2rrssy46nd855knh10jkav8s0";
 "txgreeks.source-1.0"="aifnmmsvmda0vs6xvw2xrl3dyvr6sxkn";
-"type1cm-2016"="fnxv8a4anvnhl4a2hm1fx45hpdns24mh";
-"type1cm.doc-2016"="fly8yjqm52klwal3cpiw5c3c8pmy75n1";
-"type1cm.source-2016"="735jsqhiaa26wlbbwq764rl18s3j1s7v";
+"type1cm-2017"="fnxv8a4anvnhl4a2hm1fx45hpdns24mh";
+"type1cm.doc-2017"="fly8yjqm52klwal3cpiw5c3c8pmy75n1";
+"type1cm.source-2017"="735jsqhiaa26wlbbwq764rl18s3j1s7v";
 "typed-checklist-1.4"="cpp5vq1jjm6j10cs8kd0pgm4zfjc9c6k";
 "typed-checklist.doc-1.4"="pl26829sbpz8dp1yj6rqac7hdzrkahw4";
 "typed-checklist.source-1.4"="jr53p2li6f3a00kfikz9fr20bphcr0ha";
 "typeface-0.1"="cfgy9wb6gcjvx6ki1paf42l8qwsh7glc";
 "typeface.doc-0.1"="60y2dvas00811spzl8bjwjzm6hz1plvj";
 "typeface.source-0.1"="v0i8v4sgr0df953cfp39d20shiyk69c5";
+"typoaid-0.4.7"="ab2akk0hicpkgis255a91bqzn67awvba";
+"typoaid.doc-0.4.7"="ab6c2n162jl25cmynkks5z0978ki0myn";
 "typogrid-0.21"="av412ig7qlf5bq7rdwvsg4ik5rsx94dm";
 "typogrid.doc-0.21"="assax9xx3pfnb27qal4q5g2wgxa87mwn";
 "typogrid.source-0.21"="nqrxi01vw8mia4pswp68yvj1rxnya86v";
@@ -5541,9 +5848,9 @@
 "ucs.doc-2.2"="z3jxd58nlj0lkch4gc3jg4nwc2aqgzwr";
 "uebungsblatt-1.5.0"="9z0cwx5jfib1mfyq49bq2yl0yfacwg89";
 "uebungsblatt.doc-1.5.0"="vps5ya9a8z6hv7lynd0fwizwxdxyb52j";
-"umoline-2016"="2vm0z3pykwnz31pyxxpmgdl3bbpzxi0x";
-"umoline.doc-2016"="i3rs7g3iqdqnkhicadrnfr981fwkmw8x";
-"umoline.source-2016"="rsd9s0gqx20dvf6sk91gwzlsx4mq6299";
+"umoline-2017"="2vm0z3pykwnz31pyxxpmgdl3bbpzxi0x";
+"umoline.doc-2017"="i3rs7g3iqdqnkhicadrnfr981fwkmw8x";
+"umoline.source-2017"="rsd9s0gqx20dvf6sk91gwzlsx4mq6299";
 "underlin-1.01"="vp1wvsy871d28x0z1rw4pgxw9abkr8yg";
 "underlin.doc-1.01"="8cbapdd7sbqfxs6s2fx6pv0d8x6b0sjs";
 "underlin.source-1.01"="52j0xlhajihpgw5mp5zgpnsaiqkyfr62";
@@ -5558,8 +5865,8 @@
 "unravel-0.2"="2wy3mzx9jfxaijrh25kyjz8l4r6fzphz";
 "unravel.doc-0.2"="jd6afyhcdzb94m1w2i189vx0iddga5l2";
 "unravel.source-0.2"="8fgbilfhn21yz1syl8spbvd0z38zw2hr";
-"upmethodology-2016"="wyyk5vr68dqq0yqmvggyxpk1ibqsifi7";
-"upmethodology.doc-2016"="jz8hinz4ax0jv72dvaslqd2inxw8pq9x";
+"upmethodology-20170808"="hy4n7lrw9k9lqmmassjyyald8ylfg945";
+"upmethodology.doc-20170808"="5r34ab8bm4nrsg712pypbj0l7bc4wcc8";
 "upquote-1.3"="3pr0j9wkyd8fzk026qk6vzsv5hlyccy7";
 "upquote.doc-1.3"="ilclzgj5m6nxhnz4398f5nwypf4jp2gh";
 "upquote.source-1.3"="4j1q8nck1g1cg4paz65l2zpvyimkf31r";
@@ -5569,13 +5876,17 @@
 "ushort-2.2"="p1yyh90qr3whijp18yjv9d6aqxp519k3";
 "ushort.doc-2.2"="p7n00vh408fnmq7j619v8dnj08fw5x18";
 "ushort.source-2.2"="jhn6sxdjyff94x69jhax021qfx39dca7";
-"uwmslide-2016"="zf5gky1nzsjd1jp5kq843in2prllnk36";
-"uwmslide.doc-2016"="m67bshz8bpzw4vcsj1klgh8sz3mnbx8n";
+"uspace-0.04"="mc9j21cj64djdxspryc0knx00xm2krvm";
+"uspace.doc-0.04"="72420339xc9l7a1xaz1pdkn7clkdrm7w";
+"uwmslide-2017"="zf5gky1nzsjd1jp5kq843in2prllnk36";
+"uwmslide.doc-2017"="m67bshz8bpzw4vcsj1klgh8sz3mnbx8n";
+"variablelm-1.1.1"="5r1z1sf1qa6j9l8z0hmbnmh5qr9xk33i";
+"variablelm.doc-1.1.1"="qqiyl1ckcn4z8fy6qphns8k80gwgydfz";
 "varindex-2.3"="isp8j60q76fms3g4nlgf6d6da6f2y0xg";
 "varindex.doc-2.3"="k6f0ji2kbz2slr8cbsbyifb4j19wpx0s";
 "varindex.source-2.3"="g260r972d5dicmhzdch9kp77fxxakpqd";
-"varsfromjobname-0.5"="ic15rggbpqq2cd130rhwkqrvhw45zv7g";
-"varsfromjobname.doc-0.5"="vxifbbi9x12cc08hfcvmwrx38j8c9y4a";
+"varsfromjobname-1.0"="hy3mbsrrdd55ky6ilrmqfgc5dsx3kdl8";
+"varsfromjobname.doc-1.0"="inwn7n9dn0lym3nfh2szc3vfszhns7vn";
 "varwidth-0.92"="z2p07dqsj6pmdk6wm7snd0bih1s1q2dr";
 "varwidth.doc-0.92"="i4p58c787avqjqn5qqlcd19k8chxpp96";
 "vdmlisting-1.0"="8kkhifiignvk7ilb9ka1b0bssgc7vv1v";
@@ -5618,6 +5929,8 @@
 "vwcol-0.2"="hff0d1za1i8jqaa5bd7r94g4zvsxrmcf";
 "vwcol.doc-0.2"="68p9iv66i4mx5l8s90ivl3w1pdmx9fim";
 "vwcol.source-0.2"="x7qa2d5f1hxxbiabgym4g1n1n0g92x1w";
+"wallcalendar-1.3.1"="9ydbcsxj9n0nmrkr4drlbqwarpsa3lsq";
+"wallcalendar.doc-1.3.1"="cpsswrvazx036hyj0b2mfakfhziplm70";
 "wallpaper-1.10"="hj7n1ajpapmwk51fnrhxawmgq6k9cxdv";
 "wallpaper.doc-1.10"="751a0gq1m6px853zvyvbxv8migdm1pkb";
 "warning-0.01"="a4agj71acw6kc20ikk8in8m27fcq7rld";
@@ -5625,16 +5938,16 @@
 "warpcol-1.0c"="91kcbm5m59ym7kfjbhzdq20p9rhi7ci4";
 "warpcol.doc-1.0c"="q72m3zkgkm7fxfq1453jsmqidgacb2bh";
 "warpcol.source-1.0c"="lmr3rlbqz9q7j05glz4s8fyfrlm6ah43";
-"was-2016"="gw9043kq2ai4mkbcca20x5f10wnv8czz";
-"was.doc-2016"="y83pwhhkxlh92cr9b0hmps0izg2cjhmg";
-"was.source-2016"="cwqcmdh86sm58073zm929dxibw3flc02";
-"widetable-1.1"="0n206v1cghwwqan8izxx7m0spmk0vq52";
-"widetable.doc-1.1"="63ws9pvz6md8wjz0kvck8hbajazdrg89";
-"widetable.source-1.1"="3280bgr049jrra7vb1iy33i8pq2n0qk1";
-"williams-2016"="9xzcvf4nblyp6vl0vhnwi6lbbmp4lagm";
-"williams.doc-2016"="0fr8h1zsj1h1cf3qpjvdkg3yz4fcjdsk";
-"withargs-0.1.0"="a9d7w5ai4x1ap54hhb7ndx4k77cifa6k";
-"withargs.doc-0.1.0"="w3bdf6qbqvidpq7nhmjm7n0jlzsvjksy";
+"was-2017"="gw9043kq2ai4mkbcca20x5f10wnv8czz";
+"was.doc-2017"="y83pwhhkxlh92cr9b0hmps0izg2cjhmg";
+"was.source-2017"="cwqcmdh86sm58073zm929dxibw3flc02";
+"widetable-1.4"="1hbr1fdq4ssp796zm1j21lqqlv599jml";
+"widetable.doc-1.4"="5pxhchaigkbjblkp62p8i0kg27c2bhv7";
+"widetable.source-1.4"="3c54f8shs2ndrrqdxw6xp4bmy0isbv9g";
+"williams-2017"="9xzcvf4nblyp6vl0vhnwi6lbbmp4lagm";
+"williams.doc-2017"="0fr8h1zsj1h1cf3qpjvdkg3yz4fcjdsk";
+"withargs-0.2.0"="ahb75dczlyy8shzql034xqjq72ll0yvx";
+"withargs.doc-0.2.0"="6sr29bzbhwzcf77pjzhqb21fsp0541dj";
 "wordcount-1.7"="839mnm7jbjmcsqidl0ddmsqgvwaxv1wa";
 "wordcount.doc-1.7"="hsddvb5521vmj65yns8f9d69nnwhh6iq";
 "wordlike-1.2b"="l4ma5j7ga4b3r6f627vf1vwcb872n3jr";
@@ -5642,32 +5955,39 @@
 "wordlike.source-1.2b"="3zrpdarw3brnc5w1c5bgvxj37qlpc9cd";
 "wrapfig-3.6"="0r2wm95j00mxbiqgyk2d5vsb4l013zdw";
 "wrapfig.doc-3.6"="bb3z98p5kkhh2cw6qm0as75xv914l84d";
+"wtref-0.3.2"="427q1xixm8dz8wfh9z2bny6brs3s9i3j";
+"wtref.doc-0.3.2"="s02aiynd81ksydrfxlksamrdfkhhhfqn";
 "xargs-1.1"="s6g70azr1g9mg42k7lgii1ngmyjad657";
 "xargs.doc-1.1"="d8y9n347qlv5ybr4ahfqf51yb4g9wjzy";
 "xargs.source-1.1"="zvlns27k99jmi1iy7nyc03kyyy8kaycs";
-"xassoccnt-0.9"="8vl4zg4d7kbvyw2d6zv14z641d09hrnw";
-"xassoccnt.doc-0.9"="gzmqyk4ykbdzdi7hdrv8hmsrpdgjmxz9";
-"xcntperchap-0.2"="xfr7rhdjafbnk7cvm7mkh9s1xvvxg1vx";
-"xcntperchap.doc-0.2"="x8pd9g74401ncjh0kxlclmkz4llbxsjw";
-"xcolor-solarized-0.3"="chbj9bjwfsm7pdjf72p3b82nfmn9ghcf";
-"xcolor-solarized.doc-0.3"="a8xwwf92kmz5y4aqpr5lgsdi9w20rn10";
-"xcolor-solarized.source-0.3"="aqd0xw3956pmvsjpz515i8ghhhq960r0";
+"xassoccnt-1.5"="gm7gxwzywrp5fx7y7n0ai3x8q0r33c2v";
+"xassoccnt.doc-1.5"="hxy66pflw755lgs6kfam4gvyv4c5vfal";
+"xcntperchap-0.4"="0iywxgavwp9jrrfb5rx6b9yzqxgzjbwb";
+"xcntperchap.doc-0.4"="526lndnvgdfy2rgsr9i46z4sx0dgssh1";
+"xcolor-material-0.1"="08zazp49lpmm92ang9i2q34kvx7v4rli";
+"xcolor-material.doc-0.1"="r646x6g0hwsi91hrxzz6b8l6nbbh3gig";
+"xcolor-material.source-0.1"="98z6j5l2iw9j1pyxmglm6b0gjdjyb2l8";
+"xcolor-solarized-0.4"="zwng9y8319hj7khamri46ppb0bcybpwz";
+"xcolor-solarized.doc-0.4"="c83zvv123bjwr6z10dgfih1k6b9wk4k8";
+"xcolor-solarized.source-0.4"="5p141gbzdasinppirw4wyb0mm9875bcw";
 "xcomment-1.3"="qnmk0vpj33sszbi3hfndscjwcmg1gf5h";
 "xcomment.doc-1.3"="m5a8wm984ff59mg0jsf4f402zbjqf0b8";
 "xdoc-prot2.5"="awz55rah1196cknc1qsy0dc8ra91dvjn";
 "xdoc.doc-prot2.5"="zx0nabzias47jm6270rmw9wqr117mb75";
 "xdoc.source-prot2.5"="51sid2ab4iwhybxhkwf5wwxflabqy4v9";
-"xellipsis-1.0"="x7kbgr1jynxw7rbf4i7z41b7rghmf9gd";
-"xellipsis.doc-1.0"="2h5f30la1irs0lyshdlpbwmx1rm5ksrz";
-"xellipsis.source-1.0"="4i5w6w2shpkm1d5qdvyqzpym1qw9xxbd";
+"xellipsis-1.2"="rj1gs7pjl8prl5hgzja22wzrp4phxbmh";
+"xellipsis.doc-1.2"="mx9dzws449rkvdfmxn0688m8f1vvg2z9";
+"xellipsis.source-1.2"="8m51f0mrpm5fnzakijm38vxswzda3f3v";
 "xfor-1.05"="x2bs3y606v8f42ds7xp2kmllq0vmrnms";
 "xfor.doc-1.05"="lbgdf0qia743jdvlxqf7vm4w1pc77kar";
 "xfor.source-1.05"="pafv6fqj0nd5xm0wgmwavkmg97rw7dnm";
 "xhfill-1.01"="6c09h61nlwbviwc1vfvmr4jhbrw2fs24";
 "xhfill.doc-1.01"="cw2rx4v66138fsh1vwxhq9smyai1xlr4";
-"xint-1.2g"="xdkk8ph0ad50qakl9dk31vlapdsg6aj2";
-"xint.doc-1.2g"="36pjbxhqxl9m84624vbdmg8mlahz13ih";
-"xint.source-1.2g"="4zwsacxjknhwdr4md0pvg2n2brvhi876";
+"xint-1.2o"="ra5aac7dhj04x57msq70dxjvz95y34sd";
+"xint.doc-1.2o"="j5r7k4mmpirl0l5jpariz5bl5vxkihdn";
+"xint.source-1.2o"="iw48mmji3k70riqn11n3vfz7vlnp71x4";
+"xltabular-0.03"="vna4kl7alw7mj4cnja5nf86mfybk4m43";
+"xltabular.doc-0.03"="6db58n1fnqgsh54r1y7l4wcd6z0db31m";
 "xmpincl-2.2"="wjg1lw656zbn3h41pxqzwwag9mgrk3h6";
 "xmpincl.doc-2.2"="dczhfj7g5h3gf3vg7wncvccn1q3xavqp";
 "xmpincl.source-2.2"="0pfma5c8agil5jamikja0qh5fnyd9wn0";
@@ -5686,9 +6006,11 @@
 "xpunctuate-1.0"="n3mxrha0440l5ngic93idrqw2agmisah";
 "xpunctuate.doc-1.0"="lrvqrndq151vfz34ycvjnh3sw77v58lz";
 "xpunctuate.source-1.0"="cmmzrijia2ir3mrhcq4s531la5kx18fj";
-"xsavebox-0.2"="c0690467bp22qlwzkya4kfjgpi96avfv";
-"xsavebox.doc-0.2"="c47bayjg6qzzsn2zxckzx9x9bz93jbs4";
-"xsavebox.source-0.2"="hwld00rv1xk8wz66hhbi0klbqfsr6hm8";
+"xsavebox-0.7"="9xw5rn16kqwkb7gh47rxi4k6nvw4zssm";
+"xsavebox.doc-0.7"="0jqg2f31dibmxl8w6dl6jicb863wf62i";
+"xsavebox.source-0.7"="qzzx5fhwkd0kl7c6rw8gi3bxiqm7skgb";
+"xsim-0.10"="hj9jfx2qq5qqyr1kzzc2hg0d0bl4wrza";
+"xsim.doc-0.10"="pv4dn3j7ky28myxy7q58kn0ing8zgdlg";
 "xstring-1.7c"="yykas5nwn259cnpaxjgijvv1z0s1xd25";
 "xstring.doc-1.7c"="xawlbcagd4a1sd0ndzm12d8h80fm5zy8";
 "xtab-2.3f"="zqrxzgk3pn3kw19jm28bvg0lch9lc7sm";
@@ -5698,56 +6020,59 @@
 "xwatermark.doc-1.5.2d"="1ixadba47dckfx4r1hhzfd8q1wivygpj";
 "xytree-1.5"="2kq4h083zj1zi2zvrhsnqz5wjyl0dkxf";
 "xytree.doc-1.5"="05af0l0bbcbr5gav843zs69p917cx3xy";
-"yafoot-2016"="nb46q5csnys171p4y07ifbp4il4g6qn7";
-"yafoot.doc-2016"="6866y5zf5dhvk90kw03s7xi0kdwrs10l";
-"yafoot.source-2016"="mm2a4gpd3llkfz3ifvi96jvz8xl82az7";
+"yafoot-2017"="nb46q5csnys171p4y07ifbp4il4g6qn7";
+"yafoot.doc-2017"="6866y5zf5dhvk90kw03s7xi0kdwrs10l";
+"yafoot.source-2017"="mm2a4gpd3llkfz3ifvi96jvz8xl82az7";
 "yagusylo-1.2"="rbhp05f6y6zw687pdw1mbjvaf99v7qy3";
 "yagusylo.doc-1.2"="av3jf7zqa6rprfip5lm173xj2f1rffb4";
 "yagusylo.source-1.2"="6z69ljv1xpv2cn81l63d8xrbwrk8am5m";
-"ycbook-2016"="dclc10yla2licc92m1pnqyxf5b1943v2";
-"ycbook.doc-2016"="kv4xx8rb41ixg85akxzslqynkr7r4alk";
+"yaletter-1.1"="br7r3x3n8h5nlfy36csx8a5ji3cf12wl";
+"yaletter.doc-1.1"="x5mhsm4pxjc2klcnwqyrz10gbq4kzw0x";
+"yaletter.source-1.1"="c1la5n24hxfi3paxwxd8m7lxpd083k0h";
+"ycbook-2017"="040lf3a7r9b33qmwngkr7r1q2cjfab4l";
+"ycbook.doc-2017"="8nq8qpzh43pnvqfrlihkimz7w6n9kph3";
 "ydoc-0.6alpha"="4di93jv5wpv4bdng1ibkf0ma6m0bknz9";
 "ydoc.doc-0.6alpha"="80hq2xznj76kgj0zb6zv6li578kc3r2i";
 "ydoc.source-0.6alpha"="39128wyw2py0j8f334r7drff849ad2sv";
-"yplan-2016"="rm8ln7pvl6i672107i8hxic85s994g6g";
-"yplan.doc-2016"="0h0wa59ackd645spdqk9vqy0gzzp8f8y";
-"zed-csp-2016"="ggjqzwn3zi9x8ziddkh7xizgw80qqlrv";
-"zed-csp.doc-2016"="5p8s701yk431qyngw010qws6b9shx588";
+"yplan-2017"="rm8ln7pvl6i672107i8hxic85s994g6g";
+"yplan.doc-2017"="0h0wa59ackd645spdqk9vqy0gzzp8f8y";
+"zebra-goodies-0.1.0"="dr3dldrinlcvkrfp4bxwm8i9vbifvmlj";
+"zebra-goodies.doc-0.1.0"="gklc8j9w99rj38zrb472aa54plac099z";
+"zed-csp-2017"="ggjqzwn3zi9x8ziddkh7xizgw80qqlrv";
+"zed-csp.doc-2017"="5p8s701yk431qyngw010qws6b9shx588";
 "ziffer-2.1"="jv9y39n2mj1csaixb3pdfp0qggc16b04";
 "ziffer.doc-2.1"="3ys31swbmm03zmnlvfm155aii3nrd2sm";
-"zwgetfdate-2016"="ibagqadgb3nbq8y72lzhrbamv5xcipk1";
-"zwgetfdate.doc-2016"="idw9limrda31c7h0xd3j6v23xqbd2nn3";
+"zwgetfdate-2017"="ibagqadgb3nbq8y72lzhrbamv5xcipk1";
+"zwgetfdate.doc-2017"="idw9limrda31c7h0xd3j6v23xqbd2nn3";
 "zwpagelayout-1.4d"="6wskn5h4bxigry3bjdf90ibdfrkinln3";
 "zwpagelayout.doc-1.4d"="rr3q6ypq18rkaa77ikr0j2sd80pp322j";
-"checkcites-1.0i"="rxrn60krdqm7r1cw8jiqqvdbkbdc7gdf";
-"checkcites.doc-1.0i"="cqdxzcc6kkp5dbxk3j0xapb17y6206ch";
-"chickenize-0.2.3"="88fk20yd7a2z87m14hq9iafxlh0in10c";
-"chickenize.doc-0.2.3"="pilc6v0amdhyn3s0r2ff7khx71m93fch";
-"chickenize.source-0.2.3"="spkn5l6y1z2h3rzhph7s1d2k1kjwgvma";
-"cloze-1.1"="f37g67603xg4lxxq2bjf8l46hfhpjax1";
-"cloze.doc-1.1"="06dbczv4d5gd5py53vwzqpdb8g3dm3xy";
-"cloze.source-1.1"="q9s5fgksr5dppfzy72j4mxbjh3yjg75z";
+"checkcites-2.0"="sl7bgm1kvqvl8q5ykbkxpin78pn6ivb3";
+"checkcites.doc-2.0"="5k7dlp98z1dr1vlir72f0r78vmaxl4ps";
+"chickenize-0.2.5"="bh3kdbw0yvz28izgmxxw3psmirwmfcd5";
+"chickenize.doc-0.2.5"="hqyyggfs1is65gfl4ck1mki9wgm6238v";
+"chickenize.source-0.2.5"="xhybj8jxyv1fghx7955dcgfcl9kjgbkw";
+"combofont-0.2"="3fkzcqjwxkciacvpvncnvzknf6mrrgh6";
+"combofont.doc-0.2"="c49bkqad9gw6lghaqkl4jp53501wfcgc";
+"cstypo-0.03"="4iqsrwnw7pnzhzzspr686pf6y4img6zp";
+"cstypo.doc-0.03"="3s9dsniw0yz2j7iffbsycsgrycfbjlg9";
 "ctablestack-1.0"="cavlzn944q3fhha3i4kf8bgvm2y5zpdh";
 "ctablestack.doc-1.0"="g2d4fq9nl422i3i0skmlrydx6d3ks8cq";
 "ctablestack.source-1.0"="bqrksg21vxxki14v7sadnh35070f2vdy";
 "enigma-0.1"="1d9g45cwjgz5imk677zrza79fhwvz3cz";
 "enigma.doc-0.1"="57pmvf7xx9hp23jxaj4sfam0526y652q";
+"fontloader-luaotfload-1.0"="vg98ak3japxis0z4cawqch4ibpiz772d";
+"fontloader-luaotfload.doc-1.0"="116ayy7677jgdyxikhpi540c6hxapx8l";
 "interpreter-1.2"="pk1rbxzpaf3gida3dcshcgl5c12rgxzi";
 "interpreter.doc-1.2"="p249plg4a7qmq65rm84qfs5xvjwywnw4";
-"lua-check-hyphen-0.4"="ahcs7ljiyy5c74x94dlhs29d3yz834d3";
-"lua-check-hyphen.doc-0.4"="rmb8fxdp2pnb9ffzbm8cdj424b7mpxq7";
 "lua-visual-debug-0.5"="a728vzfhwg0bq8jhnznyxl59gaf9dfwk";
 "lua-visual-debug.doc-0.5"="nsaxcsri49qpjj878k6l4yva2k5vf6m0";
 "lua2dox-0.2"="f8nhx5l1x2vqsrnh0amwa4nrf77b6zjl";
 "lua2dox.doc-0.2"="af422a39m2llgqkjghlhh9ix120jdrbi";
-"luabibentry-0.1a"="lm4x9gqyj8ha0cjwmmy7h4yffnd8wymx";
-"luabibentry.doc-0.1a"="psn62xnv0l494i67jzsc0sbij0r2kcvb";
-"luabibentry.source-0.1a"="9l96kjwd1kwkj7rjcrlq3vcyiylbawrl";
-"luabidi-0.2"="8af0f67k7hj72wsfrxxdxzl1p39byasy";
-"luabidi.doc-0.2"="9fdkj79aasj5vskrqqnr7c9zdy8vb8c7";
 "luacode-1.2a"="8ckzckz94cdkygfjyh2dfldhr1pwa8dl";
 "luacode.doc-1.2a"="2xzk8133632231pnn3v0afb003xhl33f";
 "luacode.source-1.2a"="dw3p52gn6g103qkp5v8vmgxpj2b4cwb7";
+"luahyphenrules-1.0"="lpkklcbarmvfm4y9d5zgm9is55y66f56";
+"luahyphenrules.doc-1.0"="ch7vc8skad88crgb1blh85ig9sn97l3f";
 "luaindex-0.1b"="hlzsr82cp5vs41bvnp22f8jc3kkwyk4y";
 "luaindex.doc-0.1b"="k1nz25w1nrxbfcg8g9lrb4gm22i3m7ih";
 "luaindex.source-0.1b"="7pg6v1phdz96x5nmwsnf5bd976s2magv";
@@ -5755,60 +6080,77 @@
 "luainputenc.doc-0.973"="jyiy6f96v5nvrr4lp765vpvhrl96j67q";
 "luainputenc.source-0.973"="5v1n89k8wg4g43fnx0wz53gdxp7cvgji";
 "luaintro.doc-0.03"="gcz5ihcqinbpnqza158xsgw65h17lgi5";
-"lualatex-doc.doc-2016"="9vq4qxdsf4gfskrqpb45wj9m0jdkcykh";
-"lualatex-doc.source-2016"="jnrcirfvz7w28pcq3cvwb8g8khd3gzh2";
-"lualatex-math-1.6"="gqg4agy90mdyhrj20bpszk4fl4g7pjhp";
-"lualatex-math.doc-1.6"="xrvlm16l02f5s4cjl7rjwdsgkds5d8gc";
-"lualatex-math.source-1.6"="xan32mk86mc0lx4q94s140vnl29xyxiw";
-"lualibs-2.4"="mazy6j4bfync048nj6fhgzi99mcr6ra1";
-"lualibs.doc-2.4"="zixcbl3i6p5y0h46plkcjv48inc841gz";
-"lualibs.source-2.4"="6cfcjm2vr1py41r2nxj24mb8xixj464l";
-"luamplib-2.11.3"="wnvnfhjlyhgyw1073nb140smf46xgdvh";
-"luamplib.doc-2.11.3"="x1ircfrj5g5v53q3n3vkzh46r54hb4b8";
-"luamplib.source-2.11.3"="mwc4n65b65fw5pmm5wgms2hbwk6zhhzv";
-"luaotfload-2.7-fix-3"="bcqcf9ahlpw8866l3xnhbi8pw52g9a4y";
-"luaotfload.doc-2.7-fix-3"="a6ayw6rx6pzqpyay1v35pylw0ganim17";
-"luaotfload.source-2.7-fix-3"="xx93qbrhazh729f26vlfp1x7kqbs4yyi";
-"luasseq-2016"="k07ymsxywmasi0nkdd2ldk164lf36z9d";
-"luasseq.doc-2016"="vnqisa721w2nx11wxb3zsk070b3dzm1b";
-"luasseq.source-2016"="341ldjdwdvjin4rq8ica4f69hb5kbwr1";
-"luatex-def-0.01e"="i7z5yl17iwjxa8k2si4xhixb6m96paak";
-"luatex-def.doc-0.01e"="lp4il3gbgyw7nk3g70pd2asfiwans3qr";
-"luatex85-1.4"="ka3px4aiyi8gq487i085s31y9l95jzp1";
-"luatex85.doc-1.4"="ac2agmy9dkavln2vnd63fmavv7xnkdrw";
-"luatex85.source-1.4"="wpm4dw7j6fikz3dqa4zk3r5avg4isxr8";
+"lualatex-doc.doc-2017"="9vq4qxdsf4gfskrqpb45wj9m0jdkcykh";
+"lualatex-doc.source-2017"="jnrcirfvz7w28pcq3cvwb8g8khd3gzh2";
+"lualatex-math-1.7"="psliwjmyjf7rf1zxqfinpw6xjcijj906";
+"lualatex-math.doc-1.7"="i3a93gp6s6k1qlchh9wjlzxjnsfa8qm6";
+"lualatex-math.source-1.7"="bxf60i66c2dalirywzyq6qr9vw4gv8kd";
+"lualibs-2.5"="p975fbb74h2gbkwsqd2gqpmn7knklrry";
+"lualibs.doc-2.5"="jkfd05nmmm2p8bdqf1dz1kbsc77428c2";
+"lualibs.source-2.5"="bf55j3qmny5m91vm2fp7vqzx06kdf3q1";
+"luamplib-2.12.1"="00bqg0gxzpjrpc7bvnbvv1p5lp8v0yv0";
+"luamplib.doc-2.12.1"="l0nayjkmvn25fpchyhpbgldrksvnhsjb";
+"luamplib.source-2.12.1"="a46xp5q12wxc5z2hinfdw9bssawhalrr";
+"luaotfload-2.8-fix-2"="sp53ks2p5pbppdsanrgi0zdz4jdm1197";
+"luaotfload.doc-2.8-fix-2"="w4zkf61hmhp3xlhf392hgk6kxhzynw9k";
+"luaotfload.source-2.8-fix-2"="hx4zfc8xwya9qvg69jgl2dv2ab31sjy2";
+"luapackageloader-0.1"="rc85q0c3lyjd3c4mhjjbqlcywycwxcgj";
+"luapackageloader.doc-0.1"="dkccp3n7nwkwv9scga2xa1aqqplsird6";
 "luatexbase-1.3"="hjzprkfxz8i905ffdzfad0myg2ym4vg4";
 "luatexbase.doc-1.3"="3rnbzrql8m9ss0pk1yydy4v9acrk3qq0";
 "luatexbase.source-1.3"="v5x5csbgplvah43m8lbjky2nmfk2s3fp";
-"luatexko-1.15"="jkv5a7jdf2ycbvbsj81qb795g6n2cmix";
-"luatexko.doc-1.15"="65mfbszrqmv4pi43m2j2dy695h38s5qp";
+"luatexko-1.18"="wl697fsrkhayxa4gip5kjm8wnpjm28mv";
+"luatexko.doc-1.18"="d6vpnzhw0m9yhlard38nadgd122sjnqy";
 "luatextra-1.0.1"="xb3dbgfnm7ww87n60ydpilkwqczj77lz";
 "luatextra.doc-1.0.1"="4pfnnxaynvw166pp1ivb5pjp061n2bvi";
 "luatextra.source-1.0.1"="3ajlrmqc27xyxlkn4vbprh6zzlqpf0xd";
-"luatodonotes-0.3"="9vz674h0z93rilb57pmajmbk4dgy03a7";
-"luatodonotes.doc-0.3"="mdy7s35l59gid17igbsb5q9ds4xg8ysg";
-"luatodonotes.source-0.3"="0f79l8dh5g7bgg9qish58qgvxb6hr55k";
 "luaxml-0.0.2"="gyfx3h4rp9jhbwrxria8dxwdr5shrdqa";
 "luaxml.doc-0.0.2"="8dzsl4mj3ld9n6bmyzahwkj25dyq04fs";
+"nodetree-1.2"="7x6x6xjd3aqhvz1nchhxckfhzjllfr21";
+"nodetree.doc-1.2"="jnpfcdpwafza66wmlvgv4jkmisfc9k46";
+"nodetree.source-1.2"="877wmvyrnhma4v3qdlq4r1pbk1bldlv0";
 "odsfile-0.6"="1h0vzwknsi9w3vpk008mdk87l3c33ffl";
 "odsfile.doc-0.6"="4wvljjvknahcyfnwkpnpbmzg26zaa9bp";
-"placeat-0.1"="mmg5ndbp21rdsiyy4sj42bbyrmy6riz6";
-"placeat.doc-0.1"="vq7q60h7z7ni3kkxwxwq2463iywy9r9q";
-"placeat.source-0.1"="q357ifkppqwkamvg2f8ywmvmhhc6lwy5";
+"placeat-0.1d1"="rkzxsay49qp6qpiy3wpd6r3byzrm4hgy";
+"placeat.doc-0.1d1"="x954mm7qhyffqbh9hrgrxa5khh5h70p3";
+"placeat.source-0.1d1"="l19sqs0ipd1pgpl6kzggfizxvc1cb1p3";
 "selnolig-0.302"="gw2nwscxyg2p83bs90nnbg47wddkh0i1";
 "selnolig.doc-0.302"="d73jxs6xck7m5y95hx6nfls1572za6qh";
-"showhyphens-0.5c"="fcmfcmzkv9k6k2d6l2brhwwvffzz3bcd";
-"showhyphens.doc-0.5c"="451qz6c2k3mvnr488s138m8wmgsf1zvs";
 "spelling-0.41"="kajpixvypcfl8ivqqnscfcd1fb1vv78x";
 "spelling.doc-0.41"="r0sqb4qz4n2w8n0092qik847f3dziq0a";
-"ucharcat-0.03"="d445ic6gwl7d5d31s691vr63f4hn76dz";
-"ucharcat.doc-0.03"="ma6rz3djr9v3q5p8ffqyznjb91gjj5li";
-"ucharcat.source-0.03"="kh9cnzg1pn8c51bbph2amp5y1j85q38h";
 "12many-0.3"="kzixh8p9qmbz0hxczir6pixx8k6zc1an";
 "12many.doc-0.3"="v5qw194xha1w7mr6x3zcwp9a0gpi4w4n";
 "12many.source-0.3"="wqc3q5hqwg09g0sz7l5va9xazvmqbbrv";
+"SIstyle-2.3a"="35jza92m3n8nhfnqxpi4yx5xi90hf5mb";
+"SIstyle.doc-2.3a"="7y6y0ks7aa4yvqcw4jzh7rrrajm5lyfz";
+"SIstyle.source-2.3a"="i5kmfn2pan7a6bvl7saij0wbfq7xsx8g";
+"SIunits-1.36"="jpghwsag31g9f2lnzdzmfg1rg1vjxihs";
+"SIunits.doc-1.36"="1qalyh0q4lvlxxmwykaq3bp3sw76sscg";
+"SIunits.source-1.36"="6v2lr8gjm3f2kyqh7pc06ay5iswbi7p2";
+"alg-2017"="2z4gi58401dsjwivwji0b169ihz3assx";
+"alg.doc-2017"="43bcrdwkqnx6rharxz9l106cxycm408z";
+"alg.source-2017"="yq6bvw0bwwqq8c367ml9p9cbimqhkr1v";
+"algobox-1.2a"="ykmx4b4yz0vbbzw5pkabkq23da5ab2nj";
+"algobox.doc-1.2a"="slrgkjc160aasdqly9n72inxxs20p7dw";
+"algobox.source-1.2a"="1jk7jr14qb3sx1vffwazmvdhmnxswpjv";
+"algorithm2e-5.2"="w36nldd3zkmg3v74jzg22kwkw0vhja5b";
+"algorithm2e.doc-5.2"="b2g0vk8jb1yqqi9fnkvxizpdhlaqjn04";
+"algorithmicx-2017"="8hvwf9c6b51yc623g8ivxqzwd10c1j7s";
+"algorithmicx.doc-2017"="1xcga5bk7fgqq2dad5mzv2v2x0m6hqrd";
+"algorithms-0.1"="s07h59vabig8jdk2d7r98hdnxpyq52sm";
+"algorithms.doc-0.1"="vwq0lnznxpwi4zpp4hjaljdfc3c2h6yw";
+"algorithms.source-0.1"="cskf3mpv2rk435przyidljaijx46fiy9";
 "amstex-2.2"="lpqwc8f3c8iv9691yxqs6r00dkjp9mh2";
-"amstex.doc-2.2"="6kx1w9mz2120b44w011lc11r3difiwab";
+"amstex.doc-2.2"="xagb7dirsg6c0hwpcm99sy1b3p7vklcb";
+"apxproof-1.0.5"="n6vfgg21i1ln96a8ma1flmi3slnprfrp";
+"apxproof.doc-1.0.5"="l40pnh0x9hwavdbfl5q6zq4z15frscaz";
+"apxproof.source-1.0.5"="ka30dkm7rgbhws3igknx7mq6xzp16svy";
+"autobreak-0.3"="61yyi2p6gf0sjydn5kr8h8qvpxgmvbin";
+"autobreak.doc-0.3"="lzi2q6g0mrv5l8kb3b9yg0ykiiwimyfv";
+"autobreak.source-0.3"="62cm1l24gp51a8jnag36y8gm1bwya7la";
+"axodraw2-2.1.0b"="s60pc7wafn9ybkk0576i8daxm8ywchb9";
+"axodraw2.doc-2.1.0b"="s14v3s2ffrxlq0czh1f26fzr0pp8f9nm";
+"axodraw2.source-2.1.0b"="mm0maisc29q0kspj0jsm5i26k5h8n0ly";
 "backnaur-1.1"="f74p150lbyc7bpvfg0cksv6g3and4qm2";
 "backnaur.doc-1.1"="4kd67srbm2bxwrjj3rdd8k56g108bj5p";
 "backnaur.source-1.1"="25zm2sxfdijfvbbcckim8glqfgidrc60";
@@ -5817,45 +6159,119 @@
 "binomexp-1.0"="5jlh0g22c7b1i94n2qicn0j6k4zmami9";
 "binomexp.doc-1.0"="vh653aqsqkvcsmrvzhw1h4sqvirxg3yv";
 "binomexp.source-1.0"="jairxsdavf3ll4160dlbc39hriyyyrdr";
-"boldtensors-2016"="ivpsy3mgqghbw4qv325j9rc6nwwmh9ya";
-"boldtensors.doc-2016"="nbg1ilwbjn61g6g93bnqhfm5xgrgqzgk";
-"bosisio-2016"="dinsh8vlzgch7mvajkqmikbpgmzryqld";
-"bosisio.doc-2016"="asd7h31zda58mwykhc4jfp5nwv21y7b2";
-"bosisio.source-2016"="m2y96hhgypgcsli8v19w6jn7y39d23vy";
+"biocon-2017"="d5164k5f9rh092j3yd5vysfzcp6qbvc7";
+"biocon.doc-2017"="w3c6g9qr6s5pm76jq7v0fk4fs90p5d20";
+"bitpattern-2017"="s1gn3l5lfz24xgg768032s318gzx96zy";
+"bitpattern.doc-2017"="8nq9nd4qsrixnnw32saxp6272d26w040";
+"bitpattern.source-2017"="1xa4jib8aihzccs6lrijw5x0cvhlrkcl";
+"bohr-1.0"="5r65jri672mlqzhd26dmys54sj19c8kz";
+"bohr.doc-1.0"="8gsrm5xrxfqqgpljlyizlcdz4lw3xk9h";
+"boldtensors-2017"="ivpsy3mgqghbw4qv325j9rc6nwwmh9ya";
+"boldtensors.doc-2017"="nbg1ilwbjn61g6g93bnqhfm5xgrgqzgk";
+"bosisio-2017"="dinsh8vlzgch7mvajkqmikbpgmzryqld";
+"bosisio.doc-2017"="asd7h31zda58mwykhc4jfp5nwv21y7b2";
+"bosisio.source-2017"="m2y96hhgypgcsli8v19w6jn7y39d23vy";
+"bpchem-1.1"="c1qr5s3jp7zg06sis026ll5b38axvni2";
+"bpchem.doc-1.1"="54qyy00y03jbbhg00az5as1bc5h9i2fr";
+"bpchem.source-1.1"="r4bya1mqkjjnmzc14jlbv676ls312ynl";
 "bropd-1.2"="zhrvx29z8y1gs88y8lx7wvi0dlhamkmq";
 "bropd.doc-1.2"="1k5254jbhikwqrx5wv61qmznkhp41mqw";
 "bropd.source-1.2"="8hny5cxa57186p4brdriyp3hrmmqr9ww";
+"bytefield-2.4"="whxn5qk2z4pia4hpafbzggp6q6zai2c0";
+"bytefield.doc-2.4"="ixgwy7pi37anjp4nmm765hc6hh484gxz";
+"bytefield.source-2.4"="mmnbxv3g3c6i858xs5dazi1nkfvrxsjs";
 "calculation-1.0"="sss6l897zlki1lidr2s5vp60rv1jfm0f";
 "calculation.doc-1.0"="zwcix1a11s0s1hh7ccy28gbdxylz1n3k";
 "calculation.source-1.0"="asdip95ln7gna99vk7hjiq8n1hfcqg1x";
 "ccfonts-1.1"="11ghrz5bz02nw40srb3ih2v3r6pmsvq5";
 "ccfonts.doc-1.1"="vz7iqli9bwplwd20xvpdkpswc7r5zvlc";
 "ccfonts.source-1.1"="iylfqg59y0yadrzjb1xcb6nbw7rkjfr0";
+"chemarrow-0.9"="mb0i68z92909632g3xd1m3ahvmg0nj72";
+"chemarrow.doc-0.9"="h7g7ldb9837ngsxbmxm2c902bk0k2wdg";
+"chemarrow.source-0.9"="05g345ir5pvd4wik23yykarizwp0l506";
+"chemcompounds-2017"="7m2snwdxnachamq617zap92fsgdqhay3";
+"chemcompounds.doc-2017"="imzf21bm33j290wmy96hx88ahf5zgbff";
+"chemcompounds.source-2017"="nwcxbn1ivdiswdqyr319y93l76527amj";
+"chemcono-1.3"="kppxwgnwc7f62n7bwi2gnb6zndxv4bag";
+"chemcono.doc-1.3"="r527psyb3zf91x0xd6ywiv429b0rmicp";
+"chemexec-1.0"="szl9xw9iiql9yi7la6hwcwx8frhdxkck";
+"chemexec.doc-1.0"="q7rkw9ny7g93m4xm5jvs17v8x4nwb2p1";
+"chemformula-4.15e"="pikmiqhp7658vggw4pdpip304s00jlf2";
+"chemformula.doc-4.15e"="vfw8hi8y9ysbp0ssaqiiphnlgyrjz5l5";
+"chemgreek-1.1"="6yfyrii5xkc1nz5bniqn134rqa2cdv6a";
+"chemgreek.doc-1.1"="x15bq2wwjyplpwpbj8hpz21zhzwjwryk";
+"chemmacros-5.8b"="8993jvwy5blsph2dckvh7g8y6154m33q";
+"chemmacros.doc-5.8b"="hqc6pskqgwdg9c9m83dapqgzz3nbfc05";
+"chemnum-1.2"="nk857am82h2zfh8f5l81sm3xrrg0vawm";
+"chemnum.doc-1.2"="awwrxj67jwai17nvgpgl2lx10n8wm741";
+"chemschemex-1.1"="2gf0m3crv8xyj0vgw3hkwwp1wkmrqdrc";
+"chemschemex.doc-1.1"="k0ggp3lgv2fnq369q0j26jrni2blcvnh";
+"chemschemex.source-1.1"="z9w3cyfnzg70i3ddmskkr1k9dpcyq3pi";
+"chemstyle-2.0m"="lzbqwhh58y559q5lbxnbbz21rfxp1rcn";
+"chemstyle.doc-2.0m"="zv454b37y12fspkcphm6qs0yy7x7768s";
+"chemstyle.source-2.0m"="v52wrccz5gh3pswpfilm4qs48bplws5s";
+"clrscode-1.7"="6w0y1xknbskhhahx05688943y4pqr22s";
+"clrscode.doc-1.7"="m1syqr9a0x2546s5qpslia4ic5zmf961";
+"clrscode3e-2017"="0fz3frh68k47pdn3way6fbpiagyillgk";
+"clrscode3e.doc-2017"="91b116aqyihwlizzw1apmvd8kaaia407";
 "commath-0.3"="qgkl9s5w0dadgirg3aqg0si0zm8swxss";
 "commath.doc-0.3"="ririan3s31h8cwcamjlwglbj4fyvc8b9";
-"concmath-2016"="7qqfg14ka9d6j0ccb3bswg0jhzg8gvjv";
-"concmath.doc-2016"="rw4q8bbj0jyv9fs9vvxv9iksi39mrjm3";
-"concmath.source-2016"="h0akd4lxynf1anylxfv0dibvpkkgb0f0";
-"concrete-2016"="8076kds0h67rl93yygsicgp8hpk6cfz0";
-"concrete.doc-2016"="xddpal4gfl1km582kqvn79q925mixskv";
+"complexity-0.81a"="id7q2in24z1r6mi47jdh98r7d9gkxdxh";
+"complexity.doc-0.81a"="jppdvfvs5wy2vbkzvizzirgrhf9k6sy5";
+"computational-complexity-2.25f"="hs6ja0ghmdhvkm2m5zk4bsyhr0z0z8b0";
+"computational-complexity.doc-2.25f"="nr5kmmq6nd2ppdyy3pygb2fj6ilz9gfr";
+"computational-complexity.source-2.25f"="br0rz33ycmvpsn5fdhvcjlpffhssnw08";
+"concmath-2017"="7qqfg14ka9d6j0ccb3bswg0jhzg8gvjv";
+"concmath.doc-2017"="rw4q8bbj0jyv9fs9vvxv9iksi39mrjm3";
+"concmath.source-2017"="h0akd4lxynf1anylxfv0dibvpkkgb0f0";
+"concrete-2017"="8076kds0h67rl93yygsicgp8hpk6cfz0";
+"concrete.doc-2017"="xddpal4gfl1km582kqvn79q925mixskv";
 "conteq-0.1.1"="r5vmidbf2afm771ijgph43qc66safd3r";
 "conteq.doc-0.1.1"="6ki2nz31r0b86kd2p9w9a5ph8g5dnj8f";
 "conteq.source-0.1.1"="6sd4m9i6zv68gr0b8r80r477qcj6cbpx";
+"correctmathalign-1.1"="vip10w09k4kq9a67pfp73r64mk75095h";
+"correctmathalign.doc-1.1"="51qjv6v507ahi1jhxd9sp406bd93vkdz";
+"cryptocode-0.1"="a8n95hv90vi0bx2azmdxlvhvq5jx3384";
+"cryptocode.doc-0.1"="fz2j47nnxvzn5hymz7r66cq43pw859dv";
 "delim-1.0"="q2f4p0f8bg1nwim31i272i5rpnjibxks";
 "delim.doc-1.0"="5k874svcycyk4y5qalbs4h0x4zkviwc4";
 "delim.source-1.0"="bglajqs1gdzhpjayh5d4afw7h09wln22";
 "delimseasy-2.0"="nv8vysx58m3cgljms4fzrbpqms5wsb7h";
 "delimseasy.doc-2.0"="jgsz6apzs5flbf717bmfgc9p07mfn16p";
-"drawmatrix-1.1.0"="ivzkwwrmf4bmwhzkihjlj7khh5ym85jl";
-"drawmatrix.doc-1.1.0"="1z6nq8mn0hzfrrrwzys9rqc654k47faf";
-"drawmatrix.source-1.1.0"="k1jwxviy7kwkbdd0mkhf3gyn9rmjspxd";
-"ebproof-1.1"="h3p8ykq18z6cdczl7vi38dzmjdr9mgrv";
-"ebproof.doc-1.1"="a40l66j6pm0hm70ly0hz9ckf79x47ibl";
+"delimset-1.0"="l99w5l073yxpq2jrx2lms4q0b129i5kh";
+"delimset.doc-1.0"="bvmwg2l20ah65jpbzavfpadzmk5zfn9x";
+"delimset.source-1.0"="4sj70zg5lbi42flfyfq3nbvf9s4bj6j3";
+"diffcoeff-1.0"="pz1h8lxq1j5js0gcgl27aghy5kz59mbg";
+"diffcoeff.doc-1.0"="nfp3a4dv00fp6xcgvc735zlsg792p5l4";
+"digiconfigs-0.5"="r2ph2xkdaslj50qk54n7a1xx37n8pq19";
+"digiconfigs.doc-0.5"="vignfzc0zrhrx0jgybwmfcgyfcgaqhim";
+"dijkstra-0.11"="25p95xl60c29w1b8z1ggvys4fs3szv9q";
+"dijkstra.doc-0.11"="xn84bb3zgv8jk4slwrr314680l5xybmb";
+"drawmatrix-1.5.0"="pl0mscrd3i4h9m8zq947ajh45apms3fj";
+"drawmatrix.doc-1.5.0"="qxljjk2vh5cc7l9xxn6kicknw2csdk4p";
+"drawmatrix.source-1.5.0"="89lglkdc257iwip9aiwnshzqwhvcqz5b";
+"drawstack-2017"="kdcvc0kd9lm3zxd2zszwriab31p26wrv";
+"drawstack.doc-2017"="plmy162h6z23pzimj4i5wjpih0m21z3p";
+"dyntree-1.0"="820wp3d1dcdm5vxihmk93wqc8qw4rqf4";
+"dyntree.doc-1.0"="j334vdgmzrhlv3x0ihzpa9j2rbbd9xhz";
+"dyntree.source-1.0"="ha5c29s0f6j3r5f3b2v7v7bgxaks28b2";
+"ebproof-2.0"="5ic2h08ff6km04b5j7ya8grg66q00a9j";
+"ebproof.doc-2.0"="3hc5hiis4cssjh2l5a89df29yhjg3h69";
 "econometrics-1.0"="4b5wmgy2zn8mflr9zdfhyc0pcw707h9j";
 "econometrics.doc-1.0"="5rm8ml9qmmq9nnyx9b5x7cfm54qdmqpz";
+"eltex-2.0"="n3kq7kl8i0b1k89i94i4k30qcy31lhfz";
+"eltex.doc-2.0"="pnvsk55d11vh82nn0a77lskyma1mqmpw";
+"emf-1"="l7l1rzphl87qvgldxpdal5pjvlxx834f";
+"emf.doc-1"="sbp51vc20b7m91r43ck9f4czblqa6gfy";
+"endiagram-0.1d"="lvncrih9fmmsd6571dklnq2vzh7jdxv5";
+"endiagram.doc-0.1d"="7nqf9zgjslck0853xy6r6i938k9pd76z";
+"engtlc-3.2"="dc257zhqmzl7yymbv9prpiam1mvznhnm";
+"engtlc.doc-3.2"="d6mmmsi3kr2dlz2g6iwynabjlw1jyp46";
 "eqnarray-1.3"="iprdk3kp9cbmi01r29rmnjrfzifhiw5m";
 "eqnarray.doc-1.3"="v7l4q95sjrh3kd92xgbqazd7dgq8kaq4";
 "eqnarray.source-1.3"="bwkjz77mw47z33bwbgsx81wbw9i4n2n5";
+"eqnnumwarn-1.0"="vz6kiciv5zhrh16ddisfrik5y9g2qr8h";
+"eqnnumwarn.doc-1.0"="py5m5187p7i643k6wgsm7zyznh6awp4s";
 "extarrows-1.0b"="6fa3hrvqa3qf7wqahhb7k168sz6pzmqd";
 "extarrows.doc-1.0b"="dxnpkgk5iirpmzhznidklfk0xy1y5l3v";
 "extpfeil-0.4"="0yaa2siwn8yvcsd1xy6q3shswdzfzq8j";
@@ -5864,9 +6280,41 @@
 "faktor-0.1b"="bjbmkxvqgl81pnq0v7hm0a1ija9vwgyi";
 "faktor.doc-0.1b"="mf571k3a23bdizhirzmkr1xwvm5y3fxw";
 "faktor.source-0.1b"="l1lqrdj9dr1waq7dymzij0m1vvhzvw7b";
+"fnspe-1.2a"="firv6p5c69ljcf2bw8bqpjd6jjsgy8fq";
+"fnspe.doc-1.2a"="kq29lk89jw7wi84h5dgwvpi5vwqj69c2";
+"fouridx-2.00"="lxj3924da4bfn7605g2akgd3ccynizqc";
+"fouridx.doc-2.00"="ic4hkzvwc05qm91h90cx645gpskcm8f4";
+"fouridx.source-2.00"="zgb2xfg0wl5ld4b5v8rn72mxmfy3qy38";
+"functan-2017"="68wga1s4yiamylxfjma76hirgk867yym";
+"functan.doc-2017"="h6jwmv7wp2a8whhi34r62xvi1qll0vb7";
+"functan.source-2017"="rk42vz9n59n31xx5my1ahlnxmagzap7a";
+"galois-1.5"="b8khw120ihwg30l5wiyrpigb0n76j4pg";
+"galois.doc-1.5"="pl6jyfxfim7igp5lhhsdghiz6awrsf42";
+"galois.source-1.5"="pf7dxm40jcipslw88sqascls74wnvhyn";
+"gastex-2.8"="7ncqqh3yaip7f6fpv1cs57wlsw4krkzk";
+"gastex.doc-2.8"="y3ybpis1prha863r0486c1wr24wfy0y8";
+"gene-logic-1.4"="w7b16bvypbh9l3kiwbgha3dyh4dlqpq4";
+"gene-logic.doc-1.4"="nzraabszgvj8b0j503f7h892grbqjjrp";
+"ghsystem-4.8"="1ka9bn3qfxa1cq1f486n4gn596315gd2";
+"ghsystem.doc-4.8"="75554yiry6a6riz7m9mwpbzq801a0bl4";
+"gotoh-1.1"="lmsc2xb42i0w7ysmq1b7v69798xz6061";
+"gotoh.doc-1.1"="2nh9cbc9jvlwxlg3rhayjx63xyjcq0c9";
+"gotoh.source-1.1"="mbdzb4047z6wzr4gam5dfs5199hq02c6";
 "grundgesetze-1.02"="cd0rxykb2favdbw1f945aalhy0shxcih";
 "grundgesetze.doc-1.02"="7h4rhzzj2jak20jrgv9nnjri35iiyvdb";
 "grundgesetze.source-1.02"="dqxmkagx54l3zhsqm2iixizzqmcwqabv";
+"gu-2017"="4m173j1ac2aiji1xjpxccd5bnasv68hd";
+"gu.doc-2017"="vkm8qnzqcdqh4xv4axh9sfy65bx2jji2";
+"hep-1.0"="f70qsf585a6rw0lzizd5ps7lcv2qqsl9";
+"hep.doc-1.0"="aqaxn42inmw854cm1qps4fkcijc11fm8";
+"hepnames-2.0"="3f4dycnxwd41da8gh67gs89xcb3l7zl7";
+"hepnames.doc-2.0"="99jvklmwjkmrlmr9jfgdax0j9ikr7b60";
+"hepparticles-2.0"="m5541j0ip82ygflxc174k8xzr2kx4fh1";
+"hepparticles.doc-2.0"="34viq0myldrs90f8y0dflrjxhimnzkq7";
+"hepthesis-1.5.1"="bnv8xza456594jqklx62qyac9zjn0j7h";
+"hepthesis.doc-1.5.1"="69r2xn0d0badii9gynlk0w2zyfwpbmn5";
+"hepunits-1.1.1"="a3yzdj6ykcd4522cknwng48wbig08kg0";
+"hepunits.doc-1.1.1"="x8d9hwb5z12ng0ndny3b9vgja741bg9z";
 "interval-0.3"="kvyvv28dqv49nxdspbhayc8bbvigs6n3";
 "interval.doc-0.3"="iq5iw643gmd90xmzq9mkmkzf4ws2yxqn";
 "ionumbers-0.3.3"="rcar5imwp2v1vbkx3vxbq4zika5q8psm";
@@ -5874,106 +6322,206 @@
 "ionumbers.source-0.3.3"="vd55vb8qai0kfy0mijzwzgdr52sa5a6v";
 "isomath-0.6.1"="s9cgjw007kx4vcz5f8b51hbiqjmi68w7";
 "isomath.doc-0.6.1"="nhpi08b738hs457jqv7139b44z35xy5j";
-"logicproof-2016"="24sbq01252ij7ldzb8achg4m73fakhas";
-"logicproof.doc-2016"="ldn1c2fdmnikc8fzklp5vzwkx73d91jc";
-"logicproof.source-2016"="745pxgmypzv7a1vf8gjm6r28khxk0s3k";
-"lpform-2016"="ga25ijvkw3cvzkag08jj7w8pv8d8mdj2";
-"lpform.doc-2016"="2pq3d2fni3nc4paaijygb6k5plky9wx5";
+"karnaugh-2017"="8s95y2qxd4i5g5q1x0a7h8iwsci6dls2";
+"karnaugh.doc-2017"="85z4avy6yfziaqd7b4w077ys394a3y4z";
+"karnaugh-map-1.1"="mryi5vdfqia142b35n97pwzvh267y6bh";
+"karnaugh-map.doc-1.1"="3zmcy9jclc8q01d3jz642w6j96ksrpx7";
+"karnaugh-map.source-1.1"="8zpvpcrxb35311nynqsxdpz4iqjai964";
+"karnaughmap-2.0"="52mx0flzri3z9y5fc1rgg665z2rpk01n";
+"karnaughmap.doc-2.0"="8m2xi7580kgrxq9v5dkcfcxhn757i7zm";
+"karnaughmap.source-2.0"="47f879r3821kwn8pwpyhh5874adx6f3i";
+"logicproof-2017"="24sbq01252ij7ldzb8achg4m73fakhas";
+"logicproof.doc-2017"="ldn1c2fdmnikc8fzklp5vzwkx73d91jc";
+"logicproof.source-2017"="745pxgmypzv7a1vf8gjm6r28khxk0s3k";
+"longdivision-1.0"="12d362pdsx3kjb0rbkv1qhnh0gkpp3xz";
+"longdivision.doc-1.0"="qlha7k5qp6rwhcz4c97kv0zighjy2jrl";
+"lpform-2017"="ga25ijvkw3cvzkag08jj7w8pv8d8mdj2";
+"lpform.doc-2017"="2pq3d2fni3nc4paaijygb6k5plky9wx5";
 "lplfitch-0.9"="wxiv9ihwv4jdmr4ij0kvggbbnhbkh19c";
 "lplfitch.doc-0.9"="lzz01n3w8zq7p9bn7lpb6rp6zkgmmxjs";
 "lplfitch.source-0.9"="4lxhwsf7366gs7dkq9qk4pyphjv13ya7";
+"lstbayes-2017"="xd7mf65l1snrwrbbsb7m8357qkanb8yl";
+"lstbayes.doc-2017"="iv7g0mjayd51ymjk2q6azz1pl7nk5405";
+"lstbayes.source-2017"="mwqmkyrba64wp0wwfpx4wbbmii2qxsfj";
 "mathcomp-0.1f"="rjxadz6409wc6g4ffb2jw40rw52rpwml";
 "mathcomp.doc-0.1f"="098xybrmriwyh7dl5vsxxxy4v7nf4bdj";
 "mathcomp.source-0.1f"="m3y8gisljqfy405d7cffqkda0mlz8rkc";
 "mathpartir-1.3.2"="ka1crqmcwlidnxb6n91dlfnf16hir45r";
 "mathpartir.doc-1.3.2"="0qn7ym4gl6m9g7vvx0mjnwyq2fjvy9cj";
 "mathpartir.source-1.3.2"="vx38w09k1cfrprj4yr0vy1gkwkssw6yw";
+"mathpunctspace-1.0"="siyih51vi4k361ai1yf8iy7nkx92ajf1";
+"mathpunctspace.doc-1.0"="xrl18mb7kzlsk38mzbsfkjzm44xiabsa";
+"matlab-prettifier-0.3"="j5p21f3rgbx8hyf7rdjbpn845mw8fgih";
+"matlab-prettifier.doc-0.3"="zssm3k92kxa3mjja3r4sq2574f7byspr";
+"matlab-prettifier.source-0.3"="nkp80iyfa519dkk8gh7pk7fxbj4yn1lj";
 "mattens-1.3"="v9rf7qmiardpzq3zzqzz0p3qnh4lp1ck";
 "mattens.doc-1.3"="dnnzxlvc6vrfy4rrm4vw5w0g85fr886d";
 "mattens.source-1.3"="dw4c26cwsg1hz3wvldlyi8q4f60h3szk";
+"mgltex-4.2"="99vi0f32fla2hmsabmf0d2d3c93kay29";
+"mgltex.doc-4.2"="m4m59xlcjgnd6pbsjsa36da37b61ydlx";
+"mgltex.source-4.2"="k3yw9bfjgkqha34712n3mplxsaqg6j79";
+"mhchem-2017"="75471cjk6hl3kql7ayvr2a0amrd362r3";
+"mhchem.doc-2017"="q2qy0yy4n3y0zak2psqkv4bbk6ajjgyf";
 "mhequ-1.7"="a6dc7zsnfim8vbrwy8jzbhqhphwzh29j";
 "mhequ.doc-1.7"="im348hlavjvbkg67akz24kcx6hxa8w2h";
+"miller-1.2"="vgpbb05dlbyp2phs7cpwrl9l8v7yczdb";
+"miller.doc-1.2"="fj6s0x2rzvldwm2lrmjx0f3hy9l4ih51";
+"miller.source-1.2"="9n5iljgqg52bzz39i2ailg3wjgfvgvx3";
 "multiobjective-1.0"="g6fgsq3fzl30yd4hrw2l6v73ldm957gz";
 "multiobjective.doc-1.0"="187syyaknws2i7i84xxzsnl9mj22z731";
 "multiobjective.source-1.0"="qhsg6vg0djg5h279gbs2lbally9vbrj6";
+"mychemistry-1.99b"="8swklvjnvwzm43kg3q8ydiczfl8l75xy";
+"mychemistry.doc-1.99b"="immlivqi6jjsf5g4mkkr1nls63hb5nqm";
 "natded-0.1"="q4nx9b58zsmfmpap3h2qs8pr28vap5v0";
 "natded.doc-0.1"="bkhf1ldr1hzsyc06bcp7rld2dbf7p4rk";
-"nath-2016"="7x3cdih5q3i8dg25h6737vaphmrdxvbp";
-"nath.doc-2016"="ilxg3pmmz0pf1xp6i3g5rfwgvrjprzbg";
-"ot-tableau-2016"="9y08p6rvv32qh59z9d878g7rz22vhdbj";
-"ot-tableau.doc-2016"="gzadfy5k3kdw7zs1v8758mzpf0m1hgxf";
-"oubraces-2016"="sm7cbapl8cv51d41dgc46gjckv3icx3z";
-"oubraces.doc-2016"="yfvkv4vgc6ycvsd2sixyph039nm4gzvl";
-"perfectcut-2.0"="z5c7ybrfpbr9fjzqfdlfwp1341ylyb8k";
-"perfectcut.doc-2.0"="g5fvzw7j5i7dk97sz4nwy3k2dfzfblac";
-"prftree-1.4"="simwcfiskplzg4nwnyi3cmzgr0if9pn4";
-"prftree.doc-1.4"="mb0hcq6sdiri2dzb2dmlwl2b71jvcm2h";
-"proba-2016"="k6j2r5kacbcl25i7zwb71a2mlyn17dap";
-"proba.doc-2016"="a30lrji3wrd9rb8aa7hzflch7cwlybdq";
-"proba.source-2016"="7grfmfi6hwyqzhi0aynjq9cl65yqh5id";
-"prooftrees-0.4"="lgj82mdszx2i5h1d12fwhqc0w9q1fhaj";
-"prooftrees.doc-0.4"="d58varz8azz0rsyd5m6qwhsq02mjfj8h";
-"rec-thy-1.3"="skvj92b4haykljj11v6b3h1lhvdlsi24";
-"rec-thy.doc-1.3"="z6c8q8h8p8zfah0r7d3l94l0zcic2ggr";
+"nath-2017"="7x3cdih5q3i8dg25h6737vaphmrdxvbp";
+"nath.doc-2017"="ilxg3pmmz0pf1xp6i3g5rfwgvrjprzbg";
+"nuc-0.1"="4mmxcaippf5kwp6sgcwbcf55m4j415ma";
+"nuc.doc-0.1"="b0pkc17fxlgygmfvr84gq1gf58w95a30";
+"nucleardata-1.01d"="4va73nqf813pn4nwssq5l99bm8ridnym";
+"nucleardata.doc-1.01d"="4pf1yr25bs77xpffs1c7amainawiabwq";
+"nucleardata.source-1.01d"="z7amavcl11izgahvxf67r72wh0ib661a";
+"objectz-2017"="jxzqzh7y1nihr8m7jrsnbw7jh187031h";
+"objectz.doc-2017"="d8rk9nql7l67xn6hyvwg4x3xxkpb407i";
+"objectz.source-2017"="62cr53ff66gqjf6y2i01gr70bblhn18z";
+"oplotsymbl-1.4"="xzbszdakjgy7svbksd8w1csc7akwbg8p";
+"oplotsymbl.doc-1.4"="g6zpsvgp1kar3i9rmig6g7y60a5mmk0g";
+"ot-tableau-2017"="mdvqwhal8vq8bqxqi73p4fyc6qpaskkn";
+"ot-tableau.doc-2017"="gcfni2sp25f6qswns4bfl585gfi36vy8";
+"oubraces-2017"="sm7cbapl8cv51d41dgc46gjckv3icx3z";
+"oubraces.doc-2017"="yfvkv4vgc6ycvsd2sixyph039nm4gzvl";
+"perfectcut-2.2"="6hp6k3kq4y44ky1n7xvxp9zs41v0154i";
+"perfectcut.doc-2.2"="ijp8qchgj2vj0ivcvjhi11ckv1iqxq02";
+"physics-1.3"="y7b93d3qrc6674j33cy58v5c6fhlg3dy";
+"physics.doc-1.3"="ksf5jd2gfrq4dj2p1x2iwpgik5vb4pl6";
+"prftree-1.5"="90ydfx91y6rdn1sl1i4sxhf0z3gigm5m";
+"prftree.doc-1.5"="ssg7xvni36l7c69mcvf1ly55zxid9c1s";
+"proba-2017"="k6j2r5kacbcl25i7zwb71a2mlyn17dap";
+"proba.doc-2017"="a30lrji3wrd9rb8aa7hzflch7cwlybdq";
+"proba.source-2017"="7grfmfi6hwyqzhi0aynjq9cl65yqh5id";
+"prooftrees-0.6"="f2p9ln64cc1wqimqa47w3hzgpdw054xr";
+"prooftrees.doc-0.6"="0g5fbbd7fh9inwmgq3c6cbk8ws4y19bw";
+"pseudocode-2017"="bmn68g4pm7wga21yf97mrnmwc588gn6h";
+"pseudocode.doc-2017"="1hm6d3af5zjrpvx9h5ihd6qqyg2384xl";
+"pygmentex-0.8"="bnyslpaj6qfdmak1k1bjyrk0jvflvg1l";
+"pygmentex.doc-0.8"="crqmqfjxlpwibbb9s7sp9qkafnk38f8c";
+"pythonhighlight-2017"="wyvy6ms2blns0nffsf2lzjs4gwivgh97";
+"pythonhighlight.doc-2017"="9g7wy34pzzhdwsaa4rvn41iblnynvxz4";
+"rec-thy-2.1"="w4qc3li9xj805104zqhgvzrl6a2pnyn5";
+"rec-thy.doc-2.1"="p0sdvhna21gf66srbfyblp4nd150d15j";
+"revquantum-0.11"="ciws2fb27v2jkmvacgxx5f5rjypxwhxj";
+"revquantum.doc-0.11"="3yx0fd96b5sxmf0950wy2yfswfn5k5j2";
+"revquantum.source-0.11"="a3lxg56ihykvv3wy0az60hbd3n721grf";
 "ribbonproofs-1.0"="7r52zy2n48hichyvyxnhvzcn10v6bm3l";
 "ribbonproofs.doc-1.0"="15wcmvid4xbflmy4lv1njbnvbz5svk41";
 "rmathbr-1.0.3"="fv88qckj67imsc8a7v0y9pgzqdlzcbmz";
 "rmathbr.doc-1.0.3"="giw002mrgbyjbm5mfsxy2aan7mgiqmv6";
 "rmathbr.source-1.0.3"="iq3id8a5cyskh3adf20nxwfwjxbb32ib";
+"sasnrdisplay-0.93"="qjpcpxjkpv4phwd4x6g42072343pn9jk";
+"sasnrdisplay.doc-0.93"="a9kmvwgbh2ih7vwah1my0gs2dhdzmz6w";
+"sciposter-1.18"="mi8zk7ik6q8rvncwp5m0ch6mfysil8fh";
+"sciposter.doc-1.18"="wan5jxr0084sid3zv4cdhr5kmdv1rjh6";
+"sclang-prettifier-0.1"="594wn96i6q9wgshyqmy7211c2x4j1fih";
+"sclang-prettifier.doc-0.1"="zy33dy1dq1lh9zzqvxh3zwqv53yw2xn6";
+"sclang-prettifier.source-0.1"="0k4nc1bkrw4l66wr47pd6dgigdgs5i0s";
+"scratchx-1.1"="fwylqfph2bpwqd8rl4jq8hi682cd1cw0";
+"scratchx.doc-1.1"="w1x4cg20frqfs889sk91xd5j822ja27x";
 "sesamanuel-0.6"="zivl33hp7zrzz0996fs4822xsbd5pb0g";
 "sesamanuel.doc-0.6"="h4dlbjwcrjk13lnvqxxjmm94pk083zv4";
 "sesamanuel.source-0.6"="fjp5657m4v2qzf4bxzrms7v42ghl861m";
+"sfg-0.91"="5j8965gkq0p9s9ryvy8ym22qz206igqh";
+"sfg.doc-0.91"="ydamww1x4qxpg5bsrcacmfwkkv9c876p";
 "shuffle-1.0"="zg1rq9yihzpl9l7xjlc7djqfg2s3mn2a";
 "shuffle.doc-1.0"="dqra8x226wdqh5baz25qqg905r3xbcld";
 "shuffle.source-1.0"="3r5607h5jsaibvmyvwm1v1scm0yrbfrm";
-"skmath-0.4"="yvpp627ncyb8zapx37023l6syqz8z2ac";
-"skmath.doc-0.4"="zpisnvvfv5xq9vy10msh90a1q6iyas5j";
-"skmath.source-0.4"="ajca6xx6yk8449fypz0y2gbvnwkbvr5a";
+"simpler-wick-1.0.0"="pmjzl9cnwrzxhjiwbrjxfd66lamrhvj3";
+"simpler-wick.doc-1.0.0"="pg2id6jpail1iiz92xdr1bvi2725lj8z";
+"simplewick-1.2a"="hfv61gj0g68m17iiimvp1zqzi7ri2z67";
+"simplewick.doc-1.2a"="kxfipc2w97479is7sdd9fmahrbwfk2l7";
+"simplewick.source-1.2a"="48db2ywp9dg6nd5xbclw2w85id3mf97r";
+"siunitx-2.7j"="105jmfdfm9nks053lc92wz5cbbfk1n05";
+"siunitx.doc-2.7j"="s8x3rnvz95jvgwy7mfp5ajizlnw0i5kv";
+"siunitx.source-2.7j"="d0iwcakc0kb0a80091sfbz6s7qg8lw17";
+"skmath-0.4b"="5ci5mzndbip008nmsjbcc5fq692mf9y1";
+"skmath.doc-0.4b"="gach5kwqg8k1khf43jbdbiybdz0fvnka";
+"skmath.source-0.4b"="ch2aknzr0lr1zav15zss8sv7j99afsf4";
+"spalign-2017"="if8r1d1xwq1as1147m3ixkxgyni8yb9q";
+"spalign.doc-2017"="s49kpxsa940l85yc6wzmb71i789874qw";
+"spalign.source-2017"="ahwv44vd19kn8vzbx7ya6275ysnp3q25";
+"stanli-3.0"="6ws3b75qs69jhag24aki76ndgryb9f9s";
+"stanli.doc-3.0"="iygalq6h7fdik4cfjyv5i62mid9gdr1k";
 "statex-1.6"="h8y1sw298ilqajy8vmi00yl9wpklf5fa";
 "statex.doc-1.6"="ksf4vra9673l5ycl8np7l55rxpj1xazg";
 "statex2-2.1"="a7h5agdmh5xw1646faxxwd1n1ajci53h";
 "statex2.doc-2.1"="cpiw77bl9p7y9vd6dwg4lnlk2n8lmmcj";
+"steinmetz-1.0"="v8vskhmyjdhc7yi21b9i11j4lfzmhypm";
+"steinmetz.doc-1.0"="5y0xh86b75lm16kjjl4cjs7vvylr6wn3";
+"steinmetz.source-1.0"="m31y5wd20vck85yj3zps711zi6bpcdym";
+"struktex-2.2b-6"="2vzrvkq0a6arxnzfsflmsdchabb6lv7s";
+"struktex.doc-2.2b-6"="hmd72jghr12m3kig5m3xpw4qzl9slbw7";
+"struktex.source-2.2b-6"="cyx3ndhnrjgipcwv36h2vbiqdjdvpq9r";
+"substances-0.2a"="wwjn0lkspnwgla7j46j2iwlvdrsvdyzs";
+"substances.doc-0.2a"="apg59a7fh980vddnfzjspsyq1jfnvsn7";
 "subsupscripts-1.0"="1nyf4q1szg0q649jmqlzd5p8j9h1fjkh";
 "subsupscripts.doc-1.0"="9yhhgbj7i83v21flfr3gkr35vkdxpx6m";
-"susy-2016"="xiv8s7m8lahyc17qdp7vhdnriqcz2gzl";
-"susy.doc-2016"="51apv9rzw9q1aa390a7p6w0d4y5amkms";
+"susy-2017"="xiv8s7m8lahyc17qdp7vhdnriqcz2gzl";
+"susy.doc-2017"="51apv9rzw9q1aa390a7p6w0d4y5amkms";
 "syllogism-1.2"="gx6hjs32rq3d1sk28cs8ng8m2i1xwgrf";
 "syllogism.doc-1.2"="m6nv4hcwmh5qa7m411vwm8c6s1xbdbx4";
-"sympytexpackage-2016"="x7b456c7l5nkwaf19g29rpc4m6qz27h2";
-"sympytexpackage.doc-2016"="klh09byy7h38j068d9qrgyhawcfjknji";
-"sympytexpackage.source-2016"="lzsz5ly9rnzph5nxnaqbf9nf5abm302c";
+"sympytexpackage-2017"="x7b456c7l5nkwaf19g29rpc4m6qz27h2";
+"sympytexpackage.doc-2017"="klh09byy7h38j068d9qrgyhawcfjknji";
+"sympytexpackage.source-2017"="lzsz5ly9rnzph5nxnaqbf9nf5abm302c";
 "synproof-1.0"="bv32jflr6n3jdm93xxpbvhz1lrhc3i9v";
 "synproof.doc-1.0"="i74i5km7n20hglq2icb62xcc2pl1fawc";
+"t-angles-2017"="an3w3nw07gc6hyzfjk4bd0j4swj8qr4p";
+"t-angles.doc-2017"="68ylwxvywabhyfqzlb7d642cmhdj3g2j";
 "tablor-4.07-g"="fs9vl9gi63j8bqgiv06dbhbgs2vl1c8r";
 "tablor.doc-4.07-g"="k3d87x83igkq78j1yvav6b08y818qgz9";
 "tensor-2.1"="4gzhhxr2w1bbwb0yf799siazn5d6538j";
 "tensor.doc-2.1"="j4hxlj9f804ffrdp8pf06mj79yb8j6qy";
 "tensor.source-2.1"="89fmh96xlj21pm07c80q9cgiaj2a3c3r";
-"tex-ewd-2016"="725h0x4azacxb6pi7bnrvb5gb2b6rb8l";
-"tex-ewd.doc-2016"="npk74dnjx7jy9392pz0m4fzxcxqqsqq5";
-"thmbox-2016"="5b8zyq68dw8c7cylg28k9bmx261k8d5p";
-"thmbox.doc-2016"="rpd99zkmrb85kgldsyi2iwr70q9n8y35";
-"thmbox.source-2016"="hnjviz4vyw78mg6lbcdyv88qajhjdh6w";
+"tex-ewd-2017"="725h0x4azacxb6pi7bnrvb5gb2b6rb8l";
+"tex-ewd.doc-2017"="npk74dnjx7jy9392pz0m4fzxcxqqsqq5";
+"textgreek-0.7"="m1b05a740x322la70k6ib44sk6cky167";
+"textgreek.doc-0.7"="vah190cds1677yv86nfcyriccln296yd";
+"textgreek.source-0.7"="cqc5zj4ck54rayydvml5m3n4hfnykglx";
+"textopo-1.5"="rvcbhsz8win1g08s6az11ji6ryd9b1fl";
+"textopo.doc-1.5"="3f9w8nbyyjismgdxb5daijc88hfp8m8k";
+"textopo.source-1.5"="4h2x01rkf91dha2yxqpdfgv5qsmz34sx";
+"thmbox-2017"="5b8zyq68dw8c7cylg28k9bmx261k8d5p";
+"thmbox.doc-2017"="rpd99zkmrb85kgldsyi2iwr70q9n8y35";
+"thmbox.source-2017"="hnjviz4vyw78mg6lbcdyv88qajhjdh6w";
 "turnstile-1.0"="c4nm39zwakha4bk75092371db2n0nx4m";
 "turnstile.doc-1.0"="w2hv466gzdsc7vp0al5xk7bwa83szvr2";
 "turnstile.source-1.0"="8p5g2w1pcaxhg2a54rq2h23zd7cbj60h";
-"unicode-math-0.8c"="xxr0b27pvifq3gdhia0fdbs2vbf8b8s0";
-"unicode-math.doc-0.8c"="qj2r3xzlsyf6ipaxaj61nwd1bn26rvhw";
-"unicode-math.source-0.8c"="4lbc78vjh6216iypsz8cd9wwr7alnwnb";
-"venn-2016"="vxgbc1jmchjsq3aq1wklgla50p1smqnz";
-"venn.doc-2016"="3z1kgbyilhajm6przv2a1rbdl55fzhqj";
+"ulqda-1.1"="llh5ji3r34m637hzb9qi4z0d6hap8fcy";
+"ulqda.doc-1.1"="w5anmbpapkg5r1bi0gvh1wqrqjivgmz1";
+"ulqda.source-1.1"="pl71x58ifcpllalxfw1snj2r464qvx3w";
+"unitsdef-0.2"="j5dhzwnaizymvvj0cvvn8hcjgpiaw3xj";
+"unitsdef.doc-0.2"="m3n8c9wpk9m0il8yn3ip4kwvlbyzfndw";
+"unitsdef.source-0.2"="rpwd7p723jsqcmcl28kkfg3fg9dmyfxa";
+"venn-2017"="vxgbc1jmchjsq3aq1wklgla50p1smqnz";
+"venn.doc-2017"="3z1kgbyilhajm6przv2a1rbdl55fzhqj";
+"witharrows-1.0"="1rbidc43dmr9d2qcwmprqd9a9j8d2808";
+"witharrows.doc-1.0"="gry0afqjx118fqcbzpbkbrah8p516air";
+"xymtex-5.06"="lh5pr87m1xhyaj74pmwc8vx3an7gppxw";
+"xymtex.doc-5.06"="bbknma6166kqvxhj3523p85lq7qn1ydc";
+"xymtex.source-5.06"="is60w9mjif26y9s3vv8c0v26z16m97g3";
 "yhmath-1.1"="y84a1hal7inlrjy85za1lfcx95chas9h";
 "yhmath.doc-1.1"="z1kf09r30ij5ghz89bjfikc42f1lq1w5";
 "yhmath.source-1.1"="sx9dhb0nkm4wpyx48l3vp3j92n0knapf";
+"youngtab-1.1"="jknzzzxpa549x22gcar9aq433zwidbm4";
+"youngtab.doc-1.1"="1vrl9pqjlxs1izrw4a5d922v9ll8rv3h";
+"youngtab.source-1.1"="dbcchlqr498s741q1990aal2gm39bljz";
 "ytableau-1.3"="37wsbj7an7fvsrh4w5kvjiibhq0abn9j";
 "ytableau.doc-1.3"="wbgandbbk6zgms4jz2ird33kyg9yg19b";
 "ytableau.source-1.3"="2rblxwykvkrljn1xqz7zw9dz1wyib686";
 "automata-0.3"="7v2smy8hlz3yyqwcw11mjgh35z81n22w";
 "automata.doc-0.3"="49q82z2aa5xqgz3wsgcyix4a9hqfh5q6";
-"bbcard-2016"="b26d8663qv8x23sp8q04c8jzdw49f2i5";
-"bbcard.doc-2016"="99jqw22g1xcqdn4q5f408gvlzwnl7wbm";
-"blockdraw_mp-2016"="al2d83amvpz7z19a14zxn4ib8ayc7b9y";
-"blockdraw_mp.doc-2016"="n0a85bchn27q09771kx4idy7hic8iq42";
+"bbcard-2017"="b26d8663qv8x23sp8q04c8jzdw49f2i5";
+"bbcard.doc-2017"="99jqw22g1xcqdn4q5f408gvlzwnl7wbm";
+"blockdraw_mp-2017"="al2d83amvpz7z19a14zxn4ib8ayc7b9y";
+"blockdraw_mp.doc-2017"="n0a85bchn27q09771kx4idy7hic8iq42";
 "bpolynomial-0.5"="rwijp2lyphgyixi6l1d4j9vrwchr2m8k";
 "bpolynomial.doc-0.5"="1561z658ar885xsbg15psi82qjzc4zbn";
 "cmarrows-0.9"="03hcqmzx16n3y4vvh8aj6vrvpn6minmk";
@@ -5982,9 +6530,9 @@
 "drv.doc-0.97"="3sw31jvb9l0n124h9kq9byzmy3ay1wxd";
 "dviincl-1.00"="gf980a6jm4ar28h7464qx1nayjqvi1xx";
 "dviincl.doc-1.00"="sxmj8rcvwj2q4g3c8ha9a84avsn4w1aq";
-"emp-2016"="brxc803kbnrd6qa1jfag6qxgb7f5j39g";
-"emp.doc-2016"="x8lkwbk13jq48h8ml7a0fzlyn4m8qlxl";
-"emp.source-2016"="ir1ng5an1jbffb2pd5rv412dcfzv84r1";
+"emp-2017"="brxc803kbnrd6qa1jfag6qxgb7f5j39g";
+"emp.doc-2017"="x8lkwbk13jq48h8ml7a0fzlyn4m8qlxl";
+"emp.source-2017"="ir1ng5an1jbffb2pd5rv412dcfzv84r1";
 "epsincl-0.2"="srznlzss5ag3br4pmwny7aqq7gjmqv98";
 "epsincl.doc-0.2"="993m24spzl4jymn69sczm7a8d1ix0zcc";
 "expressg-1.5"="yd8jja79lbjibls84q1r2iqls9hgfp3d";
@@ -6000,15 +6548,15 @@
 "feynmp-auto-1.1"="ps9nijgd6kcnsgvg3gq9gn53mf42xdwk";
 "feynmp-auto.doc-1.1"="a1i2ay1mvkpdicyzmcapvpv3fkz6pk3c";
 "feynmp-auto.source-1.1"="2iirzys42l2k5fmpjxxsn31wpfzv02d8";
-"garrigues-2016"="b6kfrr0zhmbnb1rh93wy5pxq31kspbmf";
-"garrigues.doc-2016"="zk53ay759rgd40fmf7byqpqmibw7rrza";
+"garrigues-2017"="b6kfrr0zhmbnb1rh93wy5pxq31kspbmf";
+"garrigues.doc-2017"="zk53ay759rgd40fmf7byqpqmibw7rrza";
 "gmp-1.0"="pzdcapvcjvbn48n6jnl1hs9mbycrccyx";
 "gmp.doc-1.0"="6ir5fj3s209rk3k9r2wbsz46kij8kw9q";
 "gmp.source-1.0"="an64d733yq3h8fy347lppy46yklczrsg";
 "latexmp-1.2.1"="x2plwjlw7cdim8lxh530zf5v2zjsfaxb";
 "latexmp.doc-1.2.1"="d9q1zwyad9p1nkk08mq4lard5rv291rf";
-"mcf2graph-3.94"="9p3mgypg7j3zk4zd57nc9dplarqk90ds";
-"mcf2graph.doc-3.94"="zlyfdfzdiildl453al425z8qf3wzjj12";
+"mcf2graph-4.28"="la6r9cfqz8ynxlff3przfghrhlwyz4kx";
+"mcf2graph.doc-4.28"="l8yl5f4dqy5ikhn9jhasq188ywfgnd9z";
 "metago-0.9"="4gzbngrpwjbfq5d7jcfavhsmvfwnb77z";
 "metago.doc-0.9"="nn86x3g4dv9y5mbr83r8camfxg0xkv1g";
 "metaobj-0.93"="83hf8awwak3msfmran6q2ylgcs6720lb";
@@ -6027,20 +6575,22 @@
 "mp3d.doc-1.34"="gkjwsbz7sgdj5k6vzvswb4k4yb8xkhld";
 "mparrows-0.1"="d1v4j0hrr4cxm42vwlclvccp1wmvbbyh";
 "mparrows.doc-0.1"="jcf975s8ianx9dmiqa9lvv9ywj62rmap";
-"mpattern-2016"="9ym77kwd2kgw46lck4vbfrbbiwps8g6x";
-"mpattern.doc-2016"="vknyl0b4d4sx2c6l7qhwr4rdmx0ncpja";
+"mpattern-2017"="9ym77kwd2kgw46lck4vbfrbbiwps8g6x";
+"mpattern.doc-2017"="vknyl0b4d4sx2c6l7qhwr4rdmx0ncpja";
 "mpcolornames-0.20"="j7qagfiggfwjqapdrh1z23n0paj54bgc";
 "mpcolornames.doc-0.20"="jd5ai6f2ask0pbhrw46bdw8cfsrfpmps";
 "mpcolornames.source-0.20"="1f0wy1lrg0733vnq5mjwcgdi5rnprbis";
 "mpgraphics-0.3"="jad28la9l7z0jwiml56x849d8zwgsh3r";
 "mpgraphics.doc-0.3"="51y5shq3bamhqhpm2hbdki09b9xil2dr";
 "mpgraphics.source-0.3"="2gb71444b968ap0wvw461xskcgxgy519";
+"mptrees-17.06"="lqn20z9inh6qylgljn9k6z398b0vicws";
+"mptrees.doc-17.06"="50ggxw3jc63clpnz0fnxv2p2h4cgwjhl";
 "piechartmp-0.3.0"="k15blq7m78skmi2q46gnazh4qhpfhggs";
 "piechartmp.doc-0.3.0"="xcn16bgnyi4h8pqaisjivmywg234shgm";
-"repere-13.12"="d1xkkzp1i3qy721cap74dsvbg4g6rb5l";
-"repere.doc-13.12"="4d0fxi9nbp4jcsfynq027x9vkzqrdw0s";
-"roex-2016"="3dp1ank88mbkx9zd4gl8v6nxa7hjvck6";
-"roex.source-2016"="fbyyci2hg9bvdbxxv09q9h37q98gzzxb";
+"repere-17.05"="s6x73lk5rf2a7bxyqjkdbpx53crh1r0b";
+"repere.doc-17.05"="ql1jl0kykyy7wlqpff6sxpg1ipfd0l3q";
+"roex-2017"="3dp1ank88mbkx9zd4gl8v6nxa7hjvck6";
+"roex.source-2017"="fbyyci2hg9bvdbxxv09q9h37q98gzzxb";
 "roundrect-2.2"="zihpsds4r0v44h4bbmmpjgx28y3knqc8";
 "roundrect.doc-2.2"="g6kih4vjqjg4v4qxlxkkxgwhqv0x0pdx";
 "roundrect.source-2.2"="rdydd5cwvnbzjlhdd4kcfjq54rzw9k81";
@@ -6052,8 +6602,8 @@
 "splines-0.2"="bn6gc1n3vbzrns1pzdjc4hf647g6pgj5";
 "splines.doc-0.2"="91g13liz4sfn16vzcvlpqhm388wwvs02";
 "splines.source-0.2"="p527173paps7gqz8wq02jkl6nbx8vw6z";
-"suanpan-2016"="vnglmgbg19g42b79q34fzqr4hjzy7dmc";
-"suanpan.doc-2016"="lvbx0yizc42hgqymw9yscja667h4mz1a";
+"suanpan-2017"="vnglmgbg19g42b79q34fzqr4hjzy7dmc";
+"suanpan.doc-2017"="lvbx0yizc42hgqymw9yscja667h4mz1a";
 "textpath-1.6"="97b12i6v4bz6095z7i7yjf7c3fqg232d";
 "textpath.doc-1.6"="zliwrx3n2r3xjhdi0c80rncxwk5whg76";
 "threeddice-1.0"="91chpiy1n4mg3vcabcm8li91q9lnkcvc";
@@ -6061,95 +6611,184 @@
 "abc-2.0b"="pmaw58frrdbnj81n21mg15yiz7sp0rci";
 "abc.doc-2.0b"="gild9nm8zph2kr6mj9w0sans8r1jz114";
 "abc.source-2.0b"="g8a921yi51lvw6mqj1hxmkwqqh9fkl03";
-"autosp.doc-2016"="qp3c8bp43mx19x8v6cr4qij1p5f2mgnc";
+"autosp.doc-2017"="qkicqm9xkw73rympfn9i8kwj9fhwvwxj";
 "bagpipe-3.02"="z9akwcd2fdwzps3bws9vamik64pyyl73";
 "bagpipe.doc-3.02"="6ssnq5756qnhlbyn08pncriz5la8hpzy";
 "figbas-1.0.3"="xkm3zvkdi7512qnk4kfrb875c3q2gfr0";
 "figbas.doc-1.0.3"="pal9rb3bmrypdk6icdv7fyhdfn48qfsy";
 "gchords-1.20"="06q4p9d1j06dz7sqmjyka4k6r2x3l7nd";
 "gchords.doc-1.20"="icn914698j8gkir78wqnjqw08n2zhsdx";
-"gregoriotex-4.1.4"="9dn095sbd85px033kxdjwngavqiyqqnd";
-"gregoriotex.doc-4.1.4"="2mm4s6q2bifvh5cfpm5pk8mvcks9fkxm";
+"gregoriotex-5.0.2"="cvw74kvscywh89lmqwq25l4cw23a8x6r";
+"gregoriotex.doc-5.0.2"="8jj4ryaybvgb57wxxpydidr4ldr98r36";
 "gtrcrd-1.1"="mqaamg8ick2z265cwl1yd6n81f76y8b8";
 "gtrcrd.doc-1.1"="scx1xk6y85zfbn82aqf3cw1sx0prfmgh";
 "guitar-1.6"="xw88497a60kkbh8pribpsi80bj2wdvw2";
 "guitar.doc-1.6"="5y7s8gbahfqzm50z6dgr667f1rgswvzh";
 "guitar.source-1.6"="7i8ma18fm6piiwsccj8lq6nn446mvqrw";
-"guitarchordschemes-0.6"="73vkv0clj18k41slqmy7165n4nkd1cfj";
-"guitarchordschemes.doc-0.6"="ac6i30kr25pk8d0j98lbjaylrhiddkzg";
-"harmony-2016"="isfyzam48q2f90vyh78rp5df93wzdfq4";
-"harmony.doc-2016"="5zy2cf5afrxlmmxlsycqg3crcl5irkb1";
-"leadsheets-0.3a"="bqsfkvrgg25zwfgz2zfiq04gv5586bpk";
-"leadsheets.doc-0.3a"="jqzxrrms8vg9jqgli2rf8r9vmsx3ka73";
+"guitarchordschemes-0.7"="snccmsq130kvjn2ly56cjck56df5mdzx";
+"guitarchordschemes.doc-0.7"="p74vljfafyj0ap707aydgpf4xs2pabr8";
+"harmony-2017"="isfyzam48q2f90vyh78rp5df93wzdfq4";
+"harmony.doc-2017"="5zy2cf5afrxlmmxlsycqg3crcl5irkb1";
+"leadsheets-0.5b"="j73sldpahwci9i8yc04dpwn9l4jcvbn2";
+"leadsheets.doc-0.5b"="6wvwwqq7zsb3mkjw24yhz87g8agnafil";
 "lilyglyphs-0.2.3"="qn7pjnhq8aaynk7s8mis9g0y0m16fbnh";
 "lilyglyphs.doc-0.2.3"="89k4bzc0jy0yx59y8ssiqvjgqspsfyry";
 "lilyglyphs.source-0.2.3"="30yzqq1pw4mh74c87xxk12n834vpq8m6";
 "m-tx-0.62a"="b48d6wbmivx7hfcj3kyq1zkchcdnvbgx";
-"m-tx.doc-0.62a"="hgi6v9ckba1yznxk69r9njyhcfd5qnj9";
+"m-tx.doc-0.62a"="qrflz9hi5sqhnmlqnli46xr039sbvdyz";
+"musicography-2017"="zphbpfrh2dc1b758gc0z0f5wqhzf9y08";
+"musicography.doc-2017"="cyp85z5w0rlygrp8qymnkq619p53d4ix";
 "musixguit-1.2.2"="29kbldyqlcf8xs5yh5gsx0m7liwbnqg1";
 "musixguit.doc-1.2.2"="pam1limbbmc1jvhznsvrwslmlr86y7vf";
-"musixtex-1.23"="brwdmknizhi0pxaw7qrfijgn0z7plxg5";
-"musixtex.doc-1.23"="9s0h6ra5fbk0mmj1lkzvz965w0fsqwma";
-"musixtex.source-1.23"="kb90c2jhgmx77d12x4rg6yivpiq5rxq1";
-"musixtex-fonts-2016"="a8kdi135xis6qcwy90yisg4wafklmw2y";
-"musixtex-fonts.doc-2016"="91fl3b700pvjqkwsl6h29f0z5i5781s3";
-"musixtnt-2016"="6412y8lh8awml9xs7ybcnhkgyjrc08vx";
-"musixtnt.doc-2016"="44c1fndj5grvw5q4jxyk0dgqxr56lzvd";
+"musixtex-1.25"="viclihkq5gmrflwca3cpyfsk24wbvj72";
+"musixtex.doc-1.25"="viyg92n86lpydg93v9sq16gskd4n1nsp";
+"musixtex.source-1.25"="kb90c2jhgmx77d12x4rg6yivpiq5rxq1";
+"musixtex-fonts-2017"="a8kdi135xis6qcwy90yisg4wafklmw2y";
+"musixtex-fonts.doc-2017"="91fl3b700pvjqkwsl6h29f0z5i5781s3";
+"musixtnt-2017"="6412y8lh8awml9xs7ybcnhkgyjrc08vx";
+"musixtnt.doc-2017"="44c1fndj5grvw5q4jxyk0dgqxr56lzvd";
+"octave-2017"="x1a1668c4p2ik48xz5klvyxkagamqk23";
+"octave.doc-2017"="dbq2bcyj2w3saanvi32mmlx4waaizbla";
 "piano-1.0"="vbbcddqx5sk4gg9w1882g4a8lrnnqn2d";
 "piano.doc-1.0"="bn1c29lffw62jsyiygh3i0biaaz0asmv";
-"pmx-2.74"="ap9b6q3zjq8kab8s567yyzwnrhrpy3qm";
-"pmx.doc-2.74"="b7bzp8lzvq4dmmdn2l23xys4li4lrl4c";
+"pmx-2.76"="n7cbx9548xym6j0s3kiivrlfvbmdxdsg";
+"pmx.doc-2.76"="wpdffh373k6brk2jjyj0pc66rrjghddj";
 "pmxchords-2.0.2"="wwn3da9f9br7dpfhq7yg9j2f64bb9183";
 "pmxchords.doc-2.0.2"="f33mk2mv8pjl4ikg3kvig5lr94iwrm4m";
 "songbook-4.5"="jimhdkxsiqzkwnsjsw1rynkrfhhh5n0d";
 "songbook.doc-4.5"="62n794w3gxyivisl16xrz9lg2r0a0s38";
 "songbook.source-4.5"="nyn7mkdylkpywca50izj2czf485s8sm5";
-"songs-2.14"="nxqx6rp5bvc9rz7rqy5j56n75yaf4g7a";
-"songs.doc-2.14"="h6rq14cjccgndsra0md8z95r0v93a2sl";
-"songs.source-2.14"="64sk2rr4nz8fjy0r6avylyj7jgcb4rkg";
+"songs-3.0"="sdy6ynmyz3w3y0ss1yiaindzmwpadqwi";
+"songs.doc-3.0"="zpkiq08d6igq9wvg4qhl02b7mk5zfj6y";
+"songs.source-3.0"="0lab84qhskdc7fvf8my7g3lcs9ikblh1";
 "xpiano-1.0"="ha9dpa3kpmhbzy3f16d7s6mlvh563mgj";
 "xpiano.doc-1.0"="x579hyy5sibzsn9ldrkwsqrjjrji0xak";
 "xpiano.source-1.0"="77wwb6wxd7c9cqmjlq9cij6p4ibr3r3r";
-"aleph.doc-2016"="38l1vnjk496hhcqxk45w10plif8jslbd";
-"lambda-2016"="ykxajgkmkbqp7l79c4bcm5qg4xnyilxp";
-"antomega-0.8"="jxriw18jifvf24fz8nqql5izp67p8z5a";
-"antomega.doc-0.8"="q9jb5ks7gfxg5gjhkpng5bl0wwbwp2ph";
-"antomega.source-0.8"="l2gs7sapppwxiy712i8vkwfmmc96ch1s";
-"omega-2016"="0v7wvg0vkrwbarcxfnp8k6w09j86y1pv";
-"omega.doc-2016"="zily3hjd30g14zrvj67hdp8nkxk9l5g2";
-"mxedruli-3.3c"="f866q8w776cr7k7mxll72va7zb0avsl3";
-"mxedruli.doc-3.3c"="vhcvl3k5lzb1f0g0ghz1rf3cnsy0cp58";
-"omegaware.doc-2016"="7bgc1pl1384g5zl9qxcdi231pvvwf4az";
-"otibet-2016"="66pn5bmsfw3d7l1prcr8p5v6w93lqfrm";
-"otibet.doc-2016"="i308lrxhgqi1gpsh5b5961xisbb9i3si";
-"otibet.source-2016"="hspwgiv9bs4ncmy1yi02jw8ghw2lxcpm";
+"abbr-2017"="n55llxl7fjmx6p1z3ckjfj94dxkg1n0v";
+"abbr.doc-2017"="9lgcwpp4fw2zjx2rsp9w5szi6v2pdsn4";
+"abstyles-2017"="2zmzwsgwh4rv6ysnjjk35cihbifs0jir";
+"abstyles.doc-2017"="xba8x95rimsa16xhr7nziglk7djzv6w8";
+"apnum-1.6"="sg23pp5g0fk07k7dzrx7s9l5apvpis88";
+"apnum.doc-1.6"="rgdcfmfi5ds10py28mvyb25dld6hisgv";
+"autoaligne-1.3"="r7iil28qiajpx846ml1h5d192s3k4g9g";
+"autoaligne.doc-1.3"="ajr6zrx9nspbmy29vdhyi5hnzf26zyif";
+"barr-2017"="rsgsgzki68jgx8d4r05qj1awvi02rm33";
+"barr.doc-2017"="jfhxfjazvlpcvrl6zjd1sw2ghmcsscmr";
+"bitelist-0.1"="22q3ivacwl5p0c8plgg1gjz8413l601b";
+"bitelist.doc-0.1"="n00mlj88l6djwcxzj0l6pxiiba94kpl3";
+"bitelist.source-0.1"="w38ccrprx1rn0pc34mr29bnx7gaxa7k8";
+"borceux-2017"="ls6xjxrggjzphr4pl71m2va9mndh1r7v";
+"borceux.doc-2017"="zdg5n9rxc2sfkyi1am8jka05avi7hyng";
+"c-pascal-1.2"="m4x5kfq1vm6vzv0ic910fqi1qijn7g34";
+"c-pascal.doc-1.2"="v6wqph0gaibfv4cwph5w0axp5sf70m6w";
+"catcodes-r0.2"="haljpnhhzvyhmnda9vgk77md5zm88773";
+"catcodes.doc-r0.2"="4227wyg04xryg33b39d81nlh6aaja1lq";
+"catcodes.source-r0.2"="6ljn2lwg4bzr9c02d01vh0saja9sz9yf";
+"chronosys-1.2"="qswnnwyghvsbjf3ddvbl7nl00qxwhs6h";
+"chronosys.doc-1.2"="m11jpa7crg095qf03qx7gcrvcb41f83a";
+"colorsep-2017"="il1sig8hzmvq8q0hlbh6fir15rrl5zc7";
+"dinat-2.5"="a1gcgwkj0pd1lqdm20356fbjram3wpa0";
+"dinat.doc-2.5"="6dzss5231fdqjzs8j7z4gfx5iga4m895";
+"dirtree-0.32"="xgxmz79hj1q6qyfkdvgj5nm26865dfmm";
+"dirtree.doc-0.32"="im2rhm2fmqk1snrhvrsm112jw1hwcyw8";
+"dirtree.source-0.32"="pyfcid8hir7vvm6fpwimlfgs65dgzfm1";
+"docbytex-2017"="m4jkx2gf05q3ffwfkrk4x9bcwf9f3dmw";
+"docbytex.doc-2017"="01w9mkddxm1l9i12i5n5i5ar81xfn9b5";
+"dowith-r0.32"="vdgkjxphpmycfcsimxih7gnhv58hd9vs";
+"dowith.doc-r0.32"="ql8hdyxcgss7rvlp1913rp52wn4wjvxn";
+"dowith.source-r0.32"="xq0r5c58clz8qzbhz01gv2ph1rs9wg1n";
+"eijkhout-2017"="hdb3ag2knc67ksx39hmax8x83l0d41kl";
+"encxvlna-1.1"="kz3nvz29czk573cxbi5a5l3mbjs3vfkh";
+"encxvlna.doc-1.1"="gv5k36s89g2zslq75s2j7ffvwdiz4lkb";
+"epigram-2017"="0mg36ybg934n4jxgpf88lnvvc0za59ya";
+"epsf-2.7.4"="55vrh3nmvb5p1nkkpwhrq9glsf64bc3k";
+"epsf.doc-2.7.4"="b78n5gm14qk3brywpz4prglkqnpx9fpg";
 "epsf-dvipdfmx-2014"="qvf8n367wnjahzv8bgh7rmqqgnwraa0p";
 "epsf-dvipdfmx.doc-2014"="b290mp5xqfqzzxa92s9j798qyycaph9a";
-"figflow-2016"="166qngk7yy25v0rbjavi53m0sazk90gn";
-"figflow.doc-2016"="l92iyzsg4fwkc3nalswwpnz99kfcm1q9";
-"fixpdfmag-2016"="8djdk0baqcg84v6qrmdzckq7k97h4nkv";
+"fenixpar-0.92"="61jkr83g6i0bqmp0qg4w09gj7gwcdn96";
+"fenixpar.doc-0.92"="95h02nbzq72mmblzawgqsk8530wi1dpb";
+"figflow-2017"="166qngk7yy25v0rbjavi53m0sazk90gn";
+"figflow.doc-2017"="l92iyzsg4fwkc3nalswwpnz99kfcm1q9";
+"fixpdfmag-2017"="8djdk0baqcg84v6qrmdzckq7k97h4nkv";
+"fltpoint-1.1b"="q48n0d38d8y8m4z6lgmfza4gh1mrzkjn";
+"fltpoint.doc-1.1b"="6ljc5c3g53ig6yj7blcfqy43yvlw5fqf";
+"fltpoint.source-1.1b"="l5ybd1xn6abfhq5kjhvig8zsp721ldzg";
+"fntproof-2017"="bkh1b1j8zlbzmhpif5ji82gwmvg0aprj";
+"fntproof.doc-2017"="hhhxpfkwqpdj0wz78pzg4nbfyzh3j82f";
 "font-change-2015.2"="rvxfsxkwag1pzhh448n737b6ngadrlyg";
 "font-change.doc-2015.2"="14ck6s61lx6gyqmf6i9659lvwd3zh6hs";
 "fontch-2.2"="0h81qy37h3jb2m6g18969189a1jbi73a";
 "fontch.doc-2.2"="csygimfjbm36zfm403jz4kw39zv23zzb";
+"fontname-2017"="sczdif1wria35c8rn5d5lp89pmwf2qp7";
+"fontname.doc-2017"="d7n633f3c9jagmc0yr7439m681ff4yxj";
+"gates-0.2"="awaxppd6dhv239x03vpwy2hn2zwldmna";
+"gates.doc-0.2"="qqmjk1276kdv0rvsv86gi7ysl3warg95";
+"genmisc-2017"="wyk31w93k04bqfqik1ad1q7bx88m6v4b";
 "getoptk-1.0"="2crphpdvd2wcnqrxm180im84ask9hcq3";
 "getoptk.doc-1.0"="vcj36dsv4y0k8czii5fb5b51c57c7rsd";
 "gfnotation-2.9"="3gkmqmawpzqvqsqcmrfc50261mqv8nmm";
 "gfnotation.doc-2.9"="rwivp94nr9a35q0ram2d4wmwj8gzbhk6";
-"graphics-pln-2016"="i32nn2v5zvdg8rdga9kyyz8m9dgfdig2";
-"graphics-pln.doc-2016"="z4kx3vqp4s3zaysha9waghvyd8fcl11k";
-"graphics-pln.source-2016"="227hkqk1dsl5rm1ark6kdzcrjynf0yvw";
+"gobble-0.1"="6hlqjaz609rn1q7v2vacb428m3prpdq3";
+"gobble.doc-0.1"="5h4fnic16yz5x517wsfr5l0wna69an8z";
+"gobble.source-0.1"="mxi6gci6g3y41ywya5cq1vrdqzc83jab";
+"graphics-pln-2017"="3nfl9ir19rl1sm0f943p79nx218y61x1";
+"graphics-pln.doc-2017"="m95zpr9shhsqrnid0dnggvs6i0zyw809";
+"graphics-pln.source-2017"="227hkqk1dsl5rm1ark6kdzcrjynf0yvw";
+"gtl-0.2"="qgz26n49hlpc5s3ckkbxciamp1qvii9w";
+"gtl.doc-0.2"="wk69mj67d9nfqvyk3cw2crczk4mnjffq";
+"gtl.source-0.2"="4cza716i596dxxd0byx4jb7xgy6sc4wz";
+"hlist-0.11"="zxglyva456i86zmawizc4scm5cjgw89n";
+"hlist.doc-0.11"="0k1ysa58wbhw02564py59gcwzhlaiffr";
 "hyplain-1.0"="cdn3m5p0va7v16wfr2hxi7sbbkvai0h4";
 "hyplain.doc-1.0"="37fvn4xi8ibli2622n1adyzgnnhrs05n";
-"js-misc-2016"="shwn2dwi83plybk71sjp3i1drw7xxd18";
-"js-misc.doc-2016"="ppwwslknxds8l1spalpgj950n9amsinz";
+"ifetex-1.2"="nwg19z2dwa5jm6s0yczb1kiqdpmgrmx0";
+"ifetex.doc-1.2"="gimfp74mz131q7ldvfbvqscbi9qwk0fc";
+"ifetex.source-1.2"="67xfw4zg52v5m44d1kw6i32rb81k2yb8";
+"insbox-2.2"="n1wbssqq7h2g00jmvy1g9cx2pb8lp8n3";
+"insbox.doc-2.2"="i5c06kh17g5ghsjivlxsipgkd0ab05x9";
+"js-misc-2017"="shwn2dwi83plybk71sjp3i1drw7xxd18";
+"js-misc.doc-2017"="ppwwslknxds8l1spalpgj950n9amsinz";
+"lambda-lists-2017"="kpvnf57b1s1whhrrrng7j0zvf0cka90v";
+"lambda-lists.doc-2017"="ai0gzwilj0cm1129pl5nlwc9ddsgpchk";
+"langcode-0.2"="6fwjx029l2nalfz81qfn1k7yp0z7iycb";
+"langcode.doc-0.2"="vq8m73ckjicm53q7v8q5k0rhldq55hkc";
+"langcode.source-0.2"="nk07pqb0mfq3vzpdddhb8w3w85svpbq9";
+"lecturer-2017"="4014kfbhxnf4wb9ndfh0qfwbbrvz0wwa";
+"lecturer.doc-2017"="avsvzihsa6jn0abvd4122k358w5sf4y0";
+"librarian-1.0"="5siy7c2xclp1c305vqiayp0n5dzil1gh";
+"librarian.doc-1.0"="8nxz7ac5hdp9820nsfkvhvv0bn55idq2";
+"listofitems-1.5"="d14kxmn6jpxh98ad5xiy6qzk1mcib0hs";
+"listofitems.doc-1.5"="vxckcblj82whkf0xwsbwkr057n4ccbwl";
+"mathdots-0.9"="6avfq6dlhbqw1i3jrjgcdbdzx2a0w5nq";
+"mathdots.doc-0.9"="syy0i8rjssr81sy26xcx43jbripqx9d9";
+"mathdots.source-0.9"="zpl4xjhcq4hs18hqiyljy3lfyx9xbng3";
+"metatex-1.1"="jidirfi30wf0b4aq279lim2pylirmv3r";
+"metatex.doc-1.1"="b0rgim8d9dns88zvf283czk4zgsvvi3b";
+"midnight-2017"="5zah5lcyxgq6zxdpazqy3lqv7vxl9dcr";
+"midnight.doc-2017"="cl4ff07jfflwqpmbi7d1phc65hvhaif7";
 "mkpattern-1.2"="q3wl8iaijlhsg5qx35f5gcmz6gwj543g";
 "mkpattern.doc-1.2"="8hx2z63klm8dmyiyfg069qy4vf5qzc4f";
-"newsletr-2016"="1hrni43c6y624w9nryc8q8rd4w6jjap3";
-"newsletr.doc-2016"="p8jfq33i8ah2a35a7d1rb0s3dz0nicvd";
-"pitex-2016"="6hpvvpnw3bp3sa442b33xsphhyx0vk4b";
-"pitex.doc-2016"="b1y9bprx9harpgqmbchh33gwnc8khzsa";
+"multido-1.42"="xvw8537j730srqyigrb1q367g73zh29q";
+"multido.doc-1.42"="qp7jdx0jca995df559f1ji2l32jz2h12";
+"multido.source-1.42"="qc1473wf17ppqxy11xgz226w4d8zrxk8";
+"navigator-1.1"="0q23aqjf31y78hxmlhx4mf04c95rwdn3";
+"navigator.doc-1.1"="vxgrfimg900qa0ibwpbwcbv63rbaplp3";
+"newsletr-2017"="1hrni43c6y624w9nryc8q8rd4w6jjap3";
+"newsletr.doc-2017"="p8jfq33i8ah2a35a7d1rb0s3dz0nicvd";
+"ofs-2017"="1vqjznrdyjqn6ygq61h8rnwjymkx5kpj";
+"ofs.doc-2017"="8i8acpk75frksj5wshpjpcazbd93whzy";
+"olsak-misc-2017"="vipxn7qlib4hmx4043jgrcp159j1gbjg";
+"olsak-misc.doc-2017"="wd8fi2c7arsvhdy7372gw7vkvpc9mv6f";
+"path-3.05"="gxlifrd0kfxajy8viylk3wsfkycd96xv";
+"path.doc-3.05"="0pbd67di200vghv2a4bp7vwss7bsbkjv";
+"pdf-trans-2.4"="f2qw1mx9qql6xqsnnwcvqx59baz3gzyl";
+"pdf-trans.doc-2.4"="vbg7kp37w1p727nia0p1imyvxhqgzgna";
+"pitex-2017"="6hpvvpnw3bp3sa442b33xsphhyx0vk4b";
+"pitex.doc-2017"="b1y9bprx9harpgqmbchh33gwnc8khzsa";
 "placeins-plain-2.0"="b0dxmvbqfwm4cycyqm9ir7dl7dbgq37x";
+"plainpkg-0.4a"="xsvwz9z9f2jirfyzggiv49y0rfmhmnaj";
+"plainpkg.doc-0.4a"="b0c8mi4mr6bjdhrwbcplwjw920l4zmbc";
+"plainpkg.source-0.4a"="lcrm6734c3dv44wqcf4sp1c1aic0vqqw";
 "plipsum-4.3"="8jq9bahjflimbxs6vmwz2nl50jsy6ygh";
 "plipsum.doc-4.3"="9jp6ipn24yrl486b96ln2nk8i15h9fjs";
 "plnfss-1.1"="wkcli3ca9m6grq1ccbc5jjychw9sdrzx";
@@ -6158,15 +6797,49 @@
 "plstmary.doc-0.5c"="jp2lgn5yq10g0jj5hihbcl77hpy2ryfr";
 "present-2.2"="w9872dq3x09s66fmaxhv0ad27y9f48in";
 "present.doc-2.2"="g4wqrsc8jgsjkwmrp3z6xmhpd0k1xg1m";
-"resumemac-2016"="8kydfyx795317240qryrp7zjvpbcd43r";
-"resumemac.doc-2016"="avh8y1vj230yn8bq0mb0mngrki4h0czy";
-"texinfo-5.1"="mank3amcnmc5iy63vny8156f2vnlvh8d";
-"timetable-2016"="ca6qybasxlgqhmlqyjr1dw3n3j2455wb";
-"treetex-2016"="gkvpkgqggl2s86h7rmad9z3ax6wrq3hk";
-"treetex.doc-2016"="5r9rz97y0r280vn642x65xgcffb073gx";
-"varisize-2016"="h0jdsw1dapsq7ml9hibgg9571da7lipy";
-"varisize.doc-2016"="af8xf6nzd3h9fm52gn6xpa886lzdpz8h";
-"xii.doc-2016"="h6cnm10jv759abw65bbkyhniq7dw5qh9";
+"randomlist-1.3"="nfdsmsl3s1wj8p236s3hmwhwfdx289wb";
+"randomlist.doc-1.3"="c6zlhgw9k14wrqffy277jwj3nqp8vsl2";
+"randomlist.source-1.3"="w61n9d30k1gjjrykxps0ssap7xncdfh2";
+"resumemac-2017"="8kydfyx795317240qryrp7zjvpbcd43r";
+"resumemac.doc-2017"="avh8y1vj230yn8bq0mb0mngrki4h0czy";
+"schemata-0.8"="3qik2nhhwhpgkwnay4rsmglh6kffm1pz";
+"schemata.doc-0.8"="7rggpri0l5pj9rppz8ynd8d6jz0v7ssp";
+"schemata.source-0.8"="qixmvsyiaj3yl78053y2s8xgp8ba06f5";
+"shade-1"="4ywc6gkvkgm5fiq6avik748vzj7f23g2";
+"shade.doc-1"="ax6w6sfryrzmjdff803hp6qfc9x7knkf";
+"simplekv-0.1"="hzrb8zzk62jc89bn9hmsg8xskkf7jnyl";
+"simplekv.doc-0.1"="fygasbjw3slr4d11asghdnw57i0r4qqp";
+"systeme-0.3"="z5imn7jxp57sqqh6qhliinmacb8krj3j";
+"systeme.doc-0.3"="p4w018mvrms7kv9q23ff3wq6bjz1a220";
+"tabto-generic-2017"="libhmc3f9mcs93xzi22qhk8nyy0vzv4x";
+"termmenu-2017"="b9z1s2xibg6vcrd5qv1n1zlparqlwf3h";
+"termmenu.doc-2017"="0fqaygp9h3wr9x8ghfkxnsi9w1wfjis6";
+"termmenu.source-2017"="xygav2l9gll238dyqa8126sn9hc1n1w2";
+"tex-ps-2017"="jnzaqr3pc6a2bfh7jlsysc8hy30cq4xp";
+"tex-ps.doc-2017"="g377qq7n63mqil18vlfgimfd589pa1qm";
+"tex4ht-2017"="qbfxx7ipwz1warbpfk1m88zqjap0hj1d";
+"tex4ht.doc-2017"="hi6p91idcncr8n8hiz6vb4fpwggm1d78";
+"texapi-1.04"="4ysk0vfpgxfdkpaag4982k7ni4qkksjd";
+"texapi.doc-1.04"="l2753w2z702418c8shbami8hzdsyz4lx";
+"texinfo-5.1"="dq24mpwkc7jacni9cn3jppy79s057s9w";
+"timetable-2017"="ca6qybasxlgqhmlqyjr1dw3n3j2455wb";
+"tracklang-1.3.4"="gj0vs4fplc62n4gvr1dpv178djvhp9a7";
+"tracklang.doc-1.3.4"="lh0zdd16b49hipr5bfcdvsra3y43hh63";
+"tracklang.source-1.3.4"="h3hqiqmink97g2qf34zqqxxiad92dsx6";
+"treetex-2017"="gkvpkgqggl2s86h7rmad9z3ax6wrq3hk";
+"treetex.doc-2017"="5r9rz97y0r280vn642x65xgcffb073gx";
+"trigonometry-2017"="ji2axcciqhac3aaly221w3bja28yb2nw";
+"trigonometry.doc-2017"="drmmcz6w0mvdzmf10dpikm8iagq3hjyf";
+"upca-2017"="hfay60269pv5n1r64q1r9d0lqljih70w";
+"upca.doc-2017"="czzbjifd9bdw0g9c8s2b76sq1cmw3hjp";
+"varisize-2017"="h0jdsw1dapsq7ml9hibgg9571da7lipy";
+"varisize.doc-2017"="af8xf6nzd3h9fm52gn6xpa886lzdpz8h";
+"xii.doc-2017"="h6cnm10jv759abw65bbkyhniq7dw5qh9";
+"xlop-0.26"="vjjxxxwsq6pshgia7z796rwmhc5sjqnn";
+"xlop.doc-0.26"="gl0qca1pp05fh8a1baylvl2a26s549y2";
+"xlop.source-0.26"="hdfdp7jn8hch5fydl1zddlfh1av08dxp";
+"yax-1.03"="7kwmcvp6dlxj4jp0xp599f6469zhwnwl";
+"yax.doc-1.03"="4fh5pdqkifpv1zynkl1ycw0xi817wy5h";
 "auto-pst-pdf-0.6"="64qw6a4r38bsb4z3giwdvx18k60x0bch";
 "auto-pst-pdf.doc-0.6"="syhgg4sidch19kh1l9nda10dq7kvyvjq";
 "auto-pst-pdf.source-0.6"="j5n1kpkc88ry8nmb9hd3g382dm1x8c9x";
@@ -6190,24 +6863,25 @@
 "pst-3d-1.10"="pg6n52kv7lk6i6rfqyzijfrxdbv7ym5x";
 "pst-3d.doc-1.10"="x7bl3prki06ki517r33ab7pz72n0ycz0";
 "pst-3d.source-1.10"="xchbmh6g5zwja9xgxlkdb04qx4kplclx";
-"pst-3dplot-2.01"="4gl2v6hvb4176cnbgzghcdsw9p1kv50k";
-"pst-3dplot.doc-2.01"="rzm0slr5fmswcx9mw9axk1rzn7n4sv5s";
+"pst-3dplot-2.04"="m0ww4lfmigs5knn6i9x5qnd1hw1cvcb9";
+"pst-3dplot.doc-2.04"="jd1vzccssibgymacp05maz256a6iif2v";
 "pst-abspos-0.2"="bbag5d5l1pad71rrc51lbd8k11jm7nn2";
 "pst-abspos.doc-0.2"="70m0f6dbxy9j9iwxx92kj2k4vwqsbrc8";
 "pst-abspos.source-0.2"="3bnsfp2rj4rviirll63zljd7wady41q5";
 "pst-am-1.02"="pydkanpjfkw4s25m2rnxxmx2nq94rsk9";
 "pst-am.doc-1.02"="5sy24k5ivs70h1zg0knnfxyw0k0244nr";
 "pst-am.source-1.02"="ay1y6q7kmpib5bslmylx5xag413a425z";
+"pst-arrow-0.01"="13pfic6an180whl8c9flfsw83ldrgj39";
+"pst-arrow.doc-0.01"="60rhkqwp0mbrn1ddp4n5akj3b6w03pjs";
 "pst-asr-1.3"="78h56zzm2yq7nv40l2aql6ihrx7da5gk";
 "pst-asr.doc-1.3"="qx4jpg74zpjjjh01bwxmw7lyip0nwxfc";
 "pst-bar-0.92"="a5456vc3299z2n5di8kfv5q07bnp7fvz";
 "pst-bar.doc-0.92"="6p7ag1iq37p5rkvd3a6b32cxnj8jqkz0";
 "pst-bar.source-0.92"="grywxwwpmwyf94rwa8pmcxvbf0r0xanz";
-"pst-barcode-0.15"="ldhjjgyqs07yfxny8d1pv64p92g78f7r";
-"pst-barcode.doc-0.15"="bijch9qrqq5rdl979pnmaagbdv9krqvk";
-"pst-bezier-0.01"="63mvm18i5hmsrxnzngs44ys62m84n8dm";
-"pst-bezier.doc-0.01"="sfxj0k6iv787y88lp2myay851rhdzhzb";
-"pst-bezier.source-0.01"="9f6mpd3p4q947039y5qk5n1bws89d0la";
+"pst-barcode-0.18"="mvdpfn6iwpyycb8sfa91jw0mxyq6ai5d";
+"pst-barcode.doc-0.18"="xbyg4yj85i4pj46b8bxha5w8268j1k7f";
+"pst-bezier-0.03"="7gw43wmghlvfv0vmbxb9m75wki7k90ij";
+"pst-bezier.doc-0.03"="1dldcqv70p1iscmp22jh0gkvg9c2z112";
 "pst-blur-2.0"="xlvdgcpxbaqdw7qfp36xx9brl93gknak";
 "pst-blur.doc-2.0"="s2nqfv19ihhsx64hixcj74b9314q0r4v";
 "pst-blur.source-2.0"="km82lbn5chcrqzg19kyyczzzrladh5yy";
@@ -6215,10 +6889,10 @@
 "pst-bspline.doc-1.62"="vk4iq1imd58w0f8a93c7zf56yb0hkr91";
 "pst-calendar-0.47"="nsnyxxld6q4jzvc8kwysbwn9y6fxi9g1";
 "pst-calendar.doc-0.47"="jvwhyiz2cfzcx6mpwkahmpcb3fyl6yqq";
-"pst-cie-1.05"="3xz9p53r09n86gpf7z7fmv482il5pjxj";
-"pst-cie.doc-1.05"="5nrh275pznx5mwyh13x8vdjaqyqk7gby";
-"pst-circ-2.13"="2drfi18qqddcfvyhif6n0wnij9pb3h1r";
-"pst-circ.doc-2.13"="y8h5hmjvc2grbvz101p8193jljgpkws2";
+"pst-cie-1.06"="gxxwapvfgmfvbc2xk0j51jj1br0v9ssb";
+"pst-cie.doc-1.06"="1sfdjwhw8fss94m00bsgdbsdhn0rnf04";
+"pst-circ-2.14"="wlskq8g5nkx7ramgybavficfk6w0c55v";
+"pst-circ.doc-2.14"="yn80b73w9193r7nwf6wb3h0jwf7yhz3f";
 "pst-coil-1.07"="2ai64805vflnfx112c8p0jqf1ad477wn";
 "pst-coil.doc-1.07"="209y878cmqrykmakyy38075dkdfff6nb";
 "pst-cox-0.98_Beta"="c03maichp45vxcy6n3p210gpvypr5v2p";
@@ -6235,16 +6909,15 @@
 "pst-eps-1.0"="djkk1cq45fzh2q1pvl23aiqi8b2znqrk";
 "pst-eps.doc-1.0"="i903x3p9wwb1jjf5al8azqr3iasmxkyk";
 "pst-eps.source-1.0"="r6jcjqy0f5mnkkahzqf9qnfrgwqh52h8";
-"pst-eucl-1.52"="fqynbdixxpnnjvq67h9aym08k2jf3a11";
-"pst-eucl.doc-1.52"="ip0h0is17lbfqzkalykbkhjxaxga6g76";
-"pst-exa-0.05"="qlh2xf8m1if1s44hzkwgjmqwbv47d8xj";
-"pst-exa.doc-0.05"="kn0kgnd8nn9l66s4i5274241q3pjgmi9";
+"pst-eucl-1.56"="rb1769g6vgjrq6vx79s4c6z6cy58898r";
+"pst-eucl.doc-1.56"="cwizlv632bcddknihhwbf4kiqxs13ka7";
+"pst-exa-0.06"="1jqv019148d2s5n7cmlclldqd3mzk08w";
+"pst-exa.doc-0.06"="v45ljmsk7y4p256vikzyk7w0z1vnybqz";
 "pst-fill-1.01"="llnpvgwf57n20wh4p9xfbwcxzlwky62z";
 "pst-fill.doc-1.01"="2wyyhm91dszgjzpvfsyyz7wk3z8k345w";
 "pst-fill.source-1.01"="yg27p6nlmkzbkjrygc2kc6bxj6hm9fdk";
-"pst-fit-0.01"="1hdzll7859ci3r2j4igff3702hq92gm2";
-"pst-fit.doc-0.01"="csb85a5gs2qm1gdm72dvf0fynzjm0ph9";
-"pst-fit.source-0.01"="2gcl9m50kkskczdy1b7mq9s4l10rnrw8";
+"pst-fit-0.02"="glmix9zjghzn0pa092yf6qppyax0grf3";
+"pst-fit.doc-0.02"="d2ilipqghmv5i4jmjh63199kn78i4brk";
 "pst-fr3d-1.10"="wcwbrmyh4mn9af5skqaj9pljkc79chwq";
 "pst-fr3d.doc-1.10"="hcf0909wnb4qdhrcy5bsgi7bjhkd3rs3";
 "pst-fr3d.source-1.10"="fyqkqk6p5m83q133ngw9a3j6gpzy8aii";
@@ -6253,14 +6926,16 @@
 "pst-fun-0.04"="klmswb8gqb538ghlay62dwg1asiq8l13";
 "pst-fun.doc-0.04"="xafzv4wa5hzqmclbv7s7xh0ba2kaay69";
 "pst-fun.source-0.04"="s7173q9a44aqd43d8bwcrskc9bsh1c1r";
-"pst-func-0.82"="jnpg44h0r5dp71vqx43vjayr4q4x70sd";
-"pst-func.doc-0.82"="szzcm14zac5mdzrw22sn8y4v3xm31crf";
+"pst-func-0.88"="and4w7rpprax4adl8a7xs30sdsmql9b4";
+"pst-func.doc-0.88"="h0y8flqqydsr9bkmvbxyyani5pxldrhn";
 "pst-gantt-0.22a"="ghji2bp2wz4xgkmh2vrfyxh933r8dr3q";
 "pst-gantt.doc-0.22a"="zvdlzyll48hrl970ms6j7pgwp2f2vmy3";
-"pst-geo-2.03"="fvjp2dqa5g1r1fd5xhvvjq4bddq2qq0r";
-"pst-geo.doc-2.03"="jmlc0ghj022k48555c5zp629pz3mpwd1";
-"pst-ghsb-2016"="rzy3vznyr6jd0b0vr9h6ajlqc11bp9rz";
-"pst-ghsb.doc-2016"="5w079f1q4w8yxs4546qzx2c21vrhm2ym";
+"pst-geo-0.06"="p2q2w8rl3z8xvdylc8inm2i4zbh8jxc8";
+"pst-geo.doc-0.06"="1kjhmh2naj1v43rhl7kssy7y9gq0ming";
+"pst-geometrictools-1.1"="rx8v1nyhqrny92sqsrwzsra4mhrh7xnh";
+"pst-geometrictools.doc-1.1"="20k0sg2qkfzkcpq1qa42195dw9swjx3h";
+"pst-ghsb-2017"="rzy3vznyr6jd0b0vr9h6ajlqc11bp9rz";
+"pst-ghsb.doc-2017"="5w079f1q4w8yxs4546qzx2c21vrhm2ym";
 "pst-gr3d-1.34"="wpbib4n4j2fmgbirhq8xha4di6f3w1xa";
 "pst-gr3d.doc-1.34"="ipap5gil3j6hkdcl1l1y0a6fnj754zq9";
 "pst-gr3d.source-1.34"="l6i8dnqgpl8iwsmbhiw3a043pbxb3k7m";
@@ -6294,23 +6969,22 @@
 "pst-math.doc-0.63"="0ad7biw2p83k17sy74drsl8daw716pk2";
 "pst-mirror-1.01"="l1qs4938r324dv9w1ij2xfwk16nslyhk";
 "pst-mirror.doc-1.01"="varxk1wyh1lc7yv5n3ad1yp583rchj3l";
-"pst-node-1.36"="52w16inwk9k56xcp74pbqz3mrki706ds";
-"pst-node.doc-1.36"="z2j1izw5a9amm724id8n8vzm63kjdaqn";
+"pst-node-1.39"="m4qqbm10zq8xqwjbrk6d3p9xlich0c9n";
+"pst-node.doc-1.39"="3bp341yw9k84gllar81hd6ak439l3q2y";
 "pst-ob3d-0.21"="b133mvl37zxxqny148r3mnwijp69jzc2";
 "pst-ob3d.doc-0.21"="v0d9mrz4dvpk0qix4fiy632jfhfhqy4l";
 "pst-ob3d.source-0.21"="yqjb2ifyxj2mvs11lxq32dgdr74af9p3";
-"pst-ode-0.7"="ypsyjv4jbx3wx8ql7m6hyd1j7jmg6h43";
-"pst-ode.doc-0.7"="91p3icsarksw1ycm172mavpax0jjavhi";
+"pst-ode-0.11"="li4g5a2l6znwrgs7lrhi2n2fs7snshzh";
+"pst-ode.doc-0.11"="183l2sh29n1hkhx8lmqdi71p1a6a6pb9";
 "pst-optexp-5.2"="6k171kswlvjz2qrgsr43llpn8a8fx2b9";
 "pst-optexp.doc-5.2"="8nfgcfs6614n1szf9c8b7mjk43f2vqah";
 "pst-optexp.source-5.2"="krh33kab76gxw3vjcaja3y8vk2xjpgla";
-"pst-optic-1.01"="n9371pi9hjwj7mcsjfr056c960j7c01s";
-"pst-optic.doc-1.01"="6m1l8j6ms1m0r8g74xs74ivicvndn5df";
-"pst-optic.source-1.01"="0h3yma6n7wvbx468z5c6i73v3klv9m4x";
+"pst-optic-1.02"="fmp70zsr3gfcxc9d7mik8y7fdq9bhv9z";
+"pst-optic.doc-1.02"="bw2k4jbxfdwyn7pfn708wd3ff8nr14ww";
 "pst-osci-2.82"="5rwmmzwp7jwfv40cg66gi0n75mlvn851";
 "pst-osci.doc-2.82"="nmgp00q4xifasnxnckw04kmd8qxxdd7k";
-"pst-ovl-0.07"="bwafjjmyj2zf19x5i5y6cqidp65kp621";
-"pst-ovl.doc-0.07"="69mxvilq908b0pcar5clcp4gp7c3fi6a";
+"pst-ovl-0.07a"="g6sni4112p1kyribk7p6rv1mwwjb7xb4";
+"pst-ovl.doc-0.07a"="n23m8iv4lv4009x9l6sa177jyfjkp0pi";
 "pst-pad-0.3b"="x3762zh9c5shzl02r9ssykd2a0rqpk7k";
 "pst-pad.doc-0.3b"="ymjpw81y22mbmf62735kqi80yhylvazg";
 "pst-pad.source-0.3b"="7cqccc3ps8qdhbykgc6yyygjds46p5av";
@@ -6322,49 +6996,55 @@
 "pst-platon-0.01"="c1crbkzj0vvblf8n894g91q7qig185w5";
 "pst-platon.doc-0.01"="54icmvjwsbljdbq03j3npmwr9j85cdpg";
 "pst-platon.source-0.01"="bs136jlsz9yxiw062dlck6km6fsapgjv";
-"pst-plot-1.75"="1zi1imlnf6xai6xhi52bqq5rqd43qbxg";
-"pst-plot.doc-1.75"="vjhw8dyq2n8c4hvmjf7pmljmkf35xi4g";
+"pst-plot-1.84"="a10g7rhbg2jrxkm73avbb9csi6bi3d14";
+"pst-plot.doc-1.84"="6ndjai9liadbz3xj8l0nr5a025svg110";
+"pst-poker-0.02"="ayld7472rgn8zy8fbvf9465p5v691bk7";
+"pst-poker.doc-0.02"="xfcxnvwibnl8nqq94sc32ikkmnlscv89";
 "pst-poly-1.63"="caj343wmgfxzbzchalw7w14jazj3xb3n";
 "pst-poly.doc-1.63"="gq61g8l852k4m8n69kzqdx1sii0jr41n";
-"pst-pulley-0.01"="jvxjh78x37gj05wnb5riz21kkazdyaln";
-"pst-pulley.doc-0.01"="xmd23dn9xblhsj95q62c97x3r9xw5i7j";
-"pst-pulley.source-0.01"="n8kd5kim8a12ja8racd7xy3sz856f991";
-"pst-qtree-2016"="6slxqgzm8pzscdf79x1y4zp3rav425g3";
-"pst-qtree.doc-2016"="9bp342h5rimv9wyjncj9m9bb3x2pb77p";
+"pst-pulley-0.02"="d7y0xspcv55vq4xhhpwhl9a3q33fpyga";
+"pst-pulley.doc-0.02"="6g5jnm4i5lrxqb45mn60g7nlc9xq13cg";
+"pst-qtree-2017"="6slxqgzm8pzscdf79x1y4zp3rav425g3";
+"pst-qtree.doc-2017"="9bp342h5rimv9wyjncj9m9bb3x2pb77p";
+"pst-rputover-1.0"="39c8h8wq8rcby34dnpq8f9d87zlfd0p8";
+"pst-rputover.doc-1.0"="apm70lr0xn7hgj16acpcll9wd3jcxqbn";
 "pst-rubans-1.2"="akzd33l39b9gh53hkqzaznb6j6rrbif5";
 "pst-rubans.doc-1.2"="sa01cv2q19w3rxlib2j2wppvbjcbn6z8";
 "pst-rubans.source-1.2"="vanr4y960njpckxcy8i10jh8fxmdd94m";
+"pst-shell-0.03"="kllra0m3v64wiw4mg1wjqwcwapgbqw34";
+"pst-shell.doc-0.03"="j8j9vfqbw1bzbncflx0wk7awr599pp2m";
+"pst-shell.source-0.03"="4zzi02gy69lscpmwmsy5i6dzck63ql10";
 "pst-sigsys-1.4"="89mhw4a91vxvm6jr2806w7sdgm0sldzq";
 "pst-sigsys.doc-1.4"="1x1s3l6z4rr8s1s8smck8x8vkg9sb7k5";
 "pst-slpe-1.31"="i8wqm7c5rr1gvrcqdhzgc3wjsnvhxnaq";
 "pst-slpe.doc-1.31"="d63x21a81b3chx59ygn3niagb12lq0vq";
 "pst-slpe.source-1.31"="b8pbhx17ad49g92il07bx2347lim9kr7";
-"pst-solarsystem-0.12"="s8kd8xj2mv939y4x8d1qj7gzp0ic7j2j";
-"pst-solarsystem.doc-0.12"="8ck7j4f14zjzvcz0xb9fpm3cay2hmgki";
-"pst-solarsystem.source-0.12"="zig04547z0ggxsg1gwanzkqxpkx64nym";
-"pst-solides3d-4.30"="9svz46366bqla75i3rrdjgqsjb4xvm6z";
-"pst-solides3d.doc-4.30"="qh7rc9jl7m1fkpq40wba4s5i4qcqgnwa";
+"pst-solarsystem-0.13"="k3gvgdnwv5054qph6ljijgwlr4mhrsmy";
+"pst-solarsystem.doc-0.13"="sh4if86rr6p8bmjrfndh8lfsibjmlj8l";
+"pst-solides3d-4.34"="j69csa2fcbv1ih3ay93n0qd8wv04q6di";
+"pst-solides3d.doc-4.34"="mqhqa0qzn96gkrjcaywszpikz8klpc5d";
 "pst-soroban-1.0"="q71r7bilwmgxxvcqngmn9w63cqwh526i";
 "pst-soroban.doc-1.0"="ds57w9f3d4dy5c17xsvrmzs09iccanh7";
 "pst-soroban.source-1.0"="sj27j1n05dfq3szxyifzd24i44c4ls40";
 "pst-spectra-0.91"="7h48zv55xaxbgccdp7710lh3y2s334sn";
 "pst-spectra.doc-0.91"="sc2zbs93vbzp4jqgwwxh7pga2ngrwxnz";
+"pst-spinner-1.02"="c25gya6x35s07ki87x3f8jm85a0hsdqb";
+"pst-spinner.doc-1.02"="b15zdksxzk1dr3rmgi5qfkqwq131qnv2";
 "pst-spirograph-0.41"="2mkxc7vrmv5xa7aggmpc27wss9gw8zzr";
 "pst-spirograph.doc-0.41"="4q5pbwicrqkpmfr7zwa0ykmfy32y4iks";
 "pst-stru-0.13"="9xzgq9yp4wh3939dxg4wvkzsvq8za3vw";
 "pst-stru.doc-0.13"="pm4nj6rck0s7gjhkfjg3i4xa8qd1dihi";
-"pst-support.doc-2016"="z97cka1jrk6jji8lczqfxc09cqj7f34x";
+"pst-support.doc-2017"="z97cka1jrk6jji8lczqfxc09cqj7f34x";
 "pst-text-1.00"="cz2rwirb2xh5yp257rn8i6s0vdns1cpl";
 "pst-text.doc-1.00"="xmxlml48x6y95arijiba41m9i201hy3q";
 "pst-text.source-1.00"="kzl944rkvz2bjwv6dgq8qhmmmfqxchc2";
 "pst-thick-1.0"="b2dnjagm4kkgxfjilahizzyq6mb1cx5f";
 "pst-thick.doc-1.0"="jkybjsqnnavyazal3bf4z54ldqnw1gw5";
 "pst-thick.source-1.0"="1kjjkqgz4fwghaialrqvgnfq57vl13k5";
-"pst-tools-0.05"="mlc1gkgi32j85fvf2n0k58b2yfss4wc5";
-"pst-tools.doc-0.05"="w2n6gihycll03p7pm9cyl52kz6cz9c6x";
-"pst-tree-1.12"="ax45ifqcw3idmjv3mbvgmn829g2yca1q";
-"pst-tree.doc-1.12"="bj13spjygv5c3ldd8l8hxzkapw09hz4c";
-"pst-tree.source-1.12"="qkiyldmxjd38zyczmbrq16amblqwa4qf";
+"pst-tools-0.09"="ds5ss7w0v0afygykvaqc85j6m12dhjky";
+"pst-tools.doc-0.09"="8h66rj9gxr5n8g07kd22i1fgrvnixdmm";
+"pst-tree-1.13"="l1m6c66jv4v02n4mjv9ddgh84qbyllqw";
+"pst-tree.doc-1.13"="jgcx73vrpiwvlq9rg1iszm57bj1qsr73";
 "pst-tvz-1.01"="0xky3nd1q8kv7vbs73dcbwgjqbysrwi8";
 "pst-tvz.doc-1.01"="hrigaq1rz3hd5l4969913apdwayy1ifr";
 "pst-tvz.source-1.01"="zs1dh6kiphzy0p7nj7i1faldamjsc1j0";
@@ -6373,17 +7053,19 @@
 "pst-uml.source-0.83"="50n69kfybcg2qlxjy9d0f330rxy23sv6";
 "pst-vectorian-0.4"="45j3kc2ma7yvpk73724419zxzajyyc0p";
 "pst-vectorian.doc-0.4"="kr9cw6fs2rra7ymmza9mf3winvj17c0j";
+"pst-vehicle-1.2"="fzkkfjzb0s227y1942p89g2s3qn5bgdr";
+"pst-vehicle.doc-1.2"="152w1jskf5ninr660a9cjbyh9q4bhphj";
 "pst-vowel-1.0"="aq45bsp7d1rdflxvs1aga0kqmn9b3zd8";
 "pst-vowel.doc-1.0"="zm075772viyjnm1akx6ixk61gb33nq8m";
 "pst-vue3d-1.24"="kdnn3bssm9xrfr42ni1n8kg04r899624";
 "pst-vue3d.doc-1.24"="qg9v649wjxjfrp14f3ac4shp5nfad89m";
 "pst-vue3d.source-1.24"="zxk7phlcdh2g1x9l4mps6ncwxc8ydryi";
-"pst2pdf-0.16"="1kjw0j82pb00fwy917jdhfb2gly6ds2i";
-"pst2pdf.doc-0.16"="qdrz94v1zmclri1rh582qbn2d6wqaa0j";
-"pstricks-2.68"="x1c7cj8im1d8r526kzh08lrxnk3bhdic";
-"pstricks.doc-2.68"="lwv4j4wp8sgpcfqc9ri4gy9r1yz8zvcg";
-"pstricks-add-3.80"="y9155n1s6c6fgg9d11awd311hwd96zgv";
-"pstricks-add.doc-3.80"="zbkzqs5z4cr0r9vfdhz3cphg59xbmb9n";
+"pst2pdf-0.18"="rafm5fyifzzz21336l2yvnqs1ynrcrh4";
+"pst2pdf.doc-0.18"="hpjd3gxsk0lmajf2fpac7ykhrznzsily";
+"pstricks-2.77"="4pkfaqg4ai639y5c6d54s2dwg9fda5fv";
+"pstricks.doc-2.77"="xax0m7fnkacwhzh713yx8x03jid25lkl";
+"pstricks-add-3.84"="rw69449rg24rc3hqavx1cgj6rf9kpzak";
+"pstricks-add.doc-3.84"="lkqz96g9y7lmwdxkbl6jfw1bzpqlh4h2";
 "pstricks_calcnotes.doc-1.2"="4q48najl98h9lb1866avfw6c5ir7p4bj";
 "uml-0.11"="ggl1iw3qhzysy0fza2dbl3igwlcq3i0n";
 "uml.doc-0.11"="rhj5ivlvx43d8c700117lklmgardm76a";
@@ -6399,11 +7081,13 @@
 "IEEEtran.doc-1.8b"="zdc3y0lkjpis1fdkshd6bwsmkxr6w2aj";
 "aastex-6.0"="s6k6maiimq07jvyjy6i16z7wnybs5j6y";
 "aastex.doc-6.0"="sr7n3cm23yfbc9a4pfs3k3w584kxhqmk";
+"abnt-2017"="b5g6psg1s6ggwfib0b0hkdkyj4nbhh7h";
+"abnt.doc-2017"="d95fssk38pnnab13fm03hyajaz8vrl49";
 "abntex2-1.9.6"="asw2qc8f7hg5ziyp6xw7n0zz2wyxlr68";
 "abntex2.doc-1.9.6"="mswyx4k6c3n31h69arb4385066dhblpj";
-"acmart-1.12"="bpg2bx1hff813nx03gxqlh0j5vzkiwzn";
-"acmart.doc-1.12"="lsmy0ffvhgszlw8r4gxjldsbak897n15";
-"acmart.source-1.12"="wacxhbabid3p5jp7pyq0dvmbbs4chv6a";
+"acmart-1.47"="k2wg5i82fhh6kx6q3gy1vj8wigmbi70j";
+"acmart.doc-1.47"="xlzbwjnmw47jpq1g6c80jj1llazwfqvy";
+"acmart.source-1.47"="gqxjiqwwbyzxspkpsnwrjf1phra7gwcd";
 "acmconf-1.3"="9wid04wqz4l1xisvlng52xabw9m0p1k5";
 "acmconf.doc-1.3"="66xjqp6a86iq2908p77cz57651av2i23";
 "acmconf.source-1.3"="7ssw68bvkxxixxmf9ygp7szxmc59fvik";
@@ -6425,20 +7109,20 @@
 "aiaa.source-3.6"="wllq5qv20bc4f7m098yn1f5slyrdxazz";
 "ametsoc-4.3.2"="4v5ya7z7mbbxqxkjp5madwpn3m456gpp";
 "ametsoc.doc-4.3.2"="nzphxaasrrgxhiwixz6k6qikbg6z45gi";
-"anufinalexam.doc-2016"="qb1dvx5ryz6p5dia1z13aa0h0822f814";
-"aomart-1.14a"="gdkgy7mjfr1anw8b6558dp7n6sm4flx2";
-"aomart.doc-1.14a"="jxbfcpr0la1pm8yiyfhh8p157jxn1vx5";
-"aomart.source-1.14a"="rkqfzg6zkl0dpx5v1vn3gyi6p3j4gb89";
+"anufinalexam.doc-2017"="qb1dvx5ryz6p5dia1z13aa0h0822f814";
+"aomart-1.20"="v73qxy1qy9pczanjda8w1yim0z3xnmka";
+"aomart.doc-1.20"="7ii7p60i1jscbm662fyjm50ysx995nqf";
+"aomart.source-1.20"="yjf95fz8dx3h6gk07q3452fqjf3pkxvl";
 "apa-1.3.4"="g7ywm2jp0b70qdwmm59m4rr8glx3wc66";
 "apa.doc-1.3.4"="vjg7gj1wi6mb9b1qyfsznhgcbvivdn1c";
-"apa6-2.20"="xv96gdw8qbl5q8l6vxzdy60bzvnq87af";
-"apa6.doc-2.20"="kjh8xm376iq3p70y5fl49y4zvh8p4y12";
-"apa6.source-2.20"="asfncwprysdcalfxsf151wx7hn01wxvr";
+"apa6-2.32"="8b479v28qw8k5hxpfc1vhkyf44f6wxbs";
+"apa6.doc-2.32"="hmb1y0jdxnz23azfaphhlzkxcs50krhp";
+"apa6.source-2.32"="lvjgha718vdc0d4a9xg568n3nfdah16j";
 "apa6e-0.3"="0bilb5nbgi83kp1w7d1kci1akg36nv1z";
 "apa6e.doc-0.3"="p7ir3azb68s9pms0gpa968gffr2qr0xw";
 "apa6e.source-0.3"="baqh9z3mlxqy4kklhnb9a66gj36lnhxk";
-"arsclassica-4.0.3"="p3w5b12aass8kmjc6dkdsszwnjy688gk";
-"arsclassica.doc-4.0.3"="w0b84pppd9jzj1h4iy8ys9y1hmilj31r";
+"arsclassica-March_2017"="50nd02nyaxyxcy9d2sf78fh4yhxgwxdq";
+"arsclassica.doc-March_2017"="cam8jmh3p9ir7p0y59w1ppy2zw8bvygb";
 "articleingud-0.3"="45hkl8j1hxdww0igp85iifrdz4g4h18l";
 "articleingud.doc-0.3"="00653rqfzjv2f4wl77vznk2p1pi6f2fd";
 "articleingud.source-0.3"="24wwfplzs8477i5kl1ks5fvkd8w1lv76";
@@ -6446,51 +7130,64 @@
 "asaetr.doc-1.0a"="8d1x4sq5xpgc1kb5ys4dp02i2r1p3ha1";
 "ascelike-2.3"="b7ff1cj0jmbdr6wrvcqr37byak164fy3";
 "ascelike.doc-2.3"="sqynsfl8cm40n0r7v2a7qlhxx6zny623";
-"bangorcsthesis-1.5.0"="bm47is7rj8j29lc31lzy8jfb4zqx8s30";
-"bangorcsthesis.doc-1.5.0"="md1x5ifg2hyaxw75garyg15ikqxrz5f4";
-"bangorcsthesis.source-1.5.0"="mqdabxha4bhdn15zrpx6v4lfd0vjpn0p";
+"aucklandthesis-2017"="gqqynyfp4l80jc7a90by84wjmn22s0br";
+"aucklandthesis.doc-2017"="jr76ykx7f98jvfjy7dr767xspb50rsnw";
+"bangorcsthesis-1.5.2"="ky8ixx69nxccn4a343bs2g2bqzwbxkyy";
+"bangorcsthesis.doc-1.5.2"="qa5s7byik9gmrf7b6amx1l3d50qakmhh";
+"bangorcsthesis.source-1.5.2"="cjriqlf0zm0jw6l9g53j3msy14r4j62s";
+"bangorexam-1.3.0"="k3xv30md9cy8wyb4pikiavw6c9qkff7v";
+"bangorexam.doc-1.3.0"="gycbbqixfn0hbqgi2lvgbsfn8slyzakf";
+"bangorexam.source-1.3.0"="yfx2g8vb5fzdjdfq5z9949khiwd1vgwv";
 "beamer-FUBerlin.doc-0.02b"="k09b82znxfk7gi7cxpkffs65v3q5siph";
 "beamer-verona-0.2"="jgqm1267x276xsdikvc586h946xfzhcv";
 "beamer-verona.doc-0.2"="skxiv6nxw4vk3c7ppl2bripmlkada52x";
-"bgteubner-2.02"="wbm0wx7ir27gllk28g0fiz099nwwqrbz";
-"bgteubner.doc-2.02"="fz678npdkkgyhyf2qk7f2jpapkkzlz1z";
-"bgteubner.source-2.02"="jyxc2j6yjwrd28ris1mwps0c71z5v26x";
-"br-lex-2016"="1bqx45q1pirhxhlcsfhqy78765skgrnl";
-"br-lex.doc-2016"="8jjgnwg9glhkwlbn79bz13pklnyhvq24";
+"beilstein-1.2"="7njrzm474yiswp5zdv08nx001685dyqi";
+"beilstein.doc-1.2"="1hjzhlwy1kdaz8457n9ly89qjj0140wa";
+"beilstein.source-1.2"="8y4p09higdscj2f74gjbdl4c3ddhbmwv";
+"bgteubner-2.11"="kjykk4kfr7iig49zpd26kga2p4kki4gq";
+"bgteubner.doc-2.11"="wi654djqdqp0hff6cshv1hfkhmgcacs7";
+"bgteubner.source-2.11"="jhqhmr6bb4ldma4dscl9l4csan3qrv6q";
+"br-lex-2017"="ipw7gwrsdv691vnv257w9i15f465irnv";
+"br-lex.doc-2017"="kai74ysi41iw5bc9rjv8saj7qh7n0s12";
 "brandeis-dissertation-2.0"="8nqvv44ahsf5nxn6m4qrd5yiarim1zr9";
 "brandeis-dissertation.doc-2.0"="lfpykcdb4yrf7pz7b1ljrissjlk4v20v";
 "brandeis-dissertation.source-2.0"="xnp41jb8wf2zlrcqikp6qxnhw9k6j1z6";
 "cascadilla-1.8.2"="03g1znhjzcvxvclzwb33lrm6703j1xxw";
 "cascadilla.doc-1.8.2"="njy3lpaw3lch5x3p1mm07zis50z38ps1";
-"chem-journal-2016"="8rsrybpvzqr389ip3lfkjna1vy6lclv1";
-"classicthesis-4.2"="z7kzmwqa72x76sbcjk96wpcxi81hp1pr";
-"classicthesis.doc-4.2"="y1j93vs8bl92259cc7jfzy6b3xax3gi9";
+"cesenaexam-0.2"="0n58an00m7xywgjxd4mk4jvr3wkla1sg";
+"cesenaexam.doc-0.2"="1cq9yg0f3j9s40jrkzgxnpk2ya88jgiv";
+"cesenaexam.source-0.2"="213fs3j3x9f0330jy9hfxmq3dhpl1lgf";
+"chem-journal-2017"="8rsrybpvzqr389ip3lfkjna1vy6lclv1";
+"cje-1.01"="8hqxfzxk4i09244jw9z5j42qjxn6d5vf";
+"cje.doc-1.01"="4b2dpc6jcdp0bwhfjlv4l8j5q8p0kf8j";
+"classicthesis-4.4"="7fa8sv17vk1vgwkmw1cafrly07pc61kg";
+"classicthesis.doc-4.4"="b40106sfiwgqc60slyap8mniy9xys70c";
 "cleanthesis-0.3.1"="rs5scswkmbikw0r4xs8wc86js9fsfaa3";
 "cleanthesis.doc-0.3.1"="640j45873rghdx1c5h0n08a3z3ca5q17";
-"cmpj-2.05"="awd4vc139sm6ffq56s2sgqmkmaxja6n6";
-"cmpj.doc-2.05"="zbqhnyqgks8jr91m5yr7aqf97f7gxffx";
+"cmpj-3.01"="4imggckmccyqhm3fdl7v8kwsakfjknmd";
+"cmpj.doc-3.01"="3r41m4byz5qrlhng3sajvnwqf8zqjxfy";
 "confproc-0.8"="6anwdx64g1yfr109jrnqfml6bqj8l98a";
 "confproc.doc-0.8"="qczsp87rylnxkd8nsi14kjahnkh57i6m";
 "confproc.source-0.8"="f8yczf6glbb74hvfga786qvamllnza9c";
-"cquthesis-0.9.7"="bxsxhzsa0wvqir69ipkc9r05zblpnsl5";
-"cquthesis.doc-0.9.7"="a9rmgwlhp08kqgj0i13ghwxalwgpqp8i";
-"cquthesis.source-0.9.7"="lcdl08m48a6k6rvdc3g3h7qrwbpx1rxh";
-"dccpaper-1.4.1"="79jv4cagpvwvxbhc2pjcvpp8p1rrng8b";
-"dccpaper.doc-1.4.1"="bf1j7mmd145b4pgy4j1xl17gd5cmsx85";
-"dccpaper.source-1.4.1"="1x48vgdn9ir0480hbdl0fqw16dza8q2l";
+"cquthesis-1.20"="lqh5vlm7gnd48vzh0pjmq2qvrvy71rjd";
+"cquthesis.doc-1.20"="dyw7s4pysii278m73mck8qrsk0jvs74g";
+"cquthesis.source-1.20"="c0y7gpa2vx36lj1dqafwjayq9rj3plqg";
+"dccpaper-1.6"="2cbir3v5ihswwanppdg4my02sp87clrj";
+"dccpaper.doc-1.6"="r2frh2ika6lrrpw0bncvi9q70xlha8gc";
+"dccpaper.source-1.6"="pjladkb5sa1v4psplxyjxd5r5w7bw0jy";
 "dithesis-0.2"="y0xrpjxnblvgahdwyfhm2hag5hss6qzv";
 "dithesis.doc-0.2"="b7ka35ywbrn2m3a6b8cyzyvajwxyvdkl";
-"ebook-2016"="08y1g19fvjskwm55g1av1x8bs95vmc6y";
-"ebook.doc-2016"="kw04pn3a7pbkgxjrn1p12z65j8k4n3fk";
+"ebook-2017"="08y1g19fvjskwm55g1av1x8bs95vmc6y";
+"ebook.doc-2017"="kw04pn3a7pbkgxjrn1p12z65j8k4n3fk";
 "ebsthesis-1.0"="3f8i1srqx6hh10rrjshsispqr3wdhm0m";
 "ebsthesis.doc-1.0"="wic4wfgihf2yyk40937hr2g59933cyy5";
 "ebsthesis.source-1.0"="q1lhixwgkc6zis1sgsnwzsd0p7spp0zz";
-"ejpecp-1.4"="yiczzp81d0dysry5nw2y4hqa83n29fph";
-"ejpecp.doc-1.4"="22yybl8rkbx4kw4zfhk8yic3rdrcrw6y";
-"ejpecp.source-1.4"="0dlkxprs13gvcv039d1zigy3wp0466px";
-"ekaia-1.02"="78afi3wg60g034ij8pq3lq73rlhp94dc";
-"ekaia.doc-1.02"="cnjh3a2jdh5g65527vd3zq0vkm64yz31";
-"ekaia.source-1.02"="q1y0pgy7j2nwzshylrrvjfw2f9xjgv4f";
+"ejpecp-1.5"="vzfnvl9rxwbkfyv5pd759d2pgn1gr4qz";
+"ejpecp.doc-1.5"="4449msv5iq090x7r41q1m4l6dnvi7fzp";
+"ejpecp.source-1.5"="sqklvmybkamm25bavxc232grpjv58wmh";
+"ekaia-1.04"="9nf7f8bpgwlwvi7q7fm0k3q0kxbmqxf8";
+"ekaia.doc-1.04"="m3bjh6g13dv06w2p1jqls18cck4gzwf4";
+"ekaia.source-1.04"="gr1gbgpy03z7j1s8bcapf6nqzyjxbzx9";
 "elbioimp-1.2"="wp7pv78ijjgb48majhg8pjqcmkq29jbl";
 "elbioimp.doc-1.2"="0515vzg1miiljb8grlb8idsb2y9gfcdc";
 "elbioimp.source-1.2"="lzbvgi6d0w8wwf052v6a1gzz2qfvpkn4";
@@ -6500,9 +7197,9 @@
 "elteikthesis-1.2"="fq911ak06fd2h6brn2zsb20pkqgl4kb4";
 "elteikthesis.doc-1.2"="b5ja8g2vrf7gxpsfwshly6h3i0h0kw7d";
 "elteikthesis.source-1.2"="iyrmq8s585am0kb3ixgbi2g3n7aqxwr2";
-"emisa-2.1"="adflhhffv72fkn5zinylhhgply4gxz1x";
-"emisa.doc-2.1"="mnm14xwymj9d0mnxrlq8n4y54ssfavfm";
-"emisa.source-2.1"="67gqf6nylj2hgkx6cnfgg3vdzjl75p11";
+"emisa-2.1.1"="18lkpz7s4imwxhh9gb92z8vm42113m5g";
+"emisa.doc-2.1.1"="l3yvr8m9vqkvraix5cfym1ggqvp68v55";
+"emisa.source-2.1.1"="l3afagwzm9s33clz2n94d6rw2cgkrc9i";
 "erdc-1.1"="pmxparxijq91mlqb2z2ci0mk9as4r1nz";
 "erdc.doc-1.1"="a7f0jw1j2l0md2s4hdzv6gb1v867nk8n";
 "erdc.source-1.1"="5rf897hybsib6915bvyp0nai8j7bszgb";
@@ -6517,30 +7214,39 @@
 "fcltxdoc-1.0"="gr5vxdra4lcsljhm591xs1b6z4ci2ddc";
 "fcltxdoc.doc-1.0"="mibli0mi846flzm0id9z0cr8x90rivgw";
 "fcltxdoc.source-1.0"="yn567l5sbbrrdbcmiqdpyq8kq5y1ni1v";
-"fei-2.0"="s3279szy4ji5rzlqkmjxibb1qczvk0d9";
-"fei.doc-2.0"="mcj607d8jgwv83abfnqfz14v9170mfla";
-"fei.source-2.0"="lazcajxlfhhhx1z6h8xk3sk8mn89iz9k";
+"fei-4.1"="iffa6bcr44gyblz4412900vw1mk1yff7";
+"fei.doc-4.1"="ziidcv4d8pijn1nnnybfmy52lk51r3yk";
+"fei.source-4.1"="br856c89j6dkc6favifj084lw84ydy1b";
 "gaceta-1.06"="gkwy4pkpzmykxm2rqldpjfh5q5m87ca1";
 "gaceta.doc-1.06"="zbxs7kz33kbvx4g5zykh33zn2g9z2cp1";
 "gatech-thesis-1.8"="q85fv2ikl3ikw9ja5j7sgygyi6v1x2kp";
 "gatech-thesis.doc-1.8"="q97libi0drg6plfjps8p9fd7fxbxg34n";
-"gradstudentresume-2016"="bmmfv6i9zhk617r9a59yz4m0g14s1q1b";
-"gradstudentresume.doc-2016"="xw0w9hwnyhb6xszynfvz489c9j0vyxsk";
+"gradstudentresume-2017"="bmmfv6i9zhk617r9a59yz4m0g14s1q1b";
+"gradstudentresume.doc-2017"="xw0w9hwnyhb6xszynfvz489c9j0vyxsk";
+"grant-0.0.3"="a9bjc5a9i24mymq11dsw78gck3pdb16n";
+"grant.doc-0.0.3"="39g10k0rwfx678fnc8vx6j77wvn8f5c0";
+"grant.source-0.0.3"="4cfhdbqmffiypcs88iij2fxc5lmylxfk";
 "gsemthesis-0.9.4"="jhw29zl7f93xh641ws6ydqh62cv1kbbj";
 "gsemthesis.doc-0.9.4"="3nw8q8pxsfdbd4gmly0bg8ig15ccpy1q";
 "gsemthesis.source-0.9.4"="w1k5h97pgahsar4r1sbg6i2dj4npr6y0";
-"gzt-0.95a"="66bnyyjxac96wmwqh0y00cq95pyw30cn";
-"gzt.doc-0.95a"="dvkjf4wan69n7qwbpn4nrbbm8abhxy9a";
-"gzt.source-0.95a"="myn1r8b1q38d4dhv0w0jxj60shg15sdb";
+"gzt-0.97"="6l094jyfaqzf23z23gg3ssbbn65dc0g4";
+"gzt.doc-0.97"="yp2ci7c9b5r92aaycmqbmfypgjf52dy8";
+"gzt.source-0.97"="6pw3hscx9h13migi8li1n5vn4az2pii7";
 "h2020proposal-1.0"="sdm13gcvhga8q32ai16mnz2rfsnwb7bz";
 "h2020proposal.doc-1.0"="8nsjvgzyw9137ncq9v48dhlncb10snyn";
 "har2nat-1.0"="yn5d36r1lnx5xhrk46laka9crikcd5yl";
 "har2nat.doc-1.0"="8gh35w4a8j117z6dzy9p7mmbxsh789zf";
-"hobete-2016"="k2agw9n4s8imsfi399r1n3v80sdxc41s";
-"hobete.doc-2016"="n60jvwc9ca27sxbyjam8jpp6b73ydc4g";
-"hustthesis-1.2"="xn837s3m5kfppm64m0jy50q0zijvvdbx";
-"hustthesis.doc-1.2"="v39zs0q1147iizz7j37yxy7gp4fb3d83";
-"hustthesis.source-1.2"="3jbl3mpn55kzgc489ls0mv08z12fya8r";
+"hecthese-1.1"="fj72nahca2yrd27fl1nigdhzzsalfd8s";
+"hecthese.doc-1.1"="8fg8i7x9f872mfc1mxr5ii2yx8h71x09";
+"hecthese.source-1.1"="8klyvrqilgw12r0jhw7clrmxxh4lbq40";
+"hithesis-1.0.2"="mc36w0marknbcjbdkc8k3s2bjq4pggzl";
+"hithesis.doc-1.0.2"="m5kaps5hi3y3lqsby97rw6fcxsv782yd";
+"hithesis.source-1.0.2"="4s62sjbbrgmay2zfnndvp20g60b536ss";
+"hobete-2017"="k2agw9n4s8imsfi399r1n3v80sdxc41s";
+"hobete.doc-2017"="n60jvwc9ca27sxbyjam8jpp6b73ydc4g";
+"hustthesis-1.4"="f7wr0296h2a3i6vahvrxysl7dr03sihs";
+"hustthesis.doc-1.4"="jknn279nybf7j78y4s99abb6znbkif9w";
+"hustthesis.source-1.4"="j828cim80xhwzjvn6drhy5qzr8sx87w2";
 "icsv-0.2"="3k7if2nxgb8zcyr7j29v3pxcqcyygg3k";
 "icsv.doc-0.2"="n714ksda39kc8zsqd1x7lnq3crg2w6fi";
 "icsv.source-0.2"="h08pzrpgwn88gz0d6kyrvnyjrra6f3vz";
@@ -6549,28 +7255,42 @@
 "ijmart-1.7"="nh0kksmb0z5k95s15bwxrbqxxnlq81l2";
 "ijmart.doc-1.7"="b88j6a249p8f9bp35a8p019l02s7lbfc";
 "ijmart.source-1.7"="y5wyzz6jr5lp0syjywlvdpb3s02cb7ks";
-"imac-2016"="w4g9hwgh6wvbhf5v8xfjcba6chqlp32z";
-"imac.doc-2016"="5qid3adma0486l4li4mmrgxl9lykzfz3";
+"ijsra-1.1"="zj3pf34flbmdy98fzmshxdwhsm9gypb3";
+"ijsra.doc-1.1"="pmw844flk212zpdvcp026c63snmasbsf";
+"imac-2017"="w4g9hwgh6wvbhf5v8xfjcba6chqlp32z";
+"imac.doc-2017"="5qid3adma0486l4li4mmrgxl9lykzfz3";
 "imtekda-1.7"="rm2w2mx8mxzxjwgsw6gk0i64c2wb0yxa";
 "imtekda.doc-1.7"="m50cfbqcjz4ylda5myzz4idaqfv40nay";
 "imtekda.source-1.7"="wrx5ndn59k0rlz19iq8r4fzb4yly9hr2";
+"iscram-1.0.2"="bib03bq4zlcni182mpqmgdd2g6dh27ip";
+"iscram.doc-1.0.2"="mdgll4mymf7k1kaqjlfq1ici0m9rl71i";
 "jacow-1.95"="gkj6s2lf2wnnr4n34v88iwhd10lkdp46";
 "jacow.doc-1.95"="3l02236m9jc5z0xlirpab9vy7aj48n6w";
-"jmlr-1.21"="rkbbway8fzk5j8abvzk0y8h5xgr92d2i";
-"jmlr.doc-1.21"="5z61vpc12q8w6lkin1swwm336dipfkqb";
-"jmlr.source-1.21"="mn4kmxwmllzh8p33xf1dh5kxni2zzm79";
+"jmlr-1.24"="rnmwix9b0hfdm6zys2zbzy2rx1rfas98";
+"jmlr.doc-1.24"="b7aj9p4s5xzpv2jkih803zx713lp212g";
+"jmlr.source-1.24"="bncl60ks6g38pj64ig53q0s3kr3fpws9";
 "jpsj-1.2.2"="xpasajag9rdz7nr5xk7k40g181lyc45x";
 "jpsj.doc-1.2.2"="994fxd5c7947y4s7g71i7031l72qj26b";
 "kdgdocs-1.0"="i0v1kfpnhn5210jj5vd2pyi9s9h1vhmr";
 "kdgdocs.doc-1.0"="0gfi3rfrsjaw25g7mxk7mai8mxy968m1";
 "kdgdocs.source-1.0"="dcafx36f7id055kdwvfsci6wq2ya50c8";
-"kluwer-2016"="y63q5nz0rhxlj362cbj5a4x3wm8imiri";
-"kluwer.doc-2016"="q85mq4id3y04wwq7f8is8lwh7gbzyxxn";
-"kluwer.source-2016"="q4k0f4qgzcxgnxblw1776dhk57i2zq6d";
+"kluwer-2017"="y63q5nz0rhxlj362cbj5a4x3wm8imiri";
+"kluwer.doc-2017"="q85mq4id3y04wwq7f8is8lwh7gbzyxxn";
+"kluwer.source-2017"="q4k0f4qgzcxgnxblw1776dhk57i2zq6d";
 "ksp-thesis-1.0.2"="244sggimcsxbqkh6g9nndxvdvr6agqvv";
 "ksp-thesis.doc-1.0.2"="jngi4gfc4r6dkp6xggyg2s05zj38s1vz";
-"langsci-2016"="39db4ra115hrb95swzbikpv13bax2gjb";
-"langsci.doc-2016"="1rj0mj3qb4wqav1c3y8f2khjyx4cf3dr";
+"ku-template-2017"="y4a82aasjcgjmbxaagjbd1cpz575s8i5";
+"ku-template.doc-2017"="n8wjmji2234ivr98avh9nksa57wa2nxw";
+"langsci-2017"="gzyg6wg1ckrxhbwvr6lgsbiwazlyf5ik";
+"langsci.doc-2017"="plijg3jgwwm41h21bsh0mi6h4mgg5mvr";
+"limecv-0.1.1"="hncbcz8dnz42908pzzd2ynfzfpl3j7zs";
+"limecv.doc-0.1.1"="1igi5hm73ds2gpar5m8794kx7z4zvjic";
+"limecv.source-0.1.1"="x8k7gmr8vnpsx1fvmhfdb0vq8sv0yc7c";
+"lion-msc-0.27"="6b6bg86gr57ldh3giniicp6j41bpqx5a";
+"lion-msc.doc-0.27"="q9jflbrgsf7qhbqm5sl6w6qbaz1jv7yk";
+"lni-1.3"="myr195vgv4d2zczny263qvkm0sjl2103";
+"lni.doc-1.3"="wcip524a7rwqpszj2ms96h6zyw3a321d";
+"lni.source-1.3"="alkhxgz4bbrgvw9vwjyxs0p0mk0nnch0";
 "lps-0.7"="njaym8455i99rr0vplxlpn95cbp8sv9h";
 "lps.doc-0.7"="9qg688yrg4lfkb284shpgan08vfi5sxn";
 "lps.source-0.7"="d2jid2g08c51lpixvbqp13hkvmbhw2f2";
@@ -6588,77 +7308,88 @@
 "mentis.source-1.5"="x8djid957v6324m74fn1m8l9hcp7mr1g";
 "mnras-3.0"="ib7iykfq2gzv7iljfpqnncwdha05sv36";
 "mnras.doc-3.0"="jns5g8cd4c28jqy106ard1pca1pl0p4k";
-"msu-thesis-2.6b"="fs3d3csn7phspbsvbp7d8xrw1dqfkv5d";
-"msu-thesis.doc-2.6b"="5ivf6bskrxrdnz7cgmcmll6xw9k4nq7d";
-"mugsthesis-2016"="cfkw21f3xy6pchbq7ryw2df8bdssilc5";
-"mugsthesis.doc-2016"="xqm757zbzxi9ag50dd22274bk5n1897h";
-"mugsthesis.source-2016"="6awfcfhsqggxvxxxmfbi77pa6bwchg79";
+"msu-thesis-2.7"="7jhb17sa5zm9xg25p06p8hniqyz27a2h";
+"msu-thesis.doc-2.7"="6ykqwgvzhw15ycdq44q8kx37q2xphb3l";
+"mucproc-1.02"="d1xzqp0nvkk4zdf1zcrhngvlc0q412gp";
+"mucproc.doc-1.02"="zpky6iahkhynyv72lg94ankg9wn7gwd7";
+"mucproc.source-1.02"="pxysp457kvf603nz6lwaj55cmlc41n0m";
+"mugsthesis-2017"="cfkw21f3xy6pchbq7ryw2df8bdssilc5";
+"mugsthesis.doc-2017"="xqm757zbzxi9ag50dd22274bk5n1897h";
+"mugsthesis.source-2017"="6awfcfhsqggxvxxxmfbi77pa6bwchg79";
 "musuos-1.1d"="v0bx55bnw5lcpq1w0zxfkf1hlxahxj0x";
 "musuos.doc-1.1d"="iqviyy26inh9bw04maby457bvxip69xw";
 "musuos.source-1.1d"="rx3zcmp2mw88f3jxa0igajz4dzvx135m";
-"muthesis-2016"="w6llbyp3d615mpjazf9i746acl0hqvpb";
-"muthesis.doc-2016"="776dszqb0k9nffhnln310dg20n4z0dlr";
-"mynsfc-1.00"="adgwrf18i0niks19k4v734yayv64yd0s";
-"mynsfc.doc-1.00"="w66524yi4bq6dn0z4i6z2djrgpih4x9d";
-"mynsfc.source-1.00"="1f8v4gbx30rb43cxngmb4nmfk98qjrvd";
+"muthesis-2017"="w6llbyp3d615mpjazf9i746acl0hqvpb";
+"muthesis.doc-2017"="776dszqb0k9nffhnln310dg20n4z0dlr";
+"mynsfc-1.01"="j3jb9xyv9javnbk9r6fb11ygnd9ygpfx";
+"mynsfc.doc-1.01"="5zlf94gdmkxg37zdwq04w4pzfgransf1";
+"mynsfc.source-1.01"="zzmxbw2xfk91lv6isc6raqnqmvk4da6x";
 "nature-1.0"="147ghy9qhv5w2p0rh84wrpdgk5cwrd1y";
 "nature.doc-1.0"="lvavrpl6wrkxpsidgbzil8g117kkwdf6";
-"nddiss-3.0"="f7q91xxxls5q46xzjpb1pd19mv4rfqcb";
-"nddiss.doc-3.0"="7v4swldnh8h17nkz59ki5ay12i919nj9";
-"nddiss.source-3.0"="qd15pyqi4pyvph772p8yhf74wvk6fd8v";
-"ndsu-thesis-2016"="s34hzsbsw6q3r3dhis599h8nwps63x8x";
-"ndsu-thesis.doc-2016"="9236s704rjqnfh36yl7y3j3gzj7232kk";
-"nih-2016"="cv6rcwrnq8rpwmmxva32233isckys2md";
-"nih.doc-2016"="n3j1f7kbygyh0ljz1796b0ywkifvykbh";
-"nihbiosketch-2016"="da0kk90h0paw6wp0x43cqcfm18bh9ajz";
-"nihbiosketch.doc-2016"="l6nx5x7lb8sqfbmac215xbrn36ifx6fc";
+"navydocs-1.1"="kn549s2m1h0i9ir8q01il9ww3yw05wx0";
+"navydocs.doc-1.1"="72l419vyq79lrhlflxnivg66b9vkbx5m";
+"navydocs.source-1.1"="xcwc5yyvhjhrdjrj9w9prp72mpqlvq3r";
+"nddiss-3.2017.2"="gsqqnmrgc27i78c6s4y1zy7i5yi66yix";
+"nddiss.doc-3.2017.2"="p28y66qyk1zkhmp6f11rkidfjmvpnlgx";
+"nddiss.source-3.2017.2"="7kbka2v5nsdg4wfrv69zsx92rrlax0zw";
+"ndsu-thesis-2017"="s34hzsbsw6q3r3dhis599h8nwps63x8x";
+"ndsu-thesis.doc-2017"="9236s704rjqnfh36yl7y3j3gzj7232kk";
+"nih-2017"="cv6rcwrnq8rpwmmxva32233isckys2md";
+"nih.doc-2017"="n3j1f7kbygyh0ljz1796b0ywkifvykbh";
+"nihbiosketch-2017"="da0kk90h0paw6wp0x43cqcfm18bh9ajz";
+"nihbiosketch.doc-2017"="l6nx5x7lb8sqfbmac215xbrn36ifx6fc";
 "nostarch-1.3"="5ir7wwqflr7ac9wdz3qq50232lrxk79r";
 "nostarch.doc-1.3"="l4v9sg6lhii6m7z83ap9fghjkzhc1d6k";
 "nostarch.source-1.3"="sn4i3aqmh4r4yfj1dq5ipqyy4424kns6";
+"novel-1.43"="wnpxghjdh08v2m8z019axk6i13cd81jn";
+"novel.doc-1.43"="l0bb6dki6hm2jx83ar6lfrpa75xqv11d";
 "nrc-2.01a"="pwgmkqwj9nh6c5ibhgz0gx4fha8y4mfa";
 "nrc.doc-2.01a"="y8ga6db77g42jblz5hpvk3vhcsj6zczs";
 "nrc.source-2.01a"="14br9wclpq3sfj0gcb8q3ws6nz3ws7jw";
-"nwejm-0.97"="sak2srkb6qsvp2v4innin68ilzr469vj";
-"nwejm.doc-0.97"="kzzc1xabcgvly7p0inpsqy3r7fsli41v";
-"nwejm.source-0.97"="17x4q8iqyy4sr1c3sfvv6nsmxlq4zj92";
+"nwejm-0.98d"="wx70rrg71x1wb37wmirwydw8axscj30k";
+"nwejm.doc-0.98d"="gpwk6baaaxwbyzp7xk4lw08jnyy5wzh0";
+"nwejm.source-0.98d"="8s0yfrb39p2nrmxn1wg6nck7zrdaj5mx";
 "onrannual-1.1"="zfqaz0fi36py1y5izbphl677ny5mcrl6";
 "onrannual.doc-1.1"="hxdcfp7y4lcpc2j1d25sx3p0nga1435h";
 "opteng-1.0"="fnx8hnwcpahlkw6h2q1hbnkwa3kfr477";
 "opteng.doc-1.0"="24dy7xc4wlz223svmhsv4k05bw6b12af";
-"philosophersimprint-1.3"="r438qj06dgc5z5753ii4nnr384dhwbnc";
-"philosophersimprint.doc-1.3"="7bl8ngzhsjrycayzsm9f4n8cbjxsylf9";
-"philosophersimprint.source-1.3"="qi13l9mwdw3ng108zmg944ynw25csljl";
+"philosophersimprint-1.4"="cdw4cms8w2z5lvj17ayb1yg3075qfpik";
+"philosophersimprint.doc-1.4"="j5ri2kgr97c4z3mzf5kilcwjlqliibjp";
+"philosophersimprint.source-1.4"="i6h47warmh5zlaswpq62mvbc6nkl3hij";
 "pittetd-1.618"="1jjhfr2c6ycp2c6r3kg0y4fziq3vjpv5";
 "pittetd.doc-1.618"="9394r72nr766i8mnb24s4qr4jp15jci4";
 "pittetd.source-1.618"="s0apvlg01wkfzhzp5cgy3jwxx9z14469";
-"pkuthss-1.7.3"="dcpz45y8kymf2ykcfwfdbjvbmd92ylaa";
-"pkuthss.doc-1.7.3"="d7zc4mrgnym40n1c4v63mq8lp6ws5rsd";
+"pkuthss-1.7.4"="pcg59sbk0barbkc718mspqv4wgjyjzyi";
+"pkuthss.doc-1.7.4"="1pa6li051iy8zfcyzvqxpzn7jml4yvhi";
 "powerdot-FUBerlin-0.01"="r89y2lmmzzyln4jx6kzdn4rb84jz7w15";
 "powerdot-FUBerlin.doc-0.01"="gy9ianzkp3a81sga5i1xp4kzsnyppzb2";
 "pracjourn-0.4n"="iv8vll5az565ki1vcjpacrcb369z2g4c";
 "pracjourn.doc-0.4n"="kvvb2vn1z5phqxy9jiwgj9rgc1fpabhj";
 "pracjourn.source-0.4n"="vl8rarvx6whc3ph6pw892ldwiwzvc78x";
-"procIAGssymp-2016"="cvcsi5gr6ndjlvabqwkk4spmd8y9fqz1";
-"procIAGssymp.doc-2016"="y08ng1769j9ffib4fpi6rb86dvj4y0a8";
-"proposal-2016"="3nnzzlv4rcr3v671fipw679yq7ndbw9j";
-"proposal.doc-2016"="hx9nsm0fidsia9v6iki5l4cb500kjm2k";
-"proposal.source-2016"="3md53b23cqzdhjyzk2hw4gsjr5flngfw";
+"procIAGssymp-2017"="cvcsi5gr6ndjlvabqwkk4spmd8y9fqz1";
+"procIAGssymp.doc-2017"="y08ng1769j9ffib4fpi6rb86dvj4y0a8";
+"proposal-2017"="3nnzzlv4rcr3v671fipw679yq7ndbw9j";
+"proposal.doc-2017"="hx9nsm0fidsia9v6iki5l4cb500kjm2k";
+"proposal.source-2017"="3md53b23cqzdhjyzk2hw4gsjr5flngfw";
 "psu-thesis-1.1"="mfm31zjkdhv8g59fzcnxiwrj5l3im13a";
 "psu-thesis.doc-1.1"="xqrlld1bn1kyqymprpchwp525n1jbmhd";
 "ptptex-0.91"="w61zrgirw5as67kcbi3yrx5pzpw7dj36";
 "ptptex.doc-0.91"="h0fi9wq2asps1aiwkvrwj93dkzzhclsy";
-"resphilosophica-1.28"="486i15l2a2xpjbx01bbknlr9n00bq00w";
-"resphilosophica.doc-1.28"="24sa5avi0jfkn58rybi82gwnzxlqx4mm";
-"resphilosophica.source-1.28"="ci6xi6453li6jm47pj6pbn07173zffrv";
+"resphilosophica-1.31"="7559kilc9c43911asxardq7rkys37h3v";
+"resphilosophica.doc-1.31"="l99zw3207kainx7alwlig5mzv9ichsq2";
+"resphilosophica.source-1.31"="ivfy2kjka0bcsa2n1bri1ic9a2hipck6";
 "resumecls-0.3.2"="niqlfjipn9h1dchnx63w89i097kf58il";
 "resumecls.doc-0.3.2"="7jcdgicys21bhfhyn1aflyvry0yy7sxk";
 "resumecls.source-0.3.2"="wpgzwjw6nmg6dq02jdxq12fx7hnmff29";
 "revtex-4.1r"="bk25w1asnzgz3m3hbz9vq4wha12xs41h";
 "revtex.doc-4.1r"="lcbzvj00nnrnrjja5vcpzdmc6dmk3k56";
 "revtex.source-4.1r"="32rs8695805n82m58hqf0bww2mqnvynw";
-"revtex4-2016"="c7hlwwdvdqpigljx4wnizy53fs0v2dmh";
-"revtex4.doc-2016"="6whihhpzkygb24qs4xk92vjy580dayns";
-"revtex4.source-2016"="0pq58vkvfc191123k78zaiyy3mxk1m1h";
+"revtex4-2017"="c7hlwwdvdqpigljx4wnizy53fs0v2dmh";
+"revtex4.doc-2017"="6whihhpzkygb24qs4xk92vjy580dayns";
+"revtex4.source-2017"="0pq58vkvfc191123k78zaiyy3mxk1m1h";
+"rutitlepage-1.0"="a1n4m7cac5knv65x53rlvba61hpadmvb";
+"rutitlepage.doc-1.0"="y797dhmlp9nd1sws91ixz30n0rv3ga57";
+"rutitlepage.source-1.0"="425dvih79kx8ddzb4as308f796bi7m1p";
 "ryethesis-1.36"="vvsqlw02q3ivwlzw3rp0x6vhfdqvfhda";
 "ryethesis.doc-1.36"="xpba1bqp48y0q99kn8w504pzj3176nf7";
 "ryethesis.source-1.36"="4dddvz7f28pbzyymssgsilsyig9rzp45";
@@ -6697,44 +7428,44 @@
 "suftesi-2.9"="h9bfwxab3hg48q45qpkfm1f23igr073v";
 "suftesi.doc-2.9"="sjlghwc1j7mbk103wk4nb817z1m46rkm";
 "suftesi.source-2.9"="0b7ji3a3pxs6wrc9mx7791gsb6bcmjzl";
-"sugconf-2016"="9bgrgs1gqxlj5czai1l1m45z3z4xbr6d";
-"sugconf.doc-2016"="siyxf3blr7z953fm4xy61z4jfx589bcb";
+"sugconf-2017"="9bgrgs1gqxlj5czai1l1m45z3z4xbr6d";
+"sugconf.doc-2017"="siyxf3blr7z953fm4xy61z4jfx589bcb";
 "tabriz-thesis-1.1"="9k4d01w35206y8gw5f76ffx6abvdhgwf";
 "tabriz-thesis.doc-1.1"="cga6sdf865mjmzaa39173gy5vinshqpv";
 "texilikechaps-1.0a"="v3x5w1a3lblqc3pks3yzychj64rvr67l";
 "texilikecover-0.1"="fn8g82q7mvdqaa3i14nsc95wjlp0ziyl";
-"thesis-ekf-1.1"="jzw6c55jw8s6zi1n3b257m4170cwxg73";
-"thesis-ekf.doc-1.1"="6b376447wn7j1dn67i63kz811cfhar1n";
-"thesis-ekf.source-1.1"="s1kmgh95jm7y6lvxci5s9ia8bnm5wdyd";
+"thesis-ekf-2.1"="mrxpgrhbnj7hz3iwyb33yw87hz55a7d8";
+"thesis-ekf.doc-2.1"="wsa59q13haak74fxlnp61nvmbhhi9y0q";
+"thesis-ekf.source-2.1"="6qa9fi9ifflj03fx8p6a9lzn9zby8698";
 "thesis-titlepage-fhac-0.1"="dmyydjxrj16hf8gh7qyp564d195kzmwp";
 "thesis-titlepage-fhac.doc-0.1"="g4jw0jyl09vq4hglb14jx355v9kli1bx";
 "thesis-titlepage-fhac.source-0.1"="zp492p2j40bpphwr3zhjcqiwnj18yk56";
-"thuthesis-5.3.1"="qy8n5x27zqm6ramvqbnf7yrlq519ygri";
-"thuthesis.doc-5.3.1"="f7cyjl6smf3p185wxmnnrcqgjayb6388";
-"thuthesis.source-5.3.1"="9h2sf8snz1smi468j7apfmd4pjsvrax6";
-"toptesi-5.91"="558pgw7x7bmllz8arqnajvz9vshb19fz";
-"toptesi.doc-5.91"="ygcdqnd0nk4294m7r2ihl6wjixhzg4ak";
-"toptesi.source-5.91"="wlfhgcwhh24lkabsl00hrr8j6sfgq8qc";
-"tudscr-2.04e"="pppqxigzfh8487xq7hl28zpip2sy3x55";
-"tudscr.doc-2.04e"="76rjgaarhcnqy1a6brzdh0sfkvy17zgb";
-"tudscr.source-2.04e"="m17ql2ab37kj60d0qk5x5isbszi6wxlr";
-"tugboat-2.17"="52zas8k8576rv5rs8h6xbgd47pf40a19";
-"tugboat.doc-2.17"="vvz3fcg9r4m8ah9xa3cd55qwwggpafnk";
-"tugboat.source-2.17"="xxy197vfavfrvvahg3wbib2y7ik2zjng";
-"tugboat-plain-1.21"="pydb1fx5x9fwd53pbq5ikfkyal7bn6fk";
-"tugboat-plain.doc-1.21"="asysg9xakhqwa7l8ngnayxn6gf93s9x4";
+"thuthesis-5.3.2"="y0zj5y18jypx1vhhw7wlws8bkhgwv077";
+"thuthesis.doc-5.3.2"="k0rx70yjc5m23n8n05hc1haqf6ygpy5c";
+"thuthesis.source-5.3.2"="2q75igan9rnm681z17wspkizaw7n9fyh";
+"toptesi-6.1.09"="9xsgzl74a9w41xah2gjwfz3635072fjg";
+"toptesi.doc-6.1.09"="jhnf3zpp58bqbznv4a5cyvvmfqh48m39";
+"toptesi.source-6.1.09"="a23slrx9fpvg3v3qa337d454gfg0nxwm";
+"tudscr-2.05m"="rlfxi0lf0yy473933ds0w4f88iaxs2by";
+"tudscr.doc-2.05m"="zf1a6mamshb3h9ijkcf13191bp5yra8q";
+"tudscr.source-2.05m"="rblvasxg57wsh98wiykpsfsb9xdk9nds";
+"tugboat-2.18"="4xp5d9hwx58mdxdihjpmja5qlh69q03v";
+"tugboat.doc-2.18"="hizwp9yi6rfk4mhp3yslhz1sx3097hp7";
+"tugboat.source-2.18"="m82bqm4ampqdz416xvfpfk5v7102xyc4";
+"tugboat-plain-1.23"="5gg97ya5rlspsjgxp6h6sl75bgy4krpa";
+"tugboat-plain.doc-1.23"="5wndvzkgnq5p1bnkzlbxkadwi2gpc2lc";
 "tui-1.9"="s71xp2jz0v4wlvgvx9f9r62i2clj8grw";
 "tui.doc-1.9"="ddway3iy2gx447ypp2cd4vlvhjvnlh0l";
 "turabian-0.1.0"="mkjjkq2fpg1lipzwqn7k0p77j2i3znm0";
 "turabian.doc-0.1.0"="b1pxcnzj5k4l9r571yi924kykw4wk7vd";
-"uaclasses-2016"="d8zwjxcvgb1rnfv239xwf1qblqpzk32c";
-"uaclasses.doc-2016"="mv9hypafmsgnh5pxl2n0929ib8zgrda0";
-"uaclasses.source-2016"="mzvrcc6gvds2bw1a7cdkjd5n9dm3gczq";
+"uaclasses-2017"="d8zwjxcvgb1rnfv239xwf1qblqpzk32c";
+"uaclasses.doc-2017"="mv9hypafmsgnh5pxl2n0929ib8zgrda0";
+"uaclasses.source-2017"="mzvrcc6gvds2bw1a7cdkjd5n9dm3gczq";
 "uafthesis-12.12"="8qdm4v22s3r9g8q16sjnw3bzx1j9w16a";
 "uafthesis.doc-12.12"="d1nns5qzwkrywy9cghr19i70bp16fvw2";
-"uantwerpendocs-1.7"="d9gp6k1gkz5wvpad4j3iz1xbcn1707lp";
-"uantwerpendocs.doc-1.7"="jb39j0v3dcgz74ykfrry6bfdgwhcnljk";
-"uantwerpendocs.source-1.7"="4l88156s8s4b81zsyam4niprcrb6jm9w";
+"uantwerpendocs-1.8"="xhk8q4hhvv1plfv5b0433m197rgkvkr0";
+"uantwerpendocs.doc-1.8"="xkjc2fshzrq3a3k11yd86pia4105bdcq";
+"uantwerpendocs.source-1.8"="f4gdf9izvvfangh939cip1w99s1im1k3";
 "ucbthesis-3.5"="zagmch6rnvnjiy9y0nacc5ciwqv5xsad";
 "ucbthesis.doc-3.5"="xzypd8jcnsipjflhcjvznd9y7fcqmm51";
 "ucdavisthesis-1.3"="naibrb9h1lg8y22j26wygm9zxcv3rfc2";
@@ -6744,15 +7475,18 @@
 "ucthesis.doc-3.2"="515r7ha1aq9f0zxlgiz2zv2aph460aad";
 "uestcthesis-1.1.0"="h0cz0i3vnalcc3i77qhb941yymg6bl2q";
 "uestcthesis.doc-1.1.0"="7w5wa8z24nrcsd9gfba6ixwq5wi4jp23";
+"uhhassignment-1.0"="0dv6x7f2zzvgqd104aak9j360pqwfy1r";
+"uhhassignment.doc-1.0"="c0impmampnwvrisg300yrmc4zh891r15";
+"uhhassignment.source-1.0"="59yahjzr20xn4j3lnjxf17dwr4vsyy1m";
 "uiucredborder-1.00"="qmpx3zbgnl6224cyigggmsp8a2vndjxv";
 "uiucredborder.doc-1.00"="vc4l9nvnvlfsn44vr48s4irjwaifg8wr";
 "uiucredborder.source-1.00"="l9b35lm36c8gnl1jd9mpxqk07j22b8d3";
 "uiucthesis-2.25"="62smailyn66fyhpdgrmjx0p9m0j0n12y";
 "uiucthesis.doc-2.25"="ygqpzgk5jslsnqa813k0l2nvw2j8gnwq";
 "uiucthesis.source-2.25"="lkq6bvdvm6ya5q5wp263zqkk7y4ig57a";
-"ulthese-4.2"="w6qr311m0wiyndalagllsan96a3pcd49";
-"ulthese.doc-4.2"="6c3hr2p3glprr45c72awhhgahy9hi2qj";
-"ulthese.source-4.2"="zq83bfd384r5862n4jn5g1r38sj19sgm";
+"ulthese-4.4"="dlcv9nkbqjcxyb7fvcl8mg6nfsy1v93r";
+"ulthese.doc-4.4"="r04ssdfdkza8n6syri5r09b3x7d22m26";
+"ulthese.source-4.4"="x26g2kavc5jv5a3p5nrpsy6idvpmnmi0";
 "umbclegislation-2016-6-8"="wjkna9qn6g0w0axsgpa80vc8d8jsl94y";
 "umbclegislation.doc-2016-6-8"="44hd3iax5vblcr03xxgxccmbrf4y5sma";
 "umich-thesis-1.20"="mgwbc9lzd25w17fm9j2098r6y0q1k688";
@@ -6760,8 +7494,10 @@
 "umthesis-0.2"="xsgr2p3cw7q2gv7b2sr6xvcp186cvsy1";
 "umthesis.doc-0.2"="p64jg8jns4xp4y400hwbbbzz2wbpsmas";
 "unamth-template.doc-2.0"="jn6hykpgd53yn4px4rp9yk0sp688dqi8";
-"unamthesis-2.02"="2y37l3cxz8b0h769bbvh1lajiwfi7z81";
-"unamthesis.doc-2.02"="p459xn1jn9f1nqzfa04rsn5cyv8xmcmh";
+"unamthesis-2.1"="jvpbqfbpvrzbvs67r0phdrkrvxxjjcyz";
+"unamthesis.doc-2.1"="jfqnn8prn8x9p68k70b64zd1759v92ak";
+"unitn-bimrep-2017"="s3x065jkvzazjx24an10jbwj47903gjl";
+"unitn-bimrep.doc-2017"="k2iakhx4fkiz9ckglr1pvnrqday0sbnp";
 "unswcover-1.0"="5bqxws27nxyhgrlc6c9k9v5pm8jvdhzc";
 "unswcover.doc-1.0"="9c32r1x4094k8saz0w3bcbca28vgl3zj";
 "uothesis-2.5.6"="zbf8swc2haqsdr7sibm4lz9sqyhbfaqs";
@@ -6769,18 +7505,18 @@
 "uothesis.source-2.5.6"="ppxr7m777ymzzcl34i9qsil0z859wdxl";
 "uowthesis-1.0a"="g346f0s4phiqykd0n27hgy7f3vh9vp6l";
 "uowthesis.doc-1.0a"="h9g1mwp55hj3jsqmn0fmpjm95g4139rn";
-"uowthesistitlepage-2.0"="29b3r6wfpk8vh132a8fk5xsf79xs1wj2";
-"uowthesistitlepage.doc-2.0"="kpfyii5m77dagy53dragdl9pc38irn4p";
-"urcls-1.1"="6ag871hlyhb3fj1s0dy35h4s97pmy271";
-"urcls.doc-1.1"="6r5l2274cymvg6dif8p8fmmm1i0n0z9c";
+"uowthesistitlepage-3.0.1"="27sk8zllk19qflnr5am2r0cjrx4n89r2";
+"uowthesistitlepage.doc-3.0.1"="wyz7yz7j3jp1v2z5vildp8lb0li8786p";
+"urcls-2.0"="cijzaxab03vy218s758w4xb0r5vwb65s";
+"urcls.doc-2.0"="z4v3vq1gcr0cxx8ar4pcw03pk5n8mc7m";
 "uspatent-1.0"="lqv4zrqgwdhav1075ym1wp3cmy7r3ahw";
 "uspatent.doc-1.0"="0pa1qihx7vyc5lfkzr7bbakkphzmxp2p";
 "ut-thesis-2.1"="wz086qs6isll7wfa16yf154zqdbwz7zw";
 "ut-thesis.doc-2.1"="yqaa6h1yz1401ljb6wxnlz3rqmlr7fy0";
 "uwthesis-6.13"="1z7cpyrzcb9ga77d9a58jm9234w2zafy";
 "uwthesis.doc-6.13"="w30d568jxqqwdfbrpm8s1i7ylssiz3gc";
-"vancouver-2016"="2yp7l10k8yz7nr3nh9sj0ix8s9q79b5i";
-"vancouver.doc-2016"="gan4b1yrhwvqxnywn8rb6ckqvgv9m9m5";
+"vancouver-2017"="2yp7l10k8yz7nr3nh9sj0ix8s9q79b5i";
+"vancouver.doc-2017"="gan4b1yrhwvqxnywn8rb6ckqvgv9m9m5";
 "wsemclassic-1.0.1"="8rl3dlv1f1vrklknkssldjnkgdwdcipd";
 "wsemclassic.doc-1.0.1"="n0wnf463jpcq8lbgk45h3924c4qm2r2z";
 "wsemclassic.source-1.0.1"="l4db45ax258zsrgvnw5gq0knflxx2nb5";
@@ -6790,195 +7526,18 @@
 "xduthesis-1.00"="qxvczdxndgw1n1hxzrr5scvnrgcl3q3f";
 "xduthesis.doc-1.00"="a58xwk250qq99pyz4rj2br4dqfzhhmxv";
 "xduthesis.source-1.00"="nw0j5z9vd83a3idksbq2338j8ir01fr6";
-"yathesis-0.99m"="2dq6cjg98y57hzcxjpc3wmf7lpdnqz7m";
-"yathesis.doc-0.99m"="0824c9qnv1diqxmidwjlqjl3pi3g71yl";
-"yathesis.source-0.99m"="fadiypnbpxvkkwl89vkcpn6brac3fds2";
+"yathesis-0.99p"="qc2y8yxc63kf38ygcrkw20cn4r5b6vvb";
+"yathesis.doc-0.99p"="163rpff67cfqgbb9hdm3k1jcpyzzyqff";
+"yathesis.source-0.99p"="w6i7khjk4nxvvrgniln67xi896q5jq10";
 "york-thesis-3.6"="rm9hh3b6cq902rr4crmv6c3z3ll2680b";
 "york-thesis.doc-3.6"="fa7z6lks54czsfd04igviykcij1h5lih";
 "york-thesis.source-3.6"="83mnkcdmb930lfh4130vcr82d5lp3f3h";
-"SIstyle-2.3a"="35jza92m3n8nhfnqxpi4yx5xi90hf5mb";
-"SIstyle.doc-2.3a"="7y6y0ks7aa4yvqcw4jzh7rrrajm5lyfz";
-"SIstyle.source-2.3a"="i5kmfn2pan7a6bvl7saij0wbfq7xsx8g";
-"SIunits-1.36"="jpghwsag31g9f2lnzdzmfg1rg1vjxihs";
-"SIunits.doc-1.36"="1qalyh0q4lvlxxmwykaq3bp3sw76sscg";
-"SIunits.source-1.36"="6v2lr8gjm3f2kyqh7pc06ay5iswbi7p2";
-"alg-2016"="2z4gi58401dsjwivwji0b169ihz3assx";
-"alg.doc-2016"="43bcrdwkqnx6rharxz9l106cxycm408z";
-"alg.source-2016"="yq6bvw0bwwqq8c367ml9p9cbimqhkr1v";
-"algorithm2e-5.1"="3gdx3wrx3hazpfw0ak0w1b4mpcb72qj4";
-"algorithm2e.doc-5.1"="2bd49vn9cq35ywgpmvp7xw8vfpwbs732";
-"algorithmicx-2016"="8hvwf9c6b51yc623g8ivxqzwd10c1j7s";
-"algorithmicx.doc-2016"="1xcga5bk7fgqq2dad5mzv2v2x0m6hqrd";
-"algorithms-0.1"="s07h59vabig8jdk2d7r98hdnxpyq52sm";
-"algorithms.doc-0.1"="vwq0lnznxpwi4zpp4hjaljdfc3c2h6yw";
-"algorithms.source-0.1"="cskf3mpv2rk435przyidljaijx46fiy9";
-"biocon-2016"="d5164k5f9rh092j3yd5vysfzcp6qbvc7";
-"biocon.doc-2016"="w3c6g9qr6s5pm76jq7v0fk4fs90p5d20";
-"bitpattern-2016"="s1gn3l5lfz24xgg768032s318gzx96zy";
-"bitpattern.doc-2016"="8nq9nd4qsrixnnw32saxp6272d26w040";
-"bitpattern.source-2016"="1xa4jib8aihzccs6lrijw5x0cvhlrkcl";
-"bohr-1.0"="5r65jri672mlqzhd26dmys54sj19c8kz";
-"bohr.doc-1.0"="8gsrm5xrxfqqgpljlyizlcdz4lw3xk9h";
-"bpchem-1.06"="w8788zaka42fy1ksfsfxdsgijszmqjvk";
-"bpchem.doc-1.06"="py1xswacp8w7qvf1v2dn1pnhx9lwrf1k";
-"bpchem.source-1.06"="nf39x6lbn1mbrb0qdczyja4r1agglkhb";
-"bytefield-2.3"="rnmfh9nw5a9j74ys22kr0szlvacyzdl3";
-"bytefield.doc-2.3"="qysnw5hdx3scm23yfwcw63dzncfrmh1w";
-"bytefield.source-2.3"="vrnmpjw97hwzqpqbijwc65klk0rmgdzr";
-"chemarrow-0.9"="mb0i68z92909632g3xd1m3ahvmg0nj72";
-"chemarrow.doc-0.9"="h7g7ldb9837ngsxbmxm2c902bk0k2wdg";
-"chemarrow.source-0.9"="05g345ir5pvd4wik23yykarizwp0l506";
-"chemcompounds-2016"="7m2snwdxnachamq617zap92fsgdqhay3";
-"chemcompounds.doc-2016"="imzf21bm33j290wmy96hx88ahf5zgbff";
-"chemcompounds.source-2016"="nwcxbn1ivdiswdqyr319y93l76527amj";
-"chemcono-1.3"="kppxwgnwc7f62n7bwi2gnb6zndxv4bag";
-"chemcono.doc-1.3"="r527psyb3zf91x0xd6ywiv429b0rmicp";
-"chemexec-1.0"="szl9xw9iiql9yi7la6hwcwx8frhdxkck";
-"chemexec.doc-1.0"="q7rkw9ny7g93m4xm5jvs17v8x4nwb2p1";
-"chemformula-4.15b"="jbgg5j80iafbb5vcz2kjaywq261f508h";
-"chemformula.doc-4.15b"="0jsgqqrkd3qxsgjgxw790nnnlh92r9lk";
-"chemgreek-1.0e"="vc3rbqz862kyx06ms2jsyxd1xag21f8x";
-"chemgreek.doc-1.0e"="2xalvg64h8vqnafcz6hjkj4f4502l8kx";
-"chemmacros-5.7a"="02fcklka2w6dx6da7ipnbjd9x41f5aha";
-"chemmacros.doc-5.7a"="1h7s400izjas91f3339q2f4jzrc3nm9g";
-"chemnum-1.2"="nk857am82h2zfh8f5l81sm3xrrg0vawm";
-"chemnum.doc-1.2"="awwrxj67jwai17nvgpgl2lx10n8wm741";
-"chemschemex-1.0"="jrpkchi45q2k3csw7hiahg73j15qba9c";
-"chemschemex.doc-1.0"="ahlswf4y85bxjfxljby25pnxf13sv139";
-"chemschemex.source-1.0"="irhcqmjd6kl9kv54icxy7i2m8h8840qn";
-"chemstyle-2.0m"="lzbqwhh58y559q5lbxnbbz21rfxp1rcn";
-"chemstyle.doc-2.0m"="zv454b37y12fspkcphm6qs0yy7x7768s";
-"chemstyle.source-2.0m"="v52wrccz5gh3pswpfilm4qs48bplws5s";
-"clrscode-1.7"="6w0y1xknbskhhahx05688943y4pqr22s";
-"clrscode.doc-1.7"="m1syqr9a0x2546s5qpslia4ic5zmf961";
-"clrscode3e-2016"="0fz3frh68k47pdn3way6fbpiagyillgk";
-"clrscode3e.doc-2016"="91b116aqyihwlizzw1apmvd8kaaia407";
-"complexity-0.76"="j5mbhnplpiykaxrb4znw92ax6swd90ai";
-"complexity.doc-0.76"="jqvlbh8786qn3lmqzp7jirwbl9n5x15d";
-"computational-complexity-2.25f"="lf5mq80f1rdl64g0gsa2jsqrxv3ydpcl";
-"computational-complexity.doc-2.25f"="28gs7lby763li1069qhfx64llfpkxs2l";
-"computational-complexity.source-2.25f"="br0rz33ycmvpsn5fdhvcjlpffhssnw08";
-"cryptocode-0.1"="a8n95hv90vi0bx2azmdxlvhvq5jx3384";
-"cryptocode.doc-0.1"="fz2j47nnxvzn5hymz7r66cq43pw859dv";
-"digiconfigs-0.5"="r2ph2xkdaslj50qk54n7a1xx37n8pq19";
-"digiconfigs.doc-0.5"="vignfzc0zrhrx0jgybwmfcgyfcgaqhim";
-"drawstack-2016"="kdcvc0kd9lm3zxd2zszwriab31p26wrv";
-"drawstack.doc-2016"="plmy162h6z23pzimj4i5wjpih0m21z3p";
-"dyntree-1.0"="820wp3d1dcdm5vxihmk93wqc8qw4rqf4";
-"dyntree.doc-1.0"="j334vdgmzrhlv3x0ihzpa9j2rbbd9xhz";
-"dyntree.source-1.0"="ha5c29s0f6j3r5f3b2v7v7bgxaks28b2";
-"eltex-2.0"="n3kq7kl8i0b1k89i94i4k30qcy31lhfz";
-"eltex.doc-2.0"="pnvsk55d11vh82nn0a77lskyma1mqmpw";
-"endiagram-0.1d"="lvncrih9fmmsd6571dklnq2vzh7jdxv5";
-"endiagram.doc-0.1d"="7nqf9zgjslck0853xy6r6i938k9pd76z";
-"engtlc-3.2"="dc257zhqmzl7yymbv9prpiam1mvznhnm";
-"engtlc.doc-3.2"="d6mmmsi3kr2dlz2g6iwynabjlw1jyp46";
-"fouridx-2.00"="lxj3924da4bfn7605g2akgd3ccynizqc";
-"fouridx.doc-2.00"="ic4hkzvwc05qm91h90cx645gpskcm8f4";
-"fouridx.source-2.00"="zgb2xfg0wl5ld4b5v8rn72mxmfy3qy38";
-"functan-2016"="68wga1s4yiamylxfjma76hirgk867yym";
-"functan.doc-2016"="h6jwmv7wp2a8whhi34r62xvi1qll0vb7";
-"functan.source-2016"="rk42vz9n59n31xx5my1ahlnxmagzap7a";
-"galois-1.5"="b8khw120ihwg30l5wiyrpigb0n76j4pg";
-"galois.doc-1.5"="pl6jyfxfim7igp5lhhsdghiz6awrsf42";
-"galois.source-1.5"="pf7dxm40jcipslw88sqascls74wnvhyn";
-"gastex-2.8"="7ncqqh3yaip7f6fpv1cs57wlsw4krkzk";
-"gastex.doc-2.8"="y3ybpis1prha863r0486c1wr24wfy0y8";
-"gene-logic-1.4"="w7b16bvypbh9l3kiwbgha3dyh4dlqpq4";
-"gene-logic.doc-1.4"="nzraabszgvj8b0j503f7h892grbqjjrp";
-"ghsystem-4.6"="azgk9w1jrwk82c18x13x40k26sdvmlwh";
-"ghsystem.doc-4.6"="x8ih5q7h20q3d7xq4zkvzxa388a6xv6v";
-"gu-2016"="4m173j1ac2aiji1xjpxccd5bnasv68hd";
-"gu.doc-2016"="vkm8qnzqcdqh4xv4axh9sfy65bx2jji2";
-"hep-1.0"="f70qsf585a6rw0lzizd5ps7lcv2qqsl9";
-"hep.doc-1.0"="aqaxn42inmw854cm1qps4fkcijc11fm8";
-"hepnames-2.0"="3f4dycnxwd41da8gh67gs89xcb3l7zl7";
-"hepnames.doc-2.0"="99jvklmwjkmrlmr9jfgdax0j9ikr7b60";
-"hepparticles-2.0"="m5541j0ip82ygflxc174k8xzr2kx4fh1";
-"hepparticles.doc-2.0"="34viq0myldrs90f8y0dflrjxhimnzkq7";
-"hepthesis-1.5.0"="f5aa7mifhw0rgysdk9ca5m0ham4w9003";
-"hepthesis.doc-1.5.0"="acwsd53mgzw9gnf6axg96ipkmmdp2bww";
-"hepunits-1.1.1"="a3yzdj6ykcd4522cknwng48wbig08kg0";
-"hepunits.doc-1.1.1"="x8d9hwb5z12ng0ndny3b9vgja741bg9z";
-"karnaugh-2016"="8s95y2qxd4i5g5q1x0a7h8iwsci6dls2";
-"karnaugh.doc-2016"="85z4avy6yfziaqd7b4w077ys394a3y4z";
-"karnaughmap-2.0"="52mx0flzri3z9y5fc1rgg665z2rpk01n";
-"karnaughmap.doc-2.0"="8m2xi7580kgrxq9v5dkcfcxhn757i7zm";
-"karnaughmap.source-2.0"="47f879r3821kwn8pwpyhh5874adx6f3i";
-"lstbayes-2016"="lxhp6nq4by8gbl32ybrswb9qzczbc7d2";
-"lstbayes.doc-2016"="17v0vhn9s0qpr059q9pb28vp5kzz69nm";
-"lstbayes.source-2016"="yvd7lqni2hmliwcqh18wxm6rjaj63a2i";
-"matlab-prettifier-0.3"="j5p21f3rgbx8hyf7rdjbpn845mw8fgih";
-"matlab-prettifier.doc-0.3"="zssm3k92kxa3mjja3r4sq2574f7byspr";
-"matlab-prettifier.source-0.3"="nkp80iyfa519dkk8gh7pk7fxbj4yn1lj";
-"mhchem-2016"="1saywy0m5qn67kc53ymrfndgnsz9jf8i";
-"mhchem.doc-2016"="52n5cgcwl12fxmhi1gzh4vsk1ny2n86a";
-"miller-1.2"="vgpbb05dlbyp2phs7cpwrl9l8v7yczdb";
-"miller.doc-1.2"="fj6s0x2rzvldwm2lrmjx0f3hy9l4ih51";
-"miller.source-1.2"="9n5iljgqg52bzz39i2ailg3wjgfvgvx3";
-"mychemistry-1.99b"="8swklvjnvwzm43kg3q8ydiczfl8l75xy";
-"mychemistry.doc-1.99b"="immlivqi6jjsf5g4mkkr1nls63hb5nqm";
-"nuc-0.1"="4mmxcaippf5kwp6sgcwbcf55m4j415ma";
-"nuc.doc-0.1"="b0pkc17fxlgygmfvr84gq1gf58w95a30";
-"nucleardata-2016"="krd7wxd7a1wg9zsk5zsbjargada985x8";
-"nucleardata.doc-2016"="lbpwri196qknhkilw3djw8i9axzm59w5";
-"nucleardata.source-2016"="2wv4km92p8brwlq7n2cryx8jvbjwjm6j";
-"objectz-2016"="jxzqzh7y1nihr8m7jrsnbw7jh187031h";
-"objectz.doc-2016"="d8rk9nql7l67xn6hyvwg4x3xxkpb407i";
-"objectz.source-2016"="62cr53ff66gqjf6y2i01gr70bblhn18z";
-"physics-1.3"="y7b93d3qrc6674j33cy58v5c6fhlg3dy";
-"physics.doc-1.3"="ksf5jd2gfrq4dj2p1x2iwpgik5vb4pl6";
-"pseudocode-2016"="bmn68g4pm7wga21yf97mrnmwc588gn6h";
-"pseudocode.doc-2016"="1hm6d3af5zjrpvx9h5ihd6qqyg2384xl";
-"pygmentex-0.8"="bnyslpaj6qfdmak1k1bjyrk0jvflvg1l";
-"pygmentex.doc-0.8"="crqmqfjxlpwibbb9s7sp9qkafnk38f8c";
-"sasnrdisplay-0.93"="qjpcpxjkpv4phwd4x6g42072343pn9jk";
-"sasnrdisplay.doc-0.93"="a9kmvwgbh2ih7vwah1my0gs2dhdzmz6w";
-"sciposter-1.18"="mi8zk7ik6q8rvncwp5m0ch6mfysil8fh";
-"sciposter.doc-1.18"="wan5jxr0084sid3zv4cdhr5kmdv1rjh6";
-"sclang-prettifier-0.1"="594wn96i6q9wgshyqmy7211c2x4j1fih";
-"sclang-prettifier.doc-0.1"="zy33dy1dq1lh9zzqvxh3zwqv53yw2xn6";
-"sclang-prettifier.source-0.1"="0k4nc1bkrw4l66wr47pd6dgigdgs5i0s";
-"sfg-0.91"="5j8965gkq0p9s9ryvy8ym22qz206igqh";
-"sfg.doc-0.91"="ydamww1x4qxpg5bsrcacmfwkkv9c876p";
-"simpler-wick-1.0.0"="pmjzl9cnwrzxhjiwbrjxfd66lamrhvj3";
-"simpler-wick.doc-1.0.0"="pg2id6jpail1iiz92xdr1bvi2725lj8z";
-"simplewick-1.2a"="hfv61gj0g68m17iiimvp1zqzi7ri2z67";
-"simplewick.doc-1.2a"="kxfipc2w97479is7sdd9fmahrbwfk2l7";
-"simplewick.source-1.2a"="48db2ywp9dg6nd5xbclw2w85id3mf97r";
-"siunitx-2.6q"="yih56wwxqk8jn8x03jy0clm8w28jyvmc";
-"siunitx.doc-2.6q"="jzzy4yg1yg1hjh0acba8p9sx4iiyxklf";
-"siunitx.source-2.6q"="2kz69pplf381rxik8za1lq6agk9waps8";
-"steinmetz-1.0"="v8vskhmyjdhc7yi21b9i11j4lfzmhypm";
-"steinmetz.doc-1.0"="5y0xh86b75lm16kjjl4cjs7vvylr6wn3";
-"steinmetz.source-1.0"="m31y5wd20vck85yj3zps711zi6bpcdym";
-"struktex-141"="gv8q53fnzn49ig88gz3nzk0fd3a9hk7w";
-"struktex.doc-141"="c6yijrx42fzk1lbci4rm5xs407zi00s4";
-"struktex.source-141"="s0rqbynnpr0q90xnmzxikj8hxxfi29sr";
-"substances-0.2a"="wwjn0lkspnwgla7j46j2iwlvdrsvdyzs";
-"substances.doc-0.2a"="apg59a7fh980vddnfzjspsyq1jfnvsn7";
-"t-angles-2016"="an3w3nw07gc6hyzfjk4bd0j4swj8qr4p";
-"t-angles.doc-2016"="68ylwxvywabhyfqzlb7d642cmhdj3g2j";
-"textopo-1.5"="rvcbhsz8win1g08s6az11ji6ryd9b1fl";
-"textopo.doc-1.5"="3f9w8nbyyjismgdxb5daijc88hfp8m8k";
-"textopo.source-1.5"="4h2x01rkf91dha2yxqpdfgv5qsmz34sx";
-"ulqda-1.1"="llh5ji3r34m637hzb9qi4z0d6hap8fcy";
-"ulqda.doc-1.1"="w5anmbpapkg5r1bi0gvh1wqrqjivgmz1";
-"ulqda.source-1.1"="pl71x58ifcpllalxfw1snj2r464qvx3w";
-"unitsdef-0.2"="j5dhzwnaizymvvj0cvvn8hcjgpiaw3xj";
-"unitsdef.doc-0.2"="m3n8c9wpk9m0il8yn3ip4kwvlbyzfndw";
-"unitsdef.source-0.2"="rpwd7p723jsqcmcl28kkfg3fg9dmyfxa";
-"xymtex-5.06"="lh5pr87m1xhyaj74pmwc8vx3an7gppxw";
-"xymtex.doc-5.06"="bbknma6166kqvxhj3523p85lq7qn1ydc";
-"xymtex.source-5.06"="is60w9mjif26y9s3vv8c0v26z16m97g3";
-"youngtab-1.1"="jknzzzxpa549x22gcar9aq433zwidbm4";
-"youngtab.doc-1.1"="1vrl9pqjlxs1izrw4a5d922v9ll8rv3h";
-"youngtab.source-1.1"="dbcchlqr498s741q1990aal2gm39bljz";
-"texworks-2016"="bw11wjaqjjahs4x0hnakfvmvrjmjckkb";
-"texworks.doc-2016"="gphjjma2ws68drzz6rmmj1hjb7bxc7ma";
+"texworks.doc-2017"="gphjjma2ws68drzz6rmmj1hjb7bxc7ma";
 "arabxetex-1.2.1"="yfvy3m6rz45z7frgsw6cg8hk8kqdxfs4";
 "arabxetex.doc-1.2.1"="f8rpfy5hna1b6flvq6y2balxypjm6280";
 "arabxetex.source-1.2.1"="n7qncmdmzvkjxwn5d5nhwy3660ymvwx8";
+"awesomebox-0.1"="463zn5m1jkidpqk4z7kmixkpyg7k38r9";
+"awesomebox.doc-0.1"="p0b1w2nd7wr37ji7ln4cbzm3w2cygxlb";
 "bidi-atbegshi-0.1"="qm4zcsccvzxixab9dalzvlwkniwckpjw";
 "bidi-atbegshi.doc-0.1"="lgp4qynjnz73qdhy543halrvx52gs2xj";
 "bidicontour-0.2"="dayiq858hr4ln8503y0xw8vqvfjjb91m";
@@ -6997,63 +7556,60 @@
 "fontbook-0.2"="af0x6y47qcbfhzs3ngyazacn289x99y4";
 "fontbook.doc-0.2"="yvq7kxismw59wayzyv379hjd0kw048k2";
 "fontbook.source-0.2"="46vhgm8k7pxwxpb654fg3aj96555fanw";
-"fontwrap-2016"="ap8pwxj94larm8p1dngr1mhdavncplq6";
-"fontwrap.doc-2016"="p3m3czhwc1i2psby8dkm5zkpmzzkk91m";
+"fontwrap-2017"="ap8pwxj94larm8p1dngr1mhdavncplq6";
+"fontwrap.doc-2017"="p3m3czhwc1i2psby8dkm5zkpmzzkk91m";
 "interchar-0.2"="mphh4cmn49y1fr2klr1n5c2mjxryyjzm";
 "interchar.doc-0.2"="077lc5c3w5gq2cm2983fqlbhizjssgyy";
-"mathspec-0.2"="l72igqacpw3x7p25r1d2lady70wi4nww";
-"mathspec.doc-0.2"="in3a1raj3m7w3kcwdh54nqhp3774m0ir";
-"philokalia-1.1"="3fsg1ng519iplfs1xgpwm7vgzq9q424z";
-"philokalia.doc-1.1"="5x65nmvqidlhxja6j954snv2h7ai4pmy";
-"philokalia.source-1.1"="l0i5nkjias17d8dblgmh1aym3ps9kz4k";
-"polyglossia-1.42.4"="csnxk84k28xvpajix45dyjhqrs054rxy";
-"polyglossia.doc-1.42.4"="62m2fgqmplp2z5pb4sv038i1f0ynxhmw";
-"polyglossia.source-1.42.4"="92wvkanrs6mq0kgd878c0my5fab6960f";
+"na-position-1.0"="8afdykn462mcqd4xlqipkfbnamwzivzv";
+"na-position.doc-1.0"="d43q7ql7q3b9x23rw1nwkrswq6jpfmpg";
+"philokalia-1.2"="6lcrild0p9jahhgpc1xzz445hh2s1cxy";
+"philokalia.doc-1.2"="k1mn8vwlhrs9bwy87gx2zpn2viidlh0p";
+"philokalia.source-1.2"="80nd8ig65k3xjn92rv7n8g17qq0k4q7p";
 "ptext-1.1"="zy9vq5spxci68zhbfa947x5gmr90ckzf";
 "ptext.doc-1.1"="3dsbqbc9n66hhw8nk4l7rlcbfw5b9pvm";
-"quran-1.14"="m20x7pin3agw5czxa1wb5l8yr97fybhw";
-"quran.doc-1.14"="pk6rz26l3nc8vbvllmk2d4lafgrrbhib";
+"quran-1.261"="hb4qnk7dssr717i6abz1g7cwx00p1533";
+"quran.doc-1.261"="8w05kkp3zdnndqrb965dlrs894y7381l";
 "realscripts-0.3d"="h3nl45fx6790wmrfqgnxsy0v46i7gfmy";
 "realscripts.doc-0.3d"="4mm7a354ll0wca7q9nkazx29qbdah3ca";
 "realscripts.source-0.3d"="ngb2fqcmc4j1ijax0qrrdpf0g4587qb5";
-"ucharclasses-2.2.1"="mbx4byaa18al2ykbxhyrhaq6vq5nqca4";
-"ucharclasses.doc-2.2.1"="rshnlwkavzq6g3m81zgslpv76szqfgxi";
+"simple-resume-cv-2017"="vjigpisca1m0lvq3rdc8148lc2in4zmh";
+"simple-resume-cv.doc-2017"="aaxl68aklgpv8996xzd0jgc5gw3859ar";
+"simple-thesis-dissertation-2017"="p1bspb2n9dc7zk0myww59v973rjshfy0";
+"simple-thesis-dissertation.doc-2017"="hrb22ycqxdy8ndw4x6ifl6jifswb7mgw";
+"ucharclasses-2.3.0"="ss0jlhd052vay3g42nys4mj4mcf5iqgn";
+"ucharclasses.doc-2.3.0"="v76523pb2c60ppcz26pywk8jzipshr9x";
+"unicode-bidi-0.01"="mix51h9rwgjic1g32jx0mv8hh574yn69";
+"unicode-bidi.doc-0.01"="8x4zk0spvhmq3sc8ygvidk03gfzm2875";
 "unisugar-0.92"="wfr974a1y4wzlbw0wwzfr6r0yp9nyasl";
 "unisugar.doc-0.92"="hcnqifbhpj44cwbr8sh4c71phg4i5327";
-"xebaposter-2.42"="5cn1vi1adxly2gy46kha0pcagkhi787z";
-"xebaposter.doc-2.42"="vsn5hgw0gwwcc3xbpqh6zkxxr22a5vag";
-"xecjk-3.4.0"="kpbym4nnsr37n6s4j5mkprpyrajcqamd";
-"xecjk.doc-3.4.0"="3pdx5zhxhx4w6wa0vx1sml3b4pmy0ia9";
-"xecjk.source-3.4.0"="2f9fzam7s0ksj0dhbgbs8d4xwpk29jc8";
+"xebaposter-2.51"="glxmnnhjpy8wjab9avncl4v0wmdf0pv7";
+"xebaposter.doc-2.51"="sbpqsj7cqhhhs9gq8jia92hxrdgnhzkk";
+"xechangebar-1.0"="1f2zszj2l5mkqv5zs5bs8g5w4c8rirpv";
+"xechangebar.doc-1.0"="xbirklnxaljhxxghr1prqq7zb9l0mgzm";
+"xecjk-3.5.0"="idphnmr44wx62a893idiga9s10x5rx73";
+"xecjk.doc-3.5.0"="hi04rmiy5j0v2imv9ic14yk1nx2v5p46";
+"xecjk.source-3.5.0"="pa8c51ay3szyx0j080lwvhz4nz7a6l16";
 "xecolor-0.1"="pdybpn00rxsb5ipxx377a77xnmmf5i43";
 "xecolor.doc-0.1"="vl2lpda4kkr2q8gzj6ii2rjfccx6qvl0";
 "xecyr-1.1"="m8yhfaydf5s8357m1hkd2hv267zvwnax";
 "xecyr.doc-1.1"="pw3llm228dnfs7in0vajnf8skb99c9wv";
 "xeindex-0.3"="85d9z28381jg0jbkwrjrqlcifp23qsxh";
 "xeindex.doc-0.3"="7q7gxhy5zx11dmwvlfivg91v0gbp8pgw";
-"xepersian-16.5"="ysapn4hz01s1658g4rsgjizdh2xd312h";
-"xepersian.doc-16.5"="vnqry4y48glwh6rcr0kf1f9xkx4ms051";
-"xepersian.source-16.5"="jam7fn9dacy3qw8i0vc2cj40hczlv96n";
-"xesearch-2016"="0155d7ag68wpw66xqql0as3ldig0vx2s";
-"xesearch.doc-2016"="9nhi7api073chyc59c6i3wd6gvzmrm32";
+"xesearch-2017"="0155d7ag68wpw66xqql0as3ldig0vx2s";
+"xesearch.doc-2017"="9nhi7api073chyc59c6i3wd6gvzmrm32";
 "xespotcolor-2.0a"="vsdrrcvm377salld5myd4aknid3phcvl";
 "xespotcolor.doc-2.0a"="mzibfcv18iwwwd71id0qajhk55kvnn39";
 "xespotcolor.source-2.0a"="lpc06f6qc8sff0jn78jsvmd43az18vgy";
-"xetex-def-4.08"="2yaq6qvr0azaji14k3x2qhyb9g4rzfw0";
-"xetex-def.doc-4.08"="fgki99j55swpk2d53gqg0vcdfh75ia0d";
 "xetex-itrans-4.2"="m9f0xqxgxpqsi5bml6mpgxvqjjpz1fkf";
 "xetex-itrans.doc-4.2"="nlixz1jqx1al7xks2bp723yl63whrhzh";
-"xetex-pstricks-2016"="4vaa9mkycwc7kwaxbzjfypk3xx7nyxqh";
-"xetex-pstricks.doc-2016"="lqs6hni0df78jwiy8k0hxzpwlpn0kfd0";
+"xetex-pstricks-2017"="4vaa9mkycwc7kwaxbzjfypk3xx7nyxqh";
+"xetex-pstricks.doc-2017"="lqs6hni0df78jwiy8k0hxzpwlpn0kfd0";
 "xetex-tibetan-0.1"="yzps4y2frsplnawgai9s9xb6vpk9h4zf";
 "xetex-tibetan.doc-0.1"="m49lmg8669bbir9hcj33clc2v811xdvb";
-"xetexfontinfo-2016"="jzx2is0hbcggma6s0pdzq21hcb5j8vgi";
-"xetexfontinfo.doc-2016"="h4i3q0c5rpbw8pssb7d6nyy7kqvkkj98";
-"xetexko-2.15"="bjh7ks7yl46vblxpgc8wffm659jnai9l";
-"xetexko.doc-2.15"="bd6p1s3m70ifgm9b212svdqlf0q1mhjz";
-"xevlna-1.0"="bzbr6pd0y36k56da34w6z84i81gqcmc5";
-"xevlna.doc-1.0"="41il4y5hjab9sakp81490x4g61srj8zv";
-"xltxtra-0.6"="gr3v05m1pm9j55smbfy71vfn3kg1kpz4";
-"xltxtra.doc-0.6"="0zsznrgvzqcfi0ypxkbk3vqslwyap7l9";
-"xltxtra.source-0.6"="cw6kmfdgyz9ds3gdjlgy2bh16i6fxip7";
+"xetexfontinfo-2017"="jzx2is0hbcggma6s0pdzq21hcb5j8vgi";
+"xetexfontinfo.doc-2017"="h4i3q0c5rpbw8pssb7d6nyy7kqvkkj98";
+"xetexko-2.17"="izdd8p6d8kgzgp39bf8czdhm48jd9dk6";
+"xetexko.doc-2.17"="8qpgrljl4l4z5r559xr17vdjc17lr7vm";
+"xevlna-1.1"="jwpjj1b3y45n3lksn9wvsh3hyccy1i00";
+"xevlna.doc-1.1"="4559f3ddvnis97px7180q0is9n4aqq2h";
 }
diff --git a/pkgs/tools/typesetting/tex/texlive/pkgs.nix b/pkgs/tools/typesetting/tex/texlive/pkgs.nix
index 4d891c0758c7..afc7bdb151f7 100644
--- a/pkgs/tools/typesetting/tex/texlive/pkgs.nix
+++ b/pkgs/tools/typesetting/tex/texlive/pkgs.nix
@@ -12,6 +12,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
+  version = "1.2";
 };
 "Asana-Math" = {
   stripPrefix = 0;
@@ -39,7 +40,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "15";
+  version = "22";
 };
 "HA-prosper" = {
   stripPrefix = 0;
@@ -145,6 +146,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.0b";
 };
+"abnt" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "abntex2" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -178,7 +185,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.7.2";
+  version = "1.8.0";
 };
 "accanthis" = {
   stripPrefix = 0;
@@ -198,7 +205,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.10d";
+  version = "3.10i";
 };
 "acmart" = {
   stripPrefix = 0;
@@ -206,7 +213,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.12";
+  version = "1.47";
 };
 "acmconf" = {
   stripPrefix = 0;
@@ -221,7 +228,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.5b";
+  version = "2.7c";
 };
 "acronym" = {
   stripPrefix = 0;
@@ -251,7 +258,24 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "2.0";
+};
+"actuarialsymbol" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
   hasRunfiles = true;
+  version = "1.0a";
+};
+"addfont" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1";
 };
 "addlines" = {
   stripPrefix = 0;
@@ -421,6 +445,12 @@ tl: { # no indentation
   deps."latex" = tl."latex";
   deps."plain" = tl."plain";
   deps."lambda" = tl."lambda";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."antomega" = tl."antomega";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."omega" = tl."omega";
   sha512.run = "";
   sha512.doc = "";
 };
@@ -439,12 +469,27 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"algobox" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2a";
+};
+"algolrevived" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.01";
+};
 "algorithm2e" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "5.1";
+  version = "5.2";
 };
 "algorithmicx" = {
   stripPrefix = 0;
@@ -460,13 +505,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"alkalami" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.000";
+};
 "allrunes" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.1";
+  version = "2.1.1";
 };
 "almfixed" = {
   stripPrefix = 0;
@@ -510,7 +562,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.108";
+  version = "0.109";
 };
 "amsaddr" = {
   stripPrefix = 0;
@@ -527,6 +579,11 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"amscls-doc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+};
 "amsfonts" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -558,7 +615,6 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.15b";
 };
 "amsmath-it" = {
   stripPrefix = 0;
@@ -575,6 +631,12 @@ tl: { # no indentation
 };
 "amstex" = {
   deps."tex" = tl."tex";
+  deps."amsfonts" = tl."amsfonts";
+  deps."amstex" = tl."amstex";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."plain" = tl."plain";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -669,7 +731,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.14a";
+  version = "1.20";
 };
 "apa" = {
   stripPrefix = 0;
@@ -684,7 +746,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.20";
+  version = "2.32";
 };
 "apa6e" = {
   stripPrefix = 0;
@@ -702,6 +764,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "6.03";
 };
+"apalike-german" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "apalike2" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -742,6 +810,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"apxproof" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0.5";
+};
 "arabi" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -762,7 +838,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.3";
+  version = "1.9.1";
 };
 "arabtex" = {
   stripPrefix = 0;
@@ -791,14 +867,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.0";
+  version = "3.0a";
 };
 "archaeologie" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "2.3.3";
 };
 "archaic" = {
   stripPrefix = 0;
@@ -822,6 +898,12 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"arimo" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "armtex" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -840,6 +922,12 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"arphic-ttf" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "arrayjobx" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -860,7 +948,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.0.3";
+  version = "March_2017";
 };
 "articleingud" = {
   stripPrefix = 0;
@@ -967,7 +1055,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.38";
+  version = "2.41";
 };
 "asymptote-by-example-zh-cn" = {
   stripPrefix = 0;
@@ -998,7 +1086,13 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.8";
+  version = "1.9";
+};
+"aucklandthesis" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
 };
 "augie" = {
   stripPrefix = 0;
@@ -1021,6 +1115,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.5";
 };
+"aurl" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "authoraftertitle" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1041,6 +1141,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.6";
 };
+"autoaligne" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.3";
+};
 "autoarea" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1048,6 +1155,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.3a";
 };
+"autobreak" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.3";
+};
 "automata" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1088,6 +1203,21 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"awesomebox" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
+"axodraw2" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "2.1.0b";
+};
 "b1encoding" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1102,7 +1232,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.9r";
+  version = "3.14";
 };
 "babel-albanian" = {
   stripPrefix = 0;
@@ -1112,13 +1242,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0c";
 };
-"babel-bahasa" = {
+"babel-azerbaijani" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0l";
+  version = "1.0a";
 };
 "babel-basque" = {
   stripPrefix = 0;
@@ -1206,7 +1336,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.3p";
+  version = "3.3q";
 };
 "babel-esperanto" = {
   stripPrefix = 0;
@@ -1230,6 +1360,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "1.3q";
 };
 "babel-french" = {
   stripPrefix = 0;
@@ -1237,7 +1368,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.2c";
+  version = "3.3d";
 };
 "babel-friulan" = {
   stripPrefix = 0;
@@ -1253,6 +1384,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "4.3c";
 };
 "babel-georgian" = {
   stripPrefix = 0;
@@ -1267,7 +1399,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.7b";
+  version = "2.9";
 };
 "babel-greek" = {
   stripPrefix = 0;
@@ -1275,7 +1407,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.9f";
+  version = "1.9g";
 };
 "babel-hebrew" = {
   stripPrefix = 0;
@@ -1300,6 +1432,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2b";
 };
+"babel-indonesian" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0m";
+};
 "babel-interlingua" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1324,6 +1464,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.3n";
 };
+"babel-japanese" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "2.1";
+};
 "babel-kurmanji" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1355,6 +1503,14 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"babel-malay" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0m";
+};
 "babel-norsk" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1416,7 +1572,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.3h";
+  version = "1.3j";
 };
 "babel-samin" = {
   stripPrefix = 0;
@@ -1440,6 +1596,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "1.0d";
 };
 "babel-serbianc" = {
   stripPrefix = 0;
@@ -1518,7 +1675,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1l";
+  version = "1.4b";
 };
 "babel-vietnamese" = {
   stripPrefix = 0;
@@ -1559,6 +1716,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"baekmuk" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "2.2";
+};
 "bagpipe" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1572,7 +1736,15 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5.0";
+  version = "1.5.2";
+};
+"bangorexam" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.3.0";
 };
 "bangtex" = {
   stripPrefix = 0;
@@ -1641,7 +1813,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.07";
+  version = "1.072";
+};
+"baskervillef" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.043";
 };
 "basque-book" = {
   stripPrefix = 0;
@@ -1705,7 +1884,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1.2";
+  version = "0.1.3";
 };
 "bclogo" = {
   stripPrefix = 0;
@@ -1721,7 +1900,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.36";
+  version = "3.43";
 };
 "beamer-FUBerlin" = {
   stripPrefix = 0;
@@ -1785,6 +1964,21 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2";
 };
+"beamerswitch" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
+"beamertheme-cuerna" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
 "beamertheme-detlevcm" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1805,7 +1999,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2";
 };
 "beamertheme-phnompenh" = {
   stripPrefix = 0;
@@ -1854,6 +2048,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.6";
 };
+"beilstein" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
 "belleek" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1908,6 +2110,13 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"beuron" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "bewerbung" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1943,7 +2152,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.02";
+  version = "2.11";
 };
 "bguq" = {
   stripPrefix = 0;
@@ -1968,6 +2177,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.5";
 };
+"bib2gls" = {
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "bibarts" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -1980,7 +2196,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
-  version = "2.4";
+  version = "2.7";
 };
 "bibexport" = {
   sha512.run = "";
@@ -2001,28 +2217,43 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.4";
+  version = "3.7";
 };
 "biblatex-abnt" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0.1";
+  version = "3.1";
 };
 "biblatex-anonymous" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.2.2";
+  version = "2.6.0";
 };
 "biblatex-apa" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "6.9";
+  version = "7.4";
+};
+"biblatex-archaeology" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
+"biblatex-arthistory-bonn" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "biblatex-bookinarticle" = {
   stripPrefix = 0;
@@ -2036,7 +2267,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.1.1";
+  version = "2.3.0";
 };
 "biblatex-bwl" = {
   stripPrefix = 0;
@@ -2050,42 +2281,69 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2.6";
+  version = "0.2.7";
+};
+"biblatex-cheatsheet" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
 };
 "biblatex-chem" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1p";
+  version = "1.1t";
 };
 "biblatex-chicago" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0rc1";
+  version = "1.0rc4";
+};
+"biblatex-claves" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.2.0";
 };
 "biblatex-dw" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.6a";
+  version = "1.7";
+};
+"biblatex-enc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "biblatex-fiwi" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.5";
+  version = "1.6c";
+};
+"biblatex-gb7714-2015" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0h";
 };
 "biblatex-gost" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.6";
+  version = "1.16";
 };
 "biblatex-historian" = {
   stripPrefix = 0;
@@ -2099,14 +2357,21 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1n";
+  version = "1.2d";
+};
+"biblatex-ijsra" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1";
 };
 "biblatex-iso690" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.3.1";
+  version = "0.3.2";
 };
 "biblatex-juradiss" = {
   stripPrefix = 0;
@@ -2115,6 +2380,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1g";
 };
+"biblatex-lni" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.4";
+};
 "biblatex-luh-ipw" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -2127,21 +2399,21 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.10.0";
+  version = "1.12.2";
 };
 "biblatex-mla" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.5";
+  version = "1.9";
 };
 "biblatex-morenames" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1.0";
+  version = "1.3.1";
 };
 "biblatex-multiple-dm" = {
   stripPrefix = 0;
@@ -2162,7 +2434,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2g";
+  version = "1.3b";
 };
 "biblatex-nejm" = {
   stripPrefix = 0;
@@ -2171,12 +2443,27 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.4";
 };
+"biblatex-nottsclassic" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
 "biblatex-opcit-booktitle" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.5.0a";
+  version = "1.8.0";
+};
+"biblatex-oxref" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.10";
 };
 "biblatex-philosophy" = {
   stripPrefix = 0;
@@ -2184,49 +2471,63 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.8";
+  version = "1.9.7";
 };
 "biblatex-phys" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0a";
+  version = "1.0b";
 };
 "biblatex-publist" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.7";
 };
 "biblatex-realauthor" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.5.0";
+  version = "2.7.0";
+};
+"biblatex-sbl" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.8.1";
 };
 "biblatex-science" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1f";
+  version = "1.1g";
+};
+"biblatex-shortfields" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0.0";
 };
 "biblatex-source-division" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.4.0";
+  version = "2.4.2";
 };
 "biblatex-subseries" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1.0";
+  version = "1.2.0";
 };
 "biblatex-swiss-legal" = {
   stripPrefix = 0;
@@ -2240,14 +2541,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.3";
 };
 "biblatex-true-citepages-omit" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2.0a";
+  version = "2.0.0";
 };
 "bibleref" = {
   stripPrefix = 0;
@@ -2255,7 +2556,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.14";
+  version = "1.17";
 };
 "bibleref-french" = {
   stripPrefix = 0;
@@ -2300,7 +2601,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1";
+  version = "0.1.2";
 };
 "biblist" = {
   stripPrefix = 0;
@@ -2327,7 +2628,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.3";
 };
 "bibtexu" = {
   sha512.run = "";
@@ -2363,7 +2664,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "19.6";
+  version = "31.5";
 };
 "bidi-atbegshi" = {
   stripPrefix = 0;
@@ -2421,6 +2722,14 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"binarytree" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.01";
+};
 "binomexp" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -2429,12 +2738,25 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"biochemistry-colors" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.00";
+};
 "biocon" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
+"biolett-bst" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "bitelist" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -2521,7 +2843,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2a";
+  version = "1.2b";
 };
 "bodegraph" = {
   stripPrefix = 0;
@@ -2586,7 +2908,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1.1";
+  version = "2.1";
 };
 "bookdb" = {
   stripPrefix = 0;
@@ -2655,7 +2977,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.02d";
 };
 "bophook" = {
   stripPrefix = 0;
@@ -2707,7 +3029,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.06";
+  version = "1.1";
 };
 "bpolynomial" = {
   stripPrefix = 0;
@@ -2771,13 +3093,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.40";
 };
+"bredzenie" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "breqn" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.98d";
+  version = "0.98e";
 };
 "bropd" = {
   stripPrefix = 0;
@@ -2826,28 +3155,35 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.5";
+  version = "1.1";
+};
+"bxcalc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "bxcjkjatype" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2c";
+  version = "0.3";
 };
 "bxdpx-beamer" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.3";
 };
 "bxdvidriver" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.2a";
 };
 "bxeepic" = {
   stripPrefix = 0;
@@ -2863,34 +3199,55 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2";
 };
+"bxjalipsum" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.3a";
+};
+"bxjaprnind" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.3b";
+};
 "bxjscls" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1e";
+  version = "1.7";
 };
 "bxnewfont" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.2b";
+};
+"bxorigcapt" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2a";
 };
 "bxpapersize" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.3b";
 };
 "bxpdfver" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2a";
+  version = "0.4";
 };
 "bytefield" = {
   stripPrefix = 0;
@@ -2898,7 +3255,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.3";
+  version = "2.4";
 };
 "c-pascal" = {
   stripPrefix = 0;
@@ -2976,6 +3333,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "001.000";
 };
+"callouts" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "calrsfs" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -2988,14 +3351,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.2";
+  version = "2.4.2";
 };
 "calxxxx-yyyy" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0i";
+  version = "20.17a";
 };
 "cancel" = {
   stripPrefix = 0;
@@ -3146,7 +3509,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2";
 };
 "cc-pl" = {
   stripPrefix = 0;
@@ -3221,7 +3584,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.6";
+  version = "1.7";
 };
 "celtic" = {
   stripPrefix = 0;
@@ -3238,6 +3601,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "3.21";
 };
+"cesenaexam" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.2";
+};
 "cfr-initials" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -3313,11 +3684,19 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"cheatsheet" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.8";
+};
 "checkcites" = {
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0i";
+  version = "2.0";
 };
 "checklistings" = {
   sha512.run = "";
@@ -3373,28 +3752,28 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2d";
+  version = "1.2e";
 };
 "chemformula" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.15b";
+  version = "4.15e";
 };
 "chemgreek" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0e";
+  version = "1.1";
 };
 "chemmacros" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "5.7a";
+  version = "5.8b";
 };
 "chemnum" = {
   stripPrefix = 0;
@@ -3409,7 +3788,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "chemstyle" = {
   stripPrefix = 0;
@@ -3461,7 +3840,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.1";
+  version = "2.2";
 };
 "chextras" = {
   stripPrefix = 0;
@@ -3488,7 +3867,15 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.2.3";
+  version = "0.2.5";
+};
+"childdoc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.5";
 };
 "chivo" = {
   stripPrefix = 0;
@@ -3509,7 +3896,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.7.5";
+  version = "1.7.6";
 };
 "chletter" = {
   stripPrefix = 0;
@@ -3558,7 +3945,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1";
+  version = "0.2.1";
 };
 "cinzel" = {
   stripPrefix = 0;
@@ -3579,7 +3966,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.6";
+  version = "0.8.3";
 };
 "cite" = {
   stripPrefix = 0;
@@ -3595,12 +3982,19 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"cje" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.01";
+};
 "cjhebrew" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1a";
+  version = "0.2a";
 };
 "cjk" = {
   stripPrefix = 0;
@@ -3620,7 +4014,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "20160115.0";
+  version = "20170624.0";
 };
 "cjk-ko" = {
   stripPrefix = 0;
@@ -3654,7 +4048,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.2";
+  version = "4.4";
 };
 "classpack" = {
   stripPrefix = 0;
@@ -3712,7 +4106,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2";
 };
 "clrscode" = {
   stripPrefix = 0;
@@ -3824,7 +4218,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.05";
+  version = "3.01";
 };
 "cmsd" = {
   stripPrefix = 0;
@@ -3877,7 +4271,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.03a";
+  version = "1.042";
 };
 "codedoc" = {
   stripPrefix = 0;
@@ -3909,6 +4303,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"coelacanth" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "collcell" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -3931,12 +4331,12 @@ tl: { # no indentation
   deps."bibtex" = tl."bibtex";
   deps."cm" = tl."cm";
   deps."dvipdfmx" = tl."dvipdfmx";
-  deps."dvipdfmx-def" = tl."dvipdfmx-def";
   deps."dvips" = tl."dvips";
   deps."enctex" = tl."enctex";
   deps."etex" = tl."etex";
   deps."etex-pkg" = tl."etex-pkg";
   deps."glyphlist" = tl."glyphlist";
+  deps."graphics-def" = tl."graphics-def";
   deps."gsftopk" = tl."gsftopk";
   deps."hyph-utf8" = tl."hyph-utf8";
   deps."hyphen-base" = tl."hyphen-base";
@@ -3979,6 +4379,7 @@ tl: { # no indentation
   deps."beebe" = tl."beebe";
   deps."besjournals" = tl."besjournals";
   deps."bestpapers" = tl."bestpapers";
+  deps."bib2gls" = tl."bib2gls";
   deps."bibarts" = tl."bibarts";
   deps."biber" = tl."biber";
   deps."bibexport" = tl."bibexport";
@@ -3987,19 +4388,26 @@ tl: { # no indentation
   deps."biblatex-abnt" = tl."biblatex-abnt";
   deps."biblatex-anonymous" = tl."biblatex-anonymous";
   deps."biblatex-apa" = tl."biblatex-apa";
+  deps."biblatex-archaeology" = tl."biblatex-archaeology";
+  deps."biblatex-arthistory-bonn" = tl."biblatex-arthistory-bonn";
   deps."biblatex-bookinarticle" = tl."biblatex-bookinarticle";
   deps."biblatex-bookinother" = tl."biblatex-bookinother";
   deps."biblatex-bwl" = tl."biblatex-bwl";
   deps."biblatex-caspervector" = tl."biblatex-caspervector";
   deps."biblatex-chem" = tl."biblatex-chem";
   deps."biblatex-chicago" = tl."biblatex-chicago";
+  deps."biblatex-claves" = tl."biblatex-claves";
   deps."biblatex-dw" = tl."biblatex-dw";
+  deps."biblatex-enc" = tl."biblatex-enc";
   deps."biblatex-fiwi" = tl."biblatex-fiwi";
+  deps."biblatex-gb7714-2015" = tl."biblatex-gb7714-2015";
   deps."biblatex-gost" = tl."biblatex-gost";
   deps."biblatex-historian" = tl."biblatex-historian";
   deps."biblatex-ieee" = tl."biblatex-ieee";
+  deps."biblatex-ijsra" = tl."biblatex-ijsra";
   deps."biblatex-iso690" = tl."biblatex-iso690";
   deps."biblatex-juradiss" = tl."biblatex-juradiss";
+  deps."biblatex-lni" = tl."biblatex-lni";
   deps."biblatex-luh-ipw" = tl."biblatex-luh-ipw";
   deps."biblatex-manuscripts-philology" = tl."biblatex-manuscripts-philology";
   deps."biblatex-mla" = tl."biblatex-mla";
@@ -4008,12 +4416,16 @@ tl: { # no indentation
   deps."biblatex-musuos" = tl."biblatex-musuos";
   deps."biblatex-nature" = tl."biblatex-nature";
   deps."biblatex-nejm" = tl."biblatex-nejm";
+  deps."biblatex-nottsclassic" = tl."biblatex-nottsclassic";
   deps."biblatex-opcit-booktitle" = tl."biblatex-opcit-booktitle";
+  deps."biblatex-oxref" = tl."biblatex-oxref";
   deps."biblatex-philosophy" = tl."biblatex-philosophy";
   deps."biblatex-phys" = tl."biblatex-phys";
   deps."biblatex-publist" = tl."biblatex-publist";
   deps."biblatex-realauthor" = tl."biblatex-realauthor";
+  deps."biblatex-sbl" = tl."biblatex-sbl";
   deps."biblatex-science" = tl."biblatex-science";
+  deps."biblatex-shortfields" = tl."biblatex-shortfields";
   deps."biblatex-source-division" = tl."biblatex-source-division";
   deps."biblatex-subseries" = tl."biblatex-subseries";
   deps."biblatex-swiss-legal" = tl."biblatex-swiss-legal";
@@ -4024,6 +4436,7 @@ tl: { # no indentation
   deps."bibtopic" = tl."bibtopic";
   deps."bibtopicprefix" = tl."bibtopicprefix";
   deps."bibunits" = tl."bibunits";
+  deps."biolett-bst" = tl."biolett-bst";
   deps."bookdb" = tl."bookdb";
   deps."breakcites" = tl."breakcites";
   deps."cell" = tl."cell";
@@ -4057,8 +4470,10 @@ tl: { # no indentation
   deps."jneurosci" = tl."jneurosci";
   deps."jurabib" = tl."jurabib";
   deps."ksfh_nat" = tl."ksfh_nat";
+  deps."ltb2bib" = tl."ltb2bib";
   deps."listbib" = tl."listbib";
   deps."logreq" = tl."logreq";
+  deps."luabibentry" = tl."luabibentry";
   deps."margbib" = tl."margbib";
   deps."multibib" = tl."multibib";
   deps."multibibliography" = tl."multibibliography";
@@ -4066,6 +4481,7 @@ tl: { # no indentation
   deps."nar" = tl."nar";
   deps."nmbib" = tl."nmbib";
   deps."notes2bib" = tl."notes2bib";
+  deps."notex-bst" = tl."notex-bst";
   deps."oscola" = tl."oscola";
   deps."perception" = tl."perception";
   deps."pnas2009" = tl."pnas2009";
@@ -4107,6 +4523,7 @@ tl: { # no indentation
   deps."dviasm" = tl."dviasm";
   deps."dvicopy" = tl."dvicopy";
   deps."dvidvi" = tl."dvidvi";
+  deps."dviinfox" = tl."dviinfox";
   deps."dviljk" = tl."dviljk";
   deps."dvipng" = tl."dvipng";
   deps."dvipos" = tl."dvipos";
@@ -4118,7 +4535,9 @@ tl: { # no indentation
   deps."installfont" = tl."installfont";
   deps."lacheck" = tl."lacheck";
   deps."latex-git-log" = tl."latex-git-log";
+  deps."latex-papersize" = tl."latex-papersize";
   deps."latex2man" = tl."latex2man";
+  deps."latex2nemeth" = tl."latex2nemeth";
   deps."latexdiff" = tl."latexdiff";
   deps."latexfileversion" = tl."latexfileversion";
   deps."latexmk" = tl."latexmk";
@@ -4135,6 +4554,7 @@ tl: { # no indentation
   deps."pdfbook2" = tl."pdfbook2";
   deps."pdfcrop" = tl."pdfcrop";
   deps."pdfjam" = tl."pdfjam";
+  deps."pdflatexpicscale" = tl."pdflatexpicscale";
   deps."pdftools" = tl."pdftools";
   deps."pdfxup" = tl."pdfxup";
   deps."pfarrei" = tl."pfarrei";
@@ -4155,8 +4575,11 @@ tl: { # no indentation
   deps."texfot" = tl."texfot";
   deps."texliveonfly" = tl."texliveonfly";
   deps."texloganalyser" = tl."texloganalyser";
+  deps."texosquery" = tl."texosquery";
   deps."texware" = tl."texware";
   deps."tie" = tl."tie";
+  deps."tlcockpit" = tl."tlcockpit";
+  deps."tlshell" = tl."tlshell";
   deps."tpic2pdftex" = tl."tpic2pdftex";
   deps."typeoutfileinfo" = tl."typeoutfileinfo";
   deps."web" = tl."web";
@@ -4168,28 +4591,29 @@ tl: { # no indentation
   deps."collection-basic" = tl."collection-basic";
   deps."context" = tl."context";
   deps."jmn" = tl."jmn";
+  deps."context-notes-zh-cn" = tl."context-notes-zh-cn";
   deps."context-account" = tl."context-account";
   deps."context-algorithmic" = tl."context-algorithmic";
   deps."context-animation" = tl."context-animation";
   deps."context-annotation" = tl."context-annotation";
   deps."context-bnf" = tl."context-bnf";
   deps."context-chromato" = tl."context-chromato";
+  deps."context-cmscbf" = tl."context-cmscbf";
+  deps."context-cmttbf" = tl."context-cmttbf";
   deps."context-construction-plan" = tl."context-construction-plan";
   deps."context-cyrillicnumbers" = tl."context-cyrillicnumbers";
   deps."context-degrade" = tl."context-degrade";
   deps."context-fancybreak" = tl."context-fancybreak";
   deps."context-filter" = tl."context-filter";
-  deps."context-fixme" = tl."context-fixme";
   deps."context-french" = tl."context-french";
   deps."context-fullpage" = tl."context-fullpage";
-  deps."context-games" = tl."context-games";
   deps."context-gantt" = tl."context-gantt";
   deps."context-gnuplot" = tl."context-gnuplot";
+  deps."context-inifile" = tl."context-inifile";
+  deps."context-layout" = tl."context-layout";
   deps."context-letter" = tl."context-letter";
   deps."context-lettrine" = tl."context-lettrine";
-  deps."context-lilypond" = tl."context-lilypond";
   deps."context-mathsets" = tl."context-mathsets";
-  deps."context-notes-zh-cn" = tl."context-notes-zh-cn";
   deps."context-rst" = tl."context-rst";
   deps."context-ruby" = tl."context-ruby";
   deps."context-simplefonts" = tl."context-simplefonts";
@@ -4212,6 +4636,7 @@ tl: { # no indentation
   deps."adfsymbols" = tl."adfsymbols";
   deps."aecc" = tl."aecc";
   deps."alegreya" = tl."alegreya";
+  deps."algolrevived" = tl."algolrevived";
   deps."allrunes" = tl."allrunes";
   deps."almfixed" = tl."almfixed";
   deps."anonymouspro" = tl."anonymouspro";
@@ -4219,8 +4644,9 @@ tl: { # no indentation
   deps."antt" = tl."antt";
   deps."archaic" = tl."archaic";
   deps."arev" = tl."arev";
-  deps."ascii-font" = tl."ascii-font";
+  deps."arimo" = tl."arimo";
   deps."asapsym" = tl."asapsym";
+  deps."ascii-font" = tl."ascii-font";
   deps."aspectratio" = tl."aspectratio";
   deps."astro" = tl."astro";
   deps."augie" = tl."augie";
@@ -4230,6 +4656,7 @@ tl: { # no indentation
   deps."barcodes" = tl."barcodes";
   deps."baskervald" = tl."baskervald";
   deps."baskervaldx" = tl."baskervaldx";
+  deps."baskervillef" = tl."baskervillef";
   deps."bbding" = tl."bbding";
   deps."bbm" = tl."bbm";
   deps."bbm-macros" = tl."bbm-macros";
@@ -4238,6 +4665,7 @@ tl: { # no indentation
   deps."belleek" = tl."belleek";
   deps."bera" = tl."bera";
   deps."berenisadf" = tl."berenisadf";
+  deps."beuron" = tl."beuron";
   deps."bguq" = tl."bguq";
   deps."blacklettert1" = tl."blacklettert1";
   deps."boisik" = tl."boisik";
@@ -4267,10 +4695,12 @@ tl: { # no indentation
   deps."cmpica" = tl."cmpica";
   deps."cmtiup" = tl."cmtiup";
   deps."cochineal" = tl."cochineal";
+  deps."coelacanth" = tl."coelacanth";
   deps."comfortaa" = tl."comfortaa";
   deps."comicneue" = tl."comicneue";
   deps."concmath-fonts" = tl."concmath-fonts";
   deps."cookingsymbols" = tl."cookingsymbols";
+  deps."cormorantgaramond" = tl."cormorantgaramond";
   deps."countriesofeurope" = tl."countriesofeurope";
   deps."courier-scaled" = tl."courier-scaled";
   deps."crimson" = tl."crimson";
@@ -4279,6 +4709,7 @@ tl: { # no indentation
   deps."dancers" = tl."dancers";
   deps."dantelogo" = tl."dantelogo";
   deps."dejavu" = tl."dejavu";
+  deps."dejavu-otf" = tl."dejavu-otf";
   deps."dice" = tl."dice";
   deps."dictsym" = tl."dictsym";
   deps."dingbat" = tl."dingbat";
@@ -4317,10 +4748,10 @@ tl: { # no indentation
   deps."fontawesome" = tl."fontawesome";
   deps."fontmfizz" = tl."fontmfizz";
   deps."fonts-churchslavonic" = tl."fonts-churchslavonic";
-  deps."old-arrows" = tl."old-arrows";
   deps."fourier" = tl."fourier";
   deps."fouriernc" = tl."fouriernc";
   deps."frcursive" = tl."frcursive";
+  deps."frederika2016" = tl."frederika2016";
   deps."genealogy" = tl."genealogy";
   deps."gentium-tug" = tl."gentium-tug";
   deps."gfsartemisia" = tl."gfsartemisia";
@@ -4332,6 +4763,7 @@ tl: { # no indentation
   deps."gillcm" = tl."gillcm";
   deps."gillius" = tl."gillius";
   deps."gnu-freefont" = tl."gnu-freefont";
+  deps."gofonts" = tl."gofonts";
   deps."gothic" = tl."gothic";
   deps."greenpoint" = tl."greenpoint";
   deps."grotesq" = tl."grotesq";
@@ -4375,12 +4807,15 @@ tl: { # no indentation
   deps."merriweather" = tl."merriweather";
   deps."miama" = tl."miama";
   deps."mintspirit" = tl."mintspirit";
+  deps."missaali" = tl."missaali";
   deps."mnsymbol" = tl."mnsymbol";
+  deps."montserrat" = tl."montserrat";
   deps."mweights" = tl."mweights";
   deps."newpx" = tl."newpx";
   deps."newtx" = tl."newtx";
   deps."newtxsf" = tl."newtxsf";
   deps."newtxtt" = tl."newtxtt";
+  deps."niceframe-type1" = tl."niceframe-type1";
   deps."nimbus15" = tl."nimbus15";
   deps."nkarta" = tl."nkarta";
   deps."noto" = tl."noto";
@@ -4390,6 +4825,7 @@ tl: { # no indentation
   deps."ocr-b-outline" = tl."ocr-b-outline";
   deps."ogham" = tl."ogham";
   deps."oinuit" = tl."oinuit";
+  deps."old-arrows" = tl."old-arrows";
   deps."oldlatin" = tl."oldlatin";
   deps."oldstandard" = tl."oldstandard";
   deps."opensans" = tl."opensans";
@@ -4420,6 +4856,7 @@ tl: { # no indentation
   deps."sauterfonts" = tl."sauterfonts";
   deps."schulschriften" = tl."schulschriften";
   deps."semaphor" = tl."semaphor";
+  deps."shobhika" = tl."shobhika";
   deps."skull" = tl."skull";
   deps."sourcecodepro" = tl."sourcecodepro";
   deps."sourcesanspro" = tl."sourcesanspro";
@@ -4433,13 +4870,16 @@ tl: { # no indentation
   deps."tempora" = tl."tempora";
   deps."tengwarscript" = tl."tengwarscript";
   deps."tfrupee" = tl."tfrupee";
+  deps."tinos" = tl."tinos";
   deps."tpslifonts" = tl."tpslifonts";
   deps."trajan" = tl."trajan";
   deps."txfontsb" = tl."txfontsb";
+  deps."txuprcal" = tl."txuprcal";
   deps."typicons" = tl."typicons";
   deps."umtypewriter" = tl."umtypewriter";
   deps."universa" = tl."universa";
   deps."universalis" = tl."universalis";
+  deps."uppunctlm" = tl."uppunctlm";
   deps."urwchancal" = tl."urwchancal";
   deps."venturisadf" = tl."venturisadf";
   deps."wsuipa" = tl."wsuipa";
@@ -4514,13 +4954,25 @@ tl: { # no indentation
 "collection-formatsextra" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
+  deps."collection-latex" = tl."collection-latex";
   deps."edmac" = tl."edmac";
   deps."eplain" = tl."eplain";
+  deps."jadetex" = tl."jadetex";
   deps."lollipop" = tl."lollipop";
   deps."mltex" = tl."mltex";
+  deps."passivetex" = tl."passivetex";
   deps."psizzl" = tl."psizzl";
   deps."startex" = tl."startex";
   deps."texsis" = tl."texsis";
+  deps."xmltex" = tl."xmltex";
+  deps."xmltexconfig" = tl."xmltexconfig";
+  deps."aleph" = tl."aleph";
+  deps."antomega" = tl."antomega";
+  deps."lambda" = tl."lambda";
+  deps."mxedruli" = tl."mxedruli";
+  deps."omega" = tl."omega";
+  deps."omegaware" = tl."omegaware";
+  deps."otibet" = tl."otibet";
   sha512.run = "";
 };
 "collection-games" = {
@@ -4552,90 +5004,13 @@ tl: { # no indentation
   deps."sgame" = tl."sgame";
   deps."skak" = tl."skak";
   deps."skaknew" = tl."skaknew";
+  deps."soup" = tl."soup";
   deps."sudoku" = tl."sudoku";
   deps."sudokubundle" = tl."sudokubundle";
   deps."xq" = tl."xq";
   deps."xskak" = tl."xskak";
   sha512.run = "";
 };
-"collection-genericextra" = {
-  stripPrefix = 0;
-  deps."collection-basic" = tl."collection-basic";
-  deps."abbr" = tl."abbr";
-  deps."abstyles" = tl."abstyles";
-  deps."barr" = tl."barr";
-  deps."bitelist" = tl."bitelist";
-  deps."borceux" = tl."borceux";
-  deps."c-pascal" = tl."c-pascal";
-  deps."catcodes" = tl."catcodes";
-  deps."chronosys" = tl."chronosys";
-  deps."colorsep" = tl."colorsep";
-  deps."dinat" = tl."dinat";
-  deps."dirtree" = tl."dirtree";
-  deps."docbytex" = tl."docbytex";
-  deps."dowith" = tl."dowith";
-  deps."eijkhout" = tl."eijkhout";
-  deps."encxvlna" = tl."encxvlna";
-  deps."epigram" = tl."epigram";
-  deps."fenixpar" = tl."fenixpar";
-  deps."fltpoint" = tl."fltpoint";
-  deps."fntproof" = tl."fntproof";
-  deps."gates" = tl."gates";
-  deps."gobble" = tl."gobble";
-  deps."gtl" = tl."gtl";
-  deps."ifetex" = tl."ifetex";
-  deps."iftex" = tl."iftex";
-  deps."insbox" = tl."insbox";
-  deps."lambda-lists" = tl."lambda-lists";
-  deps."langcode" = tl."langcode";
-  deps."lecturer" = tl."lecturer";
-  deps."librarian" = tl."librarian";
-  deps."mathdots" = tl."mathdots";
-  deps."metatex" = tl."metatex";
-  deps."midnight" = tl."midnight";
-  deps."navigator" = tl."navigator";
-  deps."ofs" = tl."ofs";
-  deps."pdf-trans" = tl."pdf-trans";
-  deps."plainpkg" = tl."plainpkg";
-  deps."schemata" = tl."schemata";
-  deps."shade" = tl."shade";
-  deps."systeme" = tl."systeme";
-  deps."tabto-generic" = tl."tabto-generic";
-  deps."termmenu" = tl."termmenu";
-  deps."tracklang" = tl."tracklang";
-  deps."texapi" = tl."texapi";
-  deps."upca" = tl."upca";
-  deps."xlop" = tl."xlop";
-  deps."yax" = tl."yax";
-  sha512.run = "";
-};
-"collection-genericrecommended" = {
-  stripPrefix = 0;
-  deps."collection-basic" = tl."collection-basic";
-  deps."apnum" = tl."apnum";
-  deps."epsf" = tl."epsf";
-  deps."fontname" = tl."fontname";
-  deps."genmisc" = tl."genmisc";
-  deps."kastrup" = tl."kastrup";
-  deps."multido" = tl."multido";
-  deps."path" = tl."path";
-  deps."tex-ps" = tl."tex-ps";
-  deps."ulem" = tl."ulem";
-  sha512.run = "";
-};
-"collection-htmlxml" = {
-  stripPrefix = 0;
-  deps."collection-basic" = tl."collection-basic";
-  deps."collection-fontsrecommended" = tl."collection-fontsrecommended";
-  deps."collection-latex" = tl."collection-latex";
-  deps."classpack" = tl."classpack";
-  deps."jadetex" = tl."jadetex";
-  deps."passivetex" = tl."passivetex";
-  deps."tex4ht" = tl."tex4ht";
-  deps."xmltex" = tl."xmltex";
-  deps."xmltexconfig" = tl."xmltexconfig";
-  sha512.run = "";
-};
 "collection-humanities" = {
   stripPrefix = 0;
   deps."collection-latex" = tl."collection-latex";
@@ -4661,9 +5036,9 @@ tl: { # no indentation
   deps."juramisc" = tl."juramisc";
   deps."jurarsp" = tl."jurarsp";
   deps."ledmac" = tl."ledmac";
-  deps."leipzig" = tl."leipzig";
   deps."lexikon" = tl."lexikon";
   deps."lexref" = tl."lexref";
+  deps."ling-macros" = tl."ling-macros";
   deps."linguex" = tl."linguex";
   deps."liturg" = tl."liturg";
   deps."metrix" = tl."metrix";
@@ -4673,6 +5048,7 @@ tl: { # no indentation
   deps."plari" = tl."plari";
   deps."play" = tl."play";
   deps."poemscol" = tl."poemscol";
+  deps."poetry" = tl."poetry";
   deps."poetrytex" = tl."poetrytex";
   deps."qobitree" = tl."qobitree";
   deps."qtree" = tl."qtree";
@@ -4684,24 +5060,17 @@ tl: { # no indentation
   deps."sides" = tl."sides";
   deps."stage" = tl."stage";
   deps."textglos" = tl."textglos";
+  deps."theatre" = tl."theatre";
   deps."thalie" = tl."thalie";
   deps."tree-dvips" = tl."tree-dvips";
   deps."verse" = tl."verse";
   deps."xyling" = tl."xyling";
   sha512.run = "";
 };
-"collection-langafrican" = {
-  stripPrefix = 0;
-  deps."collection-basic" = tl."collection-basic";
-  deps."ethiop" = tl."ethiop";
-  deps."ethiop-t1" = tl."ethiop-t1";
-  deps."fc" = tl."fc";
-  deps."hyphen-ethiopic" = tl."hyphen-ethiopic";
-  sha512.run = "";
-};
 "collection-langarabic" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
+  deps."alkalami" = tl."alkalami";
   deps."amiri" = tl."amiri";
   deps."arabi" = tl."arabi";
   deps."arabi-add" = tl."arabi-add";
@@ -4715,15 +5084,19 @@ tl: { # no indentation
   deps."hyphen-farsi" = tl."hyphen-farsi";
   deps."imsproc" = tl."imsproc";
   deps."lshort-persian" = tl."lshort-persian";
+  deps."luabidi" = tl."luabidi";
+  deps."na-box" = tl."na-box";
   deps."persian-bib" = tl."persian-bib";
   deps."simurgh" = tl."simurgh";
   deps."tram" = tl."tram";
+  deps."xepersian" = tl."xepersian";
   sha512.run = "";
 };
 "collection-langchinese" = {
   stripPrefix = 0;
   deps."collection-langcjk" = tl."collection-langcjk";
   deps."arphic" = tl."arphic";
+  deps."arphic-ttf" = tl."arphic-ttf";
   deps."asymptote-by-example-zh-cn" = tl."asymptote-by-example-zh-cn";
   deps."asymptote-faq-zh-cn" = tl."asymptote-faq-zh-cn";
   deps."asymptote-manual-zh-cn" = tl."asymptote-manual-zh-cn";
@@ -4736,7 +5109,10 @@ tl: { # no indentation
   deps."latex-notes-zh-cn" = tl."latex-notes-zh-cn";
   deps."lshort-chinese" = tl."lshort-chinese";
   deps."texlive-zh-cn" = tl."texlive-zh-cn";
+  deps."texproposal" = tl."texproposal";
+  deps."upzhkinsoku" = tl."upzhkinsoku";
   deps."xpinyin" = tl."xpinyin";
+  deps."zhlipsum" = tl."zhlipsum";
   deps."zhmetrics" = tl."zhmetrics";
   deps."zhmetrics-uptex" = tl."zhmetrics-uptex";
   deps."zhnumber" = tl."zhnumber";
@@ -4754,7 +5130,10 @@ tl: { # no indentation
   deps."cjkutils" = tl."cjkutils";
   deps."dnp" = tl."dnp";
   deps."garuda-c90" = tl."garuda-c90";
+  deps."fixjfm" = tl."fixjfm";
+  deps."jfmutil" = tl."jfmutil";
   deps."norasi-c90" = tl."norasi-c90";
+  deps."pxtatescale" = tl."pxtatescale";
   deps."xcjk2uni" = tl."xcjk2uni";
   deps."zxjafont" = tl."zxjafont";
   sha512.run = "";
@@ -4778,6 +5157,7 @@ tl: { # no indentation
   deps."eskd" = tl."eskd";
   deps."eskdx" = tl."eskdx";
   deps."gost" = tl."gost";
+  deps."hyphen-belarusian" = tl."hyphen-belarusian";
   deps."hyphen-bulgarian" = tl."hyphen-bulgarian";
   deps."hyphen-churchslavonic" = tl."hyphen-churchslavonic";
   deps."hyphen-mongolian" = tl."hyphen-mongolian";
@@ -4794,6 +5174,7 @@ tl: { # no indentation
   deps."mongolian-babel" = tl."mongolian-babel";
   deps."montex" = tl."montex";
   deps."mpman-ru" = tl."mpman-ru";
+  deps."numnameru" = tl."numnameru";
   deps."pst-eucl-translation-bg" = tl."pst-eucl-translation-bg";
   deps."ruhyphen" = tl."ruhyphen";
   deps."russ" = tl."russ";
@@ -4834,14 +5215,18 @@ tl: { # no indentation
   deps."FAQ-en" = tl."FAQ-en";
   deps."MemoirChapStyles" = tl."MemoirChapStyles";
   deps."Type1fonts" = tl."Type1fonts";
+  deps."amscls-doc" = tl."amscls-doc";
   deps."amslatex-primer" = tl."amslatex-primer";
   deps."around-the-bend" = tl."around-the-bend";
   deps."ascii-chart" = tl."ascii-chart";
+  deps."biblatex-cheatsheet" = tl."biblatex-cheatsheet";
   deps."components-of-TeX" = tl."components-of-TeX";
   deps."comprehensive" = tl."comprehensive";
   deps."dickimaw" = tl."dickimaw";
+  deps."docsurvey" = tl."docsurvey";
   deps."dtxtut" = tl."dtxtut";
   deps."first-latex-doc" = tl."first-latex-doc";
+  deps."forest-quickstart" = tl."forest-quickstart";
   deps."gentle" = tl."gentle";
   deps."guide-to-latex" = tl."guide-to-latex";
   deps."happy4th" = tl."happy4th";
@@ -4853,6 +5238,7 @@ tl: { # no indentation
   deps."latex-course" = tl."latex-course";
   deps."latex-doc-ptr" = tl."latex-doc-ptr";
   deps."latex-graphics-companion" = tl."latex-graphics-companion";
+  deps."latex-refsheet" = tl."latex-refsheet";
   deps."latex-veryshortguide" = tl."latex-veryshortguide";
   deps."latex-web-companion" = tl."latex-web-companion";
   deps."latex2e-help-texinfo" = tl."latex2e-help-texinfo";
@@ -4863,11 +5249,11 @@ tl: { # no indentation
   deps."lshort-english" = tl."lshort-english";
   deps."macros2e" = tl."macros2e";
   deps."math-e" = tl."math-e";
+  deps."math-into-latex-4" = tl."math-into-latex-4";
   deps."maths-symbols" = tl."maths-symbols";
   deps."memdesign" = tl."memdesign";
   deps."metafont-beginners" = tl."metafont-beginners";
   deps."metapost-examples" = tl."metapost-examples";
-  deps."mil3" = tl."mil3";
   deps."patgen2-tutorial" = tl."patgen2-tutorial";
   deps."pictexsum" = tl."pictexsum";
   deps."plain-doc" = tl."plain-doc";
@@ -4883,8 +5269,8 @@ tl: { # no indentation
   deps."texbytopic" = tl."texbytopic";
   deps."titlepages" = tl."titlepages";
   deps."tlc2" = tl."tlc2";
+  deps."undergradmath" = tl."undergradmath";
   deps."visualfaq" = tl."visualfaq";
-  deps."voss-mathmode" = tl."voss-mathmode";
   deps."webguide" = tl."webguide";
   deps."xetexref" = tl."xetexref";
   sha512.run = "";
@@ -4923,7 +5309,6 @@ tl: { # no indentation
   deps."finbib" = tl."finbib";
   deps."gloss-occitan" = tl."gloss-occitan";
   deps."hrlatex" = tl."hrlatex";
-  deps."hyphen-armenian" = tl."hyphen-armenian";
   deps."hyphen-croatian" = tl."hyphen-croatian";
   deps."hyphen-danish" = tl."hyphen-danish";
   deps."hyphen-dutch" = tl."hyphen-dutch";
@@ -4998,6 +5383,7 @@ tl: { # no indentation
 "collection-langgerman" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
+  deps."apalike-german" = tl."apalike-german";
   deps."babel-german" = tl."babel-german";
   deps."bibleref-german" = tl."bibleref-german";
   deps."booktabs-de" = tl."booktabs-de";
@@ -5026,10 +5412,12 @@ tl: { # no indentation
   deps."lshort-german" = tl."lshort-german";
   deps."lualatex-doc-de" = tl."lualatex-doc-de";
   deps."microtype-de" = tl."microtype-de";
+  deps."milog" = tl."milog";
   deps."presentations" = tl."presentations";
   deps."r_und_s" = tl."r_und_s";
   deps."templates-fenn" = tl."templates-fenn";
   deps."templates-sommer" = tl."templates-sommer";
+  deps."termcal-de" = tl."termcal-de";
   deps."texlive-de" = tl."texlive-de";
   deps."tipa-de" = tl."tipa-de";
   deps."translation-arsclassica-de" = tl."translation-arsclassica-de";
@@ -5075,24 +5463,6 @@ tl: { # no indentation
   deps."yannisgr" = tl."yannisgr";
   sha512.run = "";
 };
-"collection-langindic" = {
-  stripPrefix = 0;
-  deps."collection-basic" = tl."collection-basic";
-  deps."bangtex" = tl."bangtex";
-  deps."bengali" = tl."bengali";
-  deps."burmese" = tl."burmese";
-  deps."devnag" = tl."devnag";
-  deps."ebong" = tl."ebong";
-  deps."hyphen-indic" = tl."hyphen-indic";
-  deps."hyphen-sanskrit" = tl."hyphen-sanskrit";
-  deps."sanskrit" = tl."sanskrit";
-  deps."sanskrit-t1" = tl."sanskrit-t1";
-  deps."velthuis" = tl."velthuis";
-  deps."wnri" = tl."wnri";
-  deps."wnri-latex" = tl."wnri-latex";
-  deps."xetex-devanagari" = tl."xetex-devanagari";
-  sha512.run = "";
-};
 "collection-langitalian" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
@@ -5117,29 +5487,39 @@ tl: { # no indentation
 "collection-langjapanese" = {
   stripPrefix = 0;
   deps."collection-langcjk" = tl."collection-langcjk";
+  deps."babel-japanese" = tl."babel-japanese";
   deps."bxbase" = tl."bxbase";
   deps."bxcjkjatype" = tl."bxcjkjatype";
+  deps."bxjalipsum" = tl."bxjalipsum";
+  deps."bxjaprnind" = tl."bxjaprnind";
   deps."bxjscls" = tl."bxjscls";
+  deps."bxorigcapt" = tl."bxorigcapt";
   deps."convbkmk" = tl."convbkmk";
+  deps."ifptex" = tl."ifptex";
+  deps."ifxptex" = tl."ifxptex";
   deps."ipaex" = tl."ipaex";
-  deps."japanese" = tl."japanese";
   deps."japanese-otf" = tl."japanese-otf";
   deps."japanese-otf-uptex" = tl."japanese-otf-uptex";
-  deps."jfontmaps" = tl."jfontmaps";
+  deps."jlreq" = tl."jlreq";
   deps."jsclasses" = tl."jsclasses";
   deps."lshort-japanese" = tl."lshort-japanese";
   deps."luatexja" = tl."luatexja";
+  deps."mendex-doc" = tl."mendex-doc";
   deps."pbibtex-base" = tl."pbibtex-base";
   deps."platex" = tl."platex";
+  deps."platex-tools" = tl."platex-tools";
+  deps."platexcheat" = tl."platexcheat";
   deps."ptex" = tl."ptex";
   deps."ptex-base" = tl."ptex-base";
   deps."ptex-fonts" = tl."ptex-fonts";
+  deps."ptex-fontmaps" = tl."ptex-fontmaps";
   deps."ptex2pdf" = tl."ptex2pdf";
   deps."pxbase" = tl."pxbase";
   deps."pxchfon" = tl."pxchfon";
   deps."pxcjkcat" = tl."pxcjkcat";
   deps."pxjahyper" = tl."pxjahyper";
   deps."pxrubrica" = tl."pxrubrica";
+  deps."pxufont" = tl."pxufont";
   deps."uplatex" = tl."uplatex";
   deps."uptex" = tl."uptex";
   deps."uptex-base" = tl."uptex-base";
@@ -5152,6 +5532,7 @@ tl: { # no indentation
 "collection-langkorean" = {
   stripPrefix = 0;
   deps."collection-langcjk" = tl."collection-langcjk";
+  deps."baekmuk" = tl."baekmuk";
   deps."cjk-ko" = tl."cjk-ko";
   deps."kotex-oblivoir" = tl."kotex-oblivoir";
   deps."kotex-plain" = tl."kotex-plain";
@@ -5160,6 +5541,8 @@ tl: { # no indentation
   deps."lshort-korean" = tl."lshort-korean";
   deps."nanumtype1" = tl."nanumtype1";
   deps."uhc" = tl."uhc";
+  deps."unfonts-core" = tl."unfonts-core";
+  deps."unfonts-extra" = tl."unfonts-extra";
   sha512.run = "";
 };
 "collection-langother" = {
@@ -5167,29 +5550,52 @@ tl: { # no indentation
   deps."collection-basic" = tl."collection-basic";
   deps."amsldoc-vn" = tl."amsldoc-vn";
   deps."aramaic-serto" = tl."aramaic-serto";
-  deps."babel-bahasa" = tl."babel-bahasa";
+  deps."hyphen-armenian" = tl."hyphen-armenian";
+  deps."babel-azerbaijani" = tl."babel-azerbaijani";
   deps."babel-esperanto" = tl."babel-esperanto";
   deps."babel-georgian" = tl."babel-georgian";
   deps."babel-hebrew" = tl."babel-hebrew";
+  deps."babel-indonesian" = tl."babel-indonesian";
   deps."babel-interlingua" = tl."babel-interlingua";
+  deps."babel-malay" = tl."babel-malay";
   deps."babel-sorbian" = tl."babel-sorbian";
   deps."babel-thai" = tl."babel-thai";
   deps."babel-vietnamese" = tl."babel-vietnamese";
+  deps."bangtex" = tl."bangtex";
+  deps."bengali" = tl."bengali";
+  deps."burmese" = tl."burmese";
   deps."cjhebrew" = tl."cjhebrew";
   deps."ctib" = tl."ctib";
+  deps."ebong" = tl."ebong";
+  deps."ethiop" = tl."ethiop";
+  deps."ethiop-t1" = tl."ethiop-t1";
+  deps."fc" = tl."fc";
   deps."fonts-tlwg" = tl."fonts-tlwg";
   deps."hyphen-afrikaans" = tl."hyphen-afrikaans";
   deps."hyphen-coptic" = tl."hyphen-coptic";
   deps."hyphen-esperanto" = tl."hyphen-esperanto";
+  deps."hyphen-ethiopic" = tl."hyphen-ethiopic";
   deps."hyphen-georgian" = tl."hyphen-georgian";
+  deps."hyphen-indic" = tl."hyphen-indic";
   deps."hyphen-indonesian" = tl."hyphen-indonesian";
   deps."hyphen-interlingua" = tl."hyphen-interlingua";
+  deps."hyphen-sanskrit" = tl."hyphen-sanskrit";
   deps."hyphen-thai" = tl."hyphen-thai";
   deps."hyphen-turkmen" = tl."hyphen-turkmen";
+  deps."latex-mr" = tl."latex-mr";
+  deps."latexbangla" = tl."latexbangla";
   deps."lshort-thai" = tl."lshort-thai";
   deps."lshort-vietnamese" = tl."lshort-vietnamese";
   deps."ntheorem-vn" = tl."ntheorem-vn";
+  deps."padauk" = tl."padauk";
+  deps."sanskrit" = tl."sanskrit";
+  deps."sanskrit-t1" = tl."sanskrit-t1";
+  deps."thaienum" = tl."thaienum";
+  deps."velthuis" = tl."velthuis";
   deps."vntex" = tl."vntex";
+  deps."wnri" = tl."wnri";
+  deps."wnri-latex" = tl."wnri-latex";
+  deps."xetex-devanagari" = tl."xetex-devanagari";
   sha512.run = "";
 };
 "collection-langpolish" = {
@@ -5197,6 +5603,7 @@ tl: { # no indentation
   deps."collection-latex" = tl."collection-latex";
   deps."collection-basic" = tl."collection-basic";
   deps."babel-polish" = tl."babel-polish";
+  deps."bredzenie" = tl."bredzenie";
   deps."cc-pl" = tl."cc-pl";
   deps."gustlib" = tl."gustlib";
   deps."gustprog" = tl."gustprog";
@@ -5258,7 +5665,6 @@ tl: { # no indentation
   deps."babelbib" = tl."babelbib";
   deps."carlisle" = tl."carlisle";
   deps."colortbl" = tl."colortbl";
-  deps."dvisvgm-def" = tl."dvisvgm-def";
   deps."fancyhdr" = tl."fancyhdr";
   deps."fix2col" = tl."fix2col";
   deps."geometry" = tl."geometry";
@@ -5274,7 +5680,6 @@ tl: { # no indentation
   deps."mptopdf" = tl."mptopdf";
   deps."natbib" = tl."natbib";
   deps."oberdiek" = tl."oberdiek";
-  deps."pdftex-def" = tl."pdftex-def";
   deps."pslatex" = tl."pslatex";
   deps."psnfss" = tl."psnfss";
   deps."pspicture" = tl."pspicture";
@@ -5301,6 +5706,8 @@ tl: { # no indentation
   deps."acronym" = tl."acronym";
   deps."acroterm" = tl."acroterm";
   deps."actuarialangle" = tl."actuarialangle";
+  deps."actuarialsymbol" = tl."actuarialsymbol";
+  deps."addfont" = tl."addfont";
   deps."addlines" = tl."addlines";
   deps."adjmulticol" = tl."adjmulticol";
   deps."adjustbox" = tl."adjustbox";
@@ -5328,6 +5735,7 @@ tl: { # no indentation
   deps."assignment" = tl."assignment";
   deps."assoccnt" = tl."assoccnt";
   deps."attachfile" = tl."attachfile";
+  deps."aurl" = tl."aurl";
   deps."authoraftertitle" = tl."authoraftertitle";
   deps."authorindex" = tl."authorindex";
   deps."autonum" = tl."autonum";
@@ -5344,6 +5752,7 @@ tl: { # no indentation
   deps."beamerdarkthemes" = tl."beamerdarkthemes";
   deps."beamerposter" = tl."beamerposter";
   deps."beamersubframe" = tl."beamersubframe";
+  deps."beamertheme-cuerna" = tl."beamertheme-cuerna";
   deps."beamertheme-detlevcm" = tl."beamertheme-detlevcm";
   deps."beamertheme-epyt" = tl."beamertheme-epyt";
   deps."beamertheme-metropolis" = tl."beamertheme-metropolis";
@@ -5359,6 +5768,7 @@ tl: { # no indentation
   deps."bibletext" = tl."bibletext";
   deps."bigfoot" = tl."bigfoot";
   deps."bigints" = tl."bigints";
+  deps."biochemistry-colors" = tl."biochemistry-colors";
   deps."bizcard" = tl."bizcard";
   deps."blindtext" = tl."blindtext";
   deps."blkarray" = tl."blkarray";
@@ -5379,6 +5789,7 @@ tl: { # no indentation
   deps."breakurl" = tl."breakurl";
   deps."bullcntr" = tl."bullcntr";
   deps."bussproofs" = tl."bussproofs";
+  deps."bxcalc" = tl."bxcalc";
   deps."bxdpx-beamer" = tl."bxdpx-beamer";
   deps."bxdvidriver" = tl."bxdvidriver";
   deps."bxenclose" = tl."bxenclose";
@@ -5416,18 +5827,22 @@ tl: { # no indentation
   deps."changes" = tl."changes";
   deps."chappg" = tl."chappg";
   deps."chapterfolder" = tl."chapterfolder";
+  deps."cheatsheet" = tl."cheatsheet";
   deps."chet" = tl."chet";
   deps."chextras" = tl."chextras";
+  deps."childdoc" = tl."childdoc";
   deps."chkfloat" = tl."chkfloat";
   deps."chletter" = tl."chletter";
   deps."chngcntr" = tl."chngcntr";
   deps."chronology" = tl."chronology";
   deps."circ" = tl."circ";
   deps."classics" = tl."classics";
+  deps."classpack" = tl."classpack";
   deps."clefval" = tl."clefval";
   deps."cleveref" = tl."cleveref";
   deps."clipboard" = tl."clipboard";
   deps."clock" = tl."clock";
+  deps."cloze" = tl."cloze";
   deps."cmdstring" = tl."cmdstring";
   deps."cmdtrack" = tl."cmdtrack";
   deps."cmsd" = tl."cmsd";
@@ -5458,7 +5873,9 @@ tl: { # no indentation
   deps."continue" = tl."continue";
   deps."contour" = tl."contour";
   deps."contracard" = tl."contracard";
+  deps."conv-xkv" = tl."conv-xkv";
   deps."cooking" = tl."cooking";
+  deps."cooking-units" = tl."cooking-units";
   deps."cool" = tl."cool";
   deps."coollist" = tl."coollist";
   deps."coolstr" = tl."coolstr";
@@ -5475,9 +5892,12 @@ tl: { # no indentation
   deps."cprotect" = tl."cprotect";
   deps."crbox" = tl."crbox";
   deps."crossreference" = tl."crossreference";
+  deps."crossreftools" = tl."crossreftools";
   deps."csquotes" = tl."csquotes";
+  deps."css-colors" = tl."css-colors";
   deps."csvsimple" = tl."csvsimple";
   deps."cuisine" = tl."cuisine";
+  deps."currency" = tl."currency";
   deps."currfile" = tl."currfile";
   deps."currvita" = tl."currvita";
   deps."cutwin" = tl."cutwin";
@@ -5565,9 +5985,12 @@ tl: { # no indentation
   deps."dprogress" = tl."dprogress";
   deps."drac" = tl."drac";
   deps."draftcopy" = tl."draftcopy";
+  deps."draftfigure" = tl."draftfigure";
   deps."draftwatermark" = tl."draftwatermark";
   deps."dtk" = tl."dtk";
+  deps."dtxdescribe" = tl."dtxdescribe";
   deps."dtxgallery" = tl."dtxgallery";
+  deps."ducksay" = tl."ducksay";
   deps."dvdcoll" = tl."dvdcoll";
   deps."dynamicnumber" = tl."dynamicnumber";
   deps."dynblocks" = tl."dynblocks";
@@ -5575,6 +5998,7 @@ tl: { # no indentation
   deps."easy" = tl."easy";
   deps."easy-todo" = tl."easy-todo";
   deps."easyfig" = tl."easyfig";
+  deps."easyformat" = tl."easyformat";
   deps."easylist" = tl."easylist";
   deps."easyreview" = tl."easyreview";
   deps."ebezier" = tl."ebezier";
@@ -5611,6 +6035,7 @@ tl: { # no indentation
   deps."epiolmec" = tl."epiolmec";
   deps."eqell" = tl."eqell";
   deps."eqlist" = tl."eqlist";
+  deps."eqnalign" = tl."eqnalign";
   deps."eqname" = tl."eqname";
   deps."eqparbox" = tl."eqparbox";
   deps."errata" = tl."errata";
@@ -5621,8 +6046,8 @@ tl: { # no indentation
   deps."etaremune" = tl."etaremune";
   deps."etextools" = tl."etextools";
   deps."etoc" = tl."etoc";
-  deps."etoolbox" = tl."etoolbox";
   deps."eukdate" = tl."eukdate";
+  deps."eulerpx" = tl."eulerpx";
   deps."europasscv" = tl."europasscv";
   deps."europecv" = tl."europecv";
   deps."everyhook" = tl."everyhook";
@@ -5651,13 +6076,15 @@ tl: { # no indentation
   deps."fancytabs" = tl."fancytabs";
   deps."fancytooltips" = tl."fancytooltips";
   deps."fcolumn" = tl."fcolumn";
+  deps."fetchcls" = tl."fetchcls";
   deps."ffslides" = tl."ffslides";
+  deps."fgruler" = tl."fgruler";
   deps."fibeamer" = tl."fibeamer";
   deps."fifo-stack" = tl."fifo-stack";
   deps."figsize" = tl."figsize";
   deps."filecontents" = tl."filecontents";
+  deps."filecontentsdef" = tl."filecontentsdef";
   deps."filedate" = tl."filedate";
-  deps."filehook" = tl."filehook";
   deps."fileinfo" = tl."fileinfo";
   deps."filemod" = tl."filemod";
   deps."fink" = tl."fink";
@@ -5691,6 +6118,7 @@ tl: { # no indentation
   deps."fontaxes" = tl."fontaxes";
   deps."fonttable" = tl."fonttable";
   deps."footmisc" = tl."footmisc";
+  deps."footmisx" = tl."footmisx";
   deps."footnotebackref" = tl."footnotebackref";
   deps."footnotehyper" = tl."footnotehyper";
   deps."footnoterange" = tl."footnoterange";
@@ -5699,6 +6127,7 @@ tl: { # no indentation
   deps."foreign" = tl."foreign";
   deps."forloop" = tl."forloop";
   deps."formlett" = tl."formlett";
+  deps."forms16be" = tl."forms16be";
   deps."formular" = tl."formular";
   deps."fragments" = tl."fragments";
   deps."frame" = tl."frame";
@@ -5713,6 +6142,7 @@ tl: { # no indentation
   deps."fundus-calligra" = tl."fundus-calligra";
   deps."fundus-cyr" = tl."fundus-cyr";
   deps."fundus-sueterlin" = tl."fundus-sueterlin";
+  deps."fvextra" = tl."fvextra";
   deps."fwlw" = tl."fwlw";
   deps."g-brief" = tl."g-brief";
   deps."gauss" = tl."gauss";
@@ -5720,10 +6150,10 @@ tl: { # no indentation
   deps."gcite" = tl."gcite";
   deps."gender" = tl."gender";
   deps."genmpage" = tl."genmpage";
-  deps."getargs" = tl."getargs";
   deps."getfiledate" = tl."getfiledate";
   deps."getitems" = tl."getitems";
   deps."ginpenc" = tl."ginpenc";
+  deps."gitfile-info" = tl."gitfile-info";
   deps."gitinfo" = tl."gitinfo";
   deps."gitinfo2" = tl."gitinfo2";
   deps."gitlog" = tl."gitlog";
@@ -5750,11 +6180,14 @@ tl: { # no indentation
   deps."graphbox" = tl."graphbox";
   deps."graphicx-psmin" = tl."graphicx-psmin";
   deps."graphicxbox" = tl."graphicxbox";
+  deps."grayhints" = tl."grayhints";
   deps."grfpaste" = tl."grfpaste";
   deps."grid" = tl."grid";
   deps."grid-system" = tl."grid-system";
   deps."gridset" = tl."gridset";
   deps."guitlogo" = tl."guitlogo";
+  deps."halloweenmath" = tl."halloweenmath";
+  deps."hackthefootline" = tl."hackthefootline";
   deps."handout" = tl."handout";
   deps."hang" = tl."hang";
   deps."hanging" = tl."hanging";
@@ -5797,11 +6230,13 @@ tl: { # no indentation
   deps."interfaces" = tl."interfaces";
   deps."inversepath" = tl."inversepath";
   deps."invoice" = tl."invoice";
+  deps."invoice2" = tl."invoice2";
   deps."iso" = tl."iso";
   deps."iso10303" = tl."iso10303";
   deps."isodate" = tl."isodate";
   deps."isodoc" = tl."isodoc";
   deps."isonums" = tl."isonums";
+  deps."isopt" = tl."isopt";
   deps."isorot" = tl."isorot";
   deps."isotope" = tl."isotope";
   deps."issuulinks" = tl."issuulinks";
@@ -5813,14 +6248,17 @@ tl: { # no indentation
   deps."kantlipsum" = tl."kantlipsum";
   deps."kerntest" = tl."kerntest";
   deps."keycommand" = tl."keycommand";
+  deps."keyfloat" = tl."keyfloat";
   deps."keyreader" = tl."keyreader";
   deps."keystroke" = tl."keystroke";
   deps."keyval2e" = tl."keyval2e";
   deps."keyvaltable" = tl."keyvaltable";
   deps."kix" = tl."kix";
+  deps."knowledge" = tl."knowledge";
   deps."koma-moderncvclassic" = tl."koma-moderncvclassic";
   deps."koma-script-sfs" = tl."koma-script-sfs";
   deps."komacv" = tl."komacv";
+  deps."komacv-rg" = tl."komacv-rg";
   deps."ktv-texdata" = tl."ktv-texdata";
   deps."l3build" = tl."l3build";
   deps."labbook" = tl."labbook";
@@ -5829,6 +6267,7 @@ tl: { # no indentation
   deps."lastpage" = tl."lastpage";
   deps."latex-tds" = tl."latex-tds";
   deps."latexdemo" = tl."latexdemo";
+  deps."latexgit" = tl."latexgit";
   deps."layouts" = tl."layouts";
   deps."lazylist" = tl."lazylist";
   deps."lcd" = tl."lcd";
@@ -5836,6 +6275,7 @@ tl: { # no indentation
   deps."leading" = tl."leading";
   deps."leaflet" = tl."leaflet";
   deps."leftidx" = tl."leftidx";
+  deps."leipzig" = tl."leipzig";
   deps."lengthconvert" = tl."lengthconvert";
   deps."lettre" = tl."lettre";
   deps."lettrine" = tl."lettrine";
@@ -5872,6 +6312,8 @@ tl: { # no indentation
   deps."ltxkeys" = tl."ltxkeys";
   deps."ltxnew" = tl."ltxnew";
   deps."ltxtools" = tl."ltxtools";
+  deps."lua-check-hyphen" = tl."lua-check-hyphen";
+  deps."luatodonotes" = tl."luatodonotes";
   deps."macroswap" = tl."macroswap";
   deps."magaz" = tl."magaz";
   deps."mailing" = tl."mailing";
@@ -5887,6 +6329,7 @@ tl: { # no indentation
   deps."mandi" = tl."mandi";
   deps."manfnt" = tl."manfnt";
   deps."manuscript" = tl."manuscript";
+  deps."marginfit" = tl."marginfit";
   deps."marginfix" = tl."marginfix";
   deps."marginnote" = tl."marginnote";
   deps."markdown" = tl."markdown";
@@ -5897,6 +6340,7 @@ tl: { # no indentation
   deps."mbenotes" = tl."mbenotes";
   deps."mcaption" = tl."mcaption";
   deps."mceinleger" = tl."mceinleger";
+  deps."mcexam" = tl."mcexam";
   deps."mcite" = tl."mcite";
   deps."mciteplus" = tl."mciteplus";
   deps."mdframed" = tl."mdframed";
@@ -5905,6 +6349,7 @@ tl: { # no indentation
   deps."meetingmins" = tl."meetingmins";
   deps."memexsupp" = tl."memexsupp";
   deps."memory" = tl."memory";
+  deps."mensa-tex" = tl."mensa-tex";
   deps."menu" = tl."menu";
   deps."menukeys" = tl."menukeys";
   deps."method" = tl."method";
@@ -5913,6 +6358,7 @@ tl: { # no indentation
   deps."mftinc" = tl."mftinc";
   deps."midpage" = tl."midpage";
   deps."minibox" = tl."minibox";
+  deps."minidocument" = tl."minidocument";
   deps."minifp" = tl."minifp";
   deps."minipage-marginpar" = tl."minipage-marginpar";
   deps."minitoc" = tl."minitoc";
@@ -5927,6 +6373,7 @@ tl: { # no indentation
   deps."moderntimeline" = tl."moderntimeline";
   deps."modref" = tl."modref";
   deps."modroman" = tl."modroman";
+  deps."modular" = tl."modular";
   deps."monofill" = tl."monofill";
   deps."moodle" = tl."moodle";
   deps."moreenum" = tl."moreenum";
@@ -5937,6 +6384,7 @@ tl: { # no indentation
   deps."morewrites" = tl."morewrites";
   deps."movie15" = tl."movie15";
   deps."mparhack" = tl."mparhack";
+  deps."mpostinl" = tl."mpostinl";
   deps."msc" = tl."msc";
   deps."msg" = tl."msg";
   deps."mslapa" = tl."mslapa";
@@ -5948,6 +6396,7 @@ tl: { # no indentation
   deps."multidef" = tl."multidef";
   deps."multienv" = tl."multienv";
   deps."multiexpand" = tl."multiexpand";
+  deps."multilang" = tl."multilang";
   deps."multirow" = tl."multirow";
   deps."mversion" = tl."mversion";
   deps."mwe" = tl."mwe";
@@ -5985,6 +6434,8 @@ tl: { # no indentation
   deps."nopageno" = tl."nopageno";
   deps."normalcolor" = tl."normalcolor";
   deps."notes" = tl."notes";
+  deps."notespages" = tl."notespages";
+  deps."notestex" = tl."notestex";
   deps."notoccite" = tl."notoccite";
   deps."nowidow" = tl."nowidow";
   deps."nox" = tl."nox";
@@ -5992,6 +6443,7 @@ tl: { # no indentation
   deps."numberedblock" = tl."numberedblock";
   deps."numname" = tl."numname";
   deps."numprint" = tl."numprint";
+  deps."numspell" = tl."numspell";
   deps."ocg-p" = tl."ocg-p";
   deps."ocgx" = tl."ocgx";
   deps."ocgx2" = tl."ocgx2";
@@ -6006,6 +6458,7 @@ tl: { # no indentation
   deps."outline" = tl."outline";
   deps."outliner" = tl."outliner";
   deps."outlines" = tl."outlines";
+  deps."overlays" = tl."overlays";
   deps."overpic" = tl."overpic";
   deps."pagecolor" = tl."pagecolor";
   deps."pagecont" = tl."pagecont";
@@ -6037,6 +6490,7 @@ tl: { # no indentation
   deps."pdfcprot" = tl."pdfcprot";
   deps."pdfmarginpar" = tl."pdfmarginpar";
   deps."pdfpagediff" = tl."pdfpagediff";
+  deps."pdfreview" = tl."pdfreview";
   deps."pdfscreen" = tl."pdfscreen";
   deps."pdfslide" = tl."pdfslide";
   deps."pdfsync" = tl."pdfsync";
@@ -6046,7 +6500,15 @@ tl: { # no indentation
   deps."perltex" = tl."perltex";
   deps."permute" = tl."permute";
   deps."petiteannonce" = tl."petiteannonce";
+  deps."phffullpagefigure" = tl."phffullpagefigure";
+  deps."phfnote" = tl."phfnote";
+  deps."phfparen" = tl."phfparen";
+  deps."phfqit" = tl."phfqit";
+  deps."phfquotetext" = tl."phfquotetext";
+  deps."phfsvnwatermark" = tl."phfsvnwatermark";
+  deps."phfthm" = tl."phfthm";
   deps."philex" = tl."philex";
+  deps."phonenumbers" = tl."phonenumbers";
   deps."photo" = tl."photo";
   deps."piff" = tl."piff";
   deps."pkgloader" = tl."pkgloader";
@@ -6077,11 +6539,13 @@ tl: { # no indentation
   deps."psfragx" = tl."psfragx";
   deps."pst-pdf" = tl."pst-pdf";
   deps."pstool" = tl."pstool";
+  deps."pstring" = tl."pstring";
   deps."pxgreeks" = tl."pxgreeks";
   deps."python" = tl."python";
   deps."qcm" = tl."qcm";
   deps."qstest" = tl."qstest";
   deps."qsymbols" = tl."qsymbols";
+  deps."quicktype" = tl."quicktype";
   deps."quotchap" = tl."quotchap";
   deps."quoting" = tl."quoting";
   deps."quotmark" = tl."quotmark";
@@ -6142,10 +6606,12 @@ tl: { # no indentation
   deps."seealso" = tl."seealso";
   deps."selectp" = tl."selectp";
   deps."semantic" = tl."semantic";
+  deps."semantic-markup" = tl."semantic-markup";
   deps."semioneside" = tl."semioneside";
   deps."semproc" = tl."semproc";
   deps."sepfootnotes" = tl."sepfootnotes";
   deps."seqsplit" = tl."seqsplit";
+  deps."sesstime" = tl."sesstime";
   deps."sf298" = tl."sf298";
   deps."sffms" = tl."sffms";
   deps."sfmath" = tl."sfmath";
@@ -6160,6 +6626,7 @@ tl: { # no indentation
   deps."showcharinbox" = tl."showcharinbox";
   deps."showdim" = tl."showdim";
   deps."showexpl" = tl."showexpl";
+  deps."showhyphens" = tl."showhyphens";
   deps."showlabels" = tl."showlabels";
   deps."sidecap" = tl."sidecap";
   deps."sidenotes" = tl."sidenotes";
@@ -6179,6 +6646,7 @@ tl: { # no indentation
   deps."snapshot" = tl."snapshot";
   deps."snotez" = tl."snotez";
   deps."soul" = tl."soul";
+  deps."spark-otf" = tl."spark-otf";
   deps."sparklines" = tl."sparklines";
   deps."sphack" = tl."sphack";
   deps."splitindex" = tl."splitindex";
@@ -6202,6 +6670,7 @@ tl: { # no indentation
   deps."stringstrings" = tl."stringstrings";
   deps."sttools" = tl."sttools";
   deps."stubs" = tl."stubs";
+  deps."studenthandouts" = tl."studenthandouts";
   deps."subdepth" = tl."subdepth";
   deps."subeqn" = tl."subeqn";
   deps."subeqnarray" = tl."subeqnarray";
@@ -6249,6 +6718,7 @@ tl: { # no indentation
   deps."termcal" = tl."termcal";
   deps."termlist" = tl."termlist";
   deps."testhyphens" = tl."testhyphens";
+  deps."testidx" = tl."testidx";
   deps."tex-label" = tl."tex-label";
   deps."texlogos" = tl."texlogos";
   deps."texmate" = tl."texmate";
@@ -6257,7 +6727,6 @@ tl: { # no indentation
   deps."texshade" = tl."texshade";
   deps."texvc" = tl."texvc";
   deps."textfit" = tl."textfit";
-  deps."textgreek" = tl."textgreek";
   deps."textmerg" = tl."textmerg";
   deps."textpos" = tl."textpos";
   deps."theoremref" = tl."theoremref";
@@ -6277,6 +6746,7 @@ tl: { # no indentation
   deps."titlesec" = tl."titlesec";
   deps."titling" = tl."titling";
   deps."tocbibind" = tl."tocbibind";
+  deps."tocdata" = tl."tocdata";
   deps."tocloft" = tl."tocloft";
   deps."tocvsec2" = tl."tocvsec2";
   deps."todo" = tl."todo";
@@ -6300,6 +6770,7 @@ tl: { # no indentation
   deps."type1cm" = tl."type1cm";
   deps."typed-checklist" = tl."typed-checklist";
   deps."typeface" = tl."typeface";
+  deps."typoaid" = tl."typoaid";
   deps."typogrid" = tl."typogrid";
   deps."uassign" = tl."uassign";
   deps."ucs" = tl."ucs";
@@ -6314,7 +6785,9 @@ tl: { # no indentation
   deps."upquote" = tl."upquote";
   deps."uri" = tl."uri";
   deps."ushort" = tl."ushort";
+  deps."uspace" = tl."uspace";
   deps."uwmslide" = tl."uwmslide";
+  deps."variablelm" = tl."variablelm";
   deps."varindex" = tl."varindex";
   deps."varsfromjobname" = tl."varsfromjobname";
   deps."varwidth" = tl."varwidth";
@@ -6335,6 +6808,7 @@ tl: { # no indentation
   deps."vpe" = tl."vpe";
   deps."vruler" = tl."vruler";
   deps."vwcol" = tl."vwcol";
+  deps."wallcalendar" = tl."wallcalendar";
   deps."wallpaper" = tl."wallpaper";
   deps."warning" = tl."warning";
   deps."warpcol" = tl."warpcol";
@@ -6345,9 +6819,11 @@ tl: { # no indentation
   deps."wordcount" = tl."wordcount";
   deps."wordlike" = tl."wordlike";
   deps."wrapfig" = tl."wrapfig";
+  deps."wtref" = tl."wtref";
   deps."xargs" = tl."xargs";
   deps."xassoccnt" = tl."xassoccnt";
   deps."xcntperchap" = tl."xcntperchap";
+  deps."xcolor-material" = tl."xcolor-material";
   deps."xcolor-solarized" = tl."xcolor-solarized";
   deps."xcomment" = tl."xcomment";
   deps."xdoc" = tl."xdoc";
@@ -6356,6 +6832,7 @@ tl: { # no indentation
   deps."xhfill" = tl."xhfill";
   deps."xifthen" = tl."xifthen";
   deps."xint" = tl."xint";
+  deps."xltabular" = tl."xltabular";
   deps."xmpincl" = tl."xmpincl";
   deps."xnewcommand" = tl."xnewcommand";
   deps."xoptarg" = tl."xoptarg";
@@ -6364,15 +6841,18 @@ tl: { # no indentation
   deps."xprintlen" = tl."xprintlen";
   deps."xpunctuate" = tl."xpunctuate";
   deps."xsavebox" = tl."xsavebox";
+  deps."xsim" = tl."xsim";
   deps."xstring" = tl."xstring";
   deps."xtab" = tl."xtab";
   deps."xwatermark" = tl."xwatermark";
   deps."xytree" = tl."xytree";
   deps."yafoot" = tl."yafoot";
+  deps."yaletter" = tl."yaletter";
   deps."yagusylo" = tl."yagusylo";
   deps."ycbook" = tl."ycbook";
   deps."ydoc" = tl."ydoc";
   deps."yplan" = tl."yplan";
+  deps."zebra-goodies" = tl."zebra-goodies";
   deps."zed-csp" = tl."zed-csp";
   deps."ziffer" = tl."ziffer";
   deps."zwgetfdate" = tl."zwgetfdate";
@@ -6394,21 +6874,26 @@ tl: { # no indentation
   deps."eso-pic" = tl."eso-pic";
   deps."euenc" = tl."euenc";
   deps."euler" = tl."euler";
+  deps."etoolbox" = tl."etoolbox";
   deps."extsizes" = tl."extsizes";
   deps."fancybox" = tl."fancybox";
   deps."fancyref" = tl."fancyref";
   deps."fancyvrb" = tl."fancyvrb";
+  deps."filehook" = tl."filehook";
   deps."float" = tl."float";
   deps."fontspec" = tl."fontspec";
   deps."fp" = tl."fp";
   deps."index" = tl."index";
   deps."jknapltx" = tl."jknapltx";
   deps."koma-script" = tl."koma-script";
+  deps."latexbug" = tl."latexbug";
+  deps."l3experimental" = tl."l3experimental";
   deps."l3kernel" = tl."l3kernel";
   deps."l3packages" = tl."l3packages";
-  deps."l3experimental" = tl."l3experimental";
   deps."lineno" = tl."lineno";
   deps."listings" = tl."listings";
+  deps."lwarp" = tl."lwarp";
+  deps."mathspec" = tl."mathspec";
   deps."mathtools" = tl."mathtools";
   deps."mdwtools" = tl."mdwtools";
   deps."memoir" = tl."memoir";
@@ -6418,6 +6903,7 @@ tl: { # no indentation
   deps."ntgclass" = tl."ntgclass";
   deps."parskip" = tl."parskip";
   deps."pdfpages" = tl."pdfpages";
+  deps."polyglossia" = tl."polyglossia";
   deps."powerdot" = tl."powerdot";
   deps."psfrag" = tl."psfrag";
   deps."rcs" = tl."rcs";
@@ -6430,9 +6916,13 @@ tl: { # no indentation
   deps."textcase" = tl."textcase";
   deps."thumbpdf" = tl."thumbpdf";
   deps."typehtml" = tl."typehtml";
+  deps."ucharcat" = tl."ucharcat";
   deps."underscore" = tl."underscore";
+  deps."unicode-math" = tl."unicode-math";
   deps."xcolor" = tl."xcolor";
   deps."xkeyval" = tl."xkeyval";
+  deps."xltxtra" = tl."xltxtra";
+  deps."xunicode" = tl."xunicode";
   sha512.run = "";
 };
 "collection-luatex" = {
@@ -6440,16 +6930,16 @@ tl: { # no indentation
   deps."collection-basic" = tl."collection-basic";
   deps."checkcites" = tl."checkcites";
   deps."chickenize" = tl."chickenize";
-  deps."cloze" = tl."cloze";
+  deps."combofont" = tl."combofont";
+  deps."cstypo" = tl."cstypo";
   deps."ctablestack" = tl."ctablestack";
   deps."enigma" = tl."enigma";
+  deps."fontloader-luaotfload" = tl."fontloader-luaotfload";
   deps."interpreter" = tl."interpreter";
-  deps."lua-check-hyphen" = tl."lua-check-hyphen";
   deps."lua-visual-debug" = tl."lua-visual-debug";
   deps."lua2dox" = tl."lua2dox";
-  deps."luabibentry" = tl."luabibentry";
-  deps."luabidi" = tl."luabidi";
   deps."luacode" = tl."luacode";
+  deps."luahyphenrules" = tl."luahyphenrules";
   deps."luaindex" = tl."luaindex";
   deps."luainputenc" = tl."luainputenc";
   deps."luaintro" = tl."luaintro";
@@ -6458,91 +6948,184 @@ tl: { # no indentation
   deps."lualibs" = tl."lualibs";
   deps."luamplib" = tl."luamplib";
   deps."luaotfload" = tl."luaotfload";
-  deps."luasseq" = tl."luasseq";
-  deps."luatex-def" = tl."luatex-def";
+  deps."luapackageloader" = tl."luapackageloader";
   deps."luatex85" = tl."luatex85";
   deps."luatexbase" = tl."luatexbase";
   deps."luatexko" = tl."luatexko";
   deps."luatextra" = tl."luatextra";
-  deps."luatodonotes" = tl."luatodonotes";
   deps."luaxml" = tl."luaxml";
+  deps."nodetree" = tl."nodetree";
   deps."odsfile" = tl."odsfile";
   deps."placeat" = tl."placeat";
   deps."selnolig" = tl."selnolig";
-  deps."showhyphens" = tl."showhyphens";
   deps."spelling" = tl."spelling";
-  deps."ucharcat" = tl."ucharcat";
   sha512.run = "";
 };
-"collection-mathextra" = {
+"collection-mathscience" = {
   stripPrefix = 0;
   deps."collection-fontsrecommended" = tl."collection-fontsrecommended";
   deps."collection-latex" = tl."collection-latex";
   deps."12many" = tl."12many";
+  deps."SIstyle" = tl."SIstyle";
+  deps."SIunits" = tl."SIunits";
+  deps."alg" = tl."alg";
+  deps."algobox" = tl."algobox";
+  deps."algorithm2e" = tl."algorithm2e";
+  deps."algorithmicx" = tl."algorithmicx";
+  deps."algorithms" = tl."algorithms";
   deps."amstex" = tl."amstex";
+  deps."apxproof" = tl."apxproof";
+  deps."autobreak" = tl."autobreak";
+  deps."axodraw2" = tl."axodraw2";
   deps."backnaur" = tl."backnaur";
   deps."begriff" = tl."begriff";
   deps."binomexp" = tl."binomexp";
+  deps."biocon" = tl."biocon";
+  deps."bitpattern" = tl."bitpattern";
+  deps."bohr" = tl."bohr";
   deps."boldtensors" = tl."boldtensors";
   deps."bosisio" = tl."bosisio";
+  deps."bpchem" = tl."bpchem";
   deps."bropd" = tl."bropd";
+  deps."bytefield" = tl."bytefield";
   deps."calculation" = tl."calculation";
   deps."ccfonts" = tl."ccfonts";
+  deps."chemarrow" = tl."chemarrow";
+  deps."chemcompounds" = tl."chemcompounds";
+  deps."chemcono" = tl."chemcono";
+  deps."chemexec" = tl."chemexec";
+  deps."chemformula" = tl."chemformula";
+  deps."chemgreek" = tl."chemgreek";
+  deps."chemmacros" = tl."chemmacros";
+  deps."chemnum" = tl."chemnum";
+  deps."chemschemex" = tl."chemschemex";
+  deps."chemstyle" = tl."chemstyle";
+  deps."clrscode" = tl."clrscode";
+  deps."clrscode3e" = tl."clrscode3e";
   deps."commath" = tl."commath";
+  deps."complexity" = tl."complexity";
+  deps."computational-complexity" = tl."computational-complexity";
   deps."concmath" = tl."concmath";
   deps."concrete" = tl."concrete";
   deps."conteq" = tl."conteq";
+  deps."correctmathalign" = tl."correctmathalign";
+  deps."cryptocode" = tl."cryptocode";
   deps."delim" = tl."delim";
+  deps."delimset" = tl."delimset";
   deps."delimseasy" = tl."delimseasy";
+  deps."diffcoeff" = tl."diffcoeff";
+  deps."digiconfigs" = tl."digiconfigs";
+  deps."dijkstra" = tl."dijkstra";
   deps."drawmatrix" = tl."drawmatrix";
+  deps."drawstack" = tl."drawstack";
+  deps."dyntree" = tl."dyntree";
   deps."ebproof" = tl."ebproof";
   deps."econometrics" = tl."econometrics";
+  deps."eltex" = tl."eltex";
+  deps."emf" = tl."emf";
+  deps."endiagram" = tl."endiagram";
+  deps."engtlc" = tl."engtlc";
   deps."eqnarray" = tl."eqnarray";
+  deps."eqnnumwarn" = tl."eqnnumwarn";
   deps."extarrows" = tl."extarrows";
   deps."extpfeil" = tl."extpfeil";
   deps."faktor" = tl."faktor";
+  deps."fnspe" = tl."fnspe";
+  deps."fouridx" = tl."fouridx";
+  deps."functan" = tl."functan";
+  deps."galois" = tl."galois";
+  deps."gastex" = tl."gastex";
+  deps."gene-logic" = tl."gene-logic";
+  deps."ghsystem" = tl."ghsystem";
+  deps."gotoh" = tl."gotoh";
   deps."grundgesetze" = tl."grundgesetze";
+  deps."gu" = tl."gu";
+  deps."hep" = tl."hep";
+  deps."hepnames" = tl."hepnames";
+  deps."hepparticles" = tl."hepparticles";
+  deps."hepthesis" = tl."hepthesis";
+  deps."hepunits" = tl."hepunits";
   deps."interval" = tl."interval";
   deps."ionumbers" = tl."ionumbers";
   deps."isomath" = tl."isomath";
+  deps."karnaugh" = tl."karnaugh";
+  deps."karnaugh-map" = tl."karnaugh-map";
+  deps."karnaughmap" = tl."karnaughmap";
   deps."logicproof" = tl."logicproof";
+  deps."longdivision" = tl."longdivision";
   deps."lpform" = tl."lpform";
   deps."lplfitch" = tl."lplfitch";
+  deps."lstbayes" = tl."lstbayes";
   deps."mathcomp" = tl."mathcomp";
   deps."mathpartir" = tl."mathpartir";
+  deps."mathpunctspace" = tl."mathpunctspace";
+  deps."matlab-prettifier" = tl."matlab-prettifier";
   deps."mattens" = tl."mattens";
+  deps."mgltex" = tl."mgltex";
+  deps."mhchem" = tl."mhchem";
   deps."mhequ" = tl."mhequ";
+  deps."miller" = tl."miller";
   deps."multiobjective" = tl."multiobjective";
+  deps."mychemistry" = tl."mychemistry";
   deps."natded" = tl."natded";
   deps."nath" = tl."nath";
+  deps."nuc" = tl."nuc";
+  deps."nucleardata" = tl."nucleardata";
+  deps."objectz" = tl."objectz";
+  deps."oplotsymbl" = tl."oplotsymbl";
   deps."ot-tableau" = tl."ot-tableau";
   deps."oubraces" = tl."oubraces";
   deps."perfectcut" = tl."perfectcut";
+  deps."physics" = tl."physics";
   deps."prftree" = tl."prftree";
-  deps."prooftrees" = tl."prooftrees";
   deps."proba" = tl."proba";
+  deps."prooftrees" = tl."prooftrees";
+  deps."pseudocode" = tl."pseudocode";
+  deps."pygmentex" = tl."pygmentex";
+  deps."pythonhighlight" = tl."pythonhighlight";
   deps."rec-thy" = tl."rec-thy";
+  deps."revquantum" = tl."revquantum";
   deps."ribbonproofs" = tl."ribbonproofs";
   deps."rmathbr" = tl."rmathbr";
+  deps."sasnrdisplay" = tl."sasnrdisplay";
+  deps."sciposter" = tl."sciposter";
+  deps."sclang-prettifier" = tl."sclang-prettifier";
+  deps."scratchx" = tl."scratchx";
   deps."sesamanuel" = tl."sesamanuel";
+  deps."sfg" = tl."sfg";
   deps."shuffle" = tl."shuffle";
+  deps."simpler-wick" = tl."simpler-wick";
+  deps."simplewick" = tl."simplewick";
+  deps."siunitx" = tl."siunitx";
   deps."skmath" = tl."skmath";
+  deps."spalign" = tl."spalign";
+  deps."stanli" = tl."stanli";
   deps."statex" = tl."statex";
   deps."statex2" = tl."statex2";
+  deps."steinmetz" = tl."steinmetz";
   deps."stmaryrd" = tl."stmaryrd";
+  deps."struktex" = tl."struktex";
+  deps."substances" = tl."substances";
   deps."subsupscripts" = tl."subsupscripts";
   deps."susy" = tl."susy";
   deps."syllogism" = tl."syllogism";
   deps."sympytexpackage" = tl."sympytexpackage";
   deps."synproof" = tl."synproof";
+  deps."t-angles" = tl."t-angles";
   deps."tablor" = tl."tablor";
   deps."tensor" = tl."tensor";
   deps."tex-ewd" = tl."tex-ewd";
+  deps."textgreek" = tl."textgreek";
+  deps."textopo" = tl."textopo";
   deps."thmbox" = tl."thmbox";
   deps."turnstile" = tl."turnstile";
-  deps."unicode-math" = tl."unicode-math";
+  deps."ulqda" = tl."ulqda";
+  deps."unitsdef" = tl."unitsdef";
   deps."venn" = tl."venn";
+  deps."witharrows" = tl."witharrows";
+  deps."xymtex" = tl."xymtex";
   deps."yhmath" = tl."yhmath";
+  deps."youngtab" = tl."youngtab";
   deps."ytableau" = tl."ytableau";
   sha512.run = "";
 };
@@ -6580,6 +7163,7 @@ tl: { # no indentation
   deps."mpattern" = tl."mpattern";
   deps."mpcolornames" = tl."mpcolornames";
   deps."mpgraphics" = tl."mpgraphics";
+  deps."mptrees" = tl."mptrees";
   deps."piechartmp" = tl."piechartmp";
   deps."repere" = tl."repere";
   deps."roex" = tl."roex";
@@ -6608,10 +7192,12 @@ tl: { # no indentation
   deps."leadsheets" = tl."leadsheets";
   deps."lilyglyphs" = tl."lilyglyphs";
   deps."m-tx" = tl."m-tx";
+  deps."musicography" = tl."musicography";
   deps."musixguit" = tl."musixguit";
   deps."musixtex" = tl."musixtex";
   deps."musixtex-fonts" = tl."musixtex-fonts";
   deps."musixtnt" = tl."musixtnt";
+  deps."octave" = tl."octave";
   deps."piano" = tl."piano";
   deps."pmx" = tl."pmx";
   deps."pmxchords" = tl."pmxchords";
@@ -6620,19 +7206,6 @@ tl: { # no indentation
   deps."xpiano" = tl."xpiano";
   sha512.run = "";
 };
-"collection-omega" = {
-  stripPrefix = 0;
-  deps."collection-basic" = tl."collection-basic";
-  deps."collection-latex" = tl."collection-latex";
-  deps."aleph" = tl."aleph";
-  deps."antomega" = tl."antomega";
-  deps."lambda" = tl."lambda";
-  deps."mxedruli" = tl."mxedruli";
-  deps."omega" = tl."omega";
-  deps."omegaware" = tl."omegaware";
-  deps."otibet" = tl."otibet";
-  sha512.run = "";
-};
 "collection-pictures" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
@@ -6642,6 +7215,8 @@ tl: { # no indentation
   deps."asypictureb" = tl."asypictureb";
   deps."autoarea" = tl."autoarea";
   deps."bardiag" = tl."bardiag";
+  deps."beamerswitch" = tl."beamerswitch";
+  deps."binarytree" = tl."binarytree";
   deps."blochsphere" = tl."blochsphere";
   deps."bloques" = tl."bloques";
   deps."blox" = tl."blox";
@@ -6651,6 +7226,7 @@ tl: { # no indentation
   deps."braids" = tl."braids";
   deps."bxeepic" = tl."bxeepic";
   deps."cachepic" = tl."cachepic";
+  deps."callouts" = tl."callouts";
   deps."celtic" = tl."celtic";
   deps."chemfig" = tl."chemfig";
   deps."combinedgraphics" = tl."combinedgraphics";
@@ -6666,8 +7242,11 @@ tl: { # no indentation
   deps."dratex" = tl."dratex";
   deps."drs" = tl."drs";
   deps."duotenzor" = tl."duotenzor";
+  deps."dynkin-diagrams" = tl."dynkin-diagrams";
+  deps."ecgdraw" = tl."ecgdraw";
   deps."eepic" = tl."eepic";
   deps."ellipse" = tl."ellipse";
+  deps."endofproofwd" = tl."endofproofwd";
   deps."epspdf" = tl."epspdf";
   deps."epspdfconversion" = tl."epspdfconversion";
   deps."esk" = tl."esk";
@@ -6683,17 +7262,23 @@ tl: { # no indentation
   deps."gradientframe" = tl."gradientframe";
   deps."grafcet" = tl."grafcet";
   deps."graphviz" = tl."graphviz";
+  deps."gtrlib-largetrees" = tl."gtrlib-largetrees";
   deps."harveyballs" = tl."harveyballs";
   deps."here" = tl."here";
   deps."hf-tikz" = tl."hf-tikz";
   deps."hobby" = tl."hobby";
   deps."hvfloat" = tl."hvfloat";
+  deps."istgame" = tl."istgame";
   deps."knitting" = tl."knitting";
   deps."knittingpattern" = tl."knittingpattern";
+  deps."ladder" = tl."ladder";
   deps."lapdf" = tl."lapdf";
   deps."latex-make" = tl."latex-make";
   deps."lpic" = tl."lpic";
   deps."lroundrect" = tl."lroundrect";
+  deps."luamesh" = tl."luamesh";
+  deps."luasseq" = tl."luasseq";
+  deps."maker" = tl."maker";
   deps."makeshape" = tl."makeshape";
   deps."mathspic" = tl."mathspic";
   deps."miniplot" = tl."miniplot";
@@ -6732,11 +7317,15 @@ tl: { # no indentation
   deps."rviewport" = tl."rviewport";
   deps."sa-tikz" = tl."sa-tikz";
   deps."schemabloc" = tl."schemabloc";
+  deps."scsnowman" = tl."scsnowman";
+  deps."scratch" = tl."scratch";
   deps."setdeck" = tl."setdeck";
   deps."signchart" = tl."signchart";
   deps."smartdiagram" = tl."smartdiagram";
   deps."spath3" = tl."spath3";
+  deps."spectralsequences" = tl."spectralsequences";
   deps."swimgraf" = tl."swimgraf";
+  deps."table-fct" = tl."table-fct";
   deps."texdraw" = tl."texdraw";
   deps."ticollege" = tl."ticollege";
   deps."tipfr" = tl."tipfr";
@@ -6747,15 +7336,21 @@ tl: { # no indentation
   deps."tikz-dimline" = tl."tikz-dimline";
   deps."tikz-feynman" = tl."tikz-feynman";
   deps."tikz-inet" = tl."tikz-inet";
+  deps."tikz-kalender" = tl."tikz-kalender";
   deps."tikz-opm" = tl."tikz-opm";
+  deps."tikz-optics" = tl."tikz-optics";
+  deps."tikz-page" = tl."tikz-page";
   deps."tikz-palattice" = tl."tikz-palattice";
   deps."tikz-qtree" = tl."tikz-qtree";
   deps."tikz-timing" = tl."tikz-timing";
+  deps."tikzcodeblocks" = tl."tikzcodeblocks";
+  deps."tikzducks" = tl."tikzducks";
   deps."tikzinclude" = tl."tikzinclude";
   deps."tikzmark" = tl."tikzmark";
   deps."tikzorbital" = tl."tikzorbital";
   deps."tikzpagenodes" = tl."tikzpagenodes";
   deps."tikzpfeile" = tl."tikzpfeile";
+  deps."tikzpeople" = tl."tikzpeople";
   deps."tikzposter" = tl."tikzposter";
   deps."tikzscale" = tl."tikzscale";
   deps."tikzsymbols" = tl."tikzsymbols";
@@ -6779,39 +7374,102 @@ tl: { # no indentation
   deps."xypic" = tl."xypic";
   sha512.run = "";
 };
-"collection-plainextra" = {
+"collection-plaingeneric" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
+  deps."abbr" = tl."abbr";
+  deps."abstyles" = tl."abstyles";
+  deps."apnum" = tl."apnum";
+  deps."autoaligne" = tl."autoaligne";
+  deps."barr" = tl."barr";
+  deps."bitelist" = tl."bitelist";
+  deps."borceux" = tl."borceux";
+  deps."c-pascal" = tl."c-pascal";
+  deps."catcodes" = tl."catcodes";
+  deps."chronosys" = tl."chronosys";
+  deps."colorsep" = tl."colorsep";
+  deps."dinat" = tl."dinat";
+  deps."dirtree" = tl."dirtree";
+  deps."docbytex" = tl."docbytex";
+  deps."dowith" = tl."dowith";
+  deps."eijkhout" = tl."eijkhout";
+  deps."encxvlna" = tl."encxvlna";
+  deps."epigram" = tl."epigram";
+  deps."epsf" = tl."epsf";
   deps."epsf-dvipdfmx" = tl."epsf-dvipdfmx";
+  deps."fenixpar" = tl."fenixpar";
   deps."figflow" = tl."figflow";
   deps."fixpdfmag" = tl."fixpdfmag";
+  deps."fltpoint" = tl."fltpoint";
+  deps."fntproof" = tl."fntproof";
   deps."font-change" = tl."font-change";
   deps."fontch" = tl."fontch";
+  deps."fontname" = tl."fontname";
+  deps."gates" = tl."gates";
+  deps."genmisc" = tl."genmisc";
   deps."getoptk" = tl."getoptk";
   deps."gfnotation" = tl."gfnotation";
+  deps."gobble" = tl."gobble";
   deps."graphics-pln" = tl."graphics-pln";
+  deps."gtl" = tl."gtl";
+  deps."hlist" = tl."hlist";
   deps."hyplain" = tl."hyplain";
+  deps."ifetex" = tl."ifetex";
+  deps."iftex" = tl."iftex";
+  deps."insbox" = tl."insbox";
   deps."js-misc" = tl."js-misc";
+  deps."kastrup" = tl."kastrup";
+  deps."lambda-lists" = tl."lambda-lists";
+  deps."langcode" = tl."langcode";
+  deps."lecturer" = tl."lecturer";
+  deps."librarian" = tl."librarian";
+  deps."listofitems" = tl."listofitems";
+  deps."mathdots" = tl."mathdots";
+  deps."metatex" = tl."metatex";
+  deps."midnight" = tl."midnight";
   deps."mkpattern" = tl."mkpattern";
+  deps."multido" = tl."multido";
+  deps."navigator" = tl."navigator";
   deps."newsletr" = tl."newsletr";
+  deps."ofs" = tl."ofs";
+  deps."olsak-misc" = tl."olsak-misc";
+  deps."path" = tl."path";
+  deps."pdf-trans" = tl."pdf-trans";
   deps."pitex" = tl."pitex";
   deps."placeins-plain" = tl."placeins-plain";
+  deps."plainpkg" = tl."plainpkg";
   deps."plipsum" = tl."plipsum";
   deps."plnfss" = tl."plnfss";
   deps."plstmary" = tl."plstmary";
   deps."present" = tl."present";
+  deps."randomlist" = tl."randomlist";
   deps."resumemac" = tl."resumemac";
+  deps."schemata" = tl."schemata";
+  deps."shade" = tl."shade";
+  deps."simplekv" = tl."simplekv";
+  deps."systeme" = tl."systeme";
+  deps."tabto-generic" = tl."tabto-generic";
+  deps."termmenu" = tl."termmenu";
+  deps."tex-ps" = tl."tex-ps";
+  deps."tex4ht" = tl."tex4ht";
+  deps."texapi" = tl."texapi";
   deps."texinfo" = tl."texinfo";
   deps."timetable" = tl."timetable";
+  deps."tracklang" = tl."tracklang";
   deps."treetex" = tl."treetex";
+  deps."trigonometry" = tl."trigonometry";
+  deps."ulem" = tl."ulem";
+  deps."upca" = tl."upca";
   deps."varisize" = tl."varisize";
   deps."xii" = tl."xii";
+  deps."xlop" = tl."xlop";
+  deps."yax" = tl."yax";
   sha512.run = "";
 };
 "collection-pstricks" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
-  deps."collection-genericrecommended" = tl."collection-genericrecommended";
+  deps."collection-plaingeneric" = tl."collection-plaingeneric";
   deps."auto-pst-pdf" = tl."auto-pst-pdf";
   deps."bclogo" = tl."bclogo";
   deps."dsptricks" = tl."dsptricks";
@@ -6824,6 +7482,7 @@ tl: { # no indentation
   deps."pst-3d" = tl."pst-3d";
   deps."pst-3dplot" = tl."pst-3dplot";
   deps."pst-abspos" = tl."pst-abspos";
+  deps."pst-arrow" = tl."pst-arrow";
   deps."pst-am" = tl."pst-am";
   deps."pst-asr" = tl."pst-asr";
   deps."pst-bar" = tl."pst-bar";
@@ -6850,6 +7509,7 @@ tl: { # no indentation
   deps."pst-func" = tl."pst-func";
   deps."pst-gantt" = tl."pst-gantt";
   deps."pst-geo" = tl."pst-geo";
+  deps."pst-geometrictools" = tl."pst-geometrictools";
   deps."pst-ghsb" = tl."pst-ghsb";
   deps."pst-gr3d" = tl."pst-gr3d";
   deps."pst-grad" = tl."pst-grad";
@@ -6877,16 +7537,20 @@ tl: { # no indentation
   deps."pst-perspective" = tl."pst-perspective";
   deps."pst-platon" = tl."pst-platon";
   deps."pst-plot" = tl."pst-plot";
+  deps."pst-poker" = tl."pst-poker";
   deps."pst-poly" = tl."pst-poly";
   deps."pst-pulley" = tl."pst-pulley";
   deps."pst-qtree" = tl."pst-qtree";
+  deps."pst-rputover" = tl."pst-rputover";
   deps."pst-rubans" = tl."pst-rubans";
+  deps."pst-shell" = tl."pst-shell";
   deps."pst-sigsys" = tl."pst-sigsys";
   deps."pst-slpe" = tl."pst-slpe";
   deps."pst-solarsystem" = tl."pst-solarsystem";
   deps."pst-solides3d" = tl."pst-solides3d";
   deps."pst-soroban" = tl."pst-soroban";
   deps."pst-spectra" = tl."pst-spectra";
+  deps."pst-spinner" = tl."pst-spinner";
   deps."pst-spirograph" = tl."pst-spirograph";
   deps."pst-stru" = tl."pst-stru";
   deps."pst-support" = tl."pst-support";
@@ -6897,6 +7561,7 @@ tl: { # no indentation
   deps."pst-tvz" = tl."pst-tvz";
   deps."pst-uml" = tl."pst-uml";
   deps."pst-vectorian" = tl."pst-vectorian";
+  deps."pst-vehicle" = tl."pst-vehicle";
   deps."pst-vowel" = tl."pst-vowel";
   deps."pst-vue3d" = tl."pst-vue3d";
   deps."pst2pdf" = tl."pst2pdf";
@@ -6914,6 +7579,7 @@ tl: { # no indentation
   deps."IEEEconf" = tl."IEEEconf";
   deps."IEEEtran" = tl."IEEEtran";
   deps."aastex" = tl."aastex";
+  deps."abnt" = tl."abnt";
   deps."abntex2" = tl."abntex2";
   deps."acmart" = tl."acmart";
   deps."acmconf" = tl."acmconf";
@@ -6933,14 +7599,19 @@ tl: { # no indentation
   deps."articleingud" = tl."articleingud";
   deps."asaetr" = tl."asaetr";
   deps."ascelike" = tl."ascelike";
+  deps."aucklandthesis" = tl."aucklandthesis";
   deps."bangorcsthesis" = tl."bangorcsthesis";
+  deps."bangorexam" = tl."bangorexam";
   deps."beamer-FUBerlin" = tl."beamer-FUBerlin";
   deps."beamer-verona" = tl."beamer-verona";
+  deps."beilstein" = tl."beilstein";
   deps."bgteubner" = tl."bgteubner";
   deps."br-lex" = tl."br-lex";
   deps."brandeis-dissertation" = tl."brandeis-dissertation";
   deps."cascadilla" = tl."cascadilla";
+  deps."cesenaexam" = tl."cesenaexam";
   deps."chem-journal" = tl."chem-journal";
+  deps."cje" = tl."cje";
   deps."classicthesis" = tl."classicthesis";
   deps."cleanthesis" = tl."cleanthesis";
   deps."cmpj" = tl."cmpj";
@@ -6965,24 +7636,33 @@ tl: { # no indentation
   deps."gaceta" = tl."gaceta";
   deps."gatech-thesis" = tl."gatech-thesis";
   deps."gradstudentresume" = tl."gradstudentresume";
+  deps."grant" = tl."grant";
   deps."gsemthesis" = tl."gsemthesis";
   deps."gzt" = tl."gzt";
   deps."h2020proposal" = tl."h2020proposal";
   deps."har2nat" = tl."har2nat";
+  deps."hecthese" = tl."hecthese";
+  deps."hithesis" = tl."hithesis";
   deps."hobete" = tl."hobete";
   deps."hustthesis" = tl."hustthesis";
   deps."icsv" = tl."icsv";
   deps."ieeepes" = tl."ieeepes";
   deps."ijmart" = tl."ijmart";
+  deps."ijsra" = tl."ijsra";
   deps."imac" = tl."imac";
   deps."imtekda" = tl."imtekda";
+  deps."iscram" = tl."iscram";
   deps."jacow" = tl."jacow";
   deps."jmlr" = tl."jmlr";
   deps."jpsj" = tl."jpsj";
   deps."kdgdocs" = tl."kdgdocs";
   deps."kluwer" = tl."kluwer";
   deps."ksp-thesis" = tl."ksp-thesis";
+  deps."ku-template" = tl."ku-template";
   deps."langsci" = tl."langsci";
+  deps."limecv" = tl."limecv";
+  deps."lion-msc" = tl."lion-msc";
+  deps."lni" = tl."lni";
   deps."lps" = tl."lps";
   deps."matc3" = tl."matc3";
   deps."matc3mem" = tl."matc3mem";
@@ -6990,13 +7670,16 @@ tl: { # no indentation
   deps."mentis" = tl."mentis";
   deps."mnras" = tl."mnras";
   deps."msu-thesis" = tl."msu-thesis";
+  deps."mucproc" = tl."mucproc";
   deps."mugsthesis" = tl."mugsthesis";
   deps."musuos" = tl."musuos";
   deps."muthesis" = tl."muthesis";
   deps."mynsfc" = tl."mynsfc";
   deps."nature" = tl."nature";
+  deps."navydocs" = tl."navydocs";
   deps."nddiss" = tl."nddiss";
   deps."ndsu-thesis" = tl."ndsu-thesis";
+  deps."novel" = tl."novel";
   deps."nwejm" = tl."nwejm";
   deps."nih" = tl."nih";
   deps."nihbiosketch" = tl."nihbiosketch";
@@ -7017,6 +7700,7 @@ tl: { # no indentation
   deps."resumecls" = tl."resumecls";
   deps."revtex" = tl."revtex";
   deps."revtex4" = tl."revtex4";
+  deps."rutitlepage" = tl."rutitlepage";
   deps."ryethesis" = tl."ryethesis";
   deps."sageep" = tl."sageep";
   deps."sapthesis" = tl."sapthesis";
@@ -7051,6 +7735,7 @@ tl: { # no indentation
   deps."ucdavisthesis" = tl."ucdavisthesis";
   deps."ucthesis" = tl."ucthesis";
   deps."uestcthesis" = tl."uestcthesis";
+  deps."uhhassignment" = tl."uhhassignment";
   deps."uiucredborder" = tl."uiucredborder";
   deps."uiucthesis" = tl."uiucthesis";
   deps."ulthese" = tl."ulthese";
@@ -7059,6 +7744,7 @@ tl: { # no indentation
   deps."umich-thesis" = tl."umich-thesis";
   deps."unamth-template" = tl."unamth-template";
   deps."unamthesis" = tl."unamthesis";
+  deps."unitn-bimrep" = tl."unitn-bimrep";
   deps."unswcover" = tl."unswcover";
   deps."uothesis" = tl."uothesis";
   deps."urcls" = tl."urcls";
@@ -7075,84 +7761,6 @@ tl: { # no indentation
   deps."york-thesis" = tl."york-thesis";
   sha512.run = "";
 };
-"collection-science" = {
-  stripPrefix = 0;
-  deps."collection-latex" = tl."collection-latex";
-  deps."SIstyle" = tl."SIstyle";
-  deps."SIunits" = tl."SIunits";
-  deps."alg" = tl."alg";
-  deps."algorithm2e" = tl."algorithm2e";
-  deps."algorithmicx" = tl."algorithmicx";
-  deps."algorithms" = tl."algorithms";
-  deps."biocon" = tl."biocon";
-  deps."bitpattern" = tl."bitpattern";
-  deps."bohr" = tl."bohr";
-  deps."bpchem" = tl."bpchem";
-  deps."bytefield" = tl."bytefield";
-  deps."chemarrow" = tl."chemarrow";
-  deps."chemcompounds" = tl."chemcompounds";
-  deps."chemcono" = tl."chemcono";
-  deps."chemexec" = tl."chemexec";
-  deps."chemformula" = tl."chemformula";
-  deps."chemgreek" = tl."chemgreek";
-  deps."chemmacros" = tl."chemmacros";
-  deps."chemnum" = tl."chemnum";
-  deps."chemschemex" = tl."chemschemex";
-  deps."chemstyle" = tl."chemstyle";
-  deps."clrscode" = tl."clrscode";
-  deps."clrscode3e" = tl."clrscode3e";
-  deps."complexity" = tl."complexity";
-  deps."computational-complexity" = tl."computational-complexity";
-  deps."cryptocode" = tl."cryptocode";
-  deps."digiconfigs" = tl."digiconfigs";
-  deps."drawstack" = tl."drawstack";
-  deps."dyntree" = tl."dyntree";
-  deps."eltex" = tl."eltex";
-  deps."endiagram" = tl."endiagram";
-  deps."engtlc" = tl."engtlc";
-  deps."fouridx" = tl."fouridx";
-  deps."functan" = tl."functan";
-  deps."galois" = tl."galois";
-  deps."gastex" = tl."gastex";
-  deps."gene-logic" = tl."gene-logic";
-  deps."ghsystem" = tl."ghsystem";
-  deps."gu" = tl."gu";
-  deps."hep" = tl."hep";
-  deps."hepnames" = tl."hepnames";
-  deps."hepparticles" = tl."hepparticles";
-  deps."hepthesis" = tl."hepthesis";
-  deps."hepunits" = tl."hepunits";
-  deps."karnaugh" = tl."karnaugh";
-  deps."karnaughmap" = tl."karnaughmap";
-  deps."lstbayes" = tl."lstbayes";
-  deps."matlab-prettifier" = tl."matlab-prettifier";
-  deps."mhchem" = tl."mhchem";
-  deps."miller" = tl."miller";
-  deps."mychemistry" = tl."mychemistry";
-  deps."nuc" = tl."nuc";
-  deps."nucleardata" = tl."nucleardata";
-  deps."objectz" = tl."objectz";
-  deps."physics" = tl."physics";
-  deps."pseudocode" = tl."pseudocode";
-  deps."pygmentex" = tl."pygmentex";
-  deps."sasnrdisplay" = tl."sasnrdisplay";
-  deps."sciposter" = tl."sciposter";
-  deps."sclang-prettifier" = tl."sclang-prettifier";
-  deps."sfg" = tl."sfg";
-  deps."simpler-wick" = tl."simpler-wick";
-  deps."simplewick" = tl."simplewick";
-  deps."siunitx" = tl."siunitx";
-  deps."steinmetz" = tl."steinmetz";
-  deps."struktex" = tl."struktex";
-  deps."substances" = tl."substances";
-  deps."t-angles" = tl."t-angles";
-  deps."textopo" = tl."textopo";
-  deps."ulqda" = tl."ulqda";
-  deps."unitsdef" = tl."unitsdef";
-  deps."xymtex" = tl."xymtex";
-  deps."youngtab" = tl."youngtab";
-  sha512.run = "";
-};
 "collection-texworks" = {
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
@@ -7167,6 +7775,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."collection-basic" = tl."collection-basic";
   deps."arabxetex" = tl."arabxetex";
+  deps."awesomebox" = tl."awesomebox";
   deps."bidi-atbegshi" = tl."bidi-atbegshi";
   deps."bidicontour" = tl."bidicontour";
   deps."bidipagegrid" = tl."bidipagegrid";
@@ -7177,24 +7786,25 @@ tl: { # no indentation
   deps."fontbook" = tl."fontbook";
   deps."fontwrap" = tl."fontwrap";
   deps."interchar" = tl."interchar";
-  deps."mathspec" = tl."mathspec";
+  deps."na-position" = tl."na-position";
   deps."philokalia" = tl."philokalia";
-  deps."polyglossia" = tl."polyglossia";
   deps."ptext" = tl."ptext";
   deps."quran" = tl."quran";
   deps."realscripts" = tl."realscripts";
+  deps."simple-resume-cv" = tl."simple-resume-cv";
+  deps."simple-thesis-dissertation" = tl."simple-thesis-dissertation";
   deps."ucharclasses" = tl."ucharclasses";
+  deps."unicode-bidi" = tl."unicode-bidi";
   deps."unisugar" = tl."unisugar";
   deps."xebaposter" = tl."xebaposter";
+  deps."xechangebar" = tl."xechangebar";
   deps."xecjk" = tl."xecjk";
   deps."xecolor" = tl."xecolor";
   deps."xecyr" = tl."xecyr";
   deps."xeindex" = tl."xeindex";
-  deps."xepersian" = tl."xepersian";
   deps."xesearch" = tl."xesearch";
   deps."xespotcolor" = tl."xespotcolor";
   deps."xetex" = tl."xetex";
-  deps."xetex-def" = tl."xetex-def";
   deps."xetex-itrans" = tl."xetex-itrans";
   deps."xetex-pstricks" = tl."xetex-pstricks";
   deps."xetex-tibetan" = tl."xetex-tibetan";
@@ -7202,8 +7812,6 @@ tl: { # no indentation
   deps."xetexfontinfo" = tl."xetexfontinfo";
   deps."xetexko" = tl."xetexko";
   deps."xevlna" = tl."xevlna";
-  deps."xltxtra" = tl."xltxtra";
-  deps."xunicode" = tl."xunicode";
   sha512.run = "";
 };
 "collref" = {
@@ -7245,7 +7853,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1.0";
+  version = "1.2.0";
 };
 "colortab" = {
   stripPrefix = 0;
@@ -7308,6 +7916,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2.2";
 };
+"combofont" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2";
+};
 "comfortaa" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -7321,7 +7936,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "comma" = {
   stripPrefix = 0;
@@ -7350,7 +7965,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.7";
+  version = "3.8";
 };
 "compactbib" = {
   stripPrefix = 0;
@@ -7362,7 +7977,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.76";
+  version = "0.81a";
 };
 "components-of-TeX" = {
   stripPrefix = 0;
@@ -7373,7 +7988,7 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  version = "12.2";
+  version = "12.3";
 };
 "computational-complexity" = {
   stripPrefix = 0;
@@ -7451,6 +8066,7 @@ tl: { # no indentation
   deps."mflogo-font" = tl."mflogo-font";
   deps."stmaryrd" = tl."stmaryrd";
   deps."mptopdf" = tl."mptopdf";
+  deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -7496,64 +8112,64 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-construction-plan" = {
+"context-cmscbf" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-cyrillicnumbers" = {
+"context-cmttbf" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-degrade" = {
+"context-construction-plan" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-fancybreak" = {
+"context-cyrillicnumbers" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-filter" = {
+"context-degrade" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-fixme" = {
+"context-fancybreak" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
+  sha512.doc = "";
   hasRunfiles = true;
 };
-"context-french" = {
+"context-filter" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-fullpage" = {
+"context-french" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-games" = {
+"context-fullpage" = {
   stripPrefix = 0;
-  deps."skaknew" = tl."skaknew";
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
@@ -7574,21 +8190,28 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-letter" = {
+"context-inifile" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-lettrine" = {
+"context-layout" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"context-lilypond" = {
+"context-letter" = {
+  stripPrefix = 0;
+  deps."context" = tl."context";
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
+"context-lettrine" = {
   stripPrefix = 0;
   deps."context" = tl."context";
   sha512.run = "";
@@ -7705,6 +8328,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0.1";
 };
+"conv-xkv" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
 "convbkmk" = {
   sha512.run = "";
   sha512.doc = "";
@@ -7719,6 +8349,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.9b";
 };
+"cooking-units" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.10";
+};
 "cookingsymbols" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -7790,6 +8428,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"cormorantgaramond" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "3.00";
+};
+"correctmathalign" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "coseoul" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -7850,6 +8502,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
+  version = "1.4";
 };
 "cprotect" = {
   stripPrefix = 0;
@@ -7865,7 +8518,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.9.7";
+  version = "1.20";
 };
 "crbox" = {
   stripPrefix = 0;
@@ -7895,11 +8548,18 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"crossreftools" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
 "crossrefware" = {
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "2.1a";
 };
 "crossword" = {
   stripPrefix = 0;
@@ -7941,16 +8601,31 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "cslatex" = {
   deps."latex" = tl."latex";
+  deps."cm" = tl."cm";
+  deps."cslatex" = tl."cslatex";
+  deps."csplain" = tl."csplain";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."tex-ini-files" = tl."tex-ini-files";
   sha512.run = "";
   sha512.source = "";
   hasRunfiles = true;
 };
 "csplain" = {
   deps."tex" = tl."tex";
+  deps."cm" = tl."cm";
+  deps."cs" = tl."cs";
+  deps."csplain" = tl."csplain";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."plain" = tl."plain";
+  deps."enctex" = tl."enctex";
+  deps."tex-ini-files" = tl."tex-ini-files";
+  deps."luatex" = tl."luatex";
+  deps."luatex85" = tl."luatex85";
   sha512.run = "";
   hasRunfiles = true;
 };
@@ -7959,7 +8634,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "5.1g";
+  version = "5.2b";
 };
 "csquotes-de" = {
   stripPrefix = 0;
@@ -7967,17 +8642,31 @@ tl: { # no indentation
   sha512.doc = "";
   version = "1.01";
 };
+"css-colors" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.02";
+};
 "cstex" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
 };
+"cstypo" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.03";
+};
 "csvsimple" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.12";
+  version = "1.20";
 };
 "ctable" = {
   stripPrefix = 0;
@@ -8005,7 +8694,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.8.2";
+  version = "1.9.1";
 };
 "ctanupload" = {
   sha512.run = "";
@@ -8020,7 +8709,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.4.2";
+  version = "2.4.10";
 };
 "ctex-faq" = {
   stripPrefix = 0;
@@ -8048,6 +8737,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.7";
 };
+"currency" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
 "currfile" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -8090,7 +8787,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.53";
+  version = "1.55";
 };
 "custom-bib" = {
   stripPrefix = 0;
@@ -8125,7 +8822,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.64af";
+  version = "3.64b";
 };
 "cweb-latex" = {
   stripPrefix = 0;
@@ -8220,9 +8917,8 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "0.5";
+  version = "0.6";
 };
 "datatool" = {
   stripPrefix = 0;
@@ -8230,7 +8926,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.25";
+  version = "2.27";
 };
 "dateiliste" = {
   stripPrefix = 0;
@@ -8262,7 +8958,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5.1";
+  version = "1.5.2";
 };
 "datetime2-bahasai" = {
   stripPrefix = 0;
@@ -8382,7 +9078,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.02";
 };
 "datetime2-galician" = {
   stripPrefix = 0;
@@ -8398,7 +9094,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "2.0";
 };
 "datetime2-greek" = {
   stripPrefix = 0;
@@ -8502,7 +9198,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.01";
 };
 "datetime2-russian" = {
   stripPrefix = 0;
@@ -8582,7 +9278,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.2";
 };
 "datetime2-usorbian" = {
   stripPrefix = 0;
@@ -8613,7 +9309,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.4.1";
+  version = "1.6";
 };
 "dcpic" = {
   stripPrefix = 0;
@@ -8650,7 +9346,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.40";
+  version = "0.41";
 };
 "dejavu" = {
   stripPrefix = 0;
@@ -8659,6 +9355,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.34";
 };
+"dejavu-otf" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.02";
+};
 "delim" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -8674,29 +9377,32 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.0";
 };
-"delimtxt" = {
+"delimset" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "1.0";
 };
-"denisbdoc" = {
+"delimtxt" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.3";
 };
-"detex" = {
+"denisbdoc" = {
+  stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.7";
 };
-"devnag" = {
+"detex" = {
   sha512.run = "";
   sha512.doc = "";
-  version = "2.15.1";
 };
 "dhua" = {
   stripPrefix = 0;
@@ -8718,7 +9424,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.1";
+  version = "2.2";
 };
 "diagmac2" = {
   stripPrefix = 0;
@@ -8764,6 +9470,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"diffcoeff" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "digiconfigs" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -8771,6 +9484,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.5";
 };
+"dijkstra" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.11";
+};
 "din1505" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -8828,7 +9548,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.3.4";
+  version = "1.5.0";
 };
 "dithesis" = {
   stripPrefix = 0;
@@ -8881,7 +9601,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5.0";
+  version = "1.6.0";
 };
 "docmfp" = {
   stripPrefix = 0;
@@ -8899,6 +9619,11 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.4";
 };
+"docsurvey" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+};
 "doctools" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -8996,7 +9721,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.2";
+  version = "2.3";
 };
 "dozenal" = {
   stripPrefix = 0;
@@ -9004,7 +9729,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "6.0";
+  version = "7.1";
 };
 "dpfloat" = {
   stripPrefix = 0;
@@ -9036,6 +9761,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.16";
 };
+"draftfigure" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2";
+};
 "draftwatermark" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9064,7 +9796,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1.0";
+  version = "1.5.0";
 };
 "drawstack" = {
   stripPrefix = 0;
@@ -9121,13 +9853,21 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.04";
+  version = "2.07a";
 };
 "dtl" = {
   sha512.run = "";
   sha512.doc = "";
   version = "0.6.1";
 };
+"dtxdescribe" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.10";
+};
 "dtxgallery" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9147,6 +9887,13 @@ tl: { # no indentation
   sha512.doc = "";
   version = "2.1";
 };
+"ducksay" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "duerer" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9215,23 +9962,21 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.00";
 };
-"dviljk" = {
+"dviinfox" = {
   sha512.run = "";
   sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.04";
 };
-"dvipdfmx" = {
-  deps."glyphlist" = tl."glyphlist";
-  deps."dvipdfmx-def" = tl."dvipdfmx-def";
+"dviljk" = {
   sha512.run = "";
   sha512.doc = "";
-  hasRunfiles = true;
 };
-"dvipdfmx-def" = {
-  stripPrefix = 0;
+"dvipdfmx" = {
+  deps."glyphlist" = tl."glyphlist";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.08";
 };
 "dvipng" = {
   sha512.run = "";
@@ -9256,14 +10001,7 @@ tl: { # no indentation
 "dvisvgm" = {
   sha512.run = "";
   sha512.doc = "";
-  version = "1.15.1";
-};
-"dvisvgm-def" = {
-  stripPrefix = 0;
-  sha512.run = "";
-  sha512.doc = "";
-  hasRunfiles = true;
-  version = "1.0a";
+  version = "2.1.3";
 };
 "dynamicnumber" = {
   stripPrefix = 0;
@@ -9280,6 +10018,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2b";
 };
+"dynkin-diagrams" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "dyntree" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9293,7 +10038,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "6.0";
+  version = "6.01";
 };
 "ean" = {
   stripPrefix = 0;
@@ -9328,6 +10073,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"easyformat" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.4.0";
+};
 "easylist" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9381,7 +10133,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "2.0";
 };
 "ebsthesis" = {
   stripPrefix = 0;
@@ -9412,6 +10164,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.3";
 };
+"ecgdraw" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
 "ecltree" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9568,7 +10328,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.4";
+  version = "1.5";
 };
 "ekaia" = {
   stripPrefix = 0;
@@ -9576,7 +10336,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.02";
+  version = "1.04";
 };
 "elbioimp" = {
   stripPrefix = 0;
@@ -9608,14 +10368,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.24.11";
+  version = "1.24.12";
 };
 "elements" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.2b";
 };
 "ellipse" = {
   stripPrefix = 0;
@@ -9646,7 +10406,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.02";
+  version = "0.03";
 };
 "elpres" = {
   stripPrefix = 0;
@@ -9690,7 +10450,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.20";
+  version = "1.23";
 };
 "emarks" = {
   stripPrefix = 0;
@@ -9713,7 +10473,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.6d";
+  version = "0.7";
+};
+"emf" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1";
 };
 "emisa" = {
   stripPrefix = 0;
@@ -9721,7 +10488,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.1";
+  version = "2.1.1";
 };
 "emp" = {
   stripPrefix = 0;
@@ -9771,7 +10538,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5";
+  version = "1.6";
 };
 "endiagram" = {
   stripPrefix = 0;
@@ -9786,6 +10553,12 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"endofproofwd" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "engpron" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9821,7 +10594,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.8b";
+  version = "0.9a";
 };
 "enumitem" = {
   stripPrefix = 0;
@@ -9889,6 +10662,13 @@ tl: { # no indentation
 };
 "eplain" = {
   deps."pdftex" = tl."pdftex";
+  deps."babel" = tl."babel";
+  deps."cm" = tl."cm";
+  deps."eplain" = tl."eplain";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."plain" = tl."plain";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
@@ -9946,7 +10726,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.24";
+  version = "2.27";
 };
 "eqell" = {
   stripPrefix = 0;
@@ -9962,6 +10742,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.1";
 };
+"eqnalign" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0a";
+};
 "eqname" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -9975,13 +10763,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.3";
 };
+"eqnnumwarn" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "eqparbox" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "4.0";
+  version = "4.1";
 };
 "erdc" = {
   stripPrefix = 0;
@@ -9996,7 +10791,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.06";
+  version = "1.08";
 };
 "errata" = {
   stripPrefix = 0;
@@ -10017,7 +10812,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "2.3";
 };
 "esdiff" = {
   stripPrefix = 0;
@@ -10127,7 +10922,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.6";
+  version = "2.7";
 };
 "etextools" = {
   stripPrefix = 0;
@@ -10157,14 +10952,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.08g-doc";
+  version = "1.08k";
 };
 "etoolbox" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.2a";
+  version = "2.4";
 };
 "etoolbox-de" = {
   stripPrefix = 0;
@@ -10196,6 +10991,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.5";
 };
+"eulerpx" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2.1";
+};
 "eulervm" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -10272,7 +11074,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.1.4";
 };
 "examdesign" = {
   stripPrefix = 0;
@@ -10344,7 +11146,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "5.0b";
+  version = "5.1b";
 };
 "export" = {
   stripPrefix = 0;
@@ -10367,7 +11169,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.21b";
+  version = "0.21i";
 };
 "exsol" = {
   stripPrefix = 0;
@@ -10428,7 +11230,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.72";
+  version = "3.02";
 };
 "facture" = {
   stripPrefix = 0;
@@ -10436,7 +11238,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2.1";
+  version = "1.2.2";
 };
 "faktor" = {
   stripPrefix = 0;
@@ -10458,7 +11260,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.1";
+  version = "3.9a";
 };
 "fancyhdr-it" = {
   stripPrefix = 0;
@@ -10510,7 +11312,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.8";
+  version = "1.9";
 };
 "fancytooltips" = {
   stripPrefix = 0;
@@ -10547,7 +11349,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.11";
+  version = "1.14";
 };
 "fbithesis" = {
   stripPrefix = 0;
@@ -10613,7 +11415,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "4.1";
 };
 "fenixpar" = {
   stripPrefix = 0;
@@ -10628,7 +11430,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.6";
+};
+"fetchcls" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "feupphdteses" = {
   stripPrefix = 0;
@@ -10675,13 +11484,21 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.25";
 };
+"fgruler" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "fibeamer" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1.5";
+  version = "1.1.7";
 };
 "fifinddo-info" = {
   stripPrefix = 0;
@@ -10738,6 +11555,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.3";
 };
+"filecontentsdef" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
 "filedate" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -10800,7 +11625,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.1";
+  version = "4.2";
 };
 "first-latex-doc" = {
   stripPrefix = 0;
@@ -10821,7 +11646,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.3.40";
+  version = "0.3.48";
 };
 "fix2col" = {
   stripPrefix = 0;
@@ -10846,6 +11671,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.3a";
 };
+"fixjfm" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.6";
+};
 "fixlatvian" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -10868,7 +11700,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "4.2";
+  version = "4.4";
 };
 "fixmetodonotes" = {
   stripPrefix = 0;
@@ -11003,7 +11835,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.01";
+  version = "3.04";
 };
 "fn2end" = {
   stripPrefix = 0;
@@ -11047,6 +11879,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.4e";
 };
+"fnspe" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.2a";
+};
 "fntproof" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11132,6 +11971,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.933";
 };
+"fontloader-luaotfload" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "fontmfizz" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11154,7 +12000,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "fonts-tlwg" = {
   stripPrefix = 0;
@@ -11162,7 +12008,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.6.3";
+  version = "0.6.4";
 };
 "fontspec" = {
   stripPrefix = 0;
@@ -11171,11 +12017,12 @@ tl: { # no indentation
   deps."l3packages" = tl."l3packages";
   deps."xunicode" = tl."xunicode";
   deps."lm" = tl."lm";
+  deps."euenc" = tl."euenc";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.5a";
+  version = "2.6e";
 };
 "fonttable" = {
   stripPrefix = 0;
@@ -11183,7 +12030,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.6b";
+  version = "1.6c";
 };
 "fontware" = {
   sha512.run = "";
@@ -11211,6 +12058,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "5.5b";
 };
+"footmisx" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "20161201";
+};
 "footnotebackref" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11224,7 +12079,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.9e";
+  version = "1.0";
 };
 "footnoterange" = {
   stripPrefix = 0;
@@ -11259,11 +12114,17 @@ tl: { # no indentation
 };
 "forest" = {
   stripPrefix = 0;
+  deps."elocalloc" = tl."elocalloc";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.0.3";
+  version = "2.1.5";
+};
+"forest-quickstart" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
 };
 "forloop" = {
   stripPrefix = 0;
@@ -11277,6 +12138,8 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
+  sha512.source = "";
+  version = "2016.11-3";
 };
 "formlett" = {
   stripPrefix = 0;
@@ -11285,6 +12148,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.3";
 };
+"forms16be" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
 "formular" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11375,6 +12246,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"frederika2016" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.000_2016_initial_release";
+};
 "frege" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11462,6 +12340,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"fvextra" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.3.1";
+};
 "fwlw" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11592,7 +12478,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.00";
+  version = "1.21";
 };
 "genmisc" = {
   stripPrefix = 0;
@@ -11663,13 +12549,6 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.4";
 };
-"getargs" = {
-  stripPrefix = 0;
-  sha512.run = "";
-  sha512.doc = "";
-  hasRunfiles = true;
-  version = "1.01";
-};
 "getfiledate" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11689,7 +12568,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.8";
+  version = "1.9";
 };
 "getoptk" = {
   stripPrefix = 0;
@@ -11771,7 +12650,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.6";
+  version = "4.8";
 };
 "gillcm" = {
   stripPrefix = 0;
@@ -11802,6 +12681,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"gitfile-info" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.3";
+};
 "gitinfo" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -11843,7 +12730,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "4.25";
+  version = "4.33";
 };
 "glossaries-danish" = {
   stripPrefix = 0;
@@ -11875,7 +12762,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.06";
+  version = "1.20";
 };
 "glossaries-french" = {
   stripPrefix = 0;
@@ -11883,7 +12770,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "glossaries-german" = {
   stripPrefix = 0;
@@ -12018,7 +12905,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.9.1";
+  version = "0.9.2";
 };
 "go" = {
   stripPrefix = 0;
@@ -12035,13 +12922,19 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"gofonts" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "gost" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2d";
+  version = "1.2i";
 };
 "gothic" = {
   stripPrefix = 0;
@@ -12050,6 +12943,14 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"gotoh" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "gradientframe" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12071,6 +12972,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.3.5";
 };
+"grant" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.0.3";
+};
 "graphbox" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12081,6 +12990,7 @@ tl: { # no indentation
 };
 "graphics" = {
   stripPrefix = 0;
+  deps."graphics-cfg" = tl."graphics-cfg";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
@@ -12092,6 +13002,12 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"graphics-def" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "graphics-pln" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12123,6 +13039,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.94";
 };
+"grayhints" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
 "greek-fontenc" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12167,7 +13090,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.1.4";
+  version = "5.0.2";
 };
 "grfpaste" = {
   stripPrefix = 0;
@@ -12242,6 +13165,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"gtrlib-largetrees" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
 "gu" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12266,7 +13196,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.6";
+  version = "0.7";
 };
 "guitlogo" = {
   stripPrefix = 0;
@@ -12293,7 +13223,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.95a";
+  version = "0.97";
 };
 "h2020proposal" = {
   stripPrefix = 0;
@@ -12302,6 +13232,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"hackthefootline" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "hacm" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12309,12 +13245,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"halloweenmath" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.10a";
+};
 "handout" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2.1a";
+  version = "1.6.0";
 };
 "hands" = {
   stripPrefix = 0;
@@ -12326,7 +13270,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "2.1";
 };
 "hanging" = {
   stripPrefix = 0;
@@ -12417,7 +13361,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.4";
+  version = "1.5";
 };
 "havannah" = {
   stripPrefix = 0;
@@ -12440,6 +13384,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.3";
 };
+"hecthese" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "helvetic" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12471,7 +13423,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.5.0";
+  version = "1.5.1";
 };
 "hepunits" = {
   stripPrefix = 0;
@@ -12491,7 +13443,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.08";
+  version = "1.09";
 };
 "hexgame" = {
   stripPrefix = 0;
@@ -12543,7 +13495,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1a";
+  version = "1.2";
 };
 "hitec" = {
   stripPrefix = 0;
@@ -12552,6 +13504,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.0beta";
 };
+"hithesis" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0.2";
+};
 "hletter" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -12559,13 +13519,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "4.2";
 };
+"hlist" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.11";
+};
 "hobby" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.7";
+  version = "1.8";
 };
 "hobete" = {
   stripPrefix = 0;
@@ -12617,14 +13584,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.4";
 };
 "hvfloat" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2a";
 };
 "hvindex" = {
   stripPrefix = 0;
@@ -12661,7 +13628,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "6.83p";
+  version = "6.85a";
 };
 "hyperref-docsrc" = {
   stripPrefix = 0;
@@ -12674,7 +13641,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.9";
+  version = "3.3";
 };
 "hyph-utf8" = {
   stripPrefix = 0;
@@ -12724,6 +13691,13 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"hyphen-belarusian" = {
+  stripPrefix = 0;
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."hyph-utf8" = tl."hyph-utf8";
+  sha512.run = "";
+  hasRunfiles = true;
+};
 "hyphen-bulgarian" = {
   stripPrefix = 0;
   deps."hyphen-base" = tl."hyphen-base";
@@ -13245,7 +14219,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.4";
+  version = "0.4a";
+};
+"ifptex" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.2c";
 };
 "ifsym" = {
   stripPrefix = 0;
@@ -13275,6 +14256,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.6";
 };
+"ifxptex" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1b";
+};
 "iitem" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13298,6 +14286,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"ijsra" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "imac" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13317,7 +14312,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.3c";
+  version = "1.3e";
 };
 "imfellenglish" = {
   stripPrefix = 0;
@@ -13382,7 +14377,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.10";
+  version = "1.113";
 };
 "index" = {
   stripPrefix = 0;
@@ -13496,6 +14491,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"invoice2" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
 "ionumbers" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13522,7 +14524,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.3b";
+  version = "0.4a";
+};
+"iscram" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0.2";
 };
 "iso" = {
   stripPrefix = 0;
@@ -13570,6 +14579,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"isopt" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.01";
+};
 "isorot" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13593,6 +14609,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"istgame" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "itnumpar" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13633,6 +14656,34 @@ tl: { # no indentation
   deps."passivetex" = tl."passivetex";
   deps."pdftex" = tl."pdftex";
   deps."tex" = tl."tex";
+  deps."amsfonts" = tl."amsfonts";
+  deps."babel" = tl."babel";
+  deps."cm" = tl."cm";
+  deps."colortbl" = tl."colortbl";
+  deps."cyrillic" = tl."cyrillic";
+  deps."ec" = tl."ec";
+  deps."fancyhdr" = tl."fancyhdr";
+  deps."graphics" = tl."graphics";
+  deps."graphics-cfg" = tl."graphics-cfg";
+  deps."graphics-def" = tl."graphics-def";
+  deps."hyperref" = tl."hyperref";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."ifxetex" = tl."ifxetex";
+  deps."jadetex" = tl."jadetex";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."latexconfig" = tl."latexconfig";
+  deps."marvosym" = tl."marvosym";
+  deps."oberdiek" = tl."oberdiek";
+  deps."psnfss" = tl."psnfss";
+  deps."stmaryrd" = tl."stmaryrd";
+  deps."symbol" = tl."symbol";
+  deps."tex-ini-files" = tl."tex-ini-files";
+  deps."tipa" = tl."tipa";
+  deps."tools" = tl."tools";
+  deps."ulem" = tl."ulem";
+  deps."url" = tl."url";
+  deps."wasysym" = tl."wasysym";
+  deps."zapfding" = tl."zapfding";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
@@ -13646,14 +14697,6 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.12";
 };
-"japanese" = {
-  stripPrefix = 0;
-  sha512.run = "";
-  sha512.doc = "";
-  sha512.source = "";
-  hasRunfiles = true;
-  version = "1.3";
-};
 "japanese-otf" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13669,14 +14712,13 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.17";
+  version = "0.18";
 };
-"jfontmaps" = {
+"jfmutil" = {
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "20151002.0";
+  version = "1.1.0";
 };
 "jknapltx" = {
   stripPrefix = 0;
@@ -13690,13 +14732,19 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"jlreq" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "jmlr" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.21";
+  version = "1.24";
 };
 "jmn" = {
   stripPrefix = 0;
@@ -13735,7 +14783,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.5";
 };
 "jumplines" = {
   stripPrefix = 0;
@@ -13811,6 +14859,14 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"karnaugh-map" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "karnaughmap" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13856,6 +14912,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "3.1415";
 };
+"keyfloat" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.15";
+};
 "keyreader" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13917,6 +14981,14 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"knowledge" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.08";
+};
 "knuth" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -13949,7 +15021,7 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   hasRunfiles = true;
-  version = "3.20";
+  version = "3.24";
 };
 "koma-script-examples" = {
   stripPrefix = 0;
@@ -13969,7 +15041,15 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0.1";
+  version = "1.1.1";
+};
+"komacv-rg" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.9";
 };
 "kotex-oblivoir" = {
   stripPrefix = 0;
@@ -13978,7 +15058,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.1.7";
+  version = "2.1.8";
 };
 "kotex-plain" = {
   stripPrefix = 0;
@@ -14035,6 +15115,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "05.34";
 };
+"ku-template" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "kurier" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14084,7 +15170,6 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "SVN_6608";
 };
 "l3experimental" = {
   stripPrefix = 0;
@@ -14092,7 +15177,6 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "SVN_6495";
 };
 "l3kernel" = {
   stripPrefix = 0;
@@ -14100,7 +15184,6 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "SVN_6512";
 };
 "l3packages" = {
   stripPrefix = 0;
@@ -14108,7 +15191,6 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "SVN_6512";
 };
 "labbook" = {
   stripPrefix = 0;
@@ -14136,6 +15218,12 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
 };
+"ladder" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "lambda" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14194,6 +15282,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "2017-01-01_PL1";
 };
 "latex-bib-ex" = {
   stripPrefix = 0;
@@ -14207,6 +15296,13 @@ tl: { # no indentation
 };
 "latex-bin" = {
   deps."latex" = tl."latex";
+  deps."babel" = tl."babel";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."tex-ini-files" = tl."tex-ini-files";
+  deps."latexconfig" = tl."latexconfig";
+  deps."unicode-data" = tl."unicode-data";
   sha512.run = "";
   sha512.doc = "";
 };
@@ -14249,7 +15345,13 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.2.2";
+  version = "2.2.3";
+};
+"latex-mr" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  version = "1.0";
 };
 "latex-notes-zh-cn" = {
   stripPrefix = 0;
@@ -14257,12 +15359,24 @@ tl: { # no indentation
   sha512.doc = "";
   version = "1.20";
 };
+"latex-papersize" = {
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.62";
+};
 "latex-referenz" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   version = "2";
 };
+"latex-refsheet" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  version = "1.2";
+};
 "latex-tabellen" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14303,7 +15417,13 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.24";
+  version = "1.26";
+};
+"latex2nemeth" = {
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "latex4wp" = {
   stripPrefix = 0;
@@ -14317,6 +15437,21 @@ tl: { # no indentation
   sha512.doc = "";
   version = "1.0.10";
 };
+"latexbangla" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2";
+};
+"latexbug" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0d";
+};
 "latexcheat" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14363,7 +15498,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1.1";
+  version = "1.2.1";
 };
 "latexfileinfo-pkgs" = {
   stripPrefix = 0;
@@ -14379,18 +15514,25 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.3";
 };
+"latexgit" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
 "latexindent" = {
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.1R";
+  version = "3.3";
 };
 "latexmk" = {
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "4.45";
+  version = "4.52c";
 };
 "latexmp" = {
   stripPrefix = 0;
@@ -14403,15 +15545,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.3";
 };
 "lato" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "2.2";
+  version = "3.0";
 };
 "layaureo" = {
   stripPrefix = 0;
@@ -14478,7 +15619,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.3a";
+  version = "0.5b";
 };
 "leaflet" = {
   stripPrefix = 0;
@@ -14486,7 +15627,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1a";
+  version = "1.1b";
 };
 "lecturer" = {
   stripPrefix = 0;
@@ -14500,7 +15641,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.19.3";
+  version = "0.19.4";
 };
 "leftidx" = {
   stripPrefix = 0;
@@ -14515,7 +15656,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "2.0";
 };
 "lengthconvert" = {
   stripPrefix = 0;
@@ -14530,7 +15671,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.353";
+  version = "3.000";
 };
 "lettrine" = {
   stripPrefix = 0;
@@ -14615,21 +15756,21 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.00";
+  version = "1.01";
 };
 "libertinus" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "6.2";
+  version = "6.4";
 };
 "libertinust1math" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.00";
+  version = "1.1.4";
 };
 "libgreek" = {
   stripPrefix = 0;
@@ -14685,7 +15826,15 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.1";
+  version = "2.2";
+};
+"limecv" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.1.1";
 };
 "linearA" = {
   stripPrefix = 0;
@@ -14710,6 +15859,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "4.41";
 };
+"ling-macros" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "linguex" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14724,6 +15879,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"lion-msc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.27";
+};
 "lipsum" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14783,6 +15945,13 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"listofitems" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.5";
+};
 "listofsymbols" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14835,6 +16004,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"lni" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.3";
+};
 "lobster2" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14900,11 +16077,21 @@ tl: { # no indentation
   version = "1.0";
 };
 "lollipop" = {
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."lollipop" = tl."lollipop";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
   version = "1.07";
 };
+"longdivision" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "longfbox" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -14987,7 +16174,7 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  version = "5.0.5";
+  version = "5.10";
 };
 "lshort-czech" = {
   stripPrefix = 0;
@@ -15028,7 +16215,7 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  version = "3.0a";
+  version = "3.0b";
 };
 "lshort-italian" = {
   stripPrefix = 0;
@@ -15135,7 +16322,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1.5";
+  version = "0.1.8";
 };
 "ltablex" = {
   stripPrefix = 0;
@@ -15151,6 +16338,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.74d";
 };
+"ltb2bib" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.01";
+};
 "ltxdockit" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15217,7 +16412,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.4";
+  version = "0.5";
 };
 "lua-visual-debug" = {
   stripPrefix = 0;
@@ -15255,6 +16450,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2a";
 };
+"luahyphenrules" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "luaindex" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15295,7 +16497,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.6";
+  version = "1.7";
 };
 "lualibs" = {
   stripPrefix = 0;
@@ -15303,7 +16505,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.4";
+  version = "2.5";
+};
+"luamesh" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.51";
 };
 "luamplib" = {
   stripPrefix = 0;
@@ -15311,33 +16520,42 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.11.3";
+  version = "2.12.1";
 };
 "luaotfload" = {
+  deps."lualibs" = tl."lualibs";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.7-fix-3";
+  version = "2.8-fix-2";
 };
-"luasseq" = {
+"luapackageloader" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
+  version = "0.1";
 };
-"luatex" = {
+"luasseq" = {
+  stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
+  sha512.source = "";
   hasRunfiles = true;
 };
-"luatex-def" = {
-  stripPrefix = 0;
+"luatex" = {
+  deps."cm" = tl."cm";
+  deps."etex" = tl."etex";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."luatex" = tl."luatex";
+  deps."plain" = tl."plain";
+  deps."tex-ini-files" = tl."tex-ini-files";
+  deps."unicode-data" = tl."unicode-data";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.01e";
 };
 "luatex85" = {
   stripPrefix = 0;
@@ -15361,14 +16579,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "20160618.0";
+  version = "20170904.0";
 };
 "luatexko" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.15";
+  version = "1.18";
 };
 "luatextra" = {
   stripPrefix = 0;
@@ -15384,7 +16602,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.3";
+  version = "0.4";
 };
 "luaxml" = {
   stripPrefix = 0;
@@ -15393,6 +16611,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.0.2";
 };
+"lwarp" = {
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.41";
+};
 "lxfonts" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15460,7 +16685,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1b";
+  version = "0.1c";
 };
 "makebarcode" = {
   stripPrefix = 0;
@@ -15532,6 +16757,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0.6";
 };
+"maker" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "makeshape" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15546,7 +16778,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.5.1";
+  version = "2.6.1";
 };
 "manfnt" = {
   stripPrefix = 0;
@@ -15575,6 +16807,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0c";
 };
+"marginfit" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "marginfix" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15589,7 +16829,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.2b";
 };
 "markdown" = {
   stripPrefix = 0;
@@ -15597,7 +16837,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0.1";
+  version = "2.5.4";
 };
 "marvosym" = {
   stripPrefix = 0;
@@ -15634,6 +16874,11 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
 };
+"math-into-latex-4" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+};
 "mathabx" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15652,7 +16897,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.08";
+  version = "1.09";
 };
 "mathastext" = {
   stripPrefix = 0;
@@ -15660,7 +16905,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.3p";
+  version = "1.3r";
 };
 "mathcomp" = {
   stripPrefix = 0;
@@ -15709,6 +16954,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.003";
 };
+"mathpunctspace" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "maths-symbols" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15720,7 +16972,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.2b";
 };
 "mathspic" = {
   sha512.run = "";
@@ -15734,7 +16986,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.18";
+  version = "1.19";
 };
 "matlab-prettifier" = {
   stripPrefix = 0;
@@ -15779,12 +17031,19 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"mcexam" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.3";
+};
 "mcf2graph" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.94";
+  version = "4.28";
 };
 "mcite" = {
   stripPrefix = 0;
@@ -15846,7 +17105,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.69";
+  version = "0.86";
 };
 "medstarbeamer" = {
   stripPrefix = 0;
@@ -15890,6 +17149,17 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"mendex-doc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+};
+"mensa-tex" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "mentis" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -15912,7 +17182,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.4";
+  version = "1.5";
 };
 "merriweather" = {
   stripPrefix = 0;
@@ -15922,6 +17192,7 @@ tl: { # no indentation
 };
 "metafont" = {
   deps."kpathsea" = tl."kpathsea";
+  deps."metafont" = tl."metafont";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -15983,7 +17254,7 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.source = "";
-  version = "0.55";
+  version = "0.56";
 };
 "metauml" = {
   stripPrefix = 0;
@@ -16021,6 +17292,13 @@ tl: { # no indentation
   deps."hyphen-polish" = tl."hyphen-polish";
   deps."pdftex" = tl."pdftex";
   deps."tex" = tl."tex";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."mex" = tl."mex";
+  deps."plain" = tl."plain";
+  deps."tex-ini-files" = tl."tex-ini-files";
+  deps."enctex" = tl."enctex";
+  deps."utf8mex" = tl."utf8mex";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
@@ -16039,7 +17317,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.02";
+  version = "2.04";
 };
 "mflogo" = {
   stripPrefix = 0;
@@ -16098,8 +17376,17 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"mgltex" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "4.2";
+};
 "mhchem" = {
   stripPrefix = 0;
+  deps."chemgreek" = tl."chemgreek";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -16125,7 +17412,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.6a";
+  version = "2.7";
 };
 "microtype-de" = {
   stripPrefix = 0;
@@ -16146,18 +17433,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1a";
 };
-"mil3" = {
+"miller" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2";
 };
-"miller" = {
+"milog" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.0";
 };
 "minibox" = {
   stripPrefix = 0;
@@ -16167,6 +17456,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2a";
 };
+"minidocument" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "minifp" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16209,7 +17506,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.2.1";
+  version = "2.5";
 };
 "mintspirit" = {
   stripPrefix = 0;
@@ -16223,7 +17520,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.8d";
+  version = "1.8f";
+};
+"missaali" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.004";
 };
 "mkgrkindex" = {
   sha512.run = "";
@@ -16267,6 +17571,14 @@ tl: { # no indentation
 };
 "mltex" = {
   deps."latex" = tl."latex";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."babel" = tl."babel";
+  deps."latexconfig" = tl."latexconfig";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."mltex" = tl."mltex";
+  deps."plain" = tl."plain";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -16340,6 +17652,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1";
 };
+"modular" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "mongolian-babel" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16364,6 +17682,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "IVu.04.092";
 };
+"montserrat" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.01";
+};
 "moodle" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16417,7 +17742,6 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.2e";
 };
 "movie15" = {
   stripPrefix = 0;
@@ -16475,11 +17799,28 @@ tl: { # no indentation
   sha512.doc = "";
   version = "1.004";
 };
+"mpostinl" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.12";
+};
 "mptopdf" = {
+  deps."mptopdf" = tl."mptopdf";
+  deps."plain" = tl."plain";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
+"mptrees" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "17.06";
+};
 "ms" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16513,7 +17854,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.6b";
+  version = "2.7";
 };
 "mtgreek" = {
   stripPrefix = 0;
@@ -16523,6 +17864,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1+";
 };
+"mucproc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.02";
+};
 "mugsthesis" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16606,6 +17955,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.4";
 };
+"multilang" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.9";
+};
 "multiobjective" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16618,8 +17975,9 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
+  sha512.source = "";
   hasRunfiles = true;
-  version = "1.6";
+  version = "2.2";
 };
 "munich" = {
   stripPrefix = 0;
@@ -16627,6 +17985,12 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"musicography" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "musixguit" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16639,7 +18003,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.23";
+  version = "1.25";
 };
 "musixtex-fonts" = {
   stripPrefix = 0;
@@ -16681,7 +18045,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.74";
+  version = "0.75";
 };
 "mwe" = {
   stripPrefix = 0;
@@ -16733,7 +18097,21 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.00";
+  version = "1.01";
+};
+"na-box" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
+"na-position" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "nag" = {
   stripPrefix = 0;
@@ -16749,7 +18127,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.5";
+  version = "3.2";
 };
 "namespc" = {
   stripPrefix = 0;
@@ -16806,6 +18184,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"navydocs" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "ncclatex" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -16832,7 +18218,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.0";
+  version = "3.2017.2";
 };
 "ndsu-thesis" = {
   stripPrefix = 0;
@@ -16902,7 +18288,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.295";
+  version = "1.321";
 };
 "newsletr" = {
   stripPrefix = 0;
@@ -16920,24 +18306,25 @@ tl: { # no indentation
 };
 "newtx" = {
   stripPrefix = 0;
+  deps."kastrup" = tl."kastrup";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.466";
+  version = "1.527";
 };
 "newtxsf" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.04";
+  version = "1.05";
 };
 "newtxtt" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.052";
+  version = "1.055";
 };
 "newunicodechar" = {
   stripPrefix = 0;
@@ -16991,6 +18378,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1c";
 };
+"niceframe-type1" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "nicetext" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17031,7 +18424,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.04";
+  version = "1.06";
 };
 "nmbib" = {
   stripPrefix = 0;
@@ -17048,6 +18441,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"nodetree" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
 "noindentafter" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17147,6 +18548,26 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.0k";
 };
+"notespages" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.8.1";
+};
+"notestex" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
+"notex-bst" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  hasRunfiles = true;
+};
 "noto" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17159,6 +18580,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"novel" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.43";
+};
 "nowidow" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17217,6 +18645,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "1.01d";
 };
 "numberedblock" = {
   stripPrefix = 0;
@@ -17238,6 +18667,12 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"numnameru" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "numprint" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17246,13 +18681,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.39";
 };
+"numspell" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
 "nwejm" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.97";
+  version = "0.98d";
 };
 "oberdiek" = {
   stripPrefix = 0;
@@ -17295,7 +18737,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.17";
+  version = "0.32";
 };
 "ocherokee" = {
   stripPrefix = 0;
@@ -17322,6 +18764,12 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"octave" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "octavo" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17361,7 +18809,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "2.0";
 };
 "oldlatin" = {
   stripPrefix = 0;
@@ -17374,9 +18822,8 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "2.0.2";
+  version = "2.2";
 };
 "oldstyle" = {
   stripPrefix = 0;
@@ -17386,6 +18833,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2";
 };
+"olsak-misc" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "omega" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17402,7 +18855,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.10";
+  version = "0.20";
 };
 "onrannual" = {
   stripPrefix = 0;
@@ -17427,6 +18880,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"oplotsymbl" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.4";
+};
 "opteng" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17439,7 +18899,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "2.5";
 };
 "optional" = {
   stripPrefix = 0;
@@ -17474,7 +18934,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.4";
+  version = "1.5";
 };
 "ot-tableau" = {
   stripPrefix = 0;
@@ -17528,6 +18988,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"overlays" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "2.7";
+};
 "overlock" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17538,8 +19005,9 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
+  sha512.source = "";
   hasRunfiles = true;
-  version = "0.53";
+  version = "1.0";
 };
 "pacioli" = {
   stripPrefix = 0;
@@ -17548,13 +19016,20 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"padauk" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "3.002";
+};
 "pagecolor" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0h";
+  version = "1.0i";
 };
 "pagecont" = {
   stripPrefix = 0;
@@ -17643,7 +19118,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.5";
+  version = "2.7";
 };
 "parallel" = {
   stripPrefix = 0;
@@ -17671,7 +19146,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1";
+  version = "3";
 };
 "parrun" = {
   stripPrefix = 0;
@@ -17700,7 +19175,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.09d";
+  version = "1.6";
 };
 "pas-crosswords" = {
   stripPrefix = 0;
@@ -17780,7 +19255,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.1k";
+  version = "0.1l";
 };
 "pb-diagram" = {
   stripPrefix = 0;
@@ -17859,6 +19334,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.02";
 };
+"pdflatexpicscale" = {
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.31";
+};
 "pdfmarginpar" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -17880,7 +19361,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.5f";
+  version = "0.5k";
+};
+"pdfreview" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
 };
 "pdfscreen" = {
   stripPrefix = 0;
@@ -17903,17 +19391,16 @@ tl: { # no indentation
 };
 "pdftex" = {
   deps."kpathsea" = tl."kpathsea";
+  deps."cm" = tl."cm";
+  deps."etex" = tl."etex";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."plain" = tl."plain";
+  deps."tex-ini-files" = tl."tex-ini-files";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"pdftex-def" = {
-  stripPrefix = 0;
-  sha512.run = "";
-  sha512.doc = "";
-  hasRunfiles = true;
-  version = "0.06h";
-};
 "pdftools" = {
   sha512.run = "";
   sha512.doc = "";
@@ -17946,7 +19433,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5.8";
+  version = "1.5.84";
 };
 "pdfxup" = {
   sha512.run = "";
@@ -17978,7 +19465,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "2.2";
 };
 "perltex" = {
   sha512.run = "";
@@ -18022,7 +19509,7 @@ tl: { # no indentation
 };
 "pgf" = {
   stripPrefix = 0;
-  deps."xkeyval" = tl."xkeyval";
+  deps."ms" = tl."ms";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
@@ -18109,7 +19596,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.13";
+  version = "1.15";
 };
 "phaistos" = {
   stripPrefix = 0;
@@ -18119,6 +19606,62 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"phffullpagefigure" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
+"phfnote" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
+"phfparen" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
+"phfqit" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "2.0";
+};
+"phfquotetext" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
+"phfsvnwatermark" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
+"phfthm" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "philex" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -18132,7 +19675,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2";
 };
 "philosophersimprint" = {
   stripPrefix = 0;
@@ -18140,7 +19683,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.3";
+  version = "1.4";
+};
+"phonenumbers" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "2.0";
 };
 "phonetic" = {
   stripPrefix = 0;
@@ -18153,7 +19703,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2.0";
+  version = "1.3.2";
 };
 "photo" = {
   stripPrefix = 0;
@@ -18273,7 +19823,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.7.3";
+  version = "1.7.4";
 };
 "pl" = {
   stripPrefix = 0;
@@ -18288,7 +19838,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.1";
+  version = "0.1d1";
 };
 "placeins" = {
   stripPrefix = 0;
@@ -18345,11 +19895,29 @@ tl: { # no indentation
 };
 "platex" = {
   deps."ptex" = tl."ptex";
+  deps."babel" = tl."babel";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."latex" = tl."latex";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."ptex-fonts" = tl."ptex-fonts";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
 };
+"platex-tools" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
+"platexcheat" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  version = "2.0";
+};
 "play" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -18403,7 +19971,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.74";
+  version = "2.76";
 };
 "pmxchords" = {
   sha512.run = "";
@@ -18423,7 +19991,15 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.72";
+  version = "2.85";
+};
+"poetry" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "poetrytex" = {
   stripPrefix = 0;
@@ -18441,7 +20017,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.3.3";
+  version = "1.3.4";
 };
 "poltawski" = {
   stripPrefix = 0;
@@ -18469,7 +20045,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.17";
+  version = "0.19";
 };
 "polynomial" = {
   stripPrefix = 0;
@@ -18506,7 +20082,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5a";
+  version = "1.5c";
 };
 "powerdot-FUBerlin" = {
   stripPrefix = 0;
@@ -18584,14 +20160,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "11.89";
+  version = "11.91";
 };
 "prftree" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.4";
+  version = "1.5";
 };
 "printlen" = {
   stripPrefix = 0;
@@ -18613,7 +20189,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.04";
+  version = "3.05";
 };
 "procIAGssymp" = {
   stripPrefix = 0;
@@ -18640,7 +20216,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.3.12";
+  version = "3.3.14";
 };
 "progress" = {
   stripPrefix = 0;
@@ -18662,14 +20238,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.01";
+  version = "1.02";
 };
 "prooftrees" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.4";
+  version = "0.6";
 };
 "properties" = {
   stripPrefix = 0;
@@ -18697,7 +20273,6 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.5";
 };
 "protocol" = {
   stripPrefix = 0;
@@ -18808,7 +20383,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.01";
+  version = "2.04";
 };
 "pst-abspos" = {
   stripPrefix = 0;
@@ -18826,6 +20401,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.02";
 };
+"pst-arrow" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.01";
+};
 "pst-asr" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -18846,15 +20428,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.15";
+  version = "0.18";
 };
 "pst-bezier" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "0.01";
+  version = "0.03";
 };
 "pst-blur" = {
   stripPrefix = 0;
@@ -18883,14 +20464,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.05";
+  version = "1.06";
 };
 "pst-circ" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.13";
+  version = "2.14";
 };
 "pst-coil" = {
   stripPrefix = 0;
@@ -18943,7 +20524,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.52";
+  version = "1.56";
 };
 "pst-eucl-translation-bg" = {
   stripPrefix = 0;
@@ -18956,7 +20537,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.05";
+  version = "0.06";
 };
 "pst-fill" = {
   stripPrefix = 0;
@@ -18970,9 +20551,8 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "0.01";
+  version = "0.02";
 };
 "pst-fr3d" = {
   stripPrefix = 0;
@@ -19002,7 +20582,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.82";
+  version = "0.88";
 };
 "pst-gantt" = {
   stripPrefix = 0;
@@ -19016,7 +20596,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.03";
+  version = "0.06";
+};
+"pst-geometrictools" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
 };
 "pst-ghsb" = {
   stripPrefix = 0;
@@ -19132,7 +20719,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.36";
+  version = "1.39";
 };
 "pst-ob3d" = {
   stripPrefix = 0;
@@ -19147,7 +20734,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.7";
+  version = "0.11";
 };
 "pst-optexp" = {
   stripPrefix = 0;
@@ -19161,9 +20748,8 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "1.01";
+  version = "1.02";
 };
 "pst-osci" = {
   stripPrefix = 0;
@@ -19177,7 +20763,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.07";
+  version = "0.07a";
 };
 "pst-pad" = {
   stripPrefix = 0;
@@ -19192,7 +20778,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1v";
+  version = "1.2d";
 };
 "pst-pdgr" = {
   stripPrefix = 0;
@@ -19222,7 +20808,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.75";
+  version = "1.84";
+};
+"pst-poker" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.02";
 };
 "pst-poly" = {
   stripPrefix = 0;
@@ -19235,9 +20828,8 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "0.01";
+  version = "0.02";
 };
 "pst-qtree" = {
   stripPrefix = 0;
@@ -19245,6 +20837,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"pst-rputover" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "pst-rubans" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19253,6 +20852,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"pst-shell" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.03";
+};
 "pst-sigsys" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19272,16 +20879,15 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "0.12";
+  version = "0.13";
 };
 "pst-solides3d" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "4.30";
+  version = "4.34";
 };
 "pst-soroban" = {
   stripPrefix = 0;
@@ -19298,6 +20904,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.91";
 };
+"pst-spinner" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.02";
+};
 "pst-spirograph" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19338,15 +20951,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.05";
+  version = "0.09";
 };
 "pst-tree" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  sha512.source = "";
   hasRunfiles = true;
-  version = "1.12";
+  version = "1.13";
 };
 "pst-tvz" = {
   stripPrefix = 0;
@@ -19372,6 +20984,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.4";
 };
+"pst-vehicle" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
 "pst-vowel" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19391,7 +21010,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.16";
+  version = "0.18";
 };
 "pstool" = {
   stripPrefix = 0;
@@ -19399,7 +21018,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5c";
+  version = "1.5d";
 };
 "pstools" = {
   sha512.run = "";
@@ -19412,14 +21031,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.68";
+  version = "2.77";
 };
 "pstricks-add" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.80";
+  version = "3.84";
 };
 "pstricks_calcnotes" = {
   stripPrefix = 0;
@@ -19427,6 +21046,12 @@ tl: { # no indentation
   sha512.doc = "";
   version = "1.2";
 };
+"pstring" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "psu-thesis" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19441,16 +21066,13 @@ tl: { # no indentation
   version = "p17";
 };
 "ptex" = {
-  deps."tex" = tl."tex";
-  deps."latex" = tl."latex";
-  deps."hyph-utf8" = tl."hyph-utf8";
-  deps."adobemapping" = tl."adobemapping";
-  deps."ipaex" = tl."ipaex";
-  deps."japanese" = tl."japanese";
-  deps."japanese-otf" = tl."japanese-otf";
-  deps."pbibtex-base" = tl."pbibtex-base";
   deps."ptex-base" = tl."ptex-base";
   deps."ptex-fonts" = tl."ptex-fonts";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."plain" = tl."plain";
+  deps."etex" = tl."etex";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -19461,6 +21083,16 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"ptex-fontmaps" = {
+  deps."arphic-ttf" = tl."arphic-ttf";
+  deps."baekmuk" = tl."baekmuk";
+  deps."ipaex" = tl."ipaex";
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "20170624.0";
+};
 "ptex-fonts" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19471,7 +21103,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.8";
+  version = "20170622.0";
 };
 "ptext" = {
   stripPrefix = 0;
@@ -19518,14 +21150,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.5";
+  version = "1.1b";
 };
 "pxchfon" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.7h";
+  version = "1.1b";
 };
 "pxcjkcat" = {
   stripPrefix = 0;
@@ -19553,7 +21185,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.3";
+  version = "0.3a";
 };
 "pxpgfmark" = {
   stripPrefix = 0;
@@ -19568,6 +21200,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "1.3a";
+};
+"pxtatescale" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.4";
 };
 "pxtxalfa" = {
   stripPrefix = 0;
@@ -19576,6 +21216,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1";
 };
+"pxufont" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.3";
+};
 "pygmentex" = {
   sha512.run = "";
   sha512.doc = "";
@@ -19589,19 +21236,25 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.21";
 };
+"pythonhighlight" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "pythontex" = {
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.13";
+  version = "0.16";
 };
 "qcircuit" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.5.2";
+  version = "2.5.3";
 };
 "qcm" = {
   stripPrefix = 0;
@@ -19658,6 +21311,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"quicktype" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
 "quotchap" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19687,7 +21347,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.14";
+  version = "1.261";
 };
 "r_und_s" = {
   stripPrefix = 0;
@@ -19701,7 +21361,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.3";
+  version = "1.4";
 };
 "ran_toks" = {
   stripPrefix = 0;
@@ -19709,7 +21369,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0e";
+  version = "1.1";
 };
 "randbild" = {
   stripPrefix = 0;
@@ -19719,6 +21379,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2";
 };
+"randomlist" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.3";
+};
 "randomwalk" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -19769,7 +21437,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "2.0";
 };
 "realboxes" = {
   stripPrefix = 0;
@@ -19792,7 +21460,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.3";
+  version = "2.1";
 };
 "recipe" = {
   stripPrefix = 0;
@@ -19839,7 +21507,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1.1";
+  version = "1.1.2";
 };
 "reflectgraphics" = {
   stripPrefix = 0;
@@ -19903,7 +21571,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.13.1";
+  version = "2.24.2";
 };
 "relenc" = {
   stripPrefix = 0;
@@ -19938,7 +21606,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "13.12";
+  version = "17.05";
 };
 "repltext" = {
   stripPrefix = 0;
@@ -19954,7 +21622,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.28";
+  version = "1.31";
 };
 "resumecls" = {
   stripPrefix = 0;
@@ -19975,6 +21643,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
 };
+"revquantum" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.11";
+};
 "revtex" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -20142,7 +21818,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.1e";
+  version = "3.1f";
 };
 "rsfs" = {
   stripPrefix = 0;
@@ -20182,7 +21858,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.0";
+  version = "4.0";
 };
 "ruhyphen" = {
   stripPrefix = 0;
@@ -20205,6 +21881,14 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"rutitlepage" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "rviewport" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -20256,6 +21940,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
+  version = "2.2.1";
 };
 "sanskrit-t1" = {
   stripPrefix = 0;
@@ -20281,7 +21966,6 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1";
 };
 "sapthesis" = {
   stripPrefix = 0;
@@ -20360,14 +22044,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.7";
+  version = "1.8";
 };
 "scanpages" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.04";
+  version = "1.05a";
 };
 "schemabloc" = {
   stripPrefix = 0;
@@ -20425,11 +22109,7 @@ tl: { # no indentation
   deps."collection-formatsextra" = tl."collection-formatsextra";
   deps."collection-fontutils" = tl."collection-fontutils";
   deps."collection-games" = tl."collection-games";
-  deps."collection-genericextra" = tl."collection-genericextra";
-  deps."collection-genericrecommended" = tl."collection-genericrecommended";
-  deps."collection-htmlxml" = tl."collection-htmlxml";
   deps."collection-humanities" = tl."collection-humanities";
-  deps."collection-langafrican" = tl."collection-langafrican";
   deps."collection-langarabic" = tl."collection-langarabic";
   deps."collection-langchinese" = tl."collection-langchinese";
   deps."collection-langcjk" = tl."collection-langcjk";
@@ -20440,7 +22120,6 @@ tl: { # no indentation
   deps."collection-langfrench" = tl."collection-langfrench";
   deps."collection-langgerman" = tl."collection-langgerman";
   deps."collection-langgreek" = tl."collection-langgreek";
-  deps."collection-langindic" = tl."collection-langindic";
   deps."collection-langitalian" = tl."collection-langitalian";
   deps."collection-langjapanese" = tl."collection-langjapanese";
   deps."collection-langkorean" = tl."collection-langkorean";
@@ -20452,15 +22131,13 @@ tl: { # no indentation
   deps."collection-latexextra" = tl."collection-latexextra";
   deps."collection-latexrecommended" = tl."collection-latexrecommended";
   deps."collection-luatex" = tl."collection-luatex";
-  deps."collection-mathextra" = tl."collection-mathextra";
+  deps."collection-mathscience" = tl."collection-mathscience";
   deps."collection-metapost" = tl."collection-metapost";
   deps."collection-music" = tl."collection-music";
-  deps."collection-omega" = tl."collection-omega";
   deps."collection-pictures" = tl."collection-pictures";
-  deps."collection-plainextra" = tl."collection-plainextra";
+  deps."collection-plaingeneric" = tl."collection-plaingeneric";
   deps."collection-pstricks" = tl."collection-pstricks";
   deps."collection-publishers" = tl."collection-publishers";
-  deps."collection-science" = tl."collection-science";
   deps."collection-texworks" = tl."collection-texworks";
   deps."collection-xetex" = tl."collection-xetex";
   sha512.run = "";
@@ -20494,11 +22171,11 @@ tl: { # no indentation
   deps."collection-context" = tl."collection-context";
   deps."collection-fontutils" = tl."collection-fontutils";
   deps."collection-fontsrecommended" = tl."collection-fontsrecommended";
-  deps."collection-genericrecommended" = tl."collection-genericrecommended";
   deps."collection-langpolish" = tl."collection-langpolish";
   deps."collection-latex" = tl."collection-latex";
   deps."collection-latexrecommended" = tl."collection-latexrecommended";
   deps."collection-metapost" = tl."collection-metapost";
+  deps."collection-plaingeneric" = tl."collection-plaingeneric";
   deps."collection-texworks" = tl."collection-texworks";
   deps."collection-xetex" = tl."collection-xetex";
   sha512.run = "";
@@ -20507,6 +22184,7 @@ tl: { # no indentation
   stripPrefix = 0;
   deps."kpathsea" = tl."kpathsea";
   deps."hyphen-base" = tl."hyphen-base";
+  deps."tetex" = tl."tetex";
   sha512.run = "";
 };
 "scheme-medium" = {
@@ -20516,7 +22194,6 @@ tl: { # no indentation
   deps."collection-context" = tl."collection-context";
   deps."collection-fontsrecommended" = tl."collection-fontsrecommended";
   deps."collection-fontutils" = tl."collection-fontutils";
-  deps."collection-genericrecommended" = tl."collection-genericrecommended";
   deps."collection-langczechslovak" = tl."collection-langczechslovak";
   deps."collection-langenglish" = tl."collection-langenglish";
   deps."collection-langeuropean" = tl."collection-langeuropean";
@@ -20529,9 +22206,9 @@ tl: { # no indentation
   deps."collection-latex" = tl."collection-latex";
   deps."collection-latexrecommended" = tl."collection-latexrecommended";
   deps."collection-luatex" = tl."collection-luatex";
-  deps."collection-mathextra" = tl."collection-mathextra";
+  deps."collection-mathscience" = tl."collection-mathscience";
   deps."collection-metapost" = tl."collection-metapost";
-  deps."collection-plainextra" = tl."collection-plainextra";
+  deps."collection-plaingeneric" = tl."collection-plaingeneric";
   deps."collection-texworks" = tl."collection-texworks";
   deps."collection-xetex" = tl."collection-xetex";
   sha512.run = "";
@@ -20631,12 +22308,10 @@ tl: { # no indentation
   deps."tamethebeast" = tl."tamethebeast";
   deps."tds" = tl."tds";
   deps."tex-refs" = tl."tex-refs";
-  deps."voss-mathmode" = tl."voss-mathmode";
   deps."collection-basic" = tl."collection-basic";
   deps."collection-context" = tl."collection-context";
   deps."collection-fontsrecommended" = tl."collection-fontsrecommended";
   deps."collection-fontutils" = tl."collection-fontutils";
-  deps."collection-genericrecommended" = tl."collection-genericrecommended";
   deps."collection-langcjk" = tl."collection-langcjk";
   deps."collection-langcyrillic" = tl."collection-langcyrillic";
   deps."collection-langczechslovak" = tl."collection-langczechslovak";
@@ -20652,35 +22327,14 @@ tl: { # no indentation
   deps."collection-langspanish" = tl."collection-langspanish";
   deps."collection-latex" = tl."collection-latex";
   deps."collection-latexrecommended" = tl."collection-latexrecommended";
-  deps."collection-mathextra" = tl."collection-mathextra";
+  deps."collection-mathscience" = tl."collection-mathscience";
   deps."collection-metapost" = tl."collection-metapost";
-  deps."collection-omega" = tl."collection-omega";
+  deps."collection-formatsextra" = tl."collection-formatsextra";
   deps."collection-pictures" = tl."collection-pictures";
-  deps."collection-plainextra" = tl."collection-plainextra";
+  deps."collection-plaingeneric" = tl."collection-plaingeneric";
   deps."collection-pstricks" = tl."collection-pstricks";
   sha512.run = "";
 };
-"scheme-xml" = {
-  stripPrefix = 0;
-  deps."context" = tl."context";
-  deps."jadetex" = tl."jadetex";
-  deps."ltxmisc" = tl."ltxmisc";
-  deps."marvosym" = tl."marvosym";
-  deps."metapost" = tl."metapost";
-  deps."passivetex" = tl."passivetex";
-  deps."stmaryrd" = tl."stmaryrd";
-  deps."tex4ht" = tl."tex4ht";
-  deps."tipa" = tl."tipa";
-  deps."ucs" = tl."ucs";
-  deps."wasy" = tl."wasy";
-  deps."wasysym" = tl."wasysym";
-  deps."xmltex" = tl."xmltex";
-  deps."collection-basic" = tl."collection-basic";
-  deps."collection-fontsrecommended" = tl."collection-fontsrecommended";
-  deps."collection-latex" = tl."collection-latex";
-  deps."collection-omega" = tl."collection-omega";
-  sha512.run = "";
-};
 "schule" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -20719,6 +22373,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"scratch" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.32";
+};
+"scratchx" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "screenplay" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -20732,7 +22400,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "scrjrnl" = {
   stripPrefix = 0;
@@ -20749,6 +22417,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1d";
 };
+"scsnowman" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.2";
+};
 "sdrt" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -20798,7 +22473,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2";
 };
 "seetexk" = {
   sha512.run = "";
@@ -20826,6 +22501,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.0";
 };
+"semantic-markup" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "semaphor" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -20860,7 +22541,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.3b";
+  version = "0.3c";
 };
 "sepnum" = {
   stripPrefix = 0;
@@ -20909,6 +22590,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.6";
 };
+"sesstime" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "setdeck" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -20945,7 +22634,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.3";
 };
 "sffms" = {
   stripPrefix = 0;
@@ -21022,7 +22711,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.1";
+  version = "2.1b";
 };
 "shipunov" = {
   stripPrefix = 0;
@@ -21031,6 +22720,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"shobhika" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.04";
+};
 "shorttoc" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -21068,7 +22764,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.3l";
+  version = "0.3o";
 };
 "showhyphens" = {
   stripPrefix = 0;
@@ -21138,6 +22834,18 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.5b";
 };
+"simple-resume-cv" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
+"simple-thesis-dissertation" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "simplecd" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -21154,6 +22862,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.6a";
 };
+"simplekv" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
 "simpler-wick" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -21195,7 +22910,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.6q";
+  version = "2.7j";
 };
 "skak" = {
   stripPrefix = 0;
@@ -21224,7 +22939,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.4a";
+  version = "1.5";
 };
 "skeycommand" = {
   stripPrefix = 0;
@@ -21246,7 +22961,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.4";
+  version = "0.4b";
 };
 "skrapport" = {
   stripPrefix = 0;
@@ -21254,7 +22969,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.12e";
+  version = "0.12h";
 };
 "skull" = {
   stripPrefix = 0;
@@ -21290,7 +23005,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.3";
+  version = "0.3b";
 };
 "smartref" = {
   stripPrefix = 0;
@@ -21335,7 +23050,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.14";
+  version = "3.0";
 };
 "sort-by-letters" = {
   stripPrefix = 0;
@@ -21358,6 +23073,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.4";
 };
+"soup" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "sourcecodepro" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -21370,7 +23093,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.5";
+  version = "2.6";
 };
 "sourceserifpro" = {
   stripPrefix = 0;
@@ -21379,6 +23102,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"spalign" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
 "spanish-mx" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -21386,12 +23116,19 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1a";
 };
+"spark-otf" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.04";
+};
 "sparklines" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.6";
+  version = "1.7";
 };
 "spath3" = {
   stripPrefix = 0;
@@ -21401,6 +23138,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"spectralsequences" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1.1";
+};
 "spelling" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -21535,13 +23279,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.24";
+  version = "4.01";
 };
 "stage" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
+  version = "1.00";
 };
 "standalone" = {
   stripPrefix = 0;
@@ -21551,6 +23296,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"stanli" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "3.0";
+};
 "starfont" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -21678,7 +23430,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "141";
+  version = "2.2b-6";
 };
 "sttools" = {
   stripPrefix = 0;
@@ -21686,7 +23438,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.8";
+  version = "2.0";
 };
 "stubs" = {
   stripPrefix = 0;
@@ -21695,6 +23447,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1.1";
 };
+"studenthandouts" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "sty2dtx" = {
   sha512.run = "";
   sha512.doc = "";
@@ -21855,7 +23614,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "2.00b";
 };
 "svg-inkscape" = {
   stripPrefix = 0;
@@ -22003,6 +23762,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"table-fct" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "tableaux" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -22066,7 +23832,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.10";
+  version = "2.01";
 };
 "tabto-generic" = {
   stripPrefix = 0;
@@ -22144,7 +23910,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "talk" = {
   stripPrefix = 0;
@@ -22186,7 +23952,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.11a";
+  version = "0.12";
 };
 "tcldoc" = {
   stripPrefix = 0;
@@ -22201,7 +23967,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.93";
+  version = "4.11";
 };
 "tdclock" = {
   stripPrefix = 0;
@@ -22287,6 +24053,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.8";
 };
+"termcal-de" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "termlist" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -22310,6 +24082,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.7";
 };
+"testidx" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "tetex" = {
   sha512.run = "";
   sha512.doc = "";
@@ -22327,6 +24107,9 @@ tl: { # no indentation
 "tex" = {
   deps."kpathsea" = tl."kpathsea";
   deps."plain" = tl."plain";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
   sha512.run = "";
   sha512.doc = "";
   version = "3.14159265";
@@ -22397,7 +24180,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1d";
+  version = "0.1e";
 };
 "tex4ht" = {
   sha512.run = "";
@@ -22425,7 +24208,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "3.0";
+  version = "3.1";
 };
 "texdef" = {
   sha512.run = "";
@@ -22444,7 +24227,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.3";
 };
 "texdoc" = {
   deps."kpathsea" = tl."kpathsea";
@@ -22462,7 +24245,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.32";
+  version = "1.37";
 };
 "texilikechaps" = {
   stripPrefix = 0;
@@ -22584,6 +24367,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2.0";
 };
+"texosquery" = {
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.6";
+};
 "texpower" = {
   stripPrefix = 0;
   deps."tpslifonts" = tl."tpslifonts";
@@ -22593,6 +24383,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2";
 };
+"texproposal" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  version = "1.4";
+};
 "texshade" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -22603,6 +24399,11 @@ tl: { # no indentation
 };
 "texsis" = {
   deps."tex" = tl."tex";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."plain" = tl."plain";
+  deps."texsis" = tl."texsis";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -22633,6 +24434,7 @@ tl: { # no indentation
 };
 "textgreek" = {
   stripPrefix = 0;
+  deps."greek-fontenc" = tl."greek-fontenc";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
@@ -22685,7 +24487,6 @@ tl: { # no indentation
 "texworks" = {
   sha512.run = "";
   sha512.doc = "";
-  hasRunfiles = true;
 };
 "tfrupee" = {
   stripPrefix = 0;
@@ -22695,13 +24496,26 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.02";
 };
+"thaienum" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2";
+};
 "thalie" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.8";
+  version = "0.9b";
+};
+"theatre" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  version = "0.1";
 };
 "theoremref" = {
   stripPrefix = 0;
@@ -22715,7 +24529,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "2.1";
 };
 "thesis-titlepage-fhac" = {
   stripPrefix = 0;
@@ -22810,14 +24624,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "5.3.1";
+  version = "5.3.2";
 };
 "ticket" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.4b";
+  version = "0.4d";
 };
 "ticollege" = {
   stripPrefix = 0;
@@ -22857,7 +24671,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2";
 };
 "tikz-dimline" = {
   stripPrefix = 0;
@@ -22880,6 +24694,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1";
 };
+"tikz-kalender" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.4a";
+};
 "tikz-opm" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -22887,12 +24708,27 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.1.1";
 };
+"tikz-optics" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2.3";
+};
+"tikz-page" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "tikz-palattice" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.21";
+  version = "2.3";
 };
 "tikz-qtree" = {
   stripPrefix = 0;
@@ -22910,6 +24746,20 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.7d";
 };
+"tikzcodeblocks" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.11";
+};
+"tikzducks" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.4";
+};
 "tikzinclude" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -22924,7 +24774,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.3";
 };
 "tikzorbital" = {
   stripPrefix = 0;
@@ -22940,6 +24790,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.1";
 };
+"tikzpeople" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.4";
+};
 "tikzpfeile" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -22970,7 +24827,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "4.0";
+  version = "4.07";
 };
 "times" = {
   stripPrefix = 0;
@@ -22988,6 +24845,12 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"tinos" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "tipa" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23030,7 +24893,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.2";
 };
 "titleref" = {
   stripPrefix = 0;
@@ -23129,6 +24992,17 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
 };
+"tlcockpit" = {
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+};
+"tlshell" = {
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "tocbibind" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23137,13 +25011,21 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.5k";
 };
+"tocdata" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.12";
+};
 "tocloft" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.3f";
+  version = "2.3i";
 };
 "tocvsec2" = {
   stripPrefix = 0;
@@ -23167,7 +25049,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0.4";
+  version = "1.0.5";
 };
 "tokenizer" = {
   stripPrefix = 0;
@@ -23203,7 +25085,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "5.91";
+  version = "6.1.09";
 };
 "totcount" = {
   stripPrefix = 0;
@@ -23239,7 +25121,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "2.1";
 };
 "tracklang" = {
   stripPrefix = 0;
@@ -23247,7 +25129,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2";
+  version = "1.3.4";
 };
 "trajan" = {
   stripPrefix = 0;
@@ -23278,7 +25160,7 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  version = "1.0";
+  version = "2.0";
 };
 "translation-chemsym-de" = {
   stripPrefix = 0;
@@ -23330,7 +25212,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.4a";
+  version = "1.7a";
 };
 "tree-dvips" = {
   stripPrefix = 0;
@@ -23353,6 +25235,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.01";
 };
+"trigonometry" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "trimspaces" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23409,7 +25297,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.04e";
+  version = "2.05m";
 };
 "tufte-latex" = {
   stripPrefix = 0;
@@ -23430,14 +25318,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.17";
+  version = "2.18";
 };
 "tugboat-plain" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.21";
+  version = "1.23";
 };
 "tui" = {
   stripPrefix = 0;
@@ -23518,6 +25406,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0";
 };
+"txuprcal" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.00";
+};
 "type1cm" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23561,6 +25456,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.0.7";
 };
+"typoaid" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.4.7";
+};
 "typogrid" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23589,7 +25491,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.7";
+  version = "1.8";
 };
 "uassign" = {
   stripPrefix = 0;
@@ -23626,7 +25528,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.2.1";
+  version = "2.3.0";
 };
 "ucs" = {
   stripPrefix = 0;
@@ -23648,7 +25550,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.5.2";
+  version = "1.6.0";
 };
 "uebungsblatt" = {
   stripPrefix = 0;
@@ -23670,6 +25572,14 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"uhhassignment" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.0";
+};
 "uhrzeit" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23718,7 +25628,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "4.2";
+  version = "4.4";
 };
 "umbclegislation" = {
   stripPrefix = 0;
@@ -23781,7 +25691,12 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.02";
+  version = "2.1";
+};
+"undergradmath" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
 };
 "underlin" = {
   stripPrefix = 0;
@@ -23812,6 +25727,18 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.0l";
 };
+"unfonts-core" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
+"unfonts-extra" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "uni-wtal-ger" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23826,12 +25753,19 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.2";
 };
+"unicode-bidi" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.01";
+};
 "unicode-data" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.4a";
+  version = "1.6";
 };
 "unicode-math" = {
   stripPrefix = 0;
@@ -23840,7 +25774,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.8c";
+  version = "0.8h";
 };
 "unisugar" = {
   stripPrefix = 0;
@@ -23849,6 +25783,12 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "0.92";
 };
+"unitn-bimrep" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+};
 "units" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -23914,7 +25854,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.0";
+  version = "3.0.1";
 };
 "upca" = {
   stripPrefix = 0;
@@ -23929,6 +25869,12 @@ tl: { # no indentation
 };
 "uplatex" = {
   deps."uptex" = tl."uptex";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."babel" = tl."babel";
+  deps."latex" = tl."latex";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."uptex-fonts" = tl."uptex-fonts";
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
@@ -23939,6 +25885,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
+  version = "20170808";
+};
+"uppunctlm" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1";
 };
 "upquote" = {
   stripPrefix = 0;
@@ -23949,16 +25903,14 @@ tl: { # no indentation
   version = "1.3";
 };
 "uptex" = {
-  deps."adobemapping" = tl."adobemapping";
-  deps."convbkmk" = tl."convbkmk";
-  deps."hyph-utf8" = tl."hyph-utf8";
-  deps."ipaex" = tl."ipaex";
-  deps."japanese" = tl."japanese";
-  deps."japanese-otf" = tl."japanese-otf";
-  deps."latex" = tl."latex";
-  deps."ptex" = tl."ptex";
   deps."uptex-base" = tl."uptex-base";
   deps."uptex-fonts" = tl."uptex-fonts";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."knuth-lib" = tl."knuth-lib";
+  deps."plain" = tl."plain";
+  deps."etex" = tl."etex";
+  deps."ptex-base" = tl."ptex-base";
   sha512.run = "";
   sha512.doc = "";
   version = "1.20";
@@ -23976,12 +25928,19 @@ tl: { # no indentation
   sha512.source = "";
   hasRunfiles = true;
 };
+"upzhkinsoku" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.2a";
+};
 "urcls" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "2.0";
 };
 "uri" = {
   stripPrefix = 0;
@@ -24028,6 +25987,13 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.2";
 };
+"uspace" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.04";
+};
 "uspatent" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -24079,6 +26045,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"variablelm" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.1.1";
+};
 "variations" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -24105,7 +26078,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.5";
+  version = "1.0";
 };
 "varwidth" = {
   stripPrefix = 0;
@@ -24129,12 +26102,11 @@ tl: { # no indentation
   version = "1.0";
 };
 "velthuis" = {
-  stripPrefix = 0;
   deps."xetex-devanagari" = tl."xetex-devanagari";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.15.1";
+  version = "2.17";
 };
 "venn" = {
   stripPrefix = 0;
@@ -24261,7 +26233,7 @@ tl: { # no indentation
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
-  version = "0.62";
+  version = "0.64";
 };
 "vlna" = {
   sha512.run = "";
@@ -24304,12 +26276,6 @@ tl: { # no indentation
   sha512.doc = "";
   version = "0.1";
 };
-"voss-mathmode" = {
-  stripPrefix = 0;
-  sha512.run = "";
-  sha512.doc = "";
-  version = "2.47";
-};
 "vpe" = {
   sha512.run = "";
   sha512.doc = "";
@@ -24337,6 +26303,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"wallcalendar" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.3.1";
+};
 "wallpaper" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -24404,7 +26377,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.1";
+  version = "1.4";
 };
 "williams" = {
   stripPrefix = 0;
@@ -24417,7 +26390,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.1.0";
+  version = "0.2.0";
+};
+"witharrows" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "wnri" = {
   stripPrefix = 0;
@@ -24469,6 +26449,13 @@ tl: { # no indentation
   sha512.doc = "";
   hasRunfiles = true;
 };
+"wtref" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.3.2";
+};
 "xargs" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -24482,14 +26469,14 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.9";
+  version = "1.5";
 };
 "xcharter" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.078a";
+  version = "1.1";
 };
 "xcite" = {
   stripPrefix = 0;
@@ -24512,7 +26499,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.4";
 };
 "xcolor" = {
   stripPrefix = 0;
@@ -24522,13 +26509,21 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "2.12";
 };
+"xcolor-material" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.1";
+};
 "xcolor-solarized" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.3";
+  version = "0.4";
 };
 "xcomment" = {
   stripPrefix = 0;
@@ -24565,14 +26560,21 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "22.87";
+  version = "22.87.03";
 };
 "xebaposter" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.42";
+  version = "2.51";
+};
+"xechangebar" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "1.0";
 };
 "xecjk" = {
   stripPrefix = 0;
@@ -24580,7 +26582,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "3.4.0";
+  version = "3.5.0";
 };
 "xecolor" = {
   stripPrefix = 0;
@@ -24608,7 +26610,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.2";
 };
 "xepersian" = {
   stripPrefix = 0;
@@ -24616,7 +26618,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "16.5";
+  version = "19.3";
 };
 "xesearch" = {
   stripPrefix = 0;
@@ -24635,17 +26637,18 @@ tl: { # no indentation
 "xetex" = {
   deps."xetexconfig" = tl."xetexconfig";
   deps."latex" = tl."latex";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."tex-ini-files" = tl."tex-ini-files";
+  deps."unicode-data" = tl."unicode-data";
+  deps."etex" = tl."etex";
+  deps."plain" = tl."plain";
+  deps."babel" = tl."babel";
+  deps."latex-fonts" = tl."latex-fonts";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
-"xetex-def" = {
-  stripPrefix = 0;
-  sha512.run = "";
-  sha512.doc = "";
-  hasRunfiles = true;
-  version = "4.08";
-};
 "xetex-devanagari" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -24689,7 +26692,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "2.15";
+  version = "2.17";
 };
 "xetexref" = {
   stripPrefix = 0;
@@ -24701,7 +26704,7 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "1.0";
+  version = "1.1";
 };
 "xfor" = {
   stripPrefix = 0;
@@ -24717,7 +26720,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.7";
+  version = "3.0";
 };
 "xhfill" = {
   stripPrefix = 0;
@@ -24750,7 +26753,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "1.2g";
+  version = "1.2o";
 };
 "xits" = {
   stripPrefix = 0;
@@ -24774,7 +26777,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.25";
+  version = "0.26";
+};
+"xltabular" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.03";
 };
 "xltxtra" = {
   stripPrefix = 0;
@@ -24790,6 +26800,13 @@ tl: { # no indentation
   deps."pdftex" = tl."pdftex";
   deps."tex" = tl."tex";
   deps."xmltexconfig" = tl."xmltexconfig";
+  deps."babel" = tl."babel";
+  deps."cm" = tl."cm";
+  deps."hyphen-base" = tl."hyphen-base";
+  deps."latex-fonts" = tl."latex-fonts";
+  deps."latexconfig" = tl."latexconfig";
+  deps."tex-ini-files" = tl."tex-ini-files";
+  deps."xmltex" = tl."xmltex";
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
@@ -24860,7 +26877,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.3";
+  version = "2.5";
 };
 "xprintlen" = {
   stripPrefix = 0;
@@ -24890,7 +26907,14 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.2";
+  version = "0.7";
+};
+"xsim" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.10";
 };
 "xskak" = {
   stripPrefix = 0;
@@ -24979,6 +27003,14 @@ tl: { # no indentation
   hasRunfiles = true;
   version = "1.2";
 };
+"yaletter" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "1.1";
+};
 "yannisgr" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -24991,7 +27023,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "0.99m";
+  version = "0.99p";
 };
 "yax" = {
   stripPrefix = 0;
@@ -25083,12 +27115,27 @@ tl: { # no indentation
   sha512.run = "";
   hasRunfiles = true;
 };
+"zebra-goodies" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  hasRunfiles = true;
+  version = "0.1.0";
+};
 "zed-csp" = {
   stripPrefix = 0;
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
 };
+"zhlipsum" = {
+  stripPrefix = 0;
+  sha512.run = "";
+  sha512.doc = "";
+  sha512.source = "";
+  hasRunfiles = true;
+  version = "0.4";
+};
 "zhmetrics" = {
   stripPrefix = 0;
   sha512.run = "";
@@ -25110,7 +27157,7 @@ tl: { # no indentation
   sha512.doc = "";
   sha512.source = "";
   hasRunfiles = true;
-  version = "2.4";
+  version = "2.5";
 };
 "zhspacing" = {
   stripPrefix = 0;
@@ -25164,6 +27211,6 @@ tl: { # no indentation
   sha512.run = "";
   sha512.doc = "";
   hasRunfiles = true;
-  version = "0.6";
+  version = "0.6b";
 };
 }
diff --git a/pkgs/tools/virtualization/awsebcli/default.nix b/pkgs/tools/virtualization/awsebcli/default.nix
index 7439af275608..72e3cb0ed2d3 100644
--- a/pkgs/tools/virtualization/awsebcli/default.nix
+++ b/pkgs/tools/virtualization/awsebcli/default.nix
@@ -77,11 +77,11 @@ let
 in with localPython.pkgs; buildPythonApplication rec {
   name = "${pname}-${version}";
   pname = "awsebcli";
-  version = "3.12.0";
+  version = "3.12.1";
 
   src = fetchPypi {
     inherit pname version;
-    sha256 = "0ljras4bgxpmk1l3plialmhi7jsm2cpzx0dcs9411ijykzkamdkd";
+    sha256 = "12v3zz69iql4ggiz9x7h27vyq9y9jlm46yczxyg62j89m2iyr5bl";
   };
 
   checkInputs = [
diff --git a/pkgs/tools/virtualization/cloud-init/default.nix b/pkgs/tools/virtualization/cloud-init/default.nix
index caea7c21c91b..60ccc0f4724a 100644
--- a/pkgs/tools/virtualization/cloud-init/default.nix
+++ b/pkgs/tools/virtualization/cloud-init/default.nix
@@ -31,6 +31,10 @@ in pythonPackages.buildPythonApplication rec {
   propagatedBuildInputs = with pythonPackages; [ cheetah jinja2 prettytable
     oauthlib pyserial configobj pyyaml requests jsonpatch ];
 
+  checkInputs = with pythonPackages; [ contextlib2 httpretty mock unittest2 ];
+
+  doCheck = false;
+
   meta = {
     homepage = http://cloudinit.readthedocs.org;
     description = "Provides configuration and customization of cloud instance";
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 6e0da9616371..19026f475257 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -202,6 +202,8 @@ with pkgs;
 
   fetchzip = callPackage ../build-support/fetchzip { };
 
+  fetchCrate = callPackage ../build-support/rust/fetchcrate.nix { };
+
   fetchFromGitHub = {
     owner, repo, rev, name ? "source",
     fetchSubmodules ? false, private ? false,
@@ -601,6 +603,8 @@ with pkgs;
 
   git-fire = callPackage ../tools/misc/git-fire { };
 
+  gitless = callPackage ../applications/version-management/gitless/default.nix { };
+
   grc = callPackage ../tools/misc/grc { };
 
   green-pdfviewer = callPackage ../applications/misc/green-pdfviewer {
@@ -856,6 +860,12 @@ with pkgs;
   caddy = callPackage ../servers/caddy { };
   traefik = callPackage ../servers/traefik { };
 
+  calamares = libsForQt59.callPackage ../tools/misc/calamares {
+    python = python3;
+    boost = pkgs.boost.override { python = python3; };
+    libyamlcpp = callPackage ../development/libraries/libyaml-cpp { inherit boost; };
+  };
+
   capstone = callPackage ../development/libraries/capstone { };
   unicorn-emu = callPackage ../development/libraries/unicorn-emu { };
 
@@ -1319,13 +1329,15 @@ with pkgs;
   bgs = callPackage ../tools/X11/bgs { };
 
   biber = callPackage ../tools/typesetting/biber {
-    inherit (perlPackages)
+    inherit (perlPackages) buildPerlModule
       autovivification BusinessISBN BusinessISMN BusinessISSN ConfigAutoConf
       DataCompare DataDump DateSimple EncodeEUCJPASCII EncodeHanExtra EncodeJIS2K
-      ExtUtilsLibBuilder FileSlurp IPCRun3 Log4Perl LWPProtocolHttps ListAllUtils
-      ListMoreUtils ModuleBuild MozillaCA ReadonlyXS RegexpCommon TextBibTeX
+      DateTime DateTimeFormatBuilder DateTimeCalendarJulian
+      ExtUtilsLibBuilder FileSlurp FileWhich IPCRun3 Log4Perl LWPProtocolHttps ListAllUtils
+      ListMoreUtils MozillaCA ReadonlyXS RegexpCommon TextBibTeX
       UnicodeCollate UnicodeLineBreak URI XMLLibXMLSimple XMLLibXSLT XMLWriter
-      ClassAccessor TextRoman DataUniqid LinguaTranslit UnicodeNormalize;
+      ClassAccessor TextCSV TextCSV_XS TextRoman DataUniqid LinguaTranslit UnicodeNormalize SortKey
+      TestDifferences;
   };
 
   blueman = callPackage ../tools/bluetooth/blueman {
@@ -3969,12 +3981,12 @@ with pkgs;
 
   philter = callPackage ../tools/networking/philter { };
 
-  pinentry = callPackage ../tools/security/pinentry {
-    libcap = if stdenv.isDarwin then null else libcap;
-    qt4 = null;
+  pinentry = pinentry_ncurses.override {
+    inherit gtk2;
   };
 
-  pinentry_ncurses = pinentry.override {
+  pinentry_ncurses = callPackage ../tools/security/pinentry {
+    libcap = if stdenv.isDarwin then null else libcap;
     gtk2 = null;
   };
 
@@ -3983,11 +3995,11 @@ with pkgs;
   };
 
   pinentry_qt4 = pinentry_ncurses.override {
-    inherit qt4;
+    qt = qt4;
   };
 
-  pinentry_qt5 = libsForQt5.callPackage ../tools/security/pinentry/qt5.nix {
-    libcap = if stdenv.isDarwin then null else libcap;
+  pinentry_qt5 = pinentry_ncurses.override {
+    qt = qt5.qtbase;
   };
 
   pinentry_mac = callPackage ../tools/security/pinentry-mac {
@@ -4266,6 +4278,8 @@ with pkgs;
 
   reckon = callPackage ../tools/text/reckon { };
 
+  recoverjpeg = callPackage ../tools/misc/recoverjpeg { };
+
   reposurgeon = callPackage ../applications/version-management/reposurgeon { };
 
   reptyr = callPackage ../os-specific/linux/reptyr {};
@@ -4491,6 +4505,8 @@ with pkgs;
 
   smbnetfs = callPackage ../tools/filesystems/smbnetfs {};
 
+  smenu = callPackage ../tools/misc/smenu { };
+
   smugline = python3Packages.smugline;
 
   snabb = callPackage ../tools/networking/snabb { } ;
@@ -4616,9 +4632,9 @@ with pkgs;
     preCheck = "export PATH=dist/build/stutter:$PATH";
   });
 
-  strongswan = callPackage ../tools/networking/strongswan { };
-
-  strongswanTNC = callPackage ../tools/networking/strongswan { enableTNC=true; };
+  strongswan    = callPackage ../tools/networking/strongswan { };
+  strongswanTNC = callPackage ../tools/networking/strongswan { enableTNC = true; };
+  strongswanNM  = callPackage ../tools/networking/strongswan { enableNetworkManager = true; };
 
   su = shadow.su;
 
@@ -4706,7 +4722,7 @@ with pkgs;
 
   thc-hydra = callPackage ../tools/security/thc-hydra { };
 
-  thefuck = callPackage ../tools/misc/thefuck { };
+  thefuck = python3Packages.callPackage ../tools/misc/thefuck { };
 
   thin-provisioning-tools = callPackage ../tools/misc/thin-provisioning-tools {  };
 
@@ -6299,6 +6315,12 @@ with pkgs;
   rust = callPackage ../development/compilers/rust { };
   inherit (rust) cargo rustc;
 
+  buildRustCrate = callPackage ../build-support/rust/build-rust-crate.nix { };
+
+  carnix = (callPackage ../build-support/rust/carnix.nix { }).carnix_0_5_0;
+
+  defaultCrateOverrides = callPackage ../build-support/rust/default-crate-overrides.nix { };
+
   rustPlatform = recurseIntoAttrs (makeRustPlatform rust);
 
   makeRustPlatform = rust: lib.fix (self:
@@ -7618,6 +7640,8 @@ with pkgs;
 
   remake = callPackage ../development/tools/build-managers/remake { };
 
+  retdec = callPackage ../development/tools/analysis/retdec { };
+
   rhc = callPackage ../development/tools/rhc { };
 
   rman = callPackage ../development/tools/misc/rman { };
@@ -8771,6 +8795,10 @@ with pkgs;
 
   hwloc = callPackage ../development/libraries/hwloc {};
 
+  hwloc-nox = callPackage ../development/libraries/hwloc {
+    x11Support = false;
+  };
+
   hydra = callPackage ../development/tools/misc/hydra { };
 
   hydraAntLogger = callPackage ../development/libraries/java/hydra-ant-logger { };
@@ -11331,9 +11359,13 @@ with pkgs;
 
   mockobjects = callPackage ../development/libraries/java/mockobjects { };
 
-  saxon = callPackage ../development/libraries/java/saxon { };
+  saxonb = saxonb_8_8;
 
-  saxonb = callPackage ../development/libraries/java/saxon/default8.nix { };
+  inherit (callPackages ../development/libraries/java/saxon { })
+    saxon
+    saxonb_8_8
+    saxonb_9_1
+    saxon-he;
 
   smack = callPackage ../development/libraries/java/smack { };
 
@@ -11521,7 +11553,8 @@ with pkgs;
   cassandra_2_1 = callPackage ../servers/nosql/cassandra/2.1.nix { };
   cassandra_2_2 = callPackage ../servers/nosql/cassandra/2.2.nix { };
   cassandra_3_0 = callPackage ../servers/nosql/cassandra/3.0.nix { };
-  cassandra = cassandra_3_0;
+  cassandra_3_11 = callPackage ../servers/nosql/cassandra/3.11.nix { };
+  cassandra = cassandra_3_11;
 
   apache-jena = callPackage ../servers/nosql/apache-jena/binary.nix {
     java = jdk;
@@ -11756,6 +11789,8 @@ with pkgs;
     modules = [ nginxModules.rtmp nginxModules.dav nginxModules.moreheaders nginxModules.shibboleth ];
   };
 
+  libmodsecurity = callPackage ../tools/security/libmodsecurity { };
+
   ngircd = callPackage ../servers/irc/ngircd { };
 
   nix-binary-cache = callPackage ../servers/http/nix-binary-cache {};
@@ -13159,7 +13194,9 @@ with pkgs;
     ubootBeagleboneBlack
     ubootJetsonTK1
     ubootOdroidXU3
+    ubootOrangePiPc
     ubootPcduino3Nano
+    ubootQemuArm
     ubootRaspberryPi
     ubootRaspberryPi2
     ubootRaspberryPi3_32bit
@@ -14089,7 +14126,7 @@ with pkgs;
     openjpeg = openjpeg_1;
   };
 
-  camlistore = callPackage ../applications/misc/camlistore { };
+  perkeep = callPackage ../applications/misc/perkeep { };
 
   canto-curses = callPackage ../applications/networking/feedreaders/canto-curses { };
 
@@ -14605,7 +14642,7 @@ with pkgs;
   emacs25WithPackages = emacs25PackagesNg.emacsWithPackages;
   emacsWithPackages = emacsPackagesNg.emacsWithPackages;
 
-  # inherit (gnome3) empathy;
+  inherit (gnome3) empathy;
 
   enhanced-ctorrent = callPackage ../applications/networking/enhanced-ctorrent { };
 
@@ -15788,7 +15825,9 @@ with pkgs;
 
   monero = callPackage ../applications/misc/monero { };
 
-  xmr-stak = callPackage ../applications/misc/xmr-stak { };
+  xmr-stak = callPackage ../applications/misc/xmr-stak {
+    hwloc = hwloc-nox;
+  };
 
   monkeysAudio = callPackage ../applications/audio/monkeys-audio { };
 
@@ -16090,12 +16129,6 @@ with pkgs;
 
   notmuch-addrlookup = callPackage ../applications/networking/mailreaders/notmuch-addrlookup { };
 
-  # Open Stack
-  nova = callPackage ../applications/virtualization/openstack/nova.nix { };
-  keystone = callPackage ../applications/virtualization/openstack/keystone.nix { };
-  neutron = callPackage ../applications/virtualization/openstack/neutron.nix { };
-  glance = callPackage ../applications/virtualization/openstack/glance.nix { };
-
   nova-filters =  callPackage ../applications/audio/nova-filters { };
 
   nspluginwrapper = callPackage ../applications/networking/browsers/mozilla-plugins/nspluginwrapper {};
@@ -16874,6 +16907,8 @@ with pkgs;
 
   symlinks = callPackage ../tools/system/symlinks { };
 
+  syncplay = callPackage ../applications/networking/syncplay { };
+
   syncthing = callPackage ../applications/networking/syncthing { };
 
   syncthing012 = callPackage ../applications/networking/syncthing012 { };
@@ -17858,6 +17893,8 @@ with pkgs;
 
   crrcsim = callPackage ../games/crrcsim {};
 
+  cutemaze = libsForQt5.callPackage ../games/cutemaze {};
+
   cuyo = callPackage ../games/cuyo { };
 
   dhewm3 = callPackage ../games/dhewm3 {};
@@ -18802,40 +18839,7 @@ with pkgs;
   };
   coq_8_6 = callPackage ../applications/science/logic/coq {};
   coq_8_7 = callPackage ../applications/science/logic/coq {
-    version = "8.7.0";
-  };
-  coq_HEAD = callPackage ../applications/science/logic/coq/HEAD.nix {};
-
-  mkCoqPackages_8_4 = self: let callPackage = newScope self; in {
-    inherit callPackage;
-    coq = coq_8_4;
-    coqPackages = coqPackages_8_4;
-
-    contribs =
-      let contribs =
-        import ../development/coq-modules/contribs
-        contribs
-        callPackage { };
-      in
-        recurseIntoAttrs contribs;
-
-    bedrock = callPackage ../development/coq-modules/bedrock {};
-    coqExtLib = callPackage ../development/coq-modules/coq-ext-lib {};
-    coqeal = callPackage ../development/coq-modules/coqeal {};
-    coquelicot = callPackage ../development/coq-modules/coquelicot {};
-    domains = callPackage ../development/coq-modules/domains {};
-    fiat = callPackage ../development/coq-modules/fiat {};
-    fiat_HEAD = callPackage ../development/coq-modules/fiat/HEAD.nix {};
-    flocq = callPackage ../development/coq-modules/flocq {};
-    heq = callPackage ../development/coq-modules/heq {};
-    interval = callPackage ../development/coq-modules/interval {};
-    mathcomp = callPackage ../development/coq-modules/mathcomp {};
-    paco = callPackage ../development/coq-modules/paco {};
-    QuickChick = callPackage ../development/coq-modules/QuickChick {};
-    ssreflect = callPackage ../development/coq-modules/ssreflect {};
-    tlc = callPackage ../development/coq-modules/tlc {};
-    unimath = callPackage ../development/coq-modules/unimath {};
-    ynot = callPackage ../development/coq-modules/ynot {};
+    version = "8.7.1";
   };
 
   mkCoqPackages = self: coq: let callPackage = newScope self; in rec {
@@ -18862,9 +18866,10 @@ with pkgs;
     math-classes = callPackage ../development/coq-modules/math-classes { };
     fiat_HEAD = callPackage ../development/coq-modules/fiat/HEAD.nix {};
     equations = callPackage ../development/coq-modules/equations { };
+    coq-haskell = callPackage ../development/coq-modules/coq-haskell { };
+    category-theory = callPackage ../development/coq-modules/category-theory { };
   };
 
-  coqPackages_8_4 = mkCoqPackages_8_4 coqPackages_8_4;
   coqPackages_8_5 = mkCoqPackages coqPackages_8_5 coq_8_5;
   coqPackages_8_6 = mkCoqPackages coqPackages_8_6 coq_8_6;
   coqPackages_8_7 = mkCoqPackages coqPackages_8_7 coq_8_7;
@@ -18951,7 +18956,7 @@ with pkgs;
 
   opensmt = callPackage ../applications/science/logic/opensmt { };
 
-  inherit (ocamlPackages) ott;
+  ott = callPackage ../applications/science/logic/ott { };
 
   otter = callPackage ../applications/science/logic/otter {};
 
@@ -18996,6 +19001,7 @@ with pkgs;
     gmp-static = gmp.override { withStatic = true; };
   };
 
+  z3_4_5_0 = callPackage ../applications/science/logic/z3/4.5.0.nix {};
   z3 = callPackage ../applications/science/logic/z3 {};
 
   aiger = callPackage ../applications/science/logic/aiger {};
@@ -19696,7 +19702,7 @@ with pkgs;
   # convenience if someone doesn't want to have to think about which plugins to use.
   terraform_0_10-full = terraform_0_10.withPlugins lib.attrValues;
 
-  terraform = terraform_0_9;
+  terraform = terraform_0_11;
 
   terraform-inventory = callPackage ../applications/networking/cluster/terraform-inventory {};
 
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 52a921dcc0ed..8df53e50987d 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -128,7 +128,7 @@ let
 
     ocaml_cairo = callPackage ../development/ocaml-modules/ocaml-cairo { };
 
-    ocaml_cairo2 = callPackage ../development/ocaml-modules/ocaml-cairo2 { };
+    cairo2 = callPackage ../development/ocaml-modules/cairo2 { };
 
     cil = callPackage ../development/ocaml-modules/cil { };
 
@@ -970,10 +970,6 @@ let
 
     matita_130312 = callPackage ../applications/science/logic/matita/130312.nix { };
 
-    ott = callPackage ../applications/science/logic/ott {
-      camlp5 = camlp5_transitional;
-    };
-
   };
     in (ocamlPackages.janeStreet // ocamlPackages);
     in lib.fix' (lib.extends overrides packageSet);
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 5cc2de5aa186..7b5f3519f2b6 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -3402,6 +3402,19 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  DateTimeCalendarJulian = buildPerlPackage rec {
+    name = "DateTime-Calendar-Julian-0.04";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/P/PI/PIJLL/${name}.tar.gz";
+      sha256 = "03h0llkwsiw2d2ci1ah5x9sp8xrvnbgd471i5hnpgl5w32nnhndv";
+    };
+    propagatedBuildInputs = [ DateTime ];
+    meta = {
+      description = "Dates in the Julian calendar";
+      license = stdenv.lib.licenses.artistic2;
+    };
+  };
+
   DateTimeEventICal = buildPerlPackage rec {
     name = "DateTime-Event-ICal-0.13";
     src = fetchurl {
@@ -12210,6 +12223,19 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  SortKey = buildPerlPackage rec {
+    name = "Sort-Key-1.33";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/S/SA/SALVA/${name}.tar.gz";
+      sha256 = "1kqs10s2plj6c96srk0j8d7xj8dxk1704r7mck8rqk09mg7lqspd";
+    };
+    buildInputs = [ TestMore ];
+    meta = {
+      description = "Sort arrays by one or multiple calculated keys";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+    };
+  };
+
   SortVersions = buildPerlPackage rec {
     name = "Sort-Versions-1.5";
     src = fetchurl {
@@ -15402,10 +15428,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   UnicodeCollate = buildPerlPackage rec {
-    name = "Unicode-Collate-1.14";
+    name = "Unicode-Collate-1.25";
     src = fetchurl {
       url = "mirror://cpan/authors/id/S/SA/SADAHIRO/${name}.tar.gz";
-      sha256 = "0ykncvhnwy8ync01ibv0524m0si9ya1ch2v8vx61s778nnrmp2k2";
+      sha256 = "1dpvck4saah8hqb9c82i25yimy9x2hkr1k3a2f1ly0k0ifhbiyyx";
     };
     meta = {
       description = "Unicode Collation Algorithm";
@@ -15430,10 +15456,10 @@ let self = _self // overrides; _self = with self; {
   };
 
   UnicodeLineBreak = buildPerlPackage rec {
-    name = "Unicode-LineBreak-2015.07.16";
+    name = "Unicode-LineBreak-2017.004";
     src = fetchurl {
       url = "mirror://cpan/authors/id/N/NE/NEZUMI/${name}.tar.gz";
-      sha256 = "0fycsfc3jhnalad7zvx47f13dpxihdh9c8fy8w7psjlyd5svs6sb";
+      sha256 = "0xnb80na1ps1b5gmj3n70bk28brjzrn725kqv5q0gbb0rg2c6nv5";
     };
     propagatedBuildInputs = [ MIMECharset ];
     meta = {
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index 93571835f950..5af4b6f0c092 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -382,11 +382,11 @@ let
 
   php-cs-fixer = pkgs.stdenv.mkDerivation rec {
     name = "php-cs-fixer-${version}";
-    version = "2.8.3";
+    version = "2.9.0";
 
     src = pkgs.fetchurl {
       url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar";
-      sha256 = "1bzf9h9zcgqg5b0hjm4dv4g0ndndalbkrsiwqy8s1w8mrrkxi2im";
+      sha256 = "12z1fan4yyxll03an51zhx6npr1d49s84dvmrvnzzf9jhckl5mqd";
     };
 
     phases = [ "installPhase" ];
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 950f78fe9761..c5877ed56734 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -220,6 +220,8 @@ in {
 
   diff-match-patch = callPackage ../development/python-modules/diff-match-patch { };
 
+  gssapi = callPackage ../development/python-modules/gssapi { };
+
   h5py = callPackage ../development/python-modules/h5py {
     hdf5 = pkgs.hdf5;
   };
@@ -1051,21 +1053,7 @@ in {
     };
   };
 
-  backports_shutil_get_terminal_size = if !(pythonOlder "3.3") then null else buildPythonPackage rec {
-    name = "backports.shutil_get_terminal_size-${version}";
-    version = "1.0.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/b/backports.shutil_get_terminal_size/${name}.tar.gz";
-      sha256 = "713e7a8228ae80341c70586d1cc0a8caa5207346927e23d09dcbcaf18eadec80";
-    };
-
-    meta = {
-      description = "A backport of the get_terminal_size function from Python 3.3’s shutil.";
-      homepage = https://github.com/chrippa/backports.shutil_get_terminal_size;
-      license = with licenses; [ mit ];
-    };
-  };
+  backports_shutil_get_terminal_size = callPackage ../development/python-modules/backports_shutil_get_terminal_size { };
 
   backports_ssl_match_hostname_3_4_0_2 = self.buildPythonPackage rec {
     name = "backports.ssl_match_hostname-3.4.0.2";
@@ -2464,23 +2452,7 @@ in {
 
   characteristic = callPackage ../development/python-modules/characteristic { };
 
-  cheetah = buildPythonPackage rec {
-    version = "2.4.4";
-    name = "cheetah-${version}";
-    disabled = isPy3k;
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/C/Cheetah/Cheetah-${version}.tar.gz";
-      sha256 = "be308229f0c1e5e5af4f27d7ee06d90bb19e6af3059794e5fd536a6f29a9b550";
-    };
-
-    propagatedBuildInputs = with self; [ self.markdown ];
-
-    meta = {
-      homepage = http://www.cheetahtemplate.org/;
-      description = "A template engine and code generation tool";
-    };
-  };
+  cheetah = callPackage ../development/python-modules/cheetah { };
 
   cherrypy = callPackage ../development/python-modules/cherrypy {};
 
@@ -2880,6 +2852,8 @@ in {
 
   confluent-kafka = callPackage ../development/python-modules/confluent-kafka {};
 
+  kafka-python = callPackage ../development/python-modules/kafka-python {};
+
   construct = callPackage ../development/python-modules/construct {};
 
   consul = buildPythonPackage (rec {
@@ -3073,105 +3047,6 @@ in {
 
   curtsies = callPackage ../development/python-modules/curtsies { };
 
-  oslo-vmware = buildPythonPackage rec {
-    name = "oslo.vmware-${version}";
-    version = "1.22.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.vmware/${name}.tar.gz";
-      sha256 = "1119q3x2y3hjz3p784byr13aqay75pbj4cb8v43gjq5piqlpp16x";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr stevedore netaddr iso8601 six oslo-i18n oslo-utils Babel pyyaml eventlet
-      requests urllib3 oslo-concurrency suds-jurko
-    ];
-    buildInputs = with self; [
-      bandit oslosphinx coverage testtools testscenarios testrepository mock
-
-    ];
-  };
-
-  barbicanclient = buildPythonPackage rec {
-    name = "barbicanclient-${version}";
-    version = "3.3.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/python-barbicanclient/python-barbicanclient-${version}.tar.gz";
-      sha256 = "1kxnxiijvkkc8ahlfbkslpzxcbah7y5pi86hvkyac62xzda87inm";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr argparse requests six keystoneclient cliff oslo-i18n oslo-serialization
-      oslo-utils
-    ];
-    buildInputs = with self; [
-      oslosphinx oslotest requests-mock
-    ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-
-  ironicclient = buildPythonPackage rec {
-    name = "ironicclient-${version}";
-    version = "0.9.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/python-ironicclient/python-ironicclient-${version}.tar.gz";
-      sha256 = "16kaixrmnx6a32mfv281w22h8lavjh0k9yiqikmwc986ydh85s4d";
-    };
-
-    propagatedBuildInputs = with self; [
-      six keystoneclient prettytable oslo-utils oslo-i18n lxml httplib2 cliff
-      dogpile_cache appdirs anyjson pbr openstackclient
-    ];
-    buildInputs = with self; [
-      httpretty
-    ];
-
-    meta = with stdenv.lib; {
-      description = "Python bindings for the Ironic API";
-      homepage = "http://www.openstack.org/";
-    };
-  };
-
-  novaclient = buildPythonPackage rec {
-    name = "novaclient-${version}";
-    version = "2.31.0";
-
-    src = pkgs.fetchurl {
-      url = "https://github.com/openstack/python-novaclient/archive/${version}.tar.gz";
-      sha256 = "0cd49yz9qhpv1srg6wwjnivyb3i8zjxda0h439158qv9w6bfqhdf";
-    };
-
-    PBR_VERSION = "${version}";
-
-    buildInputs = with self; [
-      pbr testtools testscenarios testrepository requests-mock fixtures ];
-    propagatedBuildInputs = with self; [
-      Babel argparse prettytable requests simplejson six iso8601
-      keystoneclient tempest-lib ];
-
-    # TODO: check if removing this test is really harmless
-    preCheck = ''
-      substituteInPlace novaclient/tests/unit/v2/test_servers.py --replace "test_get_password" "noop"
-    '';
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    meta = {
-      homepage = https://github.com/openstack/python-novaclient/;
-      description = "Client library and command line tool for the OpenStack Nova API";
-      license = stdenv.lib.licenses.asl20;
-      platforms = stdenv.lib.platforms.linux;
-    };
-  };
-
   tablib = buildPythonPackage rec {
     name = "tablib-${version}";
     version = "0.10.0";
@@ -3190,27 +3065,6 @@ in {
   };
 
 
-  cliff-tablib = buildPythonPackage rec {
-    name = "cliff-tablib-${version}";
-    version = "1.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/c/cliff-tablib/cliff-tablib-${version}.tar.gz";
-      sha256 = "0fa1qw41lwda5ac3z822qhzbilp51y6p1wlp0h76vrvqcqgxi3ja";
-    };
-
-    propagatedBuildInputs = with self; [
-      argparse pyyaml pbr six cmd2 tablib unicodecsv prettytable stevedore pyparsing cliff
-    ];
-    buildInputs = with self; [
-
-    ];
-
-    meta = with stdenv.lib; {
-      homepage = "https://github.com/dreamhost/cliff-tablib";
-    };
-  };
-
   openant = buildPythonPackage rec {
     name = "openant-unstable-2017-02-11";
 
@@ -3254,33 +3108,6 @@ in {
 
   openidc-client = callPackage ../development/python-modules/openidc-client/default.nix {};
 
-  openstackclient = buildPythonPackage rec {
-    name = "openstackclient-${version}";
-    version = "1.7.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/python-openstackclient/python-openstackclient-${version}.tar.gz";
-      sha256 = "0h1jkrwx06l32k50zq5gs9iba132q2x2jjb3z5gkxxlcd3apk8y9";
-    };
-
-    propagatedBuildInputs = with self; [
-     pbr six Babel cliff os-client-config oslo-config oslo-i18n oslo-utils
-     glanceclient keystoneclient novaclient cinderclient neutronclient requests
-     stevedore cliff-tablib
-    ];
-    buildInputs = with self; [
-     requests-mock
-    ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    meta = with stdenv.lib; {
-      homepage = "http://wiki.openstack.org/OpenStackClient";
-    };
-  };
-
-
 
   idna = buildPythonPackage rec {
     pname = "idna";
@@ -4379,33 +4206,7 @@ in {
 
   daphne = callPackage ../development/python-modules/daphne { };
 
-  dateparser = buildPythonPackage rec {
-    name = "dateparser-${version}";
-    version = "0.3.2-pre-2016-01-21"; # Fix assert year 2016 == 2015
-
-    src = pkgs.fetchgit {
-      url = "https://github.com/scrapinghub/dateparser.git";
-      rev = "d20a63f1d1cee5b4bd19c9f745774cfa9f219549";
-      sha256 = "0na7b4hvf7vykrk48482gxiq5xny67rvs8ilamxcxw3y9gfgdjfd";
-    };
-
-    # Does not seem to work on Python 3 because of relative import.
-    # Upstream Travis configuration is wrong and tests only 2.7
-    disabled = isPy3k;
-
-    LC_ALL = "en_US.UTF-8";
-
-    buildInputs = with self; [ nose nose-parameterized mock pkgs.glibcLocales ];
-
-    propagatedBuildInputs = with self; [ six jdatetime pyyaml dateutil umalqurra pytz ];
-
-    meta = {
-      description = "Date parsing library designed to parse dates from HTML pages";
-      homepage = https://pypi.python.org/pypi/dateparser;
-      license = licenses.bsd3;
-      broken = true;
-    };
-  };
+  dateparser = callPackage ../development/python-modules/dateparser { };
 
   # Actual name of package
   python-dateutil = callPackage ../development/python-modules/dateutil { };
@@ -5968,6 +5769,8 @@ in {
     };
   };
 
+  jsonrpclib-pelix = callPackage ../development/python-modules/jsonrpclib-pelix {};
+
   jsonwatch = buildPythonPackage rec {
     name = "jsonwatch-0.2.0";
 
@@ -6810,8 +6613,8 @@ in {
     };
 
     propagatedBuildInputs = with self; [ python-axolotl-curve25519 protobuf pycrypto ];
-    # IV == 0 in tests is not supported by pycrytpodom (our pycrypto drop-in)
-    doCheck = !isPy3k;
+    # IV == 0 in tests is not supported by pycryptodome (our pycrypto drop-in)
+    doCheck = false;
 
     meta = {
       homepage = "https://github.com/tgalal/python-axolotl";
@@ -9340,32 +9143,6 @@ in {
     };
   };
 
-  gssapi = buildPythonPackage rec {
-    version = "1.1.4";
-    name = "gssapi-${version}";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/g/gssapi/${name}.tar.gz";
-      sha256 = "0mdl7m6h57n0zkfmm6fqz0hldfxrb2d7d48k2lhc8hqbr3962c7x";
-    };
-
-    GSSAPI_SUPPORT_DETECT = "false";
-    LD_LIBRARY_PATH="${pkgs.krb5Full}/lib";
-
-    buildInputs = [ pkgs.gss pkgs.krb5Full pkgs.which
-                    self.nose self.shouldbe ];
-
-    propagatedBuildInputs = with self; [ decorator enum34 six ];
-
-    doCheck = false; # No such file or directory: '/usr/sbin/kadmin.local'
-
-    meta = {
-      homepage = https://pypi.python.org/pypi/gssapi;
-      description = "Python GSSAPI Wrapper";
-      license = licenses.mit;
-    };
-  };
-
   gyp = buildPythonPackage rec {
     name = "gyp-${version}";
     version = "2015-06-11";
@@ -9727,24 +9504,7 @@ in {
     };
   };
 
-
-  inflection = buildPythonPackage rec {
-     version = "0.3.1";
-     name = "inflection-${version}";
-
-     src = pkgs.fetchurl {
-       url= "mirror://pypi/i/inflection/${name}.tar.gz";
-       sha256 = "1jhnxgnw8y3mbzjssixh6qkc7a3afc4fygajhqrqalnilyvpzshq";
-     };
-
-     disabled = isPy3k;
-
-     meta = {
-       homepage = https://github.com/jpvanhal/inflection;
-       description = "A port of Ruby on Rails inflector to Python";
-       maintainers = with maintainers; [ NikolaMandic ];
-     };
-  };
+  inflection = callPackage ../development/python-modules/inflection { };
 
   influxdb = buildPythonPackage rec {
     name = "influxdb-4.0.0";
@@ -10081,6 +9841,8 @@ in {
     inherit (self) systemd pytest;
   };
 
+  jsondate = callPackage ../development/python-modules/jsondate { };
+
   jsonnet = buildPythonPackage {
     inherit (pkgs.jsonnet) name src;
     # Python 3 is not yet supported https://github.com/google/jsonnet/pull/335
@@ -10295,6 +10057,8 @@ in {
     };
   };
 
+  lark-parser = callPackage ../development/python-modules/lark-parser { };
+
   lazy-object-proxy = buildPythonPackage rec {
     name = "lazy-object-proxy-${version}";
     version = "1.2.1";
@@ -12797,357 +12561,11 @@ in {
     };
   };
 
-  oslosphinx = buildPythonPackage rec {
-    name = "oslosphinx-3.3.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslosphinx/${name}.tar.gz";
-      sha256 = "1rjiiahw2y7pg5rl15fvhmfyh26vm433000nwp7c94khx7w85w75";
-    };
-
-    doCheck = false;
-
-    propagatedBuildInputs = with self; [
-      pbr requests sphinx_1_2
-    ];
-  };
-
-  tempest-lib = buildPythonPackage rec {
-    name = "tempest-lib-${version}";
-    version = "0.10.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/t/tempest-lib/${name}.tar.gz";
-      sha256 = "0x842a67k9f7yk3zr6755s4qldkfngljqy5whd4jb553y4hn5lyj";
-    };
-
-    patchPhase = ''
-      substituteInPlace tempest_lib/tests/cli/test_execute.py --replace "/bin/ls" "${pkgs.coreutils}/bin/ls"
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    buildInputs = with self; [ testtools testrepository subunit oslotest ];
-    propagatedBuildInputs = with self; [
-      pbr six paramiko httplib2 jsonschema iso8601 fixtures Babel oslo-log
-      os-testr ];
-
-  };
-
-  os-testr = callPackage ../development/python-modules/os-testr { };
-
-  bandit = buildPythonPackage rec {
-    name = "bandit-${version}";
-    version = "0.16.1";
-    disabled = isPy33;
-    doCheck = !isPyPy; # a test fails
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/b/bandit/${name}.tar.gz";
-      sha256 = "0qd9kxknac5n5xfl5zjnlmk6jr94krkcx29zgyna8p9lyb828hsk";
-    };
-
-    propagatedBuildInputs = with self; [ pbr six pyyaml appdirs stevedore ];
-    buildInputs = with self; [ beautifulsoup4 oslosphinx testtools testscenarios
-                               testrepository fixtures mock ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  oslo-serialization = buildPythonPackage rec {
-    pname = "oslo.serialization";
-    version = "2.20.0";
-    name = "${pname}-${version}";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "00j8hn8f0shk4anzb6zwn8w1sfxcil9a3jgxljwalq6ma2rzp9pw";
-    };
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    propagatedBuildInputs = with self; [ pbr Babel six iso8601 pytz oslo-utils msgpack netaddr ];
-    buildInputs = with self; [ oslotest mock coverage simplejson oslo-i18n ];
-  };
-
   rfc3986 = callPackage ../development/python-modules/rfc3986 { };
 
-  pycadf = buildPythonPackage rec {
-    name = "pycadf-${version}";
-    version = "1.1.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/pycadf/pycadf-1.1.0.tar.gz";
-      sha256 = "0lv9nhbvj1pa8qgn3qvyk9k4q8f7w541074n1rhdjnjkinh4n4dg";
-    };
-
-    propagatedBuildInputs = with self; [
-      oslo-i18n argparse six wrapt oslo-utils pbr oslo-config Babel netaddr
-      monotonic iso8601 pytz stevedore oslo-serialization msgpack
-      debtcollector netifaces
-    ];
-    buildInputs = with self; [
-      oslosphinx testtools testrepository oslotest
-    ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    meta = with stdenv.lib; {
-      homepage = https://launchpad.net/pycadf;
-    };
-  };
-
-
-  oslo-utils = buildPythonPackage rec {
-    pname = "oslo.utils";
-    version = "3.29.0";
-    name = "${pname}-${version}";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "0l90ijw96czjd6z8bw88983rsnq5753iw86rhk1wi064w4rs19ig";
-    };
-
-    propagatedBuildInputs = with self; [ pbr Babel six iso8601 pytz netaddr netifaces
-                                         monotonic oslo-i18n wrapt debtcollector ];
-    buildInputs = with self; [ oslotest mock coverage oslosphinx ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  oslo-middleware = buildPythonPackage rec {
-    name = "oslo.middleware-${version}";
-    version = "2.9.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.middleware/${name}.tar.gz";
-      sha256 = "14acinchdpmc1in39mz9kh1h2rd1ygwg3zdhbwzrlhy8wbzzi4w9";
-    };
-
-    propagatedBuildInputs = with self; [
-      oslo-i18n six oslo-utils pbr oslo-config Babel oslo-context stevedore
-      jinja2 webob debtcollector
-    ];
-    buildInputs = with self; [
-      coverage testtools oslosphinx oslotest
-    ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-      sed -i '/ordereddict/d' requirements.txt
-    '';
-
-    meta = with stdenv.lib; {
-      homepage = "http://wiki.openstack.org/wiki/Oslo#oslo.middleware";
-    };
-  };
-
-  oslo-versionedobjects = buildPythonPackage rec {
-     name = "oslo.versionedobjects-${version}";
-     version = "0.11.0";
-
-     src = pkgs.fetchurl {
-       url = "mirror://pypi/o/oslo.versionedobjects/${name}.tar.gz";
-       sha256 = "1ddcb2zf7a3544ay4sxw200a4mz7p0n1f7826h3vibfdqjlc80y7";
-     };
-
-     propagatedBuildInputs = with self; [
-       six Babel oslo-concurrency oslo-config oslo-context oslo-messaging
-       oslo-serialization oslo-utils iso8601 oslo-log oslo-i18n webob
-     ];
-     buildInputs = with self; [
-       oslo-middleware cachetools_1 oslo-service futurist anyjson oslosphinx
-       testtools oslotest
-     ];
-
-     meta = with stdenv.lib; {
-       homepage = "http://launchpad.net/oslo";
-     };
-   };
-
    cachetools_1 = callPackage ../development/python-modules/cachetools/1.nix {};
    cachetools = callPackage ../development/python-modules/cachetools {};
 
-   futurist = buildPythonPackage rec {
-     name = "futurist-${version}";
-     version = "0.7.0";
-
-     src = pkgs.fetchurl {
-       url = "mirror://pypi/f/futurist/${name}.tar.gz";
-       sha256 = "0wf0k9xf5xzmi79418xq8zxwr7w7a4g4alv3dds9afb2l8bh9crg";
-     };
-
-     patchPhase = ''
-       sed -i "s/test_gather_stats/noop/" futurist/tests/test_executors.py
-     '';
-
-     propagatedBuildInputs = with self; [
-       contextlib2 pbr six monotonic futures eventlet
-     ];
-     buildInputs = with self; [
-       testtools testscenarios testrepository oslotest subunit
-     ];
-
-     # breaks in sandboxing
-     doCheck = false;
-   };
-
-  oslo-messaging = buildPythonPackage rec {
-    name = "oslo.messaging-${version}";
-    version = "2.7.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.messaging/${name}.tar.gz";
-      sha256 = "1af7l4ri3xfjcnjp2yhngz34h3ls00yyj1x8i64dxb86ryy43kd1";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr oslo-config oslo-context oslo-log oslo-utils oslo-serialization
-      oslo-i18n stevedore six eventlet greenlet webob pyyaml kombu_3 trollius
-      aioeventlet cachetools_1 oslo-middleware futurist redis oslo-service
-      eventlet pyzmq
-    ];
-
-    buildInputs = with self; [
-      oslotest mock mox3 subunit testtools testscenarios testrepository
-      fixtures oslosphinx
-    ];
-
-    preBuild = ''
-      # transient failure https://bugs.launchpad.net/oslo.messaging/+bug/1510481
-      sed -i 's/test_send_receive/noop/' oslo_messaging/tests/drivers/test_impl_rabbit.py
-    '';
-  };
-
-  os-brick = buildPythonPackage rec {
-   name = "os-brick-${version}";
-   version = "0.5.0";
-
-   src = pkgs.fetchurl {
-     url = "mirror://pypi/o/os-brick/${name}.tar.gz";
-     sha256 = "1q05yk5hada470rwsv3hfjn7pdp9n7pprmnslm723l7cfhf7cgm6";
-   };
-
-   propagatedBuildInputs = with self; [
-     six retrying oslo-utils oslo-service oslo-i18n oslo-serialization oslo-log
-     oslo-concurrency eventlet Babel pbr
-   ];
-   buildInputs = with self; [
-     testtools testscenarios testrepository requests
-   ];
-
-   checkPhase = ''
-     ${python.interpreter} -m subunit.run discover -t ./ .
-   '';
-
-   meta = with stdenv.lib; {
-     homepage = "http://www.openstack.org/";
-   };
-  };
-
-  oslo-reports = buildPythonPackage rec {
-    name = "oslo.reports-${version}";
-    version = "0.6.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.reports/${name}.tar.gz";
-      sha256 = "0j27mbsa5y1fn9lxn98xs7p9vipcig47srm5sgbgma0ilv125b65";
-    };
-
-    propagatedBuildInputs = with self; [
-      oslo-i18n oslo-utils oslo-serialization six psutil_1 Babel jinja2 pbr psutil_1
-    ];
-    buildInputs = with self; [
-      coverage greenlet eventlet oslosphinx oslotest
-    ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  cinderclient = buildPythonPackage rec {
-    name = "cinderclient-${version}";
-    version = "1.4.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/python-cinderclient/python-cinderclient-${version}.tar.gz";
-      sha256 = "1vfcjljfad3034bfhfcrfhphym1ik6qk42nrxzl0gqb9408n6k3l";
-    };
-
-    propagatedBuildInputs = with self; [
-      six Babel simplejson requests keystoneclient prettytable argparse pbr
-    ];
-    buildInputs = with self; [
-      testrepository requests-mock
-    ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    meta = with stdenv.lib; {
-      description = "Python bindings to the OpenStack Cinder API";
-      homepage = "http://www.openstack.org/";
-      broken = true;
-    };
-  };
-
-  neutronclient = buildPythonPackage rec {
-    name = "neutronclient-${version}";
-    version = "3.1.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/python-neutronclient/python-neutronclient-${version}.tar.gz";
-      sha256 = "0g96x5b8lz407in70j6v7jbj613y6sd61b21j1y03x06b2rk5i02";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr six simplejson keystoneclient requests oslo-utils oslo-serialization
-      oslo-i18n netaddr iso8601 cliff argparse
-    ];
-    buildInputs = with self; [
-      tempest-lib mox3 oslotest requests-mock
-    ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-      # test fails on py3k
-      ${if isPy3k then "substituteInPlace neutronclient/tests/unit/test_cli20_port.py --replace 'test_list_ports_with_fixed_ips_in_csv' 'noop'" else ""}
-    '';
-
-    meta = with stdenv.lib; {
-      description = "Python bindings to the Neutron API";
-      homepage = "http://www.openstack.org/";
-    };
-  };
-
-  cliff = buildPythonPackage rec {
-    name = "cliff-${version}";
-    version = "1.15.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/c/cliff/${name}.tar.gz";
-      sha256 = "1rrbq1nvc84x417hbfm9sc1scia16nilr8nm8ycm8iq5jkh6zfpm";
-    };
-
-    propagatedBuildInputs = with self; [
-      argparse pyyaml pbr six cmd2 stevedore unicodecsv prettytable pyparsing
-    ];
-    buildInputs = with self; [
-      httplib2 oslosphinx coverage mock nose tempest-lib
-    ];
-
-    meta = with stdenv.lib; {
-      homepage = "https://launchpad.net/python-cliff";
-      # requires an update, incompatible with current dependencies (pbr)
-      broken = true;
-    };
-  };
-
   cmd2 = buildPythonPackage rec {
     name = "cmd2-${version}";
     version = "0.7.7";
@@ -13172,80 +12590,6 @@ in {
     };
   };
 
-
-  oslo-db = buildPythonPackage rec {
-    name = "oslo.db-${version}";
-    version = "3.0.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.db/${name}.tar.gz";
-      sha256 = "0jjimsfl53wigzf92dhns813n65qcwilcqlj32m86rxrcz0pjgph";
-    };
-
-    propagatedBuildInputs = with self; [
-      six stevedore sqlalchemy_migrate sqlalchemy oslo-utils oslo-context
-      oslo-config oslo-i18n iso8601 Babel alembic pbr psycopg2
-    ];
-    buildInputs = with self; [
-      tempest-lib testresources mock oslotest
-    ];
-  };
-
-  oslo-rootwrap = buildPythonPackage rec {
-    name = "oslo.rootwrap-${version}";
-    version = "2.4.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.rootwrap/${name}.tar.gz";
-      sha256 = "1711rlmykizw675ihbaqmk3ph6ah0njbygxr9lrdnacy6yrlmbd5";
-    };
-
-    # https://bugs.launchpad.net/oslo.rootwrap/+bug/1519839
-    patchPhase = ''
-     substituteInPlace oslo_rootwrap/filters.py \
-       --replace "/bin/cat" "${pkgs.coreutils}/bin/cat" \
-       --replace "/bin/kill" "${pkgs.coreutils}/bin/kill"
-    '';
-
-    buildInputs = with self; [ eventlet mock oslotest ];
-    propagatedBuildInputs = with self; [
-      six pbr
-    ];
-
-    # way too many assumptions
-    doCheck = false;
-  };
-
-  glanceclient = buildPythonPackage rec {
-   name = "glanceclient-${version}";
-   version = "1.1.0";
-
-   src = pkgs.fetchurl {
-     url = "mirror://pypi/p/python-glanceclient/python-glanceclient-${version}.tar.gz";
-     sha256 = "0ppjafsmf29ps23jsw6g2xm66pdi5jdzpywglqqm28b8fj931zsr";
-   };
-
-   propagatedBuildInputs = with self; [
-     oslo-i18n oslo-utils six requests keystoneclient prettytable Babel pbr
-     argparse warlock
-   ];
-   buildInputs = with self; [
-     tempest-lib requests-mock
-   ];
-
-   checkPhase = ''
-     ${python.interpreter} -m subunit.run discover -t ./ .
-   '';
-
-   meta = with stdenv.lib; {
-     description = "Python bindings to the OpenStack Images API";
-     homepage = "http://www.openstack.org/";
-
-     # requires an update, incompatible with current dependencies (pbr)
-     broken = true;
-   };
- };
-
  warlock = buildPythonPackage rec {
    name = "warlock-${version}";
    version = "1.2.0";
@@ -13268,57 +12612,6 @@ in {
  };
 
 
-  oslo-service = buildPythonPackage rec {
-    pname = "oslo.service";
-    version = "1.26.0";
-
-    name = "${pname}-${version}";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "083q7z6nrska5fq12vnd70blphxscd7ivca2d78jk84d99h0m5n5";
-    };
-
-    propagatedBuildInputs = with self; [
-      repoze_lru PasteDeploy Babel oslo-context debtcollector
-      oslo-concurrency wrapt eventlet six oslo-serialization greenlet paste
-      oslo-config monotonic iso8601 oslo-log pytz routes msgpack
-      oslo-i18n argparse oslo-utils pbr enum34 netaddr stevedore netifaces
-      pyinotify webob retrying pyinotify oslo-log ];
-    buildInputs = with self; [
-      oslosphinx oslotest pkgs.procps mock mox3 fixtures subunit testrepository
-      testtools testscenarios
-    ];
-
-    ## cannot import eventlet due to:
-    # _proto_tcp = socket.getprotobyname('tcp')
-    doCheck = false;
-
-    meta = with stdenv.lib; {
-      homepage = "http://wiki.openstack.org/wiki/Oslo#oslo.service";
-    };
-  };
-
-  oslo-cache = buildPythonPackage rec {
-    name = "oslo.cache-${version}";
-    version = "0.9.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.cache/${name}.tar.gz";
-      sha256 = "0dzvm5xkfj1alf469d7v3syig9f91kjh4p55k57ykgaww3y4cdjp";
-    };
-
-    propagatedBuildInputs = with self; [
-      Babel dogpile_cache six oslo-config oslo-i18n oslo-log oslo-utils
-    ];
-    buildInputs = with self; [
-      oslosphinx oslotest memcached pymongo
-    ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
   pecan = callPackage ../development/python-modules/pecan { };
 
   kaitaistruct = callPackage ../development/python-modules/kaitaistruct { };
@@ -13341,31 +12634,6 @@ in {
     };
   };
 
-  ryu = buildPythonPackage rec {
-    name = "ryu-${version}";
-    version = "3.26";
-
-    propagatedBuildInputs = with self; [
-      pbr paramiko lxml
-    ];
-    buildInputs = with self; [
-      webtest routes oslo-config msgpack eventlet FormEncode
-    ];
-
-    preCheck = ''
-      # we don't really need linters
-      sed -i '/pylint/d' tools/test-requires
-      sed -i '/pep8/d' tools/test-requires
-    '';
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/r/ryu/${name}.tar.gz";
-      sha256 = "1fhriqi7qnvvx9mbvlfm94i5drh920lg204zy3v0qjz43sinkih6";
-    };
-
-    meta.broken = true;
-  };
-
   WSME = buildPythonPackage rec {
     name = "WSME-${version}";
     version = "0.8.0";
@@ -13394,118 +12662,6 @@ in {
     ];
   };
 
-  taskflow = buildPythonPackage rec {
-    name = "taskflow-${version}";
-    version = "1.23.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/t/taskflow/${name}.tar.gz";
-      sha256 = "15np1rc6g9vksgdj0y930ysx5wbmhvc082g264j5zbj6c479g8qa";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr futures enum34 debtcollector cachetools_1 oslo-serialization oslo-utils
-      jsonschema monotonic stevedore networkx futurist pbr automaton fasteners
-    ];
-    buildInputs = with self; [
-      oslosphinx pymysql psycopg2 alembic redis eventlet kazoo zake kombu
-      testscenarios testtools mock oslotest
-    ];
-
-    preBuild = ''
-      # too many transient failures
-      rm taskflow/tests/unit/test_engines.py
-    '';
-
-    checkPhase = ''
-      sed -i '/doc8/d' test-requirements.txt
-      ${python.interpreter} setup.py test
-    '';
-  };
-
-  glance_store = buildPythonPackage rec {
-    name = "glance_store-${version}";
-    version = "0.9.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/g/glance_store/${name}.tar.gz";
-      sha256 = "16az3lq9szl0ixna9rd82dmn4sfxqyivhn4z3z79vk8qdfip1sr9";
-    };
-
-    # remove on next version bump
-    patches = [
-       ../development/python-modules/fix_swiftclient_mocking.patch
-    ];
-
-    propagatedBuildInputs = with self; [
-      oslo-config oslo-i18n oslo-serialization oslo-utils oslo-concurrency stevedore
-      enum34 eventlet six jsonschema swiftclient httplib2 pymongo
-    ];
-    buildInputs = with self; [
-      mock fixtures subunit requests-mock testrepository testscenarios testtools
-      oslotest oslosphinx boto oslo-vmware
-    ];
-
-    meta = with stdenv.lib; {
-      description = "Glance Store Library";
-      homepage = "http://www.openstack.org/";
-    };
-  };
-
-  swiftclient = buildPythonPackage rec {
-    name = "swiftclient-${version}";
-    version = "2.6.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/python-swiftclient/python-swiftclient-${version}.tar.gz";
-      sha256 = "1j33l4z9vqh0scfncl4fxg01zr1hgqxhhai6gvcih1gccqm4nd7p";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr requests futures six
-    ];
-    buildInputs = with self; [
-      testtools testrepository mock
-    ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    meta = with stdenv.lib; {
-      description = "Python bindings to the OpenStack Object Storage API";
-      homepage = "http://www.openstack.org/";
-    };
-  };
-
-
-  castellan = buildPythonPackage rec {
-    name = "castellan-${version}";
-    version = "0.2.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/c/castellan/${name}.tar.gz";
-      sha256 = "1im9b4qzq4yhn17jjc8927b3hn06h404vsx8chddw2jfp0v4ryfj";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr Babel cryptography oslo-config oslo-context oslo-log oslo-policy
-      oslo-serialization oslo-utils
-    ];
-    buildInputs = with self; [
-      subunit barbicanclient oslosphinx oslotest testrepository testtools
-      testscenarios
-    ];
-
-    preCheck = ''
-      # uses /etc/castellan/castellan-functional.conf
-      rm castellan/tests/functional/key_manager/test_barbican_key_manager.py
-    '';
-
-    meta = with stdenv.lib; {
-      homepage = "https://github.com/yahoo/Zake";
-    };
-  };
 
   zake = buildPythonPackage rec {
     name = "zake-${version}";
@@ -13527,53 +12683,6 @@ in {
     };
   };
 
-  automaton = buildPythonPackage rec {
-    name = "automaton-${version}";
-    version = "0.8.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/a/automaton/${name}.tar.gz";
-      sha256 = "040rw7w92mp34a15vzvbfvhv1cg8zf81s9jbdd9rmwxr0gmgp2ya";
-    };
-
-    propagatedBuildInputs = with self; [
-      wrapt pbr Babel six pytz prettytable debtcollector
-    ];
-    buildInputs = with self; [
-      testtools testscenarios testrepository
-    ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  networking-hyperv = buildPythonPackage rec {
-    name = "networking-hyperv-${version}";
-    version = "2015.1.0";
-    disabled = isPy3k;  # failing tests
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/n/networking-hyperv/${name}.tar.gz";
-      sha256 = "04wfkl8rffxp6gp7qvhhc8y80cy0akmh3z7k7y2sj6savg9q7jdj";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr Babel oslo-config oslo-i18n oslo-serialization oslo-utils oslo-log
-    ];
-    buildInputs = with self; [
-      testtools testscenarios testrepository oslotest oslosphinx subunit eventlet
-      fixtures mock
-    ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-      # it has pinned pbr<1.0
-      sed -i '/pbr/d' requirements.txt
-      # https://github.com/openstack/networking-hyperv/commit/56d66fc012846620a60cb8f18df5a1c889fe0e26
-      sed -i 's/from oslo import i18n/import oslo_i18n as i18n/' hyperv/common/i18n.py
-    '';
-  };
-
   kazoo = buildPythonPackage rec {
     name = "kazoo-${version}";
     version = "2.2.1";
@@ -13608,29 +12717,6 @@ in {
     };
   };
 
-  osprofiler = buildPythonPackage rec {
-    name = "osprofiler-${version}";
-    version = "0.3.0";
-    disabled = isPyPy;
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/osprofiler/${name}.tar.gz";
-      sha256 = "01rjym49nn4ry1pr2n8fyal1hf17jqhp2yihg8gr15nfjc5iszkx";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr six webob
-    ];
-    buildInputs = with self; [
-      oslosphinx coverage mock subunit testrepository testtools
-    ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-      substituteInPlace requirements.txt --replace "argparse" ""
-    '';
-  };
-
   FormEncode = callPackage ../development/python-modules/FormEncode { };
 
   pycountry = buildPythonPackage rec {
@@ -13669,23 +12755,6 @@ in {
     };
   };
 
-  oslo-policy = buildPythonPackage rec {
-    name = "oslo.policy-${version}";
-    version = "0.12.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.policy/${name}.tar.gz";
-      sha256 = "06apaj6fwg7f2g5psmxzr5a9apj2l4k2y8kl1hqzyssykblij8ss";
-    };
-
-    propagatedBuildInputs = with self; [
-      requests oslo-config oslo-i18n oslo-serialization oslo-utils six
-    ];
-    buildInputs = with self; [
-      oslosphinx httpretty oslotest
-    ];
-  };
-
   ldappool = buildPythonPackage rec {
     name = "ldappool-${version}";
     version = "1.0";
@@ -13721,34 +12790,6 @@ in {
     };
   };
 
-
-  oslo-concurrency = buildPythonPackage rec {
-    pname = "oslo.concurrency";
-    version = "3.22.0";
-    name = "${pname}-${version}";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "0nh1ycc2s6w05g5w63bsmmda0gw7qsrwlax3as8a0piai99z4m51";
-    };
-
-   propagatedBuildInputs = with self; [
-     oslo-i18n argparse six wrapt oslo-utils pbr enum34 Babel netaddr monotonic
-     iso8601 oslo-config pytz netifaces stevedore debtcollector retrying fasteners
-     eventlet
-   ];
-   buildInputs = with self; [
-     oslosphinx fixtures coverage oslotest
-   ] ++ (optional (!isPy3k) futures);
-
-   # too much magic in tests
-   doCheck = false;
-
-   meta = with stdenv.lib; {
-     homepage = http://launchpad.net/oslo;
-   };
- };
-
  retrying = buildPythonPackage rec {
     name = "retrying-${version}";
     version = "1.3.3";
@@ -13818,100 +12859,6 @@ in {
 
   olefile = callPackage ../development/python-modules/olefile { };
 
-  oslo-log = buildPythonPackage rec {
-    name = "${pname}-${version}";
-    pname = "oslo.log";
-    version = "3.31.0";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "1w08cl98n8592pvb2gw01mqlwi8nnnpg1zy10mvj6xdpvfk2yqzz";
-    };
-
-    propagatedBuildInputs = with self; [
-      pbr Babel six iso8601 debtcollector dateutil
-      oslo-utils oslo-i18n oslo-config oslo-serialization oslo-context
-    ] ++ stdenv.lib.optional stdenv.isLinux pyinotify;
-    buildInputs = with self; [ oslotest oslosphinx ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  oslo-context = buildPythonPackage rec {
-    name = "${pname}-${version}";
-    pname = "oslo.context";
-    version = "2.18.1";
-
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "1sc7qrwffsm15m91c17k0xiglv6bxh9sbksvxvrrgja82m57mgh6";
-    };
-
-    propagatedBuildInputs = with self; [ pbr Babel ];
-    buildInputs = with self; [ oslotest coverage oslosphinx ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  oslo-i18n = buildPythonPackage rec {
-    name = "oslo.i18n-${version}";
-    version = "3.18.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslo.i18n/${name}.tar.gz";
-      sha256 = "19w6wil588fgppc7d42fqkrjs0y81ap62svzbij8hlb3w2d4a91n";
-    };
-
-    propagatedBuildInputs = with self; [ pbr Babel six ];
-    buildInputs = with self; [ mock coverage oslotest ];
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  oslo-config = callPackage ../development/python-modules/oslo-config { };
-
-  oslotest = buildPythonPackage rec {
-    name = "oslotest-${version}";
-    version = "2.18.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/oslotest/${name}.tar.gz";
-      sha256 = "0a0zhpb4yp7g6d290jk7a4pfci4ciwhsrqzhbwbl2szi50gp7km1";
-    };
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    propagatedBuildInputs = with self; [ pbr fixtures subunit six testrepository
-      os-client-config debtcollector testscenarios testtools mock mox3 os-client-config ];
-  };
-
-  os-client-config = buildPythonPackage rec {
-    name = "os-client-config-${version}";
-    version = "1.28.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/o/os-client-config/${name}.tar.gz";
-      sha256 = "1f7q384b9drp3fqcg0w8aihv9k4idaay8vr3an187zjpgbx9rgp5";
-    };
-
-    # requires oslotest but is a dependency of that package ...
-    doCheck = false;
-
-    buildInputs = with self; [ pbr testtools testscenarios testrepository fixtures jsonschema ];
-    propagatedBuildInputs = with self; [ appdirs pyyaml keystoneauth1 requestsexceptions ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-  };
-
-  keystoneauth1 = callPackage ../development/python-modules/keystoneauth1 {};
-
   requests-mock = buildPythonPackage rec {
     name = "requests-mock-${version}";
     version = "1.3.0";
@@ -13950,25 +12897,6 @@ in {
     propagatedBuildInputs = with self; [ pbr fixtures ];
   };
 
-  debtcollector = buildPythonPackage rec {
-    name = "debtcollector-${version}";
-    version = "1.17.0";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/d/debtcollector/${name}.tar.gz";
-      sha256 = "0rh47fd5kgjcdv9dxr7xf0x308cvfic3h2zk03ifvb4pdc5kbqvi";
-    };
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    buildInputs = with self; [ pbr ];
-    propagatedBuildInputs = with self; [ wrapt Babel six doc8 ] ++
-                              (optional (isPy26 || isPy27) funcsigs);
-    checkInputs = with self; [ pbr Babel six wrapt testtools testscenarios
-                               testrepository subunit coverage ];
-  };
-
   doc8 = callPackage ../development/python-modules/doc8 { };
 
   wrapt = buildPythonPackage rec {
@@ -14309,24 +13237,7 @@ in {
     };
   };
 
-  pathlib2 = if !(pythonOlder "3.4") then null else buildPythonPackage rec {
-    name = "pathlib2-${version}";
-    version = "2.2.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/pathlib2/${name}.tar.gz";
-      sha256 = "ce9007df617ef6b7bd8a31cd2089ed0c1fed1f7c23cf2bf1ba140b3dd563175d";
-    };
-
-    propagatedBuildInputs = with self; [ six ] ++ optional (pythonOlder "3.5") scandir;
-
-    meta = {
-      description = "This module offers classes representing filesystem paths with semantics appropriate for different operating systems.";
-      homepage = https://pypi.python.org/pypi/pathlib2/;
-      license = with licenses; [ mit ];
-    };
-
-  };
+  pathlib2 = callPackage ../development/python-modules/pathlib2 { };
 
   pathpy = callPackage ../development/python-modules/path.py { };
 
@@ -16488,12 +15399,6 @@ in {
     doCheck = false;
   };
 
-  rackspace-novaclient = callPackage ../development/python-modules/rackspace-novaclient { };
-
-  pyrax = callPackage ../development/python-modules/pyrax {
-    glibcLocales = pkgs.glibcLocales;
-  };
-
   pyreport = buildPythonPackage (rec {
     name = "pyreport-0.3.4c";
     disabled = isPy3k;
@@ -16977,6 +15882,10 @@ in {
     };
   };
 
+  quandl = callPackage ../development/python-modules/quandl { };
+  # alias for an older package which did not support Python 3
+  Quandl = callPackage ../development/python-modules/quandl { };
+
   qscintilla = disabledIf (isPy3k || isPyPy)
     (buildPythonPackage rec {
       # TODO: Qt5 support
@@ -17565,9 +16474,6 @@ in {
     name = "ruamel.yaml-${version}";
     version = "0.13.7";
 
-    # needs ruamel_ordereddict for python2 support
-    disabled = !isPy3k;
-
     src = pkgs.fetchurl {
       url = "mirror://pypi/r/ruamel.yaml/${name}.tar.gz";
       sha256 = "1vca2552k0kmhr9msg1bbfdvp3p9im17x1a6npaw221vlgg15z7h";
@@ -17576,7 +16482,8 @@ in {
     # Tests cannot load the module to test
     doCheck = false;
 
-    propagatedBuildInputs = with self; [ ruamel_base typing ];
+    propagatedBuildInputs = with self; [ ruamel_base typing ] ++
+    (optional (!isPy3k) self.ruamel_ordereddict);
 
     meta = {
       description = "YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order";
@@ -19341,31 +18248,6 @@ in {
     };
   };
 
-  keystoneclient = callPackage ../development/python-modules/keystoneclient { };
-
-  keystonemiddleware = buildPythonPackage rec {
-    name = "keystonemiddleware-${version}";
-    version = "2.4.1";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/k/keystonemiddleware/${name}.tar.gz";
-      sha256 = "0avrn1f897rnam9wfdanpdwsmn8is3ncfh3nnzq3d1m31b1yqqr6";
-    };
-
-    buildInputs = with self; [
-      fixtures mock pycrypto oslosphinx oslotest stevedore testrepository
-      testresources testtools bandit requests-mock memcached
-      pkgs.openssl
-    ];
-    propagatedBuildInputs = with self; [
-      pbr Babel oslo-config oslo-context oslo-i18n oslo-serialization oslo-utils
-      requests six webob keystoneclient pycadf oslo-messaging
-    ];
-
-    # lots of "unhashable type" errors
-    doCheck = false;
-  };
-
   testscenarios = buildPythonPackage rec {
     name = "testscenarios-${version}";
     version = "0.4";
@@ -19564,6 +18446,7 @@ in {
     };
 
     propagatedBuildInputs = with self; [ six pillow pymaging_png ];
+    checkInputs = [ self.mock ];
 
     meta = {
       description = "Quick Response code generation for Python";
@@ -19691,6 +18574,7 @@ in {
      };
    };
 
+  TurboCheetah = callPackage ../development/python-modules/TurboCheetah { };
 
   tweepy = buildPythonPackage (rec {
     name = "tweepy-3.5.0";
@@ -23596,35 +22480,6 @@ EOF
     };
   };
 
-  Quandl = buildPythonPackage rec {
-    version = "3.0.0";
-    name = "Quandl-${version}";
-
-    src = pkgs.fetchurl {
-      url= "mirror://pypi/q/quandl/${name}.tar.gz";
-      sha256 = "d4e698eb39291e0b281975813054101f3dfb379dead10d34d7b536e1aad60584";
-    };
-
-    propagatedBuildInputs = with self; [
-      numpy
-      ndg-httpsclient
-      dateutil
-      inflection
-      more-itertools
-      requests
-      pandas
-    ];
-
-    # No tests in archive
-    doCheck = false;
-
-    meta = {
-      homepage = https://github.com/quandl/quandl-python;
-      description = "A Python library for Quandl’s RESTful API";
-      maintainers = with maintainers; [ NikolaMandic ];
-    };
-  };
-
   queuelib = buildPythonPackage rec {
     name = "queuelib-${version}";
     version = "1.4.2";
@@ -24328,19 +23183,23 @@ EOF
   suseapi = buildPythonPackage rec {
     name = "${pname}-${version}";
     pname = "suseapi";
-    version = "0.24-5-g9937e3b";
+    version = "0.24-31-g0fcbe96";
 
     src = pkgs.fetchFromGitHub {
       owner = "openSUSE";
       repo = "python-${pname}";
       rev = version;
-      sha256 = "1144h26wrzazzy6y3yy163fccqmggk5hazjkk8l9a547390ilgrv";
+      sha256 = "0hyzq0h1w8gp0zfvhqh7qsgcg1wp05a14371m6bn5a7gss93rbv4";
     };
 
     propagatedBuildInputs = with self; [
       django suds-jurko ldap mechanize beautifulsoup4 pyxdg dateutil requests
     ];
 
+    buildInputs = with self; [ httpretty ];
+
+    doCheck = false;
+
     meta = {
       homepage = "https://github.com/openSUSE/python-suseapi/";
       description = "Python module to work with various SUSE services";